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

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

Robovie-Maker について

Robovie-Makerの使い方についてのわからないことがあったら、質問してくださいね。
Robovie-Maker マスターへの道 の感想やコメントもこちらにどうぞ(^^)

1: Install VS-IX001 in Robovie X(17)   2: ロボットに歌わせたい。。。(5)   3: ダブルサーボの設定について(3)   4: MP3 プレイヤーボードの音楽をコントローラで再生する際に決まった曲しか流れない(5)   5: ポーズスライダーについて(3)   6: 自律用プログラムについて(7)   7: 一定時間経過後の信号出力について(4)   8: サーボモータがぐらぐら…(2)   9: RobovieMakerについて(2)   10: VS-RC003との通信について(5)   11: 自動起き上がりの件について(2)   12: ポーズスライダについて(3)   13: RobovieMaker2小ネタ(1)   14: モーションファイルの合計サイズ(4)   15: RobovieMaker2配布開始(5)   16: ロボビーメーカーとサーボ位置(2)   17: サーボモータの位置補正と基準ポーズについて(1)   18: ポーズエリアの背景変更方法(1)   19: RobovieMaker連載 補足事項(6)  

 新規投稿 | スレッド表示 | ツリー表示 | 投稿順表示 | i-mode | トップ 
« 1 2 (3) 4 »

1 自動起き上がりの件について
sexy-robo
新米

sexy-robo 2008-10-8 17:40:23  [返信] [編集]

お世話になります。
sexy-roboと申します。

Robovie-Xにジャイロを取り付けたので、自動起き上がりに挑戦だー!(いきなりそこに飛んでいる辺りが無謀だと思えるのですが・・・)と思ってTRY。

モードスイッチ0と1を残して、後のデータは消して、モードスイッチ2に新しく「テストファイル.rsc」を作り、仰向けから起き上がりファイルを読み込んでRobovie-Makerマスターの指示通りに、やってみたのですが・・・

Robovie-Xさんは頑張り屋さんなのかよっぽど起き上がりが好きなのか・・・腕立て伏せばっかりやってます

加速度センサ設定までは出来たと思います。
Y軸、X軸、Z軸全て機体を動かすたびに数値も動いています。


じゃあ、次は「加速度センサで転倒検出」だと思ったのですが、これがうまくいきません。
気になるのは、説明の画面に使われているのは、Robovie-Maker2ではなくて、Robovie-Makerですよねぇ。
基本的にはそんなに変わりがないのだろうとは思いますが、私が間違いを起こしているというか、Robovie-Xが腕立てばっかりやっている原因は、きっとアナログ入力のところだと思うんです。

「加速度センサの値を格納する変数は129〜131」との記載がありましたので、130に設定しました。
「閾値以上」「閾値以下」両方試しましたが、ダメでした。
「変数??の現在値:」の数値も変動していて、それに近い数字を入れてはいるのですが、数値が近すぎたのかなぁ???

腕立て繰り返している辺り、途中までは成功しているんだと思うんですが、どこをどうしたらうまく行くのか分かりません。
こんな質問で、ちゃんと情報が伝わるのか、何か情報は不足していないか気にはなりますが、助けていただきたいと思います。
よろしくお願いします。
2 Re: 自動起き上がりの件について
combat-e
長老

combat-e 2008-10-10 12:19:12  [返信] [編集]

sexy-robo さん、こんにちは。
いただいたご質問にお答えします。

RobovieMaker講座の説明はRB2000用なので、Robovie-Xでは内容が若干異なる部分があります。
とりあえずRobovie-Xでの設定方法を順番に説明します。

1.転倒検出に使用する変数番号とセンサ値の確認

まずRobovieMakerよりロボットと通信し、メニューの「プロジェクトの設定」→「CPUの設定」をクリックします。
続いて、「拡張機器」→(ダイアログ中のリストから「VS-IX001ジャイロセンサ・・・」をクリック)→「追加」→「デバイスの詳細設定」とクリックし、現在接続しているジャイロセンサ・加速度センサ拡張ボードの設定画面を出します。



この状態でロボットを前後に倒すと加速度センサの「X軸」の値が変化するかと思います。


・うつ伏せの場合

数値は-1000付近。


・仰向けの場合

数値は950付近。

※センサの値は設定によって大きく異なる場合がありますので、お使いのロボットでご確認ください。


このX軸が、RobovieXでは転倒検出に使用する加速度センサのセンサ値になります。
X軸の変数番号を確認すると「129」ですね。ということで、自動起き上がりに使用する変数は129ということになります。

それでは、ここで見た「うつ伏せ」「仰向け」のときのX軸のセンサ値をメモしておいてください。

2.モーションとアナログ設定

