移至主內容

 🔍 全台最大壓力錶・溫度計・壓差計權威知識庫|HVAC・半導體・冷凍空調專家選型指南・完整技術資料・工業儀表監測教學平台 

台灣工業儀表領域少數長期深耕技術內容的平台,累積超過 2,400篇壓力錶、壓差計、溫度計選型、校正與製程應用深度文章,由資深工程師團隊持續更新

 
 

工業溫度計與壓力錶 AWS IoT 智慧監控平台完整指南|實時異常檢測、成本優化、數據驅動管理

昶特 ATLANTIS IoT 數據平台搭配 AWS 服務,為工業設施提供工業溫度計壓力錶的實時監控、異常檢測與可視化分析解決方案。本指南涵蓋系統架構、選型指引、部署方案、程式碼範例,以及真實案例的 ROI 計算,助您快速評估與導入。

前言:為什麼需要 IoT 智慧監控平台?

在傳統製造業、能源管理、環保監控領域,工業溫度計壓力錶是生產控制與安全防護的核心。然而,大多數企業仍採用:

  • 人工定時抄錶 — 耗時、易錯、無法即時預警
  • 單機監控 — 數據孤島、無法整合分析
  • 事後維護 — 設備故障才發現,成本高昂

昶特 ATLANTIS 與 AWS IoT 的結合,將您的傳統儀表轉變為智慧監控生態

🎯 核心價值主張

實時異常檢測 — 異常狀態秒級預警,減少停機損失

成本優化 — 自動化數據收集,節省人工 70-80%

可視化分析 — 直觀儀表板,趨勢圖表,決策數據

預測維護 — 基於歷史數據,提前發現隱患

雲端擴展性 — AWS 基礎設施,支援無限監測點

據台灣製造業聯誼會 2024 年調查,導入 IoT 監控的企業:

  • 設備故障率 下降 60-75%
  • 能源成本 節省 12-18%
  • 生產效率 提升 8-15%
  • 平均投資回本週期 12-18 個月

第 1 章:IoT 監控系統架構與核心功能解析

1.1 端到端系統架構

昶特 ATLANTIS IoT 數據平台建立在以下分層架構上:

📊 四層架構模型

第 1 層 - 感知層(Edge Devices)

工業溫度計、壓力錶、相對濕度計等傳感器設備,集成 Modbus、4-20mA 信號轉換器或直接 IoT 連接模組。支援有線(RS-485、Ethernet)與無線(LoRaWAN、NB-IoT)連接方式。

第 2 層 - 邊緣層(Gateway & Edge Computing)

IoT 網關設備負責本地數據收集、初步處理、異常判斷,減輕雲端負擔。支援斷網工作模式,數據本地緩存。

第 3 層 - 雲端層(AWS IoT & Data Pipeline)

AWS IoT Core 接收數據,Lambda 函數進行實時處理,DynamoDB 存儲時序數據,S3 用於歷史存檔。

第 4 層 - 應用層(Dashboard & Analytics)

Web 與移動端應用,提供實時儀表板、趨勢分析、報表生成、告警管理。集成第三方 BI 工具(如 Tableau、Power BI)。

此架構優勢包括:

  • 低延遲 — 邊緣計算減少雲端依賴
  • 高可靠 — 多層備份,故障自動轉移
  • 易擴展 — 模組化設計,新增監測點零成本
  • 成本優化 — 邊緣過濾減少數據傳輸 40-60%

1.2 核心功能模塊詳解

🔴 異常檢測引擎

基於機器學習的異常檢測,支援三種模式:

  • 靜態閾值檢測 — 溫度 > 85°C 即告警
  • 動態多元分析 — 結合溫度、壓力、時間段的組合異常判斷
  • 趨勢預測 — 基於歷史數據預測 4-12 小時內的異常

📈 可視化分析模組

提供以下顯示方式:

  • 實時儀表板(gauge、折線圖、直方圖)
  • 多維度交叉分析(按時間、地點、設備分組)
  • 自動生成報表(日、週、月、年)
  • 數據導出(CSV、Excel、PDF)

🔔 智慧告警系統

多級别、多渠道通知機制:

  • Lv.1 - 警示(黃色):24 小時內需要檢查
  • Lv.2 - 警告(橙色):需要立即檢查,可能影響運營
  • Lv.3 - 緊急(紅色):立即停止操作,安全風險
  • 通知方式:App Push、Email、SMS、Line、Slack 整合

第 2 章:實際應用場景與尖峰負荷分析

2.1 典型應用場景

場景 1:製造業 - 射出成型工廠

監測點:32 台成型機的模具溫度、液壓壓力、冷卻水溫

痛點:模具溫度波動導致成品不良率 8-12%、人工檢查 4 小時/班

解決方案:即時監控模具溫度 ±2°C,異常時自動調整冷卻系統,將不良率降至 1-2%

效益:年度節省(成品報廢 + 人工)約 NT$450,000

場景 2:能源管理 - 熱水鍋爐系統

監測點:鍋爐進出水溫、蒸汽壓力、回水溫度

痛點:燃料浪費 15-20%、高峰期壓力波動造成故障 2-3 次/月

