Categories: 工作・開発

Raspberry Pi Picoで手のひらサイズの水中ロボット作成、防水なしのモーターで水中を航行

Raspberry Pi公式ブログが、Raspberry Pi Picoを使用した小型オープンソース水中ロボット(TOUV:Tiny Open-source Underwater Vehicle)の製作ガイドを公開した。約10年前のリバプールMakefestでのDark Water Foundationのワークショップにインスパイアされたプロジェクトで、35mmフィルムケースとDCモーターを使用した手のひらサイズの水中ロボットを製作できる。

このプロジェクトの特徴は、小型の3〜6V DCモーターを防水処理なしで淡水中で直接使用することにある。モーターの寿命は短縮される可能性があるが、各ミッション後に乾燥処理することで動作可能。現在も利用可能な35mmフィルムケースを浮力調整に使用する。

製作者のJo Hinchliffe氏は、無料のオープンソースFreeCADパッケージを使用してシャーシを設計した。元のデザインはレゴで作られた60〜75mm立方体のフレームだったが、3Dプリンターで同様サイズのフレームを製作。30mmブラシ付きDCモーターを使用し、3〜6V、6500rpmの仕様を採用した。

3軸推進システムで水中機動

TOUVの主要構造部品。シャーシフレーム、30mmモーター3個、35mmフィルムケース2個、プロペラ、ケーブルタイ(画像出典元:Raspberry Pi公式サイト)

シャーシはフレーム両側に前進・旋回用の水平スラスター2基、フレーム内部に垂直位置制御用のスラスター1基を配置した3軸推進システムを採用。水平スラスター取り付け部は重量分散のため中心から若干オフセットしている。

モーターはシャーシに摩擦嵌合(フリクションフィット)で装着され、位置調整が可能で交換も容易。水平スラスター用に26mm 2枚羽根ナイロンプロペラ、垂直軸用に30mm 3枚羽根プロペラを使用し、30mm DCモーターの2mm軸に適合するものを選択した。

浮力調整には中性浮力、正浮力、負浮力の3つの選択肢がある。中性浮力が最適だが、テザーケーブルの重量変化により達成困難。負浮力は35mmフィルムケースに水を入れることで容易に実現でき、垂直スラスターで揚力を供給する。

電源とモーター配線には、古い3mネットワークパッチケーブルを分解して長い適切なワイヤーを取得。シャーシを作業台として使用し、モーターを挿入後にワイヤーをはんだ付けした。

浮力タンク(フィルムケース)の取り付けは、シャーシとケースをケーブルタイ2本で固定するだけで完了。タンク位置は後から微調整可能で、前後に配置すると浮上時に垂直スラスターが水面上に出る可能性があるが、タンクを上方に配置することで垂直プロペラが常に水中に保たれる。

制御にはRaspberry Pi Picoを採用し、PWM(パルス幅変調)によりモーター速度と方向を制御。DRV8833モータードライバーを使用し、StoRPerボードまたはブレッドボード上のDRV8833モジュールで構成できる。

初期コントローラーシステムでは、パネルに3つの押しボタンスイッチを配置し、Raspberry Pi PicoのGPIOに接続。MicroPythonコードでGPIOピンとPWMシステムを設定し、各モーターのピン番号ペアを交換することでモーター回転方向を反転、速度値変更で回転速度を調整できる。

テスト環境として中古のインフレータブル温水浴槽を使用。電源には18650セルまたはUSBパワーバンクを使用し、パワーバンクの5Vでは推力が過大になるため、MicroPythonスクリプトの速度値調整で対応。軽微な正浮力設定で、垂直スラスターは水平スラスターより低速回転に設定し、滑らかで段階的な降下を実現している。

今後の改良として、より薄く柔軟なワイヤーへの変更、水平スラスター方向反転スイッチの追加、低速で連続運転するラッチスイッチ、速度調整用ポテンショメーターの搭載を検討。フックや磁石などのアタッチメント追加により「物体救出」ゲームへの対応も可能。カメラやセンサーの搭載はより大型のDIY潜水艦プロジェクトで実現予定としている。

製作ファイルはGitHubリポジトリで公開されており、この内容はRaspberry Pi公式マガジン第157号に掲載されている。

関連情報

Build a tiny open-source underwater vehicle | Raspberry Pi

関連商品(広告)

FabScene編集部

FabScene編集部