2006b/A6/反転
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2006b/A6/課題2左]]
#contents
*相手のロボットに接触したら反転して進む [#w14247e9]
**プログラム [#v813fbd3]
#define light 44 // 閾値を定義
task main(){
SetSensor(SENSOR_1,SENSOR_LIGHT); //センサー1を光センサーに定義
SetSensor(SENSOR_2,SENSOR_TOUCH); //センサー2をタッチセンサーに定義
SetSensor(SENSOR_3,SENSOR_LIGHT); //センサー3を光センサーに定義
while(true) {
if(SENSOR_1 < light){ // 左側の光センサーが黒を感知したら左へ
OnFwd(OUT_C);
OnRev(OUT_A);
}
else if(SENSOR_3 < light){ // 右側の光センサーが黒を感知したら右へ
OnFwd(OUT_A);
OnRev(OUT_C);
}
else if(SENSOR_2 ==1){ // 衝突したら若干の後退の後、右の光センサーが黒を感知するまで右回転
OnRev(OUT_A+OUT_C) ;
Wait(30);
while(SENSOR_3 > light){
OnFwd(OUT_A);
}
}
else{ // 上記以外の時、前進
OnFwd(OUT_A+OUT_C);
}
}
}
**苦労した点 [#f0d45852]
特になし
**工夫した点 [#f651b735]
ぶつからないように若干バックする。~
上手く黒線をまたぐまでの定義づけがスムーズな動きとなるように出来た。
**感想 [#obbd208e]
はじめから考えがまとまっていたので、すぐに作ることが出来た。~
実際に考えていた通りのものが出来たと思うので満足。
*コメント [#se9dc333]
何か意見がありましたらこちらにどうぞ
#comment
終了行:
[[2006b/A6/課題2左]]
#contents
*相手のロボットに接触したら反転して進む [#w14247e9]
**プログラム [#v813fbd3]
#define light 44 // 閾値を定義
task main(){
SetSensor(SENSOR_1,SENSOR_LIGHT); //センサー1を光センサーに定義
SetSensor(SENSOR_2,SENSOR_TOUCH); //センサー2をタッチセンサーに定義
SetSensor(SENSOR_3,SENSOR_LIGHT); //センサー3を光センサーに定義
while(true) {
if(SENSOR_1 < light){ // 左側の光センサーが黒を感知したら左へ
OnFwd(OUT_C);
OnRev(OUT_A);
}
else if(SENSOR_3 < light){ // 右側の光センサーが黒を感知したら右へ
OnFwd(OUT_A);
OnRev(OUT_C);
}
else if(SENSOR_2 ==1){ // 衝突したら若干の後退の後、右の光センサーが黒を感知するまで右回転
OnRev(OUT_A+OUT_C) ;
Wait(30);
while(SENSOR_3 > light){
OnFwd(OUT_A);
}
}
else{ // 上記以外の時、前進
OnFwd(OUT_A+OUT_C);
}
}
}
**苦労した点 [#f0d45852]
特になし
**工夫した点 [#f651b735]
ぶつからないように若干バックする。~
上手く黒線をまたぐまでの定義づけがスムーズな動きとなるように出来た。
**感想 [#obbd208e]
はじめから考えがまとまっていたので、すぐに作ることが出来た。~
実際に考えていた通りのものが出来たと思うので満足。
*コメント [#se9dc333]
何か意見がありましたらこちらにどうぞ
#comment
ページ名: