[[2005/C2/どみ]]
*壁に沿って動くロボット [#z2d6ca4f]

 task main() {
 	SetSensor(SENSOR_1,SENSOR_TOUCH);	//右センサ
 	SetSensor(SENSOR_3,SENSOR_TOUCH);	//左センサ
 
 	while (true) {
 		if (SENSOR_3 == 1) {
 			if (SENSOR_1 == 1) {		//壁にぶつかったとき
 				OnRev(OUT_A+OUT_C);
 				Wait(5);
 				OnFwd(OUT_C);
 				Wait(185);
 				Off(OUT_C);
 				OnFwd(OUT_A);
 				Wait(100);
 				Off(OUT_A);
 				OnFwd(OUT_C);
 				Wait(60);
 				Off(OUT_C);
 			} else {			//壁に触れているとき
 				OnFwd(OUT_A+OUT_C);
 			}
 		} else {				//壁から離れたとき
 			Off(OUT_C);
 			OnFwd(OUT_A);
 		}
 	}
 }

タッチセンサを2つ使ったロボット。机の下で90左回転した後、右→左と曲げることで壁に寄せ、次の直進にちゃんと移行できるようにした。ただ、無駄に重くなった気もする。

コメントをどうぞ

#comment

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS