Introduction: The 'know-it-all' Shower...
An automated home isn't just smart enough, unless it encompasses a smart bathroom . With spontaneity as its accomplice, here's a unique shower that is intelligence and luxury en masse. Its dexterity in pouring down a perfect fusion of hot and cold in accordance with surrounding teperature is something that guarantees perfect satisfaction . Being more than an ordinary shower, it is something that just knows!
Summer has got a smart enemy now.
Step 1: Material
* Electronic Components :
- Arduino Uno
- Distance/Ultrasonic sensor
http://www.simplelabs.co.in/content/ultrasonic-distance-sensor-hc-sr04
- Temperature sensor(LM35)
http://www.simplelabs.co.in/content/lm-35-temperature-sensor
- L293D motor driver
- LI-PO battery (for constant power supply).
- BO-motors (servo will serve for this purpose better).
- AA battery
- Jumper Wires.
* Mechanical Components :
- Toy connecting rods
- Tires with clamps
- Spacers
- Nut and Bolts.
Step 2: Mechanical Design...
All the parts have been assembled as shown above. For tire and clamp, washer should be used. After fitting it to the shower knob, two more spacers are to be bolted to ensure stability. Taping the BO-motors back ensures water proofing.
Step 3: Setting Up Ultra Sonic Sensor..
const int trigPin = 8;<br>const int echoPin = 9; void setup() { // initialize serial communication: Serial.begin(9600); } void loop() { // establish variables for duration of the ping, // and the distance result in inches and centimeters: long duration, inches, cm; // The sensor is triggered by a HIGH pulse of 10 or more microseconds. // Give a short LOW pulse beforehand to ensure a clean HIGH pulse: pinMode(trigPin, OUTPUT); digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); // Read the signal from the sensor: a HIGH pulse whose // duration is the time (in microseconds) from the sending // of the ping to the reception of its echo off of an object. pinMode(echoPin, INPUT); duration = pulseIn(echoPin, HIGH); // convert the time into a distance inches = microsecondsToInches(duration); cm = microsecondsToCentimeters(duration); Serial.print(inches); Serial.print("in, "); Serial.print(cm); Serial.print("cm"); Serial.println(); delay(100); } long microsecondsToInches(long microseconds) { // According to Parallax's datasheet for the PING))), there are // 73.746 microseconds per inch (i.e. sound travels at 1130 feet per // second). This gives the distance travelled by the ping, outbound // and return, so we divide by 2 to get the distance of the obstacle. // See: http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf return microseconds / 74 / 2; } long microsecondsToCentimeters(long microseconds) { // The speed of sound is 340 m/s or 29 microseconds per centimeter. // The ping travels out and back, so to find the distance of the // object we take half of the distance travelled. return microseconds / 29 / 2; }
Step 4: Setting Up Temperature Sensor..
float tempC;<br>int reading; int tempPin = 0;
void setup() {
analogReference(INTERNAL);
Serial.begin(9600);
}
void loop() { reading = analogRead(tempPin); tempC = reading / 9.31; Serial.print(tempC); Serial.println(); }
Step 5: Setting Up Motor Driver..
void setup()<br>{ pinMode(13,OUTPUT); pinMode(12,OUTPUT); pinMode(10,OUTPUT); pinMode(11,OUTPUT); pinMode(6,OUTPUT); pinMode(7,OUTPUT); } void loop() { digitalWrite(11,HIGH); digitalWrite(10,LOW); delay(460); digitalWrite(11,LOW); digitalWrite(10,LOW); delay(1/0);
//check for motor 13,12,11,10 used for motor output
}
Attachments
Step 6: Dry Test..
Upload the given code for running the dry test at a height of 40 cms.
Attachments
Step 7: Attaching the Mechanical Chassis to the Shower..
Attach the chasis and bolt the spacer such that knob of the shower be in the tight grip of the clamped tire.
Step 8: Final Test (Wet Test)..
- Check for delay corresponding to the angle of rotation. (470ms=360degrees as in code).
- Hang the the sensors box right above the position where you stand during bath.
- Hang the motor driver box away from water.
- Measure the height of the bathroom roof. (for my bathroom its 200cms approx.)
- Measure the height of the smallest member of your family. (150cms for my family)
- Upload the code.
- Ready to take a Smarter bath =)..
Remember to open the geyser before this test if temperature is low.. It has auto cut-off no need to make it smarter..
Enjoy the bath..
Attachments
Step 9: Conclusion
The experiment quite well reflects the efficacy of the working mechanism, while more testing might modify subtle details. The prototype in question can be made more cost efficient so that it suits varied consumers.The working philosophy is also expected to benefit other spheres in a better direction.

Second Prize in the
Home Technology Contest

Participated in the
Battery Powered Contest

Participated in the
Community Contest: Toy Rods and Connectors

Participated in the
squeeze more awesome out of summer contest

Participated in the
Summer #mikehacks Contest
15 Comments
8 years ago on Introduction
Very cool, I like how it automatically balances water temperature... But honestly if I adjusted it, it might be a bad idea for someone else to try and take a shower because I like mine HOT!! XD
8 years ago on Introduction
great work..
8 years ago on Introduction
Excellent....!
8 years ago on Introduction
Great project...good idea..:)
8 years ago on Introduction
Good Work... Keep it up
8 years ago on Introduction
grt concept
8 years ago on Introduction
Awesome project...Great idea..temperature control system is really innovative..
Reply 8 years ago on Introduction
thank you..
8 years ago
Very good idea. Thankyou!
Reply 8 years ago on Introduction
Thanks..
8 years ago
Awesome idea and great instructable. Thanks for sharing!
Reply 8 years ago on Introduction
Thanks...
8 years ago on Introduction
Polichutto:)
8 years ago on Introduction
I was about to say this wasn't a K'nex project and should be removed from this contest. But then I remembered that it is a rods and connectors contest, not just K'nex :D
8 years ago on Introduction
Ahh! I wish my shower turned on and off automatically. Sweet demo.