2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OPCUAデータのAWS SiteWiseへのアップロード

Last updated at Posted at 2024-03-05

はじめに

以前、記事にしました二酸化炭素濃度モニタリングリモートデモシステムのデータをAWS SiteWiseにアップロードしましたので紹介いたします。

デモ構成

図1に構成図を示します。二酸化炭素濃度センサーのデータ(二酸化炭素濃度、室温、湿度)をSiemens社のPLC(ET200SP)で取り込みます。AWS SiteWiseとの接続はSiemens SIMATIC IoT2050にAWS Greengrassコアデバイスをインストールすることで実現します。GreengrassコアデバイスとET200SPの通信はGrreengrassコアデバイスにSiteWise OPCUA Collectorをインストールし、OPCUAサーバー機能に対応しているET200SPと接続することで実現します。

図1.png
図1.構成図

SIEMENS SIMATIC IoT2050の初期設定

Siemens SIMATIC IoT2050はLinuxを搭載した(Armアーキテクチャ)産業用IoTプラットフォームで、AWSの認定デバイスとなっております。(以下リンク参照)

今回、このデバイスを用いてIoTデータの収集およびSiteWiseへの転送を行っています。IoT2050の設定手順を以下に示します。

◆必要条件
・Java Runtime Environment (JRE) version8以上
・Java Development Kit (JDK) Amazon Corretto 11 or OpenJDK 11
・GNU C Library(glibc) version 2.25以上
◆必要な部機材
・操作PC(Windows)
・マイクロSD(+SDカードアダプタ)
・UART cable(以下を参照)
https://de.rs-online.com/web/p/entwicklungstool-zubehor/0429307

◆手順
1. Example Imageのインストール
1.1 ソフトウェアの準備
・Example Imageを以下のリンクのSiemens社サポートより入手します。
https://support.industry.siemens.com/cs/document/109741799/downloads-for-simatic-iot20x0?dti=0&lc=en-JP
・Tera Term、Puttyなどのターミナルエミュレーターを操作PCにインストールします。
・Win32 Disk Imagerを以下より入手し操作PCにインストールします。
https://sourceforge.net/projects/win32diskimager/
1.2 マイクロSDへのExample Imageのコピー
・マイクロSDをSDカードアダプタを用いて操作PCに差し込みます。
・Win32 Disk Imagerを起動します。
・フォルダをクリックします。
01 Win32 Disk Manager.png
図2 Win32 Disk Imager

・ダウンロードしたIOT2050_Example_Image_Vx.x.x.imgファイルを選択しOpenをクリックします。
02 Win32 Disk Manager.png
図3 Win32 Disk Imager

・SDカードを挿入したドライブを選択します。
03 Win32 Disk Manager.png
図4 Win32 Disk Imager

・Writeをクリックします。
04 Win32 Disk Manager.png
図5 Win32 Disk Imager

・確認メッセージが表示されるのでYesをクリックします。
05 Win32 Disk Manager.png
図6 Win32 Disk Imager

・以下が表示されるのでOKをクリックします。
06 Win32 Disk Manager.png
図7 Win32 Disk Imager

・操作PCからマイクロSDを取り出します。
・IoT2050のマイクロSDを挿入します。(IoT2050の電源が入っている場合はオフにしてから実施します。)
07 Win32 Disk Manager.png
図8 IoT2050 マイクロSDカードスロット

ファームウェアのバージョンアップが必要な場合があります。インストールするSample Imageのファームウェア要件をダウンロードサイトで確認します。

1.3 起動順序の変更
起動順序をマイクロSDから起動するように設定します。
・UARTケーブルをIoT2050のX14コネクタおよび操作PCに接続します。基板に"1"表示がある方にケーブルの1番を接続します。
08 IoT2050.png
図9 IoT2050 X14コネクタ

・操作PCのデバイスマネージャーでUARTケーブルのCOMポートを確認します。
・操作PCでターミナルエミュレーターを起動し、シリアル通信を行います。ボーレートは115200を指定します。(以下はTera Termの設定例です。)
09 IoT2050.png
図10 Tera Termシリアル通信設定画面

