本文へ移動
サポートシェアリングソリューション
OKWAVE Plus

このQ&Aは役に立ちましたか?

ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:RS-232C通信(その1))

RS-232C通信トラブルの正誤指摘

2023/09/06 15:47

このQ&Aのポイント
  • RS-232Cの通信トラブルの正誤について指摘してください。質問文章では、RS-232C通信の接続方法に関する記述があり、接続が正しいかどうか確認が必要です。
  • 現在、設備にV600を設置しておりVBでのプログラムを使い通信しています。しかし、V600を増設し、PLCから通信することになりました。A1SJ71での通信トラブル「オーバーラン・フレーミングエラー」が発生しています。データの送り方や受け方が分からず、アドレス0010にASCIIで「070119」を送信したいのですが、CRの付加方法やバッファメモリの変更方法が分かりません。
  • 質問1: RS-232C通信でのCRの付加方法はどうすれば良いですか? 質問2: A1SJ71での通信トラブルの間違いを教えてください。 質問3: バッファメモリの書き換え方法を教えてください。
※ 以下は、質問の原文です

RS-232C通信(その1)

2007/01/18 15:35

RS-232Cの通信が上手くいかず困っています。
ユニットはオムロンV600コントローラと三菱シリアルコミュニケーションユニットです。
コントローラ取説を参考にケーブルを製作しましたが自信がありません。
正誤について指摘ください。

<コントローラ取説記載>
コントローラ側⇔上位機器
GR 1─シールド   FG
SG 9──────SG
SD 2──────RD
RD 3──────SD
RS 4─┐  ┌─RS
CS 5─┘  └─CS

<製作したケーブル>
コントローラ側⇔通信ユニット(A1SJ71QC24N-R2)
GR 1─シールド
SG 9──────SG 5
SD 2──────RD 2
RD 3──────SD 3
RS 4─┐  ┌─RS 7
CS 5─┘  └─CS 8
┌─DTR 4
└─DSR 6
接続なしCD 1

宜しくお願いいたします。

背景ですが、現在、設備にV600を設置しておりVBでのプログラムを使い通信しております。
今回、V600を増設する、PCを集約化するなどの理由により、PLCから通信することになったのです。
(過去もPLCから通信しようとしたのですが、出来なくてPCにしてしまいました)
そこで困っているのは、A1SJ71で”オーバーラン・フレーミングエラー”が出てしまいます。
データの送り方、受け方が解らないのです。

やりたいのは、
”アドレス”0010”にアスキーで”070119”を送信したい”です。
コマンドデータは、”WTA10010070119”
WT:コマンド A:アスキー 1:ヘッドチャンネル 0100:アドレス 070119:データ

質問1:”CR”はどう付加(表記)すればいいのでしょうか。

プログラムは下記のとおりです。
転送指令
├─┤├─┬──(MOV K2 D100) A1SJ71のCH2を指定しD100へ
│    ├──(MOV K7 D101) データ長7ワード
│    ├──($MOV "WTA10010070119" D104) 送信データをD104(CR必要ですがわからない)
│    └──(SET M○○) データ転送セット
│ 送信指令
├─┤├────(G.OUTPUT UA D100 D104 M○□)UAは先頭アドレスがXA0から始まる

質問2:間違い教えてください。

以上、宜しくお願いいたします。

ごちゃごちゃして申し訳ありません。
もしかして、”無手順送信用ユーザー登録フレーム”のアドレス”B7H”・”157H”終了コード(CR/LF)の指定をすればいいのですか。
このバッファメモリの変更の仕方がわかりません‥。

バッファメモリの書き替えは、
”TO”命令で出来そうです。
やってみて、問題がありましたら、(その2)にて質問させていただきます。
また、結果も記載します。

質問者が選んだベストアンサー

ベストアンサー
2007/01/18 16:11
回答No.1

配線はそれでOKです
何がおかしいのでしょう?
エラーコードは?
ほとんどの場合は配線違いかパラメータ、プロトコルの間違いです
A1sj71とパソコンを接続してパソコンのターミナルソフトで確認できます
オムロンプロトコルはアスキーなのでそのままテキストとして
パソコンで読めます

同様に
V600とパソコンを接続してパソコンからV600のデータを読み出す事も可能です

本来はプロトコルアナライザかラインモニタが必要になります
http://miechan.jp/hm2g.htm
http://www.fukufukudenshi.com/LineMonitor/LineMonitor.html
http://www.lineeye.co.jp/html/product_le1100.html

フリーソフトでも出来ます
http://www.vector.co.jp/soft/win95/prog/se210167.html
http://www.vector.co.jp/soft/winnt/hardware/se337098.html
http://www.vector.co.jp/soft/dl/winnt/hardware/se359336.html

お礼

2007/01/19 09:05

回答&解答、ありがとうございました。
困っていること、補足に追記させていただきましたので、わかる範囲で結構なのでご指導おねがいします。

質問者

このQ&Aは役に立ちましたか?

この質問は投稿から一年以上経過しています。
解決しない場合、新しい質問の投稿をおすすめします。

質問する

その他の回答 (6件中 1~5件目)

2007/01/19 23:15
回答No.6

