Inhoudsopgave:

ESP32 IoT-waterverwarmer - Ajarnpa
ESP32 IoT-waterverwarmer - Ajarnpa

Video: ESP32 IoT-waterverwarmer - Ajarnpa

Video: ESP32 IoT-waterverwarmer - Ajarnpa
Video: Терморегулятор c Удаленным Управлением 📈 на ESP8266. Часть 1 2024, December
Anonim
ESP32 IoT-waterverwarmer
ESP32 IoT-waterverwarmer

Cayenne IoT-geiser (warmwatertank in de VS) is een energiebesparend apparaat dat u helpt bij het bewaken en regelen van het warme water van uw huishouden, zelfs als u niet thuis bent. Hiermee kunt u uw geiser in- en uitschakelen, plannen om op bepaalde tijden in- en uit te schakelen, de temperatuur van de geiser meten, maximale opslagtemperaturen instellen enz. Het is gemaakt voor elektrische hogedrukgeisers met een enkel element. Het kan gemakkelijk worden aangepast voor andere geiserconfiguraties zoals lage druk, dubbel element enz. Mijn geiser is ook verticaal geïnstalleerd.

Voor de veiligheid heb ik mijn mechanische thermostaat in de buis gehouden. Ik meet de watertemperatuur met twee DS18B20-temperatuursensoren, één bevestigd aan de onderkant van mijn geiser, onder het element, de andere bevestigd aan de warmwateruitlaat. U mag uw mechanische thermostaat om veiligheidsredenen nooit verwijderen. Het vervangen van de mechanische thermostaat door een elektronische sensor kan gevaarlijk zijn, aangezien de sensor of de microcontroller (hardware of software kan defect raken) en leiden tot stoomexplosies die dodelijk kunnen zijn.

Dit project omvat de verbinding van een Solid State Relay serieus met uw geiserelement. Mogelijk hebt u een gekwalificeerde elektricien nodig om dit te doen (volgens de wet). Werk niet aan uw AC (net) als u er niet zeker van bent.

Uw ESP32 publiceert gegevens via MQTT naar een service genaamd Cayenne IoT Cloud. U kunt het Cayenne-dashboard gebruiken om uw geiser te controleren en te regelen en opwarmtijden te plannen.

Benodigdheden:

  • ESP32 Wemos lolin of een andere ESP32. De ESP8266 zal ook werken, maar de touch-pin-functionaliteit werkt niet. Een Arduino met WiFi zou ook moeten voldoen
  • Solid State-relais (SSR), nominaal 30 amp of meer
  • Koellichaam voor de SSR
  • 3 (2 kan) Dalas halfgeleider temperatuursensoren, DS18B20.
  • Behuizing
  • Sommige startkabels
  • Elektrische kabels geschikt voor de stroom van uw geiser
  • Klemmenblokken
  • USB-voeding voor de ESP32
  • Lithiumbatterij om de ESP32 van stroom te voorzien als de netspanning is uitgeschakeld.

Stap 1: Vereiste vaardigheden

ESP32 Programmeren in Arduino IDE, bibliotheken installeren

Basis elektronica

Kennis van lichtnet (Normaal AC 110 - 240 volt)

Enige kennis van cayenne.mydevices.com

Stap 2: Thermoprofiel van geisers en plaatsing van sensoren

Thermoprofiel van geisers en sensorplaatsing
Thermoprofiel van geisers en sensorplaatsing
Thermoprofiel van geisers en sensorplaatsing
Thermoprofiel van geisers en sensorplaatsing
Thermoprofiel van geisers en sensorplaatsing
Thermoprofiel van geisers en sensorplaatsing

Warm water heeft een lagere dichtheid dan koud water. Daarom zal het water aan de bovenkant van de tank heter zijn dan het water aan de onderkant van de tank, omdat het hete water zal stijgen. De geiseruitlaat bevindt zich normaal gesproken ook bovenaan en de inlaat onderaan, wat verder bijdraagt aan het warmteprofiel.

In mijn project heb ik drie temperatuursensoren gebruikt. Eén aan de onderkant, één aan de bovenkant en een omgevingstemperatuursensor. Op basis van een paar experimenten heb ik besloten om de onderste temperatuursensor te gebruiken als indicator dat de tank heet is. Het probleem met de bovenste sensor is dat deze met een paar graden zal stijgen op het moment dat een heet lipje een paar seconden wordt geopend en dat er misschien nog een beetje heet water aan de bovenkant van de tank achterblijft. U kunt besluiten om een gemiddelde tussen de twee sensoren te gebruiken.

