シリアル通信基礎と汎用の受信手順通信プログラム

FA応用

シリアル通信とは

シリアル通信は、今でもバーコードリーダー他汎用入力機器の通信方法として使われてます。

データを送受信するための伝送路を1本、または2本使用して、データを1ビットずつ連続的に送受信する通信方式です。少ない信号線での接続が可能であるため、線材や中継装置のコストが抑えられるなどのメリットがあります。

参考URL:https://www.contec.com/jp/support/basic-knowledge/daq-control/serial-communicatin/

参考URLに詳しい説明が書いてあるので、簡単に説明します。

シリアル通信の種類

RS232、RS422、RS485が主な規格となります。

RS232は、距離制限15mで1対1、RS422、485は長距離(1km)で422は1対1、485はn対nで通信できます。

長距離で機器がたくさんあるときは、RS485ですね。

RS232は、一番汎用性が高く、今でのパソコンから、量り、バーコードリーダー等でも使われています。

三菱QJ71C24・・で通信設定をします

今回は、三菱のシリアルコミュニケーションユニットでシリアル通信の設定をします。

簡単な汎用機器での受信をするまでとなります。

まず配線ですが、大抵の場合はこれで

何種類もあるので、仕様を確認して・・なんですが、説明がない場合がおおいです。

相手機器の通信IF(インターフェース)仕様は、下記の通り

まずは、動画URLです。

新規でGXWORKSを立ち上げします。

インテリユニットの設定をします。

インターフェース仕様に合わせます。

今回は、無手順通信でやります。

通信完了信号は、受信エンドコードとなります。CR+LFなので3338となります。

割込み通信でやるので、割込み設定を使用するにし、PCパラメータでも設定します。

割込み設定は50からと指定されていました。

次にプログラムを作成します。

EIは割込み設定を使うよという命令です。これでPCパラメータ設定に従って受信するとCR+LFのエンドコードのたびに受信します。

I50に割込みして受信命令でD100に受信データが入ります。

あとは、サンプルコメントを流用します。

シリアル通信

追記:異常受信完了の場合

異常受信完了で止まってしまった。

その場合は、受信読出し完了をONさせます。

また、異常内容をみると受信バッファがいっぱいになったと・・

いうことで受信したら、受信バッファはクリアします。

受信したデータは、伝文の仕様は下記の通り

データはASCIIデータとしてD100以降に格納されますので、8Word目からのデータを使って表示等に使います。

まとめ

シリアル通信は、古くから使われていますので、ぜひ参考にしてみてください。

コメント

タイトルとURLをコピーしました