2011年11月14日月曜日

seed社の超音波距離センサー2

ソフトの改造で使えるようにならないかな。

C:ドライブの「Daisen」フォルダの中の「C-Style for e-Gadget」フォルダの中の
「EG-Core」フォルダの中の「V3.09」フォルダの中に
D_Main.cとD_Main.hというファイルがありましてメモ帳で開くことが出来ます。
PINGと書かれているところが関連カ所でありまして、重要カ所を抜き出しますと

#define PING_TOUT 20000 // PING 計測終了時間(uS)
※時間切れを指定しているカ所。新型は38msecなので20000を40000に書き換える。
--------------------------------------------------------------------
gAD[pno] = tct.W / 6; // 6us:1mm
※時間を距離に変換しているカ所。さわらなくていいと思う。
--------------------------------------------------------------------
#define INT_T3_10H 0xFF
#define INT_T3_10L (0xFF-0x05)
#define INT_T3_H 0x8A // (1/32MHz*4)*PS8=1nsec 0xFFFF-0x7530(30msec)
= 0x8ACF
#define INT_T3_L (0xCF-0x05) // 10usec パルス分を差し引く
※1回の計測時間の指定カ所。新型は50msec、0x8Aを0x3Cに、0xCFを0xAFに書き換える。
--------------------------------------------------------------------
あとPINGを打っている10uSを増やしてみたい。
(0xFF-0x05)を (0xFF-0x08)に書き換える。
以上で最大距離が伸びた分をカバー出来る様になると思う。
でもINT_T3_HとINT_T3_Hはプログラムのどこで使っているのかな。
もしかして修正の必要はないかもしれない。

後は、センサ基板の電源側に電解コンデンサー10~100uF6.3V~16Vを付ける。
レシーバーにフードを付ける、とちらかにビニールテープを飛び出るようにして巻けばいい。
などもためしてみる。
まあ、以上は妄想なので期待しないように。

Seeed製
3cm - 400cm
150uS - 25000uS
10uS Trigger
38mS Timeout
50mS 1Cycle
------------------------
PARALLAX製
3cm - 300cm
115uS - 18500uS
5uS Trigger
?mS Timeout
30mS 1Cycle

次のトリガまで最低10mS必要
音波は1cm進むのに約29μ秒かかります。

0 件のコメント: