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/uk/2-farm/lessons/1-predict-plant-growth/single-board-computer-temp-...

5.5 KiB

Публікація температури - Віртуальне IoT обладнання та Raspberry Pi

У цій частині уроку ви опублікуєте значення температури, зафіксовані Raspberry Pi або Віртуальним IoT пристроєм через MQTT, щоб їх можна було використати пізніше для розрахунку GDD.

Публікація температури

Після того, як температура була зчитана, її можна опублікувати через MQTT у код "сервера", який зчитуватиме значення та зберігатиме їх для подальшого використання у розрахунку GDD.

Завдання - опублікувати температуру

Програмуйте пристрій для публікації даних про температуру.

  1. Відкрийте проєкт додатка temperature-sensor, якщо він ще не відкритий.

  2. Повторіть кроки, які ви виконували в уроці 4, щоб підключитися до MQTT і надіслати телеметрію. Ви будете використовувати той самий публічний брокер Mosquitto.

    Кроки для цього:

    • Додайте пакет pip для MQTT
    • Додайте код для підключення до брокера MQTT
    • Додайте код для публікації телеметрії

    ⚠️ Зверніться до інструкцій щодо підключення до MQTT та інструкцій щодо надсилання телеметрії з уроку 4, якщо це необхідно.

  3. Переконайтеся, що client_name відображає назву цього проєкту:

    client_name = id + 'temperature_sensor_client'
    
  4. Для телеметрії, замість надсилання значення освітлення, надішліть значення температури, зчитане з датчика DHT, у властивості JSON-документа під назвою temperature:

    _, temp = sensor.read()
    telemetry = json.dumps({'temperature' : temp})
    
  5. Значення температури не потрібно зчитувати дуже часто — воно не змінюється значно за короткий проміжок часу, тому встановіть time.sleep на 10 хвилин:

    time.sleep(10 * 60);
    

    💁 Функція sleep приймає час у секундах, тому для зручності читання значення передається як результат обчислення. 60 секунд у хвилині, тому 10 x (60 секунд у хвилині) дає затримку в 10 хвилин.

  6. Запустіть код так само, як ви запускали код із попередньої частини завдання. Якщо ви використовуєте віртуальний IoT пристрій, переконайтеся, що додаток CounterFit запущений, а датчики вологості та температури створені на правильних пінах.

    pi@raspberrypi:~/temperature-sensor $ python3 app.py
    MQTT connected!
    Sending telemetry  {"temperature": 25}
    Sending telemetry  {"temperature": 25}
    

💁 Ви можете знайти цей код у папці code-publish-temperature/virtual-device або code-publish-temperature/pi.

😀 Ви успішно опублікували температуру як телеметрію з вашого пристрою.


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