PLCのエラー内容とは?

このQ&Aのポイント
  • M社製PLC(Qタイプ-Qモード)で、伝送ユニットのエラーランプが点灯し伝送系が停止してしまいデーターが更新されなくなる問題が発生しています。
  • パリティエラーが原因で伝送ユニットが停止し、データの更新ができない状態になっています。
  • バッファフルエラーが発生するまでに数回のパリティエラーが発生している可能性があります。
回答を見る
  • ベストアンサー

PLCのエラー内容

M社製PLC(Qタイプ-Qモード)で、伝送ユニットを使用しマルチメーターのデータを読み取りを行っています。 しかし、稀にその伝送ユニットのエラーランプが点灯し伝送系が停止してしまいデーターが更新されなくなってしまいます。 伝送ユニットのエラー原因を探るとエラーコードより、パリティエラー発生という事が判明しました。 そこで、ご質問ですが、 (1)そもそもパリティエラーとは何なのでしょうか? (2)また、そのエラーの発生原因の主な理由は何なのでしょうか? 尚、伝送系が停止する直接的な理由はバッファフルというエラーが原因のようですが、そのエラーの発生原因をパリティエラー発生(バッファフル発生までに数回パリティエラー発生している)によるものと、現状考えております。 もし、ご質問内容に不明な点がありましたら捕捉要求お願いします。 以上、宜しくお願い致します。

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

  • ベストアンサー
  • nano_cat
  • ベストアンサー率24% (26/106)
回答No.3

No.1のM/MからPLCへデータを送信。 PLCからNo.2のM/Mにデータ要求する。 No.2のM/MからPLCへデータを送信。  ・  ・  ・ PLCからNo.7のM/Mにデータ要求する。 No.7のM/MからPLCへデータを送信。 最初に戻る 複数のM/Mから同時送信するということはないでしょう か。No.4にデータ要求したのに、他のM/Mもデータを送 信したら、No.4がおかしいように見えますね。この場合、 PLCの送信データが化けていることも考えられます。 (複数のM/Mが、自分へのデータ要求だと思ってしまっ ている。) 1日1回程度の誤動作ではなかなかその瞬間を見ている のは難しいですね。ノイズ対策してもその効果がなかな か確認できません。 対症療法ですけど、PLC側のソフトで逃げられないでしょ うか。パリティエラーが出たら、しばらく(1秒ぐらい?) 待って、いったん受信バッファをクリア。もう一度データ 要求する、というような。

kohrem
質問者

お礼

nano_cat様、いつもご回答頂きありがとうございます。 ご教示頂いた内容ですが、発生しだした時にレコーダーを以下の条件で仕掛けました。 (1)1chに伝送ライン入力 (2)2chにPLC伝送ユニットエラーでYリレー(PLC接点出力)ON (3)”(2)”でトリガかけ、トリガかかる1.5s前より伝送ライン波形を印刷 その結果、7回路中6回路は正常(PLC呼掛け→M/Mデータ伝送)に動作し、問題の回路はPLCが呼びかけしている物の返答無しでした。尚、5s返答無いと次のM/Mに 滑っていきます。 また、ノイズのようなものは見られませんでした。しかし、印刷されたのは1.5s前までであり、実際にはもっと以前に停止されたものと思われその停止したところは見えてません・・・ この現象で考えられるのが、 (1)M/Mの異常 (2)呼掛けのアドレスが間違っている  (正常の時もありますので、何らかのタイミングや  PLCソフト演算の間違い?) かと、今の所思っています。 現状の仮処置として、4番目のM/Mに呼掛けしないようソフトで処置しています。(処置後4日経ちますが異常でず) 対処療法のソフトで逃げる・・・のは、私も同感です!しかしながら、一度パリティエラーがでると、伝送ユニットのエラーランプが点灯してしまいますが、これは内外部からリセットできず、リセットするにはCPUごとリセットするしかないようです・・・(ToT) これまで、nano_cat様には大変貴重なご回答を多々頂き為になりました。今後ご教示頂いた事を活用し異常の完全復旧に取り組みます。 ありがとう御座いましたm(_ _)m

