FINAL PROJECT
Automatic Hot Water Dispenser
Final Project Slide
Final Project Video
Mechanical Designing
Making of Main Structure
I used Solidworks software, as my primary tools to design. My whole project is built on MDF that was laser cut for most parts and certain joinery details with 3d printed parts. All the process learnt in Week 3, 4 & 6 had to be used to create a product such as this. The best part is how I can combine several processes in creating one final output.
Making Part-1
It is front side of dispenser, first make sketch, and extrude it to thickness of wood "16mm".
Making Part-2
It is second front part of dispenser in which HC-SR04 Ultrasonic Sensor is enclosed .
Making Part-3
Actually it is base for Metallic tank and small hole for water dispense
Making Part-4
It is side part of dispenser, and stand for placing glass or cup etc
Making Part-5
It is back-side part of dispenser,small rectangle is used for placing circuitry, and small holes are using for inlet and outlet of water.
Making Part-6
It is Top part of dispenser
Making Part-7
It is Bottom part of dispenser
Assembly
Cutting and Joining Parts
After generating toolpath from VCarve I cut all parts using Shopbot. To learn how to generate toolpath from VCarve please visit Generate toolpath
Cutted Parts from Shopbot.
Joining Parts
Final result after Assembly
Laser Cutting
For making dispenser stand, I selected 3mm acrylic sheets for laser cutting. The stand is first made in Solidworks along then change to .dxf to open in inkscape file. From inkscape it changes to .dxf to .svg. And after changing in svg file it converts to .pdf format for laser cutting process.
Making Part-1
Upper part of stand.
Making Part-2
Bottom part of stand.
Making Part-3
Front part of stand.
Making Part-4
Back side part of stand with outlet hole.
Making Part-5
Side part of stand.
3D Printing
Designing Cylinder
Finished 3D Printed Cylinder
Electronic System
Electronic system includes circuit boards, wiring from circuit board to immersion heater, solenoid valves, Ultrasonic sensor, Water proof (DS18B20) digital temperature sensor and Bluetooth module.
Main Board
The main circuit board is Leonardo board which is connected with immersion heater, solenoid valves,Ultrasonic sensor(HC-SR04),Water proof (DS18B20) digital temperature sensor and Bluetooth module(HC-05).
Leonardo Board
For my final project, I needed to design and mill a board that can take multiple I/O pins.therefore i download leonardo board(the board is based on Atmega32U4 microcontroller) files which is already made by our Ex student Nadir-Ali and i add voltage regulator which is i made in week12, Designing my own board is one of the best things that I've done in Fabacademy and I'm really proud of the board I had designed. This board I'm using for my final project.
32U4 Board Schematic
PCB Design
PCB
Relay Circuit
I made a relay circuit with voltage regulator for immersion heater and Solenoid valves which are operating with 12V.
Relay Schematic
PCB Design
PCB
Final PCB
Bluetooth module(HC-05)
HC-05 module is an easy to use Bluetooth SPP (Serial Port Protocol) module, designed for transparent wireless serial connection setup. I connected Rx and Tx pins of Bluetooth module to Pin-1 and Pin-0 of leonardo board respectively.
Bluetooth HC-05
PCB for Bluetooth module
With bluetooth HC-05 you can not send or receive date from board,until the voltage divider on the Rx line of the module is used to ensure that module does not receive signals above 3.3v. In a real application you might want to use the HW serial port itself to connect the Bluetooth module, if you need hardware interrupts. So for this we design pcb for voltage divider in machine design week.
Schematic of PCB
PCB Design
Final look after milling
Bluetooth connect with PCB
Immersion Heater
Immersion heaters are used to heat many liquid substances like water, oil, chemicals and even to stabilize gas within their tanks. They are used in many industries within different liquid storing tanks, during the processing of pipes and in pressurizing the storing containers. This product is made in such a way so as to withstand almost any environment and you can make use of it either in a pure water tank or under any acidic medium.Immersion heater connected with leonardo pin-13.
Immersion heater
Heater immerse in Metallic tank
Water proof (DS18B20) digital temperature sensor
The DS18B20 Digital Thermometer provides 9 to 12-bit (configurable) temperature readings which indicate the temperature of the device. Information is sent to/from the DS18B20 over a 1-Wire interface, so that only one wire (and ground) needs to be connected from a central microprocessor to a DS18B20. Power for reading, writing, and performing temperature conversions can be derived from the data line itself with no need for an external power source. Because each DS18B20 contains a unique silicon serial number, multiple DS18B20s can exist on the same 1-Wire bus. This allows for placing temperature sensors in many different places. Applications where this feature is useful include HVAC environmental controls, sensing temperatures inside buildings, equipment or machinery, and process monitoring and control.It is connected with leonardo pin-4.
Water proof (DS18B20) digital temperature sensor
HC-SR04 Ultrasonic Sensor
It is an ultrasonic sensor, also known as an ultrasonic transducer that is based on a transmitter and receiver and mainly used to determine the distance from the target object. The amount of time it takes to send and receive waves will determine how far the object is placed from the sensor. It mainly depends on the sound waves working on “non-contact” technology. The required distance of the target object is measured without any damage, giving you accurate and precise details. This sensor comes with a range between 2cm to 400cm and is used in a wide range of applications including speed and direction measurement, wireless charging, humidifiers, medical ultrasonography, sonar, burglar alarms, and non-destructive testing.
The HC-SR04 Ultrasonic (US) sensor is an ultrasonic transducer that comes with 4 pin interface named as Vcc, Trigger, Echo, and Ground. The trigger and Echo pins of Ultrasonic sensor are connected with leonardo pins 9 and 10 respectively.HC-SR04 Ultrasonic Sensor
Solenoid Valve
A solenoid valve is an electromechanical device used for controlling liquid or gas flow. The solenid valve is controlled by electrical current, which is run through a coil. When the coil is energized, a magnetic field is created, causing a plunger inside the coil to move. Depending on the design of the valve, the plunger will either open solenoid valve or close the valve. When electrical current is removed from the coil, the valve will return to its de-energized state.Both solenoid valves are connected on leonardo pin-12.
Solenoid valve
Solenoid valves mounted on heater
PVC flexible pipe
We recommend the use of PVC for recreational use/building, cold water systems, vent systems, and drainage systems. It i connected for inlet and outlet of dispenser.
Brass hose nipples
For dispenser i used one side thread brass nipples.
Brass bush
A pipe fitting used to join two pipes of different sizes. A bushing is threaded inside and out.
12V Relay
Relays are generally used to switch smaller currents in a control circuit and do not usually control power consuming devices except for small motors and Solenoids that draw low amps. Nonetheless, relays can "control" larger voltages and amperes by having an amplifying effect because a small voltage applied to a relays coil can result in a large voltage being switched by the contacts.
Programming
The final code which controls the temperature of immersion heater and tank level.
Code for Leonardo Board:
#include "OneWire.h"
#include "DallasTemperature.h"
/// distance sensor variables////
const int trigPin = 9;
const int echoPin = 10;
long duration;
int distance;
/// temperature sensor variables ////////
#define ONE_WIRE_BUS 4
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
float Celcius=0;
float Fahrenheit=0;
int lvl;
//// reading distance sensor /////
int distance_sen (){
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Sets the trigPin on HIGH state for 10 micro seconds
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Reads the echoPin, returns the sound wave travel time in microseconds
duration = pulseIn(echoPin, HIGH);
// Calculating the distance
distance= duration*0.034/2;
// Prints the distance on the Serial Monitor
return distance;
}
void setup(void)
{
pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output
pinMode(echoPin, INPUT); // Sets the echoPin as an Input
Serial.begin(9600);
Serial1.begin (9600);
sensors.begin();
pinMode (12,OUTPUT); //valve pin
pinMode(13,OUTPUT); // heater pin
digitalWrite (12,LOW);
}
void loop(void) {
if(Serial1.available()>0)
{
char data = Serial1.read();
if (data == 'a')
{
digitalWrite(13,HIGH);
}
else if(data == 'b')
{
digitalWrite(13,LOW);
}
}
/// calling temperature ///
byte temperature = 0;
sensors.requestTemperatures();
Celcius=sensors.getTempCByIndex(0);
Serial.print(" C ");
Serial.print(Celcius);
Serial1.println(Celcius);
/// calling distance //////
distance_sen();
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
/// turn off the heater if temperature is greater than or equal to 80////
if (Celcius >= 80){
digitalWrite(13,LOW);
}
//// turn on the valve ///
if (distance <= 2){digitalWrite(12,HIGH);}
else {digitalWrite(12,LOW);}
delay(100);
}Developing App using MIT app inventor
As i have prior experience of making App in MIT App inventor inWeek-16 , so i design the final project app using the same software here i use ON and OFF buttons for controlling heater, when you press ON button it send character let say "a" and ON the heater, press OFF it send another character "b" which is for OFF the heater.For temperature reading i use realtime clock to show the readings of temperature, and everything is same about making bluetooth application as i explained in week 16.
View of mobile app
Blocks View of mobile App
Blocks View of mobile App
Bill of Material(BOM)
Components Number of components * Price of components(USD) Total price (USD) link Solenoid valves 2 * 5.2 10.5 click here for link Metalic storage tank 1 * 4.5 bought locally Water immersion heater 1 * 3.3 bought locally Water proof (DS18B20) digital temperature sensor 1 * 1.2 bought locally HC-SR04 ultrasonic sensor 1 * 3.95 Fab inventory click here for link 4x4-ft 16mm MDF Board 1 * 7.3 bought locally 1x1-ft 3mm Transparent Acrylic Sheet 1* 1.04 bought locally Bluetooth Module HC-05 1 * 2.6 Fab inventory click here for link Atmega32U4 1 * 4.2 Fab inventory click here for link PVC flexible pipe Ø10mm (L=2meter) 1 * 0.04 Bought locally Brass hose nipples Ø10mm 3 * 0.133 0.4 Brass bush with nut 1 * 0.33 Bought locally 12V Relay 3 * 0.13 0.39 12V 2Amp Adapter 1 * 1.5 bought locally PLA 3D printed pieces $24.5/1kg required 2g. 0.049 www.digikey.com Total Cost -- 41.299 -- Acknowledgment:
Allah - beginning with the name of - the Most Gracious, the Most Merciful . All praise is due to Allah; we praise Him, seek His help, and ask for his forgiveness. I am thankful to Allah, who supplied me with the courage, the guidance, and the love to complete this course. Also, I can not forget the ideal man of the world and the most respectable personality for whom Allah created the whole universe, Prophet Mohammad(Peace Be Upon Him).
I would like to acknowledge my deep gratitude to Professor Neil Gershenfeld, director of Fab Academy whose lectures increases our exposure and encourage us to learn more, specially thanks to Vice Chancellor Sir Professor Nisar Ahmed Siddqui along with his team whose vision and mission make FABLAB possible in Pakistan. My instructors Sir Sohail Ahmed Soomro, Noor Ahmed Raza Pirwani and Rasheed Ahmed Qazi who guide me with best of their knowledge in every week to complete the task. There is other honorable Global instructor EDUARDO CHAMORRO for weekly reviewing my assignments, my brother Waseem Hassan who motivated me for this golden opportunity. My colleagues who always their to hand me complete group assignments. and all those who are available and somehow help me to complete this course I thank you all. Finally I thank to my family and friends who encourage me, financially support me and emotionally attached with me when I need them.
What I learned, made and shared here is thanks to you all.
"Click here"to download all files of this week
« About Me Weekly Assignments »
.
Automatic Hot Water Dispenser by Tariq Ahmed Shaikh is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Based on a work at http://fabacademy.org/2019/labs/khairpur/students/tariq-ahmed/