2012-03-01 22 views
0

私はPLCコントローラと通信することができ、PLC上でカスタムコマンドを送受信できるようにしたいと考えています。PLCコントローラはカスタムTCPパケットをリッスン/送信しますか?

私の考えることは、特定のポートでTCP着信パケットを読み取ってパケットのコマンドに基づいてルーチンを実行できるTCPリスナーをPLCに持たせることでした。また、TCP/IP経由で情報を送り返すこともできます。

これは、Windows、iOS、Androidなどのプラットフォームでソフトウェアを使用してPLCにコマンドを発行できるように、C#、PHP、JavaScriptなどの複数の言語でソフトウェアを書くことを可能にします。これはまた、PLCソフトウェアを(コストがかかる)PLCの表示や制御に必要としないことを意味します。

私はPLCプログラマではないので、PLCがカスタムTCPパケットを送受信できるかどうかはわかりません。私はそれが可能かどうかを知りたい、b)これを行うことがどれほど実現可能か、c)これを達成できるように正確に何を研究すべきかを知りたい。

ありがとうございました。

答えて

1

ホイールを再改造するような音です。あなたはKepServerEXのようなものを作りたいですか?

http://www.kepware.com/kepserverex/

考慮すべき二つのものもあります - 1は、データを共有するためにPLCとインタフェースする能力である(すなわち:カスタムHMI用)や他のPLCをプログラムすることです。後者の場合、リバースエンジニアリングを行い、最初から書き直したい場合を除いて、メーカーからの制御ソフトウェアが必要です。

また、PLCは他のソフトウェアと同じように機能しないことに注意してください。関数や手続き、クラスやオブジェクト、あるいは実際には "コマンド"自体はありません。 PLCとは、生の論理規則と計算を中心とした固定的な固定プログラムを実行するシステムです。 HMIへの典型的なインタフェースは、機械の現在の状態を表す論理ビットおよびワードデータ(すなわち、ハードウェアメモリ位置)への読出しおよび書込みを含む。 OPCはすでにこれをうまく行っているので、あなたが何をしようとしているのか分かりません。

あなたは完全な商業パッケージに安い/無料の代替を探しているなら、ここで何かがあなたのために働く可能性があります

http://www.opcconnect.com/freesrv.php

+0

これは適切な場合があります。私はKEPServerEXと通信するためにC#でプログラムを書いて、それがPLCと通信することを理解していますか?サードパーティ製のソフトウェアを使用しないので、コストはかからず、カスタムTCPメッセージを使ってPLCと厳密に話すことは可能ですか? – Fase

+0

自分自身を拷問したり、学問的な練習としてやりたいのであれば可能でしょうが、経済的な方法を見つけることができないのではないかと思います。すでにOPC規格に準拠した適切なソリューションを購入するだけでは不十分です。一般的に言えば、産業用PLCの電源が必要な場合、ソフトウェアのコストは、ダウンタイムや機器の故障やその他の資本コストのリスクと比較して、最小限に抑える必要があります。 $ 2kはピーナッツです。 –

+0

私はTCP経由でPLC上のコントロールを最小限に抑えています。例えば、私は、PLCが実行と停止のような2つのTCPメッセージを聞くことができるようにしたいだけかもしれません。したがって、いくつかのメッセージだけを知る必要がある単一のPLCと通信するためにサーバを稼働させることは、過度のことです。 – Fase

0

「運転/停止」を参照するとき、私は、正しく理解していればPLCがコードをスキャンしてI/Oを更新することを意味します。これが状況であれば、HMIによって制御される「スタート」ビットと並列接続してScan_If_Onビット(TCPコマンドによって書き込まれる)を追加することは完全に適切であろう。 このようにして、PLCによって制御されるプロセスを「開始」する2つの形式があります。 HMIおよびTCP。

関連する問題