やっと復活したぁ!!(笑)ということで、原因不明の問題点も全てスッキリ解決しました。まず、通常トレースしない問題点は、チェッククロスライン関数のプログラミングミスがあった。どうやら、ココを参照したときにバグがあるので何度も何度もループして、他の部分が上手く実行されなかったみたい。そして、AD_DRAとAD_DRDが干渉していた問題点はなぜか、AD_DRBとAD_DRDを入れ替えることでA/D値が正常になった。このA/D変換の問題は、一応完璧に原因を追究できたわけではないので再度余裕があるときにチェックしたい。
通常トレースが出来るようになり、早速走行させてみた。デジタルセンサのチャタリングで悩んでいたクランクのクロスラインは、センサの値をカウントする値を最適化しほぼ完璧に認識出来るように仕上がってきた。sensor_inpでセンサ値を読み込み、同じ値が一定の規定回数に達したら、その値を返すようにしている。クランク処理に関しても、ログを解析しながらもう少しロスを無くしてなるべく減速しなくてもクリアできるように工夫してみよう♪とりあえず、連続クランクは問題なく走行できたのでホントに良かった。
明日は、車線変更のクロスラインを上手く認識出来るようにプログラムを改良していこう。それが出来れば、いよいよKU381を使ってセンターラインの終わりを検出するプログラムを組み込もう!!
今回の原因は全て完璧に原因を追究できたわけではないけれど、一歩前進したから良かった。ん〜そろそろボロボロになってきた自作センサ基板も取替えの時期かなぁ〜(笑)