PLCの経験はまったくありませんが、次のプロジェクトでは、PLCと通信するアプリケーションを開発する必要があります。基本的に、PLCに転送する必要のあるXMLメッセージを受け取ります。PLCコードの開発は行いませんが、PLCデータ構造(xmlスキーマにできるだけ近いもの)を設計してPLCにメッセージを送信する方法を理解したいと思います。
アプリケーションのプログラミング言語はまだ選択されていないため、どの言語の例でもかまいません。
PLCの経験はまったくありませんが、次のプロジェクトでは、PLCと通信するアプリケーションを開発する必要があります。基本的に、PLCに転送する必要のあるXMLメッセージを受け取ります。PLCコードの開発は行いませんが、PLCデータ構造(xmlスキーマにできるだけ近いもの)を設計してPLCにメッセージを送信する方法を理解したいと思います。
アプリケーションのプログラミング言語はまだ選択されていないため、どの言語の例でもかまいません。
これは、使用する言語、プラットフォーム、および PLC の種類によって多少異なります。一般的なインターフェースは次のようになります。
communication OPC/COM/
protocol OLE/ETC
[PLC] <-----------> [tag/data server] <-------> [YourGUIApp]
一般的な考え方は、PLC にはビット、ワード、およびその他のデータ タイプ用のメモリのワーキング セットがあるということです。何らかの通信プロトコル (Modbus、FINS、KSequence など) を介して、HMI/PC 上のローカル システム サービスは、アプリケーションが読み取る必要がある PLC 内の特定のユーザー定義の一連のメモリ領域のローカル イメージを保持します。または書き込みます。サーバーに関連付けられている開発ライブラリは、プロジェクトにインポートして、このローカル サービスを介して PLC にアクセスするために使用できます。
通常、PLC のメモリ位置から読み取り、それらに書き込む手段がいくつかあります。たとえば、多くのライブラリはデータが変更されたときにイベントを発生させることもできるため、イベントにフックしてそれぞれのデータを取得するだけで済みます。気になるデータポイント。
残念ながら、PLC と言語を選択するまでは、データの最適化された構造を決定するのは難しい場合があります。上記のプロセスがメーカー間でどのように機能するかには、かなりのばらつきがあります。これを知らなくても、アプリケーションで好きな構造を作成しても問題ないと思いますが、データ構造と PLC ライブラリへの呼び出しの間の最終ステップを作成するために、ある時点で別のレイヤーを追加する必要がある場合があります。結局のところ、ブール値、整数、浮動小数点数などの単純な変数をやり取りしているだけです。