Innehållsförteckning:
- Steg 1: Skaffa Arduino & RPi -hårdvara
- Steg 2: Anslut DHT11 & LCD till Arduino
- Steg 3: Programmera Arduino
- Steg 4: Arbetande Arduino, LCD & DHT11 -inställningar
- Steg 5: Anslut Raspberry Pi till Arduino
- Steg 6: RPi Python -kod för att läsa USB -portens seriella data
Video: Temperatur och luftfuktighet från Arduino till Raspberry Pi: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
Spåra temperatur och luftfuktighet är viktigt om du har ett växthus, eller har framtida planer på att uppgradera ditt växthus till en mini smart-farm.
För min första Instructable kommer jag att visa hur man skapar en prototyp:
- Anslut en DHT11 temperatur- och fuktsensor till en Arduino Mega 2560
- Programmera Arduino i C för att läsa sensordata
- Visa temperatur- och luftfuktighetsdata på en LCD -skärm ansluten till Arduino
- Instruera Arduino att skicka sensordata till en Raspberry Pi 3 Model B+
- Skriv kod i Python för att visa sensordata
Varför använda en RPi och Arduino tillsammans?
Arduino- och RPi -anslutningen kan ge stora möjligheter om du behöver I/O som Arduino utmärker sig och nätverkskommunikation/multithreading/visuals som RPi är mycket bättre på.
Med andra ord kommer vi att använda Arduino för kontrollintensiva uppgifter och använda RPi för beräkningsintensiva uppgifter.
Ruggedized versioner av Arduinos är tillgängliga på Rugged-Circuits
Steg 1: Skaffa Arduino & RPi -hårdvara
Arduino startpaket är lätt tillgängliga och låter dig experimentera med olika typer av sensorer och prylar. Att köpa ett startpaket fungerar billigare istället för att beställa olika delar separat. Jag har levererat några anslutningslänkar nedan som pekar på Banggood och Amazon USA.
Arduino Starter Kit (Banggood)
Arduino startpaket (Amazon USA)
Element14 RPi 3 B+ moderkort (Amazon USA)
Raspberry Pi 3 B+ fodral (Amazon USA)
32 GB Micro SD -kort (Amazon USA).
Steg 2: Anslut DHT11 & LCD till Arduino
Steg 3: Programmera Arduino
#arduino-dht11-lcd2004
#Författare: Vasoo Veerapen
#https://www.instructables.com/member/VasooV/ #Läser data från en DHT11 ansluten till en Arduino, visas på en LCD2004 och skickar data över serie till Raspberry Pi
#omfatta
#omfatta
// LCD -skärm definieras som enhetsnummer 0x27 på I2C -bussen
LiquidCrystal_I2C lcd (0x27, 20, 4);
// DHT11 är ansluten till stift 8
dht DHT; #define sensorPin 8
// Raspberry Pi är ansluten till Serial 0
#define serialPi Serial
void setup () {
lcd.begin (20, 4); // Initierar gränssnittet till LCD -skärmen och specificerar måtten (bredd och höjd) på displayen lcd.init (); lcd.backlight (); serialPi.begin (9600); // Arduino till seriell bildskärm}
void loop () {
// Läs sensordata
int sensorData = DHT.read11 (sensorPin); flottörtemperatur = DHT. temperatur; flottörfuktighet = DHT. luftfuktighet;
// Utskriftstemperatur
lcd.setCursor (0, 0); lcd.print ("Temperatur"); lcd.print (temperatur); lcd.print ("C");
// Skriv ut luftfuktighet
lcd.setCursor (0, 1); lcd.print ("Fuktighet"); lcd.print (fuktighet); lcd.print (" %");
// Skicka temperatur- och luftfuktighetsdata till Raspberry Pi
serialPi.print ("");
// Vänta i 10 sekunder
fördröjning (10000); }
Steg 4: Arbetande Arduino, LCD & DHT11 -inställningar
Steg 5: Anslut Raspberry Pi till Arduino
Steg 6: RPi Python -kod för att läsa USB -portens seriella data
#rpi-arduino-dht11
#Raspberry Pi läser temperatur- och fuktighetssensordata från Arduino
importera serie, sträng, tid
#I det här exemplet används /dev /ttyUSB0
#Detta kan ändras i ditt fall till/dev/ttyUSB1,/dev/ttyUSB2, etc. ser = serial. Serial ('/dev/ttyUSB0', 9600)
#Följande kodblock fungerar så här:
#Om seriell data finns, läs raden, avkoda UTF8 -data, #… ta bort den bakre änden av radtecken #… dela upp data i temperatur och luftfuktighet #… ta bort start- och slutpekarna () #… skriv ut utskriften medan Sant: om ser.in_waiting> 0: rawserial = ser.readline () cookedserial = rawserial.decode ('utf-8'). Strip ('\ r / n') datasplit = cookedserial.split (',') temperatur = datasplit [0].strip ('') tryck (temperatur) tryck (fuktighet)
Rekommenderad:
Nodemcu skickar data om temperatur och luftfuktighet till Thingspeak: 7 steg
Nodemcu skickar temperatur- och luftfuktighetsdata till Thingspeak: Här i den här självstudien har vi anslutit nodemcu till dht11 -sensorn och skickat temperatur- och luftfuktighetsdata till thingspeak -servern. Här har vi också ritat diagrammet över temperatur och luftfuktighet till thingspeak -servern
Mätning av luftfuktighet och temperatur med HTS221 och Raspberry Pi: 4 steg
Mätning av luftfuktighet och temperatur med HTS221 och Raspberry Pi: HTS221 är en ultrakompakt kapacitiv digital sensor för relativ luftfuktighet och temperatur. Den innehåller ett avkänningselement och en applikationsspecifik integrerad krets (ASIC) för blandad signal för att tillhandahålla mätinformation genom digital seriell
Mätning av luftfuktighet och temperatur med HIH6130 och Raspberry Pi: 4 steg
Mätning av luftfuktighet och temperatur med HIH6130 och Raspberry Pi: HIH6130 är en fukt- och temperatursensor med digital utgång. Dessa sensorer ger en noggrannhetsnivå på ± 4% RF. Med branschledande långsiktig stabilitet, sann temperaturkompenserad digital I2C, branschledande tillförlitlighet, energieffektivitet
Mätning av temperatur och luftfuktighet med HDC1000 och Raspberry Pi: 4 steg
Mätning av temperatur och fukt med HDC1000 och Raspberry Pi: HDC1000 är en digital fuktighetssensor med integrerad temperatursensor som ger utmärkt mätnoggrannhet vid mycket låg effekt. Enheten mäter luftfuktighet baserat på en ny kapacitiv sensor. Luft- och temperatursensorerna är
Arduino skickar data om temperatur och luftfuktighet till MySQL Server (PHPMYADMIN): 5 steg
Arduino skickar data om temperatur och luftfuktighet till MySQL Server (PHPMYADMIN): I detta projekt har jag kopplat DHT11 till arduino och sedan skickar jag data från dht11 som är fuktighet och temperatur till phpmyadmin -databasen. Här använder vi ett PHP -skript för att överföra data till phpmyadmin -databasen