独自の自律型ロボットを構築するために必要なもの

自分のロボットを作りたいと思ったことはありませんか?キットまたは一連の標準的な電子部品を使用しても、思ったほど難しくはありません。

主なハードルは、マイクロコントローラー、シャーシ、モーター、センサーなど、車輪付きロボットを構築するために利用できる途方もない数のオプションをナビゲートすることです。最も簡単なオプションは、完全なロボットキットを購入することですが、カスタムビルドのロボットを作成する場合は、主な選択方法を段階的に説明します。

1.マイクロコントローラー/ SBC

ロボットには、動きを含むすべての機能を制御するための電子的な「頭脳」が必要です。最も人気のあるオプションの2つは、RaspberryPiとArduinoです。

Raspberry Piは、完全なLinuxオペレーティングシステムを実行できるArmマイクロプロセッサを搭載したシングルボードコンピュータ(SBC)です。ロボット構築の主な利点は、Arduinoのようなマイクロコントローラーよりも強力であり、より複雑なプログラムを実行できることです。これは、顔認識やその他の形式のAIに最適であるため、非常にスマートなロボットを作成できます。

もう1つの利点は、ほとんどすべての言語でプログラムできることです。 Pythonのロボット工学で最も人気のあるものの1つであり、コーディングの初心者にとってはCよりも気が遠くなることはありません。

一方、Arduinoは、より単純なロボットプロジェクトに最適です。通常は低コストであるだけでなく、消費電力も少ないため、ポータブルパワーバンクまたはバッテリーパックの消耗に時間がかかります。

通常、コンピューター上のArduino IDEを使用してCでプログラミングされますが、 Xodと呼ばれるグラフィカルIDEを使用してArduinoロボットを制御することもできます

Teensy、BeagleBone、micro:bit、Raspberry Pi Picoなど、他のマイクロコントローラーもロボット工学に適しています。

2.シャーシ

車輪付きロボットの場合、本体を形成し、電子機器を収納し、モーターを(ブラケットを使用して)取り付けるためのシャーシが必要になります。

さまざまなサイズと材質のシャーシキットが多数あり、通常は2輪または4輪のロボット(場合によっては6輪)用です。ほとんどは、電子機器とモーターを取り付けるためのシンプルなプラットフォームです。より高価なオプションには、サスペンションシステムが含まれる場合があります。

または、プラスチック、金属、木、レゴブロック、さらには段ボールなどの素材から、独自のDIYシャーシをカスタムビルドすることもできます。重要な考慮事項は、ロボットをどれだけ頑丈にするかです。困難な地形に対処する必要がある場合は、より耐久性のあるシャーシが必要になります。

3.モーター

ロボットを動かすには、モーターが必要です。車輪付きロボットの場合、これらは、サーボやステッピングモーターとは異なり、高速で自由に回転する標準のDCモーターになります。

一部のモーターには、トルクを増加させ、より重い負荷を駆動するためのギアボックスが組み込まれています。ギア(または減速)比を確認します。ギアが高いほど、トルクが大きくなり、速度が遅くなります。初心者のプロジェクトには、より高い比率をお勧めします。

モーター速度の正確な読み取りと制御が必要な場合は、各モーターシャフトに磁気または光学速度エンコーダーを追加するオプションもあります。これにより、データがマイクロコントローラーにフィードバックされます。

各モーターの速度は通常、PWM(パルス幅変調)によって制御されます。これには、デジタルオンオフパルスのストリームの送信が含まれます。サイクル内のパルスが多いほど、回転が速くなります。

4.モータードライバー

DCモーターをシングルボードコンピューターまたはマイクロコントローラーボードに直接接続することはできません。後者はモーターに十分な電力を供給できず、ボードを損傷する可能性があるためです。

