Eco-dusch: Hur man kan skära din vattenräkning om du har en tonårig dotter (3 / 4 steg)

Steg 3: Kod:

Eco-dusch Arduino kod
Julian Arnott & James Arnott 2014
//
Vi använder DS18B20 temperaturgivare monteras på röret varmvatten för dusch för att utlösa en 20 minuters timer.
När timern har gjort sitt, växlar den reläer som Bryt strömmen till pumpen dusch.
Medan röret temperatur överstiger trigger temperaturen, kommer reläer bo växlade
//
Kunde lägga krukor så förälder kan justera växlingtemperaturen och dusch tid.
byta temperatur mellan 20 och 80 grader använder A0 (PIN-kod 23)
dusch tid mellan 5 och 40 minuter användning A1 (PIN-kod 24)
#include
#include
#define ONE_WIRE_BUS 3 / / Data kabeln är ansluten till stift 3 på Arduino
OneWire oneWire(ONE_WIRE_BUS); Setup en oneWire instans att kommunicera med någon OneWire enheter
DallasTemperature sensorer (& oneWire); Passera vår oneWire referens till Dallas temperatur.
Tilldela adresser till din 1-Wire temp givare.
Se tutorial om hur man får dessa adresser: http://www.hacktronics.com/Tutorials/arduino-1-wire-address-finder.html
DeviceAddress termometer = {0x28, 0x16, 0xA3, 0x84, 0x04, 0x00, 0x00, 0xC3};
float tempC;
int ledRED = 5; D5 PIN-koden för led1
int ledGREEN = 6; D6 PIN-koden för led2
int relay1 = 7. D7 PIN-koden för relay1
int relay2 = 8; D8 PIN-koden för relay2
int tempPot = 0; ansluta 10K A-Kona (linjär) temperatur potentiometern till Analog ingång A0
int timePot = 1; ansluta 10K A taper timer (linjär) potentiometern till Analog ingång A1
int temperature_set;
int temperature_read;
int time_set;
int time_read;
int hasBeenSet = 0;
int delaytimer = 0;
void setup(void)
{
analogReference(EXTERNAL); Berätta för Arduino att använda Aref PIN-koden för Analog spänning, (5v)
Serial.BEGIN(9600); Starta serieport
sensors.BEGIN(); Starta upp biblioteket
sensors.setResolution (termometer, 10); Ställ in upplösningen till 10 bit (bra nog?)
pinMode (ledRED, produktionen); Ange en röd led stift (5)
pinMode (ledGREEN, produktionen); Ange en grön led stift (6)
pinMode (relay1, produktionen); Ange ett relä stift (7)
pinMode (relay2, produktionen); Ange ett relä stift (8)

digitalWrite (ledRED, låg);
digitalWrite (ledGREEN, låg);
digitalWrite (relay1, låg);
digitalWrite (relay2, låg);

temperature_read = analogRead(tempPot);
temperature_set = karta (temperature_read, 0, 1023, 20, 80); min temp 20 grader C - max temp-80 grader
time_read = analogRead(timePot);
time_set = karta (time_read, 0, 1023, 5, 40); min tid 5 minuter - max tid 40 minuter
}
void loop(void)
{
få temperatur
Serial.println ("Start 6 sekunders fördröjning");
Delay(6000); 6 sekunder
Serial.Print ("komma temperature...\n\r");
sensors.requestTemperatures();
Serial.Print ("temperaturen är:");
printTemperature(Thermometer);
Observera att kontrollerna för reläet återförs. dvs: låg och hög är
Detta beror på att det är omvänd relay styrelse
Serial.Print ("temp-inställning:");
Serial.println(temperature_set);
Serial.Print ("tidsinställning:");
Serial.println(time_set);
om (tempC > temperature_set) {
Serial.println ("*** Temp över begränsad ***");
om (hasBeenSet < 1) {
Serial.println ("Start Välj fördröjn");
digitalWrite (ledGREEN, hög); grön led för att visa att timern håller på att starta
medan (delaytimer < time_set) {
Serial.Print ("försening timer:"); Serial.Print(delaytimer); Serial.Print ("time_set:"); Serial.println(time_set);
Delay(60000);
delaytimer = ++ delaytimer;
}
delaytimer = 0;
hasBeenSet = ++ hasBeenSet; vill inte börja förseningen igen - det kommer att ta evigheter för röret att kyla som det är
Serial.println ("tur relä på"); under normal drift drivs reläet inte, så slår på den kommer Bryt strömmen till pumpen
digitalWrite (relay1, hög);
digitalWrite (relay2, hög);
digitalWrite (ledRED, hög); röd led för att Visa vi har klippt makt att pumpen
digitalWrite (ledGREEN, låg); kan återställa gröna nu
}
} annat {
Serial.println ("*** Temp under begränsad ***");
tillbaka till normal drift
Aktivera relä nu
Serial.println ("tur relä off");
digitalWrite (relay1, låg);
digitalWrite (relay2, låg);
digitalWrite (ledRED, låg);
digitalWrite (ledGREEN, låg);
nu behöver kontrollera temperaturen igen och vänta tills det faller under tröskeln - så gå tillbaka till början
långsam nedkylning av vattnet i röret bör ge tillräcklig försening här (i praktiken när ingången är inställd på 40 grader, tar den pipe 23 minuter svalna)
börja hela processen om igen
hasBeenSet = 0;
}
Serial.println("***");
}
void printTemperature(DeviceAddress deviceAddress)
{
tempC = sensors.getTempC(deviceAddress);
om (tempC ==-127.00) {
Serial.Print ("fel få temperatur");
} annat {
Serial.Print ("C:");
Serial.println(tempC);
}
}

Se Steg
Relaterade Ämnen

