ソフトを開発しようと思った動機、背景
「ロビ」は、国内だけで12万台以上が販売されているパートワーク形式のロボットです。私自身も2年前に組み立てて、完成後もプログラムを自作して楽しんでいます。いままで「ロビボイスプレイヤー」や「ロビモーションエディタ」などの関連ソフトを開発して、多くの「ロビ」ユーザの方々に使っていただいています。いままでは、作成したプログラムは実際の「ロビ」で確認する必要がありましたが、実物を使うため、プログラムの誤動作により壊れる可能性があります。私自身も高価なサーボモーターを何度も壊した経験があります。
そこで、実際の「ロビ」を使わなくてもでなくて動作検証ができるソフトウェアの開発を行いました。また、「ロビ」のすばらしさを「ロビ」ユーザ以外の方たちにも体験していただこうと、本体がなくても豊富な「ロビ」のプログラムが動かせるようにしています。
開発中に苦労した点
「ロビ」は、サーボモーターの回転で直接、各パーツを動かしているため、3Dソフトで各パーツの動きをプログラムするのは比較的簡単にできます。しかし、頭の縦横の動きは複数のリンクを組み合わせているため、動きをシミュレーションするためには独自のアルゴリズムで計算する必要がありました。
また、「ロビ」のプログラムは独自の(アセンブラに近い)言語でコーディングされています。プログラムの仕様書がないので、実際のプログラムを解析して各命令をシミュレーションしました。音声認識やセンサーなどのハードウェアに依存した命令もありますが、音声認識はWindowsの音声認識ソフトと連携させて実現させています。
ユーザにお勧めする使い方
「ロビ」ユーザの方には、自作プログラムの事前シミュレーションに使っていただければと思います。デバッグ機能は実際に「ロビ」をつないで動かしながら、プログラムをデバッグすることができます。
「ロビ」ユーザ以外の方でも、「ロビ」のプログラムだけ入手することができます。「ロビ」のプログラムには、歩行やダンスをさせる以外に数多くの会話プログラムが含まれています。本ソフトはこれらのプログラムをすべてシミュレーションできますので、本体がなくても動かすことができます。
また「ロビモーションエディター」は、本体がなくても「ロビ」のプログラムを作成することができますので、本ソフトと組み合わせて、自作プログラムを動かすことができます。
なお「ロビ」は、二足歩行ロボットの基本的な動きをベースにしていますので、本ソフトは「ロビ」以外のロボットもシミュレーションすることができます。独自のロボットを設計する上で、本ソフトを活用していただければと思います。
今後のバージョンアップ予定
新しい「ロビ」も計画されているようですので、それに対応してゆくつもりです。また、今後も「ロビ」以外の3Dモデルを追加してゆきますので、必要であれば本プログラムもバージョンアップしてゆきます。
本ソフトは「ロビ」をベースにしていますが、汎用的なロボットシミュレーターとしても使えるよう、3Dモデルのカスタマイズが簡単にできるような仕組みも考えてゆきます。
(メディアクラフト)