こんにちは!そら豆です!
今回はロボットシステムのI/Oの使い方について記事を作成しました。
この記事はこんな人におすすめです。
・I/Oはイメージしにくい
・I/Oの具体的な使い方が知りたい
IOはこんな目的で使います。
- 機器同士の通信を確認する
- 機器同士のタイミングを合わせる
- 動作を監視する
- 回数をカウントする
- 勝手に作ったエラーを出す
基本的には装置やロボットはPLCの命令での動作を想定しています。
詳しく見ていきましょう!
I/Oについては以下の記事も参考にどうぞ!
機器同士の通信を確認する
まずは機器間で信号のやりとりが上手くいっているのか確認するために使います。
これは立ち上げ時から動作終了時までずっと確認しておく必要のある信号になります。PLCや装置から常時ONで出したりします。
電源を入れてから機器が立ち上がるまでの時間はばらばらです。そんな中で機器をスタートさせると一部の機械しか動かず、意図した動きにはなりません。
そこで稼働中ですといった意味合いの信号をお互いに出します。全ての装置からPLCにこの信号が来ていたら問題なく動いてもいいということになります。
また動作中に機器から来ていた信号が途切れたら機器を停止させることで事故や故障を防ぐようなこともできます。ケーブルの断線対策にもなります。
機器同士のタイミングを合わせる
例えば、ロボットアームでワークを加工機に入れて加工したワークをロボットアームで取り出すというシステムを作った場合を想定します。
加工機から「置いていいですよ」という信号が出ていたらロボットが置く、ロボットが置いたらロボットから「置きましたよ」と言う信号を出す。
信号にそんな意味はありませんが人がタイミングを決めることで信号に意味を持たせてやりとりするように設定するのです。
このようにIOでタイミングを計ることでスムーズな動作が可能になりますし、設計が楽になります。
自動機を見ているとまるで自分で考えてタイミングを計り動作しているように見えますが、実は設計者が決めた電気信号のタイミングで設計者が登録した決まった動きをしているだけなんです。
機器の動作を監視する
大規模なシステムや複雑な装置の場合、パッと見ただけでは今どのような動作をしているのかわかりません。
場合によっては動いているのかどうかすらわからないこともあります。
そこで正常に動いているのか、今どんな処理を進行中なのか監視することが必要になります。
そこで、ある動きをしている時はこんな信号を出す、この動きをし終わったらこの信号を出すと決めておけば動きを監視することができます。
最近では動作をモニタに映して作業者が管理しやすくしたりすることも増えています。
回数をカウントする
IOでカウントは少しイメージしづらいかも知れませんがIOに馴染みのある人はごくごく当たり前に使っています。
出力はパルス出力という出力方法があります。1パルス分だけ出力するというものです。逆に1パルス分だけ受けるという入力もあります。
これを利用して1回入力あるいは出力したタイミングでカウントします。出力/入力する度にカウントが加算されるようにプログラムを組めば簡単にIOを利用して数を数えることができます。
例えばワークを取る度に取ったタイミングでPLCに出力信号を出すとロボットがワークを取った数をカウントできますよね。
自分で作ったエラーを出す
ここで言うエラーとはよくユーザーエラーと表現されるものです。ユーザーエラーとはその機器を使うユーザー(または設計者)が決めるエラーのことです。
例えばビジョンセンサでワークの有無検査をしているとします。その時ワークがあったら有り判定、なかったら無し判定としてそれぞれ別の信号を出力します。
設計の段階で「無し」の時は異常であると判断できるなら無しの時に出す信号をエラー信号として勝手に決めてしまいます。そしてその信号を機器の停止入力などに繋げます。
エラーというと良くない印象ですが、特定の状況で取り決めたIOを出しているだけです。
まとめ
ロボットや自動機の間でIOはこんな時に使います。
- 機器同士の通信を確認する
- タイミングを合わせる
- 動作を監視する
- カウントする
- エラーを出す
IOを理解するには自分でシステムの動作を設計してみるのが一番です。ぜひチャンスがあれば挑戦してみてください!