2014-03-03
スピードメーターは簡単。車速センサーの信号はカーナビの電源を取るために使ったサービスチェックカプラに来ている。カウルを開けないと見えないので計測は後回し。車速センサーそのものは後輪側に付いている。(追記)サービスチェックカプラには来てませんでした。電源線と信号線を間違えていた。点線が信号線
タコメーターの方は面倒くさい。考えられる方法は
1.このバイクはセルモーターとクランクが同軸なのでセルモーター用のホールICの出力が使える
セルモーターは3相ブラシレスモーターになっているのでホールICがU,V,W各相に1個付いていてその電線がECUまでいっている
但し壊すとやっかい。セルモーターのコイル毎交換しないといけない。約¥15000するし交換はかなり面倒
2.イグニッションコイルの1次側から取る
良くある方式で殆どのバイクで同じ方法が採用できる。出力が高電圧になるのが欠点
CTセンサーを使えば非接触で取れるが揺さぶられるのでしっかり固定する必要がある
点火系の回路はこうなっている。黄色いのは当方の追記。黄色い部分はスイッチだが実際はFETなんかで構成されている。クランクセンサーの電線6本はU,V,W相センサー信号、電源アース、電源プラス(12V)、あと1本はクランク角専用のセンサーでは無いかと思う(サービスマニュアルを見ても解らなかった)
イグニッションコイル1次側の波形。上の回路図の黄/青線とシャーシ間の電圧。イグニッションコイルは1次と2次が上のようにつながっているので1次側と呼ぶにはちょっと無理がある。中央部分はオシロスコープのサンプリング速度が遅くて波形を取りこぼしている。電圧は400V以上あるのでオシロスコープで直接計測しない方が良い
CTセンサーを取り付けて電流を計測して見る。シャント抵抗値(センサーの出力に取り付ける抵抗のこと)は1kΩ。抵抗の両端に発生する電圧を計測することにより流れている電流が解る
電流波形はこんな感じ。1マス25msecなので大体62msec間隔で電流が流れている。約16Hz。rpmに換算すると960rpm。エンジンはアイドリング。始動直後なのでやや高回転になっているはず。サービスマニュアルによるとアイドリング回転数は1700rpm。4ストロークなので排気行程の上死点では火花を飛ばす必要が無いので2倍した値が実際の回転数になる。このエンジンは排気行程と圧縮行程を区別できていることになる。賢いエンジンだ。
波形を拡大するとこんな感じ。山の立ち上がりでイグニッションコイルに充電が始まる。若干上に凸形状の曲線になっているが理想的なコイルなら直線になる。山の頂上で電流が切られコイルに溜まった電力の逃げ場がスパークプラグしか無くなるので火花が飛ぶ。ピーク電圧の計測値は約1.25Vなので電流に換算すると3.75[A] 式は以下の通り
電流[A]=センサーのコイル巻き数x電圧[V]/シャント抵抗値[Ω] (計測に使ったセンサーの巻き数は3000回)
ピーク電圧が1.25Vだとマイコンでは扱いにくい。シャント抵抗を3kΩ程度にすれば十分電圧が高くなり計測しやすくなる。但し高すぎると回路が壊れるので5Vのツェナーダイオードで電圧をクランプして使う。
エンジンの回転数が上がると山の間隔が詰まってくる。次の山と干渉したところで点火エネルギー不足になるがそのときの回転数は20000[rpm]。このエンジンはそんなに回らない。5000[rpm]の時、点火に使用される電力は5.6[W]
2014-03-05
イグニッションコイル1次側を信号源にするならこんな回路か。まだ未実験。PWL....というのが波形データの定義。オシロスコープの波形を見ながら作ったデータ。お手軽に電源で置き換えたがLtspiceの電源はインピーダンス0Ωなので現物と同じにはならない
トランジスターのベース電圧
・トランジスターを使っているのは高電圧のノイズ入り電線を引き回すのを嫌ったため
小さな基板に回路をまとめてイグニッションコイルの近くに配置する
信号検出側の回路が変わってもタコメーター側の回路を変更しないで済むという利点もある
・R7とR14で12Vを分圧してトランジスターのベース電圧を決めている
単純に分圧しただけだとスパークが飛ぶ直前に40V以上になってトランジスターが壊れる
トランジスターのE-B間の耐圧はデータシート上5V
12V以上かからないならR14で分圧する必要が無い。分圧はむしろスパーク時の高電圧対策
R7とR14はスパークのエネルギーを奪い取るのでトランジスターを動作させることが出来る範囲で大きい方が良い
・D2はトランジスターのB-E間に高電圧がかからないようにする為の物。C1によって高電圧が吸収されるので無くても大丈夫
取り去っても波形は変わらない。安全のため2重にC1とD2で保護している
D2は4V程度のツェナーダイオード。普通のダイオードだと意味が無い
出力波形
2014-03-10
ミニブレッドボードに回路を組んで実験
ちょっと電流不足で波形が下がりきってくれない
R14を18kΩに変更。入手性の悪いツェナーダイオードは止めて1N4148を直列接続して高電圧をクランプ
出力波形
デジタル回転計を接続。表示値は実際の回転数の半分になる。昼間なのでシャッタースピードが速すぎて下1桁が写っていない。アイドリング回転数はかなりばらついて1800~2200rpm程度で安定しない。
車速センサーは後輪と同軸にあるギヤの歯数をセンサーで数えているようだ。下側の写真の[3]の所にセンサーがある。[6]が後輪車軸。たぶん秋月電子で売っているKMI15/4(秋月ではOH182/Eという偽名?で販売している)と同じ仕組み。センサーの方に磁石が付いていて鉄製歯車への磁力の逃げ具合で歯数を数える。Sh modeのギヤ歯数は47T。タイヤ1回転で47パルスのはず。タイヤの直径は約50cm程度。時速100km/hの時のパルス間隔は計算すると約1.2msec。エンジン回転パルスより高速
2014-03-11
車速センサーの信号はサービスチェックカプラに来ていると思ったが違った。ECUとメーターにしか信号は来ていないのでどちらかで分岐させる必要がある。ウインカーリレーとも接続したいのでスピードメーターから取った方が配線がきれいにまとまりそうだ
2014-03-12
割れた。フロント側のV字カウルは合計6個のクリップで固定されているので1個壊れても問題ない
ライトカバーを外すときは外した箇所が嵌まらないようにドライバーやヘラを差し込んでから上側2個のクリップを引っ張って外す
オプション4カプラはメータハーネスにビニールテープで巻き付けてあった。これはキーを回したときにONになるので電源として使用できる
車速センサーの信号計測。電線の色は桃緑
12Vのデジタル波形だった
スピードを出すとこうなる。センサーは後輪が回れば反応するのでセンタースタンドで後ろを浮かせれば走らなくても計測可能
2014-03-20
LEDに流れる電流が大きいので普通の3端子レギュレータを使うと放熱を考慮する必要がある。秋月電子で販売しているスーパー3端子レギュレータなるものを試してみる。スイッチングレギュレータなので放熱は不要。3端子レギュレータに必要なコンデンサと放熱が不要になるのでむしろ実装面積は小さくなる
安価でお手軽なので自動車の12Vバッテリから5V電源を取るのに便利。リプルはやや大きいが普通のAC-DCアダプターと同程度
入力12V 負荷10Ω 電流0.5A
入力12V 無負荷
入力12V 負荷100Ω 電流50mA
夜間は輝度を落とさないと眩しい。明るさに応じて輝度変更出来るようにフォトダイオードの実験。これも秋月電子で販売しているS9648。アンプ内蔵なのでCdSセンサー並みに使いやすい。
2014-03-21
イグニッションコイルの高圧回路も一枚の基板に収めてしまった。ヘルメットをかぶったときに視界に入るように表示部は独立。スピード、点火の信号は割込処理したいので20pinの高機能PICを使う
本体
表示部
2014-03-22
レイアウトを若干見直して基板を発注した
本体
表示部
回路図 本体 (追記)設計間違い有り。フォトダイオードの出力が何処にもつながっていない。PICはPIC18F14K22に変更
回路図 LED
2014-04-08
基板到着
2014-04-18
半田付け終了。これからプログラムを作る。回路が間違っていたので基板の裏面には修正が入っている。電線が太くて見た目が悪いのでウインドシールドのステーの中を通す予定
2014-04-25
ファンクションジェネレータで信号を送り込んでプログラムのテスト。信号は90Hzなので5400rpmになるのが正しい。下2桁は表示しない。計算は切り捨てなので誤差があると53??rpmになる。水晶の精度、プログラムロジック、分解能(FOSC/4)、ファンクションジェネレータの精度等が誤差になり得る
2014-04-27
ウインカーリレーの電圧確認。非動作時は12V。点灯時も12V。消灯時は0V
リレーは2線式
黒線は常に12V。点滅時は灰色線の電圧が変化する
車速センサー、ウインカーリレーの配線
車速センサーの電線の被覆側面をカッターナイフで削って電線を半田付け
ウインカーリレーは手抜き。このままコネクターを押し込む
動作テスト。電源はメーターハーネスに巻き付けてあるオプション4コネクタ(普通のギボシ端子)から取った。バイク用のギボシ端子は4輪用よりサイズが小さいようだ。ホームセンターで購入した物がぶかぶかなので平型端子に交換。
車速表示は問題なし。何故かブレーキを握るとリセットがかかる。
ブレーキを握る->ブレーキランプが点灯->電圧が下がる->リセットがかかる
という事か?Sh modeはLED化されていない。ブレーキランプが暖まっているときはリセットがかからないのでたぶん上のロジックに間違いない。電球は冷えているときに通電すると突入電流が非常に大きくなる。100W電球の抵抗値は100Ωのはずだが、冷えているときにテスターで計測すると抵抗値は10Ωもない。通電した直後は10A以上流れる。
2014-04-28
47μFのコンデンサを入れて対策。これでリセットがかからなくなった。最終的には100μFを入れる。バッテリが劣化した場合は今より条件が悪くなるはず
試走してきた。
・アイドリングでは正しい回転数を表示しているようだが回転を上げると実際より大きな値を表示している7割スロットルでも表示が10000rpmを超えている。ノイズを除去できて無い可能性大
・スピードメーターは時速60km/hでバイクのメーターより4km/h程度小さな値になる。たぶんこれで正しい
・LEDがやや暗い。今日は曇り。晴天時はだいぶ薄く見えるはず。LEDそのものはもっと輝度を上げられるがPICのポート当たりの電流がこれ以上流せないので輝度を上げるためには大幅な回路変更が必要。ウインカー消し忘れ機能はもっと高輝度なLEDを増設した方が良い。視界の中には入っているが昼間は暗くて目立たない
・輝度調整機能は暗いところを走行しなかったので不明
・速度ゼロ、回転数ゼロのとき表示を0にするのを忘れていた。要ソフト修正
2014-04-29
直射日光が当たるとこんな感じ
パルスの後にヒゲがある。たぶんこれが原因。ヒゲは常にあるわけでは無い。ヒゲが無いときの方が多い
イグニッションコイルの電圧はたぶん簡略化するとこうなっている。スパークが飛んでからしばらくしてからゼロボルトになる瞬間がある。ヒゲの場所は一定していないので、こんなきれいな波形では無いはず。ローパスフィルターを入れて除去することも可能だがソフトで取ってしまうことにする。「パルス幅が1msec以下の物は点火信号として認めない」というロジックを入れる
ソフトを修正して試走。問題なし。平坦な道だと回転数と速度が非常に似ているので切替スイッチにラベルを貼った
2014-05-01
昼間は輝度不足なので電流を4倍程度に増やしてみる。この明るさが限界。電源電圧5Vでは不足。LEDだけ12V駆動に変更。明日直射日光に当てて確認
2014-05-02
今度は日が当たっても読める
増幅回路追加。ダーリントンソースドライバTD62783APG。Vce(sat)が2Vもあるので5V電源回路には不適
2014-05-04
問題点を修正した基板。もう少し使ってみてから発注する
2014-05-16
今のところ7セグメントLED点滅でウインカー出し忘れは防げているが昼間の輝度がやや不足しているので専用のLEDを追加。基板を発注したので約17日間待つ
2014-05-21
UPSの送料半額キャンペーン期間中で到着が速かった
2014-05-23
正面から見ると眩しすぎるのでレンズ部分を削った。こうすると光が発散する。LEDの光はフォトダイオードに入射するが消灯中に計測するので問題ない
2014-05-27
LEDケース作り。正面パネルはケースと同サイズなのでジュラコン棒にスモークアクリル板を両面テープで貼り付けて同時切削
アクリル板を剥がして穴掘り
2014-05-28
ケーブルはウインドスクリーンの支柱の中を通す
電線と同じ径の穴なのでコネクターを半田付けしてしまうと取り外し不能。動作確認したが動かず。1号機から回路をだいぶ修正したのでプログラムのバグ取りをする
2014-06-01
バグ取り苦戦。苦戦するときのバグはものすごくつまらない原因のことが多い
2014-06-06
点火信号の回路はこの方が性能が良い。まだ実験していないがノイズもきれいに取れるはず。R2はトランジスタアレイTD62003APの内部抵抗
これでもいける。信号が12Vでトランジスターがスイッチングする電圧が4.5V付近で信号のほぼ中央の電圧になるためノイズに対する余裕が大きい
2014-06-09
ノイズが入るようなので回路を変更
2014-06-10
ノイズは除去できている感じ。トランジスターのベース電圧。回路は6/6記事の下の物。何故かアイドリング回転付近で時々実際より小さい回転数を示す。バグの可能性大だが「時々」になる原因がわからない。速度表示は正常。タコメーターがダメ
シミュレーション結果の波形とほぼ同じ。ノイズが入る場合は実際の回転数より大きな値になるのでハードは正常と見て間違いない
2014-06-19
原因はソフトでは無くハードだった。トランジスターのベース電圧を見る限りノイズが乗っているように見えないが
立ち上がり波形(上の波形の中央)を拡大するとスパイクノイズがある。これが原因で誤動作していた。64MHzのPICは1命令62.5nsecなのでスパイクノイズも捕らえてしまう。コイルの電流が切られた瞬間に波形が立ち上がり初めてノイズの箇所で火花が飛んでいるのだと思う。立ち上がりから10μsec送れているので10000rpmで回転しているエンジンなら角度にして0.6度
回路はこれで実験してみる。V3がイグニッションコイルの電圧。イグニッションコイルの電圧上昇でC2が充電されるがイグニッションコイルの電圧降下ではD1が邪魔してC2は放電されない。C2を放電させるのはR1。出力電圧の上昇はR1によるC2の放電波形。出力電圧の下降はイグニッションコイルの電圧によるC2の充電波形
2014-06-20
昨日考えた回路はうまくいかなかった。たぶんダイオードのTrrやブレッドボードなんかの影響。1N4148は4nsしか無いのでTrrは関係ないような気もするが... PICのシュミットトリガ入力につなぎ替えれば正しく動いてしまうレベルのノイズなのでハードでノイズ取りをするのは止めにする。再度イグニッションコイルの電圧を観測。高電圧なので100kと10kの抵抗で分圧している。立ち上がりですごくばたついている
波形を拡大
更に拡大。これをハードで取るのは無理か...
2014-06-21
基板はこんな状態。再度作り直す予定。ノイズはフォトカプラを使えば取れると思うがシュミットトリガに入力すると無視されるのでそのまま。フォトカプラは高速動作できない素子なので高速ノイズは無視されてしまう
2014-07-05
基板が届いたので組み立て
2014-07-06
テープで貼り付けて最終運用テスト。これで問題なければ組み込む。ガソリンがもったいないのでテスト目的だけの走行はしない
2014-07-13
側面パネルは単独で外れる。これだけ外せばイグニッションコイルの電線を這わせることが出来る
ディスプレイは両面テープで貼り付けてある。回路図最終形とプログラムはキットの作り方を参照