一往確認日記

有限会社伊藤ソフトデザインの代表をしています。

plc_access 登録しました

plc_accessRubyGemsに登録しました。
RubyでPLCのデバイスにアクセスできます。

ソースコードはこちら。

github.com

これは Ladder Drive からPLCと通信する部分を抜き出したものになります。

LadderDriveでPLCに接続できますが、仮想的なPLCを目指したもので通信だけするには余計なものが多すぎるので通信だけに特化して軽量化しました。

MC ProtocolでPLCにアクセスするにはRubyでこの様に書くとアクセスできます。
非常に簡単です。

require 'plc_access'

plc = PlcAccess::Protocol::Mitsubishi::McProtocol.new host:"192.168.0.10"

plc["M0"] = true
plc["M0"]         # => true
plc["M0", 10]     # => [true, false, ..., false]

plc["D0"] = 123
plc["D0"]       # => 123
plc["D0", 10] = [0, 1, 2, ..., 9]
plc["D0".."D9"]   => [0, 1, 2, ..., 9]

LadderDriveもこちらを使用する様に変更予定です。

上の構成から下の構成へ

久しぶりにRubyGemsに登録しようとしたらマシンも変わったので ~/.gem/credentials ファイルをコピーして持ってこないとアップロードできなかったです。