2020-11-14

自作 デジタルスピードメーター (設置)

メーター表示部
果たしてコレを自作と呼んで良いものか...。
けどまぁ、ほぼほぼ完成に近づいたので車両へ設置しました。

ソフト屋さんは、ハードウェアに予算をつぎ込めば、ラクができる事を知っています。が、今回はちょっとラクし過ぎたカモ。

使った部品は、基本的には前回、8月のテスト時から変更なし。OBDの延長ケーブルを別のものに変えたり、タカチのプラスチックケースを使ったり。
んで、書いたプログラムは...
  1. 各種初期化
  2. OBD-II アダプタのライブラリを叩いて、スピード値を読み出す
  3. スピード値を 7seg LED に表示する
  4. 手順 2--3 を 100ms毎に繰り返す
これだけ。
車速パルスの計算とか、面倒は一切ナシ!しかも OBD-II から車速を拾ってるから、(誤差も含めて)純正メーターと表示が一致!

樹脂ネジでリセットボタンを付けた
タカチの SW-65B ケース

ラクし過ぎて申し訳ない感じですが、ちょっとした問題点もありました。

◆バッテリーあがり問題 (修正済み)
電源線をACCに変更
マイコン含めて、すべての電源は OBD-II コネクタからの給電なんですが...これが 常時電源 なんですよね。
待機時の消費電流が気にはなったんですが、時計と同じ程度だろとタカをくくってたら...ある日、バッテリー上がりで帰れなくなりました。そんなに電流喰うのかよ...。
調べてみたら、OBD-II の電源線は 16番ピン独立なようなので...その線を切断、代わりにアクセサリー電源を取り込むよう変更。
修正後、しばらく乗っていますがコネクタ刺しっぱなしで問題なし。

◆パワーオンリセット問題 (対策中)
おおよその原因は判明してるんですが...現状では、アクセサリー電源 ON 後にマイコンのリセットスイッチを1回押さないと表示が出ません。
なので、とりあえずの回避策として、ケースに入れたままでもリセットボタンを押せるように小細工。
樹脂ナット内側の山を削ってからプラスチックケースに接着。押し込みピン替わりに樹脂ネジをハメ込んだ簡単なもの。
おそらく、回路にリセットICを追加すれば、うまく行く...ハズ。


ちょっと動作テスト。機能は問題なし。反射板は要調整。

##追記
今回の配線~。
・Freematics OBD-II UART Adapter
・Arduino Nano Every
・MAX7219