Orodha ya maudhui:

Joto na Unyevu Kutoka Arduino hadi Raspberry Pi: 6 Hatua
Joto na Unyevu Kutoka Arduino hadi Raspberry Pi: 6 Hatua

Video: Joto na Unyevu Kutoka Arduino hadi Raspberry Pi: 6 Hatua

Video: Joto na Unyevu Kutoka Arduino hadi Raspberry Pi: 6 Hatua
Video: Использование Melexis MLX90614 Инфракрасный термометр с Arduino 2024, Julai
Anonim
Joto na Unyevu Kutoka Arduino hadi Raspberry Pi
Joto na Unyevu Kutoka Arduino hadi Raspberry Pi

Kufuatilia joto na unyevu ni muhimu ikiwa una chafu, au una mipango ya siku zijazo ya kuboresha chafu yako kuwa shamba lenye mini.

Kwa Agizo langu la kwanza nitaonyesha jinsi ya kuunda mfano:

  • Unganisha sensorer ya joto na unyevu wa DHT11 kwenye Arduino Mega 2560
  • Panga Arduino katika C kusoma data ya sensorer
  • Onyesha data ya joto na unyevu kwenye LCD iliyounganishwa na Arduino
  • Agiza Arduino kutuma data ya sensa kwa Raspberry Pi 3 Model B +
  • Andika nambari katika Python kuonyesha data ya sensorer

Kwa nini utumie RPi na Arduino pamoja?

Uunganisho wa Arduino na RPi unaweza kuruhusu uwezo mkubwa ikiwa unahitaji I / O ambayo Arduino inafanikiwa na mawasiliano ya mtandao / kusoma zaidi / vielelezo ambavyo RPi ni bora zaidi.

Kwa maneno mengine, tutatumia Arduino kudhibiti kazi kubwa na tumia RPi kwa hesabu ya kazi kubwa.

Matoleo ya ruggedized ya Arduinos yanapatikana katika Rugged-Circuits

Hatua ya 1: Kupata vifaa vya Arduino & RPi

Vifaa vya kuanza kwa Arduino vinapatikana kwa urahisi na hukuruhusu kujaribu aina tofauti za sensorer na vifaa. Ununuzi wa vifaa vya kuanza hufanya bei rahisi badala ya kuagiza sehemu anuwai kando. Nimetoa viungo vingine vya ushirika hapa chini vinaelezea Banggood na Amazon US.

Kitanzi cha Starter cha Arduino (Banggood)

Kitanzi cha Starter cha Arduino (Amazon US)

Element14 RPi 3 B + Motherboard (Amazon Marekani)

Kesi ya Raspberry Pi 3 B + (Amazon US)

Kadi ya Micro SD ya 32GB (Amazon US).

Hatua ya 2: Unganisha DHT11 & LCD na Arduino

Unganisha DHT11 & LCD na Arduino
Unganisha DHT11 & LCD na Arduino

Hatua ya 3: Panga Arduino

# arduino-dht11-lcd2004

#Mwandishi: Vasoo Veerapen

#https://www.instructables.com/member/VasooV/ #Inasoma data kutoka kwa DHT11 iliyounganishwa na Arduino, inayoonyeshwa kwenye LCD2004 na kutuma data juu ya serial kwa Raspberry Pi

# pamoja

# pamoja

// Onyesho la LCD linafafanuliwa kama nambari ya kifaa 0x27 kwenye basi ya I2C

LiquidCrystal_I2C LCD (0x27, 20, 4);

// DHT11 imeunganishwa na pin 8

dht DHT; #fafanua sensorPin 8

// Pi ya Raspberry imeunganishwa na Serial 0

#fafanua serialPi Serial

usanidi batili () {

lcd kuanza (20, 4); // Inazindua kiolesura kwenye skrini ya LCD, na kubainisha vipimo (upana na urefu) wa onyesho lcd.init (); lcd taa ya nyuma (); serialPi.anza (9600); // Arduino kwa mfuatiliaji wa mfululizo}

kitanzi batili () {

// Soma data ya sensorer

sensor ya ndaniData = DHT.read11 (sensorPin); joto la kuelea = DHT. joto; unyevu wa kuelea = DHT. unyevu;

// Joto la kuchapisha

lcd.setCursor (0, 0); lcd.print ("Joto"); lcd.print (joto); lcd.print ("C");

// Chapa unyevu

lcd.setCursor (0, 1); lcd.print ("Unyevu"); lcd.print (unyevu); lcd.print ("%");

// Tuma data ya joto na unyevu kwa Raspberry Pi

serialPi.print ("");

// Subiri kwa sekunde 10

kuchelewesha (10000); }

Hatua ya 4: Usanidi wa Arduino, LCD & DHT11

Usanidi wa Arduino, LCD & DHT11
Usanidi wa Arduino, LCD & DHT11

Hatua ya 5: Unganisha Raspberry Pi na Arduino

Unganisha Raspberry Pi na Arduino
Unganisha Raspberry Pi na Arduino

Hatua ya 6: RPi Python Code kusoma Sura ya Takwimu ya Port Port ya USB

# rpi-arduino-dht11

#Raspberry Pi inasoma data ya sensorer ya joto na unyevu kutoka Arduino

kuagiza serial, kamba, wakati

#Kwa mfano huu / dev / ttyUSB0 hutumiwa

#Hii inaweza kubadilika kwa kesi yako kuwa / dev / ttyUSB1, / dev / ttyUSB2, nk ser = serial. Serial ('/ dev / ttyUSB0', 9600)

# Kizuizi kifuatacho cha msimbo hufanya kazi kama hii:

#Ikiwa data ya serial iko, soma mstari, namua data ya UTF8, #… ondoa mwisho wa trafiki wa herufi # # gawanya data kwenye joto na unyevu #… ondoa viashiria vya kuanzia na kumaliza () #… chapisha pato wakati Ukweli: ikiwa ser.in_waiting> 0: rawserial = ser.lineline () cookedserial = rawserial.decode ('utf-8'). Strip ('\ r / n') datasplit = cookedserial.split (',') joto = datasplit [0].strip ('') chapa (joto) chapisha (unyevu)

Ilipendekeza: