自作データロガーを使っていますが、これが便利だったり不便だったりと微妙なシロモノです。ここしばらく何件か不具合が立て続けに発生していて、その対策をしました。市販品ではあり得ない自作ならではの問題ばかりですが、こんな苦労をしながら使っていますという話です。基本スルーでお願いします。点火パルスの間隔を測定することで回転数を検出していますが、その精度を上げるためにタイマを16ビットから32ビットに変更しました。実際はKSR用のCDIで書いたソースコードを流用しただけです。KSRのCDIでも最初は16ビットのタイマで回転数を検出していたのですが、高回転側で精度を上げるために32ビット化しました。V11のデータロガーに適用したのは両方のプログラムで共通化できるところは共通化をしておきたいという単純な理由です。ところが32ビット化したらアイドリング時の回転数がえらい高く表示されるようになってしまいました。原因は「ウオタニ+V-UP16」で発生する点火パルスの波形に含まれるノイズまで正しくカウントするようになってしまったから。詳しく説明すると、PICマイコンに入力した点火パルスの周期を測ることで回転数を計算しています。ここでいう点火パルスはプラグに流れる電流を直接使っているわけではなく、点火コイルの1次側に流れる電流をCT(カレントトランス)=コイルで検出してパルスを作っています。QUADというポータブルのオシロスコープで確認すると見事にノイズが乗っています。このオシロスコープは以前はビットマップで保存した波形をUSB経由でPCに読み込めたのですが、最近なぜがPCに接続してもオシロスコープが認識されません。このブログで波形を乗せられないのが残念ですが、気持ちいいくらいにノイズが乗っていました。点火パルスの検出回路にLPFを追加し、ノイズを消せていることを確認、対策としました。ちなみにデータロガーの基板です。B面はこんな恥ずかしい姿です。ここからさらに今回のLPFを追加してます。次から次にいろいろな問題の対策で部品を追加していてそろそろ限界です。最近になってV-UP16を復活させたのですが、走行中にLCDがフリーズしてしまう現象が発生するようになってしまいました。V-UP16」では4000rpmを超えると一発でLCDが固まります。回転数やスロットル開度などの表示を100msec周期で更新しているのですが、この更新がされなくなります。点火のエネルギーが強力になって、ノイズもパワーアップしたことが原因ですね。ちなみに自作データロガーの全体の構成はこんな感じになっています。蓋を開けた状態の本体の上にあるのがLCDですが、見てのとおり本体からコネクタで電源と信号線をつないで制御しています。このLCDはI2C(「あいすくえあしー」とか「あいつーしー」などと呼ばれています)という通信方式で制御しているのですが、もともと線材で引っ張り回すような使い方はあまり想定されていなく、ノイズに弱い回路構成なんですよ。いう事で、コネクタをシールド線化することにしました。こんな感じで線材をアルミホイルで巻いてGNDに落としてシールドします。ちなみにLCDの右下にある水色の部品はコンデンサで、これもノイズ対策で追加したものです。この辺りはLCDのメーカの説明書には当然の如く何も書かれていないので、実際に回路設計をやった経験が無いと対策は難しい気がします。最後にアルミ箔が外れたり剥がれたりしないようにテープで巻いてからチューブに通して完成です。車体に取り付けて確認すると一発OKでした。波形まで見たわけではないですが、現象から想像するとこんなものかな、と思います。3.GPSの信号を受信しても日付が正しく取得できない問題について2019年に入ってから日付が正しく表示されなくなってしまっていました。僕のロガーではGPSアンテナで受信した日付、時刻の情報をPICマイコンのRTCCモジュール(時計機能です)に設定しています。時計機能を動かすのはログファイルを保存する際のタイムスタンプに正しく現在日時を反映するためなのですが、これがおかしな表示になってしまっていました。正確には時刻は正しいのですが、日付がおかしい。2019年の6月なのに2099年10月とかの日付で保存されています。実際のところはログファイルのタイムスタンプの日付がおかしいだけで実害はないので、しばらく放置していたのですが、先日ようやく現象の確認をしました。データロガーはバイクに積んで実際に使っているものと、机上デバック用にもう一組製作してあります。デバック用で確認するときちんと2019年と表示されます。仕方がないので、バイクに積んでいる本番機を取り外して確認すると、やっぱり日付がおかしい。確認したのは6月3日だったのですが、2099年10月18日となっています。本番機とデバック用では何が違うか?というとGPSアンテナが違うのです。どちらのGPSアンテナも秋葉原の秋月電子で購入したものですが、バイクに積んでいるものは「GT-723F」という今は取り扱いが無くなっている古い部品で、デバック用のアンテナは「AE-GYSFDMAXB」という比較的新しい部品を使っています。GPSアンテナからの出力されている日付情報をLCDの2行目に表示させるようにプログラムを変更して確認するとこんなことに↓なっていました。181099,がNMEAフォーマットのRMCセンテンスに含まれる日付情報でDDMMYYの書式で出力されたデータです。西暦の下2桁が99年で10月18日となります。結局、年の情報についてはプログラムで上2桁に20をつなげているので2099年と表示されていることが分かりました。2018年までは正しく表示されていたのですが、19年からおかしくなっています。これはもうGPSアンテナの中のLSIのデータ処理が2018年までしか対応していないことが原因と思われます。実際、より新しいGPSアンテナでは問題ないので。なってしまうとデータロガーのプログラム側での対策はちょっと現実的ではないので、あきらめました。新しいGPSアンテナを使えるようにすればいいのですが、こちらはまた別の問題があって、実際に使うにはプログラムの修正が必要なのです。実際最初に書いた通り、タイムスタンプだけなので、当面はこのままいくことにしました。こんな感じで微妙な問題の対策にそれなりの手間と時間を費やしています。それもこれも個人が自宅でできる範囲でやっているから。測定器とか簡易的なものだと限界があるし、特にバイクの場合はエンジンを掛けて確認するというのがやりにくいことが大きな障害になっていますね。防音のエンジン室みたいな設備があれば全然違うのでしょうが、そんなものは望むべくもありません。一方でちゃんとした製品は最初からまともに設計とか評価がされているので、ちょっとくらい条件が変わっても正しく動くわけです。今回の例では2つ目のLCDの表示の更新が止まる問題についても仕事であればきちんと波形で確認するとか、更に厳しい条件(例えばコイルの電源を18Vに上げるとか)でも現象が発生しないか?とか色々検証したうえで対策内容を決めるのですが...この辺りも個人製作の限界ポイントな気がします。売り物はコストは相応ですが、使う側としては余計な手間はかからないので結果的には自作なんかよりも効率が良かったりします。そもそもデータロガーを作ることが目的ではなく、バイクをセッティングすることが目的ですから。ヨシムラのBAZAZZとかの方が良い気がします。ま、できる範囲で対策はしましたという話でした。こんな感じということで。にほんブログ村こんなオシロスコープを使っています。ADMINプロフィールAuthor:さばお打たれ弱く、傷み易いサラリーマンです。日々のがっくりな出来事をざっくりと記録中。KSR-IIと格闘しています。車検切れのCB400SFも所有中。