配線ですが、「1ピンCDの接続無し」はRS・CSにつないだ方がいいのかもしれませんよ。
先輩方の本回答に対する意見に期待します。

2007/01/19 17:42
回答No.5

失礼しましたQnAのコマンドは忘れてしまいました
シリアルコミュニケーションユニットユーザーズマニュアル(詳細編)
A1sj71qc24 sh3534l.pdf
555 / 808ページ
14.8.3 受信終了コードの設定
ここにターミネータ設定の解説があります

2007/01/19 11:00
回答No.4

http://www.fa.omron.co.jp/data_pdf/mnu/sclb-710b_v600-idsc02_04.pdf
V600-IDSC IDシステム(ヘッドタイプコントローラ)ユーザーズマニュアル
SCLB-710B
51 / 80ページ
V600のコマンドフォーマットが違いますが?
具体的な機種は何でしょう?
OMRONの通信フォーマットはPLCから温調器からみな同じはずですが?

ラダープログラムがQフォーマットなのにA1SJ71とはこれ如何に?
と、言う突っ込みは置いといてQJ71で話を進めます
ターミネータはラダー上に書くのではなくてパラメータに書きます
Q対応シリアルコミュニケーションユニット(応用編)
ユーザーズマニュアルQJ71C24_sh080003h.pdf
283 / 352ページ


>そこで困っているのは、A1SJ71で”オーバーラン・フレーミングエラー”が出てしまいます。
単純にターミネータ設定が違うと思う

http://wwwf2.mitsubishielectric.co.jp/plcq/index.html
Q対応シリアルコミュニケーションユニット(基本編)
QJ71C24 sh080001p.pdf
120 / 358ページ
===========================================================================
データを受信するための受信終了コード,受信終了データ数は,GX Configurator-
SCにてユーザ任意の設定値に変更してデータを受信することができます。
==========================================================================
と記載されてます
GX Configurator-SCで設定する以外の方法は記載されていません

補足

2007/01/19 14:03

本当にお手数お掛けします。また、大変感謝しております。

まず、機種ですが、V600-CM1Dです。
http://www.fa.omron.co.jp/data_pdf/mnu/sclb-709a_v600cm1d.pdf
の52/93を見てます。
通信手順を1対1に設定してあるのですが‥。(23/93)
1対Nにすると指摘のフォーマットになると思っております。試してみます。

AJ71QC24 形シリアルコミュニケーションガイドブック SH-3549
85/140の例を参考にしてます。
また、
QnACPUプログラミングマニュアル(特殊機能ユニット編)SH-3325-B
165/378のOUTPUT命令を見てます。

ちなみにCPUはQ2ASです。
GX Configurator-SCは、インストールされているのか探してみますが、この構成では無理なんでしょうか。

質問者
2007/01/19 10:47
回答No.3

毎度JOです。
PLCは専門外なのでわかりませんが、オーバーラン・フレーミングエラーが出るという事は、
1)ボーレートが合っていない
2)パリティービット(偶数・奇数・なし)が合っていない
3)ストップビット長(1・1.5・2)が合っていない
いずれかが合っていない事になります、データ形式の不一致ではオーバーラン・フレーミングエラーは出ません

下記参照URL

お礼

2007/01/19 13:20

度々のご教授ありがとうございます。
再度確認してみます。
ちなみに、
無手順、半2重、7ビット、偶数パリティ、ストップビット1、サムチェックなし、9600bps
としております。

質問者
2007/01/19 09:01
回答No.2

毎度JOです。

RS232Cの接続に関しましては、通常は質問者の接続で問題なく動作できると思われます、
このケーブルで動作しない、或は動作が不安定な場合は、RS-CSの接続が必要かもしれません、
最近の通信機器ではあまり起こらないのですが、古い機器などでは通信の処理に時間がかかり、
「待った無し」でデータを送るとエラーになる場合があります、この場合はRS-CSを接続して、
「ちょっと待ってね」の信号を送る事が必要になります、

そこで「ちょっと待ってね」の信号を送るためには

GR 1─シールド
SG 9──────SG 5
SD 2──────RD 2
RD 3──────SD 3
RS 4──────CS 8
CS 5──────RS 7
┌─DTR 4
├─DSR 6
  └─CD 1

質問者の接続でRS-CSが短絡してあるのは「こちらは何時でも受信OKです」と表明している事になります、
ほとんどの機器では、質問者の接続で問題なく動作しますが、
一部の得体の知れない機器(通信プロトコルが判明していない機器)の接続には、上記の接続が必要になります、


尚、最近の機器の一部にははRS-CSが内部で未接続の機器も見受けられます、
これは、ほとんどの機器でRS-CSを短絡で接続する為、RS・CS未接続でも動作してしまう為です、
このような機器に上記の接続をすれば、当然の事 通信出来ません。


以下参照URL

お礼

2007/01/19 09:31

有難うございました。
大変勉強になります。
じっくり読んでみます。
補足に追記したことで、わかる範囲でご指導お願いします。

質問者

お礼をおくりました

さらに、この回答をベストアンサーに選びますか?

ベストアンサーを選ぶと質問が締切られます。
なおベストアンサーを選びなおすことはできません。