PIDライントレーサー計画2
ぜんぜんPIDじゃなくて円運動しかしないので基本に立ち返って、
IF分を利用したライントレーサーを作る。恥ずかしいが、とりあえずラインをトレースできることは確認した。
前段で定義されてる変数をほとんど利用していない。
task main()
{SetSensorColorRed(IN_2);
#define TIME 100
int standerd;
int POW;
int currentsensor;
int previoussensor;
int kp=80;
int ki;
int kd=5;
int P;
int I;
int D;
standerd=20;//変数standerdに初期の光量を入力するこれは以後の出力の基準点となる
previoussensor=Sensor(IN_2);//エラーを防ぐためセンサー値を初期化してからループ
while(true){
NumOut(80,LCD_LINE6,SENSOR_2);//ディスプレイにセンサー2の数値を表示
currentsensor=Sensor(IN_2);//現在の光量を計測する
POW =P;
if(currentsensor<28){
OnFwd(OUT_C,60);
OnFwd(OUT_A,30);
Wait(TIME);}
else{
OnFwd(OUT_C,30);
OnFwd(OUT_A,60);
Wait(TIME);}
previoussensor=currentsensor;//モータ出力後現在の値を過去の値に代入し塗り替える
}}