Choreonoid は、ロボットの多様な動作を直接作成、編集可能にすることを目標としたソフトウェアです。 このソフトウェアには、次のような特徴があります。
プログラミングや実演スキルを必要としない
これまでの人間型ロボットの動作を教示する場合には、動作プログラムを作成したり、教示動作を人間が実演し、それをモーションキャプチャ装置等でデータ化することで教示したりしていました。 このような方法では、高いプログラミングスキルや実演スキル、大掛かりな装置等が必要でした。 しかし、このソフトウェアを使うことで、CGのロボットの動作を生成するようにPCのみで簡単にロボットの動作生成を行うことができます。
キーフレームベースの姿勢設定と動作補完機能
このソフトウェアにおけるロボットの動作生成は、3次元ビュー上に表示されたロボットをマウスで直接動かすことで姿勢を設定し、その姿勢をキーフレームとし時間軸上に連続的に配置することで実現されています。 以下、このキーフレームの時のロボットの姿勢をキーポーズと呼ぶことにします。
2足歩行ロボットの全身動作を作成可能
キーフレーム間の姿勢の補完には動力学的な特性を考慮して行われ、必要があればキーフレームの姿勢を修正することで実行中に倒れないような動作を生成することが可能になっています。これにより、2足歩行ロボットの全身動作もCGキャラクタと同様の感覚で作成することが可能になりました。
C++による高速動作と様々なプラグインによる機能拡張
Choreonoid は、全てC++言語により記述されています。 そのおかげで比較的高速に3次元CGや動作生成の処理を行うことが可能になっています。 更に、プラグインシステムが導入されており、独自の編集対象データ形式やGUIを自由に追加し、既存のオブジェクトと連携させることが可能になっています。
Choreonoid は、下図のようなソフトウェアモジュール構成になっています。 Choreonoid では、Baseモジュールを中心とするフレームワークの上に、ユーザのロボットアプリケーションに対する様々な拡張機能をプラグインとして開発することができます。
また、プラグインからは、Choreonoid フレームワークで提供する機能はもちろん、他のプラグインの機能を利用することもできるため、グラフィカルなロボットアプリケーションを効率的に開発することができます。 現在、Choreonoid で提供しているプラグインとして下記のようなものがあります。
Choreonoid は、Windows XP SP2 以上のOS または、Linux 等のUNUX 系OS で利用可能です。 現在、動作の確認がとれているOS は、Windows XP SP2, Windows 7, Ubuntu Linux 10.04, 10.10, 11.04 です。 また、Choreonoid は、オープンソースライセンスの1つである GNU Lesser General Public License ver2.1(LGPL ver2.1)で配布されています。 ユーザの開発するプラグインはChoreonoidの派生物とはみなされないため、開発したプラグインの配布・販売はソース非公開も含む任意のラインセンスで行うことが 可能です。