Industrial manufacturing
Industrial Internet of Things | Industrial materials | Equipment Maintenance and Repair | Industrial programming |
home  MfgRobots >> Industrial manufacturing >  >> Manufacturing Technology >> Manufacturing process

Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control

Components and supplies

Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Arduino 101
×1
Normally Closed Solenoid Valve
Make sure it can withstand the temperature of the shower water; if you are using a metal one make sure it contains no lead. ALSO: Measure your own plumbing before buying
×1
Fittings for Solenoid Valve
Make sure it can withstand the temperature of the shower water; if you are using a metal one make sure it contains no lead. ALSO: Measure your own plumbing before buying
×1
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Breadboard (generic)
×1
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Adafruit RGB Backlight LCD - 16x2
×1
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Buzzer
×1
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Jumper wires (generic)
×1
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Power MOSFET N-Channel
×1
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Rotary potentiometer (generic)
×1
Flip Switch
×1
Battery Bank
×1
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Resistor 221 ohm
220 ohm will also work aswell
×2
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
1N4007 – High Voltage, High Current Rated Diode
×1
Plastic Container
×1
Velcro Wall Strips
×2
Cheap USB Cable
×2

Necessary tools and machines

Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Hot glue gun (generic)
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Soldering iron (generic)

Apps and online services

Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Arduino IDE

About this project

Why?

It may not seem like it, but the shower is easily one of the most wasteful appliances in a home and expends great amounts of water and energy.

According to Home Water Works, the average flow rate of a shower is 2.1 Gallons (7.94L) per minute; this with an average shower time of 8.2 minutes results in 17.2 gallons (65.1L) used per shower or 51.6 gallons (195.3L) used in an average American household (3 people) per day. This makes it the third largest water user in a home.

The numbers are even more surprising if you look at the energy use. According to Skidmore College, the average shower uses 440 BTUs (0.13 kWh) to heat one gallon (3.78L) of water. This means that about 2.2 kWh are used in a single typical 8.2 minute shower and 6.6 kWh used per household per day! According to the US Department of Energy, this makes up 17% of total home electricity usage.

With the US EPA's estimate of 0.000703 metric tons (1.55 pounds; 0.7 kg) of CO2 per kWh, this results in 3.4 pounds (1.54kg) of CO2 per shower and 10.2 pounds per household.

