Arduino flera timer. Dag bygger och alarm baserat
Så blev jag ombedd av någon om jag kan göra något som kommer att starta en motor på en bestämd tid. OK... lätt.
Men motorn ska börja varje dag med en annan timme eller kanske måndag och fredag på en timme och söndag inte alls, eller whenver han vill programmera motorn att starta. Jag trodde detta skulle göra ett bra projekt, särskilt som han kom med begäran att starta tre motorer trots allt. Efter flera diskutioner med flera personer jag har slutat med ett projekt som:
-Kan ha upp till 6 "larm". I själva verket kan antalet vara större med små ändringar i koden
-Kan starta upp till 7 enheter separatelly (varje enhet är ansluten till en PIN-kod).
-Har en realtidsklocka (DS1307)
-Bygger på Arduino
-Sparar inställningarna i EEPROM så att de inte kommer att fogotten efter ett strömavbrott.
För detta projekt har jag gjort två sköldar som läggs ovanpå Arduino UNO.
En sköld med DS1307 RTC (jag hade inte tid att vänta på en färdigt en)
En sköld som har tre knappar ansluten, en 16 x 2 LCD och tre reläer (resten av anslutningar (4 av dem) skulle behöva anslutas från stiften direkt. Jag gjorde som programplaneringen för dem, men eftersom jag inte behövde mer än 3 utgångar, det gjorde jag inte gjort en större sköld:).
Så för den fungerande principen nu:
Kan användaren:
-Ställ in aktuellt datum och tid och den aktuella dagen i veckan.
-Välj en tid för var och en av de 6 möjliga larm
-Välj den dag som varje larm ska startas
-Välj den tid (i eaither sekunder eller minuter) som ett larm kan stanna på
-Välj utgångarna (reläer) som ska startas när vart och ett av alarmen kommer att börja.
Alla dessa visas på 16 x 2 LCD-skärmen och kommer att inrättas med tre knappar.
Till exempel om jag vill att systemet ska vatten min gräsmatta måndag till fredag från 08.00 till 21.00, lördag för att starta uppvärmning av vatten i poolen på 8.20 (inte att jag har en ;)) stannar vid 9.00 och varje dag för att starta coffe gör maskinen vid 7.30 och stoppa det på 7,31, jag skulle behöva ställa in 3 larm :
1. första larm med start timme vid 8.00 och en period av 60 min som kommer att köras i de första sex dagarna i veckan samt kommer två av reläer (om jag har två pumpar för gräsmattan)
2. andra skulle börja 8.20 och köra i 40 minuter och skulle börja relä nummer 3 och skulle köra endast lördag
3. den tredje en skulle börja varje dag på 7.30 och skulle köra för 60 SEK och skulle börja relä nummer 4 (om du har en ansluten)