4.4 KiB
Mõõda mulla niiskust - Raspberry Pi
Selles õppetunni osas lisad oma Raspberry Pi-le mahtuvusliku mulla niiskuse sensori ja loed sellest väärtusi.
Riistvara
Raspberry Pi vajab mahtuvuslikku mulla niiskuse sensorit.
Sensor, mida kasutad, on Mahtuvuslik mulla niiskuse sensor, mis mõõdab mulla niiskust, tuvastades mulla mahtuvust – omadust, mis muutub vastavalt mulla niiskuse tasemele. Kui mulla niiskus suureneb, väheneb pinge.
See on analoogsensor, mis kasutab analoogpinni ja Grove Base Hat-i 10-bitist ADC-d Raspberry Pi-l, et teisendada pinge digitaalseks signaaliks vahemikus 1–1023. Seejärel saadetakse see I2C kaudu GPIO-pinnide kaudu Pi-le.
Ühenda mulla niiskuse sensor
Grove mulla niiskuse sensorit saab ühendada Raspberry Pi-ga.
Ülesanne - ühenda mulla niiskuse sensor
Ühenda mulla niiskuse sensor.
-
Sisesta Grove-kaabli üks ots mulla niiskuse sensori pistikusse. Kaabel läheb sisse ainult ühel viisil.
-
Kui Raspberry Pi on välja lülitatud, ühenda Grove-kaabli teine ots analoogpistikusse, mis on märgistatud A0 Grove Base Hat-il, mis on kinnitatud Pi-le. See pistik on GPIO-pinnide kõrval asuva pistikurea parempoolne teine.
- Sisesta mulla niiskuse sensor mulda. Sellel on "kõrgeima positsiooni joon" – valge joon sensori peal. Sisesta sensor kuni selle jooneni, kuid mitte üle selle.
Programmeeri mulla niiskuse sensor
Nüüd saab Raspberry Pi programmeerida kasutama ühendatud mulla niiskuse sensorit.
Ülesanne - programmeeri mulla niiskuse sensor
Programmeeeri seade.
-
Lülita Pi sisse ja oota, kuni see käivitub.
-
Käivita VS Code, kas otse Pi-l või ühenda Remote SSH laienduse kaudu.
⚠️ Vajadusel viita juhistele VS Code seadistamiseks ja käivitamiseks Nightlighti - õppetund 1.
-
Terminalis loo
pikasutaja kodukataloogi uus kaust nimegasoil-moisture-sensor. Loo selles kaustas fail nimegaapp.py. -
Ava see kaust VS Code'is.
-
Lisa
app.pyfaili järgmine kood, et importida vajalikud teegid:import time from grove.adc import ADCimport timelause impordibtimemooduli, mida kasutatakse hiljem selles ülesandes.from grove.adc import ADClause impordibADCGrove Python teekidest. See teek sisaldab koodi, mis võimaldab suhelda analoog-digitaalmuunduriga Pi Base Hat-il ja lugeda pingeid analoogsensoritelt. -
Lisa järgmine kood selle alla, et luua
ADCklassi eksemplar:adc = ADC() -
Lisa lõpmatu tsükkel, mis loeb ADC-d A0 pinnilt ja kirjutab tulemuse konsooli. See tsükkel saab seejärel teha 10-sekundilisi pause lugemiste vahel.
while True: soil_moisture = adc.read(0) print("Soil moisture:", soil_moisture) time.sleep(10) -
Käivita Python rakendus. Näed mulla niiskuse mõõtmisi konsoolis. Lisa mulda vett või eemalda sensor mullast ja vaata, kuidas väärtus muutub.
pi@raspberrypi:~/soil-moisture-sensor $ python3 app.py Soil moisture: 615 Soil moisture: 612 Soil moisture: 498 Soil moisture: 493 Soil moisture: 490 Soil Moisture: 388Näites toodud väljundis näed, kuidas pinge langeb, kui vett lisatakse.
💁 Selle koodi leiad code/pi kaustast.
😀 Sinu mulla niiskuse sensori programm oli edukas!
Lahtiütlus:
See dokument on tõlgitud AI tõlketeenuse Co-op Translator abil. Kuigi püüame tagada täpsust, palume arvestada, et automaatsed tõlked võivad sisaldada vigu või ebatäpsusi. Algne dokument selle algses keeles tuleks pidada autoriteetseks allikaks. Olulise teabe puhul soovitame kasutada professionaalset inimtõlget. Me ei vastuta selle tõlke kasutamisest tulenevate arusaamatuste või valesti tõlgenduste eest.


