6.6 KiB
Mõõda temperatuuri - Virtuaalne IoT riistvara
Selles õppetunni osas lisad oma virtuaalsele IoT-seadmele temperatuurianduri.
Virtuaalne riistvara
Virtuaalne IoT-seade kasutab simuleeritud Grove digitaalset niiskuse ja temperatuuri andurit. See hoiab labori samasugusena nagu füüsilise Grove DHT11 anduri kasutamine Raspberry Pi-ga.
Andur ühendab temperatuurianduri ja niiskuseanduri, kuid selles laboris keskendutakse ainult temperatuurianduri komponendile. Füüsilises IoT-seadmes oleks temperatuuriandur termistor, mis mõõdab temperatuuri, tuvastades takistuse muutuse temperatuuri muutudes. Temperatuuriandurid on tavaliselt digitaalsed andurid, mis teisendavad sisemiselt mõõdetud takistuse temperatuuriks Celsiuse (või Kelvini või Fahrenheiti) kraadides.
Lisa andurid CounterFit-i
Virtuaalse niiskuse ja temperatuurianduri kasutamiseks tuleb need kaks andurit CounterFit rakendusse lisada.
Ülesanne - lisa andurid CounterFit-i
Lisa niiskuse ja temperatuuri andurid CounterFit rakendusse.
-
Loo oma arvutis uus Python rakendus kaustas
temperature-sensor, millel on üks fail nimegaapp.pyja Python virtuaalne keskkond, ning lisa CounterFit pip paketid.⚠️ Vajadusel võid viidata juhistele CounterFit Python projekti loomise ja seadistamise kohta õppetunnis 1.
-
Paigalda täiendav Pip pakett, et lisada CounterFit shim DHT11 anduri jaoks. Veendu, et paigaldad selle terminalist, kus virtuaalne keskkond on aktiveeritud.
pip install counterfit-shims-seeed-python-dht -
Veendu, et CounterFit veebirakendus töötab.
-
Loo niiskuse andur:
-
Create sensor kastis Sensors paneelil, ava Sensor type rippmenüü ja vali Humidity.
-
Jäta Units väärtuseks Percentage.
-
Veendu, et Pin väärtuseks on 5.
-
Vajuta Add nuppu, et luua niiskuse andur Pin 5-le.
Niiskuse andur luuakse ja ilmub andurite loendisse.
-
-
Loo temperatuuri andur:
-
Create sensor kastis Sensors paneelil, ava Sensor type rippmenüü ja vali Temperature.
-
Jäta Units väärtuseks Celsius.
-
Veendu, et Pin väärtuseks on 6.
-
Vajuta Add nuppu, et luua temperatuuri andur Pin 6-le.
Temperatuuri andur luuakse ja ilmub andurite loendisse.
-
Programmeeri temperatuuri anduri rakendus
Nüüd saab temperatuuri anduri rakendust programmeerida, kasutades CounterFit andureid.
Ülesanne - programmeeri temperatuuri anduri rakendus
Programmeeri temperatuuri anduri rakendus.
-
Veendu, et
temperature-sensorrakendus on avatud VS Code-is. -
Ava
app.pyfail. -
Lisa järgmine kood
app.pyfaili algusesse, et ühendada rakendus CounterFit-iga:from counterfit_connection import CounterFitConnection CounterFitConnection.init('127.0.0.1', 5000) -
Lisa järgmine kood
app.pyfaili, et importida vajalikud teegid:import time from counterfit_shims_seeed_python_dht import DHTfrom seeed_dht import DHTlause impordibDHTanduriklassi, et suhelda virtuaalse Grove temperatuurianduriga, kasutades shimicounterfit_shims_seeed_python_dhtmoodulist. -
Lisa järgmine kood ülaltoodud koodi järel, et luua klassi eksemplar, mis haldab virtuaalset niiskuse ja temperatuuri andurit:
sensor = DHT("11", 5)See deklareerib
DHTklassi eksemplari, mis haldab virtuaalset Digitaalset Humidity ja Temperature andurit. Esimene parameeter ütleb koodile, et kasutatav andur on virtuaalne DHT11 andur. Teine parameeter ütleb koodile, et andur on ühendatud porti5.💁 CounterFit simuleerib seda kombineeritud niiskuse ja temperatuuri andurit, ühendades 2 andurit: niiskuse anduri pin-ile, mis antakse
DHTklassi loomisel, ja temperatuuri anduri, mis töötab järgmisel pin-il. Kui niiskuse andur on pin 5-l, eeldab shim, et temperatuuri andur on pin 6-l. -
Lisa lõputu tsükkel ülaltoodud koodi järel, et küsida temperatuuri anduri väärtust ja kuvada see konsoolis:
while True: _, temp = sensor.read() print(f'Temperature {temp}°C')sensor.read()kutse tagastab tuple niiskuse ja temperatuuri väärtustega. Sul on vaja ainult temperatuuri väärtust, seega niiskus jäetakse tähelepanuta. Temperatuuri väärtus kuvatakse seejärel konsoolis. -
Lisa tsükli lõppu väike paus, näiteks kümme sekundit, kuna temperatuuri taset ei ole vaja pidevalt kontrollida. Paus vähendab seadme energiatarbimist.
time.sleep(10) -
Käivita oma Python rakendus VS Code terminalist, kus virtuaalne keskkond on aktiveeritud:
python app.py -
Muuda CounterFit rakenduses temperatuuri anduri väärtust, mida rakendus loeb. Seda saab teha kahel viisil:
-
Sisesta number Value kasti temperatuuri anduri jaoks ja vajuta Set nuppu. Sisestatud number on väärtus, mille andur tagastab.
-
Märgi Random märkeruut ja sisesta Min ja Max väärtused, seejärel vajuta Set nuppu. Iga kord, kui andur loeb väärtust, loeb see juhusliku numbri vahemikus Min ja Max.
Sa peaksid nägema konsoolis väärtusi, mida seadistasid. Muuda Value või Random seadeid, et näha väärtuse muutumist.
(.venv) ➜ temperature-sensor python app.py Temperature 28.25°C Temperature 30.71°C Temperature 25.17°C -
💁 Selle koodi leiad code-temperature/virtual-device kaustast.
😀 Sinu temperatuuri anduri programm oli edukas!
Lahtiütlus:
See dokument on tõlgitud, kasutades AI tõlketeenust Co-op Translator. Kuigi püüame tagada täpsust, palun arvestage, et automaatsed tõlked võivad sisaldada vigu või ebatäpsusi. Algne dokument selle algkeeles tuleks lugeda autoriteetseks allikaks. Olulise teabe puhul on soovitatav kasutada professionaalset inimtõlget. Me ei vastuta selle tõlke kasutamisest tulenevate arusaamatuste või valede tõlgenduste eest.