・IoT2050の電源を入れるとIoT2050は起動します。ターミナルエミュレーターに
Hit any key to stop autobootと表示されたら任意のキーを押します。するとu-bootシェルになります。(IOT2050>と表示されます。)
10 IoT2050.png
図11 IoT2050コンソール画面

・IOT2050> setenv boot_targets “mmc1 usb0 usb1 usb2 mmc0”と入力します。
・IOT2050> saveenvと入力し起動順序設定を保存します。
11 IoT2050.png
図12 IoT2050コンソール画面

・IOT2050> bootと入力するとマイクロSDから起動します。
12 IoT2050.png
図13 IoT2050コンソール画面

1.4 初期設定
・IoT2050のP2 LANポートにネットワークケーブルを接続します。
・起動したら、ユーザー名:root、パスワード:rootでログインします。
・nmtuiと入力するとネットワークマネージメントツールが立ち上がるので、Edit a connectionを選択しEnterを押します。
13 IoT2050.png
図14 IoT2050コンソール画面

14 IoT2050.png
図15 IoT2050ネットワークマネージメントツール画面

・Wired connection1のEditを選択しEnterを押します。
15 IoT2050.png
図16 IoT2050ネットワークマネージメントツール画面

・ネットワーク設定画面が開くので、IPアドレス、ネットマスク、デフォルトゲートウェイ、DNSサーバーアドレスを入力します。
16 IoT2050.png
図17 IoT2050ネットワークマネージメントツール画面

入力後カーソルをOKまで下方に移動しEnterを押します。
17 IoT2050.png
図18 IoT2050ネットワークマネージメントツール画面

・Backを選択しEnterを押します。
18 IoT2050.png
図19 IoT2050ネットワークマネージメントツール画面

・Quitを選択しEnterを押すとコンソール画面に戻ります。
19 IoT2050.png
図20 IoT2050ネットワークマネージメントツール画面

1.5 ソフトウェアアップデート・インストール
・コマンドapt updateを実行してソフトウェアのアップデートを実施します。
20 IoT2050.png
図21 IoT2050コンソール画面

・必要に応じてapt installコマンドでソフトウェアをインストールします。
以上でIoT2050の初期設定は完了となります。
21 IoT2050.png
図22 IoT2050コンソール画面

AWSの構築

2. AWS SiteWiseの構築
2.1 SiteWiseゲートウェイの作成
・AWSコンソールホームでIoT SiteWiseをクリックします。
00 AWSコンソールホーム.png
図23 AWSコンソールホーム画面

・ナビゲーションペインでゲートウェイを選択し、ゲートウェイを作成をクリックします。
01 Sitewise Create Gateway.png
図24 SiteWiseゲートウェイ画面

・任意のゲートウェイ名を入力します。
・Greengrassコアデバイスはデフォルトセットアップを選択します。
・任意のGreengrassコアデバイス名を入力します。
・次へをクリックします。
02 Sitewise Create Gateway.png
図25 SiteWiseゲートウェイ設定画面

・次へをクリックします。
03 Sitewise Create Gateway.png
図26 SiteWiseエッジ機能設定画面

・次へをクリックします。
04 Sitewise Create Gateway.png
図27 SiteWiseパブリッシャー設定画面

・データソースを追加をクリックします。
05 Sitewise Create Gateway.png
図28 SiteWiseデータソース追加画面

・ソースタイプはOPC-UAを選択します。
・ソース名は任意の名称を入力します。
・ローカルエンドポイントはデータを取得するOPCUAサーバを指定します。
・送信先はAWS IoTサイトワイズリアルタイムを選択します。
・次へをクリックします。
06 Sitewise Create Gateway.png
図29 SiteWiseデータソース追加設定画面

