Hello welcome to my final blog of the semester. Unfortunately, I wont be ending this off feeling good as I have been sick for the past few days :' But don't worry it's not covid I'm very much negative.
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.
Our team Chemical Device
Our chemical device is a tea maker that would aid people who enjoy consuming tea frequently in their tea brewing session. The problem of the tea taste being highly dependent on the temperature of hot water and the brewing teatime would be solved with our tea maker.
For my team's chemical device,
Users need not use a thermometer to manually measure their hot water and a separate timer to check the brewing time left.
Our chemical device would allow our users to get their tea brewed at their desired temperature and time.
Hand sketch of the chemical device:
Team Planning, allocation, and execution
Team member's name and their respective roles: CEO - Jing Hui
CFO - Joel
COO - Qian Yu
CSO - Jun Kai
BOM (BILL OF MATERIALS) table:
Finalized Gantt chart (planned and actual):
Design and Build Process
In this section, I will provide documentation of the design and build process.
Part 1. Design and Build of pitcher jug (done by Joel).
Link to Joel’s blog: CP5070-2022-2B01-Group1-Joel
Documentation for task 1
Hero shot:
Part 2. Design and Build of lid (done by Jun Kai and ME) Documentation for task 2
3D drawing process
1) Create sketch and draw a square (10cm x 10cm)
2) Extrude to the desired height (8cm)
3) Draw a smaller square ( 9cm x 9cm)
4) extrude down 7cm to cut it
5) Draw a circle for the tea hole and a wall to separated the sugar and tea area.
6) Cut out the inner circle and sketch the sugar dispenser hole
7) Cut out the the sugar dispenser hole
8) Sketch and cut a hole on the side of the cube
9) Sketch and cut a hole for the temperature sensor to pass through
10) Sketch and cut a hole for the wires to pass through
11) Reduce the height of the lid to save print time
12) Add printed indent so that the walls which can be printed separately can slot into it. (for our case, cardboard can be slotted into it)
For the motor extensions, I used the dimensions on the cyton website and manual measurements to draw out the sketch on fusion.
Then I extruded each section 1 by 1 according to the height of the motor shaft.
Some allowance was added to those values so that it would be too tight of a fit.
Shortest extrusion | -> | Longest extrusion (outer cylinder) |
What we originally wanted to print:
What we ended up printing:
1) bottom of the lid
Printing in process:
Final printed product:
2) Cylinder for ball infuser
To the left is a picture of the cylinder being printed out. The quality of this ender 3 printer is not as nice as the ultimaker printer. However, this cylinder does serves its purpose in housing the metal infuser ball which is sufficient.
3) Extension for motor
I don't have a picture of the yellow one being printed but to the left is a picture of the same thing but red being printed. I did not use the red one as the hole was too small for the motor as I did not include allowance.
The picture on the left shows how the extension is fitted onto the motor. It was slightly loose so i added bluetack to reinforce it.
Ofc for all these prints we did file it down. However, we did not take any pictures.
Hero shot:
Part 3. Design and Build of body (done by Joel, Jun Kai, ME).
Link to Jun Kai’s blog: CP5070-2022-2B01-Group1-JunKai Documentation for task 3.
We used cardboard to build the remaining parts of the prototype.
Main structure:
Smaller inserts such as the base:
Hero shot:
Part 4. Programming of motor and lcd (done by ME).
Documentation for task 4
I included includes several libraries which are
"pitches.h" -> for the music
"OneWire.h", and "DallasTemperature.h" -> for the temperature sensor
Then I establish what is connected to which pin on the Arduino board. e.g motor pin 4 is connected to pin 7 on the arduino board
The desired duration is edited here too.
I put codes in void setup() to make the Arduino board perform my desired action.
Code | Meaning |
Serial.begin(9600); | sets up a serial communication between the Arduino and the computer with a data transfer rate of 9600 bits per second |
while (!Serial) {} | is a loop that waits until the serial communication is established. It keeps checking the condition in the parentheses until the serial communication is established |
pinMode(ledPin, OUTPUT); | used to control the LED connected to the pin ledPin is an output |
sensors.begin(); | initializes the temperature sensor and prepares it for reading temperature values |
sensors.setResolution(12); | sets the resolution of the temperature sensor to 12 bits. This means that the temperature values read from the sensor will have a resolution of 0.0625 degrees Celsius. |
pinMode(motorPin1, OUTPUT); pinMode(motorPin2, OUTPUT); pinMode(motorPin3, OUTPUT); pinMode(motorPin4, OUTPUT); | used to control the stepper motor |
previousTime = millis(); | sets the initial value of previousTime as the current time in milliseconds since the Arduino board started running. It is used to keep track of the time between steps when controlling the stepper motor. |
Code | Meaning |
sensors.requestTemperatures() | function call to request the temperature readings from a connected digital temperature sensor |
float temperatureC = sensors.getTempCByIndex(0) | retrieves the temperature reading in degrees Celsius from the first temperature sensor connected to the device. The value is then stored in the temperatureC variable |
Serial.print("Temperature: "); | command that print the text "Temperature:" to the serial monitor |
Serial.println(temperatureC); | commands that print the value of temperatureC to the serial monitor |
I set up the serial communication which allows me to view the current temperature in Celsius on the serial monitor.
The serial monitor is a tool in the Arduino IDE that allows me to view messages sent from the Arduino board.
I did this to aid me in my troubleshooting process.
The picture above is the code for the music.
I did not use loop function since there was no need for it, therefore void loop () is empty inside.
Counterclockwise:
Clockwise:
counterclockwise() and clockwise() function makes the motor rotate in a counterclockwise and clockwise direction respectively by setting specific pins of the microcontroller to a particular value, which in turn sends the corresponding electrical signals to the motor.
The difference between the two functions is the order in which the pins are set to different values, which causes the motor to rotate in the opposite direction.
Setup:
Hero shot:
Part 5. Integration of all parts and electronics (done by Joel, Jun Kai, ME) Documentation for integration
Using a bolt and a nut, the 3D printed handle is being attached to the laser cut jug.
The red 3D printed part was taped to the cardboard as see in this picture.
Drilling a hole through the printed extension so that the chain connected to the metal infuser can be threaded through.
Swapped the chain on the metal infuser ball out for a longer one.
A small square was cut in the cardboard so that the wires would be at the bottom and the
motor can rest on it. Kind of like how some desks a holes for the PC wire to pass through.
Masking tape was added to secure it in place.
Taped all the wires and resistors securely down. Prevent them from moving when I place them into the cardboard body.
The LED light was threaded through the hole on the 3D printed piece. The wires had to be bent 90 degrees twice to fit into the breadboard.
A hole was cut the the back so that the cable connecting the arduino board to the laptop can pass through.
The breadboard, Arduino board and wiring all fits and are not exposed!
Once everything was in place, We decided to paint the top red so that the red 3D printed part can be camouflaged and not stick out like a sore thumb.
Hero shot:
Demonstration of the final product:
Problems and solutions
In this section I will describe the problems encountered in the design and build process and how the team solved them and/or could have solved them.
The team has decided to collaborate and worked on this google docs together.
Project Design Files as downloadable files
In this section, I will provide all the design files (Fusion360 files, .dxf files, .stl files, arduino programs files) as downloadable files.
All our files are in this google drive :> https://drive.google.com/drive/folders/1pdazsXXCQRGEWvanZ5AQAr_Nbzl8X5ac?usp=sharing
Below is my Learning Reflection on the overall Project Development.
Overall, even though we manage to complete our prototype, I still felt that the project journey was unsatisfying as compared to ICPD. I felt that there was a lack of structure and coherence. I felt that I did not give my 200% for this module. When it comes to such kind of projects, I actually enjoy building things. But I got burned out, I ended up being resentful towards this.
Next, time management is certainly very important. Time is something you will never get back and it is very important to use it wisely. We are born with a fixed amount of time that we do not know how long it is. Despite knowing this, I struggle with time management a lot and always procrastinate. Part of the reason is that I tend to overthink whenever I complete my work too early. Another reason would be that I am afraid I would fail. I need someone to constantly remind me of the work that needs to be done to trigger my anxiety to do work. If it was just me alone, it would be hard to be motivated.
In the future I can utilize the Gantt chart and state specific due dates and allocation so that our team is on track.
After completing all the theory for CPDD, I know that my weakness would definitely be the Arduino programming. However, I know that everyone in my group probably feels the same way. Hence, I decided to take up this task.
I had to learn everything by using the resources on Brightspace and other online resources like the cytron website and youtube.
Taking up this challenge alone has made me feel more empowered when I manage to complete it since i would never have thought I could do something this complex. However, I felt a little underappreciated from my team for my Arduino coding as I really put in a lot of effort (Can't rlly say time since I last minute did it). I was so worried about the coding I even wokeup at 5am after sleeping for 2 hours to do it. The least they could do was to be interested in how the coding works or like something.
In CPDD, I felt that I had achieve my personal goal #1 from my homepage since I could do the fusion drawings quite fast as compared to ICPD.
Comments