工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

Arduino Nanoで作るAIラインフォローロボット:迷路解析機能搭載

必要な部品と材料

部品数量備考
Arduino Nano1
Seeed ワイヤレスBluetooth RFトランシーバー(マスター/スレーブ)1BT通信用
IR赤外線反射型フォトセンサーモジュール17個使用(ライン追跡5個、左右検出2個)
連続回転サーボ2左右駆動用
4.8V バッテリー1

使用するアプリとオンラインサービス

プロジェクト概要

Arduinoベースのピック&プレースロボット開発後、次のステップとしてAIベースのラインフォローロボット開発に挑戦しました。シンプルなラインフォロワーは初心者向けですが、サーボモーターの代わりに赤外線センサーを追加し、より高度な制御を目指しました。「自分のスキルを上級レベルで試す」ことが目的です。

難易度は高かったものの、オンラインリサーチが大いに役立ちました。

なぜAIベースのラインフォローロボットが必要か?

AIは世界環境と人間生活を変える可能性を秘めた最新技術です。ロボットに知能を持たせ、実世界の問題を理解・解決させる夢は、AIを通じてのみ実現可能です。だからこそ誰もがAIについて語るのです。

私のプロトタイプはまだ初歩的な知能ですが、AIへの第一歩です。ここでは比較的平易な言葉で、AIラインフォローロボットの段階的開発を解説します。リソース不足で実機製作はできませんでしたが、作り方は詳細に説明します。Arduino IDEで動作する正確なコードを提供するので、あなたも最初のAIロボットを比較的容易に開発できるはずです。

Patreonで支援:https://bit.ly/31NfQ6A

動画説明欄に米国最安値の部品リンクがあります。

赤外線センサーの配置と役割

プロジェクトでは図のように7つの赤外線センサーを使用します:

5個のPID制御センサーの役割

これらはデジタル出力(HIGH=1 / LOW=0)を生成します。ライン中央にあるセンサーのみがHIGH(1)になります。想定されるパターン:

10000, 11000, 01000, 01100, 00100, 00110, 00010, 00011, 00001, 00000, 11111

5センサーの値を配列で管理:

int LFSensor[5] = {1,1,1,1,1};

左右検出センサーはアナログ出力:

int farLeftSensor = 0;
int farRightSensor = 0;

読み取りコード:

LFSensor[0] = digitalRead(lineFollowSensor0);
LFSensor[1] = digitalRead(lineFollowSensor1);
LFSensor[2] = digitalRead(lineFollowSensor2);
LFSensor[3] = digitalRead(lineFollowSensor3);
LFSensor[4] = digitalRead(lineFollowSensor4);
farRightSensor = analogRead(farRightSensorPin);
farLeftSensor = analogRead(farLeftSensorPin);

迷路左手法則(Left-Hand Rule)

動画で解説しています。要約すると:

  1. 左手を壁に置く
  2. 前進開始
  3. すべての分岐点で、左手を左側の壁に触れ続ける
  4. 最終的にゴールに到達(最短経路ではないが確実)

2D迷路では8種類の分岐パターンがあります(十字路、T字路、右のみ、左のみ、直進/左、直進/右、行き止まり、ゴール)。左手法則を適用すると各分岐でのアクションは一意に決まります:

分岐判定の追加ステップ

「ライン」検出時(十字路かT字路か不明)、「右カーブ」検出時(右のみか直進/右か不明)、「左カーブ」検出時(左のみか直進/左か不明)は、ロボットを「もう少し前進(エクストラインチ)」させて先を確認する必要があります。

フローとしては:

関連トピック

Arduinoドライバー問題の解決方法など、動画で解説しています。

コード構成

プロジェクトは以下のモジュールで構成されています:

主要アルゴリズムのポイント

PID制御

5センサーのパターンから誤差(-4〜+4)を算出し、PID演算でモーター速度を制御。BT経由でKp, Ki, Kdをリアルタイム調整可能。

迷路解法(2フェーズ)

  1. 第1パス(探索):左手法則で迷路を探索し、分岐での動作(L/R/S/B)をパス配列に記録。デッドエンド(LBL→S等)をその都度簡略化。
  2. 第2パス(最適化):記録された最適パスに従って最短時間でゴールまで走行。

Bluetoothリモート操作

BTモジュール経由で手動操作(前進/後進/左右旋回/停止)やPIDパラメータ変更が可能。

製造プロセス

  1. Raspberry Pi で壁回避ロボットを自作:ステップバイステップガイド
  2. Raspberry Pi で実現する画像認識ベースの障害物回避モバイルロボット
  3. Star Automation、NPE2018で書道ロボットを披露
  4. Wittmann Battenfeld、高クランプ力成形向け新ロボットラインWX153を発表
  5. ボッシュ、ハノーバーメッセでAI駆動製造ソリューションを発表
  6. ファナック、SCARAロボットライン拡充:6モデル、3-20kgペイロード、400-1100mmリーチ
  7. AI駆動ロボティクス:最先端インテリジェントマシン
  8. ロボットが触覚で90種類以上の物体を識別、視覚・触覚融合のマルチモーダルAI
  9. AI:メリット、リスク、産業への影響
  10. ビッグデータとAI:デジタルトランスフォーメーションを支える相乗効果
  11. 小売におけるAI:一過性の流行ではなく実証済みのメリット