・ゲートウェイデバイスOSを選択します。IoT2050はLinuxであるためLinuxを選択しゲートウェイを作成をクリックします。
07 Sitewise Create Gateway.png
図30 SiteWiseゲートウェイ設定確認画面

・生成してダウンロードをクリックします。
08 Sitewise Create Gateway.png
図31 SiteWiseエッジインストーラー生成画面

・インストーラーが操作PCにダウンロードされます。
09 Sitewise Create Gateway.png
図32 SiteWiseゲートウェイ画面

2.2 IoT2050へのインストール
・操作PCをIoT2050にコンソール接続またはssh接続します。
・生成したインストーラーファイルをIoT2050にコピーします。
10 Copy installer at device.png
図33 IoT2050エッジインストーラーコピー画面(ftp転送)

・以下のコマンドを入力します。
chmod +x IoT2050_0_IoT_Sitewise_Gateway.deploy.sh
sudo ./IoT2050_0_IoT_Sitewise_Gateway.deploy.sh
・Proceed with the installation? [y/N]と表示されたらyを入力しEnterを押すとインストールが開始されます。
11 run installer at device-1.png
図34 IoT2050エッジインストール画面

・以下が表示され、インストールが完了します。
Updating package manager ...
Installing docker ...
Successfully set up Nucleus as a system service
12 run installer at device-3.png
図35 IoT2050エッジインストール完了画面

2.3 AWS IoTの確認
・AWSコンソールホームでIoT Coreをクリックします。
00 AWSコンソールホーム.png
図36 AWSコンソールホーム画面

・ナビゲーションペインでモノを選択します。
・Greengrassコアデバイス名のモノが作成されていることを確認します。
13 AWS IoT モノ.png
図37 AWS IoTモノ画面

・ナビゲーションペインでコアデバイスを選択します。
・Greengrassコアデバイスが作成され、ステータスが正常であることを確認します。
・NETFC_IoT2050_0をクリックします。
14 AWS IoT GreenGrass Core-1.png
図38 AWS IoT Greengrassコアデバイス画面

・IoT2050にインストールされたコンポーネントが表示されます。
15 AWS IoT GreenGrass Core-2.png
図39 AWS IoT Greengrassコアデバイス詳細画面

2.4 AWS IoT SiteWiseの設定
・AWSコンソールホームでIoT SiteWiseをクリックします。
00 AWSコンソールホーム.png
図40 AWSコンソールホーム画面

・ナビゲーションペインでをモデルを選択し、Create asset modelをクリックします。
16 AWS IoT Sitewise Model.png
図41 SiteWiseモデル画面

・モデルの名前を入力します。ここでは二酸化炭素濃度センサーとしました。
・Measurementsを選択します。
・このモデルに含まれるデータの設定(名称、単位、データタイプ)を入力します。当該センサーは二酸化炭素濃度、温度、湿度が取得できるため、二酸化炭素濃度、室温、湿度としました。
17 AWS IoT Sitewise Model.png
図42 SiteWiseモデル作成画面

・アセットの作成をクリックします。
18 AWS IoT Sitewise Model.png
図43 SiteWiseモデル画面

・アセットの名称を入力します。当該センサーは当社技術センターNETFCに設置してあるので、NETFC二酸化炭素濃度センサーとしました。
・アセットの作成をクリックします。
19 AWS IoT Sitewise Asset.png
図44 SiteWiseアセット作成画面

・アセットが作成されたことを確認します。
20 AWS IoT Sitewise Asset.png
図45 SiteWiseモデル画面

・ナビゲーションペインでをデータストリームを選択します。
・接続に問題がなければ、OPCUAサーバーよりデータストリームエイリアスを自動的に取得します。
21 AWS IoT Sitewise Datastream.png
図46 SiteWiseデータストリーム画面

・アセットとデータストリームのマッピングを行うことにより、当該データストリームがアセットに送信されます。
・データを取得するデータストリームエイリアスのチェックボックスをチェックしてデータストリームを管理をクリックします。
22 AWS IoT Sitewise Datastream.png
図47 SiteWiseデータストリーム画面

