Inhoudsopgave:

IoT Pool Monitoring met ThingsBoard - Ajarnpa
IoT Pool Monitoring met ThingsBoard - Ajarnpa

Video: IoT Pool Monitoring met ThingsBoard - Ajarnpa

Video: IoT Pool Monitoring met ThingsBoard - Ajarnpa
Video: Pool Monitor - Thingsboard Dashboard and CRON Sensor Update 2024, November
Anonim
IoT Pool Monitoring met ThingsBoard
IoT Pool Monitoring met ThingsBoard

Deze instructable laat zien hoe je de pH, ORP en temperatuur van een zwembad of spa kunt bewaken en de gegevens kunt uploaden naar de visualisatie- en opslagservice van ThingsBoard.io.

Stap 1: Dingen die je nodig hebt

  • Elk ESP32-ontwikkelbord. Deze lijkt redelijk, maar alles zal werken.
  • Een geïsoleerde ISE-sonde-interfacekaart en een pH-sonde. Je kunt ze allebei krijgen op ufire.co.
  • Een geïsoleerde ISE Probe Interface-kaart en een ORP-sonde ook van ufire.co.
  • Sommige kansen en doelen zoals draden of qwiic-draden en USB-kabels.

Stap 2: De software

  1. Ik ga ervan uit dat je bekend bent met Arduino, de Arduino IDE, en dat je deze al hebt geïnstalleerd. Zo niet, volg dan de links.
  2. Het volgende is om het ESP32-platform te installeren. Om de een of andere reden is dit niet vereenvoudigd door de beschikbare platformbeheerfuncties die de IDE te bieden heeft, dus je moet naar de github-pagina gaan en de juiste installatie-instructies volgen.
  3. Nu voor de bibliotheken: ga vanuit de Arduino IDE naar Sketch / Include Library / Manage Libraries …

    1. Zoek en installeer 'ArduinoJson' versie 5.13.2.
    2. Zoek en installeer 'PubSubClient'.
    3. Zoek en installeer 'Isolated ISE Probe Interface'.

Stap 3: UFire-apparaten configureren

Omdat de uFire-apparaten via I2C communiceren, hebben ze unieke adressen nodig. De ISE-sonde die we gebruiken om pH en ORP te meten, zijn hetzelfde, dus standaard hebben ze hetzelfde adres. Het adres kan wel gewijzigd worden en dat gaan we nu doen.

Ga vanuit de Arduino IDE naar 'Bestanden / Voorbeeld / ISE Probe Interface' en selecteer 'Shell'. Dit is een gemakkelijk te gebruiken shell-achtige interface voor het gebruiken en configureren van uFire-apparaten. Het werkt het beste op een eenvoudig ATMega-apparaat zoals een Uno, Mini of Nano. Het crasht momenteel op een ESP32. Upload de schets naar uw apparaat, zorg ervoor dat een van de uFire-apparaten is aangesloten en voer de volgende opdracht uit.

i2c 3e

Dat had het I2C-adres van het apparaat permanent moeten veranderen in hex 0x3E. Nu kunt u beide apparaten adresseren met een uniek adres.

Stap 4: Verbindingen maken

De ESP32 die we gebruiken heeft wifi- en BLE-interfaces, dus die heeft alleen een voeding nodig. U wilt waarschijnlijk een USB-kabel die stroom levert, maar een batterij is een andere optie. Veel ESP32's kunnen worden gekocht met een batterijlaadcircuit dat al op het bord zit.

De uFire-apparaten die we pH, ORP en temperatuur gaan meten, worden via de I2C-bus op de ESP32 aangesloten. Met de ESP32 kunt u elke twee pinnen voor I2C kiezen. Beide apparaten zitten op dezelfde bus, dus de SCL- en SDA-pinnen zijn hetzelfde. Als je naar de code kijkt (volgende stap), zie je deze twee regels.

ISE_pH pH (19, 23);

ISE_ORP ORP(19, 23, 0x3E);

Ik besloot pin 19 te gebruiken voor SDA en pin 23 voor SCL. Sluit dus de 3.3v van de ESP32 (of hoe de pin ook mag heten op uw specifieke bord) aan op de 3.3/5v-pin van het eerste uFire-apparaat, GND op GND, 19 op SDA en 23 op SCL.

De pinout op uw ESP32 kan afwijken van de afbeelding.

Stap 5: Laat ThingsBoard draaien

ThingsBoard is een online dienst, die onder andere sensorinvoer ontvangt en visualiseert in de vorm van grafieken en diagrammen. Er zijn verschillende installatiemogelijkheden. Voor deze instructable gebruikt het een lokale installatie die op een speciale computer wordt uitgevoerd.

Ga naar de installatie-instructies van ThingsBoard.io en kies de installatie die voor jou van toepassing is.

Ik heb de Docker-image geïnstalleerd waarmee ik toegang kreeg tot de installatie door naar https://localhost:8080/ te gaan.

Zoals hier beschreven, zijn de standaard gebruikersnaam en wachtwoord voor inloggen [email protected] en tenant.

Stap 6: een apparaat instellen

  1. Zodra je bent ingelogd op ThingsBoard, klik je op 'Apparaten'.
  2. Op de volgende pagina ziet u rechtsonder een oranje '+', klik erop en het dialoogvenster 'Apparaat toevoegen' verschijnt. Vul het veld 'Naam' in met hoe u ons apparaat wilt noemen. Voer vervolgens onder 'Apparaattype' 'ESP32' in, hoewel het van alles kan zijn. Klik op 'Toevoegen'.
  3. Klik op de vermelding van het nieuw gemaakte apparaat in de lijst en je zult er behoorlijk wat informatie over zien. Laat dit scherm open en ga naar de volgende stap.

Stap 7: Schets

De bron kan je hier bekijken.

  1. Kopieer de bestanden naar een Arduino-project.
  2. Bewerken Watson.h.

    1. Wijzig ssid en wachtwoord in uw WiFi-netwerkinformatie.
    2. Klik in het open scherm van de vorige stap op 'COPY DEVICE ID' en wijzig de variabele 'char device' in de gekopieerde waarden. Doe hetzelfde voor 'COPY ACCESS TOKEN' naar de variabele 'char token'.
    3. Wijzig ten slotte de variabele 'char server' in het IP-adres van de computer waarop ThingsBoard draait. De mijne was '192.168.2.126'. Geen 'http', schuine strepen of iets anders, alleen het IP-adres.
  3. Upload het naar je ESP32 en kijk op het tabblad 'LAATSTE TELEMETRIE'. Het zou u moeten laten zien dat uw gegevens binnenkomen.

Stap 8: een dashboard instellen

Een dashboard instellen
Een dashboard instellen

Vanuit het tabblad 'LAATSTE TELEMETRIE' zou u onze drie gegevenspunten, C, mV en pH, moeten zien. Als u het selectievakje aan de linkerkant van elk item aanklikt, kunt u op 'TOEN OP WIDGET' klikken. U krijgt veel kaartopties te zien. Kies degene die je leuk vindt en klik vervolgens op 'TOEVOEGEN AAN DASHBOARD'.

ThingsBoard biedt vanaf dit punt veel opties, dus dat laat ik aan jou over om te ontdekken.

Aanbevolen: