自作シフトポイントインジケーター(その2)


以前に作ったシフトポイントインジケータを追加で作成してくれと友人に頼まれましたが、以前のモノはタコメーターやABSなどの制御に使われる専用のFV変換ICを使用しておりまして、入手経路が限られるのが難点でした。
そこでヒマを見てはPICを使って作製してみようと考えていました。ゲートタイムを決めてその間に何パルス入って来たかを計測して回転数を求めるタイプを作ってみたのですが、ゲートタイムを長くすると反応が悪く、短くすると低回転での精度が悪いとなってしまって製作途中でほったらかしにしていたのでした。
そんな折り、GaregeTさんのページに特定パルス数が入力されるまでの時間から回転数を求めるという方法で作成されたインジケータが載っていまして、そのアイディアを頂いて作ってみた所、満足出来るモノが出来ましたので紹介します。
GarageTさんの所で紹介されているのはインプレッサの純正メータにMTでは隠れているATポジションインジケータに多連LEDを埋め込んで光らせるというもので純正メーターの外観を損なわずスマートな取り付けが可能なモノです。動画で作動している様子がアップされていますのでインプレッサ乗りの方はぜひご覧になってみて下さい。ソースファイルも丁寧な注釈付きで公開されていますのでPICに慣れ親しんだ人も参考に出来る所がいっぱいあります。

私が今回作製したものは
■出力はLED2つとブザー1つ
■スイッチを2つ付けてそれで動作回転数を設定する
■回転数は100rpmから16000rpmまで100rpm刻みで設定
■回転数設定用に7セグメントLEDを付ける
■ロードスター以外でも使えるように
■例によって廃棄用基板に付いてる部品を使うのを最優先(^^;
以上の点を考慮しました。
以前の物は実際にその回転数までエンジンを吹かして設定しなくてはならないので設定変更する時に周りに気を使うという欠点がありましたが、今回の物は回転数直読で設定しますのでその点安心です。また、純正タコメーターよりもこのインジケーターのほうが正確な回転数を表示します。

■部品表

名称
型番
数量
価格
サンハヤト汎用基板 ICB-288V(47x72mm)
1.0
90
PIC 16F84A
1.0
400
ICソケット 18Pin
1.0
100
セラロック 10Mhz
1.0
30
7セグメントLED GL8RO3(カソードコモンの物)
1.0
200
押しボタン ノーマルオープン
2.0
100
ケース 基板の大きさから適当な物を選ぶ
1.0
100
ブザー 自己励振回路内蔵の物
1.0
500
LED 高輝度赤
1.0
50
三端子レギュレータ 78L005A
1.0
50
電解コンデンサ 35V47uF
2.0
40
トランジスタ 2SC2120
1.0
50
コンデンサ 10pF
1.0
10
コンデンサ 0.01uF
1.0
10
コンデンサ 0.1uF
1.0
10
抵抗 330
9.0
90
抵抗 3.3k
1.0
10
抵抗 10k
1.0
10
抵抗 5.1k
2.0
10
抵抗 100k
1.0
10
抵抗 1M
1.0
10
配線用コード 基板用の細い物とメーター配線用の物
--
--
ギボシ端子 10set200円ほどでカーショップで売ってます
9.0
200
しめて2000円くらい??
但しPICライターなどは含んでませんのでお持ちでない場合はツテを当たって書き込んでもらいましょう。

■基板の作製
回路図を簡単に補足します。
LED1とLED2につながってる部分の抵抗値を低くすると明るくなります。もっと明るくしたい場合は、抵抗よりちょっと高いですが(50円くらい)15mAの定電流ダイオードを使うのも良いでしょう。
Y1とC3,C4の部分はセラロックを使用すると回路が簡単になります。
7セグLEDの部分はカソードコモンのものであれば何でもかまいませんが、ピン番号に注意して使用されるものにあわせて配線して下さい。(実際私が使用したものも昔のもので型番も分からない物です、回路図には現在一般的に売られている物を書き込みました)
(2002,10,29追記)R3をノイズ対策の為に10kの物に変更



部品取り付け面から見た図です。振動対策として部品を全て寝かせて取り付けた為とボタンが大きめな為にこの大きさになっていますが、キッチリ詰めればこの2/3くらいの大きさにはなりそうですね。
裏の半田面です。
以前に作成したF/V変換ICを使用したものに比べてずいぶんスッキリとしています。
PICは動作に必要なメモリーなどが全て内蔵されている事と、入出力ピンがそれなりの電流をドライブ出来るようになっているので配線作業を大幅に簡略出来るのが魅力です。
今回の基板にちょうど良い大きさのプラスチックケースが手元にありました。
7セグLEDが見えるように透明なケースが良いでしょうね。ボタン用と、配線引き出し用の穴を開けます。
ケースに納めたところです。なかなかスッキリと収まりました。これをドライバーズシート足下のヒューズボックスそばにしっかり固定します。設定変更の時に取り出しやすいようにマジックテープなどで固定しておくと良いでしょう。
2号機はどこまで小さく出来るか挑戦してみました。1/3の大きさに収まりましたが配線が大変なのでもう少し大きめに作ったほうが良いです
1号機と2号機を並べてみました。この中間くらいの大きさが作りやすさを考えると丁度良いと思います。

PICに書き込むプログラム Ver1.7
上のリンクをマウスで右クリックして「対象をファイルに保存」を選んでディスクにセーブして下さい
書き込み時のオプションはコードプロテクト OFF、パワーアップタイマー ON、ウォッチドックタイマー OFF、オシレータ HSです。

■取り付け方法
現在、私のロードスターには後期型メーターが付いています。このメーターには前期型では使用していないリヤデフォッガのインジケータ部分が余っていますからそこにLEDを取り付けました。このページのトップ写真のメーター左上で赤く光っている部分がインジケーターランプです。ブザーは以前から使用していたものをそのまま使用します。
電源、イグナイターパルスの接続については「その1」のほうをご覧下さい。

■設定方法
操作
7セグLED表示
説明
SW1とSW2の両方を押す スイッチを押してる間は左のように表示します
両方のスイッチから手を離す 現在のLED1設定の1000の位を表示
SW2で設定変更 に変化 A〜Fは10〜15です。例:12000rpmならC
SW1で確定 現在のLED1設定の100の位を表示
SW2で設定変更 に変化  
SW1で確定 スイッチを押してる間は左のように表示します
SW1から手を離す 現在のLED2設定の1000の位を表示
SW2で設定変更 に変化  
SW1で確定 現在のLED2設定の100の位を表示
SW2で設定変更 に変化  
SW1で確定 スイッチを押してる間は左のように表示します
SW1から手を離す 現在のブザー設定の1000の位を表示
SW2で設定変更 に変化  
SW1で確定 現在のブザー設定の100の位を表示
SW2で設定変更 に変化  
SW1で確定 スイッチを押してる間は左のように表示します
SW1から手を離す 現在のパルス数設定を表示
SW2で設定変更 に変化 クランク1回転でのパルス数(ロードスターなら2)
SW1で確定 スイッチを押してる間は左のように表示します
SW1から手を離す 現在のディマー設定を表示
SW2で設定変更 に変化 LED1&2の点灯時の明るさ設定(7が一番明るい)
SW1で確定 スイッチを押してる間は左のように表示します
SW1から手を離す 現在の表示設定を表示
SW2で設定変更 に変化

7segLEDの表示内容設定
0 = 現在の回転数(x1000rpm)
1 = 現在の回転数(x100rpm)
2 = ピークホールド(x1000rpm)
3 = ピークホールド(x100rpm)
4 = デバッグ用(計測エラー発生回数)

SW1で確定 クルクル回る(^^) LEDが徐々に明るくなりブザーが鳴る
設定終了

設定された表示になります


点火方式の設定はクランクが1回転するのに何発のパルスが入力されるかの設定です。ロードスターの場合はクランクシャフトが1回転する間に約1.5msec幅のパルスが2つ入ってきます、この場合は2を、クランク1回転に付き1発しか信号が来ないなら1を設定してください。
設定した回転数になるとLEDやブザーが動作するわけですが、これにはOFFする時に100rpmの差を持たせてあります。
例えば設定値が6800rpmだった場合、回転数が上昇し6800rpmになるとLEDが動作し、6700rpmに回転数が下がるまで動作したままになります。これによって設定回転数周辺でのLEDのON/OFFの繰り返しを防いでいます。
パルス数の設定により6気筒や、8気筒でも使えるように想定して作ってあります。がしかし、そのようなクルマに乗っている人が近くにいないもので実際にクランク1回転に付き何発のパルスが入ってくるのか全然知りません。6気筒なら3発、8気筒なら4発と(または気筒数にかかわらず1?)いう想定で作っていますが、もし知っている人がいたら教えて下さい。
Ver1.7で新しく追加された機能として表示内容の設定があります。この中でピークホールド機能というのは2000rpm以上の場合は最大の回転数で表示をキープします。2000rom以下に回転が落ちて1秒くらいは最大回転数を保持して、それ以降は現在値を表示します。