・測定値を選択をクリックします。
23 AWS IoT Sitewise Datastream Push 測定値を選択-1.png
図48 SiteWiseデータストリーム管理画面

・当該アセット(ここではNETFC二酸化炭素濃度センサー)の当該測定値(ここでは二酸化炭素濃度)を選択し、選択をクリックします。
24 AWS IoT Sitewise Datastream Push 測定値を選択-2.png
図49 SiteWiseデータストリーム管理画面

・測定値の名前に選択した測定値が表示されていることを確認し更新をクリックします。
25 AWS IoT Sitewise Datastream Push 測定値を選択-3.png
図50 SiteWiseデータストリーム管理画面

・データストリームエイリアスにアセットがマッピングされていることを確認します。
26 AWS IoT Sitewise Datastream 正常更新.png
図51 SiteWiseデータストリーム画面

・同様にデータを取得するデータストリームエイリアスのチェックボックスをチェックしてデータストリームを管理をクリックします。
27 AWS IoT Sitewise Datastream 選択.png
図52 SiteWiseデータストリーム画面

・測定値を選択をクリックします。
28 AWS IoT Sitewise Datastream Push 測定値を選択-1.png
図53 SiteWiseデータストリーム管理画面

・当該アセット(ここではNETFC二酸化炭素濃度センサー)の当該測定値(ここでは湿度)を選択し、選択をクリックします。
29 AWS IoT Sitewise Datastream Push 測定値を選択-2.png
図54 SiteWiseデータストリーム管理画面

・測定値の名前に選択した測定値が表示されていることを確認し更新をクリックします。
30 AWS IoT Sitewise Datastream Push 測定値を選択-3.png
図55 SiteWiseデータストリーム管理画面

・データストリームエイリアスにアセットがマッピングされていることを確認します。
31 AWS IoT Sitewise Datastream 正常更新.png
図56 SiteWiseデータストリーム画面

・同様にデータを取得するデータストリームエイリアスのチェックボックスをチェックしてデータストリームを管理をクリックします。
32 AWS IoT Sitewise Datastream 選択.png
図57 SiteWiseデータストリーム画面

・測定値を選択をクリックします。
33 AWS IoT Sitewise Datastream Push 測定値を選択-1.png
図58 SiteWiseデータストリーム管理画面

・当該アセット(ここではNETFC二酸化炭素濃度センサー)の当該測定値(ここでは室温)を選択し、選択をクリックします。
34 AWS IoT Sitewise Datastream Push 測定値を選択-2.png
図59 SiteWiseデータストリーム管理画面

・測定値の名前に選択した測定値が表示されていることを確認し更新をクリックします。
35 AWS IoT Sitewise Datastream Push 測定値を選択-3.png
図60 SiteWiseデータストリーム管理画面

・データストリームエイリアスにアセットがマッピングされていることを確認します。
36 AWS IoT Sitewise Datastream 正常更新.png
図61 SiteWiseデータストリーム画面

アセットとデータストリームのマッピングは複数のデータストリームを選択して実施することも可能です。

ここまででAWS IoT SiteWiseの設定は完了となります。

データの確認

・実際にデータが取得できていることを確認します。
・AWSコンソールホームでIoT SiteWiseをクリックします。
00 AWSコンソールホーム.png
図62 AWSコンソールホーム画面

・ナビゲーションペインでアセットを選択し、当該アセット(ここではNETFC二酸化炭素濃度センサー)
37 AWS IoT Sitewise Asset.png
図63 SiteWiseアセット作成画面

・Property Typeの測定を選択します。
38 AWS IoT Sitewise Asset選択.png
図64 SiteWiseアセット詳細画面

・測定値を右方向にスクロールまたは画面を縮小して最新の値にデータが反映されていることを確認します。
39 AWS IoT Sitewise Assetデータ確認.png
図65 SiteWiseアセット詳細画面

以上で、社内のOPC UAデータをSiteWiseへアップロードすることができるようになりました。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?