Stap 3: Bouw uw hardware

Sluit de SSR aan op PIN 15 en GND

Sluit alle 3 DS18B20-sensoren aan: geel op PIN 16, zwart op GND, rood op 3,3 volt. Gebruik een trekweerstand van 4,7 KOhm tussen PIN 16 en 3,3 volt. (Vergeet niet dat DS18B20 apparaten met één draad zijn en dat meerdere apparaten met één draad op één bus of pin zijn toegestaan).

Sluit uw herstart-aanraakdraad aan op TO en reset draad op T2

Sluit je build nog niet aan op het lichtnet (AC). Bevestig de sensoren nog niet aan je Geyser. Je moet eerst uitzoeken welke sensor naar welke positie moet.

Stap 4: Registreer u als Cayenne-gebruiker

Dit is geen tutorial over cayenne.mydevices.com. Cayenne is de nulprijsversie van mydevices.com

Als u niet bekend bent met cayennepeper, vindt u meer informatie op

U moet zich eerst registreren op cayenne.mydevices.com en een login en wachtwoord ontvangen.

Meer info over cayennepeper is beschikbaar op

Het is ook belangrijk om door te lezen

developers.mydevices.com/cayenne/docs/cayenne-mqtt-api/#cayenne-mqtt-api-using-arduino-mqtt om de cayenne-bibliotheek toe te voegen aan de Arduino ID

Stap 5: Installeer de vereiste bibliotheken in de Arduino IDE

WiFiManager

ArduinoJson-versie 6.9.0

CayenneMQTT

OneWire

DallasTemperatuur

ArduinoOTA

Stap 6: Laad de ESP32 Sketch

De ESP32 Sketch bevat veel code. Het bevat code voor:

  1. https://github.com/tzapu/WiFiManager. WiFi Manager wordt gebruikt om uw ESP32 te laten weten wat de inloggegevens van uw WiFi-toegangspunten zijn. Het wordt verder gebruikt om de CayenneMQTT-details, temperatuurlimieten voor de geiser vast te leggen en om de 3 temperatuursensoren te koppelen aan de locatie (boven, onder of omgevingstemperatuur)
  2. Code voor de cayenne-API
  3. OTA (Over-the-air-updates). U kunt de firmware updaten via WiFi. Je moet op je lokale wifi zijn en dezelfde computer gebruiken die je hebt gebruikt om je originele schets te uploaden.
  4. DS18B20 temperatuurmeting.

De ArduinoIDE-schets is beschikbaar op:

Stap 7: voeg uw ESP32 toe aan Cayenne

Voeg uw ESP32 toe aan Cayenne
Voeg uw ESP32 toe aan Cayenne

U kunt nu een nieuw apparaat toevoegen.

Log in op cayenne.mydevices.com. Aan uw linkerhand ziet u een vervolgkeuzemenu Nieuw toevoegen…… Selecteer Apparaat/Widget. Er wordt een pagina geopend waar u uw eigen ding moet selecteren. Er wordt een nieuwe pagina geopend met uw MQTT-gegevens. Noteer uw MQTT-GEBRUIKERSNAAM, MQTT-WACHTWOORD, KLANT-ID. Deze heb je nodig om te communiceren met de Cayenne MQTT Broker (Server). Uw MQTT-GEBRUIKERSNAAM en MQTT-WACHTWOORD zullen altijd hetzelfde zijn, maar de CLIENT-ID zal voor elk nieuw apparaat anders zijn, zoals een andere ESP32, Arduino of Raspberry PI.

Op dit formulier kunt u uw apparaat ook een naam geven.

Stap 8: voer je schets uit

Voer je schets uit
Voer je schets uit
Voer je schets uit
Voer je schets uit

Herstart de ESP32

U zou nu een nieuw WiFi-toegangspunt moeten zien met de naam "Slim_Geyser_DEV". (De ESP 32 bevindt zich in de toegangspuntmodus / Ad-hoc- of hotspot-modus) met behulp van de WiFi-zoek-/scanfunctie van uw computer.

Log in op dit nieuwe toegangspunt. Het wachtwoord/beveiligingssleutel is een wachtwoord.

