(電子工作)
 
 
 スピードメーター

 
 
2009年春〜

【 回転検出近接センサー 】を使用して、正確なスピードメーターを製作してみたい。

PIC(ワンチップマイコン)での表示処理方法検討

 タイヤが1回転する間に、9回の信号が出るが、その内の1回の時間を計測し、時速計算を行い表示する。

 
   
GIF 350x330 30.0KB


 時間を正確にカウントする必要があるので、
 水晶を使うことにする。

 秋月電子通商から、1.308MHz小型クリスタ
 ルオシレーター、5個で100円を購入した。

 ←は、秋月電子通商のホームページから
 コピーしたもの。

 この水晶でPICを活動させると1命令時間は
 0.0000030581秒になるはず。 
 
   
ピレリーMT-21の新品で、組み込み後のタイヤ半径を実測すると348mmだった。
スピードが1kmの場合は、

 
    348[mm]/1000x2x3.14159x60x60
 = 0.874618656 秒/パルス になる。
 
    1km/hx1000x9[パルス]
 
   
約1秒に近い。
 意外?と長いので、プリスケールを「8」にして、1カウントを8倍の0.00002446464秒でやってみる。

それをPICの16bitタイマーでカウントさせると、35750カウントになる。(0.874618656÷0.0000244648)
すなわち35,750カウントで1km/hの速度になる。

その10分の1カウントなら10km/hの速度になる。反比例する。

∴速度表示の計算は35,750÷カウント数となる。

たとえば60km/hなら595カウントになるので、35,750÷595=60.084km/h

35,750カウント係数は、タイヤ半径により変わり次式になる。 

 
    タイヤ半径[mm]/1000x2x3.14159x60x60
 = カウント係数
 
    1000x9[パルス]x(1/1308000*4*8)
 
 
16bit計算

 
    2進数8bitでは255までしか数えられないので計算精度が低い。
16bitだと65535まで計算できる。
ビット数を多くすると精度が高いはずだが、プログラムと計算が面倒になる。とりあえず16bitでやってみたが、十分である。

 
 
誤差考察

 
    もし、実際のタイヤ半径と想定半径が10mm違っていた場合どれくらいの誤差がでるか?
磨耗や空気圧低下などにより、実際の半径が338mmで100km/hのスピードだと、
34722÷347=100km/h→35750÷347=103km/h表示となり、3km/h高く表示されることになる。

ノーマルメーターの場合は補正調整ができないが、今度は正確な表示ができるはず。

 
 
 
  2012年〜

計測精度アップ?

 
    秋月電子通商から安易に入手したクリスタルオシレーターを使用して良好だったが、時間カウント数は16bitを超えないようにプリスケール「8」を入れていた。(プリスケール「4」だとオーバーする。)

1.308MHz→1.000MHzならプリスケール「4」で16bit(65535)をオーバーしないかもしれない。

1/1000000x4x4=0.000016秒/カウント
ピレリーMT-21の新品で1km/hの場合 0.874618656 [秒] ÷ 0.000016 [秒] = 54664 [カウント]

オーバーしないことが分かったので、「1.000MHzクリスタルオシレーター」を調達することにする。

 
    タイヤ半径[mm]/1000x2x3.14159x60x60
 = カウント係数
 
    1000x9[パルス]x(1/1000000*4*4)
 
   
タイヤ半径348mmとすると、カウント係数は 「54664」 となる。

 
 
タイヤ径を記録?!

 
    タイヤ径が多少異なっても計算上の速度誤差は、思ったより少なかったが、距離計は実測補正できるものを開発したので、速度計も補正したくなった。

距離計を実測補正する時に、回転検出近接センサーのカウント数から、タイヤ径を算出すればよい。
それからカウント係数を計算してEEPROMに格納するだけ。 と考えたのだが、…
PIC内部で計算する桁数が大きい!
式を簡単にして桁数を減らそうと思ったが、誤差が大きくなりそうだし、僕には難しい。
そこで閃いた。
カウント数によるカウント係数表を作成して、テーブル変換としてはどうだろう。

タイヤ径はメーカーと種類により異なるが、摩耗分を考えても、直径で±25mmあれば十分だと思う。

たとえばピレリーMT-21の新品で696mmとして、最小671mm、最大721mm。
 テーブル表は670mm〜720mmとすることにした。

タイヤ直径
[mm]
計算上100mの
カウント数
整数カウント数
 カウント係数
理論速度80km/hの
計算表示速度
[km/h]
理論速度150km/hの
計算表示速度
[km/h] 
694
412.8
412
695
412.2
412
696
411.6
411
54664
80.04
150.18
697
411.0
411
54664
79.92
150.18
698
410.4
410


 
                             
 
 
  バイクでフローターフィッシングとキャンプ > バイク(オートバイ)DJEBEL250XC > スピードメーター

 
  << トップページへ

   
inserted by FC2 system