Re: The history of "M&Y"

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

ベータマックスはなくなるの?  その2

2014-10-18 | NXTねた

え~と、「なくなるの」シリーズの第2弾です。

ネットをさまよっていたら・・・

 

株式会社ラーニングシステム

 

レゴ社より、教育用レゴマインドストームNXT基本セット及びNXT関連製品の
販売およびサポートを2015年12月末で終了することが発表されました。

ということです。

2015年は LEGO MINDSTORMS の発売から17年なんだそうです。

(そんな昔からあったんだ)

NXTは、2006年の発売だと思うので、まあ、10年弱ですね。

 

M&Y」が初めてロボカップに参加した2007年は、RCXしか持っていませんでした。(しかも、センサーのいくつかを杉並区立科学館から借りていたという状態・・・)

しかし、世間には、すでにNXTのロボットで参加しているチームがありました。

しかも、当時めっちゃ高かったNXTを2個も搭載しているロボットがあり・・・どこの世界にもお金持ちが居るんだなぁ、と驚きました。(笑)

M&Y」は、参加当初はRCXでしたが、いつのまにか「NXT」になり・・・

世界チャンピオンにもなったので、NXTには、ひときわ愛着があります。

時代遅れになっても・・・壊れるまで使ってやろうと思います。

 

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

NXTねた その104 また謎のエラー

2014-09-02 | NXTねた

NXCで、プログラムを作っていて、これまでなんとも無かったのに・・・

5行くらい追加したら・・・

コンパイルが終了しなくなりました。

普通は、コンパイル(とNXTへのダウンロード)が終了すると「ビッ」と音がするのですが・・・

鳴りません。


しばらくして、PCの画面にエラーが表示されました。

NXTと通信できない・・・

なんで!?


NXTを確認すると、暴走状態で、ボタンを一切受け付けません。

灰色ボタンの長押しでも、電源が切れず・・・本体裏の(隠し!?)リセットボタンを押して復帰しました。

同じプログラムをもう一度コンパイルすると、やっぱり暴走です。


何か、プログラムの禁則事項を書いてしまったのでしょうか!?


最後に追加した5行をコメントにしてみました。

コンパイルできました。

3行のコメントを外してみました。

コンパイルできました。

さらに1行のコメントを外してみました。

コンパイルできました。

残りの1行は Wait(1000); だったのですが、このコメントを外してみます。

やっぱり、暴走です。


Wait(1000); の行のコメントをそのままにして、別の部分のWait文をコメントにしてみました。

コンパイルできました。


つまり・・・文法的なものではなく、容量的なものだったようです。

しかし、エラーではなく暴走とは・・・


これ、競技会の会場とかで、調整中に発生したら、きっと焦るよなぁ。

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

RCXの時代の終焉!?

2014-06-09 | NXTねた

M&Y」のロボットは、2007年に初めて参加して以来、LEGOのロボットです。

最初は、RCXのロボットだったのですが、時代の変革とともに、NXTに変更されました。

(もう、EV3に代わるのも時間の問題でしょうか・・・)


NXT自体は、なかなか性能が高く、(文句はあるものの)現在でも使えないことはありません。(つまり使えます)

しかし・・・NXTのシリーズのセンサーユニットは、大きくて使い難いです。

レスキュー競技は光センサーを複数使わなければならないのですが・・・NXTのセンサーを使う気にはなりませんねぇ。

時代遅れのRCXの光センサーを使うチームが多いです。

さらに、タッチセンサーもRCX用のものを使うチームが多いです。

ということで・・・

「花鳥風月」のロボットも、RCX様のタッチセンサーや光センサーを使用しています。

しかし、RCXが世に出て10年の歳月が経過しました。

そのためか・・・ケーブルが劣化がしてきました。

被服のゴムがボロボロになって、中の導線がむき出しになってきます。


P1020212


しかたがないので、新しいのを買おうと思って探しても、さすがにありません。

(まあ、当たり前ですか・・・)


結局、ヤフオクで手に入れました。

もう、こんな手段でしか手に入れられないのでしょうかねぇ。


P1020037


それにしたって、NXTの光センサーはでかいですよね。

NXTに使える、コンパクトな光センサーがあれば、売れると思うのですが・・・

あっ、それが Light Sensor Array か!!

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

NXTねた その118 モーターMの謎 続き

2014-06-06 | NXTねた

前回、90度右回転、90度左回転でスタート地点で止まるプログラム

    RotateMotor(OUT_B,60,76);
    RotateMotor(OUT_B,60,-63);

を紹介しました。

一回毎に、プログラムを実行してみると、確かに目的の動作をします。

しかし・・・

この2行ループで繰り返してみると・・・


どんどんズレていきます。

90度右回転して、90度左回転してスタート地点に戻ります。

次に90度回転するハズが90度を越えます(104度!?)。その後90度左回転します。

右回転が、104度、左回転が90度なので、どんどん右にズレて行きます。

何で!?


そうすると、最初だけ

    RotateMotor(OUT_B,60,76);
    RotateMotor(OUT_B,60,-63);

で、2回目以降は

    RotateMotor(OUT_B,60,63);
    RotateMotor(OUT_B,60,-63);

にすればいいんじゃない・・・

プログラムを実行してみると・・・(想像通り)・・・

おぅ、やっと、90度と0度を往復しました。


じゃあ、90度回転した後に、さらに90度回転させるには・・・

最初は

    RotateMotor(OUT_B,60,76);

次に

   RotateMotor(OUT_B,60,76);

かなぁ・・・・これじゃ、回転が足りない・・・

   RotateMotor(OUT_B,60,90);

これで、90度回転しました。



なんとなく、分かったことは・・・

・最初に右に90度回転させるためには76度を指定する

・続けて右に90度回転させるためには90度を指定する

・右回転の後に左に90度回転させるためには -63度を指定する。

・続けて左に90度回転させるためには、-90度を指定する。


なるほど・・・・さらにまとめると・・・

・最初に右に90度回転したいときは76度

・最初に左に90度回転したいときは -76度

・右に回転した後に、続けて右に90度回転するときには90度

・左に回転した後に、右に90度回転するときには63度

ということで、最初の回転か、前回の回転方向によって指定する角度を変える必要があることが分かりました。


めっちゃ、面倒くさい!!

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

NXTねた その117 モーターMの謎

2014-06-04 | NXTねた

インタラクティブサーボモーターMを使ってみました。

サーボモーターっていうくらいだから、回転数を指定すれば正確に回転して止まる・・・

こう考えますよね。


では、まず

RotateMotor(OUT_B,60,90);

を実行してみると・・・明らかに90度以上回転して止まります。

プログラムの意味を考えると、4回実行すると、ちょうど一回転して最初の位置で止まるハズなのでが・・・

1回転と45度くらいの位置で止まります。(そうすると、一回の回転では100度位なんですかね)


同様に、逆回転させても・・・

RotateMotor(OUT_B,60,-90);

やっぱり、どう見ても90度を越えて止まります。

う~ん、何で!?


じゃあ、

  RotateMotor(OUT_B,60,90);
  RotateMotor(OUT_B,60,-90);

このプログラムで、90度右回転、すぐに90度左回転すれば・・・元に戻るだろう・・・

やってみると・・・戻りません。

元の位置を越えて止まります。


う~ん、NXCがEV3を(正式)サポートしていないので、EV3と同時にリリースされたモーターMをサポートしていないということなんでしょうか!?


このプログラムを何度も繰り返すと、スタート位置がどんどんズレてきます。


ちょっと、感覚的な調査ではなく、きちんと計測してみます。

まず、最初の位置(角度)は「0」

  RotateMotor(OUT_B,60,90);
を実行した後の角度は「104」・・・何で104!?

さらに、

  RotateMotor(OUT_B,60,-90);

を実行した後の角度は「-13」・・・何で -13!?


これは、全くサーボモーターとして、制御が効いていないのでしょうか!?

ということで、「使い物にならん」と、まとめようかと思ったのですが、もうちょっとやってみます。

  RotateMotor(OUT_B,60,90);

  RotateMotor(OUT_B,60,-90);

をループで何回か繰り返してみます。

すると・・・104度と -13度を往復します。

段々とズレていくかと思ったのですが・・・違っています。

で・・・ここまで、実験して、何となく

104=90+14

-13=0-13

ということで、指定した角度から13度~14度ズレているのではないかと思いつきました。


じゃあ、右に90度回転させるためには・・・と

  RotateMotor(OUT_B,60,76);

を実行してみると・・・はいっ・・・90度回転して止まりました。(なるほど)

逆回転して0度で止めるためには・・・と

  RotateMotor(OUT_B,60,-76);

を続けて実行してみると・・・


ダメです。0度を越えて、-13度で止まります。

う~ん


