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/bg/2-farm/lessons/2-detect-soil-moisture/virtual-device-soil-moistur...

8.8 KiB

Измерване на влажността на почвата - Виртуален IoT хардуер

В тази част на урока ще добавите капацитивен сензор за влажност на почвата към вашето виртуално IoT устройство и ще четете стойности от него.

Виртуален хардуер

Виртуалното IoT устройство ще използва симулиран капацитивен сензор за влажност на почвата Grove. Това запазва лабораторията идентична с използването на Raspberry Pi с физически капацитивен сензор за влажност на почвата Grove.

При физическо IoT устройство сензорът за влажност на почвата би бил капацитивен сензор, който измерва влажността на почвата, като открива капацитета на почвата свойство, което се променя с промяната на влажността. С увеличаването на влажността на почвата напрежението намалява.

Това е аналогов сензор, който използва симулиран 10-битов ADC, за да отчита стойности от 1 до 1,023.

Добавяне на сензора за влажност на почвата към CounterFit

За да използвате виртуален сензор за влажност на почвата, трябва да го добавите към приложението CounterFit.

Задача - Добавяне на сензора за влажност на почвата към CounterFit

Добавете сензора за влажност на почвата към приложението CounterFit.

  1. Създайте ново Python приложение на вашия компютър в папка, наречена soil-moisture-sensor, с един файл, наречен app.py, и Python виртуална среда, и добавете CounterFit pip пакетите.

    ⚠️ Можете да се обърнете към инструкциите за създаване и настройка на CounterFit Python проект в урок 1, ако е необходимо.

  2. Уверете се, че CounterFit уеб приложението работи.

  3. Създайте сензор за влажност на почвата:

    1. В полето Create sensor в панела Sensors изберете от падащото меню Sensor type опцията Soil Moisture.

    2. Оставете Units зададено на NoUnits.

    3. Уверете се, че Pin е зададен на 0.

    4. Натиснете бутона Add, за да създадете сензора Soil Moisture на Pin 0.

    Настройки на сензора за влажност на почвата

    Сензорът за влажност на почвата ще бъде създаден и ще се появи в списъка със сензори.

    Създаден сензор за влажност на почвата

Програмиране на приложението за сензор за влажност на почвата

Сега приложението за сензор за влажност на почвата може да бъде програмирано с помощта на сензорите в CounterFit.

Задача - Програмиране на приложението за сензор за влажност на почвата

Програмирайте приложението за сензор за влажност на почвата.

  1. Уверете се, че приложението soil-moisture-sensor е отворено в VS Code.

  2. Отворете файла app.py.

  3. Добавете следния код в началото на app.py, за да свържете приложението с CounterFit:

    from counterfit_connection import CounterFitConnection
    CounterFitConnection.init('127.0.0.1', 5000)
    
  4. Добавете следния код във файла app.py, за да импортирате необходимите библиотеки:

    import time
    from counterfit_shims_grove.adc import ADC
    

    Изразът import time импортира модула time, който ще бъде използван по-късно в задачата.

    Изразът from counterfit_shims_grove.adc import ADC импортира класа ADC, който позволява взаимодействие със симулиран аналогово-цифров преобразувател, свързан към сензор в CounterFit.

  5. Добавете следния код под този, за да създадете инстанция на класа ADC:

    adc = ADC()
    
  6. Добавете безкраен цикъл, който чете стойности от този ADC на пин 0 и ги записва в конзолата. Този цикъл може да изчаква 10 секунди между четенията.

    while True:
        soil_moisture = adc.read(0)
        print("Soil moisture:", soil_moisture)
    
        time.sleep(10)
    
  7. От приложението CounterFit променете стойността на сензора за влажност на почвата, която ще бъде прочетена от приложението. Можете да направите това по два начина:

    • Въведете число в полето Value за сензора за влажност на почвата и натиснете бутона Set. Числото, което въведете, ще бъде стойността, върната от сензора.

    • Поставете отметка в полето Random и въведете стойности за Min и Max, след което натиснете бутона Set. Всеки път, когато сензорът чете стойност, тя ще бъде случайно число между Min и Max.

  8. Стартирайте Python приложението. Ще видите измерванията на влажността на почвата, записани в конзолата. Променете стойността или настройките за Random, за да видите как стойността се променя.

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

💁 Можете да намерите този код в папката code/virtual-device.

😀 Вашето приложение за сензор за влажност на почвата беше успешно!


Отказ от отговорност:
Този документ е преведен с помощта на AI услуга за превод Co-op Translator. Въпреки че се стремим към точност, моля, имайте предвид, че автоматичните преводи може да съдържат грешки или неточности. Оригиналният документ на неговия изходен език трябва да се счита за авторитетен източник. За критична информация се препоръчва професионален превод от човек. Не носим отговорност за каквито и да било недоразумения или погрешни интерпретации, произтичащи от използването на този превод.