問題タブ [libnodave]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
plc - Siemens S7 PLC シンボル テーブルの読み取り
教育目的で、libnodave (または snap7 などの同等のオープンソース) を使用して PLC シンボル テーブルを読みたいと思います。
実際、マーカーからデータを読み取るときは、libnodave が raw バイトをシーケンスで読み取るという事実のために、DB に存在する変数の種類を事前に知っておく必要があります。
データを保存するときに plc プログラマーがどのような種類のデータを選択したかを事前に知る方法を探しているので、生のバイト読み取りを使用すると、変数を簡単に監視し、読み取りと視覚化のルーチンを適応させることができます。
前もって感謝します。
networking - tcp/ip 経由で simatic plc と通信する場合に使用するプロトコル
libnodaveとs7netplusを使用して、データ ブロックを simatic s7-300 に読み書きしています。
すべてが正常に機能していますが、libnodave または s7netplus がどのように機能しているかを理解したいので、単純な tcp/ip ソケットに基づいて自分で c++ または c# で同様のものを実装できます。
ライブラリのWebサイトまたはソースコード自体では、それらがどのように実装されているかについての情報を見つけることができませんでした.tcp/ipソケットを使用していることだけです(libnodaveでは他の方法も使用できることを知っていますが、今のところtcp/ipにのみ焦点を当てています)。
他の Web サイトを調べたところ、open tcp/ip または modbus tcp/ip を使用できることがわかりました。
しかし、接続を確立する方法やデータ転送を開始するために何を送信すればよいかを教えてくれる、simatic s7-300 に関連する仕様を実際に見つけることができませんでした....誤解
しないでください。
たとえば、modbus tcp/ip 自体の仕様を見つけることができますが、これらの仕様では、データ ブロック 17 から 10 バイトを読み取るか、データ ブロック 1 に 3 バイトを書き込む場合に plc に何を送信するかについては何もわかりません。
私の質問は、tcp/ip 上で PC から plc とデータを交換しなければならない可能性と、simatic s7-300 に関連する正確な仕様をどこで見つけることができるかということです。