じゃあ・・・

  RotateMotor(OUT_B,60,76);

  RotateMotor(OUT_B,60,-63);

を実行してみると・・・

これでやっと、90度右回転して、そのあとに90度左回転してスタートした位置で止まります。

やっと、意図した動作ができるようになったのですが・・・

何で、このプログラムでそうなるのかが、よく分かりません。(汗)

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

NXTねた その116 インタラクティブサーボモーターM

2014-05-29 | NXTねた

先日、手に入れた「インタラクティブサーボモーターM」ですが・・・


早速モーターを使ってみました。

で・・・タイヤを直結してみると、やっぱり力不足です。

普通に直進することはできそうですが、曲がったり、回転したり、坂道を上ったり・・・

モーターに負荷がかかると止まります。


ギアを組み合わせて回転数を下げると(トルクを上げると)使えるかもしれませんが・・・

やっぱり、主動力ではなく、なにかのギミックに使うためのモーターなのかなぁ。


さて、サーボとしての機能は、一応持っているようです。

回転数を指定して回転するとかは、普通にできそうです。

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

NXTねた その115 インタラクティブサーボモーターM

2014-05-28 | NXTねた

これまで何度も・・・NXT用のサーボモーターは、性能的には良いのですが、大きくて変な形なのが気になっていました。

新しいシリーズのEV3になっても、サーボモーターは(なんだかちょっと雰囲気は変わりましたが)それほど大きな変更はありません。

相変わらず、大きくて、変な形・・・


でも、もう一つサーボモータがリリースされました。

それが、インタラクティブサーボモーターM です。

これが・・・旧版になってしまった、NXTで制御できるのか・・・


先日、秋葉原に寄った時に、なんとなく買ってました・・・(笑)


商品を手に取った時に感じたのは・・・

・軽い

・小さい

・四角い(スマートな形)

です。

この大きさ、軽さで、サーボ機能が内蔵されているとは、素晴らしい一品です。


P1010953


問題は、パワーや耐久性なのでしょうかねぇ。

数値的に見ると、大きなサーボモーターに比べて、回転数が早く、トルクが半分以下です。

もしかしたら、これまでのようにタイヤ直結にすると、パワー不足かも・・・

じゃあ、ギアで回転数を一回落とせば良いのかなぁ・・・


いろいろと実験してみようと思います。

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

NXTねた その114 XG1300Lをひっくり返して使う

2014-05-27 | NXTねた

(花鳥風月も愛用している・・・笑)LEGO用の優秀なジャイロセンサーである、XG1300Lですが・・・

これを、ひっくり返して上下を逆にしてみたら、どうなるのか(使えるのか)実験してみました。


普通に取り付けたロボットの表示と比べてみると・・・

普通は、右回転すると、角度の数値が増えます。

右に直角に向けると、90になります。

ひっくり返したセンサーだと、右回転すると、角度の数値が減ります。

右に直角に向けると、-90になります。


ここまでは、予想通り・・・

じゃあ、加速度センサーはどうか・・・

これまでは、ロボットの前を上にあげるとプラスの数値、ロボットの前を下げるとマイナスの数値だったので、逆になるかと思いきや・・・

変わりません。

う~ん、何で!?


そのうち、このセンサーを水平でないロボットに設置してみて使えるかを実験したいと思います。

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

NXTねた その113 Bluetoothでの接続方法

2014-05-25 | NXTねた

NXCでBluetoothを使ってPCとNXTと接続する場合の最初の設定をメモ代わりに残します。

・NXTのBluetoothをON

・PCでBluetoothのデバイスの追加→勝手に検索されて追加される。追加されたアイコンを右クリックして「デバイスを追加」を選択すると・・・

・NXTの画面にpasskey入力の画面になっている(デフォルト1234)これでOKなら「オレンジボタン」を押す。

・PC画面にpasskeyを設定する画面が表示されるので、NXTで指定したpasskeyを入力する。

ペアリングが完了して、使用可能になる。


さて、ここまで出来たので、BricxCCでBluetooth経由で接続できるかというと・・・そう簡単ではないようです。

・PCのBluetooth設定で、「Bluetoothデバイスによる、このコンピュータの検出を許可する」にチェックを入れます。

・NXTのBluetoothのサーチを実行します。→そうすると、(過去に接続したPC名といっしょに)PCの名前が検索されます。 それを選択(オレンジボタン)を押します。

