Innehållsförteckning:
- Steg 1: Färdigheter krävs
- Steg 2: Termoprofil för gejsrar och sensorplacering
- Steg 3: Bygg din hårdvara
- Steg 4: Registrera dig som en Cayenne -användare
- Steg 5: Installera de obligatoriska biblioteken i Arduino IDE
- Steg 6: Ladda ESP32 Sketch
- Steg 7: Lägg till din ESP32 i Cayenne
- Steg 8: Kör din skiss
- Steg 9: Bygg din Cayenne -instrumentpanel
- Steg 10: Räkna ut sensorernas positioner
- Steg 11: Spela runt (testa) din instrumentpanel
- Steg 12: Schemaläggning av din gejser
Video: ESP32 IoT -vattenvärmare: 12 steg
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Cayenne IoT geyser (varmvattentank i USA) är en energibesparande enhet som hjälper dig att övervaka och kontrollera ditt hushålls varmvatten, även när du är hemifrån. Det gör att du kan slå på och stänga av din gejser, schemalägga den för att slå på/av vid vissa tidpunkter, mäta temperaturen på gejsaren, ställ in maximala spartemperaturer etc. Den är gjord för högtrycks elektriska gejsrar med ett enda element. Det kan enkelt modifieras för andra gejserkonfigurationer som lågtryck, dubbla element etc. Min gejser är också installerad vertikalt.
För säkerhets skull förvarade jag min mekaniska termostat i röret. Jag mäter vattentemperaturen med två DS18B20 temp -sensorer, den ena fäst vid botten av min gejser, under elementet, den andra ansluten till varmvattenutloppet. Du bör aldrig ta bort din mekaniska termostat av säkerhetsskäl. Att byta ut den mekaniska termostaten mot en elektronisk sensor kan vara farligt eftersom sensorn eller mikrokontrollen (hårdvara eller programvara kan fungera fel) och leda till ångsexplosioner som kan döda människor.
Detta projekt innefattar anslutning av ett Solid State Relay på allvar med ditt gejserelement. Du kan behöva en behörig elektriker för att göra det (enligt lag). Arbeta inte med din nätström om du är osäker på det.
Din ESP32 kommer att publicera data till en tjänst som heter Cayenne IoT Cloud via MQTT. Du kommer att kunna använda Cayenne -instrumentbrädan för att övervaka och styra din gejser och schemalägga uppvärmningstider.
Tillbehör:
- ESP32 Wemos lolin eller någon annan ESP32. ESP8266 kommer också att fungera men touch -pin -funktionen fungerar inte. En Arduino med WiFi bör också göra
- Solid State -relä (SSR), märkt 30 amp eller mer
- Kylfläns för SSR
- 3 (2 kan göra) Dalas halvledartemperaturgivare, DS18B20.
- Hölje
- Några bygelkablar
- Elektriska kablar som är lämpliga för din gejsers ström
- Kopplingsplintar
- USB -strömförsörjning för ESP32
- Litiumbatteri för att driva ESP32 om nätet är av.
Steg 1: Färdigheter krävs
ESP32 Programmering i Arduino IDE, installation av bibliotek
Grundläggande elektronik
Kunskap om nät (normalt AC 110 - 240 volt)
Vissa kunskaper om cayenne.mydevices.com
Steg 2: Termoprofil för gejsrar och sensorplacering
Varmt vatten har en lägre densitet än kallt vatten. Därför kommer vattnet på toppen av tanken att vara varmare än vattnet i botten av tanken eftersom det heta vattnet kommer att stiga. Gejsarutloppet är också normalt upptill och inloppet längst ner vilket ytterligare bidrar till värmeprofilen.
I mitt projekt använde jag tre temperatursensorer. En längst ner, en överst och en sensor för omgivningstemperatur. Baserat på några experiment bestämde jag mig för att använda botten temperatursensorn som min indikator på att tanken är varm. Problemet med den övre sensorn är att den kommer att stiga med några grader i det ögonblick en het flik öppnas i några sekunder och det kan bara finnas lite varmt vatten kvar på toppen av tanken. Du kan bestämma dig för att använda ett genomsnitt mellan de två sensorerna.
Steg 3: Bygg din hårdvara
Anslut SSR till PIN 15 och GND
Anslut alla 3 DS18B20 -givare: Gul till PIN 16, svart till GND, röd till 3,3 volt. Använd en 4,7KOhms pull -up resister mellan PIN 16 och 3,3 volt. (Kom ihåg att DS18B20 är en trådad enhet och att flera trådar är tillåtna på en buss eller stift).
Anslut din omstartskabel till TO och återställ kabeln till T2
Anslut ännu inte din byggnad till elnätet (AC). Anslut inte sensorerna till din Geyser än. Du måste först räkna ut vilken sensor som måste gå till vilken position.
Steg 4: Registrera dig som en Cayenne -användare
Detta är inte en handledning för cayenne.mydevices.com. Cayenne är nollprisversionen av mydevices.com
Om du inte är bekant med cayenne finns mer information tillgänglig på
Du måste först registrera dig på cayenne.mydevices.com och få en inloggning och lösenord.
Mer information om cayenne finns på
Det är också viktigt att läsa igenom
developers.mydevices.com/cayenne/docs/cayenne-mqtt-api/#cayenne-mqtt-api-using-arduino-mqtt för att lägga till cayennebiblioteket i Arduino ID
Steg 5: Installera de obligatoriska biblioteken i Arduino IDE
WiFiManager
ArduinoJson version 6.9.0
CayenneMQTT
OneWire
Dallas Temperatur
ArduinoOTA
Steg 6: Ladda ESP32 Sketch
ESP32 Sketch innehåller massor av kod. Den innehåller kod för
- https://github.com/tzapu/WiFiManager. WiFi -manager används för att låta din ESP32 veta vad dina inloggningsuppgifter för WiFi -åtkomstpunkter är. Den används vidare för att fånga detaljer om CayenneMQTT, temperaturgränser för gejsaren och för att länka de 3 temperatursensorerna till dess plats (topp, botten eller omgivning)
- Kod för Cayenne API
- OTA (Over the air -uppdateringar). Du kommer att kunna uppdatera firmware via WiFi. Du måste vara på din lokala WiFi och använda samma dator som du använde för att ladda upp din ursprungliga skiss.
-
DS18B20 temperaturavläsning.
ArduinoIDE Sketch finns på:
Steg 7: Lägg till din ESP32 i Cayenne
Du kan nu lägga till en ny enhet.
Logga in på cayenne.mydevices.com. Till vänster ser du en rullgardinsmeny Lägg till ny …… Välj enhet/widget. En sida öppnas om du måste välja att ta med din egen sak. En ny sida öppnas med dina MQTT -detaljer. Skriv ner ditt MQTT -ANVÄNDARNAMN, MQTT -LÖSENORD, KLIENT -ID. Du behöver detta för att kommunicera med Cayenne MQTT -mäklare (server). Ditt MQTT -ANVÄNDARNAMN och MQTT -LÖSENORD kommer alltid att vara desamma, men KLIENT -ID kommer att vara olika för varje ny enhet som en annan ESP32, Arduino eller Raspberry PI.
Du kan också ge din enhet ett namn på det här formuläret.
Steg 8: Kör din skiss
Starta om ESP32
Du bör nu se en ny WiFi -åtkomstpunkt som heter "Slim_Geyser_DEV". (ESP 32 kommer att vara i åtkomstpunktsläge/ Ad-hoc- eller hotspot-läge) med din dators WiFi-sökning/ skanning.
Logga in på den nya åtkomstpunkten. Lösenordet/säkerhetsnyckeln är lösenordet.
Din webbläsare ska gå till målsidan "192.168.4.1", om inte, gör det manuellt.
Gå till Konfigurera WiFi
Konfigurationssidan ska nu öppnas. Den borde ha skannat automatiskt efter din internetåtkomstpunkt, välj den, skriv in lösenordet, Cayenne MQTT -detaljer. Lämna resten kvar. Alla temp -värden är metriska (Deg Celcius).
Tryck på spara. ESP32 försöker nu ansluta till ditt wifi och Cayenne -servern.
Koppla från "Slim_Geyser_DEV" och anslut din dator till din hemåtkomstpunkt.
Steg 9: Bygg din Cayenne -instrumentpanel
Nu bör du logga in på cayenne.mydevices.com med dina cayenne -uppgifter.
Din enhet bör visas i menyraden till vänster (Gruvan är Geyser_DEV).
Du kan nu lägga till alla dina sensorer och reläet (eller kanaler) till din instrumentpanel genom att klicka på lägg till skyltarna.
På kanal 0 -ikonen klickar du på inställningar och ändrar namnet till "Geyser Bottom TEMP". Välj en lämplig ikon (temperaturprobe) och välj antalet decimaler som 1. Gör samma sak för kanal 1, 2, 5, 6
För kanal 4 och 8, ändra antalet decimaler till 0 och namnge dem "** Geyser Status (1 = ON, O = OFF) **"
respektive "*Automatisk uppvärmningsläge (0 = Manuell, 1 = Auto)*".
Kanal 3 och 7 ska vara knappar
Gå till Lägg till nytt menyalternativ i menyraden till vänster, gå till Enhet/widget> Anpassade widgetar> Knapp
Namnge knappen "Slå på/av Geyser", välj enhetsnamn (Geyser_DEV), DATA = Digital ställdon, Kanal 3, Enhet = Digital I/O, Ikon = vippomkopplare. Klicka på lägg till widget.
Gör samma sak för kanal 7
Kanal 9 bör konverteras till ett reglage
Gå till Lägg till nytt menyalternativ i den vänstra menyraden, gå till Enhet/widget> Anpassade widgetar> Skjutreglage och välj lämpliga värden som i bilden.
Du kan nu flytta runt dina widgets.
Steg 10: Räkna ut sensorernas positioner
Eftersom de tre Temp -sensorerna är anslutna till samma stift (One Wire Bus) bör du ta reda på vilken sensor som ska gå vart.
Kontrollera din Cayenne -instrumentbräda och notera de tre temperaturerna. De borde vara mer eller mindre desamma. Värm upp en med varmt vatten eller med handen. Notera sensorn som värms upp på instrumentbrädan. Märk din sensor därefter. Gör detta för de andra 2 sensorerna.
Steg 11: Spela runt (testa) din instrumentpanel
Lek med kontrollerna på instrumentpanelen. Växla på/av -knappen och se om SSR -lampan lyser. Slå också på läget för automatisk uppvärmning, värm bottengivaren och se om SSR -omkopplaren aktiveras när önskad temperatur uppnås.
Du kan nu ansluta de 2 sensorerna till gejsaren och den omgivande temp -sensorn till en lämplig position. Du kan också ansluta SSR till elnätet.
Steg 12: Schemaläggning av din gejser
Du kan nu schemalägga/ avaktivera händelser med din Geyser
Välj Lägg till ny> Händelse på instrumentpanelen