RoboShell Composer は RoboShell 用のモーション作成ツールである。コントローラを製作した後は、ロボットのモーション作りが必要になる。モーションは機体が出来上がった後からでないと制作出来ない。その為、使い勝手が悪いとうまいモーションが作成できなくなり、ロボットのトータルの品質が低下する。
RoboShell 用のモーションを手早く、確実に作成できるようにする。オープンソースで公開して、モーション作成ソフトを制作する際の一助になるようにする。
現在、発表されているモーション作成ソフトのGUIにとらわれることなく、新規に設計したUI。
ロボットのモーション作りは競技会や練習会など出先で行うことが多くなるので、ノートPCでも使えるようにコンパクトなUIにした。
RoboShell はスクリプトなどではなく、ネイティブ実行なのでモーションデータは配列内に格納されたデータとして取り扱われる。RoboShell Composer は直接、このコード化されたモーションデータを出力することが可能である。
モーションキャプチャ機能の付いたサーボモータ(近藤ICSシリーズ)なども利用できるようにする。
PC と EZ-SERVO をレベルコンバータを通したシリアルラインか、COMポート設定した miniEZ-USB で接続する。miniEZ-USB の場合は通信速度は 38.4kbps が良いとの報告がある。
RoboShell Composer 起動時に通信ポートの設定をおこなう。現在の RoboShell ではデフォルトは 57600bps なので、そのままでよいだろう。
ICS などではない、普通のサーボの場合は下記のようにモーションを作っていく。
Channel description にサーボモータの使用状況を入力する。左端の番号とEZ-SERVO の番号が対応している。Sync にチェックを入れてスライダーバーを動かして、サーボモータが動くことを確認する。
Edit->Insert Move/Delete Move を行いながら、モーションを入力していく。
Edit->Mode->Get に切り替えた後に、ロボット本体を手で動かしてカタチを作る。
Get ボタンを押して、角度を読み込む。
File->Export... で選択する。
変数名を入力する。KMotionXXX(XXX = 000-999) が良いだろう。
適当なファイル名を入力する。motion000.c としておく。
出力結果。こんな感じで出力される。
その他の機能は、今後加筆予定。
RoboShellComposer build20061120
A.他のアプリケーションで当該ポートを使っていないかどうかを確認してください。特に TeraTerm など動作確認用のソフトを起動している場合が多いです。
シリアルコミュニケーションはこちらの方のクラスライブラリを参考にさせてもらっています。
ありがとうございます。