にほんブログ村 その他趣味ブログ 電子工作へ

2009年12月31日

HiTechnic NXT IRSeeker V2

モッパーです。

HiTechnic NXT IRSeeker V2 は、新パルスボールに対する対策として最有力のセンサの一つのはずですが、国内のサイトでは情報が著しく不足しているように思います。

当方や他のサイトが、今まで色々バルクのリモコンセンサー等テストして新ボール対策を公開してきましたが、国内のチームがこの短期間で新ボール対策をキャッチアップするためには、今では IR Seeker V2 が無視できない存在になっているように思います。今回は海外チームの多くがこのセンサーを使用することも想定されます。

このセンサーをどのような形でもよいので、実環境で使用して評価されたチームはいらゃしゃいますでしょうか ?  いらっしゃれば、是非情報を公開して頂きたいです。

他力本願で申し訳ありませんが、よろしくお願いします。


posted by モッパー at 00:47| Comment(7) | TrackBack(0) | センサー
この記事へのコメント
自己レスです。

Arduino で IRSeekerV2 を使用することに成功しました。以下、評価結果です。

旧ボールについては、Flyeye sensor よりかなり性能が悪いように感じました。遮光をしっかりするか、自動的な方向検知を諦めて個別のセンサー値を直接見るかしないとダメかも。とにかく個別センサーの出力値の粒度が低すぎます。もしかすると電源投入時の明るさを見てセンサー値を自動調節しているのかもしれません。
新ボールのパルスモードの方向自動検知についてはすんごいです。当方のウサギ小屋の中で最長の距離を楽々クリアしました。後ろのボールもほとんどの範囲で検知出来ます。我が家の環境では、ですが全く遮光を気にしなくて良いので、ロボットの一番上に載せる等、今まで考えられなかった設置場所を選ぶことが出来る可能性があります。ただし、方向の自動検知は方向によって範囲のバラつきが大きいように感じました。

上級者は個別のセンサーを組み上げて制御したほうが良いかもしれませんが、IRSeeker V2 が新ボールについてこんなに性能良いなら初〜中級者の方にとって選択肢の一つになると思います。費用が高いことがネックになるかも知れませんが...

実際にロボットに搭載したわけではなく、特にレスポンス(センサー値の更新間隔)が気になりますが評価出来てません。評価出来るかは最強ファイターズが再スタートするかどうかによって決まりますので、今後のレポートは期待しないで下さい。

Arduino と IRSeekerV2 のコネクタとの接続に関しては以下のサイトを参考にして下さい。
http://forums.nxtasy.org/index.php?showtopic=2092
http://www.philohome.com/nxtplug/nxtplug.htm
http://bluefish.orz.hm/sdoc/inout.html#MindStorm NXT
ポイントは pin 1 に 9V を供給することです。pin 4 は本来の仕様では 4.3V のようですが、5V で大丈夫のようです。
SCL と SDA の pullup なしでも動作しましたが、波形を見ていると 10K くらいの pullup 抵抗入れたほうが良いように思います。

ロボデザイナの I2C でも動作しそうに思いますが、まだ試してません。


以下、Arduino でのテストプログラムです。(プログの特性によりインデント消えてます)



#include <Wire.h>

void setup()
{
Wire.begin();
Serial.begin(9600);
}


void loop()
{
byte data[14],i;
Wire.beginTransmission(0x08);
Wire.send(0x41);
Wire.endTransmission();
// delay(1);
Wire.requestFrom(0x08, 14);
// delay(1);
for ( i = 0 ; i<14 ; i++){
data[i]=Wire.receive();
}
Serial.print("Mode:");
Serial.print(data[0],HEX);
Serial.print(" ");
Serial.print("DC.D:");
Serial.print(data[1],HEX);
Serial.print(" ");
Serial.print("DC.1:");
Serial.print(data[2],HEX);
Serial.print(" ");
Serial.print("DC.2:");
Serial.print(data[3],HEX);
Serial.print(" ");
Serial.print("DC.3:");
Serial.print(data[4],HEX);
Serial.print(" ");
Serial.print("DC.4:");
Serial.print(data[5],HEX);
Serial.print(" ");
Serial.print("DC.5:");
Serial.print(data[6],HEX);
Serial.print(" ");
Serial.print("DC.M:");
Serial.print(data[7],HEX);
Serial.print(" ");
Serial.print("AC.D:");
Serial.print(data[8],HEX);
Serial.print(" ");
Serial.print("AC.1:");
Serial.print(data[9],HEX);
Serial.print(" ");
Serial.print("AC.2:");
Serial.print(data[10],HEX);
Serial.print(" ");
Serial.print("AC.3:");
Serial.print(data[11],HEX);
Serial.print(" ");
Serial.print("AC.4:");
Serial.print(data[12],HEX);
Serial.print(" ");
Serial.print("AC.5:");
Serial.print(data[13],HEX);
Serial.print(" ");
Serial.println();
}
Posted by モッパー at 2010年06月03日 21:36
モッパー様

メンターの鏡です
こういった情報は、知識不足経験不足のメンターの大きな力添えになります。また、こういったところをシークレットにしないモッパー様に、高感度UPです。

私も、何とかみなの役に立つ情報提供を頑張ろうと思います。なかなかできませんが。



Posted by union12の父 at 2010年06月04日 22:56
union12 の父様


メンターの鏡だなんて恥ずかしいので、止めて下さい。。。(笑)そもそもメンター続けるかかどうかわかりませんし。
手持ちのパーツが無くなるまでに私の趣味でちょっと遊んでおこうというだけでやってます。
Posted by モッパー at 2010年06月05日 13:10
こんにちは、GRA父です。

コメント記事部のチェックをしてなかったので投稿に時間が空いちゃいました。

IRSeekerV2もお持ちだったんですね。
すごいです。
実は私、別レスの6chドライバも含めモッパーさんと全く同じ事をやっているみたいです(笑)

NXT接続に特化している関係からか、私がテストした結果では以下の点が注意が必要みたいです。
1.更新間隔:10ms〜15ms前後は待たないといけない。=これは多分ですが、LEGO系のセンサーすべてに当てはまります。
2.pullupですが、連続安定制御する為には絶対に必要で、本来なら47k前後でいいはずが、当方はなぜか100kで安定。

その他としてですが、センサーはテスト結果からcball同様、電源投入時に自動で周辺照度を測定しますが,cballセンサーよりこの点は良くないので、ご指摘の通り、カバーリングをしっかりしないと、多分京セラドームクラスの会場ではメタメタになりそうです。

新ボールの場合、どちらもそんなに変わらないですが、cballはパルス追従しているだけなので周辺環境に影響を受けてしまいます。
新ボール対応はさすが専用センサーだけの事あり、IRSeekerV2に軍配が上がります。
Posted by GRA父 at 2010年06月10日 01:07
モッパーさん、こんにちは。
GRA父です。

すいません。
私が投稿したコメントに誤りがありました。

2.pullupですが、連続安定制御する為には絶対に必要で、本来なら47k前後でいいはずが、当方はなぜか100kで安定。

上の件は、NXTとダイセン6chの接続のことでした(笑)

お騒がせしました。
Posted by GRA父 at 2010年06月10日 20:09
GRA父様

色々情報頂き有難うございます。NXT センサって実はレスポンス悪いんですね。折角の ARM7 プロセッサが台無しになっているような...マルチタスク処理が基本思想なんでしょうかね。

>実は私、別レスの6chドライバも含めモッパーさんと全く同じ事をやっているみたいです(笑)

私も「もしや」と思ってましたが、やはりカブっちゃってましたか(笑)。

cball は新ボール検知できるんですね。Flyeye はボールが見えている状態と見えていない状態が繰り返して話にならないです。「見えてない」ことを判断できれば良いのですが、Flyeye は無理そうです。出来たとしても 20hz くらいでセンサーサンプリングするので使い物にならないくらいレスポンス悪くなること確実ですし。
Posted by モッパー at 2010年06月10日 21:45
モッパーさん、こんにちは。
GRA父です。

またまた失礼します〜。

そうなんですよ。
NXTは、ソフトウエアによるi2cですから、i2cセンサは、すべて間隔があります。

ですからご存じの通り、当方のマシンが自陣へのバック時にi2cコンパスによる姿勢制御で止まりたい所で止まれず”お尻ふりふり現象”が出ちゃうんです(笑)

cballの件、あくまで今売っているタイプではなく、もう売っていない一世代前のアナログ出力併用モデルでの話です。
今の売っているモノは、センサー素子が違うみたいなので実際の所???です。
Posted by GRA父 at 2010年06月10日 23:57
コメントを書く
お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/34471271
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック
にほんブログ村 その他趣味ブログ 電子工作へ