ラズパイでAGVを制御する(その2)【サンプルコード付き】:ラズパイで製造業のお手軽IoT活用(9)(1/4 ページ)
小型ボードコンピュータ「Raspberry Pi(ラズパイ)」を使って、低コストかつ現場レベルでIoT(モノのインターネット)を活用する手法について解説する本連載。第9回では、前回紹介したラズパイで制御するAGVについて、その構造や制御プログラムについて説明する。サンプルコードもあるよ!
近年、工場などで用いられるAGV(Automatic Guided Vehicle:無人搬送車)について、より高度な走行制御を行うための取り組みが進んでいます。そこで、AGVの制御に小型ボードコンピュータの「Raspberry Pi(ラズベリーパイ、略してラズパイ)」を活用する目的や方法について2回に分けて解説しています。
今回は前回の続きとして、具体的なサンプルを使って、ラズパイで制御するAGVの構造や制御プログラムについて解説していきます。
システム構成
まず、車輪にモーターを付けた2階建てのAGV模型に、モータードライバ経由で4つの車輪からの正転/逆転の信号を8箇所、ラズパイのGPIOピンに接続しています。図1に、カメラやモータードライバ基板、車輪駆動用の9V電池を搭載する1階部分と、ラズパイと超音波センサー、ラズパイの電源となるモバイルバッテリーを搭載する2階部分から成るAGV構成図を示しました。
このAGVの制御は、ラズパイのLinuxOS上に実装した、Python言語で記述したソフトウェアプログラムで行います。ソフトウェア構成図は図2のようになっています。
制御の流れ
次に制御の流れについて説明します。今回は走行パターンとして次の2種類を用意しています(図3、4)。
走行パターン1:障害物を検知した自動走行
障害物を検知すると障害物を避けて自動走行する
- ①前進→②障害物を検知→③停止→④後退→⑤右左折→⑥前進、①〜⑥を繰り返す
走行パターン2:QRコードを認識した自動走行
QRコードを認識して自動走行をする
- 右左折の走行制御
- ①前進→②QRコード読み取り(右折または左折)→③走行(右折または左折)→④前進
- 停止の走行制御
- ①前進→②QRコード読み取り(停止)→③停止
QRコード認識におけるAGV制御のポイント
1.カメラでQRコードを読み取りOpenCVで画像認識を行う
2.画像認識結果で走行を制御する
- 前進→8箇所の車輪の正転・逆転信号をONにする
- 右折→車輪の右側前輪と右側後輪の2箇所の正転信号をONにする
車輪の左側前輪と左側後輪の2箇所の逆転信号をONにする - 左折→車輪の右側前輪と右側後輪の2箇所の逆転信号をONにする
車輪の左側前輪と左側後輪の2箇所の正転信号をONにする - 停止→8箇所の車輪の正転・逆転信号をOFFにする
Copyright © ITmedia, Inc. All Rights Reserved.