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

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

プログラムについて

ロボットのプログラムについての質問コーナーです。

1: VS-C3でのボタン同時押しについて(3)   2: VS-WRC103LV+VS-BT001+VS-C2 for Androidで動かしたい(8)   3: 自律性のロボット(33)   4: VS-IX001で得られるセンサの値の単位について(3)   5: ポーズ維持の機能(3)   6: VS -C2 for Aneroid について(3)   7: BlueToothシリアル通信プログラミングに関する質問(3)   8: ひとつのポーズスライダで複数のサーボを動作させる方法(8)   9: VS-BT001のサンプルプログラムについての質問(5)   10: Robovie-nano ロボットは階段を登るプログラム(1)   11: うつ伏せの状態で前進するまたその場で回転する(2)   12: Robovie−X階段を登るプログラム(2)   13: RobovieMaker2でのアナログスティックを使った動作(4)   14: サーボがOFFしない(3)   15: RB2000(15軸)腕立て伏せのプログラム(9)   16: サーボが動かない(5)   17: アナロク入出拡張ボートの使い方(3)   18: モーション作成での疑問(6)   19: 動かない(3)   20: アナログスティックのプログラムについて(9)   21: プログラムの設定方法(4)  

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

1 VS -C2 for Aneroid について
NAKKY
一人前

ナッキィー 2011-8-14 8:26:03  MAIL  [返信] [編集]

VS-C2 for Aneroid を、使っているのですが、L3とR3のボタンのに割り付けたプログラムが、押したボタンと反対のプログラムが発動されるのですが、私のだけでしょうか? それともバグがあるのでしょうか?
2 Re: VS -C2 for Aneroid について
combat-e
長老

combat-e 2011-8-17 11:00:19  [返信] [編集]

ナッキィーさん、こんにちは。
いただいたご質問に付きまして、こちらで確認してみますので、もう少しお待ちください。

実は単純な問題で、プログラム側でR3,L3の入力が反対になっているだけかもしれませんが・・・(あまり使われない場所なのでこれまで誰も気づかなかった?)
3 Re: VS -C2 for Aneroid について
PinkRabbit
長老

桃色兎 2011-8-17 22:12:15  SITE  [返信] [編集]

すでに把握されてるかとは思いますが、
「設定」→「音声コマンド設定」→「項目の追加」(もしくは既存の項目の編集)→「呼び出しボタンを設定」
で、L1〜L3とR1〜R3ボタンのチェックボックスの位置が左右逆です。
この辺り解決の糸口になりますでしょうか?
全部読む 最新50 1-100 板のトップ リロード

1 BlueToothシリアル通信プログラミングに関する質問
momotaro
新米

momotaro 2011-7-22 10:23:54  [返信] [編集]

初めまして。
Robovie-X発売と同時に購入し、組み立てて一通り遊んだ後、飾り物となって3年余り経ちました。埃をかぶり、もうこのまま扱うこともないかと思っていましたが、最近「VS-BT001」なるものが発売され、シリアル通信ができるということで、再び、興味がわいてきたところです。
早速「VS-BT001」を購入し、接続。「VS-RC003シリアル通信資料」を読み、サンプルプログラム「bt_sample.exe」も動かすことができました。「SerialSample.cpp」もコンパイルしてませんが、内容は理解できているつもりです。
しかしこれらは何れもコントロールパッドをシミュレートしているもののようで、私がやりたいのは、「プログラムの中で直接サーボの角度を変更」ということです。
「VS-RC003変数表」を見ると、変数番号0〜29のポーズスライダの値は「読み取り専用」となっているし、変更するとしたら、「192〜221のオーバーライド値」かな?と思いますが、ここを変更すれば動かすことができるのでしょうか? できるとしたらどのような値を入れてあげれば良いのでしょうか?
(最終的にはPCをリモートブレインにしてセンサ値を元にいろいろ動かしたいと考えているのですが…そんなことはできない?)
よろしくお願いします。
2 Re: BlueToothシリアル通信プログラミングに関する質問
combat-e
長老