続いて、操作マップの設定を行ないます。
操作マップの設定ダイアログを開いたら、まず「モーションファイルの割り当て」で「アナログ1」に「うつ伏せ起き上がり」、「アナログ2」に「仰向け起き上がり」をそれぞれ割り当てます。

続いて「アナログ入力設定」を行ないます。

アナログ1,2ともに変数を「129」に、「条件選択」をアナログ1は「閾値以下」、アナログ2は「閾値以上」に設定します。





続いてアナログ1,2の条件詳細を設定します。
センサの値は先ほど調べましたが、ここで改めて確認しておくと良いかと思います。

・アナログ1の場合



・アナログ2の場合



以上で設定は完了です。
全部読む 最新50 1-100 板のトップ リロード

1 ポーズスライダについて
shiva
新米

シバ 2007-11-25 17:29:59  [返信] [編集]

基本的なことですいません。

Robovie-iを購入しRobovieMaker2に対応させた後、自作ロボットを作成している者です。



現在、基準ポーズを作ろうとしているのですが困っています。

サーボの稼動範囲が-90〜90度でサーボホーンをおおよそ0度の時に固定しました。

そして基準ポーズを作るときはサーボを90度に曲げた状態で登録しました。

ポーズスライダのバーが真ん中に移動します。

すると90度の表示が0になって、稼動範囲はそこから-90〜90になります。

ということは+90度にはこれ以上曲げることはできず(+方向はサーボ自体の稼動範囲を超える)、実際の稼動範囲は-90〜0度ということになってしまいます。



90度曲げた状態で基準ポーズとし、そこから-180度回転させることはできないのでしょうか?

わかりにくい文章で申し訳ありません


2 Re: ポーズスライダについて
combat-e
長老

combat-e 2007-11-26 10:22:56  [返信] [編集]

シバさん、こんにちは。
Let'sロボット管理人のcombat-eです。

いただいたご質問にお答えします。

こちらについて、考えられる原因は下記の二点になります。


1.ポーズスライダの稼動範囲制限が狭く設定されている
2.サーボモータの位置補正で90度ずらしてしまっている


それぞれの対処について説明します。
なお、いずれの方法におきましても、サーボモータをモータロックさせて故障などが発生しないように、本体の電源をすぐに切れるようにして作業されることをお勧めします。


1.ポーズスライダの稼動範囲制限が狭く設定されている

こちらは、「ポーズスライダのつまみを端まで動かしても90度までしか動かない」という現象であれば当てはまります。

この場合、「ポーズスライダのプロパティ」より「可動範囲制限(下限〜上限)」の数値を変更すれば改善できるかと思います。

下図のように、Robovie-iでは「-20480〜20480」の数値範囲でサーボモータを-90〜+90度動かせます。
これを、例えば片方の数値設定を0にすると-90〜0度、もしくは0〜+90度のように動かせる範囲が狭くなります。

この場合は、該当するポーズスライダの設定を一旦最大範囲の「-32768〜32767」に設定して、そこからサーボモータの可動範囲に合わせて数値を再設定することをお勧めします。




2.サーボモータの位置補正で90度ずらしてしまっている

こちらは、「ポーズスライダは画面上では180度まで動くが、実際のサーボモータが90度の位置で停止、もしくは脱力してしまう」という現象であれば当てはまります。

これが発生する原因は、サーボモータを90度動かした状態で位置補正を行ってしまうことで、ポーズスライダで0度の値を送信してもすでにモータ側は90度回転した状態で残り90度分しかまわせなくなるというものです。

この場合、一旦大きくずれてしまった位置補正を元に戻します。

下図のように「プロジェクトの設定」→「CPUの設定」のダイアログを開き、「サーボモータ出力」より該当するサーボモータの「PWM=」の数値をデフォルトの「22500」に設定して適用します。
すると、該当するサーボモータが位置補正を行う前の状態に戻ります。

その状態で、「基準ポーズの選択」より自作の基準ポーズを選択して、再度位置補正を行ってください。
注意として、このとき自作の基準ポーズ以外を選択して位置補正を行うと、再び大きく位置補正のずれが発生する可能性があります。


3 Re: ポーズスライダについて
shiva
新米

シバ 2007-11-27 4:18:16  SITE  [返信] [編集]

返信ありがとうございます。

原因はどうやら勘違いでした;



勘違いというのは

「人」のアイコンボタン=基準ポーズ作成 と思い込んでいた点

サーボ位置補正でファイティングポーズやしゃがみポーズを作るものだと思い毎回書き込んでました・・・

「人」アイコンはあくまで原点調整用でありポーズ付けは「基準ポーズの登録」で行うものなんですね


あと勘違い状態だと[基準ポーズ相対値]が意味を成しませんね・・・
これにチェックを付けて外してで変化がなく何のためにあるかと不思議でしたが、理解しました。


