2018年5月1日火曜日

KHR-3HVを自律型ロボットにする工作例 - ハードウェア編

SpiritはRaspberry Pi 2とカメラを使ってKHR-3HVを自律型ロボットにしたものでした。ただ、少なからず機械工作・電子工作が必要でした。
最近はより小型のRaspberry Pi Zero (W)が販売されているので、より簡単に類似の改造をすることができます。以下に例を示します。


配線は次の図のようになります。

Raspberry Pi ZeroからUSB DUADアダプターのシリアルポートを介してKHR-3HVのコントロールボードRCB-4に各種コマンドを送信します。ここは本来KONDOのモーション作成ソフトウェアHeartToHeartで使われるポートですが、KONDO RCB-4リファレンスキットとしてコマンド仕様が公開されているので、これに従って次回ロボットを動かします。
Raspberry Pi Zeroのカメラで環境を把握(例:床の線を読む)、RCB-4のモーションでロボットを動かす、という自律型ロボットとして最低限の入出力機能を搭載することができました。

使用部品

  • 市販品
    • KHR-3HV 本体、バッテリ
    • Raspberry Pi Zero W
    • Raspberry Pi Zero 用ケース
    • USBケーブル A-microB 
    • モバイルバッテリー : 適宜。写真はELECOM DE-M04L-3015BK
    • USB OTGケーブル microB(M)-A(F) : Raspberry Pi ケースキットにも付属
    • KONDO DUAL USBアダプター (もしくは シリアルUSBアダプターHS)
    • 10cm程度のサーボ用ケーブル (DUAL USBアダプターとKHR-3HVの接続に使用)
    • Raspberry Pi用カメラモジュール
    • Raspberry Pi Zero用カメラケーブル (ケースキット付属のものでは長さが足りないため)
    • M2x8 タッピングビス (KHR-3HVに付属、樹脂への締め込み用)
    • M2 低頭ビス
    • 強力な両面テープ (屋外掲示用など)
  • オリジナル機械部品  --- 設計図DXF/STLファイル(ZIP)
    • ベースプレート (ABS 2mm厚の板を切削)
      大きな半径の円弧の方が背中側になります。



    • スペーサー (ABS 2mm厚の板を切削)
      カメラフレームとサーボホーンのネジが干渉しないように使用します。


    • カメラフレーム (3Dプリント)



以上です。

組み立て手順概略

ベースプレートとスペーサーを適当なネジで締結して組み立てた後、KHR-3HVの頭部パーツを外して空いた首のサーボ(あるいはダミーサーボ)のサーボホーン部分に取り付けます。その後カメラフレームをネジで固定します。
モバイルバッテリーとRaspberry Pi Zeroケースは両面テープでベースプレートに固定します。

注意事項

メカの干渉について

首の回転軸を使う場合もベース自体はフレームと干渉しないようになっていますが、このサイズを超える部品を上に乗せる場合は首を回すとバックパック等と干渉する可能性があります。適宜スペーサーとなるものを何か間に入れる等工夫が必要になります。首にモーターが入っていない場合は干渉を気にしなくてよいので配置により自由度があります。

カメラの取り付けについて

直立からの転倒時カメラフレームが地面に当たらないような位置関係を確認し、またケースの蓋が開いたりコネクタが抜けたりしないように補強する等の工夫も必要です。必要ならフレーム部品を追加して頭部を保護するように改造してください。

なお、Raspberry Pi Zeroの純正品ケースにはカメラ取付用の蓋も付属していますが、カメラの向きがこの搭載方法に合わないため使いませんでした。これはTeapotの例を見ると分かりやすいと思います。Teapotでは機体の構造上ちょうどケースを縦向きに搭載する格好になりました。カメラはこの向きの時に横長の視野(ランドスケープ)になります。床を動き回るロボットにはこの方が都合がよいのではないかと思います。ですがKHR-3HVでこの向きに乗せようとすると大きく上にはみ出す格好になり、機械強度の確保が難しく転倒で破損しやすくなると考え、やめました。

USBケーブル

L字型ケーブルを使うとすっきりするかもしれません。Raspberry Pi ZeroのUSBコネクタは電源とOTG用が2つ近くに並んでいて干渉し得るので、L字ケーブルを使う場合はL字の曲がる方向に注意して選定してください。

改善案?

Raspberry Pi ZeroのGPIOコネクタに出ているシリアルポートを使えばUSB DUALアダプターは省略できますが、その場合はRaspberry Piのこの機能を使う設定と、コネクタのはんだ付けに加えてケーブル、電圧変換回路を専用に作成する必要があるでしょう。私はまだ試したことがないので、本記事ではこれは範囲外とします。これを除けばはんだ付けなしで工作が完了します。

二足歩行実験用ロボット製作開始

二足歩行の制御実験用のロボットを作り始めました。 コンテストに参加するためではなく、バランスを維持するフィードバック制御を試すためのものです。ROBO-ONEでは低重心、高剛性のメカ、強力な関節の位置制御と足裏の面積で機械的安定性を稼ぐことが定跡となっており、かつレギュレ...