[1819] farmwereのdownroadが完了しません 投稿者:高橋宏 投稿日:01/12/15(Sat) 17:40
初めて質問します。最近RIS ver2.0英語版を入手したばかりの全くの初心者です。手順に従ってIRタワーからfarmwereをdownroadしようとしているのですが、downroadは順調に行きます(タワーの緑のランプは点灯、RCXの数字はどんどん増えます)。ところが、最後にビビーとブザーが鳴って「please wait a few moments alive the built-in programs are downroaded to the RCX」というメッセージが出たまま、いくら待っても完了しません(few moments どころかvery long moment待ったのですが)。何回かやり直しましたが、同じ現象が起こります。どうしたら解決できるのか、どなたかわかりやすく教えて下さいませんか?

[1821] Re: farmwereのdownroadが完了しません 投稿者:">mac 投稿日:01/12/16(Sun) 00:27 <URL>
> 最後にビビーとブザーが鳴って
> 「please wait a few moments alive the built-in programs are downroaded to the RCX」というメッセージが出たまま、
> いくら待っても完了しません(few moments どころかvery long moment待ったのですが)。

firmwareが転送完了していれば、
built-in programsはdownloadしなくても、動作しますので、
打ち切ってしまって、簡単なサンプルプロくらむを送って見てはどうでしょうか?
これもやっぱい送れないようなら、built-in programsだけでなく、
ユーサープログラムの転送全部に問題がありますので、
もうレゴ社サポートに頼るのがいいですね。
ユーザープログラムが送れるんだったら、
たいした問題じゃないので、私ならそのまま使いますが(^^;

[1823] フリーズしてしまうんです 投稿者:高橋宏 投稿日:01/12/17(Mon) 21:05
大切な現象を忘れていました。「Please wait・・・」のメッセージが出たままフリーズしてしまうんです。それから、farmwereのdownroadが完了したら、RCXの窓に00.00と表示が出るんですよね(そうですよね?)。これも出ないんです。どうしたらいいんでしょう?

[1824] Re: フリーズしてしまうんです 投稿者:">mac 投稿日:01/12/19(Wed) 09:48 <URL>
> 大切な現象を忘れていました。「Please wait・・・」のメッセージが出たままフリーズしてしまうんです。それから、farmwereのdownroadが完了したら、RCXの窓に00.00と表示が出るんですよね(そうですよね?)。これも出ないんです。どうしたらいいんでしょう?

RCX側に原因があるのか、PC側の原因なのか切り分けないといけませんね。
USB対応のnqcを持ってきて、
nqc -Susb1 -firmware <firmware-filename>
で、00.00がでるようなら、RCX側は正常ということになると思います。

USB対応のnqcは、
http://minds.cs.hkg.ac.jp/soft/soft.html
にあります。
firmwareの場所は...すみません、手元のマシンにインストールしてないので、失念
*.lgo
で\Program files以下を検索してください(^^;
nqcを展開した場所にコピーすると操作が楽です。

[1871] 解決しました 投稿者:高橋宏 投稿日:02/01/25(Fri) 10:27
色々やってみたけどうまく行かないので、直接、米国のmindstorm user's supportからアドバイスを受けてやったら、見事解決しました。どうもありがとうございました。内容は以下の通りです。

- Go to START, and then RUN and type in MSCONFIG, then press OK.
- Click on the STARTUP tab.
- Make note of which items are checked and unchecked. NOTE: You will need this information later to restore the Windows configuration after troubleshooting the IR Tower.
- Click back on the GENERAL tab.
- Click on SELECTIVE STARTUP, then on LOAD STARTUP GROUP ITEMS to remove the check mark. NOTE: Doing this could cause network connections to be severed. Make sure you are aware of what you are disabling or have an experienced tech help you.
- Click APPLY and CLOSE.
- Restart Windows when prompted.

[1820] Re: farmwereのdownroadが完了しません 投稿者:JinSato 投稿日:01/12/15(Sat) 22:52
ん〜、これはちょっと原因がわからないので 決定打的な解決
方法はわからないですね。 (お役に立てなくてごめんね)

ただ、自分ならば次のようなことを試してみます。

1:RCXとIR Tower の距離を調節する。
2:コントロールパネルの中にあるUSB IR Towerの距離設定を
  変更してみる。(RIS2.0ですから、USB IR Tower ですよね)
3:念のため、蛍光灯などを使っていたら消す。
4:太陽光(特に西日)が当たらないようにする。(赤外線遮断)
5:念のためRCXの電池を別の新しいものに換えてみる。

というくらいでしょうか。  以上

[1867] LinuxでVisionCommandのカメラ 投稿者:Makoto 投稿日:02/01/20(Sun) 15:20
初めて投稿いたします。
 現在、Linux上でカメラの監視下にある搬送車に見立てたRCX付きのローバーのコントロールソフトウエアを試作中です。手軽なカメラをと思いweb Camを利用していますが、どうせならと思いVisionCommand(日本語版:実は説明書だけでしたが)を購入し、付属のカメラをWebCamと同様にLinux(USBポートから)利用しようと思いましたところ、やはり既存のドライバでは使えませんでした。
 いろいろなサイトを調べて見ましたが、やはりドライバを自作するほかに方法はないのでしょうか?
 有益な情報をお持ちの方おられましたら、提供をお願いします。

[1868] Re: LinuxでVisionCommandのカメラ 投稿者:">mac 投稿日:02/01/20(Sun) 15:51 <URL>
> やはり既存のドライバでは使えませんでした。

Linux用の既存のドライバーと言うとどれでしょうか?
http://sourceforge.net/projects/qce-ga
のことですか?

私は、まだ試していないのですが。

[1869] Re^2: LinuxでVisionCommandのカメラ 投稿者:Makoto 投稿日:02/01/20(Sun) 21:48
> > やはり既存のドライバでは使えませんでした。
>
> Linux用の既存のドライバーと言うとどれでしょうか?
> http://sourceforge.net/projects/qce-ga
> のことですか?
>
> 私は、まだ試していないのですが。
すいません。説明不足でした。
Creative Video Blaster WebCam II を使って動作確認をしましたので、
CPiA-based のはずです。
Vision Commandだったので、Logitecのドライバの
http://sourceforge.net/projects/qce-gaも確認しましたが残念なが
ら動作しませんでした。何かべつの方法がありますか??

[1870] Re^3: LinuxでVisionCommandのカメラ 投稿者:">mac 投稿日:02/01/21(Mon) 12:13 <URL>
> Vision Commandだったので、Logitecのドライバの
> http://sourceforge.net/projects/qce-gaも確認しましたが残念なが
> ら動作しませんでした。何かべつの方法がありますか??

結局USBはあきらめて、
NTSC出力のカメラをBT848または、
上位互換のキャプチャボードに入れ、
V4Lで動かすのが最も簡単でしょう。

[1863] パルス信号間接取得方法教えて! 投稿者:バグバグ 投稿日:02/01/18(Fri) 00:47
初めて、投稿します。
パルス信号の出ているコード(1mA程のパルスが出ている)から
間接的に信号を取りたいのですがローコストで、良い方法を具体的に教えてください。クランプメーターは高いのでなにかコイルでできるセンサーの応用を教えてください、宜しくお願い致します

[1866] Re: パルス信号間接取得方法教えて! 投稿者:">mac 投稿日:02/01/18(Fri) 09:14 <URL>
> 初めて、投稿します。
> パルス信号の出ているコード(1mA程のパルスが出ている)から
> 間接的に信号を取りたいのですがローコストで、良い方法を具体的に教えてください。クランプメーターは高いのでなにかコイルでできるセンサーの応用を教えてください、宜しくお願い致します

なんかまたしても、MindStormsと関係ないような話なのですが、
http://www.mi-ra-i.com/JinSato/MindStorms/Ad/GiveAndTake.html
は、投稿前に読みましたか?

まだ、電気関係の掲示板で質問するにしたとして、
「間接的」と言うのが、単に絶縁していることをさすのか?
クランプメーターのよう電線を切らずにはかれることを指すのか不明ですし、
1mAと言うだけでは、交流か直流か分かりません。

もっと具体的に何をしたいのか書かないと、
回答不能ですね。
# クランプテスターはそんなに高いものではないと言う突っ込みもありそうですし...

[1864] Re: パルス信号間接取得方法教えて! 投稿者:バグバグ 投稿日:02/01/18(Fri) 00:48
> 初めて、投稿します。
> パルス信号の出ているコード(1mA程のパルスが出ている)から
> 間接的に信号を取りたいのですがローコストで、良い方法を具体的に教えてください。クランプメーターは高いのでなにかコイルでできるセンサーの応用を教えてください、宜しくお願い致します

[1859] import libの作り方 投稿者:">mac 投稿日:02/01/13(Sun) 02:49 <URL>
http://legolab.daimi.au.dk/ProgrMindStorms.dir/links.html
から、新しいSDKを持ってきて解凍したのですが、
towerapi.dllに対応する、
インポートライブラリtowerapl.libが見当たりません。

lugnetで質問したら、MS VC++のLIBコマンドで、
LIB /DEF:towerapl.dll
とすればよいのではという答えをもらったのですが、
これでは、libはできるものの、未解決参照を解決できず、
うまくいきませんでした。

borlandのtoolでは、implibと言うのがあるそうですが、
これに対応するような、
dllからVC++用のインポートライブラリを、
作るツールはあるのでしょうか?

[1862] Borland C++ Compiler 5.5 無償ダウンロードサービス 投稿者:JinSato 投稿日:02/01/13(Sun) 15:05
そういえば、
http://www.borland.co.jp/cppbuilder/freecompiler/
で Borland C++ Compiler 5.5 無償ダウンロードサービス と
いうのをやっています。 

> borlandのtoolでは、implibと言うのがあるそうですが、
> これに対応するような、
> dllからVC++用のインポートライブラリを、
> 作るツールはあるのでしょうか?

 いま、ダウンロードしたらみたら、implib はこの
Borland C++ Compiler 5.5 無償ダウンロードサービス版に
入っているようです。

コマンドラインで
implib -a -c TowerApi.lib TowerApi.dll

とすると、Lib ファイルは作れました。
これを、VC++で利用できるかは確認してませんが、 -a オプションが
を使うといけそうな気がします。

[1865] DLL to Lib 投稿者:">mac 投稿日:02/01/18(Fri) 09:04 <URL>
> > dllからVC++用のインポートライブラリを、
> > 作るツールはあるのでしょうか?
>
>  いま、ダウンロードしたらみたら、implib はこの
> Borland C++ Compiler 5.5 無償ダウンロードサービス版に
> 入っているようです。
>
> コマンドラインで
> implib -a -c TowerApi.lib TowerApi.dll
>
> とすると、Lib ファイルは作れました。
> これを、VC++で利用できるかは確認してませんが、 -a オプションが
> を使うといけそうな気がします。

この方法もやはりだめでした。

DLL to Lib と言うソフトも見つけてのですが、
うまく動作しませんでした。
http://www.binary-soft.com/dll2lib/dll2lib.htm

# もしかして私のやり方が間違っているとか(^^;

[1860] Re: import libの作り方 投稿者:JinSato 投稿日:02/01/13(Sun) 08:43
どうも、mac さん、今年もよろしく〜

> dllからVC++用のインポートライブラリを、
> 作るツールはあるのでしょうか?
 これは自分も知らないのですが、いくつかの方法があります。

今回は LEGOTowerSetRange などの関数名がTowerApi.hで
定義されていますので、面倒ですが、LoadDLLLibrary だったかな
などのライブラリでDLLを自分のインスタンスの中に読み込んで
hInst を使って、GetProcAddressで1つ1つ関数のエントリーポインターを取得していく方法があります。(面倒ですが)

 本来ならば、DLLを作るときに Lib もつくるので、それを使えば
そんな面倒なことは、リンカーがしてくれるのですが。

 リンカーの仕組みがわかれば、DLLからLibを作ることもできるとは
思いますが、面倒ですよね。

 別な方法で、これは動くか(動かない可能性が高い感じがしますが)
試してみないとわからないけど、towerapl.dllと同じ名前のDLLを
VCの新規プロジェクトで作ってその中に、TowerApi.h の中で定義
されている関数を全部ダミーで定義して、ダミーのDLLとダミーの
LIBを作ってしまい、ダミーのDLLは使わないで本物のDLLを使う
なんてことも可能かもしれませんね。でも、これはもっと面倒ですね。

なにのヘルプになってないですね。 すみません。 

[1861] Re^2: import libの作り方 投稿者:">mac 投稿日:02/01/13(Sun) 10:05 <URL>
> 今回は LEGOTowerSetRange などの関数名がTowerApi.hで
> 定義されていますので、面倒ですが、LoadDLLLibrary だったかな
> などのライブラリでDLLを自分のインスタンスの中に読み込んで
> hInst を使って、GetProcAddressで1つ1つ関数のエントリーポインターを取得していく方法があります。(面倒ですが)

これはやってみました。
確かに、モード切替に成功するのですが、
「ESPがどうたら...」とエラーがでて、
直後に異常終了してしまいました。

[1856] シリアル信号 投稿者: 投稿日:02/01/11(Fri) 01:39
始めて書き込みます。
シリアル信号について質問があります。

以前、モデムのATコマンドのようなプロトコルで外部リレーを動かすということをしまして、
その延長で今度はソニーのVBOXを動かすプログラムを作りたいと思っています。

ところが、リレーの時は単にpcd@@”というようなストリングをシリアルでリレーに
送ればよかったのですが、vboxの場合は”88 30 01 FF”というようなバイト列の信号を送ら
なければならず、試しに単にバイト列をストリングとして送ってみたのですが当然うまくいき
ませんでした。

シリアル信号を送る場合、ストリングとバイト列によってどのような文法/記述の違いが生じる
のでしょうか?すごく初歩的な疑問だと思うのですが、すごく悩んでしまっています。
どなたかご教唆いただけるとありがたいです。

[1857] Re: シリアル信号 投稿者:">mac 投稿日:02/01/11(Fri) 16:14 <URL>
> 始めて書き込みます。
> シリアル信号について質問があります。

なんか、書き込む掲示板を大きく勘違いされているようなのですが...
ここは、LEGO MindStormsに関連する質問をするBBSです。

> シリアル信号を送る場合、ストリングとバイト列によってどのような文法/記述の違いが生じる
> のでしょうか?

うーむ、ストリングスはバイト列のサブセットです。
基本的には、データとして0が送れるかどうかがまず大前提として違うのですが、ここはそれを説明するところではないので、もっと適当なBBSを探してください。

[1858] Re^2: シリアル信号 投稿者:JinSato 投稿日:02/01/12(Sat) 19:16
どうも、mac さん、フォローありがとう。
今年も宜しくお願いします。

ところで。

林さんへ
>その延長で今度はソニーのVBOXを動かす
>プログラムを作りたいと思っています。

VBOXってなんですか〜? 
... google で検索すると
 http://www.vector.co.jp/soft/win31/hardware/se007313.html
に簡単な説明がありました。 こういうものがあるんですね。

>リレーの時は単にpcd@@”というようなストリングを
>シリアルでリレーに送ればよかったのですが、
>vboxの場合は”88 30 01 FF”というようなバイト列の信号を送ら
>なければならず、試しに単にバイト列をストリングとして
>送ってみたのですが当然うまくいきませんでした。

マインドストームと話題が違いますが、

ストリングとバイト列の違いがわかれば、問題は解決するかな〜?

ストリングは、文字列とも言います。 文字(ここでは単純に
アルファベットに限定しましょう)の場合、
一文字、一文字に、数値が割り当てられています。
どういう文字に、どんな数値を割り当てるかは規格により違います
一般的には、ASCII CODEなどを使います。
 参考:http://www02.so-net.ne.jp/~hat/imail/sec02.html

ASCII CODE で アルファベットのAは16進数で41になります。

で pcd@@ というのをASCII CODEで調べれば、どんな数値を
送っていたかわかります。

逆にいえば、数値から、ASCIIキャラクタを送ればよいかも分かると
思います。

あとは、どんなプログラミング言語や、どんなソフトを使って
その数値を送るか、表現方法がちがいますので、林さんが
使っているソフトのマニアルをよ〜〜く調べたり、製造元に
問い合わせたりするのが良いと思います。

 ということで、これを機会に、林さんもマインドストームで
遊んでみませんか。 面白いですよ。