combat-e 2011-7-25 9:29:34  [返信] [編集]

>momotaroさん

こんにちは。combat-eと申します。
ご質問の通り、オーバーラーイド値に-32768以外の数値を書き込んだらモータを動かすことができます。

有効な数値は+32767〜-32767で、数値を入れると補間などをせずにすぐに指定の角度になります。

この方法の注意点としては、モータの位置補正やジャイロなどサーボモータに反映させていた数値が反映されなくなること、また、補間が無くすぐに動くことです。

まずは首のようにモータロックの可能性が低い関節を制御してみることをお勧めします。
また、モーション再生中に関わらずこの方法で動かせるので、歩行などの複雑な動作は、下半身のみ通常のモーション再生で行い、腕や首の動きをオーバーライドで制御してみると良いかと思われます
>ただ、腕の振りなどもバランスに影響があるので、もしかしたら歩行が難しくなるかもしれません。
3 Re: BlueToothシリアル通信プログラミングに関する質問
momotaro
新米

momotaro 2011-7-25 12:39:01  MAIL  [返信] [編集]

combat-e様
ありがとうございました。
できるのですね! いろいろ試してみます。
でも確かに、せっかく歩行モーション等あるのに1からまた自力で創るのはもったいないし、相当根気のいる作業のような気がしますね。
コントローラー模擬によるモーション再生とうまく棲み分けできればなと思います。

またわからないこと出てきたら質問させて頂きます。
ありがとうございました。
全部読む 最新50 1-100 板のトップ リロード

1 ひとつのポーズスライダで複数のサーボを動作させる方法
snj-2cv
新米

snj 2009-5-22 9:40:21  [返信] [編集]

ひとつのポーズスライダで複数のサーボを動作させたいと考えています。

いろいろと考えたのですが、

[CPUの設定]メニュー→[サーボモータ出力]タブ→
子となるサーボを選択し、
[出力値設定]の数式、

 x * Va / 256 * Vb / 256

に、
親となるポーズスライダの値をVaに入れれば…と
考えました。
で、

 x=256
 Va=親となるポーズスライダの番号
 Vb=256

となれば、
出力値設定から得られる出力値は常に親となるポーズスライダと同じ値が取り出せる。
よって、親となるポーズスライダで設定した角度で複数のサーボを同時に制御出来るのではないか。
と考えました。

しかしここで問題が発生。
Vbに、常に同じ数値(ここでは256とした)を与え続けることが出来ない…。

すべてのモーションの先頭に適当なユーザ変数、
例えば100番を入れ込んで、
 v[100]=256
とし、Vbにその値を放り込むことも考えられなくもないが、
そうすると、もしその設定を忘れてしまえば同期が
とれないことになる。

また、常に1の値を返している変数があれば、それを
Vbに使って、xに65536を入れる方法もあるかと考えたが
係数に32767を超える数字は入れられないようだし。

ほとほと困りました。

いっそRobovieMaker2に新しい機能としてマスタースレーブを導入して頂きたいなどと思ってしまいます…。

誰かタスケテ下さい。
2 Re: ひとつのポーズスライダで複数のサーボを動作させる方法
combat-e
長老

combat-e 2009-5-22 10:35:31  [返信] [編集]

>snjさん

こんにちは。

いくつか説明事項がありますので、順を追って解説します。
おそらくいくつかは既に理解されて試されているかと思いますが、説明を整理するために蛇足ながら解説します。

・二つのサーボをまったく同じ角度で動かす場合

二つのサーボモータを、常時まったく同じ角度に動かす場合は、単純にスレーブのサーボにおいて、下記画像の赤の部分に、マスター側と同じ数値を書き込めば実現します。



また、マスター側でジャイロなどを使っている場合、緑の枠内の設定も同じにあわせればよいです。

これで、マスター側とスレーブ側のサーボが常時同じ角度に動きます。
また、「スレーブの角度を、常にマスターの角度から30度ずれた状態にする」のようなオフセットをさせたい場合は、サーボモータの位置補正機能を使うことで実現可能かと思います。


・常時0以外の決まった値が入る変数について

今回のサーボ制御で、オフセット以外の目的で数値の加工が必要な場合、やはりご質問のように「常時同じ値が入る変数を使って計算式を作る」必要があるかと思います。

そこで、ご質問の件、とりあえず「常時数値が1になっている変数」を探してみました。
VSRC003変数表を用意して解説をお読みください。

最初に思いついたのが変数251番の「SELECT+STARTの状態」ですが、調べたところ私の予想の「サーボモータのON/OFF」で数値が切り替わるのではなく、純粋に「SELECT+STARTが押された場合」に数値が切り替わる仕様のようで、例えばモーション作成時にRobovieMakerからサーボをONにしても、この変数の数値が1になりませんでした。

そこで他の数値を調べたところ、変数240番の「現在接続されているコントローラの種類」が該当するようです。
RobovieMakerのプロジェクトでは、デフォルトの設定(コントローラの自動判別)で、ゲームパッドが接続されているか何も接続されていない場合に「1」が入るようです。
>参考までに、ProBoやG-ROBOTSのコントローラが接続されていると他の数値が入ると思われます。

これにより、おそらく240番の変数を使用すれば、
ただし、この使い方は想定されていないので、もしかしたら何かのタイミングで数値が1以外になるかもしれません。
この変数で問題ないか、しばらくは注意して作業してみていただけますか?
3 Re: ひとつのポーズスライダで複数のサーボを動作させる方法
snj-2cv
新米

snj 2009-5-22 11:23:19  [返信] [編集]

うわっ

そんな簡単な方法が…
気がつきませんでした(笑)

これで楽勝ですね。

251番と240番、私も考えたのですがやはり確実性に欠けると思いまして。

最初の赤丸の方法で試してみます。
ありがとうございました!
4 Re: ひとつのポーズスライダで複数のサーボを動作させる方法
snj-2cv
新米

snj 2011-5-25 9:07:03  [返信] [編集]

二年越しの再質問です。
おかげさまで同期はとれるようになっています。
が、ここにきてもうひとつ質問です。

マスターの動作に対して、スレーブを逆回転させる

ということは可能でしょうか?
色々考えたのですが…分かりませんでした。
ご指導くださいますよう何卒よろしくお願いします。
5 Re: ひとつのポーズスライダで複数のサーボを動作させる方法
anaheim
常連

anaheim 2011-5-25 11:50:58  SITE  [返信] [編集]

初めまして、anaheimです。m(__)m http://heim.seesaa.net/
無責任な案が思い付いたので、書き込みします。(^^;

■案1■ ソフト的
 ・上記の緑枠で対応する。
 ・x * Va / 256 * Vb / 256
 ・Vb の変数の候補
  ・変数238 CPUボードのモード切替スイッチの値:2〜9
  ・変数248 マップ番号:2以上
 ・xをマイナス値で入力
  (Vbが2以上なら、xはぎりぎり32767で収まる)
 #デメリット:[もしその設定を忘れてしまえば...]

■案2■ 物理的に
 ・サーボモーターの取り付け方向を反転する。
 ・出力軸の右左を逆にすると、曲がる方向も逆になるかと。
 #デメリット:ブラケットの作り直しが必要?
        変更が大掛かり!

■案3■ サーボ改造
 ・サーボモーターをバラし、配線を変更する。
 ・サーボ内のモーターの+−の配線を逆にする。
 ・ポテンショメーターの+−の配線を逆にする。
 #実際に出来るか?未検証です。m(__)m
 #デメリット:補修時の対応が大変。
       [もしその設定を忘れてしまえば...]


[VS-RC003HV]は、並列処理を想定していないので、
この手の事は、何かしらの[ごまかし]に苦労しますね。(^^;

以上 アイデアの参考になれば、でした。m(__)m
6 Re: ひとつのポーズスライダで複数のサーボを動作させる方法
combat-e
長老

combat-e 2011-5-25 13:13:31  [返信] [編集]

snjさん

大変お久しぶりです。
お問い合わせの件ですが、anaheimさんの提案の他には、「サーボ出力式の'15000'を'-15000'に変更する」という方法でもできるかもしれません。
該当箇所は、ちょうどページ上にあるサーボの設定画面にも載っていますね。

この変更で、サーボに出力される信号の符号が反転するので、回転方向は逆転すると思います。
ただ、その隣のオフセット値(画像では「22500」の部分)が大きく変わると思います。
おそらくかなり数値を増やす必要があると思います(32500くらい?)。

この方法を試す場合も、プロジェクトをバックアップして、CPUと生サーボ2個で実験してみるのがよいかと思います。

7 Re: ひとつのポーズスライダで複数のサーボを動作させる方法
snj-2cv
新米

snj 2011-5-26 23:44:50  SITE  [返信] [編集]

すっごい長文書いたのにエラーで反映されなかった・・・といっても考えながら書いたのでただ長くなっただけなので、まあ良しとします。

>アナハイム様
はじめまして。
時々サイト拝見させてもらってます。
RBの色々な実験、とても参考になってます。
ご提案下さいました方法、やはりヒューマンエラーやなんらかの信号ミスが気になりますね。
そこで・・・

>combat-e様
またなんと一撃で簡単な方法を・・・
理屈は(たぶん)理解しました。
PWM値に7500から37500の値を与えることによってサーボを動かしているわけだったのですよね?
で、この中間の値が22500だと。
それでオフセット値が22500に設定されている、と。
だから「出力PWM設定」の15000を-15000にすれば結果の数字は反転するわけですよね。

しかし、です。
もしそうであれば22500の値を変更する必要があるのは何故でしょうか?
ここしばらくロボットを触れる状況にありませんので現物で確認できず申し訳ないのですが、何卒ご教授くださいますよう何卒よろしくお願い致しますっ!
8 Re: ひとつのポーズスライダで複数のサーボを動作させる方法
combat-e
長老

combat-e 2011-5-29 14:32:02  [返信] [編集]

>snjさん

すみません、返信が遅れました。

確かに、そういえばxは-32768〜32767の範囲なので、一次式の傾きが逆になるだけだから、オフセットはそのままですね(多分)。
ご指摘のとおり22500の部分は変えなくてもいけると思います。

全部読む 最新50 1-100 板のトップ リロード

1 VS-BT001のサンプルプログラムについての質問
thideyoshi
新米

thideyoshi 2011-5-9 22:20:33  MAIL  [返信] [編集]

ご無沙汰しております。ヒデです。
いつもお世話になっております。

RB2000の19軸化に際してはサンプルモーションを作成いただきありがとうございました。
いろいろと試行錯誤し脚ROLL軸を外したり付けたり、腕にYAW軸を付けたり外したり、脚をダブルサーボにしたり外したり・・・で現在は19軸(腕が短かったため腕を脛に変えて延長した形)で落ち着いています。

オプションはジャイロとPSDセンサです。

最近、通信ができるとのことでBluetoothシリアル通信モジュール「VS-BT001」が気になり、Bluetoothもよくわからないまま興奮して購入。ゲームコントローラの端子を外して入れ換え、何とかサンプルプログラムでグラフが出るところまでこぎつけました。センサの値がグラフで見えるのは大変よいですね。大いに価値あり。

そこで質問があります。
‥方「全方向移動モーション」を自分の機体に調整して使用しておりますが、L1と矢印ボタンが同時に押せず(スティックボタンなく)ロボットが足踏み状態です。同時押しの方法はありますでしょうか。サンプルプログラムの使用方法が十分でなく教えていただきたく。

△發憩瓜押しができなければ、サンプルプログラムに追加は可能でしょうか。(又はスティックボタンの追加等)当方プログラム作成能力はなく困っております。

アンドロイド携帯は所持しておりませんが、アンドロイド用のサンプルプログラムではL1とスティックボタンの同時押しは可能でしょうか。

Robovie-Maker2と「VS-BT001」の通信は可能でしょうか。

わからないことばかりで申し訳ありませんがご教授よろしくお願いいたします。
2 Re: VS-BT001のサンプルプログラムについての質問
combat-e
長老

combat-e 2011-5-10 11:58:29  [返信] [編集]

>thideyoshiさん

お久しぶりです。combat-eです。
いただいたご質問にお答えします。


‥方「全方向移動モーション」を自分の機体に調整して使用しておりますが、L1と矢印ボタンが同時に押せず(スティックボタンなく)ロボットが足踏み状態です。同時押しの方法はありますでしょうか。サンプルプログラムの使用方法が十分でなく教えていただきたく。

△發憩瓜押しができなければ、サンプルプログラムに追加は可能でしょうか。(又はスティックボタンの追加等)当方プログラム作成能力はなく困っております。


サンプルプログラムでは、申し訳ありませんがボタンの同時押しは対応しておらず、また、今のところ対応の予定はありません。

代わりの手段としては、モーション側で対応する方法があります。
普段L1に割り当てている足踏みモーションをアイドリングに割り当て、また、モーション中のL1ボタンを押していないとモーションを終了する分岐を、L1を押していなくても常にモーションが継続するように分岐を設定しなおすと、同時押しせずにモーションを利用できるかと思います。
現在のモーションデータのバックアップを行い、操作マップのファイルも新規作成してご対応ください。



アンドロイド携帯は所持しておりませんが、アンドロイド用のサンプルプログラムではL1とスティックボタンの同時押しは可能でしょうか。

アンドロイドのプログラムは同時押しに対応しています。
ボタンやスティックを実際のコントローラと同じ感覚でタッチして操縦できます。


Robovie-Maker2と「VS-BT001」の通信は可能でしょうか。

RobovieMaker2はUSBのみで通信するようになっているので、VS-BT001で無線通信することはできません。
3 Re: VS-BT001のサンプルプログラムについての質問
thideyoshi
新米

thideyoshi 2011-5-10 20:43:54  MAIL  [返信] [編集]

お世話になります。ヒデです。
早速の回答ありがとうございました。

モーションで対応可能というのは目からうろこです。
ヒントをありがとうございました。

普段L1に割り当てている足踏みモーションをアイドリングに割り当て・・・は、電源を入れた状態が常にアイドリング=足踏みということですね。

L1を押していなくても常にモーションが継続するように分岐を設定しなおすと・・・というのは理解が難しく、もう少し解説いただけませんでしょうか。

はアンドロイド携帯に期待が持てました。将来の楽しみにします。

いい弔わかりませんが、今後のバージョンアップに期待いたします。

いつまでも初心者でお手数をお掛けしますがご教授よろしくお願いいたします。
4 Re: VS-BT001のサンプルプログラムについての質問
combat-e
長老

combat-e 2011-5-11 11:25:33  [返信] [編集]

あらためて過去のRB2000 19軸用全方位移動モーション(こちら)を確認したところ、分岐ブロックを使わずに単純にループブロックで行っているようですね。
なので、分岐ブロックの設定に関する変更は不要だったようです。

このモーションをアイドリングに割り当てれば、そのマップに変更するだけでずっと足踏み状態になります。

5 Re: VS-BT001のサンプルプログラムについての質問
thideyoshi
新米

thideyoshi 2011-5-11 22:17:15  MAIL  [返信] [編集]

ヒデです。
回答ありがとうございました。

やってみます。

全部読む 最新50 1-100 板のトップ リロード

1 Robovie-nano ロボットは階段を登るプログラム
chliao
新米

リョウチュウコウ 2010-7-26 23:52:22  MAIL  [返信] [編集]

前日Robovie-nano (ロボビー ナノ) 完成済みスペシャルセットを購入しました。Robovie-nano ロボットは階段を登るプログラムを挑戦したいです。Robovie-nanoのサーボトルクはかなり小さいです、階段を登るのはできるでしょうか?また付属CDプログラムに参考になれる資料はありますか?以上でお願いします。


全部読む 最新50 1-100 板のトップ リロード

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

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