二足歩行ロボットコミュニティサイト

【サイトの使い方】  【サイトマップ】  【お問い合わせ】 
ロボット動画  |   ロボット写真  |   BBS  |   ダウンロード  |   イベント予定  |   スタッフ日記  |   リンク  |  
ログイン パスワード    新規登録   パスワード紛失  

 

第4回 モーション作成 動きの速さを調整する

唇直下のニキビほどつらいモノは無い。combat-eです。

第三回目です。サブタイトルのつけ方に失敗しましたね。
前回を「基本編」としてしまったばっかりに....

まだまだモーション作成の基礎は続きます。今日はモーションの速さを調整する方法の説明です。

「遷移時間」さてなんと読む?

今回のテーマは「遷移時間」です。
いきなり難しい漢字が出てきました。さあ、大変です。

「遷移時間」は「せんいじかん」と読みます。では「遷移」とはどういう意味でしょうか?ちょっと調べてみましょう。
参考:wikipedia「遷移とは」

どうやら、ある状態からある状態へ移り変わることを表すようです。モーションの中で「遷移」が起こるものといえば....
そう、モーション再生中は、ロボットが常にあるポーズからあるポーズへ移り変わっていますね。

遷移時間は、モーションを再生するときに、あるポーズからあるポーズへの遷移にかかる時間のことを表します。
(ちなみに、このポーズとポーズの間の動きを埋め合わせる機能を「補間」と呼ぶことは、第一回で説明していますね)

RobovieMakerでは、作成したポーズごとに「一つ前のポーズから今のポーズまで」の遷移時間を設定できます。例えば速い正拳突きモーションを作りたい場合は、「気を付け」「腕を曲げる」「腕を前に突き出す」「気を付け」というポーズを作り、「腕を前に突き出す」ポーズの遷移時間を短くします。

いざ実践

さあ、では実際の作業に移ります。RobovieMakerを立ち上げ、ロボットの準備を整えたら、第2回で作成したモーションを読み込んでください。

モーションをファイルから読み込む方法は、前回説明しましたね?そう、開くボタンボタン、もしくはメニューの「ファイル」→「開く」をクリックです。

モーションファイルを読み込んだら、画面右側「モーションエリア」の「モーションスライダ」にご注目ください。

モーションスライダ
右から三番目の数字が遷移時間。数字の横のスピンボタンやツマミで設定を変更する

遷移時間は、モーションスライダの右から三番目の数字(上図の「050」の数字です)にあたります。
遷移時間を変更する場合は、ポーズスライダと同じようにツマミやスピンボタンをマウスで操作します。

遷移時間は1〜239の範囲で設定し、この数値がひとつ増えるごとに遷移時間が16ミリ秒、つまり0.016秒長くなります。遷移時間が「050」ということは、0.016×50=0.8秒ということですね。

あ、ちなみにモーションスライダ右側の二つの数字は、また次回説明します。

では、各ポーズの遷移時間をいろいろいじってみましょう。
ちなみに、モーションに登録したポーズを選択するには、前回説明したとおり、モーションスライダのシグナル(シグナルの部分)をクリックします。

遷移時間を変更したら再生ボタンボタンでモーションを再生してみましょう。

ちなみに、遷移時間が短い、ということは、それだけロボットの動きが速く勢いがつきます。
前転、側転、などのアクロバティックなモーションは、大きな動きをするときに遷移時間を短く設定して、動きに勢いをつけているんですね。

遷移時間を短くしすぎるとおかしくなる...?

「遷移時間を極端に短くすると、ロボットの動きがおかしくなるよ?」という方はいませんか?

この原因は、モーションファイルではなく、ロボットのサーボモータの性能に関係あります。

ここでひとつ、サーボモータの性能表を見てみましょう。

【ロボット用サーボモータ VS-S090Jの性能表】
  • 寸法:38×19×38.5mm
  • トルク:9.2kg/cm
  • スピード:0.11S/60°
  • 重量:43g
  • 最大動作力:180°
  • 最大電圧:4V〜9V(7.4V測定)

皆さん、上から三番目「スピード」の項目にご注目ください。このサーボモータが動くスピードは、最大で「0.11S/60°」です。

「0.11S/60°って何よ?」という方に、内容を細かく分解して見ていきましょう。
「0.11S」の「S」は「Second」、つまり「秒」を表します。つまり、0.11S=0.11秒ですね。もう一方の「60°」は、当然ながら角度を表します。

ということは、「0.11秒 / 60°」、というわけで、このサーボモータは最も早く動かした場合に60°を0.11秒の速さで動かすことができる、ということです。

例えば、このサーボモータに対して、90°を遷移時間001=0.016秒で動くように命令するとどうでしょうか? 残念ながら間に合いません。0.016秒たった時点で、目標の角度に達していなくても次のポーズの角度に目標が移ります。

そのため、あまり短い遷移時間を設定すると思ったとおりの動きにならないのです。

モーション全体の遷移時間を調整したい時には?

ポーズ一つ一つの遷移時間を調整する方法はわかりましたが、「今のモーションを2倍早くしたい」というような場合はどうすればよいのでしょうか?
いちいち全てのポーズの遷移時間を、きっちり1/2しないといけないのでしょうか?

実は、RobovieMakerにはモーション全体の速さをまとめて調整する便利な機能が備わっているのです。

画面の右上に注目です。

再生時間オーバーライド
「100%」の数字と「反映」のボタンに注目

なにやら再生時間オーバーライドというものがありますね。この数字は横のスピンボタンで調整できます。ためしに、この数字を200%にして、モーションを再生してみましょう。

どうですか?モーションの速さが全体的にゆっくりになりましたね。これは、もともとのモーションを、二倍の時間をかけて再生しているのです。
では、逆に50%にして再生してみましょう。モーションが元の速度より速くなったと思います。

もうお分かりですね。この数値はモーション全体の再生時間の割合を示しているのです。これを「再生時間オーバーライド」といいます。

しかし、ここで注意です。なんと再生時間オーバーライドはファイルに保存されないのです。では、せっかく変更したモーションの速さをファイルに保存するにはどうすればよいのでしょうか。

答えは、「右の反映ボタンボタンを押す」でした。再生時間オーバーライドを変更して反映ボタンボタンを押してみてください。すると、モーション中の全てのポーズの遷移時間が同時に変わり、再生時間オーバーライドが100%に戻ったと思います。

この通り、反映ボタンボタンは設定した再生時間オーバーライドを全てのポーズに反映させる機能を持っています。
これでモーションをファイルに保存すると、モーション全体の速度が変更された状態で記録されます。

次回予告

今回はかなり簡単でしたね。第1回から今回までの内容を踏まえて、いくつかモーションを作ってみてください。
また、質問コーナーには、毎回の連載の補足事項も掲載しています。こちらもぜひチェックしてください。
RobovieMakerマスター講座 質問コーナー

モーション作成の基礎もいよいよ次で最後です。

さて、次回は最後の難関「ループ構造」です。
ループ構造は、読んで字のごとくモーション再生中同じ動作(ポーズ)を繰り返し行う機能です。
たったそれだけの機能とお思いでしょうが、どっこい、「ロボットのモーション」という概念に当てはめると、様々なしがらみが発生するのです。

過去に多くの人がこの部分を理解できず苦しんできました。

一筋縄には行かない「ループ構造」、さあ、皆さん、心してかかってください。


前のページ
第3回 モーション作成 基本編(後編)
コンテンツのトップ 次のページ
第5回 モーション作成 ループ構造について
検索
Loading
メインメニュー