[ワークショップ] Generate actionable operational insights with a digital twin に参加して、ソフトウェア PLC に接続して製造ラインの可視化を行う手法を学びました #MFG201 #AWSreInvent

2023.12.03

こんにちは、CX 事業本部 Delivery 部の若槻です。

今回は、AWS re:Invent 2023 でワークショップ「MFG201 Generate actionable operational insights with a digital twin」に参加して、ソフトウェア PLC に接続して製造ラインの可視化を行う手法を学んだのでレポートします。

Optimize operations by creating digital twins of real-world systems such as buildings, factories, industrial equipment, and production lines. Learn how to build a factory digital twin, calculate and monitor KPIs like overall equipment effectiveness, and configure alarms in a cloud-based dashboard. Then, explore how you can enhance this informative digital twin and drive actionable insights to optimize production by modeling different scenarios.

(日本語訳)
建物、工場、産業機器、生産ラインなどの実世界のシステムのデジタル ツインを作成することで、運用を最適化します。 工場のデジタル ツインを構築し、全体的な機器の効率などの KPI を計算および監視し、クラウドベースのダッシュボードでアラームを構成する方法を学びます。 次に、この有益なデジタル ツインを強化し、さまざまなシナリオをモデル化して生産を最適化するための実用的な洞察を推進する方法を検討します。

ここで PLC とは、 Programmable Logic Controller(プログラマブルロジックコントローラ)のことで、主に工場などで自動機械の制御に使われますが、近年はこの PLC で取得できるデータの利活用のために PLC をネットワークに接続してクラウドなどに送信する取り組みが多くなっています。以下の記事では国内の代表的な PLC を使用してクラウドにデータを送信する手法を紹介しているので、チェックするとイメージがしやすいと思います。

実は今回、ワークショップの受講前は「IoT TwinMaker で PLC のデータを如何に可視化できるか」という部分に着目していましたが、実際に受講してみると PLC シミュレーターに Codesys Soft PLC や IoT SiteWise を接続する手法が学べた部分に特に意義のあるワークショップとなりました。

セッション情報

  • スピーカー
    • Christophe Renard
    • Seibou Gounteni
  • セッションタイプ
    • Workshop
  • トピック
    • Internet of Things
  • 日付
    • Nov. 29 2023
    • Wednesday
    • 3:00 PM - 5:00 PM (PST)
  • 会場
    • Caesars Forum
  • レベル
    • 200 - Intermediate
  • 関心のある分野
    • BuildOn.AWS
    • Well-Architected Framework
  • 業界
    • Manufacturing & Industrial
  • 役割
    • Developer/Engineer
    • Solution/Systems Architect
    • IT Professional/Technical Manager
  • サービス
    • AWS IoT Greengrass
    • AWS IoT SiteWise
    • AWS IoT TwinMaker

入場

Caesars Forum にあるセッション会場に入場します。

会場前には Walk-up(飛び入り参加)の順番待ち列は特にありませんでした。リピート開催もなかったため、マイナーなネタのセッションであることが伺えます。

場内の様子はこんな感じです。受講者は 30 人ほどでした。

入場した際に、ワークショップ内で PLC シミュレーター環境可視化のために使用する Software Defined Automation のログイン情報をもらいました。

ワークショップ実施

スピーカーの 2 人が登壇をしてワークショップが始まります。

今回参加者が主に扱うサービスである AWS IoT TwinMaker、AWS IoT SiteWise および Software Defined Automation についての説明がありました。

ワークショップで最終的に構築を目指すアーキテクチャ構成は以下となります。

一番左側の EC2 インスタンス①では Codesys Soft PLC を使用して瓶詰めライン(BotleLine)をシミュレートしています。①の部分はワークショップ開始時点でデプロイ済みのためハンズオンの範囲外です。Codesys Soft PLC は、Codesys 社が提供するソフトウェア PLC で、PLC メーカーなどが提供する特定のハードウェアに依存せずに、オープンな端末上で動作する PLC を実現します。

また⑤の SDA IDEaaS から PLC プログラマーが PLC の管理や最適化を行います。そして②のインスタンス上に展開した IoT Site Wise Edge から取得した PLC データを、④ のインスタンス上の Grafana で IoT TwinMaker を使用してデジタルツインによるリアルタイムの可視化を行い、⑤のオペレーションチームが稼働状況や改善状況を監視します。

