PROJECT DEVELOPMENT
Chemical Device
·
In this section, I will briefly
describe my team chemical device.
Our group's project was to create a breathalyzer
for drivers, to detect a drunk person and prevent him/her from driving.
·
What it is. What problems will
the chemical device solve?
It is a device to be installed in cars
to detect the alcohol concentration in one’s breath. As cars become more and
more common, and idea of rental cars come about, more and more people ae
starting to get on the road and drive to get to places. However, due to
irresponsible driving behaviour, it led
to an increase of accidents occurring on the road.
Our device is to be inbuild into the car.
It detects alcohol in usere’s breath when user blow into the sensor and would
alert the driver whether he is drunk or not through the LCD screen, buzzer, LED
light. The device would also keep the engine starter locked when device detects
that the user is drunk and unlocks it when alcohol levels in user’s breath is
lower that regulations.
·
Below is the hand sketch
of the 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, CFO, COO, CSO)
In the team, we have Jing Yang as the CEO,
Ethan as the CSO, Kallysa as the COO and I was the CFO
·
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 Internal parts of device (done by Kallysa).
Here’s the link to Kallysa’s blog: https://cp5070-2022-2b03-group3-kallysa.blogspot.com/
Part
2. Design and Build of Part B (done by Ethan)
Here’s the link to Ethan’s blog: https://cp5070-2022-2b03-group3-kallysa.blogspot.com/
Part
3. Programming of Buzzer, LED lights and Servo (done by Me, Wei Ling).
When coding for buzzer and LED, I used the files I had previously
used for the Arduino programming practical and tried to integrate the both of
them together. I started out with the with the example file of the buzzer as it
has a in build page of the notes variation already. I then went on to change
the buzzer to a different one where the output of the buzzer sounds more alerting.
I then open up my blinking LED auduino file and insert the necessary
codes into the buzzer code such as defining the pins of the LED, how many times
will the LED blink and buzzer sound etc.
Below is the code used:
if (sensorVal ==
HIGH) {
for (pos = 180; pos <= 90; pos -= 1)
// in steps of 1 degree
myservo.write(pos); //
tell servo to go to position in variable 'pos'
delay(15);
digitalWrite(12, LOW);
delay(1000); // Wait for 1000 millisecond(s)
}
else
//start serial connection
Serial.begin(9600);
//configure pin 2 as an input and enable the
internal pull-up resistor
pinMode(2,
INPUT_PULLUP);
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
for (int i=0; i < 5; i++)
{
{
digitalWrite(13, LOW);
digitalWrite(12, HIGH);
// iterate over the notes of the melody:
for (int thisNote = 0; thisNote < 3; thisNote++) {
// to calculate the note duration,
take one second divided by the note type.
//e.g. quarter note = 1000 / 4,
eighth note = 1000/8, etc.
int noteDuration = 1000 / noteDurations[thisNote];
tone(8, melody[thisNote], noteDuration);
// to distinguish the notes, set a
minimum time between them.
// the note's duration + 30% seems to
work well:
int pauseBetweenNotes =
noteDuration * 1.30;
delay(pauseBetweenNotes);
// stop the tone playing:
noTone(8);
}
digitalWrite(13, HIGH);
delay(1000); // Wait for 1000 millisecond(s)
}
}
}
}
void loop() {
// no need to repeat the melody.
}
After I done and
checked, for buzzer and LED light, I tried to integrate servo into the codes I’ve
already coded. So I used back the code I had also in the Arduino practical and
added to the code I did.
here's a video of me trying out the code:
The servo code is only
used in the if situation as the servo is supposed to move upon detection that
driver is sober.
Part 4.
Programming of LCD, Alcohol Sensor and integrating all electronics together (done
by Jing Yang).
Here’s the link to
Jing Yang’s blog: https://cp5070-2022-2b03-group3-tjingyang.blogspot.com/
Part
5. Integration of all parts and electronics (done by everyone)
· Embed the finalized fusion 360 design files.
· Documentation of Integration
For integrating all our components of our device, we met up during one of the days in the week last week. We actually tried to piece everything together and did a test run. however it did not really worked out as the servo could not reinitialize itself to original position. hence we had to move on to plan be which is to take the servo and the gear as the gine and change the scenario from stopping the sterring wheel to stopping the engine.
Then we tried to showcase our integration through the form of CAD drawing on fusion360 to see and ensure that the device we envisioned did match up to the final product we had.
We also relise that some problems arose as we were integrating. This would be discussed further in the next section.
4. Problems and solutions
Some problems we encountered was:
1. We realised some of our pieces are very floppy and seem like it could fall off easily. It required support. So what we did was that we made new 3d sketches and models of the models and glued it to the existing prints we had.
The we realised that our print cannot be joined using slots as we did not design it. So we had to resolve to using acrylic glue to glue the pieces together.
We also found out that our box was literally a box itself, with no openings whatsoever for ease of puttig the parts together. Hence we had to sketch and laser cut more sides to create a cover for the box.
When trying to put the parts of the device together, we realised that we did not account for the wires running out of the device and also a hole for the usb port. So we had to drill some holes on our model to allow the wire run.
LAstly, as we were trying out our codes, we found out that our initial idea of rack and pinion would not work as the servo does not initialize back to its original position after it spins for one run so we decided to use the servo as a representation of the engine.
5.
Project Design Files as
downloadable files
Here's the link to the drive with all the design files included: https://drive.google.com/drive/folders/1tRzxvO-i505x1WrIcm6qH04Clot05qdU?usp=sharing
6. Below is my Learning
Reflection on the overall Project Development.
In this 4 weeks of project development, I've learnt the importance of forward planning. Even thoughwe've plan forward alred, there could be unforeseen changes that we should've prepared a plan B for.
I've also learnt how we could possibly make use of the software we had and make things happen. Fusion 360 is such a powerful software. For the designing, our group actually only used Fusion360 for the desgin of the different parts of the device such as the container which is supposed to be laser cut, or the platform which is 3D printed. Notonly that, we could use Fusion360 to anymate the parts wwe have and see is work in a CAD drawing. Or even integrating all the parts together, and doing explosion of the device to see the components that is in the device.
I also learn that codes may not necessarily be something complicated to be used. When programming, it is actually quite flexible to make adjustments in the code. Not only that, it is actually relatively simple for us to use codes that we've used before, be it in the Arduino programming prsctical or from other places, to integrate into our programming as we were coding.
Overall, it was a very interesting project where we start building from scratch, and see the device come to live makes me proud of our team that we were able to create it in 4 weeks.



Comments
Post a Comment