However, the recommended shower time is only 5 minutes according to Green Lifestyle Changes - this cuts water use by 6.7 gallons (25.4L), power use by 871Wh (That's enough to power 174 CFL bulbs for an hour!), and CO2 emission by 1.35 pounds (0.6 kg) per shower. This is where the Shower Regulator for the Intel Earth Day Challenge comes in which would limit the shower time to 5 minutes or to whatever time the user chooses.

In one 365 day year, this would save 2,455.5 gallons (9,295.1L) of water (enough for a person to drink for about 13 years) and 317.9kWh or 492.7 pounds (223.5kg) of CO2 per person, resulting in 7,366.5 gallons (27,885.2L) of water, 953.7kWh of power, and 1,478.2 pounds (670.5kg) of CO2 saved per household.

How Does it Work?

1- The solenoid valve is closed when the device is powered off so no water can flow if the regulator is not running.

2- The valve opens when the device is powered on; the user can turn on the water now.

3- The regulator allows the water to warm-up for 20 seconds (is adjustable) indicated by 1 beep.

4- After warm-up, the regulator begins the shower timer for 5 minutes (is adjustable) indicated by 2 beeps.

5- The regulator will give 1 beep warnings 1 and 2 minutes before the shower is over.

6- Once the shower time is completed, the device will automatically close the valve, stopping the flow of water. The user can turn off the water and the regulator now. This is indicated by a continuous beep.

Instructions

Note- make sure that the valve is the right size and can withstand the temperature of the shower water. Also make sure that the fittings and valve don't contain any hazardous substances like lead.

1- Strip 2 USB wires and solder them to the switch and step up (boost) converter (remember to adjust the converter to output a voltage between 6 and 12V). Refer to the pictures below.

Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control

2- Build the circuit using the schematics provided in the "Schematics" Section below.

Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control

3- Upload the code provided in the "Code" Section below to the regulator using the Arduino IDE.

4- Cut holes into the plastic container for the switch and wires for the solenoid valve.

5- Thread the solenoid valve wires through its hole and steal it with water-proof hot-glue. Then glue the switch into its hole. After this, glue the LCD screen onto the lid of the plastic container.

Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control
Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Control

6- place the circuit into the container and close the lid. Make sure the switch and LCD are properly connected to the breadboard.

7- Attach the valve and its fittings between the water outlet and the shower head.

8- Stick the Velcro straps onto the back of the plastic container and attach it to a wall near the shower head.

Video

Code

  • Code
CodeC/C++
//User settings:-----------------------
const float showerTime = 5; //In minutes
const int warmupTime = 20; //In seconds
//-------------------------------------

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int stat = 0; //This keeps track of the status 

void setup() {
  // put your setup code here, to run once: 
  lcd.begin(16,2); 
  pinMode(13,OUTPUT); //Set pin 13 as output (For solenoid valve)
  pinMode(10,OUTPUT); //Set pin 10 as output (For piezo buzzer)
}

void loop() {
  // put your main code here, to run repeatedly:
  if(stat == 0){ //If the status is 0, begin warmup
    digitalWrite(13,HIGH); //Open solenoid valve
    tone(10,2000,1000); //Gives the warmup buzz
    for(int  i = warmupTime; i > 0; i--){
      lcd.clear();
      lcd.setCursor(0,0);
      lcd.print("Water Warmup:"); //Text for line 1
      lcd.setCursor(0,1);
      lcd.print(String(i) + " seconds"); //Text for line 2
      delay(1000);
    }
    stat++; //Update status
  }
  if(stat == 1){ //If the status is 1, begin the shower timer
    tone(10,2000,1000); //Gives the shower buzz; warmup is over
    delay(1500);
    tone(10,2000,1000);
    for(int i = showerTime * 60; i > 0; i--){
      if(i == 120){ //If there are 2 minutes left, give a warning buzz
        tone(10,2000,1000); 
      }else if(i == 60){ //If there is 1 minute left, give a second warning buzz
        tone(10,2000,1000);
      }
      lcd.clear();
      lcd.setCursor(0,0);
      lcd.print("Shower:"); //Text for line 1
      lcd.setCursor(0,1);
      lcd.print(String(i) + " seconds"); //Text for line 2
      delay(1000);
    }
    stat++; //Update status
  }
  if(stat == 2){ //If the status is 2,stop the shower and notify user that it is over
    digitalWrite(13,LOW); //Close solvenoid valve
    tone(10,2000); //Gives buzz until it is shut off
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("Shower Over"); //Text for line 1
    lcd.setCursor(0,1);
    lcd.print("Have a Good Day!"); //Text for line 2
    delay(2000);
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("Turn me off"); //Text for line 1
    lcd.setCursor(0,1);
    lcd.print("Turn water off"); //Text for line 2
    delay(5000);  
  }
}

Schematics

Smart Shower Regulator - Reliable Solenoid Valve for Precise Temperature Controldiagram_F3mdu8tMGy.fzz

Manufacturing process

  1. Voltage Regulator Experiment with a 12‑Volt Zener Diode
  2. Building an Arduino‑Powered Robot with Raspberry Pi: A Step‑by‑Step Guide
  3. Preventing Maintenance‑Induced Bottlenecks: A Practical Guide for Manufacturers
  4. DIY Wizard Walking Staff Kit – Arduino, LED Strip, Voltage Regulator & More
  5. Build a Stunning NeoPixel LED Matrix with Arduino Nano: Step-by-Step Guide
  6. Fully Automated 3D‑Printed Brushless Nerf Blaster Powered by Arduino
  7. Arduino Nano RTC Clock: Precise Timekeeping with DS1307
  8. 15 Essential Safety Steps for CNC Woodturning Operations
  9. Essential Safety Protocols for a Secure Plant Shutdown
  10. Keep Your Air Compressors Running Smoothly and Avoid Downtime