その他の回答 (2)

  • nano_cat
  • ベストアンサー率24% (26/106)
回答No.2

(2)につきましては、私の書き方が悪かったです。kohremさんのお考えの通り、受信側ではどのビットがおかしかったのか知る術はありません。 電気的にはRS-485とのこと、通信速度も9600bpsと速くないので40mぐらいの長さでしたらそう大きな問題はなさそうです。 数珠繋ぎになっている(PLC 1台に7個のM/Mぶら下がっているのですね)のに、4台めだけパリティエラーになるというのはフに落ちません。ライン上にノイズが乗っているのなら、4台めだけ、と限らないと思います。4台めが送信する際に同期して、何か機械が動き出すといったことはないのでしょうか。 もしかしたら4台めのM/Mが故障(気味)ということはないでしょうか。他のM/Mと交換してみるとか。

kohrem
質問者

お礼

nano_cat様ご回答ありがとうございます。 確かに現状から考えるとM/Mの異常が一番可能性が高いものと思われます。しかしながら、私にはそれだけとはどうしても思えないのです。 その理由は、 (1)この現象は前にも出てまして、出方も今回と同じようで時には頻発(1回/日)で時には沈黙でと・・・ちなみに、その時は3番目のM/Mでした。結局確かな原因がわからず結局重要度の低い回路であったことからM/Mを取り外した。結果、異常は出なくなった・・・かに思えましたが数ヵ月後また異常が頻発しだした(4番目の現在)ちなみに、1度M/Mを交換したのですが、その時は効果無しでした(ToT) (2)異常は常時ではなく何らかのタイミング?で発生している(故障気味かもしれませんが)PLCエラーリセットで復帰し正常に伝送できる。 その他にもあるんですが、とりあえず、言えることは現状、前のことを考えると何か単純じゃないような・・・単純のようなです・・・ 今度5/4停電日ですので、そこで交換はして見ます!!

  • nano_cat
  • ベストアンサー率24% (26/106)
回答No.1

PLCの知識はほとんどありません。 (1)パリティエラーとは、データ伝送する際に、そのデータがうまく伝送されたかどうか調べるために付加するものです。例えば、8ビット(1または0)のデータがあるとして、8ビットのデータの中で1であるビットの数が奇数ならば1、偶数ならば0を伝送します。つまり全部で9ビット伝送することになり、1の数は常に偶数になります。 伝送しているうちにノイズなどで、間違ったデータが送られた場合に発見し易くなります。(受信側で1の数を調べ、偶数でなければエラーだとわかります。) この方法が、2ビットがおかしくなってもエラーだと検出できません。(2ビットがおかしくなっても、1の数は偶数ですので。) 以上は偶数パリティの話です。逆に奇数パリティにする場合もあります。 (2)データの伝送がおかしい、ということです。0であるビットが1に、1であるビットが0に変化してしまっているということです。信号系にノイズが混入しているか、電気系では接触不良、ケーブルの断線しかけ、なども考えられます。 バッファフルで停止する前にパリティエラーが数回出ているのですから、まずはパリティエラーを無くすべきですね。 伝送はシリアルですか?(RS-232C・EIA-232) シリアルでパリティエラーが起きるということは、スタートビットの誤発生もあり得るわけで、想定外の早い周期でデータを受信しているのかもしれません。→それでバッファフルになってしまう。 ケーブルの長さはどのぐらいですか。 通信速度はどのぐらいですか。 コネクタのところにフェライトコアによるノイズフィルタを入れることも可能です。ノイズが多い環境ならばRS-422による平衡伝送が良いかと思います。

kohrem
質問者

お礼

nano_cat様、ご回答下さりありがとうございます。 (1)はよく理解できました。ありがとうございます。 これは、1が0又は0が1にノイズ等の要因で化けてしまった時に本来1の個数が偶数であるはずが奇数個になり、それを検出→パリティエラーとなるが、2個化けてしまった場合1の数が必然に偶数になってしまうので、検出不可と言う事ですね。 次に(2)の事についてですが、すみません(ToT)よくわかりません。大変申し訳ありませんが、再度回答お願いできますでしょうか? ”(2)データの伝送がおかしい、ということです。0であるビットが1に、1であるビットが0に変化してしまっているということです。” この場合、0であるビットが1に・・・で、0であるとわかっているのはなぜでしょうか? と、言うのは受け側はデーターを受け取るだけなので、このデータは0であるはずと知るよしもないかなぁと思いまして・・・

kohrem
質問者

補足

伝送ラインの用途は、特高変電所の高圧ファーダーのM/M(電流&力率)データーで、ひとつの伝送ラインに7個のM/Mがぶら下がっています。 ケーブル長は、一番遠いM/M部で約40m位です。 通信速度は、9600bpsです。 伝送は、RS-485です。 伝送ラインをモニタしてみた所、PLCの呼びかけ→M/Mからのデータ送信を7個分繰り返しており、各周期の間は20msあいていました。 ただ、7個目から1個目に帰る時は5msしかなかったのですが・・・ ちなみに、異常を発するM/Mは4番目にあたります。 接続方法は、2芯シールドで各M/Mを数珠つなぎにしています。 一応、現状ではノイズ、細かく言えば、静電誘導ではなく電磁誘導によるものと考えていますが、異常発生時は特に電流を多く使用している負荷もなく、高圧側電路とは完全に離隔していますので、何とも言えません・・・ ただ、気になるところは同バンクに所内電源変圧器があり、その負荷に変電所制御用直流電源(バッテリー)があることなんですが・・・まだ、その気にしている事をロジックに説明できないので何もしようがないのですが(^_^;

関連するQ&A

  • PLCとパソコンの通信方法について

    PLC(三菱 Q00U CPU)とパソコンで,シリアルコミュニケーションユニット(QJ71C24N-R2)を介して,データのやり取りを行おうと思っています。 通信設定は 9600bps ワード長8 パリティ・サムチェックなし ストップビット 1ビット です。 MCプロトコルの3Cフレームの形式1でASCIIコードで行うためのテストとして,PLC内のデータレジスタのD0~D4を読み込もうとして,以下のような伝文を作成しました。 (送信するためのソフトはSERIAL DEBUG2を使用しています。) 5F90000FF0004010000D*0000000005 しかし,うまく通信ができません。 知識が無く,ASCIIコード?バイナリコード?ENQ?STX?という状態です。 どなたか,分かる方がいらっしゃいましたら,ご指導いただけますでしょうか?

  • RS232C通信(PC⇔PLC)

    PCとPLCでシリアル通信を行っています。PLCからPCへステータス受信要求し、PCから正常アンサーがあればPLCからPCへ処理開始指令コマンドが出力されるというプロトコルです。実際には、PC側ステータス正常の場合、PLCへの正常アンサーを出力するところまでは行くのですが、その直後にPLCから送信されているはずの処理開始指令コマンドを受信することができません。一連のコマンド送信・受信の間隔が狭すぎるのかと思い、PLC側で処理開始指令コマンド送信前に10msecのウェイトを設けるとPC側で受信することができました。(PLC側の送信が悪いのか、PC側の受信に問題があるのか不明ですが、、、) シリアル通信では、上記のような問題が発生しないように送受信の間隔等なんらかの規約が定められているのでしょうか??ウェイトを設けることなく通信を行いたいのですが、考えられる対処法を教えていただけませんでしょうか。よろしくお願い致します。 なお、通信機器の仕様は以下の通りです。 PLC:三菱シリアルコミニケーションユニット QJ71C24N-R2 PC:WinXpSP2、COMポート、VisualBASIC6.0のCommイベントによりデータ受信(10msecウェイトなしでは、処理開始指令コマンド送信時にCommイベントが発生しませんでした。) ※アスキー文字、PLC・PCともに送信終了コード(CR+LF)でバッファデータ読込み

  • BackUpExec8 エラーについて

    現在、ファイルサーバをBackUpExec8でバックアップしています。フルバックアップをとったところ以下のようなエラーが出ました。 ------------------------------------------------- テープドライブのデータの読み取りに問題があります。データは失われていませんが、テープのパフォーマンスが低下しています。 ------------------------------------------------- 初めて見るエラーなので何が原因なのかつかめません。 どなたか教えてください、よろしくお願いします。

  • 三菱製CPU(PLC) Qシリーズ 電源ダウンで…

    三菱製CPU(PLC) Qシリーズ 電源ダウンで質問です。 経験が浅いため皆様のご意見、ご経験をお願いします。 現在、海外の現場にて装置の立ち上げを行っております。 詳細です。 三菱製PLC Q38B Q61P-A2 Q06CPU モーションコントローラ QJ71EJ71-E100 QX42 QY42P QJ61BT11 現状ですが、本日自動にて装置を動かしておりました。 突然装置がとまりCPUとモーションのERRが点滅しておりました 電源を入れなおしてもERRが点滅したままで、 PCメモリーフォーマットをしてソフトを入れなおし、 再度電源を入れなおしましたがまだ、ERRがついたままでした。 ついているユニットをすべて外して電源とCPUのみをつけましたが ERRは点滅しませんでした。 再度すべてのユニットを装着して電源を入れなおしたら ERRは付きませんでした。 2,3分動作しておりましたので、直ったと思い それぞれのユニットのネジを締めこんだときに電源が 再度落ちました。 長々と書きまして申し訳ありません。 現場での出来事を書かせていただきました。 私が、今疑っているのはベースのQ38Bの基板が割れているか と思っております。 4,5日前にもエラーコード7000のMULTI CPU DOWNが出ました。 同じような現象を経験された方おられませんか? その時の対処されたことを教えてください。 よろしくお願いします。  

  • PLC接続ケーブルドライバについて

    お世話になります。 乾燥炉のPID温調に(熱電対の補償導線に)ノイズが乗ることによると思われるPV以上が起き、それによる機器停止が発生しています。 PLCのラダーを見るべくUSB-SC09というケーブルをアマゾンで購入しました。 (現在のPLCはFX2で、今後の交換を考えてDSUB25と丸の両対応にしました) CDは添付されているのですが、MELSECに関係のない物等多く、唯一WIN7の階層にあるものがCP210です。 とりあえずインストールはしたのですがディバイスドライバのポートに反映されず。 読み込み、書き換えに必要な最低限のドライバは何で、どこから入手できるものかご教示願いたく。 PCはWIN7PRO32です。 PLCのない盤等、タイマやリレー等の制御はそれなりに理解し自分で設計できるのですが、PLC関係は実務で使用したことがなく。 よろしくご教示お願いいたします。 ちなみに全て黒色のUSB-SC09となります。 皆さんご親切にありがとうございました。 接続/書き込み/読み出しについては日本の電気屋さんがQ06の接続の仕方の様なものをUPされておりますのでDEV8の使用法の参考にさせていただきました。 (弊社にQのCPUもあるのでUSBBtype接続の参考になります/一部USBdriverの設定タイミングが異なるのかなあという疑問はありますが) CDについては一応トレンドマイクロでドライブを指定しセキュリティチェックはしましたが無検出でした。 確かにあまりにexeファイルが多すぎて怖くはなりますが...。 210はアンインストールしようと思います。 ちなみに以下のサイトです。 (この場を借りて御礼まで。参考にさせていただきました/ありがとうございます) http://nasueidensha.com/connection-to-plc/

  • PCが突然エラーになってしまう現象が頻繁に起きる

    PCが「KERNEL_DATA_INPAGE_ERROR」で停止して「PCに問題発生したので再起動します。」になってから再起動しますが、Operating System Not Foundのままとなってしまいます。この原因がわからないのですが、教えて下さい ※OKWaveより補足:「ソニー製品」についての質問です。

  • Visual Basic 2005でRS-232Cを用いて機器を制御する際のエラーについて

    現在,ディジタルマルチメータをPCで制御するため,PCとディジタルマルチメータをRS-232Cケーブルで接続し,Visual Basic 2005を用いて制御しようとプログラムを作成しています. 以前は,Visual Basic 6.0で制御していたのですが,今後の為を考え,2005へ移行することにしました. そこで,VB6のプログラムと同様の設定を用いて,同じ命令をマルチメータ側に送信しようとするのですが,マルチメータ側で命令を受信した後に,マルチメータがエラーを出してしまいます. 全ての命令に対してエラーを出すのではなく,マルチメータ側から返信を伴う命令に対してのみエラーが出るようです. 環境は,PC:Windows XP (Home),マルチメータ:Agilent 34401Aです. 以下がソースの一部です. [VB6] With SerialPort .CommPort = 4 .Settings = "9600,n,8,1" .Handshaking = comNone .RThreshold = 1 .SThreshold = 1 .InputLen = 0 .PortOpen = True End With SerialPort.Output = ":SYST:REM" & vbCrLf 'マルチメータをリモートにする SerialPort.Output = "MEAS:VOLT:DC? 10V,0.003V" & vbCrLf '直流電圧を測定 [VB2005] With SerialPort .PortName = "COM4" .BaudRate = 9600 .DataBits = 8 .Parity = IO.Ports.Parity.None .Handshake = IO.Ports.Handshake.None .Open() End With SerialPort.WriteLine("SYST:REM" & vbCrLf) 'マルチメータをリモートにする(エラーは出ない) SerialPort.WriteLine("MEAS:VOLT:DC? 10V, 0.003V" & vbCrLf) '直流電圧を測定(エラーが出る) 原因などが分かれば,教えてください. よろしくお願いします.

  • シーケンサー(PLC?)で制御するサーボモータ現在地が少しずつズレる

    現在、KEYENCE製PLC・位置決めユニットを使用してサーボモーターを動かしています。あまり詳しくないのですが、このモーターを使用し、ブームを動かし先端位置の座標を割り出しています。 定期的に設置原点の座標を設定するのですが、この原点が少しずつズレてきます。なので、しばらく使用すると現在座標が実際より50や100ズレてきます。このため、頻繁に原点セットをせねばならず、困っています。 原因がいまだわかりません。 電源ON・OFF時にズレが発生しているようでもありませんでした。 たとえば、丸め誤差や桁落ちなどで現在値がズレるということなどが可能性としてありますか? この分野についてはあまり詳しくないので、不明確な部分が多いとはおもいますが、なにかお気づきの点などありましたらアドバイスいただけたらと想います。m(__)m

  • ファイルを開けたときに発生するエラー

    2年前にCDにデータを落としたテキストファイルを開こうとしたら以下のエラーメッセージが表示されました。 "ファイルの読み取りに失敗しました。GetLastError()==87 パラメータが間違っています" windows2000の環境でも出ますが,WindowsXpでも発生します。ファイルがつぶれているのでしょうか?

  • IEでPDFファイルを表示させるとエラー???

    Web上にあるPDFファイルを「Adobe Acrobat Reader4.0」を使い、 ブラウザ上に表示をさせていました。ところが NetscapeNavigatorVer4.05以上だと正常に表示されるのですが、 IE5.0だとエラーが発生しました。エラー内容は以下の通りです。  「ページの処理中にエラーが発生しました。   文書の読み取り中に問題が発生しました。(114)」 それから、AcrobatReaderのオンラインマニュアルやAdobe社の ホームページを見ても、そのようなエラー内容については 書かれていませんでした。 このエラーが起きる原因がわかる方はいらっしゃらないでしょうか?