Hur man kan snabba upp din dator, enkelt

Hur till fart upp din dator enkelt - bäst gratis videor är här denna video visar hur man kan snabba upp din dator snabbt och enkelt....

Hur man kan återanvända din gamla kaffesump för tillverkning

Fokus i detta arbete är att belysa och ifrågasätta vår relation med material. Att utforska det allt mellan de till synes banal eller complicatedly rika interaktioner med material som utgör vår byggda miljö och större fotavtryck på denna värld. Målet...

Hur man kan förstora din peruk Cap - peruk ändringar

Har du någonsin köpt en stor peruk bara för att få reda på att den passar för hårt på ditt huvud? Tyvärr är peruker som köps från din lokala skönhet utbudet massangrepp produceras som en storlek passar alla. Så, anfall varierar från person till perso...

Hur man kan plåga dina Jeans

Lära sig att plåga dina egna jeans hemma med denna video, plus några skämt och en kort historielektion.Steg 1: Vad du behöver:Du behöver:Jeanskniven/bladetliten planka av träsaxRazorpimpstenpennasandpapperblekmedel (valfritt)tandborste (valfritt)Steg...

Hur man kan förverkliga din dröm iPhone app (ingen programmering krävs)

Har du någonsin sökt Apple iTunes store för att perfekt app till dina behov, men bara kunde inte hitta den? Har du någonsin tänkt, "Om jag skulle bygga min egen app, det skulle ha alla klockor och visselpipor och skulle vara mycket bättre än något dä...

Hur man kan främja din app?

Det är en missuppfattning att när app är utvecklat och lagt till IOS App Store blir populära av sig själv. I själva verket, finns det dock en hård konkurrens som kräver utvecklare eller app marknadsförare att investera sin tid och energi på att nå fr...

Hur man kan Pimpa upp din Sony HI FI

vad du behövergröna materialgrön trådröd materialröd trådsymaskinsaxSony mhc-1200 hi fi-systemgammal lampa2 små högtalare i ett fallDrillalla ändamål limSilver gasvävOrange filtvit filtmetall sågvänster och höger ljudingång kablargasbindasvart tråd s...

Hur man kan blockera annonser med din DD-WRT Router

Hur man kan blockera annonser med din DD-WRT router...

Hur man kan dricka ditt kaffe "Trucker-stil"

nej, menar vi inte hur man kan dricka ditt kaffe med ena handen samtidigt som yakkin' i din CB med den andra. Detta är ett lysande sätt att ställa in din portabel papper kaffe kopp att minska sannolikheten för ett spill. Detta visades för mig av en t...

Hur man kan kasta en bete gjutning (Baitcaster) fiske rulle

bete gjutning fiske rullar är bland de mest populära fiske rullar finns för sportfiskare. Snurra hjulen och spincasting rullar fungerar för vissa men många tekniker och taktik som används för att fånga fisk kräver användning av en "baicaster" el...

7 tips på hur man kan bota Social ångest

Social fobi (SAD), även känd som social fobi, är en erkänd psykologiska tillstånd som drabbar miljontals människor. Offren erfarenhet intensiv rädsla för vissa sociala situationer, särskilt de situationer som är obekant eller där offret känner sig de...

Hur man enkelt framhäva dina läppar

I detta kommer hur till tutorial jag att visa dig hur man enkelt gör dina läppar i centrum för uppmärksamheten!Denna teknik är trevligt eftersom du inte behöver använda obekväm läppar plumpers eller torkning Matt läppstift!Du kan använda alla dessa t...

Hur man byter inhysa av din GBA SP

Hej alla - jag hoppas att denna uppsättning instruktioner som jag skrev för min ENGL390 klass kan hjälpa någon av er där ute omvårdnad en väl älskade GBA SP. Pictures att komma snart och jag skulle älska någon con-krit-NoorGameboy Advance SP Revival:...

Hur man kan blockera annonser i Microsoft kant

hur man kan blockera annonser på din dator. Kontrollera hur man kan blockera annonser på din PC genom att blockera alla servrar som få annonser.Steg 1: Titta på Video på hur man gör det eller följ stegenSteg 2: stegTitta på videon om hur dess gjort1....

Hur man kan övervinna en fobi

vi alla har fobier rätt? Om det är mörkt, monster, offentliga platser, eller gå till läkaren! Men vi inser inte att vi också har verktygen för att fixa dem!Steg 1: KlimaxTänk om det är smärtsamt? Vad händer om jag får frågan ytterst personliga frågor...

Hur man kan blockera/kill RFID chips

i detta Instructable kommer jag att beskriva olika sätt att blockera eller döda RFID taggar. RFID står för Radio Frequency Identification. Om du inte vet om denna teknik ännu, bör du definitivt börja bekanta dig med det, eftersom antalet olika enhete...

Hur man kan blockera anoying mobiltelefon störning

detta instructable visar dig hur man kan blockera det anoying bleeping inblandning med radio och högtalare när din mobiltelefon Anslut till moderskeppet eller det sällsynta tid när någon faktiskt ringer dig.Du behöver:2 mobiltelefoner (att testa med...

Hur man sparar vatten med din luftfuktare.

En hela huset luftfuktare kan göra dig mer bekväm på vintern, och det kan hjälpa dig att vara lite grönare genom att göra ditt hus känns varmare, som låter dig skruva ner värmen. Men de flesta luftfuktare avfall en enorm mängd vatten. Här är hur man...

Hur man kan blanda färger som en färgskrivare

här är hemligheten till att blanda färger.1. Använd Cyan, Magenta och gul, inte röd, gul och blå2. ordna färgerna i en färg kub, inte ett färghjul.Då kommer du att kunna göra varje enda färg en färgskrivare kan göra. Du kan skriva ut kopior av dina f...