2015a/Member

課題3

ハードウェア

 基本的な仕様は課題2から変わっていない。光の感知にひつよなセンサーをライントレース用にボトムにつけていたものを前向きに取り付けた。

ソフトウェア

 task main(){     SetSensor(SENSOR_2,SENSOR_LIGHT);     int t = 0;     int T = 0;     int MAX = 0;     int i = 0;     while(1){     t = FastTimer(0);     if(t < 150){     OnFwd(OUT_A);     OnRev(OUT_C);     if(SENSOR_2 > MAX){     MAX = SENSOR_2;     T = FastTimer(0);     }     }else{     if(i == 2){     PlaySound(SOUND_UP);     Off(OUT_AC);     Wait(20);     OnFwd(OUT_C);     OnRev(OUT_A);     Wait(150 - T);     Off(OUT_AC);     OnFwd(OUT_B);     Wait(100);     OnRev(OUT_AC);     Off(OUT_B);     Wait(50);     Off(OUT_ABC);     Wait(9999);     }else{     PlaySound(SOUND_UP);     Off(OUT_AC);     Wait(20);     OnFwd(OUT_C);     OnRev(OUT_A);     Wait(150 - T);     OnRev(OUT_AC);     Wait(100);     Off(OUT_AC);     Wait(20);     ClearTimer(0);     t = 0;     T = 0;     MAX = 0;     i++;     }     }       }     } 

ソフトウェアの解説

まず機体を一回転させ、その間光センサーの値が大きくなったタイミングというものをタイマーによって目的の位置を検出をさせ、そこから適正な秒数だけ逆回転させ前進、ある程度進んだところでもう一度同じことをやることにより、精度を高めた。 最終的に一番近づいたところでアームを上げ斜体を前進させることでボールを射出させる


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-07-30 (木) 23:35:44 (1486d)