Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Умная теплица IoT на Arduino и Azure: датчики, автополив и удалённый контроль

Компоненты и материалы

Программное обеспечение и облачные сервисы

Архитектура решения

Arduino + Helium Atom → (LoRaWAN) → Helium Element (Access Point) → Helium Hub → (MQTT/HTTPS) → Azure IoT Hub → Event Hub → Azure Function (C#) → Azure SQL. Обратный путь: HTTP-trigger Function → мобильное приложение / Alexa.

Вся инфраструктура — serverless, код только на Arduino и в Azure Functions.

Пошаговая настройка

1. Регистрация в Helium Network

2. Подключение датчиков к Arduino

Base Shield на UNO → Grove-модули: Temperature (I2C), Moisture (A0), UV Light (A1), Relay (D5), OLED (I2C). Helium Atom на Breakout → Serial1 (Hardware Serial).

3. Настройка Azure IoT Hub

  1. Создайте IoT Hub (Standard/Free tier).
  2. Shared Access Policies → RegistryReadWrite → Connection String (Primary Key).
  3. Создайте устройство (Device ID).

4. Связь Helium Hub ↔ Azure IoT Hub

5. Azure SQL Database

6. Azure Function App (Event Hub Trigger → SQL Insert)

// C# Function: вставка телеметрии в SQL
public static async Task Run(string myIoTHubMessage, TraceWriter log) {
  var map = myIoTHubMessage.Split('&').Select(x => x.Split('='))
             .ToDictionary(x => x[0], x => x[1]);
  string Temp = map["Temperature"];
  string Hum = map["Humidity"];
  string Moist = map["Moisture"];
  string UV = map["UVLight"];

  var str = ConfigurationManager.ConnectionStrings["sqldb_connection"].ConnectionString;
  using (var conn = new SqlConnection(str)) {
    conn.Open();
    var sql = "INSERT INTO dbo.SmartPlant (Temperature, Humidity, Moisture, UVLight) VALUES (" +
              Temp + ", " + Hum + ", " + Moist + ", " + UV + ");";
    using (var cmd = new SqlCommand(sql, conn)) {
      var rows = await cmd.ExecuteNonQueryAsync();
      log.Info($"{rows} rows inserted");
    }
  }
}

7. Azure Function (HTTP Trigger → GET последних данных)

// C# Function: чтение последних 100 записей для мобильного приложения
public static async Task<HttpResponseMessage> Run(HttpRequestMessage req, TraceWriter log) {
  var str = ConfigurationManager.ConnectionStrings["sqldb_connection"].ConnectionString;
  using (var conn = new SqlConnection(str)) {
    conn.Open();
    var sql = "SELECT TOP 100 Temperature, Moisture, UVLight, Humidity FROM dbo.SmartPlant ORDER BY DateCreated DESC";
    using (var cmd = new SqlCommand(sql, conn)) {
      var reader = await cmd.ExecuteReaderAsync();
      // сериализация в JSON...
    }
  }
}

8. Arduino-скетч (основной цикл)


// Основные действия каждые 60 сек:
// 1. Чтение датчиков (усреднение 32 отсчёта)
// 2. Отправка строки "Moisture=X&UVLight=Y&Temperature=Z&Humidity=W" в Helium Channel
// 3. Отображение на OLED
// 4. Автополив: если Moisture < 100 → Relay ON 5 сек → OFF

Полный код доступен в репозитории: GitHub.

9. Мобильное приложение / UI

Простое Android-приложение опрашивает HTTP Function каждые 60 сек, показывает 4 параметра и кнопку ручного полива.

Дополнительно: Alexa Integration

Голосовое управление поливом и запрос состояния через Alexa Skill, связанный с HTTP Function.

Схема Helium → Azure

Умная теплица IoT на Arduino и Azure: датчики, автополив и удалённый контроль

Производственный процесс

  1. Умные данные: навигация по следующей границе IoT и Big Data
  2. Умное мусорное ведро: клеточное IoT-решение для автоматизированного управления отходами
  3. Умный бармен: создайте свою Raspberry Pi-станцию для коктейлей
  4. GE Appliances открыл умный холодильный завод Индустрии 4.0 в Декатуре, Алабама
  5. Умные больницы будущего: Критическая роль интеллектуального ПО
  6. Как умные города используют IoT, микросервисы и дашборды для эффективного управления активами
  7. Максимизация ROI от IoT-инвестиций: практическое руководство
  8. Создание оптимизированного умного склада на базе надежной IoT-экосистемы
  9. Защитите свои умные устройства: лучшие практики безопасности IoT
  10. Исследование передовых IoT-инноваций и реальных применений