Project Development

 

Project Development Blog Entry

 

In this page, I will:

1.    Briefly describe my team chemical device

2.    Show how the team planned, allocated the tasks, and executed the project.

3.    Document the entire design and build process of the chemical device and include videos, pictures, and screen captures of the processes.

4.    Include “Hero shot” of every milestone of the processes, example the part A that was 3D printed, part B that was laser-cut, electronics components moved/worked according to the program. Hero-shot is taken with the person-in-charge holding/working/making the parts.

5.    Include the name of the person who was in-charge of every part of the project.

6.    Document my individual contribution to this project.

7.    Provide the link to the page of the blog of my teammates.

8.    Describe problems encountered and how the team solved them.

9.    Include all the project design files as downloadable files.

10. Embed the final prototype design file, i.e., the final fusion360 design file showing the entire prototype.

11. Type my Learning reflection on the overall project development.

 

 

1.    Our team Chemical Device

Our chemical device is a Alcohol detector or a breathalyser. The device is meant to detect alcohol presence in the driver’s breath. If alcohol is detected, a mechanism will trigger which will block off the key hole which prevents the driver from starting the car. This device aims to reduce the cases of drunk driving.

Below is the hand sketch of our chemical device:

.






 

2.    Team Planning, allocation, and execution

·         In this section, I will list down my team member's name and their respective roles
CEO: Lee Yeung Juen (https://cp5070-2022-2b04-group4-leeyeungjuen.blogspot.com/)
CFO: Mavis Chin (https://cp5070-2022-2b04-group4-mavis-chin.blogspot.com/)
CSO: Alvin Chuah
COO: Isabelle (https://isabelleadora.wixsite.com/cp5070-2022-2b04-gro)

·         I will show the finalized BOM (BILL OF MATERIALS) table.

·         Bill of Materials (BOM):

·          

Project Title:

Save a breath, save a life

Team members:

Lee Yeung Juen (2122643)

Alvin Chuah Si Kai (2122742)

Mavis Chin Min Hui (2122234)

Isabelle Adora Putri Gunawan (2102649)

Created by:

Lee Yeung Juen (2122643)

Alvin Chuah Si Kai (2122742)

Mavis Chin Min Hui (2122234)

Isabelle Adora Putri Gunawan (2102649)

Date created:

 22/11/22

BILL OF MATERIALS (BOM)

No

Description of item

Supplier
(include hyperlink to the item in website of seller)

quantity

quantity unit

unit price ()

Total Cost ()

Available at W319 Lab? (Y/N)

1

Arduino Maker Uno Kit

 SP

 2

pcs

25

50 

N

2

Mouthpiece + tubing

https://shp.ee/qs3g8a6 

 1

 pc

6

6

N

3

Lock for box

https://shp.ee/sbirien 

 1

pc

     3.16

 3.16

N

4

Suction cup

 https://shp.ee/jus9a76 

 1

 pc

 2.56

2.56

N

5

Alcohol sensor

 https://www.walmart.com/ip/MQ-3-Alcohol-Ethanol-Sensor-Module-Gas-Detector-Sensor-for-Arduino-Raspberry-NEW/497230006 

 pc

8.69 

 8.69

 Y

6

Servo

https://sg.cytron.io/c-motor-and-motor-driver/c-dc-motor/c-servo-motor/p-sg90-micro-servo 

 pc

 2.90

 2.90

 Y

7

Clear acrylic 2mm Rectangle/Square - Laser cut

813mmx457mm

 https://www.acrylic.com.sg/on-line-acrylic-cutting/clear-acrylic/ 

2

pc 

5.7 

11.4

 Y

7

3D Printer Filament, 1.75mm Dia, Grey, PLA, 500g

 https://sg.element14.com/multicomp/mc002549/3d-printer-filament-pla-1-75mm/dp/2845496 

0.5

kg

 29.33/1kg

14.67 

Y

Grand Total Cost:

 99.38

 

 

·         I will show the finalized Gantt chart (planned and actual) and the tasks allocation for each team member.

 

3.    Design and Build Process

In this section, I will provide documentation of the design and build process.

Part 1: Design and build of cardboard prototype (Done by everyone)

Forming the cardboard prototype











To gauge how large our prototype would be, we created a cardboard base that can hold the breadboard, maker uno and servo. We also made a sample code to test out the MQ3 alcohol sensor.

Part 2: Making the CADD design (Made by Lee Yeung Juen)

Making of the tube:



Create a line using the point spline



Create the tube using a pipe


Making the box:


Sketch a base rectangle with the dimensions 95 mm by 160 mm based on the cardboard prototype.



Extrude the rectangle by 55 mm based on the cardboard prototype to produce a cuboid.


LED lights:


Create 2 cylinders on top of the product



Select the appropriate colours


Creating a lock:




Fillet the two cylinders to from the LED lights




Creating the arm:



Sketch a circle

Extrude the circle by 1cm to form a cylinder



Sketch an arm of 1 cm by 8 cm



Extrude by 0.5 cm 


Sketch a circle of 0.8 cm diameter


Extrude 1 cm


Creating the gate:



Sketch a rectangle of 1 cm by 15 cm 



Extrude 0.5 cm








Sketch a 10 cm by 10 cm square



Extrude -2 cm



Making the USB hole:


Bore a hole through the back of the rectangle


Colouring:



Place the material of your choice for each part of the breathalyser

Creating the animation:


Load up animation



Record the key frames by clicking record and moving the different components around


(Find alternatives to this, stop motion animation is like going to hell and back)


Product (after some serious changes):






Part 3: Design of the mechanism part for 3D printing (done by Lee Yeung Juen)



Gate:



Part 4: 3D printing of mechanism part (done by Mavis and Lee Yeung Juen)



First, select the file and export it as an STL




Open the STL file on Cura ultimaker and click slice.


Once you are happy with the outcome, start printing on any conveniently set up printer.

 


After you are done, collect your happy product from the heated bed.



Be careful not to make any blunders, however.


Hero shot of 3D print:




Part 5: Design of the box faces for laser cutting (Done by Mavis)




The CADD design was split into individual faces and saved as DXF files for laser cutting.

Part 6. Laser cutting of the box (done by me)

The hardest part about this step is booking a slot. This is because the slots would be fully booked every day. We learnt that people stay up to 12am to book the new fresh slots so we did the same and managed to book slots. Below is how we want our box to look like:



When we were doing the laser cutting, Kieron provided help by recapping on how the laser cutter works which we were very thankful for. Although me and Isabelle knew how to operate the laser cutter, we forgot how to import the files. When we attempted to import the files, it looks like a line, shown below,








 (Wrong setting btw)

Thanks to Kieron’s help, we managed to solve this problem and it was an issue with the 3D planes as we did not select automatic .

After importing the files, we need to arrange what we want to cut out to use the least acrylic.

 


After arranging, we used the laser pointer system to check whether the place we want to cut is within the acrylic board.

 


After checking, we proceeded to laser cut it

This is our final product:



Part 7: Programming of the electronics (Done by Isabelle)



const int AOUTpin = A0;

int sensor_value = 0;

int LED_green = 10;

int LED_red = 11;

int Buzzer = 8;


#define NOTE_DS8 4978


// notes in the melody:

int melody[] = {

  NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8

};


// note durations: 4 = quarter note, 8 = eighth note, etc.:

int noteDurations[] = {

  4, 4, 4, 4, 4, 4, 4, 4, 4, 4

};



#include <Servo.h>

Servo myservo;  // create servo object to control a servo

int pos = 90;    // variable to store the servo position


Explanation: First, we define and declare the constants and variables that we will use.

A0 is defined as ‘AOUTPin’, and we initialise the green, red and buzzer to a pin number.

The sensor value is also initialised to read 0 as an integer number.

We also defined ‘NOTE_DS8’ as the frequency 4978 hz to play in the melody. 




void setup (){ 

  Serial.begin(9600); 

  pinMode(LED_green, OUTPUT); 

  pinMode(LED_red, OUTPUT); 

  myservo.attach(9); 

  myservo.write(0); 

 

  // Play a melody at startup 

  for (int thisNote = 0; thisNote < 10; thisNote++) { 

    int noteDuration = 1000 / noteDurations[thisNote]; 

    tone(8, melody[thisNote], noteDuration); 

    int pauseBetweenNotes = noteDuration * 1.30; 

    delay(pauseBetweenNotes); 

    noTone(8); 

  } 

 


Explanation: We first establish the outputs, which are Green LED, Red LED and Servo.

At startup, we play the melody and set the servo position to 0.

When we first power on the Arduino, we set the amount of notes to 0 and if it is less than 10,

we play a note.

The duration of each note is 1000ms and we also add in a pause between each note.





void loop (){ 

  // Read the analog input from the sensor 

  sensor_value = analogRead(AOUTpin); 

  Serial.print("Recorded value:"); 

  Serial.println(sensor_value); 

 

  if(sensor_value < 700){ 

    // If the sensor value is less than 700, turn on the green LED and move the servo to 180 degrees 

    delay(200); 

    digitalWrite(LED_green, HIGH); 

    digitalWrite(LED_red, LOW); 

    digitalWrite(Buzzer, LOW); 

    myservo.write(180); 

    delay(15); 

  } 


Explanation: After the set up is done, the loop function will run repeatedly until off.

In this function, it reads the analog input from our alcohol sensor and is stored as ‘sensor_value’,

whereby the value is printed on the serial monitor.

If the sensor value is below 700, the green LED is turned on, the red LED is off and the servo

position will be set to 180 degrees. 




else if(sensor_value > 800){ 

    // If the sensor value is greater than 800, turn on the red LED, sound the buzzer, and play a melody 

    digitalWrite(LED_green, LOW); 

    digitalWrite(LED_red, HIGH); 

    digitalWrite(Buzzer, HIGH); 

 

    int melody[] = {NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8, NOTE_DS8}; 

    int noteDurations[] = {4, 4, 4, 4, 4, 4, 4, 4, 4, 4}; 

 

    for (int thisNote = 0; thisNote < 10; thisNote++) { 

      int noteDuration = 1000 / noteDurations[thisNote]; 

      tone(8, melody[thisNote], noteDuration); 

      int pauseBetweenNotes = noteDuration * 1.30; 

      delay(pauseBetweenNotes); 

      noTone(8); 

      myservo.write(90); 

      delay(0); 

    } 

  } 

}



Explanation: If the sensor value exceeds 800, Red LED will be turned on,

Green LED will be turned off, buzzer will start playing the melody,

and servo position will be set to 90.


Above is our wiring and we used zip ties to split up our wiring to their own respective parts.

For example, the wires (green & yellow and orange & red) going to the cover of our box are to

the Red and Green lights respectively.

The red, yellow and grey wires are to the servo on the top box.

The orange, yellow and white wires are to our alcohol sensor. 



Part 8: Integration of parts and electronics (Done by everybody)


To integrate the parts and electronics together, we must perform some hand tooling.



We realised that we made the hole for our servo too small, so we had to manually file it down,

taking a very long time.


Afterwards, we had to attach our acrylic sheets together to form our box.




To do this, we need to make use of acrylic glue. Nitrile gloves were needed as acrylic glue is a very hazardous


Afterwards, we realised that our hole was misplaced. We then proceed to file it till we can fit the USB

in, which worked in the end 


Epilogue:

After the completion of the integration of parts and electronics, our product was finished.

We made some tweaks and adjustments to the code in order to make the sensor and lock more

responsive and secured the tube to the product.

Our hero shot:



 

4.    Problems and solutions

In this section I will describe the problems encountered in the design and build process and how the team solved them.

·        Problem 1: The tube going into the analyser was too long and it requires too much breath to even get abit of breath in. This makes the device useless as it will take way too long to even get a sample.

      Solution: Our solution is easy and free, we just cut the tube to make it shorter.

·        Problem 2: We had difficulties gluing the hinges to the box as the hinges was too small.

     Solution: We used velcro to make it so we can open and close the box



    

 

5.    Project Design Files as downloadable files

https://drive.google.com/drive/folders/1n0YuJPGEfWOcfRCZGTegWV-Y-H6t1ZvF

6.    Below is my Learning Reflection on the overall Project Development.

I would say the overall Project Development was successful as compared to other groups. We may have minor disagreements but as a team, we are able to work and talk things out with each other. Through this project, I have learnt how important problem solving skills are, In the past, when i face a difficulty, i will take days to try to figure something out. However, during this project, because we work as a team, we are able to solve problems rather quickly. For example, when we realised that our hinges do not work, we sat down and discussed multiple solution. With the help of a TE, we then decided that we are going to use velcro. This project also make me want work on my coding and CAD skills. This is because my groupmates are way more competent than me in these areas which cause them to do more work. This will not be ideal for FYP so i think what i will start to do would be start learning coding and CAD online during this holiday. Overall, I am pretty satisfied with our product.

 

 

Comments

Popular posts from this blog

About Me