まず、SiOとは
誰でも簡単にPLC=制御装置を作ることができるものです。
非常に安価であり、簡単な改善であれば高級なPLCを使わずに安く装置を導入することが可能です。
その中のシリーズでSiOtはイーサネット通信が可能なタイプなのでPCとの相性が非常に良いです。
SiOt(簡易PLC)をpythonで制御することでPCが苦手なセンサー、モーター制御はSiOtがやり、PC側は得意な画像処理や信号処理をすることができます。
本記事はwindows PCを使い、python言語でSiOtを制御する方法を紹介するものです。
前回はpythonのクラスを作成し実用可能としました。
以下の記事も参考にしてみてください。
今回は作成したクラスを使って、pythonを使って簡単な動作させるテストプログラムを作成します。
準備するもの
・機器
機器名 | 備考 |
SiOt | – |
Windows PC | – |
LANケーブル | – |
押しボタン | https://fa.sus.co.jp/service/detail?ItemNo=SUC-515 |
・ソフト
ここからソースコードをcloneしてください。
SiOt_connection_tool.py
を使います。
接続方法
上記のように接続してください。
SiOtとPCの初期設定
PCやSiOtの設定は以下の私の記事の「PCとSiOtの通信設定」を参考に
IP設定をしてください。
今回製作する機器の動き
今回は2つの動作をさせてみます。
1つ目は手動でボタンを押して緑のランプを点けて、PCからコマンドを送り消灯させます。
2つ目はPCからコマンドを送りオレンジのランプを点灯して、PCからコマンドを送り消灯させます。
1つ目の動作の実装
SiOtの設定
ON側の条件は緑ボタンの押したら=IN1がONしたら、緑のボタンのON=OUT1のON条件、を設定します。
OFF側の条件はEther1のONを設定します。このEther1をpythonからコマンドでONすることになります。
python側の実装
#ライブラリのインポート
import SiOt_connection_tool
#SiOtとの接続
ST = SiOt_connection_tool.SiOt_TCP("100.100.1.100", 40001)
#Etherフラグ1をONしてOFFする
response = ST.EtherFlag_change("10000000")
response = ST.EtherFlag_change("00000000")
SiOtと接続し、Ether1のフラグをONしてOFFさせることで緑のランプを消灯できます。
ポイントはコマンドを送るときにEther1は1つ目のフラグなので8個中の1個目のフラグを1として
10000000
を設定します。
2つ目の動作の実装
SiOtの設定
ON側の条件はEther2のONを設定します。このEther2をpythonからコマンドでONにすることでになります。
OFF側の条件はEther3のONを設定します。このEther1をpythonからコマンドでONすることになります。
python側の実装
#ライブラリのインポート
import SiOt_connection_tool
#SiOtとの接続
ST = SiOt_connection_tool.SiOt_TCP("100.100.1.100", 40001)
#Etherフラグ2をONしてOFFする
response = ST.EtherFlag_change("01000000")
response = ST.EtherFlag_change("00000000")
#Etherフラグ3をONしてOFFする
response = ST.EtherFlag_change("00100000")
response = ST.EtherFlag_change("00000000")
SiOtと接続し、Ether2のフラグをONしてOFFさせることでオレンジのランプを点灯し、
Ether3のフラグをONしてOFFすることでオレンジのランプを消灯させます。
最後に
PCのコマンドを使う時は普段使わない「Ether」というフラグを使うので、動作テストの記事を作成しました。
これを参考にSiOだけではできない装置を作成してみてください。
コメント