Inhoudsopgave:
- Stap 1: Arduino & RPi-hardware verkrijgen
- Stap 2: Verbind de DHT11 & LCD met de Arduino
- Stap 3: Programmeer de Arduino
- Stap 4: De werkende Arduino, LCD & DHT11 Setup
- Stap 5: Verbind de Raspberry Pi met de Arduino
- Stap 6: RPi Python-code om de seriële gegevens van de USB-poort te lezen
Video: Temperatuur en vochtigheid van Arduino naar Raspberry Pi - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Het bijhouden van temperatuur en vochtigheid is belangrijk als u een kas heeft, of toekomstige plannen heeft om uw kas te upgraden naar een mini-smart-farm.
Voor mijn eerste Instructable zal ik laten zien hoe je een prototype kunt maken:
- Sluit een DHT11 temperatuur- en vochtigheidssensor aan op een Arduino Mega 2560
- Programmeer de Arduino in C om de sensorgegevens te lezen
- Toon temperatuur- en vochtigheidsgegevens op een LCD die is aangesloten op de Arduino
- Instrueer de Arduino om de sensorgegevens naar een Raspberry Pi 3 Model B+ te sturen
- Schrijf code in Python om de sensorgegevens weer te geven
Waarom een RPi en Arduino samen gebruiken?
De Arduino- en RPi-verbinding kunnen geweldige mogelijkheden bieden als je I/O nodig hebt waar de Arduino in uitblinkt en netwerkcommunicatie/multithreading/visuals waar de RPi veel beter in is.
Met andere woorden, we gaan de Arduino gebruiken voor controle-intensieve taken en de RPi gebruiken voor rekenintensieve taken.
Robuuste versies van Arduino's zijn verkrijgbaar bij Rugged-Circuits
Stap 1: Arduino & RPi-hardware verkrijgen
Arduino-starterkits zijn direct beschikbaar en stellen u in staat om te experimenteren met verschillende soorten sensoren en gadgets. Een starterskit aanschaffen is voordeliger in plaats van verschillende onderdelen los te bestellen. Ik heb hieronder enkele gelieerde links geleverd die verwijzen naar Banggood en Amazon US.
Arduino Starter Kit (Banggood)
Arduino Starter Kit (Amazon VS)
Element14 RPi 3 B+ moederbord (Amazon VS)
Raspberry Pi 3 B+-behuizing (Amazon VS)
32 GB Micro SD-kaart (Amazon VS).
Stap 2: Verbind de DHT11 & LCD met de Arduino
Stap 3: Programmeer de Arduino
#arduino-dht11-lcd2004
#Auteur: Vasoo Veerapen
#https://www.instructables.com/member/VasooV/ #Leest gegevens van een DHT11 die is aangesloten op een Arduino, wordt weergegeven op een LCD2004 en verzendt gegevens serieel naar Raspberry Pi
#erbij betrekken
#erbij betrekken
// LCD-scherm wordt gedefinieerd als apparaatnummer 0x27 op de I2C-bus
LiquidCrystal_I2C lcd (0x27, 20, 4);
// DHT11 is verbonden met pin 8
dht-DHT; #define sensorPin 8
// Raspberry Pi is verbonden met Serial 0
#define serialPi Serial
ongeldige setup() {
lcd.begin(20, 4); // Initialiseert de interface naar het LCD-scherm en specificeert de afmetingen (breedte en hoogte) van het scherm lcd.init(); lcd.achtergrondverlichting(); serialPi.begin (9600); //Arduino naar seriële monitor}
lege lus() {
//Lees sensorgegevens
int sensorData = DHT.read11 (sensorPin); vlottertemperatuur = DHT.temperatuur; vlottervochtigheid = DHT.vochtigheid;
// Afdruktemperatuur
lcd.setCursor(0, 0); lcd.print("Temperatuur"); lcd.afdruk(temperatuur); lcd.print(" C");
//Afdrukvochtigheid
lcd.setCursor(0, 1); lcd.print("Vochtigheid "); lcd.print(vochtigheid); lcd.print(" %");
//Stuur temperatuur- en vochtigheidsgegevens naar Raspberry Pi
serialPi.print("");
//Wacht 10 seconden
vertraging (10000); }
Stap 4: De werkende Arduino, LCD & DHT11 Setup
Stap 5: Verbind de Raspberry Pi met de Arduino
Stap 6: RPi Python-code om de seriële gegevens van de USB-poort te lezen
#rpi-arduino-dht11
#Raspberry Pi leest temperatuur- en vochtigheidssensorgegevens van Arduino
serienummer, tekenreeks, tijd importeren
#In dit voorbeeld wordt /dev/ttyUSB0 gebruikt
#Dit kan in jouw geval veranderen in /dev/ttyUSB1, /dev/ttyUSB2, etc. ser = serial. Serial('/dev/ttyUSB0', 9600)
#Het volgende codeblok werkt als volgt:
#Als er seriële gegevens aanwezig zijn, lees dan de regel, decodeer de UTF8-gegevens, #…verwijder de tekens aan het einde van de regel #…splits de gegevens in temperatuur en vochtigheid #…verwijder de begin- en eindwijzers () #…druk de uitvoer af terwijl True: if ser.in_waiting > 0: rawserial = ser.readline() cookserial = rawserial.decode('utf-8').strip('\r\n') datasplit = cookserial.split(', ') temperatuur = datasplit[0].strip('') print(temperatuur) print(vochtigheid)
Aanbevolen:
Berekening van vochtigheid, druk en temperatuur met behulp van BME280 en Photon Interfacing: 6 stappen
Berekening van vochtigheid, druk en temperatuur met behulp van BME280 en Photon Interfacing. We komen verschillende projecten tegen die temperatuur-, druk- en vochtigheidsbewaking vereisen. We realiseren ons dus dat deze parameters eigenlijk een cruciale rol spelen bij het hebben van een schatting van de werkefficiëntie van een systeem bij verschillende atmosferische cond
Meting van temperatuur en vochtigheid met HDC1000 en Arduino Nano: 4 stappen
Meting van temperatuur en vochtigheid met HDC1000 en Arduino Nano: De HDC1000 is een digitale vochtigheidssensor met geïntegreerde temperatuursensor die een uitstekende meetnauwkeurigheid biedt bij een zeer laag stroomverbruik. Het apparaat meet de vochtigheid op basis van een nieuwe capacitieve sensor. De vochtigheids- en temperatuursensoren zijn fa
Meting van temperatuur en vochtigheid met HDC1000 en Particle Photon: 4 stappen
Meting van temperatuur en vochtigheid met HDC1000 en Particle Photon: De HDC1000 is een digitale vochtigheidssensor met geïntegreerde temperatuursensor die uitstekende meetnauwkeurigheid biedt bij een zeer laag stroomverbruik. Het apparaat meet de vochtigheid op basis van een nieuwe capacitieve sensor. De vochtigheids- en temperatuursensoren zijn fa
Meting van temperatuur en vochtigheid met HDC1000 en Raspberry Pi: 4 stappen:
Meting van temperatuur en vochtigheid met HDC1000 en Raspberry Pi: De HDC1000 is een digitale vochtigheidssensor met geïntegreerde temperatuursensor die een uitstekende meetnauwkeurigheid biedt bij een zeer laag vermogen. Het apparaat meet de vochtigheid op basis van een nieuwe capacitieve sensor. De vochtigheids- en temperatuursensoren zijn fa
Meting van vochtigheid en temperatuur met behulp van HTS221 en Particle Photon: 4 stappen
Vocht- en temperatuurmeting met HTS221 en Particle Photon: HTS221 is een ultracompacte capacitieve digitale sensor voor relatieve vochtigheid en temperatuur. Het bevat een detectie-element en een mixed signal application specific integrated circuit (ASIC) om de meetinformatie te leveren via digitale seriële