小型ボードコンピュータ「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)。
障害物を検知すると障害物を避けて自動走行する
QRコードを認識して自動走行をする
Copyright © ITmedia, Inc. All Rights Reserved.