HumansXドキュメントセンター 公式サイトへ ↗

ナビゲーションロボットの下位機操作【V1.1】

ナビゲーションロボットは上位機と下位機に分かれています。上位機は RDK X5 制御ボードで ROS2 上の SLAM ナビゲーションアルゴリズムと ROS インターフェース処理を行い、下位機は Arduino マイコンでシャーシのモータを駆動します。ここでは下位機プログラムの書き込みの全工程を紹介します。

本実験は Arduino mega2560 拡張ボード V1.1 と対応する Unirobot_Mega_V1.2 ライブラリをベースにしています。

1. ハードウェア構成と使用説明

ハードウェア構成

No. 名称 数量 備考
1 四輪駆動メカナムホイール全方向シャーシ 1 構造本体。
2 LiDAR 1 地図作成・ナビゲーション用センサ。
3 Arduino mega2560 メインボード 1 下位機駆動メインボード。
4 モータドライバボード 1 下位機駆動拡張ボード。
5 RDK X5 組込み開発ボード 1 上位機の組込み開発ボード。ubuntu22.04 と ROS2 humble をプリインストール。
6 3S 電源ボックス(18650 電池 3 本付き) 1 11.1V。

ロボット本体

ロボット本体は 4 輪メカナムホイール駆動のシャーシで、前方に LiDAR を搭載し、中央部に上位機ボード RDK X5、Arduino mega2560 メインボードと拡張ボードを配置し、後部に 3S 電源ボックスを配置しています。信号を強化するため、後部にはアンテナも追加しています。

ハードウェアモジュールの使用説明

ヒント:ハードウェアモジュールの使用説明(開発ボード、プログラミング環境、電源モジュールの基本的な使い方について、リンクから確認することを強くお勧めします)

Uni mega2560 拡張ボード【V1.1】使用説明

Arduino プログラミングソフトのインストールとライブラリのインポート【V2.1】

電池および電源モジュール使用上の注意(必読)【v3.0】

電子モジュールの紹介(リンクをクリックすると、エンコーダモータと LiDAR の仕様を確認できます)

2. ロボット駆動ライブラリとプログラムの書き込み

1. ライブラリファイルのインポート

下位機ドライバは Unirobot_Mega_V1.2 ライブラリを使用しています。プログラムを書き込む前に、ライブラリをインポートしてください。

ライブラリのインポートと Arduino ソフトの使い方:

(ライブラリをインポート済みの場合はこの手順を省略できます)インポートが必要なライブラリ:Unirobot_Mega_V1.2 Arduino プログラミングソフトのインストールとライブラリのインポート【V2.1】

2. 下位機ドライバプログラムの書き込み

プログラムの入手先:

資料のダウンロード・技術サポートについては、HumansX株式会社までお問い合わせください。

ファイル内の格納場所:

./導航小車資料備份 / 2.導航小車資料備份/4-1 小車Mega2560拓展版V1.1下位機程序(ナビゲーションカー資料バックアップ / 4-1 車両 Mega2560 拡張ボード V1.1 下位機プログラム)

プログラムの書き込み:

プログラムパッケージ MegaCarProgram をパソコンの任意のドライブに置き、Arduino IDE で開きます。

  1. メインプログラム MegaCarProgram.ino を書き込みます。ボードは Arduino mega or mega 2560 を、ポート番号は環境に合わせて選択してください。(Arduino ソフトの基本的な使い方は Arduino プログラミングソフトのインストールとライブラリのインポート【V2.1】 を参照してください)

  2. 電池ボックスのスイッチと拡張ボードのスイッチをオンにし、動作を確認します。