Re: The history of "M&Y"

Team "M&Y" and "花鳥風月"
the soliloquy of the father
毎日更新!

NXTねた その55 RXMux 続き

2010-09-20 | NXTねた

※この記事は、半年前(2010年2月)に書いたのですが・・・投稿せずに眠っていたので・・・



RXMuxの続きです。

どうも、4つのチャンネルを切り替えて、有効になっているチャンネルの値を読むことは判りました。

なので、例えばch1とch2に光センサーを接続して2つの値を読むのであれば

①RXMuxのch1を有効にする。 ch1に接続した光センサーが赤く光る。

②ch1の値を読む・・・ch1の光センサーの値を読む。

③RXMuxのch2を有効にする。 ch2に接続した光センサーが赤く光る。

④ch2の値を読む・・・ch2の光センサーの値を読む。

となります。

これを繰り返すと、光センサーの赤いLEDが点滅して、うざい!

と、ここまで判ったところで、ライブラリのプログラムを眺めていたら・・・

切り替える毎に、書かれているWaitだけ待たなきゃいけないので、遅い!ということが判明しました。

主要部分のプログラムはこんな感じ・・・

   I2CWrite(RXMUXport, 0, RXMuxMsg);
   Wait(10);
   SetSensorType(RXMUXport,sensortype);
   SetSensorMode(RXMUXport, sensormode);
   Wait(30+10*Delay);
   return(Sensor(RXMUXport));

で結局、基板の先に接続したセンサーの値を読むところは・・・

あれっ、普通にポートを読んでいるだけなの?

I2Cでのやり取りでは無いようです。

 ・

 ・

 ・

と、いうことは、チャンネルの切り替えには時間が掛かっても、同じチャンネルのセンサーを読むのは、普通の(アナログ)ポートの読み込みと同じってことですね。

つまり、普通に SENSOR_1 とかで、読めるようです。

これって、ソリッドステートリレーみたいなものなのかなぁ。

これが判るまでは、「使えない!」と思っていた RXMux ですが・・・なんかアイディアによっては有効に使えそうな気がしてきました。


つまり、基板の4つのチャンネルを頻繁に切り替えて値を取得することは苦手でも・・・

普段はチャンネルを固定しておいて、必要なときにだけ切り替える使い方なら実用になるかも・・・

例えば、5個の光センサーを接続して、普段は中央の3個の光センサーだけでライントレースをして、ギャップに入ったときだけ(ラインを外れたときだけ)外側の光センサーを有効にするとか・・・


ちょっとビックリしたのは・・・ジャパンオープンにこのモジュールを使って参加しているチームが何組か居ました。 

Img_1374

ロボットの下部に設置された光センサーの赤い光が、チラチラと点滅してました。

でも・・・


ちゃんと実用になっているじゃないですか・・・!?


で、さらにいまさら投稿しておいて何ですが・・・2010年9月現在で、End of Life Products になっちゃってます。 

つまり、もう売っていません・・・プレミアがつくかなぁ。(笑)

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

NXTねた その54 RXMux

2010-09-20 | NXTねた

※この記事は、半年前(2010年2月)に書いたのですが・・・投稿せずに眠っていたので・・・



もう、既に別のネタで紹介しちゃいましたが・・・

mindstorm.com の RXMux というボードを買ってみました。

これは、

RXMux is a multiplexer designed to attach RCX style sensors to your NXT.
This can be used to attach upto 4 RCX sensors to NXT. Individual sensor can then be selected to read from. RXMux consumes between 2 to 4 micro Amps depending on number of sensors attached.

というものなんですが・・・

yahoo 先生に頑張ってもらうと

RXMuxは、RCX用のセンサーをあなたのNXTに付けるように設計されたマルチプレクサです。 これは、最高4台のRCX用センサーをNXTに接続することができます。
ここまでの意味は良く判ります・・・でも、ここからが怪しい

一つのセンサーを選択して読むことができます。 RXMuxは接続するセンサーの数にしたがって2~4μA消費します。

こんな感じでしょうか? 

マイクロアンペアの部分が本当なのか?とても疑問です。 ミリアンペアじゃないの?


まあ、何はともあれ、NXTの1つのポートに4個にRCX用のセンサーを接続できるという魔法の小箱なのです。(笑)

これを4つのポート全部につけると、1個のNXTになんと16個ものセンサーを接続することができることになりますね。 さらに、RCX用のセンサーであれば、「重ね技」も使えるので、さらに接続できる数が増えますね・・・・

と、こんなことを想像して夢を膨らませていました。


実際に使ってみると・・・

基板に4×4=16個のポッチが空いていて、RCX用のセンサーが4個接続できるようになっています。 (確かに)

これに接続した4個のセンサーを切り替えて読むことになるようです。

mindsensor.com のHPにあるデモプログラムを実行してみました。

(いやぁ、このデモプログラムを動作させるまでに、非常に苦労したのですけどね。)

基板のch1(チャンネル1)とch2(チャンネル2)にRCX用の光センサーを接続すると、その2個のセンサーの値をNXTのLCD上に表示するのですが・・・遅い! 遅すぎる!

チャンネルを切り替える毎に、2個の光センサーの赤いLEDが光ったり消えたりするのですが、目で追える位のスピ-ドです。

これじゃあ、実際にライントレースになんか使えそうにない・・・という印象です。

(ガックシ!)

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

NXTねた その53 定数

2010-09-20 | NXTねた

※この記事は、半年前(2010年2月)に書いたのですが・・・投稿せずに眠っていたので・・・




NXTのコントローラは入力ポートが4個あります。

RCXは3個だったので、進化していると・・・言えなくもないですが・・・

ジュニアレスキューの競技で考えてみると・・・ライントレースするための2個の光センサー、障害物を検知するためのタッチセンサー、さらに被災者を検知するための何か・・・これで4ポートを使い切ってしまいますねぇ。

RCXは「重ね技」を使えるのですが、NXTは普通にはできないようです。


他のチームはNXT-RCX変換コードを使用して、RCXのセンサーを使って「重ね技」を使っているようです。 我が家には変換コード無いからなぁ。


みんな4個のセンサーポートでなんとか工夫してロボットを作っているようですね。

この限られたポート数を有効に使えないか・・・ネットをさまよっていたところ・・・

NXTのポート1個にRCXのセンサー4個を切り替えて使うボードがありました。

悩んだ挙句、購入してみました。

さて、使えるのかどうか確認するため、デモプログラムを動かしてみると・・・

まず、コンパイルでエラーになります。

コンパイルでエラーになるので、NXTへの転送すらできません。

じゃあ、どこでエラーになっているの?

エラーメッセージは

ERROR: Invalid constant expression

となります。

普通は、上のソースの該当部分が色反転して、「ここがダメだぞ!」と教えてくれるのですが・・・もう、何がどう悪いのか、全く判りません。

constant って定数だよなぁ。 定数なんて使ってないじゃん。

で、少し考えて、はたと気が付きました。

#include で読み込んでいるライブラリがダメなんじゃないの?

ってことで、ライブラリだけコンパイルしてみると・・・

案の定、コンパイルエラーになります。

const byte RXMuxID = 0x7E ;

が、Invalid constant expression と怒られます。

場所はわかりましたが・・・今度は、これの何がエラーなの?

さらに、いろいろやってみると・・・16進数の0x7Eがエラーのようです。

const byte RXMuxID = 126;

にしたら、エラーはなくなりました。

でも、なぜここの16進数がエラーなのかは不明です。

16進数なんて、普通に使っているよなぁ。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

The histoty of ・・・

2010-09-20 | うんちく・小ネタ

私が書いているこのブログ:The history of "M&Y" ですが・・・

アクセスログを見てみると、直接飛んで来てくださる方も多いのですが、検索してきてくださる方も沢山います。

検索キーワードは「M&Yの履歴」が多いのですが、「history of m&y」も結構あります。

検索キーワードで「m&y」としても「&」は、無視されて「my」も検索されます。

つまり、「history of m&y」で検索すると、「history of my ・・・」が沢山検索されます。

ちょっと見てみると

The history of my car

The history of my motorcycle

The history of my English

等など

いろいろあって楽しいのですが・・・

History of my 借金

というのが、ちょっと悲しくて、お気に入りです。(笑)

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする