PLCと周辺機器の通信の信頼性確保 - PLC初心者
2019/10/13 (Sun) 18:09:17
現在PLCからロボットアームを制御しているのですが、異常動作に対する保護についてお伺いします。
ロボットアーム側には4種類の一連の動作をプログラミングしてあり、それをPLCから2ビットの動作モード選択出力および開始信号で制御しています。ロボットアーム側からは動作中を示す信号が返ってきます。
FMEAを行った時に、2ビットの選択信号の内、どちらかが断線(含入出力回路異常)になった際に、ロボットアームに指示した動作とは別の動作をすることになり、この対策をどのように行うか検討中です。
RC232等の通信であれば、コマンドの誤りチェックやACK/NAK返送などで、信頼性を確保できますが、PLCのX入力とY出力だけで接続されている場合、アーム側で受け取った2ビット情報をオーム返しにする信号線を追加することも考えたのですが、何か良い方法はあるでしょうか?
Re: PLCと周辺機器の通信の信頼性確保 - えんくう URL
2019/10/14 (Mon) 14:24:00
ロボットの入力故障はオーム返しでなければ分らないですよね…
断線の検知だけだとすれば
一般的な前提として
PLC出力が
ONでLOW
OFFでHi-Z
ロボット側が
何らかの形でPull-Upされているのなら
出力側の大元で電圧を監視します。
勿論、監視する回路の入力はHi-Zにして下さい。
PLCがOFFの時、ロボット側でPull-Upされていろ電圧が出てないのなら断線です。
私はPLC出力側のON/OFF/Openはロジックテスタを使ってチェックしています。ロジックテスタならOpenも判断できます。
参考に。何時も使っているテスタは
三和電気計器の「LG-1000」ですが、残念ながら製造中止品です。
ロボット側に終端抵抗を付けて断線を検知する方法もあるでしょうか…
他の方法として、常時微小電流を流しておき、電流を監視する方法もあるでしょうが、
何れにせよ手間はかかりますよね。
少し調べれば断線検知の解説サイトは有る様です。
http://arduinopid.web.fc2.com/M32.html
Re: PLCと周辺機器の通信の信頼性確保 - PLC初心者
2019/10/14 (Mon) 22:50:49
連休中のところ、コメントありがとうございます。
配線1本がオープンになっただけでロボットアームの誤動作により、ワークおよびアームそのもの、最悪周囲の人間にまでダメージが及ぶ可能性を考えると、一般にロボットアームはどのように制御されているのかを知りたいと思いました。
PLCとロボットアームの断線検出のために、PLC出力電圧を監視するとなると、そのために専用のアナログ入力を使用することになり、それならばロボットアームのソフトで認識した信号をオーム返しにする方が簡単かと思いました。ロジックテスターによるチェックは故障発生後の原因調査では有効でしょうが、運転中に故障が発生した場合に安全に停止するという目的には向かないかと思います。
私自身は通信系のハードおよび組込ソフトの経験が長く、通信の世界では当たり前の「送信した情報は受信側では誤りが発生する」ということを前提に各種の通信プロトコルが使用されているのに対し、PLCの世界ではどのように対応しているのかがわからず質問させていただいた次第です。
当面はオーム返し方式が対応しやすそうですが、将来の拡張性や信号線数の増加に伴う故障要因の増加を考えると、単純なデジタル入出力での接続に代えて、RC232やEthernetなどの通信方式にした方が安全かと思いますがどうでしょうか。
Re: PLCと周辺機器の通信の信頼性確保 - えんくう URL
2019/10/15 (Tue) 09:56:59
PLC初心者さま
結局のところ
シリアル通信が良いと思います。
私が今居る業界は極力原価を抑えないといけない業界なもんで…
とりあえずはオーム返し。
それができなければ、2ビットくらいならOPアンプかディスクリート部品でコンパレータを構成するかな…ってところです。
専用のシリアル通信ユニットなんて使えない価格設定の場合など、
PLCどうしでしたら汎用I/Oを使ってシリアル転送をするプログラムも書きますが、適当に誤り訂正は入れています。
Re: PLCと周辺機器の通信の信頼性確保 - PLC初心者
2019/10/15 (Tue) 10:50:48
えんくう様
お忙しい中、また連休中にも関わらず、回答・助言いただきありがとうございました。
やはり信頼性を確保するためには、シリアル通信で誤り検出やリトライ、タイムアウトなどの処理を入れてロボットアームを制御する方が安心ですね。現在のシステムには適用できないかもしれませんが、今後はその方向で行いたいと思います。