5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

PLCからゲートウェイでデータを取得しデータベースにJSONで保存 (1)

Last updated at Posted at 2022-07-19

PLCからゲートウェイでデータを取得し、データベースにJSONで保存します。複数回に分けて、サンプルを用いて解説します。
4bef24e301bab8c385bc5659d66fab1262d4b8451782b.png
初回は、ゲートウェイでPLCのデータを取得します。
c2c94364c86325cb400ed616c683221562d4b8537ad2c.png
サンプルは、Windowsがあれば環境の準備と動作が可能です。よろしければ、自己責任のもとで環境を準備し、サンプルを動作させてみてください。

PLC

この解説でのサンプルでは、PLCの代わりにModbus/TCPシミュレーターを使用します。これにより、PLCの本物がなくても、実装の学習とテストが可能となります。
今回使用したModbus/TCPシミュレーターは、貴重なmod_RSsim.exeです。もちろん、他のシミュレータでも構いません。

  • Modbus/TCPシミュレーター: MOD-RSsim Version 8.20

59603780d55c186e1a70e1b112539c5562d4afc50041e.png

ゲートウェイ

この解説のサンプルでは、WEINTEK製ゲートウェイを想定します。WEINTEK製ゲートウェイのソフトウェア開発ツールは、Windows上でソフトウェアを書くことができることに加え、ゲートウェイの動きをシミュレートすることが出来ます。これにより、ゲートウェイの本物がなくても、実装の学習とテストが可能となります。

  • WEINTEK製ゲートウェイのソフトウェア開発環境: EasyBuilder Pro

EasyBuilderはWEINTEKのサイトからダウンロードすることが出来ます。
https://www.weintek.com/globalw/Download/Download.aspx

ゲートウェイの設定とプログラミング

ゲートウェイは各社、各モデルで実装のスタイルが大きく異なります。しかし、この解説では、多くのゲートウェイでの機能実装が可能となるよう勘案し、よりシンプルな手順になるよう考慮しています。
前述のとおり、この解説では、ゲートウェイの本物を使用しません。代わりにEasyBuilderという、WEINTEK製ゲートウェイの開発環境を使用します。

EasyBuilder Pro を起動します。
70b6249e55a43645fa24782555dba08a62d4bfe2afa50.png
プロジェクトを新たに作成します。
これから行う設定が、どのゲートウェイの設定であるかをゲートウェイのモデルの一覧から選択します。このサンプルでは、最もシンプルなモデル"cMT-G01"を選択します。
73133d6f86ad19a49ce3d64ec95ce1a662d4c0da0fe55.png
"cMT-G01"とはこのようなハードウェアです。
cMT-G01

このゲートウェイが対象にするPLCを設定します。メニュー[ホーム]-[システムパラメータ]を選択します。
e1fd4a5385cd74a43bada117619cb52762d4c1ed7671d.png
[装置]タブを選択します。
173c66d906d17f0d2905b9713ccd038c62d4c305cc7ca.png
[装置/サーバを新規追加]をクリックします。
116c9134b0a53cfc0182069b0ee3f37a62d4e5e3e346e.png
以下のように設定します。
b4813a2fca2935a56983ddc1dfcefddc62d4c2a3aec24.png
PLCに相当するModbus/TCPシミュレータは、EasyBuilderと同じWindowsマシン上で稼働させる予定です。このため装置(=PLC=Modbus/TCPシミュレータ)のIPアドレスを127.0.0.1にしています。
装置のポートはModbus/TCPの標準である502を選択しています。

上記設定は、この解説におけるサンプルのための設定です。現実は、対象とするPLCやリモートIOなどに応じた設定が必要となります。
例えば、対象の装置が三菱電機のMELSECであれば、該当のモデルを選択します。下は、Mitsubishi QJ71E71の例です。
cf6a77fc1f36d91ac1b06786216393f462d634aac0aa8.png

テスト

ここまでで、PLC(=Modbus/TCPシミュレータ)に接続する設定が終わりました。接続のテストをします。

mod_RSsim.exeを起動しておきます。
59603780d55c186e1a70e1b112539c5562d4c596c61b2.png
次はEasyBuilderです。
もちろん、これまでの設定をゲートウェイ(cTM-G01)にロードしてゲートウェイを動かすことも可能ですが、今回はシミュレーターを使います。
メニュー[プロジェクト]-[オンラインシミュレーション]をクリックします。
e57da9ac757974ac53d74202ab3f186962d4c5d9df4b8.png
シミュレーターが起動します。"MODBUS TCP/IP (32-Bit)"に接続済みであるように見えますが、これはあてにはなりません。
2b4ac9177034a63ae4627b253d2cade562d4c6d9f2b98.png
Modbus/TCPシミュレーターのウィンドウの左上にある"Connected"の表示を確認します。ゲートウェイからの接続が行われていれば、[1/10]となります。
320155af5baceef2c37476485fd2741962d4e7455062b.png

次回へ

続きは次回とさせていただきます。
初心者の方々のために、ゆっくりとマッタリと進めさせていただきます。
次回は、ゲートウェイによるPLCからのデータ取得です。

PLCからゲートウェイでデータを取得しデータベースにJSONで保存 (2)
PLCからゲートウェイでデータを取得しデータベースにJSONで保存 (3)
PLCからゲートウェイでデータを取得しデータベースにJSONで保存 (4)
PLCからゲートウェイでデータを取得しデータベースにJSONで保存 (5)
PLCからゲートウェイでデータを取得しデータベースにJSONで保存 (6)

5
3
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
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?