解決方案:預測性維護、燃料消耗最佳化、壓力智慧調節

效益:燃料成本下降 12-15%,故障率下降 85%

場景 3:環保監控 - 污水處理廠

監測點:16 個池體溫度、曝氣壓力、進出口流量

痛點:微生物活性對溫度敏感,人工監測困難

解決方案:溫度區間自動控制、壓力動態調整、處理效能最佳化

效益:處理效率提升 18-22%,能耗下降 20%

2.2 尖峰負荷分析表

時間段監測點數平均數據頻率尖峰值異常發生率系統負荷
日間 06:00-18:00(高峰)481 次/1 分鐘48 條/分2-3%
夜間 18:00-22:00(中峰)321 次/2 分鐘16 條/分0.5-1%
深夜 22:00-06:00(低峰)161 次/5 分鐘3.2 條/分0.1%

數據量分析:

  • 日均數據產生:約 69,120 條(48 個點 × 24 小時 × 平均 60 秒間隔)
  • 月均存儲需求:約 2.1 GB(壓縮後)
  • AWS 費用估算:約 NT$800-1,200/月(含存儲、計算、傳輸)

第 3 章:工業溫度計與壓力錶完整選型指南

3.1 工業溫度計選型表

產品型號測量範圍精度等級輸出方式連接方式應用場景
ATLANTIS TM-01-20 ~ 100°C±1.5°C4-20mA2 線/3 線冷卻水、低溫環境
ATLANTIS TM-020 ~ 150°C±1°C4-20mA + RS-485M12 連接器工業製程、烘烤爐
ATLANTIS TM-030 ~ 200°C±0.5°CRS-485IP67 防水高溫炉、蒸汽管線
ATLANTIS TM-04-50 ~ 250°C±1°C數位輸出(Modbus)M12 A-Code冷凍系統、熱處理
ATLANTIS TM-05(防爆)-20 ~ 150°C±1.5°C4-20mAATEX 認證危險區域、化工廠

3.2 壓力錶(壓力傳感器)選型表

產品型號測量範圍(bar)精度等級輸出方式防護等級應用場景
ATLANTIS PM-010 ~ 10 bar±0.5% FS4-20mAIP65液壓系統、空壓機
ATLANTIS PM-020 ~ 25 bar±0.4% FS4-20mA + RS-485IP67冷卻水循環、製程壓力
ATLANTIS PM-03-1 ~ 60 bar±0.3% FS0-10V DCIP67洗滌系統、高壓清潔
ATLANTIS PM-040 ~ 100 bar±0.2% FSModbus RS-485IP67高精度工業應用
ATLANTIS PM-05(防爆)0 ~ 35 bar±0.5% FS4-20mAATEX II 2G石油化工、易燃環境
ATLANTIS PM-06(差壓)0 ~ 5 bar(差壓)±0.5% FS4-20mAIP65過濾器監測、風量檢測

3.3 配置成本估算表(基礎方案)

設備/組件單位數量單位成本小計
工業溫度計(ATLANTIS TM-02)8報價制報價制
壓力錶(ATLANTIS PM-02)8報價制報價制
IoT 網關設備2報價制報價制
安裝與配線1報價制報價制
軟體授權(第 1 年)1報價制報價制
總計 報價制

💡 選型建議:

根據應用場景、預算、精度需求,推薦以下配置組合:

  • 經濟型 — 溫度 TM-01 + 壓力 PM-01,適合初期試點或低精度應用
  • 標準型 — 溫度 TM-02 + 壓力 PM-02,適合大多數製造業應用
  • 高精度型 — 溫度 TM-03 + 壓力 PM-04,適合精密製造、制藥
  • 防爆型 — TM-05 + PM-05,適合危險區域(ATEX 認證)

第 4 章:昶特 ATLANTIS IoT 數據平台完整方案

4.1 為什麼選擇昶特 ATLANTIS?

🏆 31 年工業儀表製造經驗

昶特自 1993 年成立,專注於工業溫度計、壓力錶等感測儀表的研發與製造。產品廣泛應用於台灣製造業、石化、能源等關鍵領域,信任度與可靠性獲得業界公認。

4.2 核心產品與特性

產品 1:ATLANTIS IoT 數據收集模組

將傳統模擬信號(4-20mA、0-10V)轉換為數位信號,支援:

  • 16 路通道獨立採集
  • 每秒 100+ 筆數據處理能力
  • 本地 SD 卡 32GB 存儲(斷網自動緩存)
  • Ethernet、WiFi、LTE 多模連接
  • IP65 防護,工業級可靠性
ATLANTIS IoT 網關模組

圖 1:ATLANTIS IoT 數據收集網關 — 支持多通道模擬信號數位化與實時邊緣處理

產品 2:ATLANTIS 智慧監控軟體(雲端版)

基於 AWS 雲平台的全功能監控應用,特性包括:

  • 實時儀表板 — 即時顯示所有監測點狀態、趨勢圖表
  • 多層告警 — 靜態閾值、動態異常、趨勢預測三種檢測方式
  • 數據分析 — 跨時間段、跨設備的對比分析與統計報表
  • 移動應用 — iOS/Android App,隨時隨地監控
  • API 開放 — REST API 支援第三方應用整合
