DAICON7 非公式Blog

DAICON7有志による、SFネタ?溢れるBlogです。

ロボットを動かそう!(その2)

 前回、座った姿勢から直立姿勢へ移行するモーション作りで『座ったポーズから立ちポーズに繋ぐだけではできない』と書きました。今回は、まずその理由を説明するところからはじめましょう。

 第一の原因は、サーボが動作する角速度が一定でないという点にあります。
 前の日記にあるロボットの画像『座ったポーズ』から直立姿勢に移行する場合、脚が伸びて立ち上がるのと同時に、腕が身体の前から横へ移動します。
 立ち上がるためにサーボが回転しなければならない角度はまちまちですが、全てのサーボがRobovieMaker2で指定されたステップ数で動作を終えるようになっています。
 具体的にいうと、脚部のサーボは非常に早く動き、腕を動かすサーボはゆっくり動きます。このため、立ち上がる途中で膝のあたりと手の先端部分が接触して「ガチャン」という不快な音を立てるのです。
 このモーションの場合は単にぶつかって音を立てるだけですが、場合によっては部品同士が引っかかって動けなくなり(サーボロックとかモーターロックとか呼びます)、結果サーボに過大な負担がかかって故障の原因になりかねません。
 そんなわけで、脚を伸ばす前にまず、両腕を広げるポーズを作らなければなりません。
ロボット腕を広げる
 次にここから脚を伸ばして立ち上がるのですが、ここでまた問題発生です。今度の原因は、サーボの動作角度の違いです。
ロボット脚の図
 右図を見るとわかるように、脚を動かす3つのサーボのうち、腰部と足首部は90°弱動けばいいわけですが、膝部分は180°近く回転する必要があります。膝の動作角度は倍になるのです。
 ところでサーボの動作する角速度は、サーボに内蔵されているモーターとギア比によって上限が決まっています。見た目に「スッ」と立ち上がっているように見せるために、ステップ数は少なめにしてあるのですが、このステップ数では膝のサーボがきちんと回転しきれないようです。
 結果、右図の一番右のように腰と足首は立ち上がったポーズになっているのに、膝はまだ曲がっているために、立ち上がる途中で後ろ向きに倒れるようになってしまいました。立ち上がり動作の勢いの影響もあるのでしょう。
 そこで、膝サーボの動作に合わせてステップ数を増やすよりはすばやく直立姿勢に移行できるように、立ち上がる直前で少し前重心のポーズを挟むことにしました。
ロボット立ち上がる直前
 足首のサーボだけをわずかに前重心になるようにして、膝サーボの動きを待ちつつ立ち上がり動作の慣性を打ち消すようにしてみたのです。
 ここまで立ち上がれば、あとは足首をわずかに起こすだけ。
ロボット立ちポーズ
 これで、『座った姿勢からの立ち上がり』モーションが完成しました。
 ホビーロボットのモーションの作り方が、なんとなくわかっていただけたでしょうか?
 続く。


都築由浩 | ロボ企画室は情報だだ漏れ | 22:50
comments (0) | trackback (x)

ロボットを動かそう!(その1)

 さて今回は、ロボット本体のハードウェアよりも大事なソフトウェア面、すなわちロボットの『モーション』についてお話しします。ちょっと難しいですが、二回に分けて一番簡単な作例でわかりやすくいきますのでおつきあい下さい。
 今回は、とりあえず作成するモーションの目的と、最初の状態、それからモーション作りに使うソフトウェア『RobovieMaker2』の説明です。

 ディーラーズルームの看板ロボとして使うことになったナッシュ君。しかし、ずっと電源入れっぱなしで立たせていては、バッテリーがぜんぜん保ちません。
 そんなわけで動かさないときにはスイッチを切ってしまいたいわけですが、ホビーロボットは、立たせたままで電源を切ってしまうとちょっとしたショックで倒れてしまいます。なにしろ全ての関節にまったく力が入っていない状態なのですから。
 そこで、動かさないときにはナッシュ君は座らせた状態で待機するようにしようと思いつきました。座った状態から立ち上がり、それから歩くなり挨拶するなりいろんなデモを始めるようにしようと思ったのです。
 歩行やあいさつ、それにサッカーのシュートやバトルの横パンチなどのモーションは、キットにサンプルとして付いてくるので作らなくてもいいのですが、『座った状態から立ち上がる』『立っている状態から座る』モーションは自分で作るしかありません。ま、『歩行』モーションに比べれば格段に簡単そうだというのは、皆さんにもわかってもらえるでしょう。
 ここでは、『座った状態から立ち上がる』モーションを例に、モーションの作り方をご説明いたします。
ロボットが座っている
 上画像が、モーションの最初の状態です。正座のような姿勢で、手の先は膝の上に乗せたような姿勢になっています。モーションはこの姿勢から直立姿勢にするのが目的です。
RobovieMaker2座り姿勢
 上画像はモーション作りに使う『RobovieMaker2』の画面です。
 モーションはパラパラマンガあるいはアニメーションの原画を描くように作っていきます。要所要所のポーズを作り、そのポーズの間をどのくらいの時間(ステップ数)で動かすかを指定するのです。
 画面の右側のフローチャートが、その各ポーズの流れを指定する部分です。1の赤丸を見れば、今はSTART直後の座った姿勢であることがわかります。黒く反転表示された四角いポーズブロックの左下の隅に数字が見えるでしょうか? これがステップ数。つまり前の姿勢からこのポーズブロックが表す姿勢まで移行する時間を表しています。この数字が大きくなればなるほどロボットの動きがゆっくりになるのです。
 そして現在のポーズブロックの各関節の位置(つまりアニメーションのたとえで言えば原画の絵そのもの)を示しているのが、画面左側の部分です。スライダがいっぱい並んでいますが、今は赤丸を付けた部分に注目してください。
 すべてのスライダが0になれば、ロボットは直立します。つまり今は赤丸を付けた関節=サーボが、それぞれのスライダが示しているだけの位置まで動いて、座った姿勢を作っているのです。
 これらのスライダをマウスでドラッグして動かすことで、サーボを一つずつ動かしてロボットのポーズを変えることができます。
 つまり一番単純に「座った姿勢」から「立った姿勢」になるモーションを作りたければ、このポーズブロックの次に全てのスライダが0になった「立った姿勢」のポーズブロックを作ってやれば完成。ということになります。
 ところが現実はそう甘くありません。いろいろな条件を考えなければいけないのです。
 そのあたりのことを、次回ご説明いたします。
 続く。


都築由浩 | ロボ企画室は情報だだ漏れ | 3:22
comments (0) | trackback (x)

ロボットの声はMacで作る

 ロボットは完成し、一応歩けるようにはなりましたが、せっかくディーラーズルームの看板ロボにしようというのですから、しゃべらないことにはつまらない。
 といっても、AIと音声出力を装備して自由自在にしゃべらせるのではなく、モーションに応じた音声データをあらかじめ作っておいて、動かしながら再生しようというわけです。
 私はもともとMac使い。Macならば、簡単に合成音声を作ることができます。MacOSXにはテキスト読み上げ用の音声再生ソフトが標準で付いてくるのです。もともとは目の不自由な人のための機能なので、WINDOWSでも同じようなソフトウェアはあるとは思いますが。
 MacOSXに標準で付いてくるのは英語用の読み上げソフトのみなのですが、同じ音声を使ってフリーウェアで日本語のテキストを読めるソフトが配布されています。私はiSpeechというフリーウェアを使用しています。
iSpeechの画面
 上画像がその実際の画面で、再生ボタンを押すとグレーのウインドウ内に入力したテキストを読み上げてくれます。『AIFF』ボタンを押すと、音声をAIFF形式のファイルに出力してくれます。
iSpeechのプルダウンメニュー
 左画像のように『VOICE』というプルダウンメニューで、声質を選ぶことができます。私がSpirito-Oroで使っているのは『Trinoids』といういかにも機械的な音声です。もう少し人間的な声や女性風の声、あるいはメロディーに乗せてテキストを読み上げるような少し変わった声もあるのですが、抑揚はないのでどれを聞いてもはっきり合成音声だとわかります。ロボットの声のイメージが強いのと、聞きやすいのとで『Trinoids』を選んでいます。下に、QuickTime形式に変換した音声データへのリンクを載せておきます。興味のある方は聞いてみてください。
音声データサンプル
 プルダウンメニューの横のツマミで再生速度を調整できます。音の高低には影響しないので、速度を変えることで少し声の表情を変えることができます。(急いでいるときは早口になるなど)
 たとえば「やったー」という言葉だと、そのまま「やったー」と入力する場合と「や、たああぁぁ」などと入力した場合とで少し音声が変わったりしますので、少しだけですがこれで表情を変えることができます。

 iSpeechから出力される音声データはAIFF形式ですので、そのままではVS-RC003(RB2000のボード)で再生することはできません。音声データの変換には、spwaveというフリーウェアを使っています。