この「勘違い」のせいでこれからモーションほとんど作り直しです・・・



早期に解決したおかげで、修正作業が少なく済みませした
ありがとうございます
全部読む 最新50 1-100 板のトップ リロード

1 RobovieMaker2小ネタ
combat-e
長老

combat-e 2007-11-14 17:24:17  [返信] [編集]

冷蔵庫2.0よろしくある意味自分への備忘録として。

RobovieMaker2で追加された条件分岐のブロックですが、こちらで「ビット合致」の条件を設定すると、本来16ビットの変数に対して会8ビットしか値を参照できません。
これは、実際にモーションに書き込まれる際に、比較数値とビットマスクをそれぞれ8ビットずつ使用しているためです。

ビット合致を使うと、ゲームパッドのボタン入力でも「ほかのボタンの状態によらず特定のボタンだけが押されていることを判断する」という場合に重宝しますが、ゲームパッドのボタン入力の情報は16ビットすべてに値が割り当てられており、ビット合致では下位8ビットの「○×△□L1R1L2R2」のボタンしか情報を取得できません。

では、ビット合致で上位8ビットの値を使うことができるのでしょうか?
実は変数演算ブロックとユーザ変数ひとつを使うことで実現できます。

具体例をあげながら説明しましょう。




図のように、まず任意の変数(図中では変数85)にゲームパッドのボタン入力の値(変数241)を代入します。
続いて変数85を「256」で除算すると、上位8ビットの値がそのまま下位8ビットに入ります。
これにより、「ビット合致」でこれまで使えなかった、十字ボタン,L3,R3,START,SELECTの情報が変数85に入ります。。

ちょっと専門的な説明をすると、これはビットのシフト演算と同じことをやっています。
古のマイコンプログラムでは、乗算よりビットのシフトのほうがクロックが少ないということで、よく2倍、4倍などの乗数や1/2,1/4などの演算をビットシフトでまかなっていた歴史があります。
全部読む 最新50 1-100 板のトップ リロード

1 モーションファイルの合計サイズ
taishi
新米

ひろ 2007-7-11 0:57:07  MAIL  [返信] [編集]

「モードスイッチ/音声ファイルの設定・CPUへの書き込み」の画面で、書き込みを行おうとしたところ、「モーションファイルの合計サイズがCPUボードのROM領域の限界を超えたため書き込みを中止します」と表示されて、書き込みができません。このような場合、設定したモーションファイルを削除するしか方法はないのでしょうか?


2 Re: モーションファイルの合計サイズ
combat-e
長老

combat-e 2007-7-11 1:05:09  [返信] [編集]

ひろさん、こんにちは。
combat-eと申します。

「モーションファイルの合計サイズがCPUボードのROM領域の限界を超えたため書き込みを中止します」という問題については、ご質問の通りモーションファイルを削除するかモーションの内容を減らすなどして、CPUボードに書き込むモーションの合計サイズを削減する必要があります。

ちなみに、RobovieMaker2ではRobovieMaker for VS-RC003よりも脱力機能など設定項目が増えた関係で一つあたりのモーションデータのサイズが大きくなっております。
そのため、以前は問題なく書き込めていたのにRobovieMaker2に移行してからサイズオーバーのエラーが出るようになったということもあります。

なお、RobovieMaker/2では、CPUへの書き込み時に、すべての操作マップ・オートデモに含まれるモーションファイルをリストアップし、重複しているモーションは省略して書き込みます(ただし、パスで判断しているのでファイル名が異なると別物と判断されます)。

そのため、メモリ削減のためにはなるべく同じモーションを使いまわすのが有効です。

また、モーション内の不要なポーズやその他ブロックを削除するのも有効です。
特にポーズブロックは一つあたりのサイズが大きいので、不要なブロックをなるべく削除すると容量が稼げます。

他にも同じポーズや動作が含まれるものはfor文の繰り返しなどで済ませるなど、容量削減の手段があります。

>このあたりは古の少ないメモリ容量稼ぎを思い起こさせます。

3 Re: モーションファイルの合計サイズ
combat-e
長老

combat-e 2007-7-11 1:07:14  [返信] [編集]

書き忘れていましたが、今後モーションのデータ形式(フォーマット)を拡張して、データサイズを縮小できるようにする可能性もあります。

とはいっても対応時期などまったく未定で、あくまで可能性の話です(すみません)。
4 Re: モーションファイルの合計サイズ
taishi
新米

ひろ 2007-7-11 1:19:10  MAIL  [返信] [編集]

早速のご回答ありがとうございます。RobovieMaker2にしたらこのようなメッセージが出ることが多くなったので、何故だろうと思っていました。謎が解けました。不要なモーションを削除して対応します。
全部読む 最新50 1-100 板のトップ リロード

1 RobovieMaker2配布開始
combat-e
長老

combat-e 2007-6-27 15:22:21  [返信] [編集]

新しいRobovieMaker、「RobovieMaker2」がついに公開されました。

RobovieMaker2は、従来のものより大幅に機能が拡張されています。具体的な改善点は下記の通りです。
・フローチャート式でモーションを組み立てられ、動作の組立てが容易
・モーション中に「条件分岐」や「変数演算」の機能が追加され、よりプログラマブルなモーション作成が可能
・サーボモータの個別脱力機能が追加され、モーション中などで任意にサーボモータの脱力が可能
・操作マップの入力形式が拡張され、コントロール操作時に多種類のセンサ入力と多様な条件分岐が可能になり、自律的な動作の実現が容易
・サーボモータ出力式が拡張され、一つのサーボモータに「ジャイロセンサとコントローラのアナログスティック」など複数のデバイスのフィードバックを容易に設定可能

このように、一度にたくさんのセンサ入力に対応でき、例えばライントレースや障害物回避歩行のような自律動作や、アナログスティックによる8方向移動などのマスタスレーブ的な動作も容易に実現できます


こちらは、新しく発売したHV対応のCPUボード「VS-RC003HV」に付いてくる他、以下のページからも無償でダウンロードできます。
RobovieMaker2を使用する場合は、VS-RC003のファームウェアをバージョン1.000 リビジョン4以降にアップデートする必要があります。

【RobovieMaker2、及び対応ファームウェアのダウンロードはこちら】


Let'sロボットでは従来のRobovieMaker講習の続きでRobovieMaker2講習も行なっていきます。
また、こちらでご質問も逐次受け付けます。
2 ループします(・_・;;
takano
新米

たかの 2007-7-4 2:08:10  SITE  MAIL  [返信] [編集]

初めまして。
大阪産業大学テクノフリーク部のタカノと申します。

ROBO-ONEサッカーも終了したので、さっそく「RobovieMaker2」を使い始めたのですが、問題が起きております。

今まで使っていたモーションのファイルを「操作マップV2」に割り当て直して、コントローラから再生させると、そのモーション全体が、ボタンを押している間ループしてしまいます。
「操作マップV1」のままでも同様です。

少し状態が伝わりづらいかと思いますが…、「モーション内のループ」ではなく、「モーションファイル全体が」繰り返し再生されてしまうのです。

これはRobovieMaker2の仕様なのでしょうか?
あるいはどこか設定を間違えているのでしょうか?
3 Re: ループします(・_・;;
combat-e
長老

combat-e 2007-7-4 11:00:26  [返信] [編集]

たかのさん、こんにちは。
先日のROBO-ONE Special Cupはお疲れ様でした。

上記の状態について、明確に原因を特定できませんが、とりあえず原因として考えられることを列挙します。
・キャンセル設定が影響を与えており、目的のモーションのループを妨げている
・上記に類似して、目的のモーションより優先順位の高い入力が毎回割り込まれており、目的のモーションのループを妨げている
・コントローラのボタンを連射設定にしていたり通信が頻繁に途切れるなどコントローラによる問題で何度も同じモーションが入力しなおされている
・モーション自体のループ構造がなぜか途切れている
>RobovieMaker2よりモーションファイルを読み込んでみると分かるかもしれません。


もしよろしければ、下記のメールアドレスに問題の発生するモーションと操作マップ一式を送っていただけますか?

info@lets-robot.com
4 Re: ループします(・_・;;
combat-e
長老

combat-e 2007-7-4 18:35:32  [返信] [編集]

というわけで送っていただきました。

原因はRobovieMaker2の操作マップV2にて新しく追加された「idling割り込み」の機能だったようです。

「idling割り込み」は、アイドリングモーション再生中にのみ割込みキャンセルをかけ、それ以外のモーション再生中にはキャンセルをかけないという機能です。
具体的には、自動起き上がりモーションのように「アイドリング以外で激しい動きをしている時に間違って入力が入ると問題のあるもの」について使用するためのものです。

同じ現象が見られる方は、一旦idling割り込みをすべて「無効」に設定して確認みてください。


5 RobovieMaker2バグ修正
combat-e
長老

combat-e 2007-7-5 10:03:32  [返信] [編集]

RobovieMaker2 Release1(1,0,0,1)に、モーションをファイルに保存した際、演算ブロックの設定で右辺の参照数値を変数に設定していても定数として保存されるバグがありました。

このバグを修正したRelease2(1,0,0,2)をアップロードしました。

ダウンロードはこちらから
全部読む 最新50 1-100 板のトップ リロード

 新規投稿 | スレッド表示 | ツリー表示 | 投稿順表示 | i-mode | トップ 
« 1 2 (3) 4 »

BluesBB ©Sting_Band
検索
Loading
メインメニュー