Inhoudsopgave:

MOS - IoT: uw verbonden Fogponic-systeem: 4 stappen
MOS - IoT: uw verbonden Fogponic-systeem: 4 stappen

Video: MOS - IoT: uw verbonden Fogponic-systeem: 4 stappen

Video: MOS - IoT: uw verbonden Fogponic-systeem: 4 stappen
Video: Lost Frequencies - Are You With Me (Official Music Video) 2024, Juli-
Anonim
MOS - IoT: uw verbonden Fogponic-systeem
MOS - IoT: uw verbonden Fogponic-systeem

Beperking van schokken door Superflux: onze website

Dit Instructables is de continuïteit van het Fogponic-systeem. Hier heeft u meer mogelijkheden om de gegevens van uw kassencomputer te meten en meerdere bewerkingen te regelen, zoals het debiet van de waterpomp, de timing van de lichten, de intensiteit van de ventilator, de vernevelaars en alle andere controllers die u aan uw Fogponic wilt toevoegen. projecteren.

Stap 1: Installeer ESP 8266-01 Wifi Shield op de Arduino

Installeer ESP 8266-01 Wifi Shield op de Arduino
Installeer ESP 8266-01 Wifi Shield op de Arduino

Minimale materiaalvereisten:

  • Arduino MEGA2560
  • ESP 8266-01 Schild
  • Smartphone
  • Wifi verbinding

Verbinding:

  • ARDUINO --- ESP 8266
  • 3V --- VCC
  • 3V --- CH_PD
  • GND --- GND
  • RX0 --- TX
  • TX0 --- RX

Stap 2: Stel het ESP8266-12-schild in

Enkele stappen om te volgen:

  1. Nadat je het ESP866-91-schild op de Arduino hebt aangesloten, moet je het Bareminimum-voorbeeld uploaden om de vorige code in je bord te verwijderen.
  2. Upload de code naar de Arduino, open de Seriële monitor, stel de Baudrate in op 115200 en stel zowel NL als CR in.
  3. Typ de volgende opdracht op de seriële monitor: AT. Normaal gesproken zou u het bericht «OK» moeten ontvangen. Zo niet, verwissel dan de volgende draden: RX en TX van de Arduino. Afhankelijk van de afscherming kan de positie van de ontvanger verschillen.
  4. U moet de MODUS van uw schild instellen. Het bestaat uit 3 verschillende: Station(1) AP Mode(2) en AP+Station(3). Voor MOS hoeven we alleen maar de eerste modus te krijgen, typ het volgende commando: AT+CWMODE=1. Als het schild goed is ingesteld, krijgt u de melding «OK». U kunt weten in welke MODUS u zich bevindt door te typen: AR+CWMODE?
  5. Om uw ESP8266-01 te verbinden met uw Wi-Fi-verbindingstype: AT+CWJAP= "Wi-Fi-netwerk", "Wachtwoord"
  6. Goed gedaan! Het MOS-prototype is verbonden met internet. Nu moeten we de ESP8266 verbinden met een app.

Stap 3: Stel de wifi-verbinding in

#include #define BLYNK_PRINT Serial2 #include #include #define EspSerial Serial2 ESP8266 wifi (EspSerial); char auth = «b02cfbbfd2b34fd1826ec0718613306c»; #include #include

ongeldige setup() {

Serial2.begin (9600); vertraging(10); EspSerial.begin(115200); vertraging(10); Blynk.begin(auth, wifi, «USERNAME», »PASSEWORD»); timer.setInterval (3000L, verzendtijd); }

ongeldig sendUptime() {

Blynk.virtualWrite(V1, DHT.temperatuur); Blynk.virtualWrite (V2, DHT.vochtigheid); Blynk.virtualWrite(23, m); }

lege lus()

