解説! ロボット開発環境Robotics Studio

解説! ロボット開発環境Robotics Studio(1)

ロボット業界は、フォードの出現を待っている

大川 善邦 工学博士 日本大学工学部非常勤講師/大阪大学名誉教授 2007/2/9

- PR -

サービスの開発


 Robotics Studio 1.0には「Visual Programming Language(以下、VPL)」が標準で搭載されています(注)。これを使えば、視覚的にサービスの開発ができます。UMLを使ってシステムの構造を図式化して、そこからプログラムのスケルトンを生成するという手法に似ていますが、VPLはあくまでもボットムアップ言語です。

注:Visual C#やVisual Basicなどでも開発可能。

 VPLは、画面左のツールボックスに用意されているBasic ActivitiesとServicesを画面中央のDiagramに配置し、それらを線で結んで処理を表現します。画面2に、英語で「Hello World」と発声するVPLプログラムの例を示します。

画面2 Visual Programming Languageの画面(画像をクリックすると拡大します)

ロボットとの接続


 ここでは、Robotics Studio 1.0とロボットの接続について説明します。

 まず、ロボットのタイプを下記の2つに分類します。

  1. ロボットの制御装置が.NET Framework 3.0に対応している(大型ロボット、工場の溶接ロボットなど)

  2. ロボットの制御装置が小型のCPUを使っていて、.NET Framework 3.0に対応しない(H8やPICなどのマイコン制御による小型ロボット)

 上記1の場合ロボットの制御装置内にノードを設け、このノードにユーザーのサービスを配置して、ロボットの制御を行います。

 上記2の場合は、PCにノードを設けます。Bluetoothなどを介してノードとロボットは通信します。この際、ロボットに埋め込む制御系(モーターのPID制御など)を「ファームウェア」といいます。図3は、PCのノードとロボットが通信しているイメージです。


図3 ノードとロボットが通信するイメージ

 PCのノードはロボットに対して、通信を介してコマンドを送ります。その反対に、ロボットが障害物を検知した場合などは、通信を介して検知結果をノードへ通知するのです。

物理学の法則を適用したシミュレータ

 通常、ロボットの制御プログラムは画像認識、音声認識、人工知能、ニューラルネットワークなどのアルゴリズムを使うので非常に複雑です。Robotics Studio 1.0では、プログラムの開発の効率を上げるために実機テストの前に「Visual Simulation Environment」というシミュレータを使ってテストできます。

画面3 Visual Simulation Environmentでのシミュレーションの様子(画像をクリックすると拡大します)

 シミュレーションを現実に近づけるために、物体の運動計算に「物理学の法則」を適用します。例えば、「空中に飛び出した物体の軌道」「物体と物体の衝突時における挙動」などを計算する際に「ニュートンの運動方程式」を用いています。また、これらの物理計算を高速処理するために、米AGEIA Technologiesの物理演算処理プロセッサ「PhysX」にも対応しています。

関連リンク:
AGEIA
http://www.ageia.com/
PhysX
http://www.ageia.com/physx/

 次回は、Robotics Studio 1.0に実機のロボットを接続してテストを行ってみます。VPLとシミュレータの解説を交えながらテスト結果にも触れたいと思います。

スキルアップ/キャリアアップ(JOB@IT)

スポンサーからのお知らせ

- PR -
@IT Sepcial

震災関連・復興支援情報

震災関連・復興支援情報
@IT MONOist/EE Times Japan/環境メディアの製造業技術者向け3メディアを中心に、震災関連/復興支援情報を集めました

次世代エンベデッドコーナー

次世代エンベデッド
“次世代”の組み込み機器を開発するエンジニアを支援するコーナー。新潮流・新技術をインタビューやコラム、解説記事で分かりやすく紹介!

Windows Embeddedコーナー

Windows Embedded
Windows Embedded専門コーナー。Windows Embedded StandardやWindows Embedded CEをはじめとする「Windows Embedded」ファミリの最新動向や技術情報をお届けします!!

Androidコーナー

Android
Android専門コーナー。組み込みデバイスへの適用からアプリケーション開発、イベントレポート、ニュースなどAndroidに関するさまざまな技術情報がここに集結!!

@IT MONOist 求人情報

- PR -