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/ru/2-farm/lessons/3-automated-plant-watering/virtual-device-relay.md

7.9 KiB

Управление реле - Виртуальное IoT-устройство

В этой части урока вы добавите реле к вашему виртуальному IoT-устройству в дополнение к датчику влажности почвы и будете управлять им на основе уровня влажности почвы.

Виртуальное оборудование

Виртуальное IoT-устройство будет использовать симулированное реле Grove. Это позволяет сохранить лабораторную работу аналогичной использованию Raspberry Pi с физическим реле Grove.

В физическом IoT-устройстве реле будет нормально-разомкнутым (то есть выходная цепь разомкнута или отключена, если на реле не подается сигнал). Такое реле может работать с выходными цепями до 250В и 10А.

Добавление реле в CounterFit

Чтобы использовать виртуальное реле, его нужно добавить в приложение CounterFit.

Задание

Добавьте реле в приложение CounterFit.

  1. Откройте проект soil-moisture-sensor из прошлого урока в VS Code, если он еще не открыт. Вы будете добавлять в этот проект.

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

  3. Создайте реле:

    1. В поле Create actuator на панели Actuators раскройте список Actuator type и выберите Relay.

    2. Установите Pin на 5.

    3. Нажмите кнопку Add, чтобы создать реле на выводе 5.

    Настройки реле

    Реле будет создано и появится в списке актуаторов.

    Созданное реле

Программирование реле

Теперь приложение для датчика влажности почвы можно запрограммировать для использования виртуального реле.

Задание

Программируйте виртуальное устройство.

  1. Откройте проект soil-moisture-sensor из прошлого урока в VS Code, если он еще не открыт. Вы будете добавлять в этот проект.

  2. Добавьте следующий код в файл app.py ниже существующих импортов:

    from counterfit_shims_grove.grove_relay import GroveRelay
    

    Этот оператор импортирует GroveRelay из библиотек Grove Python shim для взаимодействия с виртуальным реле Grove.

  3. Добавьте следующий код ниже объявления класса ADC, чтобы создать экземпляр GroveRelay:

    relay = GroveRelay(5)
    

    Это создает реле, используя вывод 5, к которому вы подключили реле.

  4. Чтобы проверить, работает ли реле, добавьте следующий код в цикл while True::

    relay.on()
    time.sleep(.5)
    relay.off()
    

    Код включает реле, ждет 0,5 секунды, затем выключает реле.

  5. Запустите Python-приложение. Реле будет включаться и выключаться каждые 10 секунд с задержкой в полсекунды между включением и выключением. Вы увидите, как виртуальное реле в приложении CounterFit закрывается и открывается при включении и выключении.

    Виртуальное реле включается и выключается

Управление реле на основе влажности почвы

Теперь, когда реле работает, его можно управлять в зависимости от показаний датчика влажности почвы.

Задание

Управляйте реле.

  1. Удалите 3 строки кода, которые вы добавили для тестирования реле. Замените их следующим кодом:

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

    Этот код проверяет уровень влажности почвы с датчика влажности. Если он выше 450, реле включается, если ниже 450 — выключается.

    💁 Помните, что емкостный датчик влажности почвы работает так: чем ниже уровень влажности почвы, тем больше влаги в почве, и наоборот.

  2. Запустите Python-приложение. Вы увидите, как реле включается или выключается в зависимости от уровня влажности почвы. Измените Value или настройки Random для датчика влажности почвы, чтобы увидеть изменение значения.

    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.
    

💁 Вы можете найти этот код в папке code-relay/virtual-device.

😀 Ваше виртуальное приложение для управления реле на основе датчика влажности почвы успешно завершено!


Отказ от ответственности:
Этот документ был переведен с помощью сервиса автоматического перевода Co-op Translator. Хотя мы стремимся к точности, пожалуйста, учитывайте, что автоматические переводы могут содержать ошибки или неточности. Оригинальный документ на его исходном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется профессиональный перевод человеком. Мы не несем ответственности за любые недоразумения или неправильные интерпретации, возникшие в результате использования данного перевода.