KHR-3HVにKCB−4WLを組み込む

製作したロボットKHR-3HVは、無線コントローラーなどと使わない限り、USBシリアルコードで接続しなければならない。無線コントローラーは使う気はない。そこで、当初から予定していた、無線LANボードKCB−4WLを組み込む。そうすると、KCB−4WLには、Linuxが入っていて、Cで組んだプログラムで、ロボットをコントロールするようにもできるということで、昨日からそれをやっていた。ようやく、つなぐことができたようで、苦労した点などを記録しておく。
lanlinux
写真は、ロボットのバックパックを開けたところで、右側がオリジナルのコントロールボードRCB-4HVである。サーボにつながるコードや電源コードで、一部隠れてしまっている。上が頭側である。
左側が、KCB−4WLである。2層構造に組み上げている。上側に、PremierWaveENという、通信とLinuxの本体ボードであり、その下に、インターフェイスボードがあり、USBやシリアル通信のポートが見えている。シリアル通信用のUSBコネクタに線を繋いでいる。
ハード的な組み上げ、配線はマニュアル通りで問題なくできた。ただ、元々のボードについては、当初使っていたネジではなく、頭の短い、左側のボードと同じネジを使わなければ、土台を突き抜けてしまう。ボードにその追加分はついていないが、ロボットを組み上げるときに使ったネジは結構余っているのでそれを使う。
USBシリアルポートをつないで、パソコン(Windows7)側にドライバをインストールし、teratermでシリアル接続(通信速度だけは変更する)をするとLinuxのOSに接続することができるので、まあ、一安心。
問題は、ネットワーク接続である。
ちょっと違和感があるのは、初期接続用に、無線LANの簡単な親機がついていて、パソコンをそれに接続しなければならないことだ。NAOなんかの接続方法より、はるかに面倒な手続きをしなければならない。無線LANのルーターが変わる度にこんなことをしなければならないのかと思うと、勘弁してくださいという感じ。何度も失敗した。
基本的にマニュアルの順序でやるべきだ。注意点だけを書いておく。
(1)まず、ロボットの電源を入れる。配線が正常に行われていれば、しばらくすると、無線の親機が立ち上がる。パソコン側で、ロボット側の親機に接続する。ここで、結構失敗する。そういうときには、ロボットやパソコンを立ち上げ直すとか、今まで使っていた親機を確実に切って立ち上がるとかをやる。繋がっても途中で接続が切れることもある。まいったな。
(2)ディスクに入っているDeviceInstallerを事前にインストールしておいて立ち上げる。ロボット親機に、パソコンの無線が正常に接続していれば、だいたいOK。ただし、マニュアル通りやっても、確実にうまくいかないのは、マニュアルに記載された、ロボットの仮のウェッブページへのログインIDが間違っている。Adminとなっているがこれでは繋がらない。adminと全て小文字で書かなければならないのだ。これを発見するためには、マニュアルについているぼけた画像の方を読み込まなければならなかった。パスワードが間違っているのかと苦労した。
(3)繋げるべき無線LANの設定で、細かい設定がたくさん書かれていて混乱する。何度も失敗した結果、私のルーターに関しては、WEPのセキュリティで、キーを入力する簡単設定で、乗り越えた。が、それまで、10回くらいは失敗している。成功したのが神業のように思える。失敗するたびに、ボードを工場出荷状態に戻す作業が必要になる(マニュアルの最後の方に記載されている)。そうしないと、ロボット側の仮親機がスタートせずに、どうしようもなくなるのだ。
(4)一旦、ロボット側のボードが無線LANに接続すると、DeviceInstallerの検索でボードが見つかるようになる。ロボット側の無線LAN仮親機は使わなくても良い。もちろん、パソコンと、ロボットが同じ無線LANに接続されている必要はある。
(5)当然ながら、ロボットのボードは、固定IPにしなければならない。これは、(4)の状態になれば、マニュアルに記載されている通りで、事後的に設定できる。ロボットが、指定の無線LANに接続するようになるかどうかが、一番の問題なのだ。
(6)電池容量が小さいので、すぐに電池切れで、システムが機能しなくなる。このために設定に失敗したことが何度もあった。その度に充電である。実に面倒である。二つもボードを動かすからだろうか、動かさないサーボモータも電気を食うのだろうか。確かめていないが。
これだけでも、苦労の一部しか書いてないような気がする。しかし、まあ、結果的にうまくつながるようになったので、文句は言えない。が、KHRを知れば知るほど、NAOというロボットの洗練されたシステムが素晴らしく思う。

近藤科学のロボットKHR-3HVを組み上げた



NAOという感せされたヒューマノイドロボットで、対話を中心としたソフトの開発ばかりやってきた。この間、動作のことに関心持ち、人の動きをロボットの関節の動きに写像しようとしていたら、ハードについても基本的なイメージを持っていたいと思うようになった。
そこで、KHR-3HVを購入して組み立ててみた。アキバの3軒ほどのロボットの専門ショップをまわって、関節のコントロールを基本的なところからできるロボットとして、最も優れていると思われるこのロボットにした。動きも数多くライブラリとして組み込まれているので。組み立てに二日を要した。三歩進んで二歩下がるという感じで、組み立てては部分的にまた分解してというように、慣れていない分手間がかかった。正しく組まれているか心配だったが、組み上げて、ニュートラルのポジッションの確認などをしたところ、ビデオにあるように一応正しかったようだ。
現状はシリアルコードでつないでいるだけなので、LinuxOSで、無線LAN搭載のボードを組み込んで、NAOとコミュニケーションさせて動きを捉えて行きたいと思っている。