ハンズオンの構築範囲は②③④⑤ですが、今回は時間の都合で②③⑤のみとなりました。

SDA IDEaaS から PLC への接続の構成

まずは SDA IDEaaS(Software Defined Automation IDE as a Service)の Industrial DevOps 使用して PLC に接続します。これによりブラウザから PLC に接続して PLC プログラムの管理を行えるようになります。前述の構成図の⑤の部分です。

SDA IDEaaS に予め配られた情報を使用してログインします。そして SDA が PLC に接続するためのゲートウェイを新規作成します。

PLC に接続するためのゲートウェイの実体はどこかしらのサーバー上に構成する必要があります。ゲートウェイのセットアップ用の curl コマンドが払い出されるでの、これを Cloud9 インスタンス(前述の構成図の②と同じ)上で実行します。

そして PLC が稼働しているインスタンスの IP アドレスおよびポートをゲートウェイに指定して、PLC に接続できるようにします。

作成したゲートウェイを関連付けたプロジェクトを作成します。

プロジェクトから IDEaaS を開きます。

すると何やら MS Windows ライクな画面が表示されます。これが Codesys Soft PLC の IDE です。(キャプチャ時に画面のリサイズが走っています。)

そしてこちらでも PLC への接続を構成します。

これで IDEaaS から PLC に接続して、可視化や管理を行えるようになりました。

下記は BottleLine 全体を可視化したパネルです。

下記は BottleLine のコントロールパネルです。各ラインの稼働状況の確認や、ラインの停止・再開などが行えるようです。

後続のハンズオン手順は実際に PLC のプログラムを更新して最適化を行うステップもありましたが、時間の都合でここまでとなりました。

PLC のデータを IoT SiteWise にリアルタイムで送信する構成

このステップでは、構成図の②の EC2 インスタンス上で予め稼働している Codesys OPC UA サーバー を、これもまた②の Cloud9 インスタンス上で予め稼働している AWS IoT Greengrass Core に接続します。

接続をするためには AWS IoT SiteWise Gateway を Greengrass Core に構成します。このゲートウェイを IoT SiteWise のデータソースとします。

IoT SiteWise のコンソールからゲートウェイを作成します。

作成したゲートウェイを構成するためのインストーラーを生成してダウンロードします。

AWS IoT Greengrass Core が構成されている Cloud9 インスタンス上で、ダウンロードしたインストーラーを実行し、SiteWise Gateway を構成します。

ゲートウェイ作成直後はIn sync となっていたデータソースの構成ステータスが、前述のインストール実行後は In sync となりました。

コンソールで Assets を開くと、予め構成された BottleLine のアセットモデリングで、すべてのアセットが Active となっていることが確認できます。

そしてアセットを 1 つ開くと、メトリクスでリアルタイムにデータが取得できていることが確認できます。

これで PLC のデータを IoT SiteWise にリアルタイムで送信する構成を作成できました。

なお、章内では説明を省いていましたが、このパートで出てきた機能や概念などは、以下が参考になるので合わせてご確認ください。

その他

ワークショップ中に色々ありました。

IDEaaS のレフトサイドパネルを閉じちゃった

下記のように IDEaaS のレフトサイドパネルを途中で閉じてしまい、開く方法が分からなくなってしまいました。

3 人くらいの現地スタッフの方が代わる代わる来てあれこれいじった結果、再度開くことができました。

「そのディスプレイいいね」

私はワークショップでは下記のようにモバイルティスプレイを持ち込んで 2 画面で作業をするのですが、現地のスタッフの人に「そのディスプレイいいね」って 2 回も声を掛けられました。

おわりに

AWS re:Invent 2023 でワークショップ「MFG201 Generate actionable operational insights with a digital twin」に参加して、ソフトウェア PLC に接続して製造ラインの可視化を行う手法を学んだのでレポートしました。

時間が無く IoT TwinMaker で可視化するステップまで進めなかったのは悔やまれますが、今まで私は PLC は直接扱ったことは無かったので、ソフトウェア PLC といえどとても良い経験になりました。

また、Software Defined Automation と AWS を使用した可視化については、以下でもガイダンスが紹介されているので合わせて確認すると良いと思います。(ただしソースコードへのリンクはまだないようです。)

参考

以上