Uw browser zou naar de landingspagina "192.168.4.1" moeten gaan, zo niet, doe het dan handmatig.

Ga naar Wifi configureren

De configuratiepagina zou nu moeten openen. Het zou automatisch naar uw internettoegangspunt moeten hebben gescand, selecteer het, typ het wachtwoord, Cayenne MQTT-details. Laat de rest hetzelfde. Alle tijdelijke waarden zijn metrisch (Deg Celcius).

Druk op opslaan. De ESP32 zal nu proberen verbinding te maken met je wifi en de Cayenne-server.

Verbreek de verbinding met "Slim_Geyser_DEV" en verbind uw computer met uw thuistoegangspunt.

Stap 9: Uw Cayenne-dashboard bouwen

Uw Cayenne-dashboard bouwen
Uw Cayenne-dashboard bouwen
Uw Cayenne-dashboard bouwen
Uw Cayenne-dashboard bouwen
Uw Cayenne-dashboard bouwen
Uw Cayenne-dashboard bouwen

Nu moet u zich aanmelden bij cayenne.mydevices.com met uw cayenne-inloggegevens.

Uw apparaat zou in de linkermenubalk moeten worden vermeld (de mijne is Geyser_DEV).

U kunt nu al uw sensoren en het relais (of kanalen) toevoegen aan uw dashboard door op de borden voor toevoegen te klikken.

Klik op het kanaal 0-pictogram op instellingen en verander de naam in "Geyser Bottom TEMP". Kies een geschikt pictogram (temperatuursonde) en selecteer het aantal decimalen als 1. Doe hetzelfde voor kanaal 1, 2, 5, 6

Wijzig voor kanaal 4 en 8 het aantal decimalen in 0 en noem ze "**Geiser Status (1=ON, O=OFF)**"

en "*Auto Verwarmingsmodus (0=Handmatig, 1=Auto)*" respectievelijk.

Kanaal 3 en 7 zouden knoppen moeten zijn

Ga naar Nieuw menu-item toevoegen in de linker menubalk, ga naar Apparaat/Widget> Aangepaste widgets> Knop

Noem de knop "Geyser in-/uitschakelen", Selecteer de apparaatnaam (Geyser_DEV), DATA=Digitale actuator, Kanaal 3, Unit=Digitale I/O, Icoon =tuimelschakelaar. Klik op widget toevoegen.

Doe hetzelfde voor kanaal 7

Kanaal 9 moet worden geconverteerd naar een schuifregelaar

Ga naar Nieuw menu-item toevoegen in de linker menubalk, ga naar Apparaat/Widget> Aangepaste widgets> Schuifregelaar en selecteer de juiste waarden zoals in de afbeelding.

U kunt nu uw widgets verplaatsen.

Stap 10: Uitzoeken van de posities van de sensoren

Aangezien de drie Temp-sensoren op dezelfde pin zijn aangesloten (One Wire Bus), moet u uitzoeken welke sensor waar moet komen.

Controleer uw Cayenne-dashboard en noteer de drie temperaturen. Ze zouden min of meer hetzelfde moeten zijn. Verwarm er een met warm water of je hand. Let op de sensor die opwarmt op het dashboard. Label uw sensor dienovereenkomstig. Doe dit voor de andere 2 sensoren.

Stap 11: Spelen (testen) met uw dashboard

Spelen met (testen) van uw dashboard
Spelen met (testen) van uw dashboard
Spelen met (testen) van uw dashboard
Spelen met (testen) van uw dashboard

Speel wat met de bedieningselementen op het dashboard. Zet de aan/uit-schakelaar om en kijk of de SSR-led oplicht. Schakel ook de automatische verwarmingsmodus in, verwarm de onderste sensor en kijk of de SSR uitschakelt wanneer de gewenste temperatuur is bereikt.

U kunt nu de 2 Sensoren op de geiser aansluiten en de omgevingstemperatuursensor op een geschikte plaats. Je kunt de SSR ook op je lichtnet aansluiten.

Stap 12: Uw geiser plannen

Uw geiser plannen
Uw geiser plannen
Uw geiser plannen
Uw geiser plannen

U kunt nu aan/uit-evenementen plannen met uw Geyser

Selecteer op het dashboard Nieuw toevoegen>Evenement

Aanbevolen: