robo8080のブログ

ロボット製作や電子工作など。

Kinect SDKの音声認識機能で近藤科学の多脚ロボットKMR-M6を動かしてみた。

2012年11月05日 | KMR-M6

Kinect SDK v1.6のサンプル「Speech Basic-WPF」を見てたら、カメの代わりに近藤科学の多脚ロボットKMR-M6を動かしてみたくなった。

  

 

ということで、「Speech Basic-WPF」のソースを見てみる。

これでKMR-M6を動かすようにするのはそんなに難しくないな。

このSpeechRecognized関数にKMR-M6との通信を追加して、音声コマンドに対応するモーションを再生するようにすればいい。

 

 

とりあえず日本語を認識するように改造しよう。

ここを参考に「Speech Basic-WPF」の日本語化、簡単にできた。

Kinect for Windowsで機器を作るヒント(4) ―― 日本語の音声認識をやってみる

 

音声合成も簡単にできるみたいだ。ついでにkinectの音声認識と組み合わせてみる。

ここを参考にさせていただいた。

Speech Platform 11 で音声合成をする - かおるんダイアリー

 

Kinectで音声認識したものを音声合成で復唱するようにしたら、それをまた音声認識して無限ループに陥る。orz 

音声認識を一時的に無効にできないかな。

   -> とりあえず、音声コマンドと復唱する音声を別にすることで回避。

[例] 音声コマンド:まえ -> 復唱:ぜんしん 

    復唱の音声(ぜんしん)も音声認識辞書に登録しておく。

    復唱の音声を認識したときは、それに対する処理は何もしない。

(後日色々試した結果、タイマーを使って一定時間音声認識結果を無視する様にした方が簡単だった。)

 

以上でKinectの音声認識機能を使って、近藤科学の多脚ロボットKMR-M6を動かせるようになった。

Kinect SDKのサンプル「Speech Basic-WPF」にKMR-M6との通信を追加しただけ。簡単だった。

KMR-M6との通信はここが参考になる。

問題点:ロボットの動作音で時々音声認識が誤認識する... 音声認識の閾値を調整すればある程度は改善できるかな。

動画はこちら。

Kinectの音声認識機能を使って、多脚ロボットKMR-M6を動かしてみた。

 

 

音声認識機能を使って、KMR-M6を動かすのは意外と簡単に出来たから、今度はこれにフェイストラッキングを組み合わせてみる。

まず、以前作ったフェイストラッキングに、 音声認識 と音声合成を追加した。

次は、これでKMR-M6を動かす。

 

Kinect SDKの音声認識機能とフェイストラッキングで、KMR-M6の制御ができるようになった。

・音声認識機能でロボットの歩行制御。

・フェイストラッキングで、搭載しているWiFiカメラのPan,Tilt制御。

童画はこちら。 

Kinectの音声認識とFacetrackingで多脚ロボットを動かしてみた

 

 

-以上―


近藤科学の多脚ロボットKMR-M6でボールを追いかけるロボットを作ってみた。

2012年09月16日 | KMR-M6

近藤科学のBluetoothモジュールKBT-1を入手。

 

 

KMR-M6にKBT-1を組み込んだ。

HeartToHeart4との接続がうまくいかないので取説をよく見直したら、DipSWの設定が間違っていた。

老眼で細かい字を見るのがつらい。

 

 

カメラ制御用に、バルク版のKRS-2542HVを入手。

ネジもケーブルもついていないが、正規品の半額以下だった。

 

 

無線LANカメラとパン・チルトを制御するサーボを追加した。

組み立て中。

 

 

完成!!

 

うむむ、へまをしてKRS-2542HVのギアを壊してしまった。

 

サーボアーム組み立て中に手を滑らせてバキッと。

しょうがないので別のロボットで使っていたKRS-2542HVを拝借。

交換用のギアを買わないと...

 

 

カメラ制御用サーボの追加は出来たので、今度は制御ソフトを作る。

以前Processing+mbedで作った物体追跡ロボットを改造しようかな。

 

 

まず、動作テストのために、PCからパン・チルトの制御と歩行モーション再生ができるようにしてみた。

ここを参考にさせてもらった。

Bluetoothモジュールを使ったリモートブレイン 

 

動画はこちら。

近藤科学のKMR-M6にWiFiカメラとパン・チルトを制御するサーボを追加。

 

 

以前作ったプログラムを改造して、カメラ単体での追尾はほぼできるようになった。

Wi-Fiカメラの画像をPCで処理して、指令値をBluetooth経由でKMR-M6に送っている。

PC側の処理は、”Processing”を使っている。

あとは追尾ゲインの調整。その後は歩行モーションとの連動をつくる。

 

 

 動画はこちら。

近藤科学の多脚ロボットKMR-M6でボールを追いかけるロボット(1)

 

 

歩行モーションとの連動をデバッグをする。

カメラでの追尾と連動して歩行でも追尾する様になってきた。

だが、車輪型のロボットと比べ、歩行速度を上げるとカメラ画像のブレが大きくなりやすく追尾が不安定になる。

 

RCB-4HVの設定がイマイチわからない。

モーションの再生とは独立して、外部から通信でカメラ制御用のサーボを動かしたいのだが、モーションを再生するとカメラ用のサーボが初期位置に戻ってしまう。

以前はちゃんと出来ていたような気がするが、どこかいじったかな。

 -> HeartToHeart4のシステム設定に項目があった。

 

歩行モーションを調整して、なんとかうまく追尾できるようになった。

動画はこちら。 

近藤科学の多脚ロボットKMR-M6でボールを追いかけるロボット(2)

 

 

さらに、手動操縦と自動追尾を切り換えられるようにした。 

動画はこちら。

近藤科学の多脚ロボットKMR-M6でボールを追いかけるロボット(3)

 

 

-以上―


小型無線LANカメラと多脚ロボットKMR-M6で物体追跡ロボットを作ってみた。

2011年11月05日 | KMR-M6

小型無線LANカメラと多脚ロボットKMR-M6で物体追跡ロボットを作ってみた。

物体追跡の詳細についてはこちらをどうぞ。 

 

 

無線LANカメラはPLANEXのCS-W07G-CY使用。
画像はPC上のOpenCVで処理。PCとKMR-M6間は有線シリアル接続。
無線LANカメラ->無線LAN->PC(OpenCV)->有線シリアル->KMR-M6、という流れ。

有線シリアル通信部分はいずれ無線接続にしたい。

 

 

今回無線LANカメラ用のバッテリは、USB対応モバイル電源パック使用。
黒にしておけば良かったかな。
USB出力が2つあるのでいずれmbedを搭載するときにも使う予定。

 

動画はこちら。

その1:まだデバッグ中。

 

その2:動きが少し改良された。 

 

 

 

実験用にカラーボール入手。

つづく...


多脚ロボットKMR-M6の製作まとめ その56~63

2011年08月19日 | KMR-M6

多脚ロボットKMR-M6の製作 その56:コントロールボードの取り付け #KMR_M6


多脚ロボットKMR-M6の製作 その57:コントロールボードの取り付け 配線終了。 #KMR_M6


多脚ロボットKMR-M6の製作 その58:バックパックのフタ部の組み立て2 これで本体は完成だ~。つぎはいよいよKMR-M6の設定とモーション再生。 #KMR_M6


多脚ロボットKMR-M6の製作 その59:トリム調整、サンプルモーションの再生終了。ついに完成だ~!! #KMR_M6


多脚ロボットKMR-M6の製作 その60:サンプルモーションを再生した動画はこんな感じ。 #KMR_M6


多脚ロボットKMR-M6の製作 その61:mbedからコマンドを送って、モーションを再生する実験成功。つぎはWiiリモコンから操作できるようにする。 #KMR_M6 #mbed


多脚ロボットKMR-M6の製作 その62:mbed+Bluetoothドングルで、Wiiリモコンを操作してモーションを再生する実験成功。 #KMR_M6 #mbed


14:39 from web
多脚ロボットKMR-M6の製作 その63:Wiiリモコンを操作してモーションを再生する実験成功。動画はこちら。 #KMR_M6 #mbed  http://youtu.be/lD8tnAf5U68

 

 


多脚ロボットKMR-M6の製作まとめ その42~55

2011年08月06日 | KMR-M6

多脚ロボットKMR-M6の製作 その42:本日のヤスリがけの成果。ヤスリがけさえ全部終われば、あとはサクサク行く...はず。 #KMR_M6


多脚ロボットKMR-M6の製作 その43:ジョイントパーツの取り付け2,6 左脚2本のヤスリがけ終了。残りあと1本、長かった~。 #KMR_M6


多脚ロボットKMR-M6の製作 その44:ジョイントパーツの取り付け2,6 やった~ヤスリがけ終了。ついに峠は越えた。あとは組み立てるだけだ~。 #KMR_M6


多脚ロボットKMR-M6の製作 その45:ジョイントパーツの取り付け1,3 左脚3本組み立て中。もうヤスリがけは終わったのでサクサク進む。 #KMR_M6


多脚ロボットKMR-M6の製作 その46:ジョイントパーツの取り付け4 左脚3本組み立て完了。あとは配線だ。 #KMR_M6


多脚ロボットKMR-M6の製作 その47:ついに脚6本完成!!長かった。 #KMR_M6


多脚ロボットKMR-M6の製作 その48:バッテリーホルダーの取り付け。 #KMR_M6


多脚ロボットKMR-M6の製作 その49:上のベースパネルの取り付け 右脚。 #KMR_M6


多脚ロボットKMR-M6の製作 その50:上のベースパネルの取り付け 左脚。やっとそれらしくなってきた。 #KMR_M6


多脚ロボットKMR-M6の製作 その51:下のベースパネルの取り付け メカ部分はこれで完成。つぎはバックパックだ。 #KMR_M6


多脚ロボットKMR-M6の製作 その52:スイッチ部の組み立て 穴が小さくてビスがなかなか入らないので、1.8m/mぐらいのドリルの刃で入口を少し広げておくとやりやすい。 #KMR_M6


多脚ロボットKMR-M6の製作 その53:スイッチ部の組み立て #KMR_M6


多脚ロボットKMR-M6の製作 その54:PCB ベースB の取り付け これをつけると左右真ん中の脚の根元のサーボコネクタに、指が届かなくなるので注意が必要。これをつける前に忘れずにサーボ側の配線をしておく。#KMR_M6


多脚ロボットKMR-M6の製作 その55:バックパックのフタ部の組み立て1  #KMR_M6