目次
AWS IoT SiteWise 完全ガイド v2.0
初心者から実務者向けの包括的解説
AWS IoT SiteWise は、産業機器・工場設備からのデータを収集・整理・分析する産業 IoT(IIoT)プラットフォームです。OPC-UA・Modbus・EtherNet/IP 等の産業プロトコルに対応したゲートウェイを通じて PLC・SCADA・センサーのデータをクラウドに収集し、アセットモデルで設備の階層構造を表現します。タイムシリーズデータベース・自動メトリクス計算・Web ダッシュボード・エッジ処理を統合提供し、スマートファクトリーの実現に必要なすべての機能を備えています。
目次
- 概要
- SiteWise が解決する課題
- 主な特徴
- アーキテクチャ
- コアコンポーネント
- 主要ユースケース
- アセットモデルの設計
- ゲートウェイとデータ収集
- メトリクス・計算式
- SiteWise Monitor ダッシュボード
- SiteWise Edge(エッジ処理)
- 設定・操作の具体例
- 類似サービス比較表
- ベストプラクティス
- トラブルシューティング
- 2025-2026 年の最新動向
- 学習リソース・参考文献
- 実装例・チェックリスト
- まとめ
概要
AWS IoT SiteWise とは
AWS IoT SiteWise は、産業用データプラットフォームとして機能し、以下を統合提供します:
- プロトコル変換: OPC-UA・Modbus・EtherNet/IP → クラウド
- アセットモデリング: 工場階層構造(Factory → Line → Machine → Sensor)の定義
- タイムシリーズDB: 高スループット(4000 TPS/アセット)のデータ格納
- 自動メトリクス計算: OEE・稼働率・エネルギー効率の自動算出
- Web ダッシュボード: ノーコード SiteWise Monitor でリアルタイム可視化
- エッジ処理: SiteWise Edge でクラウド非接続時の運用継続
- 予測分析: 機械学習(SageMaker)との統合
産業 IoT の課題を解決
従来、工場は各機械ごとに独立した制御システムを持ち、データ統一が困難でした。SiteWise は各プロトコルのデータを統一フォーマットで管理し、工場横断の可視化・分析を可能にします。
SiteWise が解決する課題
| 課題 | 従来の方法 | SiteWise での解決 |
|---|---|---|
| プロトコル互換性 | OPC-UA サーバーは PLC メーカーごと互換性が低い。統一が困難 | SiteWise ゲートウェイで複数プロトコルに統一対応 |
| 設備階層の表現 | Excel で手動管理。階層関係が明確でない | アセットモデルで階層を定義。自動インスタンス化 |
| タイムシリーズデータベース | 自社構築困難。InfluxDB・Prometheus の運用負荷が高い | フルマネージド DB。4000 TPS/アセット対応 |
| メトリクス計算 | 手動計算・ETL が必要。リアルタイム困難 | Expression で自動計算。リアルタイム更新 |
| ダッシュボード開発 | Web 開発スキル必要。カスタマイズに時間・コスト | SiteWise Monitor でドラッグ&ドロップ構築 |
| 異常検知 | スクリプトで手動実装。保守困難 | IoT Events 連携で自動アラート |
| クラウド非接続対応 | クラウド依存で断線時は停止 | SiteWise Edge でローカル処理継続 |
| 複数工場の比較分析 | 各工場のデータフォーマットが異なる | SiteWise で統一フォーマット→工場横断 KPI |
主な特徴
✅ 産業プロトコル標準対応
- OPC-UA: 産業用データ交換プロトコルの標準
- Modbus TCP: レガシー設備でも対応
- EtherNet/IP: PLC・制御機器の標準
- Generic modbus/TCP: カスタムプロトコルも可
✅ アセットモデル
- 設備の階層構造を可視化
- プロパティ(測定値・メトリクス)を型定義
- モデルインスタンスで複数設備を一元管理
✅ 高スループットデータベース
- 4000 TPS/アセット対応
- インデックスなしで即座にクエリ可能
- ホット・コールドストレージで費用最適化
✅ リアルタイムメトリクス
- SQL ライク Expression で複雑計算
- ウィンドウ関数(1H・1D・1M 集計)対応
- 自動スケーリング対応
✅ Web ダッシュボード(SiteWise Monitor)
- ノーコード構築
- リアルタイムグラフ・ゲージ・テーブル
- モバイル対応
✅ エッジコンピューティング
- SiteWise Edge でローカル処理
- クラウド断線時も自動バッファ・再接続時同期
- ローカルダッシュボードも可能
アーキテクチャ
全体構成図
graph TB
subgraph Factory["工場設備層"]
PLC["PLC / SCADA<br/>OPC-UA サーバー"]
Sensor["センサー類<br/>温度・圧力・振動"]
Device["産業デバイス<br/>Modbus TCP"]
end
subgraph EdgeLayer["エッジ層"]
Gateway["SiteWise Gateway<br/>(Greengrass ベース)"]
EdgeCol["OPC-UA Collector"]
ModbusCol["Modbus Collector"]
EdgeDB["SiteWise Edge<br/>ローカル DB"]
end
subgraph Cloud["AWS クラウド"]
SiteWise["SiteWise Core"]
AssetModel["Asset Model<br/>階層・プロパティ定義"]
TimeSeries["Time Series DB<br/>4000 TPS/asset"]
Metrics["Metrics Engine<br/>計算式"]
Monitor["SiteWise Monitor<br/>Web Dashboard"]
end
subgraph Analytics["分析・統合"]
QuickSight["QuickSight<br/>BI・分析"]
Events["IoT Events<br/>異常検知"]
SageMaker["SageMaker<br/>機械学習"]
end
PLC -->|OPC-UA| Gateway
Sensor -->|Modbus| Gateway
Device -->|EtherNet/IP| Gateway
Gateway --> EdgeCol
Gateway --> ModbusCol
EdgeCol & ModbusCol --> EdgeDB
EdgeDB -->|同期| SiteWise
SiteWise --> AssetModel
SiteWise --> TimeSeries
TimeSeries --> Metrics
Metrics --> Monitor
SiteWise --> QuickSight
SiteWise --> Events
SiteWise --> SageMaker
データフロー(OPC-UA 例)
sequenceDiagram
participant PLC as OPC-UA Server
participant GW as SiteWise Gateway
participant Edge as SiteWise Edge
participant Cloud as SiteWise Cloud
participant Monitor as SiteWise Monitor
PLC->>GW: データ発行(温度・圧力)
GW->>GW: プロトコル変換
GW->>Edge: エッジに保存
GW->>Cloud: クラウドに送信
Cloud->>Cloud: Metrics 計算<br/>OEE = Availability × Performance × Quality
Cloud->>Monitor: リアルタイム更新
Monitor->>Monitor: ダッシュボード表示
コアコンポーネント
1. Asset Model(アセットモデル)
工場・生産ライン・機械・センサーの階層構造を定義。各レベルで以下を指定:
- Properties: 測定値(温度°C・速度 RPM)
- Metrics: 計算値(OEE・稼働率)
- Transforms: データ変換(Celsius → Fahrenheit)
- Measurement: 単位・データ型
{
"Factory": {
"Lines": {
"Line1": {
"Machines": {
"Machine1": {
"SpindleSpeed": {"type": "measurement", "unit": "RPM"},
"Temperature": {"type": "measurement", "unit": "Celsius"},
"OEE": {"type": "metric", "expression": "..."}
}
}
}
}
}
}
2. Asset(アセット)
アセットモデルのインスタンス。実際の機械・センサー。
例:
- Asset Model: “CNC Machine”
- Asset Instance 1: “CNC-Line1-M01”
- Asset Instance 2: “CNC-Line1-M02”
- Asset Instance 3: “CNC-Line2-M01”
3. Property(プロパティ)
各アセットのデータポイント。3 種類:
- Measurement: センサー値(OPC-UA から読み込み)
- Transform: データ変換式(Celsius → Fahrenheit)
- Metric: 集計計算(平均・合計・OEE 等)
4. Gateway(ゲートウェイ)
オンプレミス設備とクラウドの架け橋。Greengrass ベースで、以下を実行:
- OPC-UA Collector: OPC-UA サーバーからデータを定期読み込み
- Modbus Collector: Modbus TCP デバイスからの読み込み
- Protocol Conversion: 各プロトコルをクラウド標準フォーマットに変換
- Local Buffering: ネットワーク断時のデータ保持・再同期
5. SiteWise Monitor
Web ベースの管理・可視化ダッシュボード。
機能:
- ドラッグ&ドロップでウィジェット配置
- リアルタイムグラフ・ゲージ・テーブル
- Asset Hierarchy ツリー表示
- アラート・イベント表示
6. Data Pipeline
データの流れ:
- Gateway → Edge DB → Cloud Time Series DB → Metrics → SiteWise Monitor
主要ユースケース
1. 自動車工場の生産効率管理
複数生産ラインの OEE(Overall Equipment Efficiency)をリアルタイム表示。各ラインの稼働率・性能・品質を可視化。
構成:
- Asset Model: Factory → Line → Machine → Sensor
- Metrics: OEE = Availability × Performance × Quality
- SiteWise Monitor: リアルタイム KPI ダッシュボード
2. 化学プラント安全監視
温度・圧力・流量センサーの 24/7 監視。異常値超過時の自動アラート。
実装:
- Modbus TCP センサー × 1000+ の読み込み
- SiteWise Edge でローカルバックアップ
- IoT Events で 150°C 超過時にアラーム
3. 複数工場横断 KPI 管理
5 工場・各 50 ラインのエネルギー消費量を統一フォーマットで管理・比較。
4. 予知保全システム構築
機械の振動・温度・音データを SiteWise で蓄積。SageMaker で異常パターン学習。
5. 製造原価の見える化
各ラインのエネルギー消費・稼働時間・製品数から製品単位原価を自動計算。
6. 規制対応・監査ログ
すべてのセンサー値変化を SiteWise Time Series に記録。年 1 回監査で全ログ提示。
7. デジタルツイン構築
SiteWise データを IoT TwinMaker に連携。3D 工場モデルをリアルタイム更新。
8. スマートビルディング
HVAC・照明・エレベーター等のエネルギー管理。テナント別の自動課金。
9. 建設機械フリート管理
複数建設現場の重機稼働状況を一元監視。予防保全スケジュール最適化。
10. 食品工場・医薬品製造
温度・湿度・pH 等の GMP(医薬品製造基準)コンプライアンス記録。
アセットモデルの設計
アセットモデル定義例
# 自動車工場を例に:
# Factory
# ├── Line1
# │ ├── Machine-Stamping-01
# │ ├── Machine-Stamping-02
# │ └── Machine-Welding-01
# └── Line2
# └── Machine-Assembly-01
# アセットモデル:自動車工場
aws iotsitewise create-asset-model \
--asset-model-name "AutomobileFactory" \
--asset-model-description "自動車工場の標準モデル" \
--asset-model-properties '[
{
"id": "factory-name",
"name": "Factory Name",
"dataType": "STRING",
"type": {"attribute": {}}
},
{
"id": "total-oee",
"name": "Total OEE",
"dataType": "DOUBLE",
"unit": "%",
"type": {
"metric": {
"expression": "avg(line_oee)",
"variables": [
{"name": "line_oee", "value": {"hierarchyId": "lines"}}
],
"window": {"tumbling": {"interval": "1h"}}
}
}
}
]' \
--asset-model-hierarchy '[
{
"id": "lines",
"name": "Production Lines",
"childAssetModelId": "<LineModelId>"
}
]'
# アセットモデル:生産ライン
aws iotsitewise create-asset-model \
--asset-model-name "ProductionLine" \
--asset-model-description "生産ラインの標準モデル" \
--asset-model-properties '[
{
"id": "line-name",
"name": "Line Name",
"dataType": "STRING",
"type": {"attribute": {}}
},
{
"id": "target-output",
"name": "Target Output",
"dataType": "DOUBLE",
"unit": "units/hour",
"type": {"attribute": {}}
},
{
"id": "line-oee",
"name": "Line OEE",
"dataType": "DOUBLE",
"unit": "%",
"type": {
"metric": {
"expression": "avg(machine_oee)",
"variables": [
{"name": "machine_oee", "value": {"hierarchyId": "machines"}}
],
"window": {"tumbling": {"interval": "1h"}}
}
}
}
]' \
--asset-model-hierarchy '[
{
"id": "machines",
"name": "Machines",
"childAssetModelId": "<MachineModelId>"
}
]'
# アセットモデル:機械
aws iotsitewise create-asset-model \
--asset-model-name "Machine" \
--asset-model-description "工作機械の標準モデル" \
--asset-model-properties '[
{
"id": "machine-id",
"name": "Machine ID",
"dataType": "STRING",
"type": {"attribute": {}}
},
{
"id": "spindle-speed",
"name": "Spindle Speed",
"dataType": "DOUBLE",
"unit": "RPM",
"type": {"measurement": {}}
},
{
"id": "temperature",
"name": "Temperature",
"dataType": "DOUBLE",
"unit": "Celsius",
"type": {"measurement": {}}
},
{
"id": "operating-hours",
"name": "Operating Hours",
"dataType": "DOUBLE",
"unit": "hours",
"type": {"measurement": {}}
},
{
"id": "availability",
"name": "Availability",
"dataType": "DOUBLE",
"unit": "%",
"type": {
"metric": {
"expression": "(operating_time / scheduled_time) * 100",
"variables": [
{"name": "operating_time", "value": {"propertyId": "operating-hours"}},
{"name": "scheduled_time", "value": {"propertyId": "scheduled-hours"}}
],
"window": {"tumbling": {"interval": "1d"}}
}
}
},
{
"id": "oee",
"name": "OEE",
"dataType": "DOUBLE",
"unit": "%",
"type": {
"metric": {
"expression": "availability * performance * quality",
"variables": [
{"name": "availability", "value": {"propertyId": "availability"}},
{"name": "performance", "value": {"propertyId": "performance"}},
{"name": "quality", "value": {"propertyId": "quality"}}
],
"window": {"tumbling": {"interval": "1h"}}
}
}
}
]'
アセット(インスタンス)の作成
# Factory インスタンス作成
FACTORY_ID=$(aws iotsitewise create-asset \
--asset-name "Tokyo-Factory-01" \
--asset-model-id <AutomobileFactoryModelId> \
--asset-properties '[
{
"id": "factory-name",
"value": {"stringValue": "Tokyo Factory Line 1"}
}
]' \
--query 'assetId' \
--output text)
# Line インスタンス作成
LINE_ID=$(aws iotsitewise create-asset \
--asset-name "Tokyo-Factory-01-Line-01" \
--asset-model-id <ProductionLineModelId> \
--parent-asset-id $FACTORY_ID \
--asset-properties '[
{
"id": "line-name",
"value": {"stringValue": "Line 1 - Stamping"}
},
{
"id": "target-output",
"value": {"doubleValue": 500.0}
}
]' \
--query 'assetId' \
--output text)
# Machine インスタンス作成
MACHINE_ID=$(aws iotsitewise create-asset \
--asset-name "Tokyo-Factory-01-Line-01-Machine-Stamping-01" \
--asset-model-id <MachineModelId> \
--parent-asset-id $LINE_ID \
--asset-properties '[
{
"id": "machine-id",
"value": {"stringValue": "STAMP-001"}
}
]' \
--query 'assetId' \
--output text)
ゲートウェイとデータ収集
SiteWise Gateway の設定(OPC-UA)
# 1. ゲートウェイの作成
GATEWAY_ID=$(aws iotsitewise create-gateway \
--gateway-name "TokyoFactory-GW-01" \
--gateway-platform-details cheOpcUaServerAsSource=true \
--query 'gatewayId' \
--output text)
# 2. ゲートウェイ能力設定(OPC-UA データソース)
aws iotsitewise update-gateway-capability-configuration \
--gateway-id $GATEWAY_ID \
--capability-namespace "iotsitewise:opcuacollector:2" \
--capability-configuration '{
"sources": [
{
"name": "PLC-Stamping-Line1",
"endpoint": {
"endpointUri": "opc.tcp://192.168.1.100:4840",
"certificateTrust": {"type": "TrustAny"},
"securityMode": "Basic256Sha256",
"securityPolicy": "Basic256Sha256",
"messageSecurityMode": "SignAndEncrypt",
"identity": {"type": "UserName", "userName": "plc_user", "password": "xxxxxx"}
},
"measurementDataStreamPrefix": "factory/stamping/line1",
"nodeFilterRules": [
{
"action": "INCLUDE",
"definition": {
"type": "OpcUaRootPath",
"rootPath": "/Objects/Machines/StampingLine1"
}
}
]
}
]
}'
# 3. ゲートウェイのグループ化
aws iotsitewise create-gateway-group \
--gateway-group-name "Tokyo-Gateways" \
--gateway-group-description "Tokyo Factory Gateway Group" \
--tags '{"Environment":"Production","Site":"Tokyo"}'
Modbus TCP 設定
# Modbus データソース設定
aws iotsitewise update-gateway-capability-configuration \
--gateway-id $GATEWAY_ID \
--capability-namespace "iotsitewise:modbus-rtu-collector:2" \
--capability-configuration '{
"sources": [
{
"name": "PLC-Welding-Line",
"address": "192.168.1.50",
"port": 502,
"baudRate": 9600,
"dataBits": 8,
"stopBits": 1,
"parity": "None",
"unitId": 1,
"measurements": [
{
"name": "Temperature-Sensor-01",
"modbusAddress": {"address": 100},
"dataType": "INT16",
"scale": 0.1,
"offset": -40
},
{
"name": "Pressure-Sensor-02",
"modbusAddress": {"address": 101},
"dataType": "INT16",
"scale": 1.0
}
]
}
]
}'
メトリクス・計算式
OEE(Overall Equipment Effectiveness)計算
OEE = Availability × Performance × Quality
= (稼働時間 / 計画時間) × (実生産数 / 理論生産数) × (良品数 / 生産数)
SiteWise での Expression:
expression: "(operating_time / scheduled_time) * (actual_output / theoretical_output) * (good_products / total_products) * 100"
variables:
- name: operating_time
value:
propertyId: "availability-hours"
- name: scheduled_time
value:
propertyId: "scheduled-hours"
- name: actual_output
value:
propertyId: "actual-output"
- name: theoretical_output
value:
propertyId: "theoretical-output"
- name: good_products
value:
propertyId: "good-count"
- name: total_products
value:
propertyId: "total-count"
window:
tumbling:
interval: "1h"
ウィンドウ関数
- Tumbling(固定): 1 時間ごと・完全に独立
- rolling(スライディング): 直近 24 時間の移動平均
SiteWise Monitor ダッシュボード
Web ベース管理画面
SiteWise Monitor で以下を構築:
- Asset Tree: 工場・ライン・機械の階層ツリー
- Time Series Charts: リアルタイムグラフ(温度・圧力等)
- Gauges: メーター表示(OEE・稼働率)
- Tables: 詳細データテーブル(過去 24H のデータ)
- Alarms: 警告・アラート表示
ダッシュボード構築例(AWS CLI)
# ダッシュボード作成
DASHBOARD_ID=$(aws iotsitewise create-dashboard \
--dashboard-name "Factory-Operations" \
--dashboard-definition file://dashboard-definition.json \
--query 'dashboardId' \
--output text)
dashboard-definition.json 例:
{
"widgets": [
{
"type": "sc-asset-property-line-chart",
"properties": {
"title": "Spindle Speed - Line 1",
"assetId": "asset-xxx",
"properties": [
{"propertyId": "spindle-speed"}
],
"period": {
"type": "RECENT",
"offset": -86400000
}
}
},
{
"type": "sc-kpi",
"properties": {
"title": "OEE - Last Hour",
"assetId": "asset-xxx",
"property": {"propertyId": "oee"},
"thresholds": [
{"value": 0.75, "color": "red"},
{"value": 0.85, "color": "yellow"},
{"value": 1.0, "color": "green"}
]
}
}
]
}
SiteWise Edge(エッジ処理)
Greengrass での SiteWise Edge デプロイ
# SiteWise Edge コンポーネントをデプロイ
aws greengrassv2 create-deployment \
--target-arn arn:aws:iot:ap-northeast-1::thinggroup/sitewise-gateways \
--components '{
"aws.iot.SiteWiseEdgeCollectorOpcua": {
"componentVersion": "2.1.3"
},
"aws.iot.SiteWiseEdgeLocalServer": {
"componentVersion": "1.1.0"
}
}'
エッジでのローカルダッシュボード
SiteWise Edge はクラウド接続なしでも以下が可能:
- ローカル DB にデータ蓄積
- Expression で Metrics 計算
- ローカル Web UI でダッシュボード表示
- 再接続時に自動同期
設定・操作の具体例
CLI: Asset・Property 操作
# アセット一覧
aws iotsitewise list-assets
# 特定アセット詳細
aws iotsitewise describe-asset --asset-id <asset-id>
# アセット属性更新
aws iotsitewise update-asset \
--asset-id <asset-id> \
--asset-properties '[
{
"id": "location",
"value": {"stringValue": "Tokyo"}
}
]'
# 時系列データ入力
aws iotsitewise batch-put-asset-property-value \
--entries '[
{
"entryId": "entry-001",
"assetId": "<asset-id>",
"propertyId": "spindle-speed",
"propertyValues": [
{
"value": {"doubleValue": 3000.0},
"timestamp": {"timeInSeconds": '$(date +%s)'},
"quality": "GOOD"
}
]
}
]'
# 時系列データ読み込み(過去 24H)
aws iotsitewise get-asset-property-value-history \
--asset-id <asset-id> \
--property-id "spindle-speed" \
--start-date 1672531200 \
--end-date 1672617600 \
--max-results 100
SDK: Python での自動化
import boto3
import json
from datetime import datetime, timedelta
sitewise = boto3.client('iotsitewise', region_name='ap-northeast-1')
# アセット情報の読み込み
def get_asset_details(asset_id):
response = sitewise.describe_asset(assetId=asset_id)
return {
'name': response['assetName'],
'properties': response['assetProperties']
}
# 時系列データ取得
def get_timeseries_data(asset_id, property_id, days=1):
end_time = int(datetime.now().timestamp())
start_time = int((datetime.now() - timedelta(days=days)).timestamp())
response = sitewise.get_asset_property_value_history(
assetId=asset_id,
propertyId=property_id,
startDate=start_time,
endDate=end_time,
maxResults=1000
)
return response['assetPropertyValueHistory']
# バッチデータ書き込み
def write_measurement_data(asset_id, property_id, values):
entries = [
{
'entryId': f'entry-{i}',
'assetId': asset_id,
'propertyId': property_id,
'propertyValues': [
{
'value': {'doubleValue': val['value']},
'timestamp': {'timeInSeconds': val['timestamp']},
'quality': 'GOOD'
}
]
}
for i, val in enumerate(values)
]
response = sitewise.batch_put_asset_property_value(entries=entries)
return response['failedEntries']
# 使用例
asset_data = get_asset_details('asset-xxx')
timeseries = get_timeseries_data('asset-xxx', 'spindle-speed', days=1)
print(f"Asset: {asset_data['name']}")
print(f"Data points: {len(timeseries)}")
類似サービス比較表
| 特性 | AWS SiteWise | PTC ThingWorx | GE Predix | Siemens MindSphere |
|---|---|---|---|---|
| 対応プロトコル | OPC-UA/Modbus/EtherNet/IP | MQTT/HTTP | OPC-UA | OPC-UA |
| Asset Modeling | ✅ 階層型 | ✅ | ✅ | ✅ |
| メトリクス計算 | ✅ Expression | △ | △ | ✅ |
| Web Dashboard | ✅ SiteWise Monitor | ✅ | ✅ | ✅ |
| Edge Processing | ✅ SiteWise Edge | △ | △ | ✅ |
| Time Series DB | ✅ 4000 TPS | △ | △ | △ |
| AWS 統合 | ✅ 200+ サービス | × | × | × |
| クラウド | AWS | 独立 | Predix クラウド | MindSphere クラウド |
| 管理方式 | フルマネージド | オンプレ/ハイブリッド | クラウド | クラウド |
| スケーラビリティ | ✅ グローバル | △ | △ | △ |
ベストプラクティス
✅ 推奨事項
| 項目 | 実装方法 |
|---|---|
| Asset Model 設計 | 実際の工場階層(Factory → Line → Machine)に合わせる |
| Property 命名 | 一貫した命名規則(例:snake_case)。ユニット明示 |
| Metric Expression | シンプルで再利用可能。Window(1H/1D)明確化 |
| Gateway 配置 | ネットワーク安定性の高い場所。Redundancy 考慮 |
| SiteWise Edge | クラウド断線対応に常用。定期的なデータ同期確認 |
| Dashboard デザイン | ユーザー視点(現場作業者・管理者等)別に構築 |
| アラート設定 | IoT Events で異常閾値を定義。過剰アラート回避 |
| データ保持 | ホット(3 ヶ月)・コールド(~3 年)で容量・コスト最適化 |
| バージョン管理 | Asset Model 更新時は新バージョン作成。既存アセット互換性確認 |
トラブルシューティング
よくある問題と解決方法
| 問題 | 原因 | 解決方法 |
|---|---|---|
| ゲートウェイ接続できない | OPC-UA サーバー URL 不正・認証情報エラー | ゲートウェイログ確認(/greengrass/v2/logs) |
| データが到着しない | Node Filter Rule が不正・コレクタ無効 | Gateway Capability Configuration 再確認 |
| メトリクス計算が遅い | Expression 複雑・変数参照エラー | CloudWatch Logs で計算時間確認 |
| SiteWise Monitor 重い | ダッシュボードにウィジェット多すぎる | ページ分割・フィルター追加 |
| Edge データ同期失敗 | クラウド接続不安定・バッファ満杯 | ネットワーク確認・Edge DB サイズ調整 |
2025-2026 年の最新動向
- AI 異常検知: 機械学習で製造異常を自動検知・予測
- Digital Twin 統合: IoT TwinMaker との 3D ビジュアライゼーション
- Edge AI: SageMaker Edge モデルのエッジ推論
- コスト最適化: Data Pipeline で古いデータの自動アーカイブ
- セキュリティ強化: Zero Trust モデルの実装
学習リソース・参考文献
AWS 公式ドキュメント
- AWS IoT SiteWise User Guide
- Creating Assets and Asset Models
- Configuring Data Ingestion
- SiteWise Monitor
- SiteWise Edge
- Pricing
実装例・チェックリスト
SiteWise デプロイ前チェックリスト
計画・設計
□ Asset Model 階層決定(Factory/Line/Machine/Sensor)
□ Property・Metric 定義(データ型・ユニット・計算式)
□ OPC-UA サーバーエンドポイント確認
□ Gateway 配置計画(ネットワーク・冗長性)
ゲートウェイ準備
□ Greengrass Core インストール
□ OPC-UA Collector コンポーネント確認
□ ネットワーク接続テスト
□ ファイアウォール設定(4840: OPC-UA, 443: HTTPS)
SiteWise リソース作成
□ Asset Model 定義
□ Asset インスタンス作成
□ Gateway セットアップ(OPC-UA/Modbus)
□ Capability Configuration 設定
ダッシュボード構築
□ SiteWise Monitor で初期ダッシュボード作成
□ Key Widget(OEE・稼働率等)配置
□ Asset Hierarchy ツリー確認
監視・保守
□ CloudWatch Logs 有効化
□ IoT Events で異常アラート設定
□ Data Retention ポリシー設定
まとめ
AWS IoT SiteWise は、産業用データプラットフォームとして、OPC-UA・Modbus など複数産業プロトコルのデータを統一管理し、アセットモデルで工場階層を表現・タイムシリーズDB で高スループット処理・自動メトリクス計算・Web ダッシュボード・エッジ処理をワンプラットフォーム実現します。
核心的な価値
- マルチプロトコル対応: OPC-UA・Modbus・EtherNet/IP を統一処理
- アセットモデル: 工場のデジタルツイン化
- 自動 メトリクス: OEE・稼働率の自動計算
- ノーコードダッシュボード: SiteWise Monitor で技術者不要
- エッジ処理: クラウド断線時も自動継続
適用判断
SiteWise を選ぶべき場合:
- 工場・製造現場のデータ一元管理が必要
- OPC-UA・Modbus 等レガシー設備が多い
- メトリクス自動計算・KPI 可視化が要件
最終更新:2026-04-27
バージョン:v2.0