- 追加された行はこの色です。
- 削除された行はこの色です。
[[2007a/A2/課題3右]]
#contents
**課題3の2 [#w4778eab]
担当:みずまる
動く光に反応しその光に向かって進むプログラムを作成した。課題通りである。
***実際のプログラム [#g820f0af]
#define THRESHOLD 53
task main()
{
SetSensor(SENSOR_1,SENSOR_LIGHT);
SetSensor(SENSOR_3,SENSOR_LIGHT);
while(true)
{ if ((SENSOR_1 > THRESHOLD ) && (SENSOR_3 > THRESHOLD ))
{
OnFwd(OUT_A); Wait(23);
OnRev(OUT_A); Wait(12);
} //光が目の前にある時直進する
if ((SENSOR_1 < THRESHOLD ) && (SENSOR_3 > THRESHOLD ))
{
OnRev(OUT_A);
} //光が左側にある時左に曲がる
if ((SENSOR_1 > THRESHOLD ) && (SENSOR_3 < THRESHOLD ))
{
OnFwd(OUT_A);
} //光が右側にある時右に曲がる
if ((SENSOR_1 < THRESHOLD ) && (SENSOR_3 < THRESHOLD ))
{
OnRev(OUT_A);
} //光が見当たらないとき左に半回転する
}
}
***工夫点 [#wcfb8fb1]
●センサーの反応によるすべてのパターンを入力し、どのような状況にも対処できるようにプログラミングした。
***苦労した点 [#l5c3178f]
●光センサーがどのくらいの光で反応するかを数値をすこしづつ変えて実験的に決めたため、とても時間がかかってしまった。
***改善点 [#g7c38fd4]
●場所によって光センサーの反応がかわってしまう。
●少し動きが速すぎるような気がする。
●if文を多用したためプログラムがうまくまとまらなかった。
***感想 [#y6616d59]
●急ぎで作らなくてはならなかったため優れたプログラミングをすることができず特徴のあまりないプログラムになってしまい残念だった。
●前回はプログラム担当ではなかったためプログラムに対する理解が遅れていたので思いのほか時間がかかってしまった。
←戻る[[2007a/A2/課題3右/プログラム1]]
[[←戻る>2007a/A2/課題3右/プログラム1]]
→進む[[2007a/A2/課題3右/プログラム3]]
[[→次へ>2007a/A2/課題3右/プログラム3]]
[[見出しに戻る>2007a/A2/課題3右]]