Inhoudsopgave:
- Stap 1: Vereiste vaardigheden
- Stap 2: Thermoprofiel van geisers en plaatsing van sensoren
- Stap 3: Bouw uw hardware
- Stap 4: Registreer u als Cayenne-gebruiker
- Stap 5: Installeer de vereiste bibliotheken in de Arduino IDE
- Stap 6: Laad de ESP32 Sketch
- Stap 7: voeg uw ESP32 toe aan Cayenne
- Stap 8: voer je schets uit
- Stap 9: Uw Cayenne-dashboard bouwen
- Stap 10: Uitzoeken van de posities van de sensoren
- Stap 11: Spelen (testen) met uw dashboard
- Stap 12: Uw geiser plannen
Video: ESP32 IoT-waterverwarmer - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
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
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:
- 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)
- Code voor de cayenne-API
- 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.
- DS18B20 temperatuurmeting.
De ArduinoIDE-schets is beschikbaar op:
Stap 7: 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
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
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
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
U kunt nu aan/uit-evenementen plannen met uw Geyser
Selecteer op het dashboard Nieuw toevoegen>Evenement
Aanbevolen:
Een ESP32 verbinden met de IoT Cloud: 8 stappen
Hoe een ESP32 met de IoT-cloud te verbinden: deze instructie wordt geleverd in een reeks artikelen over het aansluiten van hardware zoals Arduino en ESP8266 op de cloud. Ik ga je uitleggen hoe je je ESP32-chip kunt verbinden met de cloud met AskSensors IoT-service. Waarom ESP32? Na het grote succes
ESP32-gegevens publiceren met NTP-tijdstempel naar de IoT-cloud: 5 stappen
ESP32-gegevens publiceren met NTP-tijdstempel naar de IoT-cloud: In veel toepassingen moeten gebruikers hun gegevens samen met de lokale tijdstempel van de waarden verzenden in de payload naar de AskSensors IoT-cloud. Het tijdstempelformaat is UNIX Epoch-tijd: het aantal milliseconden dat is verstreken sinds januari
ESP32 Bluetooth-zelfstudie - Hoe de ingebouwde Bluetooth van ESP32 te gebruiken: 5 stappen
ESP32 Bluetooth-zelfstudie | Hoe de ingebouwde Bluetooth van ESP32 te gebruiken: Hallo, aangezien het ESP32-bord wordt geleverd met WiFi & Bluetooth beide, maar voor onze meestal projecten gebruiken we meestal alleen wifi, we gebruiken geen Bluetooth. Dus in deze instructables laat ik zien hoe gemakkelijk het is om Bluetooth van ESP32 & Voor uw basisprojecten
Aan de slag met ESP32 - ESP32-kaarten installeren in Arduino IDE - ESP32-knippercode: 3 stappen
Aan de slag met ESP32 | ESP32-kaarten installeren in Arduino IDE | ESP32-knippercode: in deze instructie zullen we zien hoe we met esp32 kunnen werken en hoe we esp32-kaarten in Arduino IDE kunnen installeren en we zullen esp 32 programmeren om knippercode uit te voeren met behulp van arduino ide
IoT-portemonnee (slimme portemonnee met Firebeetle ESP32, Arduino IDE en Google Spreadsheet): 13 stappen (met afbeeldingen)
IoT Wallet (slimme portemonnee met Firebeetle ESP32, Arduino IDE en Google Spreadsheet): Eerste prijs in Instructables Pocket-Sized Contest!:DAls je wat geld hebt geïnvesteerd in cryptocurrencies, weet je waarschijnlijk al dat ze zeer volatiel zijn. Ze veranderen van de ene op de andere dag en je weet maar nooit veel 'echt' geld dat je nog in je portemonnee hebt