You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/hr/2-farm/lessons/2-detect-soil-moisture/virtual-device-soil-moistur...

5.5 KiB

Mjerenje vlažnosti tla - Virtualni IoT hardver

U ovom dijelu lekcije, dodat ćete kapacitivni senzor vlažnosti tla svom virtualnom IoT uređaju i očitati vrijednosti s njega.

Virtualni hardver

Virtualni IoT uređaj koristit će simulirani Grove kapacitivni senzor vlažnosti tla. Ovo omogućuje da laboratorij ostane isti kao korištenje Raspberry Pi uređaja s fizičkim Grove kapacitivnim senzorom vlažnosti tla.

Na fizičkom IoT uređaju, senzor vlažnosti tla bio bi kapacitivni senzor koji mjeri vlažnost tla detektiranjem kapaciteta tla, svojstva koje se mijenja ovisno o vlažnosti tla. Kako se vlažnost tla povećava, napon se smanjuje.

Ovo je analogni senzor, pa koristi simulirani 10-bitni ADC za prijavu vrijednosti od 1 do 1.023.

Dodavanje senzora vlažnosti tla u CounterFit

Za korištenje virtualnog senzora vlažnosti tla, potrebno ga je dodati u CounterFit aplikaciju.

Zadatak - Dodavanje senzora vlažnosti tla u CounterFit

Dodajte senzor vlažnosti tla u CounterFit aplikaciju.

  1. Kreirajte novu Python aplikaciju na svom računalu u mapi nazvanoj soil-moisture-sensor s jednim datotekama nazvanim app.py i Python virtualnim okruženjem, te dodajte CounterFit pip pakete.

    ⚠️ Možete se referirati na upute za kreiranje i postavljanje CounterFit Python projekta u lekciji 1 ako je potrebno.

  2. Provjerite je li CounterFit web aplikacija pokrenuta.

  3. Kreirajte senzor vlažnosti tla:

    1. U okviru Create sensor u Sensors panelu, otvorite padajući izbornik Sensor type i odaberite Soil Moisture.

    2. Ostavite Units postavljen na NoUnits.

    3. Provjerite je li Pin postavljen na 0.

    4. Kliknite gumb Add za kreiranje senzora Soil Moisture na pinu 0.

    Postavke senzora vlažnosti tla

    Senzor vlažnosti tla bit će kreiran i pojavit će se na popisu senzora.

    Kreirani senzor vlažnosti tla

Programiranje aplikacije za senzor vlažnosti tla

Aplikacija za senzor vlažnosti tla sada se može programirati koristeći CounterFit senzore.

Zadatak - Programiranje aplikacije za senzor vlažnosti tla

Programirajte aplikaciju za senzor vlažnosti tla.

  1. Provjerite je li aplikacija soil-moisture-sensor otvorena u VS Code.

  2. Otvorite datoteku app.py.

  3. Dodajte sljedeći kod na vrh datoteke app.py za povezivanje aplikacije s CounterFit:

    from counterfit_connection import CounterFitConnection
    CounterFitConnection.init('127.0.0.1', 5000)
    
  4. Dodajte sljedeći kod u datoteku app.py za uvoz potrebnih biblioteka:

    import time
    from counterfit_shims_grove.adc import ADC
    

    Izjava import time uvozi modul time koji će se kasnije koristiti u ovom zadatku.

    Izjava from counterfit_shims_grove.adc import ADC uvozi klasu ADC za interakciju s virtualnim analogno-digitalnim pretvaračem koji se može povezati s CounterFit senzorom.

  5. Dodajte sljedeći kod ispod ovoga za kreiranje instance klase ADC:

    adc = ADC()
    
  6. Dodajte beskonačnu petlju koja čita vrijednosti s ovog ADC-a na pinu 0 i zapisuje rezultat u konzolu. Ova petlja može zatim pauzirati 10 sekundi između očitanja.

    while True:
        soil_moisture = adc.read(0)
        print("Soil moisture:", soil_moisture)
    
        time.sleep(10)
    
  7. U CounterFit aplikaciji, promijenite vrijednost senzora vlažnosti tla koju će aplikacija očitati. To možete učiniti na dva načina:

    • Unesite broj u okvir Value za senzor vlažnosti tla, zatim kliknite gumb Set. Broj koji unesete bit će vrijednost koju senzor vraća.

    • Označite kućicu Random i unesite Min i Max vrijednosti, zatim kliknite gumb Set. Svaki put kada senzor očita vrijednost, očitat će nasumični broj između Min i Max.

  8. Pokrenite Python aplikaciju. Vidjet ćete mjerenja vlažnosti tla zapisana u konzolu. Promijenite Value ili postavke Random kako biste vidjeli promjenu vrijednosti.

    (.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
    

💁 Ovaj kod možete pronaći u mapi code/virtual-device.

😀 Vaša aplikacija za senzor vlažnosti tla bila je uspješna!


Odricanje od odgovornosti:
Ovaj dokument je preveden pomoću AI usluge za prevođenje Co-op Translator. Iako nastojimo osigurati točnost, imajte na umu da automatski prijevodi mogu sadržavati pogreške ili netočnosti. Izvorni dokument na izvornom jeziku treba smatrati autoritativnim izvorom. Za kritične informacije preporučuje se profesionalni prijevod od strane čovjeka. Ne preuzimamo odgovornost za bilo kakva nesporazuma ili pogrešna tumačenja koja proizlaze iz korištenja ovog prijevoda.