↑前半はクランク1レーンチェンジ1オーバルです。後半は、210フレーム車線変更です。
今日この頃は、マイコンカーと、蚊と、気温と、湿度等と格闘しています。
決して、班長がいない隙にAdelの腕パーツを作っていたりしません。
むずかしいいいい。です。
クランクとレーンチェンジを間違えてしまいます。
その結果、作られた最新のプログラムはこんな感じ
case 2://左端のセンサが反応していたら、マーカーチェック
led_72seg(2);
if((line_sensor_position2()&0x40) == 0x40){//端が反応しなくなるまで、データを加算
episode = 2;
sensor_or |= line_sensor_position2();//g_line_sensor;
}else if((line_sensor_position2()&0x41) == 0x00){//両端が反応しない
episode = line_marker_check(sensor_or);//何もなければ 1 になる。
sensor_or = 0;
//while((line_sensor_position2()&0x40) == 0x00);
}else{
episode = 2;
}
break;
patternじゃなくてepisodeになってるだけです。ふつうのまにゅあるどおりの雰囲気はもってます。
結局何をしているかといえば
ステアリングの角度が小さいとき
端っこが反応したら、反応しなくなるまで、ラインセンサをorしまくる。
間違えないだろこれなら。へっへっへ。
これでも間違える。こともある。
特に最近難しいと思い始めたのは、クランクとかにはいる前の状態の違い。
直線が続いて、クランクなのか、
カーブがおわってクランクなのか。
それによって、進入速度がさっぱり違うし。進入角度も結構違ってしまいます。
そうすると、同じクランク処理でうまくいかないときもあります。
速度を落とせば何とかなります。
それも意外と難しい。
クランクに直線からくると、ドリフト気味に突っ込むので、車体がおくまで進むのですが、
ゆっくりだと、内側に落ちてしまいます。
どうしましょ。
ほかにも車線変更とかとか、
出口がカーブなのか、直線なのか。
出てすぐはトレースが安定しないです。
カーブだと落ちます。
ちくしょ。
そして、今日気づいた最大のミスは、内輪差速度を出す関数が適当すぎて、直進でも、6割りしか出ないようになっていました。
当然それを直して走らせると。
速い速い。
カーブで、すぱーっと落ちます。
ちきしょ。
そういえば、エンコーダにシリコンシート巻いてみたら、すこぶる走行距離が正確になりました。
少しモーチブが復活しました。
あしたもがんばろ。(まず、隼でも見に行くか・・・・。)
[0回]
PR