ATLANTIS IoT 智慧監控儀表板

圖 2:ATLANTIS 監控儀表板 — 實時數據、異常告警、趨勢分析一覽無遺

4.3 昶特方案 vs 競品對比

功能特性昶特 ATLANTIS進口品牌 A進口品牌 B
硬體成本中等高(30% 以上)最高(50% 以上)
本地化支援優秀普通較差
安裝週期1-2 週2-3 週3-4 週
技術支援台灣在地團隊,24/7代理商轉接,非 24/7需英文溝通,時差
客製化高度客製化支援有限極有限
總體成本(5 年)基準(100%)125-135%155-180%

4.4 部署方案

方案 A:快速導入版(1-2 週)

  • 8 支溫度計 + 8 支壓力錶
  • 1 台 IoT 網關
  • 雲端監控軟體(年度授權)
  • 基礎安裝與調試
  • 投資回本週期:16-20 個月

方案 B:完整監控版(3-4 週)

  • 24 支溫度計 + 24 支壓力錶
  • 3 台 IoT 網關(容災備份)
  • 進階監控軟體(含 AI 異常檢測)
  • 移動應用部署
  • 完整安裝、調試、員工培訓
  • 投資回本週期:12-15 個月

方案 C:企業級解決方案(5-6 週)

  • 48+ 監測點(儀表、感測器任意組合)
  • 多網關冗余架構(N+1 容錯設計)
  • 企業級軟體授權(多用戶、多角色)
  • 進階分析(ML 模型、預測維護)
  • 專業安裝、調試、培訓、定期維護
  • 投資回本週期:8-12 個月

第 5 章:真實案例研究與投資回報率分析

案例 1:北台灣射出成型廠

背景情況

公司規模:32 台成型機,日產 8,000 件,員工 65 人

主要痛點:

  • 模具溫度控制不精準(偏差 ±3-5°C),成品不良率 8-12%
  • 人工檢查成型機狀態(每班 4 小時),易遺漏異常
  • 故障停機時間長(平均 1.5 小時/月),年度損失約 NT$180,000
  • 能源浪費嚴重,冷卻水溫無法優化

實施方案

部署昶特方案 B(24 支 TM-02 溫度計 + 8 支 PM-02 壓力錶),監控 32 台成型機的模具溫度、液壓壓力、冷卻水溫。

導入成效(6 個月後)

指標導入前導入後改善幅度年度效益
成品不良率8-12%1-2%↓ 75-87%NT$240,000
人工檢查時間4 小時/班0.5 小時/班↓ 87.5%NT$156,000
故障停機次數2-3 次/月0.3 次/月↓ 85%NT$144,000
冷卻水用量基準 100%基準 82%↓ 18%NT$72,000
年度總效益 NT$612,000

投資回報計算

總投資:NT$380,000(硬體、軟體、安裝)

年度效益:NT$612,000

投資回本週期:7.4 個月

三年累計效益:NT$1,436,000(投資淨效益 NT$1,056,000)

✅ 客戶評語:「導入昶特系統後,不只降低成本,更重要的是生產品質穩定了。我們現在可以放心去做訂單,不用每天擔心品質問題。」— 廠長 A

案例 2:台中飯店冰水主機系統

背景情況

設施規模:250 間客房,冷卻塔 4 台,冰水主機 2 台,日均用電 1,200 度

主要痛點:

  • 冷卻水溫控制困難,導致冷房效果不穩定(客訴 3-5 件/週)
  • 空調主機運行效率低(EER 2.8),年度電費 NT$420,000
  • 人工巡檢無法即時發現異常,有過多次緊急維修(年度 8-10 次,每次費用 NT$15,000-30,000)

實施方案

部署昶特方案 B(冷卻塔 + 冰水主機溫度、壓力、流量完整監控),並與飯店中央空調自控系統 (BMS) 整合。

導入成效(9 個月後)

指標導入前導入後改善幅度年度效益
冷房溫度穩定度±2~3°C±0.5°C↑ 穩定性提升 90%NT$80,000(減少客訴)
空調主機 EER2.83.5↑ 25%NT$105,000(電費節省)
緊急維修次數8-10 次/年1-2 次/年↓ 80-90%NT$120,000
人工檢查工時每日 2 小時每日 0.25 小時↓ 87.5%NT$52,000
年度總效益 NT$357,000

投資回報計算

總投資:NT$240,000

年度效益:NT$357,000

投資回本週期:8.1 個月

三年累計效益:NT$831,000(投資淨效益 NT$591,000)

第 6 章:AWS IoT 整合程式碼範例

⚠️ 重要提示:昶特 ATLANTIS 不提供 AWS 雲服務本身,但提供儀表設備、網關硬體與監控軟體框架。客戶需自行或聘請 AWS 認證合作夥伴負責 AWS IoT 服務配置、Lambda 函數部署、數據處理管道設計等。以下程式碼僅供參考,實務上應根據貴公司的網路環境、安全政策、資料保留需求進行客製化調整。

6.1 Python 設備端範例(MQTT 連接 AWS IoT Core)

此示例展示如何從昶特 IoT 網關讀取溫度、壓力數據,並通過 MQTT 發布至 AWS IoT Core。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
昶特 ATLANTIS IoT 網關 — AWS IoT Core MQTT 發布器
作用:每分鐘從本地網關收集溫度、壓力數據,通過 MQTT 發送至 AWS IoT Core
"""

import json
import time
import logging
from datetime import datetime
from awsiot import aws_iot_mqtt_client_builder

# 配置日誌
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)

# AWS IoT 認證參數(需替換為實際值)
ENDPOINT = "xxxxxxxxxx.iot.ap-northeast-1.amazonaws.com"
CLIENT_ID = "atlantis-gateway-001"
PATH_TO_CERT = "/path/to/device-cert.pem.crt"
PATH_TO_KEY = "/path/to/device-key.pem.key"
PATH_TO_ROOT_CA = "/path/to/AmazonRootCA1.pem"
THING_NAME = "atlantis-factory-monitor"

# MQTT 主題設定
TEMPERATURE_TOPIC = f"factory/sensors/temperature"
PRESSURE_TOPIC = f"factory/sensors/pressure"
STATUS_TOPIC = f"factory/gateway/status"

def build_mqtt_client():
    """建立 AWS IoT MQTT 客戶端"""
    mqtt_client = aws_iot_mqtt_client_builder.MqttClientBuilder()\
        .with_endpoint(ENDPOINT)\
        .with_client_id(CLIENT_ID)\
        .with_cert_credentials_provider(
            certificate_path=PATH_TO_CERT,
            private_key_path=PATH_TO_KEY,
            ca_cert_path=PATH_TO_ROOT_CA
        )\
        .with_conn_ack_callback(on_connection_interrupted)\
        .with_on_message_received_callback(on_message_received)\
        .build()
    return mqtt_client

def read_sensor_data():
    """
    從昶特 IoT 網關讀取感測數據
    實務上,此函數應連接到網關的本地 API 或 Modbus/TCP
    """
    # 示例數據(實務上應從硬體讀取)
    sensors_data = {
        "gateway_id": "atlantis-gw-001",
        "timestamp": datetime.utcnow().isoformat() + "Z",
        "temperature": [
            {"sensor_id": "TM-001", "value": 45.2, "unit": "°C"},
            {"sensor_id": "TM-002", "value": 38.5, "unit": "°C"},
            {"sensor_id": "TM-003", "value": 52.1, "unit": "°C"},
        ],
        "pressure": [
            {"sensor_id": "PM-001", "value": 6.8, "unit": "bar"},
            {"sensor_id": "PM-002", "value": 5.2, "unit": "bar"},
            {"sensor_id": "PM-003", "value": 7.5, "unit": "bar"},
        ]
    }
    return sensors_data

def publish_to_aws(mqtt_client, data):
    """發布數據至 AWS IoT Core"""
    try:
        # 發布溫度數據
        for temp_sensor in data["temperature"]:
            temp_payload = {
                "sensor_id": temp_sensor["sensor_id"],
                "timestamp": data["timestamp"],
                "value": temp_sensor["value"],
                "unit": temp_sensor["unit"]
            }
            mqtt_client.publish(
                topic=TEMPERATURE_TOPIC,
                qos=1,
                payload=json.dumps(temp_payload)
            )
            logger.info(f"發布溫度: {temp_sensor['sensor_id']} = {temp_sensor['value']}°C")

        # 發布壓力數據
        for pressure_sensor in data["pressure"]:
            pressure_payload = {
                "sensor_id": pressure_sensor["sensor_id"],
                "timestamp": data["timestamp"],
                "value": pressure_sensor["value"],
                "unit": pressure_sensor["unit"]
            }
            mqtt_client.publish(
                topic=PRESSURE_TOPIC,
                qos=1,
                payload=json.dumps(pressure_payload)
            )
            logger.info(f"發布壓力: {pressure_sensor['sensor_id']} = {pressure_sensor['value']} bar")

        # 發布網關狀態
        status_payload = {
            "gateway_id": data["gateway_id"],
            "timestamp": data["timestamp"],
            "status": "online",
            "temperature_count": len(data["temperature"]),
            "pressure_count": len(data["pressure"])
        }
        mqtt_client.publish(
            topic=STATUS_TOPIC,
            qos=1,
            payload=json.dumps(status_payload)
        )
        logger.info("網關狀態已發布")

    except Exception as e:
        logger.error(f"發布失敗: {str(e)}")

def on_connection_interrupted(connection, error, **kwargs):
    """MQTT 連線中斷處理"""
    logger.warning(f"MQTT 連線中斷: {error}")

def on_message_received(topic, payload, **kwargs):
    """接收 AWS 下行命令"""
    logger.info(f"收到命令 [{topic}]: {payload.decode('utf-8')}")

def main():
    """主程序"""
    logger.info("昶特 ATLANTIS - AWS IoT 連接器啟動")

    # 建立 MQTT 客戶端
    mqtt_client = build_mqtt_client()
    mqtt_client.connect()

    logger.info("已連接至 AWS IoT Core")

    # 訂閱下行命令主題(可選)
    # mqtt_client.subscribe(topic="factory/commands/#", qos=1, callback=on_message_received)

    # 主循環:每分鐘讀取並發布一次數據
    try:
        while True:
            data = read_sensor_data()
            publish_to_aws(mqtt_client, data)
            logger.info(f"下次更新時間: {time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time() + 60))}")
            time.sleep(60)  # 每 60 秒更新一次
    except KeyboardInterrupt:
        logger.info("程式終止")
    finally:
        mqtt_client.disconnect()

if __name__ == "__main__":
    main()

6.2 AWS Lambda 函數範例(異常檢測)

此 Lambda 函數接收 MQTT 消息,進行簡單的異常檢測,若超出閾值則發送告警。

import json
import boto3
import logging
from datetime import datetime

# 初始化 AWS 服務
dynamodb = boto3.resource('dynamodb')
sns = boto3.client('sns')
cloudwatch = boto3.client('cloudwatch')

# DynamoDB 表格
sensor_data_table = dynamodb.Table('AtlantisTemperaturePressureData')
alert_table = dynamodb.Table('AtlantisAlerts')

logger = logging.getLogger()
logger.setLevel(logging.INFO)

# 異常檢測閾值
THRESHOLDS = {
    "TM-001": {"min": 35, "max": 55},  # 溫度計 TM-001: 35-55°C
    "TM-002": {"min": 30, "max": 50},  # 溫度計 TM-002: 30-50°C
    "TM-003": {"min": 40, "max": 60},  # 溫度計 TM-003: 40-60°C
    "PM-001": {"min": 5, "max": 8},    # 壓力錶 PM-001: 5-8 bar
    "PM-002": {"min": 4, "max": 7},    # 壓力錶 PM-002: 4-7 bar
    "PM-003": {"min": 6, "max": 9},    # 壓力錶 PM-003: 6-9 bar
}

# SNS 主題 ARN(用於發送通知)
SNS_TOPIC_ARN = "arn:aws:sns:ap-northeast-1:123456789:atlantis-alerts"

def detect_anomaly(sensor_id, value):
    """
    檢測異常
    回傳: (is_anomaly, anomaly_type)
    - anomaly_type: 'normal', 'high', 'low', 'unknown_sensor'
    """
    if sensor_id not in THRESHOLDS:
        return True, "unknown_sensor"

    threshold = THRESHOLDS[sensor_id]

    if value > threshold["max"]:
        return True, "high"
    elif value < threshold["min"]:
        return True, "low"
    else:
        return False, "normal"

def send_alert(sensor_id, value, anomaly_type, unit):
    """發送告警"""
    timestamp = datetime.utcnow().isoformat() + "Z"

    # 1. 保存至 DynamoDB
    alert_record = {
        "alert_id": f"{sensor_id}#{timestamp}",
        "sensor_id": sensor_id,
        "value": value,
        "anomaly_type": anomaly_type,
        "unit": unit,
        "timestamp": timestamp,
        "status": "unread"
    }
    alert_table.put_item(Item=alert_record)

    # 2. 發送 SNS 通知
    message = f"""
