RoboCup Junior Japan Rescue Kanto OB
2005~2013
2005~2013
実はまだきちんとテンプレが完成してなくて色々変わる気がします。特にカーソルとか。
一昨日ようやくロボットができてプログラムを入れてライントレースをさせてみたら、
直角で回転時に壁が尻尾に壁に尻尾が激突して終わりました。また作り直しですね。
その後、ロボコン部の簡易のミーティングに参加して、その後また部屋に帰って絶望。
まだロボットができるのは先の話となりそうです。
そんな今日は今迄の話とは全く関係なく、NXT本体についてです。
NXTとは・・・
これですね。
本体名称はNなんたらXなんたらTなんたらの略です。
・・・スイマセン。今度調べときます。
そもそも略語かすらわからないし(汗
こんなNXTですが、RCXと同じように単3電池6本、つまり9Vで動作します。
また、充電池にすることもでき、その場合は少し本体が大きくなりますが、
電池BOXに入れたまま充電ができるので便利です。
低格は上の写真からもわかりますが、7.4Vの1400A/hのリチウムイオンポリマー電池です。
よく「リポ」って呼ばれてるアレです。ショートさせると爆発します。
この電池は空にさえしなければ継ぎ足し充電が自在に行えて、携帯電話等の小型端末によく使われますが、
とても熱に弱いです。発熱したり、温度の高いところにおいておくと寿命が減ります。
古かったり、しょぼい電池とかだと充電時に発熱するので、
充電すると寿命が縮むという意味不明な仕様がありました。最近のやつは大丈夫っぽいけど。
因みにNXTの充電池は発熱する部類に入ります。
あと充電池はセット同梱、充電器は別売りとなっております。意味不明です。
7.4Vの1400mAってNXTにはちょっと弱すぎる気もしなくも無いけど、これで動作上は問題ないです。
中に入ってるCPUはARM7というマイコンです。
このマイコン、どういうところに使われているかというと、結構凄いんですよ。
例えば、ちょっと前の携帯電話、デジタルカメラ、車のカーナビ等の周辺機器制御、
あとは最近話題(?)のルンバやみんな大好きI podシリーズ、
ゲームボーアドバンスやソフトのメインCPU、DSシリーズのサブCPUなどがそうですね。
結構身近にいるんですよ。このマイコン。
僕もこのマイコンはマンコンとして持っていて、制御して遊んだりしていますが・・・・
どう考えてもNXTには勿体無いですね。
PICやAVR、RCXに内蔵されているH8とかとは問題にならないくらい別次元にいるマイコンです。
もちろん32bitですが、動作クロックは48MHzと少々少なめですね。
まぁこれでもARMファミリーの中では最低クラスの一個上程度のシリーズなのですから驚きですね。
因みにサブでAtmel AVRが使用されています。
こんなNXTは外部出力ポートが3、外部入力ポートが4存在します。
ここから各種センサー、モーターを接続するわけですが、
そのポートのケーブルはRCXの3倍の6芯となっています。
これは、入力の場合はアナログ用電源、アナログ入力、回路電源、GND、入力信号A、入力信号Bの6本、
出力の場合はPWM1、PWM2、エンコーダー電源、GND、入力信号A、入力信号Bの6本となっています。
入力のアナログ用電源、アナログ入力はRCXのセンサーポートの2芯の中身と同じです。
RCX変換ケーブルはこの2本のみを使用しています。
回路電源、GND、は電源とGNDが必要センサー用のものです。回路電源は4.3~4.8V程が出力されます。
入力信号A、入力信号Bはセンサーとの通信用の信号となります。
ここではI2C、RS485という通信規格をサポートしています。でもRS485って要するにD-sub25ですよね。
一体実装してどうするつもりなのでしょう。
I2Cというのは・・・説明するまでも無いとは思いますが、フィリップス社が提唱したシリアル通信方式で
「Inter-Integrated Circuit」の略語です。
この方式は・・・仕組みについての説明を実際にしても難しい言葉の羅列になるので簡単に。
いつも僕が小学生に説明している方法で説明すると、
まず通信線(2本で1セット)があって、
それでデータで受け取る側(NXT)と、データを送る側(センサー)が繋がれています。
そしてこの状態でセンサーはNXTにデータを送っているのですが、
センサー側は同じ線に複数台あっても大丈夫なようになっています。
どのようになっているかというと、
例えばNXTのポート1にI2C対応の超音波センサー、コンパスセンサー、加速度センサーが繫がれた場合、
まずNXTはどのセンサーのデータが欲しいかというデータを全てのセンサーに送ります。
その後、センサー側は「データが欲しい」といわれたセンサーのみが返事をします。
そして、NXTが「データを送るときの設定(加速度センサーであればどの方向の加速度か、等)」を送り、
それをセンサーは受けとり、さっき返事をしたセンサーのみがデータをNXTに送る。
という風になっており、同時に複数のセンサーのデータを送るのではなく、
繫がれた中でNXT側が指定したセンサーのみがデータを送る。というものです。
因みにこれで1ポートにつき112個までのセンサーが接続できます。
これが4ポートあるので4×112で448個、
これにそれぞれのポートにアナログが4つなので4足して、
結果NXTは452個のセンサーが制御できることになります。
また、実際はマルチマスタといって受け取る側のNXTが複数台いても成り立つのですが、NXTのI2C機能は
本物ではなく、ソフトウェアで作られた擬似的なものなのでNXTでできるかはワカリマセン(笑)。
モーターの方はと云うと2本のPWMというのはモーターに送る制御信号で、
エンコーダー電源、GNDは内部の回転センサーの電源です。
入力信号A、入力信号Bというのは回転センサーのデータの入力信号で、これもPWM波形です。
この部分だけ切り取ってセンサーに使っちゃえ!などと考える人もいたかと思いますが(ここにいた)、
残念ながらアナログ信号ではないので、非常にめんどいことになります。まだI2Cの方が楽か・・・。
また、これらの入出力の端子はRJ12という電話線の端子を使用しています。
あとPCとの通信手段としてUSB2.0、他デバイスとの通信用にBluetoothが内蔵されています。
まだまだかけることいっぱいありますが永くなるのでこの辺で今日はお開きです。
書く気になったら続き書きます(笑)
(^・ω・)ノRadiumProduction in RoboCupJunior
一昨日ようやくロボットができてプログラムを入れてライントレースをさせてみたら、
直角で回転時に壁が尻尾に壁に尻尾が激突して終わりました。また作り直しですね。
その後、ロボコン部の簡易のミーティングに参加して、その後また部屋に帰って絶望。
まだロボットができるのは先の話となりそうです。
そんな今日は今迄の話とは全く関係なく、NXT本体についてです。
NXTとは・・・
これですね。
本体名称はNなんたらXなんたらTなんたらの略です。
・・・スイマセン。今度調べときます。
そもそも略語かすらわからないし(汗
こんなNXTですが、RCXと同じように単3電池6本、つまり9Vで動作します。
また、充電池にすることもでき、その場合は少し本体が大きくなりますが、
電池BOXに入れたまま充電ができるので便利です。
低格は上の写真からもわかりますが、7.4Vの1400A/hのリチウムイオンポリマー電池です。
よく「リポ」って呼ばれてるアレです。ショートさせると爆発します。
この電池は空にさえしなければ継ぎ足し充電が自在に行えて、携帯電話等の小型端末によく使われますが、
とても熱に弱いです。発熱したり、温度の高いところにおいておくと寿命が減ります。
古かったり、しょぼい電池とかだと充電時に発熱するので、
充電すると寿命が縮むという意味不明な仕様がありました。最近のやつは大丈夫っぽいけど。
因みにNXTの充電池は発熱する部類に入ります。
あと充電池はセット同梱、充電器は別売りとなっております。意味不明です。
7.4Vの1400mAってNXTにはちょっと弱すぎる気もしなくも無いけど、これで動作上は問題ないです。
中に入ってるCPUはARM7というマイコンです。
このマイコン、どういうところに使われているかというと、結構凄いんですよ。
例えば、ちょっと前の携帯電話、デジタルカメラ、車のカーナビ等の周辺機器制御、
あとは最近話題(?)のルンバやみんな大好きI podシリーズ、
ゲームボーアドバンスやソフトのメインCPU、DSシリーズのサブCPUなどがそうですね。
結構身近にいるんですよ。このマイコン。
僕もこのマイコンはマンコンとして持っていて、制御して遊んだりしていますが・・・・
どう考えてもNXTには勿体無いですね。
PICやAVR、RCXに内蔵されているH8とかとは問題にならないくらい別次元にいるマイコンです。
もちろん32bitですが、動作クロックは48MHzと少々少なめですね。
まぁこれでもARMファミリーの中では最低クラスの一個上程度のシリーズなのですから驚きですね。
因みにサブでAtmel AVRが使用されています。
こんなNXTは外部出力ポートが3、外部入力ポートが4存在します。
ここから各種センサー、モーターを接続するわけですが、
そのポートのケーブルはRCXの3倍の6芯となっています。
これは、入力の場合はアナログ用電源、アナログ入力、回路電源、GND、入力信号A、入力信号Bの6本、
出力の場合はPWM1、PWM2、エンコーダー電源、GND、入力信号A、入力信号Bの6本となっています。
入力のアナログ用電源、アナログ入力はRCXのセンサーポートの2芯の中身と同じです。
RCX変換ケーブルはこの2本のみを使用しています。
回路電源、GND、は電源とGNDが必要センサー用のものです。回路電源は4.3~4.8V程が出力されます。
入力信号A、入力信号Bはセンサーとの通信用の信号となります。
ここではI2C、RS485という通信規格をサポートしています。でもRS485って要するにD-sub25ですよね。
一体実装してどうするつもりなのでしょう。
I2Cというのは・・・説明するまでも無いとは思いますが、フィリップス社が提唱したシリアル通信方式で
「Inter-Integrated Circuit」の略語です。
この方式は・・・仕組みについての説明を実際にしても難しい言葉の羅列になるので簡単に。
いつも僕が小学生に説明している方法で説明すると、
まず通信線(2本で1セット)があって、
それでデータで受け取る側(NXT)と、データを送る側(センサー)が繋がれています。
そしてこの状態でセンサーはNXTにデータを送っているのですが、
センサー側は同じ線に複数台あっても大丈夫なようになっています。
どのようになっているかというと、
例えばNXTのポート1にI2C対応の超音波センサー、コンパスセンサー、加速度センサーが繫がれた場合、
まずNXTはどのセンサーのデータが欲しいかというデータを全てのセンサーに送ります。
その後、センサー側は「データが欲しい」といわれたセンサーのみが返事をします。
そして、NXTが「データを送るときの設定(加速度センサーであればどの方向の加速度か、等)」を送り、
それをセンサーは受けとり、さっき返事をしたセンサーのみがデータをNXTに送る。
という風になっており、同時に複数のセンサーのデータを送るのではなく、
繫がれた中でNXT側が指定したセンサーのみがデータを送る。というものです。
因みにこれで1ポートにつき112個までのセンサーが接続できます。
これが4ポートあるので4×112で448個、
これにそれぞれのポートにアナログが4つなので4足して、
結果NXTは452個のセンサーが制御できることになります。
また、実際はマルチマスタといって受け取る側のNXTが複数台いても成り立つのですが、NXTのI2C機能は
本物ではなく、ソフトウェアで作られた擬似的なものなのでNXTでできるかはワカリマセン(笑)。
モーターの方はと云うと2本のPWMというのはモーターに送る制御信号で、
エンコーダー電源、GNDは内部の回転センサーの電源です。
入力信号A、入力信号Bというのは回転センサーのデータの入力信号で、これもPWM波形です。
この部分だけ切り取ってセンサーに使っちゃえ!などと考える人もいたかと思いますが(ここにいた)、
残念ながらアナログ信号ではないので、非常にめんどいことになります。まだI2Cの方が楽か・・・。
また、これらの入出力の端子はRJ12という電話線の端子を使用しています。
あとPCとの通信手段としてUSB2.0、他デバイスとの通信用にBluetoothが内蔵されています。
まだまだかけることいっぱいありますが永くなるのでこの辺で今日はお開きです。
書く気になったら続き書きます(笑)
(^・ω・)ノRadiumProduction in RoboCupJunior
カレンダー
最新CM
カテゴリー
らじぷろ目次
らじぷろ検索機
最新記事
(01/01)
(08/27)
(04/29)
(01/01)
(11/20)
(09/06)
(09/04)
(08/09)
(08/06)
(07/27)
(05/29)
(03/15)
(01/01)
(05/07)
(01/11)
プロフィール
HN:
Luz
性別:
男性
アーカイブ