ロビをKinectで動かしてみる
2016年11月20日


 今回はKinectを使ってリモート接続をしたロビを動かしてみました。
 KinectはMicroSoft XBox用のモーションセンサーですがWindows PCからも制御できます。



 PCに接続するためにはUSBアダプターが必要です。

 またWindowsで制御するためには Kinect for Windows SDKをインストールする必要があります。

 現在Kinect for Windows SDK の最新バージョンは2.0ですがWindows 8以降しか対応していないため今回はKinect for Windows SDK v 1.8をインストールしました。
 弊社のメインPCはWindows 10 64bitですが今回使用したXbox 360 Kinect サンサーに対応するドライバーが見つからなかったのでWindows 7 32bitで行いました。

 Kinect for Windows SDK v 1.8は以下のURLよりダウンロードできます。

 Download Kinect for Windows SDK v1.8 from Official Microsoft Download Center

 ドライバーはKinectをUSBでPCに接続すると自動的にオンラインインストールが始まります。



 今回RBKinectというWindowsアプリケーションを作成しました。
 このアプリケーションはロビモーションシミュレーターと連動して動くようになっています。

 まずロビモーションシミュレーターでシミュレーション画像を動かしてみます。
 RBKinectとシミュレーターはSERVO.LOGというファイルを介してシミュレーション画像を動かします。



 シミュレーターのパラメーター設定で設定ダイアログを開きます。
 接続先をアプリケーションにします。
 リモートフォルダー変更ボタンでリモートフェルダーのREMOTE.LOGを開きます。
 シミュレーターと接続する場合はPC内の任意の場所にリモート接続プログラムのADDONフォルダーを置いておきます。
 この中にあるREMOTE.LOGを指定してください。
 設定したらOKボタンで設定ダイアログを閉じると設定した設定ファイルに書き込まれます。
 RBKinectはこの設定ファイルを読み込んでシミュレーターと情報共有します。

 シミュレーターのでリモート接続を開始ておきます。
 次にRBKinect.exeを起動します。
 Kinectを初期化するのに少し時間がかかりますがしばらくするとするとRBKinectの画面に骨格を表す線が表示されます。
 Kinectがモーションに認識するように手を大きく動かしてみてください。

 RBKinectを最初に起動すると画面の下側Seatedにチェックが入っています。



 このチェックがあるとKinectは上半身しか認識しません。
 サーボ速度でサーボを動かす速度が設定できます。
 またロビをつないだ時にはサーボトルクが有効になります。
 Kinectの誤認識でサーボに無理な力がかからないように最初は25位の値で指定してください。
 Kinectでロビを確実に操作できるようになってから100に戻してください。

 Seatedのチェックを外すと全身が認識されるようになります。



 これに合わせてロビは立ち上がって腰と足を動かすようになります。



 次はリモート接続をしたロビを動かしてみます。
 パラメーター設定で接続先をUSB接続またはFlashAirに設定します。
 USB接続にした場合はリモートフォルダー変更でロビのSDカードのADDONフォルダーのREMOTE.LOGを指定してください。

 ロビを動かす場合はシミュレーターはパラメーターを設定するだけでロビを動かすのには使いません。
 RBKinectを起動するとリモート接続を開始してロビが「準備OK」といいます。
 モーションをモーションを認識するとロビがそのモーションに合わせて動きます。
 ロビの姿勢はRBKinectのSeatedチェックに合わせられますので必ずロビの姿勢に合わせって起動時にチェックしたり外したたりしてください。
 これが合っていないとロビは急に立ち上がったり座ったりするので注意してください。

 RBKinectを終了(右上×ボタン)するとロビとのリモート接続は終了してロビは待ち状態となります。



 Kinectで認識したモーションを記録してモーションプログラムを作成する事ができます。
 最初に行ったKinectの認識モーションでシミュレーション画像を動かしておきます。
 モーション作成コマンドでモーションダイアログを開きます。



 モーション記録チェックを付けるとKinectで認識したモーションが記録されていきます。
 チェックを外すと記録が停止します。
 再びチェックすると続けて記録できます。
 記録したモーションは通常のモーション編集機能で編集したりモーションプログラムに書き出したりすることができます。



 KBKinect 以下のURLよりダウンロードできます。

 RBKinect.zip

 なおロビモーションシミュレーターは4.00以降、リモート接続ロビプグラムは3.60以降が必要です。(以下のURLよりダウンロードできます)

 ロビモーションシミュレーター

目次に戻る