異常告警 - 昶特 ATLANTIS 監控系統

感測器: {sensor_id}
值: {value} {unit}
異常類型: {anomaly_type}
時間: {timestamp}

請立即檢查設備狀況!
監控平台: https://dashboard.atlantis.iot/alerts
    """

    try:
        sns.publish(
            TopicArn=SNS_TOPIC_ARN,
            Subject=f"⚠️ 異常告警: {sensor_id}",
            Message=message
        )
        logger.info(f"告警已發送: {sensor_id}")
    except Exception as e:
        logger.error(f"告警發送失敗: {str(e)}")

    # 3. 發送 CloudWatch 指標
    cloudwatch.put_metric_data(
        Namespace='AtlantisMonitoring',
        MetricData=[
            {
                'MetricName': 'AnomalyCount',
                'Value': 1,
                'Unit': 'Count',
                'Dimensions': [
                    {'Name': 'SensorID', 'Value': sensor_id},
                    {'Name': 'AnomalyType', 'Value': anomaly_type}
                ]
            }
        ]
    )

def save_sensor_data(sensor_id, value, unit, timestamp):
    """保存感測數據至 DynamoDB"""
    try:
        sensor_data_table.put_item(
            Item={
                "sensor_id#timestamp": f"{sensor_id}#{timestamp}",
                "sensor_id": sensor_id,
                "value": value,
                "unit": unit,
                "timestamp": timestamp,
                "ttl": int(datetime.utcnow().timestamp()) + (90 * 24 * 3600)  # 90 天後過期
            }
        )
        logger.info(f"數據已保存: {sensor_id} = {value}")
    except Exception as e:
        logger.error(f"數據保存失敗: {str(e)}")

def lambda_handler(event, context):
    """
    Lambda 入口函數

    事件格式:
    {
        "sensor_id": "TM-001",
        "timestamp": "2024-01-15T10:30:45Z",
        "value": 58.5,
        "unit": "°C"
    }
    """
    try:
        sensor_id = event.get('sensor_id')
        value = event.get('value')
        unit = event.get('unit')
        timestamp = event.get('timestamp', datetime.utcnow().isoformat() + "Z")

        logger.info(f"處理數據: {sensor_id} = {value} {unit}")

        # 1. 保存數據
        save_sensor_data(sensor_id, value, unit, timestamp)

        # 2. 異常檢測
        is_anomaly, anomaly_type = detect_anomaly(sensor_id, value)

        # 3. 如果異常,發送告警
        if is_anomaly:
            logger.warning(f"異常檢測: {sensor_id} = {value} ({anomaly_type})")
            send_alert(sensor_id, value, anomaly_type, unit)

        # 4. 返回響應
        return {
            'statusCode': 200,
            'body': json.dumps({
                'message': 'Data processed',
                'sensor_id': sensor_id,
                'is_anomaly': is_anomaly,
                'anomaly_type': anomaly_type
            })
        }

    except Exception as e:
        logger.error(f"Lambda 執行失敗: {str(e)}")
        return {
            'statusCode': 500,
            'body': json.dumps({'error': str(e)})
        }

6.3 JSON 設備配置檔案

以下示例展示昶特 IoT 網關的配置檔案格式,定義所有連接的感測器、告警閾值、資料發送頻率等。

{
  "gateway": {
    "id": "atlantis-gw-001",
    "name": "工廠 A 監控網關",
    "location": "台北市北投區致遠一路二段 109 號",
    "version": "1.2.3",
    "connection": {
      "type": "ethernet",
      "ip": "192.168.1.100",
      "gateway": "192.168.1.1",
      "dns": ["8.8.8.8", "8.8.4.4"]
    },
    "mqtt": {
      "broker": "xxxxxxxxxx.iot.ap-northeast-1.amazonaws.com",
      "port": 8883,
      "protocol": "mqtts",
      "client_id": "atlantis-gateway-001",
      "keep_alive": 60,
      "publish_interval": 60
    }
  },
  "sensors": {
    "temperature": [
      {
        "channel": 1,
        "sensor_id": "TM-001",
        "name": "射出機 #1 模具溫度",
        "type": "ATLANTIS TM-02",
        "input_type": "4-20mA",
        "min_range": 0,
        "max_range": 150,
        "unit": "°C",
        "decimals": 1,
        "enabled": true,
        "alert": {
          "enabled": true,
          "threshold_min": 35,
          "threshold_max": 55,
          "threshold_delta": 2.0,
          "alert_level_low": "warning",
          "alert_level_high": "critical"
        }
      },
      {
        "channel": 2,
        "sensor_id": "TM-002",
        "name": "射出機 #2 模具溫度",
        "type": "ATLANTIS TM-02",
        "input_type": "4-20mA",
        "min_range": 0,
        "max_range": 150,
        "unit": "°C",
        "decimals": 1,
        "enabled": true,
        "alert": {
          "enabled": true,
          "threshold_min": 30,
          "threshold_max": 50,
          "threshold_delta": 2.0,
          "alert_level_low": "warning",
          "alert_level_high": "critical"
        }
      },
      {
        "channel": 3,
        "sensor_id": "TM-003",
        "name": "冷卻水進水溫度",
        "type": "ATLANTIS TM-01",
        "input_type": "4-20mA",
        "min_range": -20,
        "max_range": 100,
        "unit": "°C",
        "decimals": 1,
        "enabled": true,
        "alert": {
          "enabled": true,
          "threshold_min": 15,
          "threshold_max": 25,
          "threshold_delta": 1.0,
          "alert_level_low": "info",
          "alert_level_high": "warning"
        }
      }
    ],
    "pressure": [
      {
        "channel": 9,
        "sensor_id": "PM-001",
        "name": "液壓系統壓力",
        "type": "ATLANTIS PM-02",
        "input_type": "4-20mA",
        "min_range": 0,
        "max_range": 25,
        "unit": "bar",
        "decimals": 2,
        "enabled": true,
        "alert": {
          "enabled": true,
          "threshold_min": 5,
          "threshold_max": 8,
          "threshold_delta": 0.3,
          "alert_level_low": "warning",
          "alert_level_high": "critical"
        }
      },
      {
        "channel": 10,
        "sensor_id": "PM-002",
        "name": "冷卻水循環壓力",
        "type": "ATLANTIS PM-01",
        "input_type": "4-20mA",
        "min_range": 0,
        "max_range": 10,
        "unit": "bar",
        "decimals": 2,
        "enabled": true,
        "alert": {
          "enabled": true,
          "threshold_min": 3,
          "threshold_max": 6,
          "threshold_delta": 0.2,
          "alert_level_low": "warning",
          "alert_level_high": "warning"
        }
      }
    ]
  },
  "notifications": {
    "email": {
      "enabled": true,
      "recipients": ["ops@factory-a.com", "manager@factory-a.com"],
      "alert_levels": ["critical", "warning"]
    },
    "sms": {
      "enabled": true,
      "recipients": ["+886912345678"],
      "alert_levels": ["critical"]
    },
    "webhook": {
      "enabled": true,
      "url": "https://api.factory-a.com/webhooks/alerts",
      "method": "POST",
      "timeout": 10
    }
  },
  "data_export": {
    "format": "csv",
    "retention_days": 90,
    "archive_to_s3": true,
    "s3_bucket": "atlantis-data-archive-ap-northeast-1"
  }
}

第 7 章:常見問題與解答

❓ Q1:昶特 ATLANTIS 與進口品牌最大的差異是什麼?

昶特 ATLANTIS 的核心優勢包括:

  • 成本低 30-50% — 本地製造,無進口關稅與代理費用
  • 在地支援 — 台灣團隊 24/7 技術支援,語言溝通無障礙
  • 客製化 — 根據台灣產業特性靈活調整規格與功能
  • 安裝快速 — 平均 1-2 週完成部署與調試
  • 31 年經驗 — 對台灣工業環境深入瞭解
❓ Q2:我需要自行購買 AWS 帳戶與服務嗎?

是的。昶特提供儀表設備、網關硬體與監控軟體框架,但 AWS IoT 服務(IoT Core、Lambda、DynamoDB、S3 等)需由客戶自行申請或委託 AWS 認證合作夥伴配置。

典型費用:AWS 服務每月約 NT$800-3,000(取決於數據量、存儲期間、實時查詢頻率)。

❓ Q3:溫度計與壓力錶的校正週期是多長?

根據工業標準(ISO 9001),建議:

  • 關鍵應用(精度 ±0.5%) — 每年校正 1 次
  • 標準應用(精度 ±1%) — 每 18 個月校正 1 次
  • 非關鍵應用(精度 ±1.5%) — 每 2 年校正 1 次

昶特提供校正服務(含原廠 NIST 溯源報告),費用約 NT$500-1,000/台/次。

❓ Q4:系統斷網時會發生什麼?

昶特 IoT 網關配備本地存儲(SD 卡 32GB),可離線工作並暫存數據。當連網恢復時,自動上傳積壓的數據至 AWS。此機制確保:

  • 無數據遺失
  • 異常警報仍在本地觸發
  • 數據完整性得到保證
❓ Q5:能不能與我們現有的 ERP/MES 系統整合?

可以。昶特軟體提供 REST API,支援與任何企業系統整合。常見整合包括:

  • ERP(SAP、鼎新、用友)— 生產成本追蹤
  • MES(生產管理系統)— 製程控制
  • BI 工具(Tableau、Power BI)— 數據分析與報表
  • CMMS(設備維護系統)— 預測維護觸發

昶特也可協助設計客製化整合方案。

❓ Q6:溫度計與壓力錶的防爆型號支援哪些區域等級?

昶特提供 ATEX II 2G Eb ib 認證產品,適用於:

  • 0 區 — 爆炸性環境連續或長期存在
  • 1 區 — 爆炸性環境偶爾存在
  • 2 區 — 爆炸性環境不太可能存在(異常時發生)

適用於石油化工、天然氣、化學品倉庫等危險場所。

❓ Q7:監控軟體能否支援超過 100 個監測點?

可以。昶特軟體採模組化設計,理論上支援無限監測點。實務上:

  • 單個網關 — 最多 64 個通道
  • 多網關部署 — 可擴展至 1,000+ 監測點
  • AWS 擴展性 — 無容量限制(取決於預算)
❓ Q8:如何確保數據安全與隱私?

昶特系統採用多重安全機制:

  • MQTT TLS 加密 — 所有傳輸在線路上加密
  • AWS IAM 身份驗證 — 設備簽章認證
  • DynamoDB 加密 — 靜止數據加密
  • 角色與權限 — 軟體內支援多用戶、多角色存取控制
  • 數據審計日誌 — 所有數據變更可追蹤
  • GDPR 合規 — 支援數據刪除與隱私保護
❓ Q9:實施過程中有哪些主要風險或陷阱?

常見風險與對策:

  • 網路頻寬不足 — 事前進行網路評估,必要時升級網線或 WiFi
  • 感測器安裝位置不當 — 昶特提供專業安裝諮詢
  • 人員不熟悉系統 — 提供完整培訓與文件
  • 期望不切實際 — 明確制定 KPI 與實施目標
  • AWS 費用超支 — 進行成本預估與優化建議
❓ Q10:能否支援 4-20mA 類比信號以外的其他輸入?

可以。昶特 IoT 網關支援多種輸入方式:

  • 4-20mA 電流信號
  • 0-10V 電壓信號
  • Modbus RTU(RS-485)
  • Modbus TCP(Ethernet)
  • OPC UA 協議
  • 脈衝/頻率輸入

客戶需說明現有儀表規格,昶特會推薦最適配的轉接方案。

❓ Q11:導入期間工廠需要停工嗎?

不需要。昶特提供以下實施策略:

  • 分階段部署 — 先在非關鍵設備測試,後期擴展
  • 並行運行 — 新舊監控系統並行,逐漸遷移
  • 夜間施工 — 在非生產時段安裝與調試
  • 快速切換 — 平均安裝時間 2-4 小時/監測點
❓ Q12:軟體授權如何計費?能否租賃而非購買?

昶特提供兩種授權模式:

  • 購買模式 — 一次性購買,享受永久使用與免費升級(2 年)
  • 訂閱模式 — 按月/年租賃,包括技術支援與持續更新

訂閱模式更適合中小企業,降低初期資本支出。具體報價請洽業務人員。

❓ Q13:如果購買後發現設計不合適,能否退貨或更換?

昶特提供完整退換政策:

  • 30 天試用期 — 如不滿意,全額退款(不含安裝費用)
  • 規格更改 — 安裝後 3 個月內可申請升級或降級
  • 故障保修 — 硬體 2 年保修,軟體持續更新
  • 升級方案 — 可隨時升級至更高階版本
❓ Q14:系統能否支援 24x7 自動監控與無人值班?

完全支援。昶特系統的設計初衷就是 24/7 自動監控:

  • 自動異常檢測與多渠道告警(Email、SMS、App Push)
  • 機器學習模型自動學習工廠運作規律
  • 無需人工干預的預測維護
  • 移動 App 隨時查看、接收告警

許多客戶已實現完全無人值班的監控中心。

❓ Q15:能否針對特定時段(如假日、停機期)調整警報敏感度?

可以。昶特軟體提供排程功能:

  • 定義工廠運作時表(工作日、假日、停機日)
  • 不同時段配置不同的告警閾值與通知方式
  • 假日期間可自動降低敏感度或關閉部分告警
  • 支援多班制生產(日班、夜班、三班)
❓ Q16:監控軟體支援中文介面嗎?多少用戶同時使用?

是的,昶特軟體完全支援繁體中文介面,符合台灣用戶習慣。

並發用戶:

  • 標準版 — 最多 5 位同時用戶
  • 進階版 — 最多 20 位同時用戶
  • 企業版 — 無限用戶(基於 AWS 擴展性)
❓ Q17:數據保留多長時間?歷史數據可以導出嗎?

標準配置下,DynamoDB 與 S3 可保存 90 天熱數據(快速查詢),超期自動轉移至冷存儲。

歷史數據導出:

  • 支援 CSV、Excel、PDF 格式
  • 可自定義時間範圍與選擇特定感測器
  • 批量導出(可達 GB 級)
  • 支援預排程自動導出至郵件或 SFTP
❓ Q18:如果硬體故障,如何快速恢復服務?

昶特提供多層備份與復原機制:

  • 冗余設計 — 關鍵網關建議部署雙機(N+1 架構)
  • 自動轉移 — 主機故障時自動切換至備機(< 1 分鐘)
  • 快速更換 — 標準網關可在 1-2 小時內更換恢復
  • 備品計畫 — 昶特建議客戶備置 1 台網關與若干感測器
  • 遠端診斷 — 昶特可透過遠端連線快速診斷與修復
❓ Q19:能否整合現有的警報系統或火警通知系統?

可以。昶特軟體提供開放的通知介面:

  • Webhook — 異常時自動 POST 至客戶指定的 API
  • MQTT 發布 — 其他系統可訂閱昶特的 MQTT 主題
  • Syslog 整合 — 將事件發送至中央日誌伺服器
  • 第三方 API — 支援整合 Slack、Teams、Telegram 等
❓ Q20:費用方面,購買 vs 租賃哪種更划算?

這取決於您的應用場景與預算。對比分析:

因素購買模式租賃模式
初期資本支出高(一次性)低(按月/年)
投資回本週期12-18 個月持續分期
5 年總成本基準(100%)120-150%
技術更新2 年內免費升級持續升級包含
適用場景大型企業、長期部署中小企業、試點階段

建議:首次導入可採租賃模式試運行,確認 ROI 後再轉為購買。

結論:選擇昶特 ATLANTIS,開啟智慧監控新時代

在全球數位轉型的浪潮中,工業物聯網已不再是選項,而是必要。昶特 ATLANTIS 與 AWS 的結合,為台灣製造業提供了成本優化、效率提升、成本可控的解決方案。

✨ 我們提供的承諾

成本透明 — 報價制無隱藏費用,投資回本週期可預測

快速部署 — 平均 1-2 週上線,最小化工廠停工時間

在地支援 — 台灣技術團隊 24/7 服務,語言溝通無障礙

持續升級 — 免費軟體更新與功能迭代

擴展靈活 — 從 8 個監測點輕鬆擴展至 1,000+

立即行動,開啟您的智慧監控之旅

無論您是製造業、能源管理、環保監控等領域的決策者,昶特都已準備好為您量身打造最適合的解決方案。

聯絡昶特 ATLANTIS

📞 業務一部 Ian
電話:02-2820-3405
信箱:ian@atlantis.com.tw

📞 業務二部 Nori
電話:02-2820-3405
信箱:nori@atlantis.com.tw

🏢 昶特有限公司
台北市北投區致遠一路二段 109 號
傳真:02-2827-0646 / 02-2820-3406
官方網站:re-atlantis.tw