spwaveの画面
 上画像がiSpeechと同じ『ありがとうございます』という音声データを表示した画面です。波形から音声を切り分けたりフェードイン/アウトなど簡単な編集も可能なのですが、まず使うことはないですね。新規保存でMicroSoftADPCM形式に変換し、拡張子を『.wav』にすれば、そのままWINDOWS機に移してRobovieMaker2で使うことができるようになります。

 と、まあ、たったこれだけです。
 簡単ですね。安直ですね。我ながら。
 次回は、RobovieMaker2でモーションを作る手順について簡単に説明します。
 続く。


都築由浩 | ロボ企画室は情報だだ漏れ | 23:12
comments (0) | trackback (x)

ロボット大地に立つ

 前々回は手足と頭まで組み上がった状態まで進んだところで終わってしまいました。
 あそこまでいけばあとは割と簡単です。
 手足と頭をそれぞれ胴体の部品に取り付けてから、内部にコントロールボードを組み込みつつ箱状の胴体を組み立てればいいのです。
 てなわけでRB2000が組み上がりました。
ロボット完成画像
 実は組み立て前に標準のモーションをコントロールボードに入れておいたので、この時点で動かすことができます。
 なおこの画像でロボットのお尻当たりから見えている白いケーブルは、有線のPlayStation2標準コントローラーのケーブルです。無線コントローラーを買わなきゃいけなかったんですが、青色のがなかなか売っていなくて……

 動けるといっても、細かいサーボの調整がまだなので上手く歩けませんでした(2〜3歩でコケる)。これには、WINDOWS機に接続して基準姿勢を合わせてやる必要があるのです。
 さて、ここで難題にぶつかりました。ロボットの名前を何にしようか? という問題です。
 ホビーロボットの世界では、自分のロボットには名前を付けるのが決まり事になっているようで、WINDOWS機にインストールするソフトウェアも初回起動時にいきなり『ロボットの名前を入力してください』と表示します。
 このロボットは当面はSF大会等でディーラーズルームの看板ロボとして使い、バトル大会に出場する気はありません。
(それならことさら格好いい名前にする必要はないか)と思い直して、当分は「ナッシュ」でいくことにしました。拙著『ミリー・ザ・ボンバー』シリーズに登場するナビゲーションシステム/ロボットの名前です。

 翌日、デスクトップWIN機を使わせてもらっている某社事務所にてサーボの初期設定を微調整し、無事歩行に成功しました。といってもリノリューム貼りの床面では滑りすぎ&有線コントローラーのケーブル剛性のせいですごく不安定。
 こんなとき、ホビーロボットの世界ではホームセンターなどで売っている『養生テープ』を足の裏に貼り付けて床面と足裏の滑り具合を調整して安定させるのが一般的。そんなわけで養生テープを買いに行くのが次の課題になりました。
 ディーラーズルームのデモに使用するための「座る」モーションと「立ち上がる」モーションも作成。モーションを作るのに使う『RobovieMaker』というソフトはわりに使いやすく、思ったより簡単に作れました。
 作ったモーションをPS2コントローラーのボタンに割り付けて、USB経由でロボットのコントロールボードにデータを送れば、もうWINDOWS機に頼らずともナッシュ君を動かすことができるようになりました。
 でも、このままじゃディーラーズルームの看板ロボとしては押し出しが弱いですね。やっぱりしゃべらないと。
 そんなわけで次回は音声データの作り方をご紹介します。

 続く。


都築由浩 | ロボ企画室は情報だだ漏れ | 0:32
comments (0) | trackback (x)

ロボット企画関連ムック発売!

 今回は予定を変更して、ROBO HUBに関係の深いムックを紹介しましょう。3月25日に発売されたばかりの新刊です。
カスタムロボットパーフェクトブック表紙

カスタムロボットパーフェクトブック
毎日コミュニケーションズ刊
著者:岩気裕司・田中誠二
定価:2,940円(税込)
B5判 192ページ
ISBN978-4-8399-2566-6


 著者の岩気裕司さんはROBO HUBのロボット競技会を担当してもらっているロボットフォースの社長。田中誠二さんはデモショーをお願いしている大日本技研の代表です。お二方ともDAICON7当日会場まで来ていただける予定ですので、サインとかもらっちゃったりできると思いますよ。


 なんか熱心に読んでます(笑)

都築由浩 | ロボ企画室は情報だだ漏れ | 23:37
comments (0) | trackback (x)

NEWEST : PageTop : AFTER : BEFORE

CALENDAR

<<  2010年09月  >>

      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30   

DAICON7 Website

NEW ENTRIES

COMMENTS

MODE

閲覧形式: ゲストモード

USER ID:
PASS:

ARCHIVES

CATEGORIES

PROFILE

OTHER

COUNTER

  • 合計: 192665
    今日: 6
    昨日: 84

POWERED BY

BLOGN(ぶろぐん)