5.8 KiB
Matuokite temperatūrą - Raspberry Pi
Šioje pamokos dalyje pridėsite temperatūros jutiklį prie savo Raspberry Pi.
Aparatinė įranga
Jutiklis, kurį naudosite, yra DHT11 drėgmės ir temperatūros jutiklis, kuris sujungia 2 jutiklius viename korpuse. Tai gana populiarus jutiklis, nes daugelis komerciškai prieinamų jutiklių sujungia temperatūros, drėgmės ir kartais atmosferos slėgio matavimus. Temperatūros jutiklio komponentas yra neigiamo temperatūros koeficiento (NTC) termistorius – termistorius, kurio varža mažėja, kai temperatūra didėja.
Tai yra skaitmeninis jutiklis, todėl jis turi integruotą ADC, kuris sukuria skaitmeninį signalą su temperatūros ir drėgmės duomenimis, kuriuos gali nuskaityti mikrovaldiklis.
Prijunkite temperatūros jutiklį
Grove temperatūros jutiklį galima prijungti prie Raspberry Pi.
Užduotis
Prijunkite temperatūros jutiklį
-
Įstatykite vieną Grove kabelio galą į lizdą ant drėgmės ir temperatūros jutiklio. Jis įsistatys tik viena kryptimi.
-
Išjungę Raspberry Pi, prijunkite kitą Grove kabelio galą prie skaitmeninio lizdo, pažymėto D5, esančio ant Grove Base hat, prijungto prie Pi. Šis lizdas yra antras iš kairės, eilėje šalia GPIO pinų.
Užprogramuokite temperatūros jutiklį
Dabar įrenginį galima užprogramuoti naudoti prijungtą temperatūros jutiklį.
Užduotis
Užprogramuokite įrenginį.
-
Įjunkite Pi ir palaukite, kol jis įsijungs.
-
Paleiskite VS Code tiesiogiai Pi įrenginyje arba prisijunkite per Remote SSH plėtinį.
⚠️ Jei reikia, galite pasinaudoti instrukcijomis, kaip nustatyti ir paleisti VS Code 1-oje pamokoje.
-
Terminale sukurkite naują aplanką
pi
naudotojo pagrindiniame kataloge, pavadintątemperature-sensor
. Sukurkite šiame aplanke failą, pavadintąapp.py
:mkdir temperature-sensor cd temperature-sensor touch app.py
-
Atidarykite šį aplanką VS Code.
-
Norint naudoti temperatūros ir drėgmės jutiklį, reikia įdiegti papildomą Pip paketą. VS Code terminale vykdykite šią komandą, kad įdiegtumėte šį Pip paketą Pi įrenginyje:
pip3 install seeed-python-dht
-
Pridėkite šį kodą į
app.py
failą, kad importuotumėte reikalingas bibliotekas:import time from seeed_dht import DHT
from seeed_dht import DHT
eilutė importuojaDHT
jutiklio klasę, skirtą sąveikai su Grove temperatūros jutikliu išseeed_dht
modulio. -
Pridėkite šį kodą po aukščiau esančio kodo, kad sukurtumėte klasės egzempliorių, kuris valdo temperatūros jutiklį:
sensor = DHT("11", 5)
Tai deklaruoja
DHT
klasės egzempliorių, kuris valdo Digital Humidity ir Temperature jutiklį. Pirmasis parametras nurodo, kad naudojamas DHT11 jutiklis – biblioteka palaiko ir kitus šio jutiklio variantus. Antrasis parametras nurodo, kad jutiklis prijungtas prie skaitmeninio lizdoD5
ant Grove Base hat.✅ Atminkite, kad visi lizdai turi unikalius pinų numerius. Pinai 0, 2, 4 ir 6 yra analoginiai, o pinai 5, 16, 18, 22, 24 ir 26 yra skaitmeniniai.
-
Pridėkite begalinę kilpą po aukščiau esančiu kodu, kad nuskaitytumėte temperatūros jutiklio reikšmę ir atspausdintumėte ją konsolėje:
while True: _, temp = sensor.read() print(f'Temperature {temp}°C')
sensor.read()
iškvietimas grąžina drėgmės ir temperatūros duomenų porą. Jums reikia tik temperatūros reikšmės, todėl drėgmė ignoruojama. Temperatūros reikšmė tada atspausdinama konsolėje. -
Pridėkite trumpą dešimties sekundžių pauzę kilpos pabaigoje, nes temperatūros lygiai neturi būti tikrinami nuolat. Pauzė sumažina įrenginio energijos suvartojimą.
time.sleep(10)
-
VS Code terminale vykdykite šią komandą, kad paleistumėte savo Python programą:
python3 app.py
Turėtumėte matyti temperatūros reikšmes, rodomas konsolėje. Naudokite ką nors, kad sušildytumėte jutiklį, pavyzdžiui, prispauskite jį nykščiu arba naudokite ventiliatorių, kad pamatytumėte, kaip reikšmės keičiasi:
pi@raspberrypi:~/temperature-sensor $ python3 app.py Temperature 26°C Temperature 26°C Temperature 28°C Temperature 30°C Temperature 32°C
💁 Šį kodą galite rasti code-temperature/pi aplanke.
😀 Jūsų temperatūros jutiklio programa pavyko!
Atsakomybės apribojimas:
Šis dokumentas buvo išverstas naudojant AI vertimo paslaugą Co-op Translator. Nors siekiame tikslumo, prašome atkreipti dėmesį, kad automatiniai vertimai gali turėti klaidų ar netikslumų. Originalus dokumentas jo gimtąja kalba turėtų būti laikomas autoritetingu šaltiniu. Kritinei informacijai rekomenduojama naudoti profesionalų žmogaus vertimą. Mes neprisiimame atsakomybės už nesusipratimus ar klaidingus aiškinimus, kylančius dėl šio vertimo naudojimo.