カーネルチューニング |
―― カーネルのチューニング内容について教えてもらえますか?
宮重 通常のカーネルの400倍くらい速くなっていて、ほぼ1ミリ秒の精度になるようにしています。カーネル自体のクロックスピードの定義をチューンアップして、マルチタスクのシェアリング間隔を極端に小さくしています。一般的な方法だと、100ミリ秒くらいにしかならないので、それだとサーボが制御しにくいのです。
―― それだけ切り替えが多いとCPUパワーを使うと思いますが、まだ余裕はあるのですか?
宮重 もうちょっと余裕がありますけど、あまり速くしすぎても(笑)。
春日 実用上は、約1ミリ秒でちょうどいい感じで動きますね。
宮重 リアルタイムカーネルではなくても、いけるかなという感じです。
|
モーション関連ライブラリ |
―― モーション関連ライブラリは、歩行エンジンとモーション再生エンジンの2種類ということですが?
宮重 モーション再生エンジンは、モーションエディタで作ったデータを再生するものです。歩行エンジンはその改造版で、歩行しているモーションデータを再生するものですね。
―― 無線LANで通信してモーションデータを送っているのですか?
宮重 いえ、送っているのはコマンドだけです。モーションデータは、CFカードの空き容量部分が約30MBあるのでそこに置いたり、オンメモリで持てるようになっています。そこに、任意の番号のモーションを再生しろといったコマンドを送っているのです。
―― 登録できるモーションデータの数はいくつくらいですか?
宮重 モーションデータは1ファイル当たりだいたい200KBなので、好きなだけ登録できますよ(笑)。
―― タイムスライスはどれくらいですか?
宮重 制御的には、サーボが受け付ける10ミリ秒ですね。ただ、モーションを作るときには、タイムスライスは別にないんですよ。
春日 たとえば、「あるポーズから次のポーズまで10秒で動け」と命令すると、モーション再生エンジンが自動的に補完しながら動作します。キット付属のモーションエディタで手軽に動きを付けられるので、いろんな人に挑戦してみてほしいですね。
NetBSDベース、PowerPC採用、しかもソフトウェア屋のためのプラットフォーム作りを目指すロボットとなると、興味を持つUNIX USER読者は多いのではないだろうか。スピーシーズのWebサイトに詳細な情報があるので、我こそはという方はぜひ参照してほしい。
Copyright(c)2010 SOFTBANK Creative Inc. All rights reserved.