農業 IoT 感測器管線

System ↔ System

IoT 感測器資料從邊緣端傳至雲端,含異常偵測與灌溉控制。

6 個節點 · 5 條連接agriculture
eventsystemapidb
視覺化
IoT 閘道器資料event

LoRaWAN 閘道器收集土壤濕度、溫度及濕度讀數。

sequential邊緣運算處理
邊緣運算處理system

在田間邊緣節點進行本地彙整、過濾及壓縮。

sequential雲端資料擷取
雲端資料擷取api

透過 HTTPS POST 傳送至雲端 IoT 平台 (AWS IoT Core / Azure IoT Hub)。

sequential異常偵測
parallel農民儀表板
異常偵測system

統計模型標記超出 3 個標準差的讀數或感測器故障。

conditional灌溉控制器
灌溉控制器api

向滴灌系統發送閥門開啟/關閉指令。

農民儀表板db

將處理後的資料寫入時間序列資料庫,供行動裝置儀表板使用。

uc-iot-sensor-pipeline.osop.yaml
osop_version: "1.0"
id: "iot-sensor-pipeline"
name:"農業 IoT 感測器管線"
description:"IoT 感測器資料從邊緣端傳至雲端,含異常偵測與灌溉控制。"

nodes:
  - id: "iot_gateway"
    type: "event"
    name: "IoT 閘道器資料"
    description: "LoRaWAN 閘道器收集土壤濕度、溫度及濕度讀數。"

  - id: "edge_process"
    type: "system"
    name: "邊緣運算處理"
    description: "在田間邊緣節點進行本地彙整、過濾及壓縮。"
    timeout_sec: 5

  - id: "cloud_ingest"
    type: "api"
    subtype: "rest"
    name: "雲端資料擷取"
    description: "透過 HTTPS POST 傳送至雲端 IoT 平台 (AWS IoT Core / Azure IoT Hub)。"
    retry_policy:
      max_attempts: 3
      backoff: "exponential"
    timeout_sec: 30

  - id: "anomaly_detect"
    type: "system"
    name: "異常偵測"
    description: "統計模型標記超出 3 個標準差的讀數或感測器故障。"

  - id: "irrigation_ctrl"
    type: "api"
    name: "灌溉控制器"
    description: "向滴灌系統發送閥門開啟/關閉指令。"
    security:
      risk_level: "medium"

  - id: "farmer_dashboard"
    type: "db"
    name: "農民儀表板"
    description: "將處理後的資料寫入時間序列資料庫,供行動裝置儀表板使用。"

edges:
  - from: "iot_gateway"
    to: "edge_process"
    mode: "sequential"
  - from: "edge_process"
    to: "cloud_ingest"
    mode: "sequential"
  - from: "cloud_ingest"
    to: "anomaly_detect"
    mode: "sequential"
  - from: "cloud_ingest"
    to: "farmer_dashboard"
    mode: "parallel"
  - from: "anomaly_detect"
    to: "irrigation_ctrl"
    mode: "conditional"
    when: "soil_moisture < threshold_low"