・BricxCCを起動して、Find Brick のPortで Search を選択すると、ちょっと時間が掛かるけど失敗します。 しかし、もう一度Find Brick を実行するとPortで BTH::xxxxが選択できるようになっています。


これで、使えるようになるハズなのですが・・・

BricxCCで使えるようになるためには、何度もエラーになったりします。

う~む、なんかすっきりしない・・・

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

いまさらNXT

2014-04-21 | NXTねた

はい、いまさらNXTのセットを購入しました。

我が家にあるのは、初代のNXTのセットです。(8527というヤツ)

で・・・・

ずっと、NXT2.0のセットに入っている、光センサー(カラーセンサー)を欲しいな~と思っていました。

しかし、いつの間にかEV3の時代に変わっており、NXT2.0は手に入りにくくなってしまいました。


ところが・・・先日、なんとなくヤフオクで、NXT2.0の新品が安く出品されているのを見つけ落札しました。


そして、本日届きました。


確かに、未開封の新品です。

中身を確認するために開封するのが勿体無かったです。


P1010640


箱の裏は、こんな感じ


P1010641


英語版らしいですけど、そんなのは関係ありません。

なんかとってもうれしいです。

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

NXTねた その112 windows8でNXC

2014-03-28 | NXTねた

ところが、つい最近に、ネットを俳諧していて、Windows7(64bit)にNXCをインストールして使っている記事を見つけました。 

その記事によると

・LEGO社のHPから、Fantomドライバーをダウンロードしてインストール

(インストーラが勝手に64bit OSを判断して64bit版ドライバーが適用される)

・BricxCCをインストール

と・・・当たり前のことが書かれていました。


当たり前にインストールすると、インストールできるのかなぁ。

ただし、その記事には最新版のFantomドライバーが1.1.3版と書かれていました。

私がLEGO社のHPからダウンロ-ドしたのは・・・1.2.0版でした。


もしかしたら・・・最新版だとダメ!?


ということで、Fantomドライバー1.1.3を探してきて、インストールすると・・・

あっさり、動作しました。


今までの苦労は何だったの!?

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

NXTねた その111 windows8でNXC

2014-03-27 | NXTねた

IT化の流行に疎い遅いM&Y家族ですが・・・

WinodwsXPのサポート終了が近づいてきたので、慌てていろいろと新しくしています。

その一つが、私のPCです。

やっと(中古ですが)買い換えました。

そう、我が家で初めてのWindows8です。

(正式には、アップグレード版のWindows8を入れたことがありましたけど・・・)


で、このPCでNXCを使えるように、いろいと努力をしてきたのですが、ことごとく失敗しました。

その結果、昨日までは、Windows8(というか、64bit OS)では、NXCが使えない、と本気で考えていました。


でも、NXCのHP(BricxCCのHP)には

BricxCC runs great and is fully supported on all versions of Windows, including 64-bit Windows 7 and 8 along with server versions of Windows OSes.

ちゃんと、64bit OS でも動くよ、と書かれています。

???

一体、どうやったら動くんだよ!?


いろいろネットを調べましたが、手順はこんな感じ

①LEGOのHPにある、Fantomドライバーをインストールする

②BricxCCをインストールする

たった、これだけです。

はい、間違うハズありませんですねぇ。

でも、動かないんです。


まず、LEGOのHPで入手したFantomドライバーをインストールすると・・・


005


こんな、エラーで止まります。

なんかファイルが無いとか言ってます。

ドライバーのファイルを調べると・・・確かにありません。

えぇ~じゃあ、どうすれば良いの!?

ネットを調べると・・・

http://www.robotc.net/download/nxt/

ここにある64bit版のドライバーを入れると良い・・・!?

ということで、実験しましたが、やっぱりダメ

NXTをPCに接続すると、デバイストライバーは確かに認識するのですが、BricxCCがNXTを認識しないのか接続できません。(つまり、FindBricxがエラーになります。)

もう、詰みました。


ということで、きっと Windows8(64bit版)では、NXCは動作しないんだ!!

と、判断しました。(いや、してました)

・・・続く


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

NXTねた その110 Bluetooth

2014-02-07 | NXTねた

先日買った本をぱらぱらと見ていて・・・

なんか、思いついて・・・Bluetoothでの接続をしてみました。


昔の記憶で・・・Bluetoothの通信を使ったときには、「めちゃ遅い、これじゃあ、使い物にならない」という評価をしていたので、それ以降は使う気にならなかったのです。


で・・・今、改めてBluetoothでの通信を使ってみました。

そうすると・・・あれ、普通に使えるなぁ。

以前の「使えない評価」は何だったんだろう・・・


NXTでBluetooth通信を有効にしておくと、結構電池の消耗が早いようなので、必要なときだけ「有効」にした方が良いようです。

一回、通信が成功すれば、次の接続は簡単なのですが、最初の通信が成功するまで、いろいろと試行錯誤をしました。


改めて、転送時間を計測してみると・・・・

USB接続だと、38秒

Bluetoothだと、34秒

って、Bluetoothの方が速いじゃない・・・

この前の本に書かれていた、オプションで、「Use Internal compiler にチェックを付けないと、転送が遅いよ」と書かれていたので、確認したら・・・昔の実験では、そこにチェックが入っていませんでした。 (ちなみにチェックを外すと52秒掛かりました。 しかも、転送が終ってからもしばらくの間、砂時計マークになっている。)


Bluetooth での通信が使えるとなると・・・

NXT Screen が便利に使えます。


Dsc05794


これを使えば・・・NXTの液晶ディスプレイに表示されている内容が、そのままPCの画面で確認できます。

ロボットのセンサーの状態などを把握するのにとっても便利ですよね。

ただし・・・通信が切れてしまうと、プログラムのエディットも苦になるくらいに遅くなります。

こうならないためにも・・・先にPC側で Close communication で通信を切って、それから、NXT側のBluetoothをOFFにする必要があります。

例えば、電池替えをするときも、一端通信が切れるので、先に通信を切った方が良いです。


さて・・・これを使うと・・・動いているロボットの状況が良くわかりますねぇ。 

デバックに便利!!


Dsc05798


でも、まあ、とにかく、Bluetooth が使えそう、ということが判りました。


これを、RoboCupJunior の会場で使って良いか・・・については、ちょっと明確ではないですね。 練習の時には使っても良いでしょうけど、少なくとも本番の計測走行の時には使ってはダメでしょう。 本番の時の較正の時には・・・微妙ですかねぇ。

いや、やっぱり会場では禁止すべきでしょうねぇ。

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

NXTねた その109 Windows7

2014-02-02 | NXTねた

これは・・・NXTねた なのかなぁ。


これまで使ってきたネットブックですが・・・

Windows XP なので、残りの寿命が秒読み状態になってきました。

単に新しいPCを購入すれば良いのですが、そこは貧乏な家族ですから、そんなに簡単に解決しません。

そこで・・・OSを Windows 7 にしてみました。

Windows Update をしたら・・・166個だって・・・


Dsc05791


Windows 7 を入れて・・・Service Pack 1 を適用して・・・NXC(BricxCC)、NXT Dirver をインストールして・・・さて、起動してみると・・・

NXTを認識しません。 いや、ドライバーは正しくインストールされています。

NXTを接続すると「接続されました」と表示されます。


でも・・・NXTの接続が認識できません。


う~ん、何が悪いのでしょうか?

それとも、Windows 7 ではNXCは動作しないのでしょうか!?

私の別のPC(Windows 7)を起動して、NXCをインストールしようと思ったら、既に入っていました。 ということで、普通にWindows 7 でNXCは動作します。


じゃあ、何が悪いの!?


で、いろいろ調べた結果、犯人が判りました。

BricxCCを起動する時に「管理として実行」すれば良いだけでした。

これも・・・Windows 7 の常識なんでしょうかねぇ。

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

NXTねた その108 プログラミング入門

2014-01-28 | NXTねた

いまさらながら・・・

知的LEGO Mindstorms NXT プログラミング入門

という本を買ってみました・・・


Dsc05786


BricxCCやNXCの使い方の本はいくつかありますが・・・日本語の本は、めったにありません。

この本を読んでみて・・・

知らないことが沢山あった!!

というか、こんなに便利な機能が沢山あったのですねぇ。


まず・・・プログラムを入力するエディタ画面で行番号を表示する方法すら知らなかった・・・というのが恥ずかしいです。

で、私が知らないので・・・MYも知りませんでした。

だから・・・コンパイルエラーでエラー行数が表示されても、それがどこだか、非常に判り難かったのです。

でも、明日からは、エラー行数が表示されたら、すぐにその行を特定することができますね。

まあ、そんな基本的な事すら知らなかったなんて・・・


この本を・・・もっと前に知っていたら、これまでの苦労は半分になっていたと思います。

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