5.2 KiB
Ovládání relé - Virtuální IoT zařízení
V této části lekce přidáte k vašemu virtuálnímu IoT zařízení relé, kromě senzoru vlhkosti půdy, a budete ho ovládat na základě úrovně vlhkosti půdy.
Virtuální hardware
Virtuální IoT zařízení bude používat simulované Grove relé. To udržuje tento lab stejný jako při použití Raspberry Pi s fyzickým Grove relé.
U fyzického IoT zařízení by relé bylo normálně otevřené relé (to znamená, že výstupní obvod je otevřený nebo odpojený, pokud není reléti poslán signál). Takové relé může zvládnout výstupní obvody až do 250V a 10A.
Přidání relé do CounterFit
Pro použití virtuálního relé je potřeba ho přidat do aplikace CounterFit.
Úkol
Přidejte relé do aplikace CounterFit.
-
Otevřete projekt
soil-moisture-sensor
z minulé lekce ve VS Code, pokud již není otevřený. Budete do tohoto projektu přidávat. -
Ujistěte se, že webová aplikace CounterFit běží.
-
Vytvořte relé:
-
V poli Create actuator v panelu Actuators rozbalte pole Actuator type a vyberte Relay.
-
Nastavte Pin na 5.
-
Klikněte na tlačítko Add, abyste vytvořili relé na pinu 5.
Relé bude vytvořeno a objeví se v seznamu aktuátorů.
-
Naprogramování relé
Aplikace senzoru vlhkosti půdy nyní může být naprogramována k použití virtuálního relé.
Úkol
Naprogramujte virtuální zařízení.
-
Otevřete projekt
soil-moisture-sensor
z minulé lekce ve VS Code, pokud již není otevřený. Budete do tohoto projektu přidávat. -
Přidejte následující kód do souboru
app.py
pod existující importy:from counterfit_shims_grove.grove_relay import GroveRelay
Tento příkaz importuje
GroveRelay
z knihoven Grove Python shim pro interakci s virtuálním Grove relé. -
Přidejte následující kód pod deklaraci třídy
ADC
, abyste vytvořili instanciGroveRelay
:relay = GroveRelay(5)
Tímto vytvoříte relé na pinu 5, na který jste relé připojili.
-
Pro otestování, že relé funguje, přidejte následující kód do smyčky
while True:
:relay.on() time.sleep(.5) relay.off()
Kód zapne relé, počká 0,5 sekundy, a poté relé vypne.
-
Spusťte Python aplikaci. Relé se bude zapínat a vypínat každých 10 sekund, s půlsekundovou prodlevou mezi zapnutím a vypnutím. Uvidíte, jak se virtuální relé v aplikaci CounterFit zavírá a otevírá, když se relé zapíná a vypíná.
Ovládání relé na základě vlhkosti půdy
Nyní, když relé funguje, může být ovládáno na základě odečtů vlhkosti půdy.
Úkol
Ovládejte relé.
-
Smažte 3 řádky kódu, které jste přidali pro testování relé. Nahraďte je následujícím kódem:
if soil_moisture > 450: print("Soil Moisture is too low, turning relay on.") relay.on() else: print("Soil Moisture is ok, turning relay off.") relay.off()
Tento kód kontroluje úroveň vlhkosti půdy ze senzoru vlhkosti půdy. Pokud je nad 450, zapne relé, a pokud klesne pod 450, relé vypne.
💁 Pamatujte, že kapacitní senzor vlhkosti půdy čte: čím nižší je úroveň vlhkosti půdy, tím více vlhkosti je v půdě, a naopak.
-
Spusťte Python aplikaci. Uvidíte, jak se relé zapíná nebo vypíná v závislosti na úrovních vlhkosti půdy. Změňte Value nebo Random nastavení senzoru vlhkosti půdy, abyste viděli změnu hodnoty.
Soil Moisture: 638 Soil Moisture is too low, turning relay on. Soil Moisture: 452 Soil Moisture is too low, turning relay on. Soil Moisture: 347 Soil Moisture is ok, turning relay off.
💁 Tento kód najdete ve složce code-relay/virtual-device.
😀 Vaše virtuální aplikace senzoru vlhkosti půdy ovládající relé byla úspěšná!
Prohlášení:
Tento dokument byl přeložen pomocí služby pro automatický překlad Co-op Translator. I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Nenese odpovědnost za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.