代わりに、モーターとマイクロコントローラーの間、および電源に接続されたモータードライバー/コントローラーボードが必要になります。低コストのドライバーボードは、多くの場合、L298NまたはDRV8833デュアルチャネルHブリッジチップに基づいています。チャネル数によって、独立して制御できるモーターの数が決まるため、4WDまたは6WDにはより多くのチャネル(およびドライバー)が必要になります。

エレクトロニクスの知識がある人が独自のHブリッジモータードライバーを作成することは可能ですが、ドライバーボードを購入する方が簡単です。 Raspberry Piにマウントできる多数のHATと、 Arduino専用のモーターシールドがあります。

モータードライバーを選択する際の重要な要素は、モーターに必要な電圧とその連続動作電流を確実に処理できるようにすることです。モーターの仕様で後者が見つからない場合は、通常、ストール電流より20%から25%低くなります。モータードライバーの最大電流は、モーターの連続電流の約2倍である必要があります。

5.ホイール

当然、これらは車輪付きロボットにとって不可欠です!シンプルな二輪ロボットは初心者にとって最も簡単で、通常、バランスを維持するために、前面に小さな無動力のキャスター、ホイール、またはスキッドが付いています。

次のステップは四輪ロボットで、安定性と制御性が向上しています。真の4WDのために各モーター/ホイールを独立して制御したい場合は、ボード上に2つのデュアルチャネルモータードライバーチップが必要です。または、単一のドライバーを使用して、各チャネルの2つのモーターを制御することもできます。ただし、すべてを処理するのに十分な最大電流容量がある場合に限ります。

オフロードの地形では、最大6つのホイールを使用することもできますが、それらに対応するには、より長いシャーシが必要になります。キャタピラートラックを追加してグリップを強化したり、NASAのパーサヴィアランス火星探査車に搭載されているロッカーボギーシステムを追加したりすることもできます。

サーボを使用してホイールとそのモーターを回転させるステアリング可能なホイールを使用することは可能ですが、ロボットをステアリングする最も一般的な方法は、片側のホイールをもう一方の側よりも速く動かすことです。

もう1つの興味深いオプションは、Mecanumホイールを使用することです。このホイールの特殊なローラーにより、4つのホイールが特定のパターンで回転したときに横に移動できます。縦列駐車に最適!

6.パワー

ロボットを主電源コンセントにつなぐのは少し制限があるので、ポータブル電源が必要になります。主な方法は2つあります。

  1. モーターと電子機器には別々の電源を使用してください。
  2. BEC(バッテリーエリミネーター回路)を介して両方に接続された単一の電源を使用します。モータードライバーボードにはBECが含まれている場合があります。

どちらのオプションを選択しても、可能な電源には、USB電源バンク、 バッテリーパック(例:4x AA)、およびLiPoバッテリーが含まれます。正しい電圧と電流レベルを供給していることを確認してください。多くのモータードライバーボードは、過電流および逆極性に対する保護を提供します。

7.センサー

ロボットをプログラムして、設定されたパターンで移動したり、リモートデバイスから手動で制御したりすることは可能ですが、センサーを追加すると、ロボットが自律的に動作できるようになります。

HC-SR04などの超音波距離センサーを使用すると、ロボットは前方の壁やその他の障害物を感知できるため、回避行動をとることができます。

ロボットに床の小道をたどらせることも、もう1つの人気のあるオプションです。前面に取り付けられた1つまたは複数のIRライン追跡センサーにより、床の暗いラインを検出し、それに沿って操縦することができます。

小さなカメラを追加することで、ロボットに「目」を与えることもできます。 OpenCVなどのコンピュータービジョンライブラリを使用して画像を解釈し、オブジェクトや顔さえも検出できます。

独自の自律型ロボットを構築する:成功

これで、独自の車輪付きロボットを構築する方法の概要がわかりました。それがあなたにロボット工学の素晴らしい世界への最初の進出をするきっかけになったと思います。最初のロボットを作成したら、脚やロボットアームなど、別のタイプを作成することをお勧めします。