車両のスピード(車速)を測定する目的で、車両にはスピードセンサーが付いている。
スピードセンサーには様々種類があり、次のような方式がある。
・リードスイッチ式
・ホール素子式
・誘導式
・光学式
「リードスイッチ式」は、平成初期頃までの比較的古い車で使用されていることが多い。
リードスイッチは機械式の接点を持つため、ON/OFFの際にチャタリングと呼ばれる振動が起こり、電気的なノイズが発生する。
ECUが「走行中か」「停止中か」を判定するのには支障はないが、正確なスピード(車速)を測定するには、このノイズを除去する必要がある。
ノイズを除去する方法は、大きくは次の2つ手法が考えれれる。
1.センサー自体を、原理的にノイズ(チャタリング)が出ないタイプに交換する。
2.ノイズを除去する電気的な回路を追加する。
今回は2の「ノイズ除去回路」を作成してみた。
【目的】
「トリップメーター」と「燃費計の距離」が、合ったり合わなかったり、時には数%オーダーで大きくズレたり。
燃費計の意味が薄れている状態だった。
燃費計を燃費計として成り立たせるために、原因を探るとともに改善案を考えることにした。
【注意】
この記事を参考にしたことにより発生したあらゆる損害に対して一切の責任を負いません。
実施する場合は、全て自己責任で実施してください。
【回路仕様】
・出力は3つ。(フリーダムコンピューター、燃費計、外付け速度計。)
・接続先の信号電圧が、12Vでも5Vでも動作すること。(オープンコレクタとする)
・車速180km/h程度までは測定できること。
【ノイズ除去の手段】
・コンデンサと抵抗器による積分回路により、ノイズ(チャタリング)を除去する。
・積分された信号を、シュミットトリガ入力のロジックICを通過させることにより、より安定した動作を狙う。
【車両側の仕様】
・スピードメーターは機械式。ミッションからメーターまで、機械的にメーターケーブルで接続されている。
・メーターケーブル1回転で、4パルスの電気信号が出てくる。
・機械式のスピードメーターは、メーターケーブルが637回転で走行距離1kmになるように規定されている。
・60km/h(60km/時)の時のパルス数(周波数)を計算してみる。
60km/時の時には、1分間に1km走行する。(1km/分)
1km/分でメーターケーブルは637回転、1回転あたり4パルスの電気信号が出てくる。
1分あたりのパルス数は 637回転x4パルス = 2548パルス/分。
1秒あたりのパルス数は 2548パルス/60分 = 42.47パルス/秒 = 42.47Hz
・180km/h(180km/時)のパルス数(周波数)を計算してみる。
180km/hは60Km/hの3倍の速度であり、1分間に3km走行する。
と言うことで3倍してみると 42.47Hzx3 = 127.4Hz
・約15%ほどマージンを乗せて、「上限周波数150Hz」を目安として回路設計する。
150Hzは約212Km/hに相当。
ただし、パルスのduty比が50%であることが前提。
【回路図】
回路の説明
・左側が電源回路。12Vを5Vに変換。
・中央部がノイズ除去回路。CRによる積分回路。
・右側が増幅回路。負荷側の信号レベルをLoレベルに引っ張るオープンコレクタ。
・R1でC1の充電時間が決まる。
・R2でC1の放電時間が決まる。
・R3は、リードスイッチの下限電流である1mAを超える電流を流すのが目的。
・D1は、C1への充電電流経路をR1だけに限定するのが目的。
・シュミットトリガ入力のロジックICとして、TC74HC14(東芝製)を選択。
メーカーによりトリガーレベルは異なるので、各メーカーに合わせた時定数の選択が必要となる。
【完成品外観】
取り外してメンテ出来るように、コネクタを取り付けた。
表面
裏面
【動作確認の手順】
・LTspiceでシミュレーションを使用。180km/hの時の信号を入れて動作確認。
・回路完成後に、同様に180km/hの時と同じ信号を入れて動作確認。
※車載後、180km/hでの動作確認は行っていない。少なくとも100km/h前後までは、問題なく動作した。
【シミュレーションに使った回路】
【動作確認】
室温において、以下の条件まで動作した。
・約230Hz(ターゲット上限周波数150Hzの5割増。325Km/h相当。)
・duty比が約60:40 の矩形波(duty比50:50よりも厳しい方向。)
約230Hzを超えたところでで出力波形が消滅、動作しなくなった。
※テスト車両では、リードスイッチOFF時間よりもON時間が若干短めだったので、その傾向に沿ったLo短めのduty比にセットしてテストした。
●動作確認1
入力テスト信号の周波数を上げていき、出力信号が消滅する周波数を確認。
ch1:入力信号 約230Hz(2v/div)
ch2:出力信号(2v/div)
●動作確認2
CR積分回路が、設計通りに動いているか確認。
ch1:入力信号 約230Hz(2v/div)
ch2:C1の上側(1v/div)
※「C1の上側」の波形が、約2.5Vを中心に上下均等に振幅するように、R1、R2、C1の値を調整するのがミソ。
●動作確認3
車両に取り付け、実走行して動作を確認。
「トリップメーター」と「燃費計の距離」の進みの差を確認することで、動作確認とする。
・トリップメーター 364.4km(目視)
・燃費計 364.461km(デジタルデータ)
その差0.016%。
トリップメーターの読みは目視であり、いい加減である。
問題となるノイズ(チャタリング)は、十分に除去できていると考えて良いだろう。
●動作確認4
発生しているノイズの大きさと、除去できるノイズの大きさを確認し、改めてノイズマージンを確認。
・リードスイッチに外部から衝撃を加えた場合に、どの程度のノイズ(チャタリング)が発生するのか、確認した。結果は最大でも40us程度。具体的には、リードスイッチが内蔵されているスピードメータを外して、「ドライバーの柄」でスピードメータを引っ叩いてみた。チャタリング自体は数ms継続するが、観測された中でのONもしくはOFFのパルス幅は、一番長かったものでも40us程度だった。
・どのくらい長いノイズまで除去できるのか。「C1の充放電カーブは上りも下りも2ms弱」「出力波形が狭い方が1ms」から、その1msの半分の500usのノイズまでなら除去出来ると推測する。
まとめると、ノイズとノイズ除去性能が1桁違うので、ノイズは除去できると推測。
・発生するノイズの最大パルス幅は、40us前後。
・500usのパルス幅のノイズまでは除去できそう。
過大な衝撃が加わった場合は、想定以上の最大パルス幅のノイズが発生する可能性はある。
【その他】
●回路ショート等の事故防止目的で、バッテリーとの配線間にはヒューズ等を入れることを推奨。
●この作品は4代目。
・3代目では富士スピードウェイの本コースのストレートで、180km/hを超える辺りからスピード信号が消滅。フリーダムコンピュータで取ったログを、後で見返して気づいた。フリーダムのログでは、180Km/hから段階的に135Km/h、90Km/h、45Km/hになり、最後にはゼロKm/hになった。(フリーダムは、単位時間あたりのパルス数から車速を計算しているものと推測。)
メーターケーブル1回転で4パルス出る仕様。そのパルス数が、3/4に減り、2/4に減り、1/4に減り、最後には0/4。リードスイッチ1個に対して4個の磁石があり、1回転する間に4つの磁石が順番にリードスイッチをON/OFFして4パルスが出る。リードスイッチと4個の磁石の距離がそれぞれ微妙に異なり、ON時間が微妙に異なるため、パルス数がだんだん減る現象に見えたものと推測。
・どのくらいのパルス幅から読みこぼすのか、試算してみる。180Km/hの時の周波数は127.4Hzで、周期に直すと7.849ms。リードスイッチがONする時間は、duty比50%とすると半分の3.925ms。4ms未満のパルス幅の信号は、消えてしまう回路設計だったのだ。
・対策を施したのが、今回の回路。答えは上記したこれ。『※「C1の上側」の波形が、約2.5Vを中心に上下均等に振幅するように、R1、R2、C1の値を調整するのがミソ。』
対策前は、イメージ的には「C1上側」の波形が「約1Vを中心に上下均等に振幅するように」なっていて、車速が上がった場合には波形が小さくなって、ICのスレッショルドレベルの2.5V付近に届かなくなって、スピード信号出力が消滅してしまった。