VBでPLCと通信するには?

解決


SALOSALO  2007-11-09 03:34:50  No: 99663

VBでPLCと通信したいのですがうまくいきません。
PLCは三菱製シーケンサ(etherユニット:QJ71E71)Qシリーズです。
ether/UDP/QnA互換3Eフレームのバイナリーコード  通信です。
WINSOCKを使用して、PLCのデータレジスタの値を読出したいのですが・・・
リッファレンスマニュアルを参照して
「500000FFFF03000C001000010400002C0100A80300」
  ↑こんなコマンドを送信すると
「濱?」←こなのが返ってきます。
だれか、こころあたりのかたよろしくおねがいします。


紅閃光  URL  2007-11-10 09:52:49  No: 99664

ちゃんとバイナリコードを送っていますか?
文字列をそのまま送っていませんか?

また、ちゃんとバイナリで受けてますか?
バイナリを文字列として受け取っていませんか?

バイナリを単に文字列変数で受けただけだとアスキーとして表示されますよ。
そして大抵は化けます。

初めて通信するプログラムを作るならバイナリではなくアスキーで組んだほうがわかり易いですよ。
なにかバイナリでないといけない理由でもあるんでしょうか?


SALOSALO  2007-11-10 18:37:43  No: 99665

紅閃光さんありがとうございます。

文字列をそのまま送ってました。
バイナリでの送受信やってみます。

既存のシステムがバイナリ通信の為、バイナリこだわってます。
以前、アスキー(この時はシーケンサがAシリーズでしたけど)でやった時は、
わりとスムーズにいったのですが・・・


SALOSALO  2007-11-13 22:37:47  No: 99666

解決!!

ちゃんと、バイナリで送受信したらうまくいきました。

紅閃光さんありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加