{ rtc.begin(); timer.run(); Blynk.run();

}

  1. Download en installeer de laatste Blynk-bibliotheek in de bibliotheekmap van uw Arduino-programma.
  2. Download en installeer de laatste Blynk ESP8266-bibliotheek in de bibliotheekmap. Het is mogelijk dat u de esp8226.cp moet wijzigen met een andere versie.
  3. Installeer de BLYNK app in de Appstore of Google play store en maak een nieuw project aan.
  4. Kopieer en plak de bovenstaande code op een nieuwe Arduino Sketch. U moet het teken auth veld wijzigen met de sleutelverificatie van uw BLYNK-project. De huidige MOS-app-sleutel is "b02cfbbfd2b34fd1826ec0718613306c".
  5. Schrijf je wi board en je wachtwoord op de volgende regel: Blynk.begin(auth, wifi, «???», «???»);.
  6. Voer de Arduino-schets uit en open de seriële monitor. Vergeet niet de Baudrate te wijzigen naar 115200 en de lijncodering naar «Zowel NL als CR».
  7. Na enkele seconden is de MOS Arduino normaal gesproken verbonden met internet. Nu is het tijd om onze MOS Blynk-app te maken!

Stap 4: Leer en pas BLYNK-taal toe

Blynk is goed aangepast aan de Arduino-taal. Een van de bijzonderheden van Blynk is dat het gebruik maakt van digitale, analoge maar ook virtuele pinnen. Afhankelijk van de controller, sensor of fader moet je virtuele lijnen schrijven op je Arduino-app-schets.

  • Voorbeeld van virtueel schrijven op de Arduino-schets: Blynk.virtualWrite(pin, action);
  • U kunt alle gewenste widgets aan de app toevoegen door de bovenstaande stappen te volgen.
  • Houd er echter rekening mee dat sommige sensoren de originele code moeten aanpassen om te correleren met de BLYNK-app.

Voorbeeld, DHT-11 + BLYNK:

  1. Zorg ervoor dat u geen vertraging instelt op de ongeldige setup-code na de laatste vertraging (10); De timer.setInterval(1000, Senduptime) wordt gebruikt als een vertraging voor het ESP8266-01-schild en niet voor de seriële monitor. U moet minimaal 1000 milliseconden aan deze vertraging toevoegen, anders zou het ESP-schild moeite hebben met het verzenden en ontvangen van informatie.
  2. U moet de DHT-bibliotheek voor de Blynk-app bijwerken. Daarvoor kun je de nieuwe DHT-bibliotheek downloaden door DHT.h en DHT11.h in te typen op google. Er is een goed Github-repertoire met de DHT-bibliotheek erin.
  3. De grote verandering zit in de void sendUptime() met de nieuwe DHT-bibliotheek, je hoeft alleen maar de virtuele pin in te stellen die je wilt met de gewenste voorwaarde: temperatuur of vochtigheid. Laten we dus een voorbeeld bekijken van de regel die u kunt schrijven om de vochtigheids- of temperatuurgegevens naar de Blynk-app te sturen: Blynk.virtualWrite(V1, DHT.temperature);. Blynk.virtualWrite (virtuele pin, sensor).
  4. De void loop() krijgt twee nieuwe voorwaarden, namelijk: Blynk.run(); en timer.run();. Maar ook als u de DHT in de onderstaande leegte hebt aangeroepen die functioneert als een lege lus(), moet u ook de sensor in de laatste leegte aanroepen.

#inclusief dht11 DHT; #define DHT11_PIN A0 #inclusief SimpleTimer-timer; #include #define BLYNK_PRINT Serial #include #include #de ne EspSerial Serial ESP8266 wi (EspSerial); char auth = «b02cfbbfd2b34fd1826ec0718613306c»; #include #include

ongeldige setup() {

Serial2.begin (9600); vertraging(10); EspSerial.begin(115200); vertraging(10); timer.setInterval(1000, sendUptime); }

ongeldig verzendenUptime()

{ Blynk.virtualWrite(V1, DHT.temperatuur); Blynk.virtualWrite (V2, DHT.vochtigheid); }

lege lus() {

int chk = DHT.lezen (DHT11_PIN); timer.run(); Blynk.run();

}

Aanbevolen: