[325] mesball 動いちゃった 投稿者:">mac 投稿日:2000/05/19(Fri) 10:20 <URL>
> これで行こうかという予定線を、
> http://www.line.to/mac/MindStorms/mesball
> に置いておきます。

バラックでの動作を確認しました。
動作したソースに差し替えてあります。
何とバグは、parity checkがoddでなく、
evenになっていただけでした。
2回の焼付けで動作するとは、
自分でも信じがたいですね。

ひとえにMPLIBシミュレータ、デバッガーの強力さのおかげです。

さて週末は、ライトガイド作戦を実行しボールにしようと思いますが...

[328] Re: mesball 動いちゃった 投稿者:">mac 投稿日:2000/05/21(Sun) 22:16 <URL>
> さて週末は、ライトガイド作戦を実行しボールにしようと思いますが...

まだ、公開用のドキュメントができてないのですが、いい具合にあがりました。
出力は、今上がっている回路の3倍程度流し、平均消費電流は11mA程度です。コンディションによりますが、RCX-Mesballが1mくらい離れていても探査できるようです。

ライトガイドは、アクリル棒ではなく、乳白色デルリン(ポリアセタール)のスペーサーを加工しました。

パイロットランプ代わりに可視光もこのスペーサーの根元に照射していて、ちょっと不気味ないい感じです。
可視光だけでもやってみましたが、至近距離なら動作しますが感度不足でした。

今まで、RCXの受光部は黒色の窓が大きく開いた面が感度がいいと思っていたのですが、ボタンがついているパネル面が最大感度なんですね。7レベルで測定できるので改めて指向性を測定してみようかと思っています。

まずは速報でした。

[329] Re^2: mesball 動いちゃった 投稿者:JinSato 投稿日:2000/05/22(Mon) 02:29
mac さんへ、Jinです。

> まだ、公開用のドキュメントができてないのですが、いい具合にあがりました。

 いや〜、楽しみです。 自分は今週は色々あって、電子工作はできそうにないのですが、
楽しみにしています。

> ライトガイドは、アクリル棒ではなく、乳白色デルリン(ポリアセタール)のスペーサーを加工しました。
この、加工はたいへんですか〜?
 
> パイロットランプ代わりに可視光もこのスペーサーの根元に照射していて、
> ちょっと不気味ないい感じです。
自分もテストでは、普通のLEDもつけていますが、やはり、つけておいたままの
方が作動しているのもわかっていいですよね〜きっと。


> まずは速報でした。
 ありがとうございます。 今後楽しみにしています。

[313] macさんの試作拝見しました。 投稿者:JinSato 投稿日:2000/05/18(Thu) 00:35
Jinです。
mac さん、素早いなー。 もう、コードのプロトタイプできてるんだ-。
しかし、4Mhz じゃきついですかー、 そうかー。 4MHz のセラミック発振子で
いこうと思ったんですが-。

イントラプト使わないでやれあ、なんとかなるかなー。
しかし、オシロスコープも無しでタイミングが重要なものを作ろうとすること自体
ちょっと無茶なのでしょうか?
どこかに、中古のないかなー。 さすに新品は高くて買えないし〜。

また、 回路も拝見させていただいたのですが、IRのLED 1つだと360度全方向に飛ばすのは
少しきついと思います。 RCXをMessageBallにした場合だと、正確に測定したわけでは
ないのですが、左右に20度くらいだったようなきがします。

自分が作ろうと思っているのは、全部で4つくらいつけるつもりです。

また、mac さんの回路を拝見したら、I/OをPortを3つ使われてトランジスター
2SC1815 を駆動されているようでしたが、 これは、コードをよく読めばわかるのかも
しれませんが、駆動する 赤外線LEDの出力を調整するためだと理解しましたが
そうなんでしょうか〜。 PICのI/O Portとは、あれ、25mA だったかな、それを
Port1 = 25mA , Port 2つで = 50mA, それで、 Port3つで 75mA を狙っている
んですよねー なるほどなー。


自分のはまだ試作の前のテスト段階ですが、Dipスイッチかジャンパーをつけて飛ばせる
メッセージを16通り変えることが出来るものを考えていました。
また、出力の調整まで考えていなかったのですが、ジャンパー1つつけて、強弱の2つで
やろうかなーと思いました。

きっと、このペースだと、mac さんのが先に完成しそうですねー。

[315] Re: macさんの試作拝見しました。 投稿者:">mac 投稿日:2000/05/18(Thu) 10:04 <URL>
> しかし、4Mhz じゃきついですかー、 そうかー。 4MHz のセラミック発振子で
> いこうと思ったんですが-。

KimKosakaさんは、キャリアだけですが、
PicC, 4MHzで38kHzを発生しているんで、
出来る可能性はあるんですが、もっているのが16LF84ではないので、
どのみち、5V電源だし面倒だから、まあいいかと (^^;
# 6MHz, 10MHzでは、分周比が半端なんですよね。

> しかし、オシロスコープも無しでタイミングが重要なものを作ろうとすること自体
> ちょっと無茶なのでしょうか?

MPLABの"Stop Watch"なら、本物のオシロスコープより「正確」だったりして。

> また、 回路も拝見させていただいたのですが、IRのLED 1つだと360度全方向に飛ばすのは
> 少しきついと思います。

ボールではなくアイスホッケーのパックのようなものを想定していて、
φ6mmのアクリル棒をライトガイドにして、
この表面をフロスト加工した物を、
アンテナみたいに立て、下の端面からLEDで送りこんで、
全周囲に送れないかと思っています。
電流を目一杯にしても、散光しすぎてレベルが足りないと失敗ですが。

> また、mac さんの回路を拝見したら、I/OをPortを3つ使われてトランジスター
> 2SC1815 を駆動されているようでしたが、 これは、コードをよく読めばわかるのかも
> しれませんが、駆動する 赤外線LEDの出力を調整するためだと理解しましたが

あれは、R-2Rラダー電圧出力の3bit DAコンバーターです。
連続的に7段階に出力を変えながら、
その出力に対応したメッセージを送信しようと思っています。
どのメッセージを受信できたかで、入力レベルを察知し、
方向探査をスムーズに行わせようとしてます。
asm source codeのledpowが出力レベル変数です。

定電流回路になっているので、ライトガイド作戦が失敗したら、
LEDを直列にしてリカバーしようと思います。

> 自分のはまだ試作の前のテスト段階ですが、Dipスイッチかジャンパーをつけて飛ばせる
> メッセージを16通り変えることが出来るものを考えていました。

mesoffと言う定数にしてハードコーディングしてます。
mesoff+ledpowが実際送信されるメッセージ番号です。

[316] Re^2: macさんの試作拝見しました。 投稿者:JinSato 投稿日:2000/05/18(Thu) 12:12
Jinです

> # 6MHz, 10MHzでは、分周比が半端なんですよね。
 そうか〜、そこまで考えていませんでした。

> > しかし、オシロスコープも無しでタイミングが重要なものを作ろうとすること自体
> > ちょっと無茶なのでしょうか?
>
> MPLABの"Stop Watch"なら、本物のオシロスコープより「正確」だったりして。

 え、そうなんですか、これから見てみます。 

> 全周囲に送れないかと思っています。
> 電流を目一杯にしても、散光しすぎてレベルが足りないと失敗ですが。

 なるほど〜。

 自分は究極的にはボールにしたいと思ってはいるんですが。 ....

> > また、mac さんの回路を拝見したら、I/OをPortを3つ使われてトランジスター
> > 2SC1815 を駆動されているようでしたが、 これは、コードをよく読めばわかるのかも
> > しれませんが、駆動する 赤外線LEDの出力を調整するためだと理解しましたが
>
> あれは、R-2Rラダー電圧出力の3bit DAコンバーターです。
> 連続的に7段階に出力を変えながら、
> その出力に対応したメッセージを送信しようと思っています。

 7段階になりますか〜?。  あ、まてよ、I/Oポートのピンの間に入れた
抵抗があるから、7段階になるんですよんね〜。
 
> どのメッセージを受信できたかで、入力レベルを察知し、
> 方向探査をスムーズに行わせようとしてます。

 ん〜、それだと、ロボットのほうもインテリジェントに作らないといけないですねー。
受け取れたメッセージによって、球の遠さが大体想像つくということで。
 この辺は実際に作って調整とかが必要そうですねー。

> 定電流回路になっているので、ライトガイド作戦が失敗したら、
> LEDを直列にしてリカバーしようと思います。

 へへ、それもちゃんと考えているんですねー。

先ほど、後閑 哲也さんの 電子工作の実験室 の中にある 
http://www.picfun.com/equipj31.html のページに、変調周波数: 37.9kHz でデーターを
送る例があり、私はこれを応用してみようかと思っています。
 37.9Khzなので、RCXが受けることが出来るかがちょっと不安なんですけど。

[319] Re^3: macさんの試作拝見しました。 投稿者:">mac 投稿日:2000/05/18(Thu) 13:45 <URL>
> > # 6MHz, 10MHzでは、分周比が半端なんですよね。

2400x32=38400
38400x2=76800
76800xNx4=clock
にこだわらず、2400x31でもよしにするとか
、duty 50%でなくても良ければ、
いろいろ使えますね。

CMOSの消費電力はほぼクロックに比例するので、
下げる価値は大きいのですが...
まあ、動いてから考えましょう(^^;

>  7段階になりますか〜?。  あ、まてよ、I/Oポートのピンの間に入れた
> 抵抗があるから、7段階になるんですよんね〜。

DAコンバーターのセオリーのひとつなんです。
最終段をちょっといじって、普通はV*(n-1)/n、
(nは分解能)が、最大出力になるところを、(V/4)*(7/8)にしてます。
DA 出力は8段階ですが、0は当然届きませんので。

> > どのメッセージを受信できたかで、入力レベルを察知し、
> > 方向探査をスムーズに行わせようとしてます。
>
>  ん〜、それだと、ロボットのほうもインテリジェントに作らないといけないですねー。

1レベルより、かえって簡単かと思います。
回転して、出来るだけ低レベルまで受信できる方向を探し、
前進中にそのレベルをキープできなくなったら、
再検索をする方法で行けると思います。
7レベル一巡するのが約0.3秒なので、
ちょっと回って、0.3秒調べ、また回って...
とやっても行けるかと...

[320] DAコンバーターのセオリー 投稿者:JinSato 投稿日:2000/05/18(Thu) 13:55
jin >  7段階になりますか〜?。  あ、まてよ、I/Oポートのピンの間に入れた
jin > 抵抗があるから、7段階になるんですよんね〜。

mac> DAコンバーターのセオリーのひとつなんです。
mac> 最終段をちょっといじって、普通はV*(n-1)/n、
mac> (nは分解能)が、最大出力になるところを、(V/4)*(7/8)にしてます。
mac> DA 出力は8段階ですが、0は当然届きませんので。

mac さんの回路初めて見るパターンで、初め意味がわからなかったのですが、
ちょっぴり考えたら、抵抗が直列についていて、わかりました、
RA 0=H 1=L 2=L の場合は 抵抗が10K+10K+20Kになって
RA 0=L 1=H 2=L の場合は、抵抗が10K+20Kになって
RA 0=H 1=H 2=L の場合は 抵抗が10K+10K+20Kと10K+10K+20K の電流になって

と言う具合になるのかな〜、と想像しているうちに、(正確な計算式とかは
出したわけじゃ〜ないのですが)の見込めた感じがしました。

 こんな考えで有ってますよね〜。 

いずれにせよ、この2ヶ月くらいで、ずいぶん分かった感じがします(思い込み?)
これも、macさんをはじめ、皆様のお陰です〜。 

有難うございます。
これからもよろしくお願いいたします。

[321] Re: DAコンバーターのセオリー 投稿者:">mac 投稿日:2000/05/18(Thu) 15:42 <URL>
> ちょっぴり考えたら、抵抗が直列についていて、わかりました、

電流加算型や、PWMのDAに比べると、
電圧出力のR-2RラダーDAの動作は遥かに複雑なんで、
正確なところは、公開するときに解説つけますね。