6.0 KiB
Măsurarea umidității solului - Hardware IoT Virtual
În această parte a lecției, vei adăuga un senzor capacitiv de umiditate a solului la dispozitivul tău IoT virtual și vei citi valorile de la acesta.
Hardware Virtual
Dispozitivul IoT virtual va folosi un senzor capacitiv de umiditate a solului simulat Grove. Acest lucru menține laboratorul similar cu utilizarea unui Raspberry Pi cu un senzor capacitiv de umiditate a solului fizic.
Într-un dispozitiv IoT fizic, senzorul de umiditate a solului ar fi un senzor capacitiv care măsoară umiditatea solului detectând capacitatea solului, o proprietate care se schimbă odată cu variația umidității solului. Pe măsură ce umiditatea solului crește, tensiunea scade.
Acesta este un senzor analogic, așa că folosește un ADC simulat pe 10 biți pentru a raporta o valoare între 1 și 1.023.
Adăugarea senzorului de umiditate a solului în CounterFit
Pentru a utiliza un senzor virtual de umiditate a solului, trebuie să-l adaugi în aplicația CounterFit.
Sarcină - Adăugarea senzorului de umiditate a solului în CounterFit
Adaugă senzorul de umiditate a solului în aplicația CounterFit.
-
Creează o nouă aplicație Python pe computerul tău într-un folder numit
soil-moisture-sensor
cu un singur fișier numitapp.py
și un mediu virtual Python, și adaugă pachetele pip CounterFit.⚠️ Poți consulta instrucțiunile pentru crearea și configurarea unui proiect Python CounterFit în lecția 1, dacă este necesar.
-
Asigură-te că aplicația web CounterFit este pornită.
-
Creează un senzor de umiditate a solului:
-
În caseta Create sensor din panoul Sensors, deschide meniul derulant Sensor type și selectează Soil Moisture.
-
Lasă Units setat pe NoUnits.
-
Asigură-te că Pin este setat pe 0.
-
Selectează butonul Add pentru a crea senzorul Soil Moisture pe Pin 0.
Senzorul de umiditate a solului va fi creat și va apărea în lista de senzori.
-
Programarea aplicației senzorului de umiditate a solului
Aplicația senzorului de umiditate a solului poate fi acum programată folosind senzorii CounterFit.
Sarcină - Programarea aplicației senzorului de umiditate a solului
Programează aplicația senzorului de umiditate a solului.
-
Asigură-te că aplicația
soil-moisture-sensor
este deschisă în VS Code. -
Deschide fișierul
app.py
. -
Adaugă următorul cod în partea de sus a fișierului
app.py
pentru a conecta aplicația la CounterFit:from counterfit_connection import CounterFitConnection CounterFitConnection.init('127.0.0.1', 5000)
-
Adaugă următorul cod în fișierul
app.py
pentru a importa câteva biblioteci necesare:import time from counterfit_shims_grove.adc import ADC
Instrucțiunea
import time
importă modulultime
, care va fi utilizat mai târziu în această sarcină.Instrucțiunea
from counterfit_shims_grove.adc import ADC
importă clasaADC
pentru a interacționa cu un convertor analog-digital virtual care se poate conecta la un senzor CounterFit. -
Adaugă următorul cod sub acesta pentru a crea o instanță a clasei
ADC
:adc = ADC()
-
Adaugă un ciclu infinit care citește de la acest ADC pe pinul 0 și scrie rezultatul în consolă. Acest ciclu poate dormi timp de 10 secunde între citiri.
while True: soil_moisture = adc.read(0) print("Soil moisture:", soil_moisture) time.sleep(10)
-
Din aplicația CounterFit, schimbă valoarea senzorului de umiditate a solului care va fi citită de aplicație. Poți face acest lucru în două moduri:
-
Introdu un număr în caseta Value pentru senzorul de umiditate a solului, apoi selectează butonul Set. Numărul pe care îl introduci va fi valoarea returnată de senzor.
-
Bifează caseta Random și introdu valori Min și Max, apoi selectează butonul Set. De fiecare dată când senzorul citește o valoare, va citi un număr aleatoriu între Min și Max.
-
-
Rulează aplicația Python. Vei vedea măsurătorile de umiditate a solului scrise în consolă. Schimbă setările Value sau Random pentru a vedea cum se modifică valoarea.
(.venv) ➜ soil-moisture-sensor $ python app.py Soil moisture: 615 Soil moisture: 612 Soil moisture: 498 Soil moisture: 493 Soil moisture: 490 Soil Moisture: 388
💁 Poți găsi acest cod în folderul code/virtual-device.
😀 Programul senzorului de umiditate a solului a fost un succes!
Declinare de responsabilitate:
Acest document a fost tradus folosind serviciul de traducere AI Co-op Translator. Deși ne străduim să asigurăm acuratețea, vă rugăm să fiți conștienți că traducerile automate pot conține erori sau inexactități. Documentul original în limba sa natală ar trebui considerat sursa autoritară. Pentru informații critice, se recomandă traducerea profesională realizată de un specialist uman. Nu ne asumăm responsabilitatea pentru eventualele neînțelegeri sau interpretări greșite care pot apărea din utilizarea acestei traduceri.