- 追加された行はこの色です。
- 削除された行はこの色です。
[[2006a/B7/課題2左]]
[[2006a/B7]]
**今回のメンバー [#m3c997be]
クーロン茶、たいよう、おかじ
* 光センサーを使ったライントレースロボット [#ze3df488]&br;
紙に黒ペンで線を引いて、その上をひたすらまわるロボットの作成&br;
* 光センサーを使ったライントレースロボット [#ze3df488]
**愉快なロボットさん (まるで象サンみたいね)[#caa1e92a]
★製作者★ おかじ
#ref(2006a/B7/課題2左/SN340006.jpg,120%,正面)
#ref(2006a/B7/課題2左/ashi.jpg,120%,正面)
一応足もあります☆この足で重たい体を支えてます。
#ref(2006a/B7/課題2左/hana.jpg,120%,正面)
この鼻。。。ここだけの話やけど上下運動します!!
**プログラム [#z174e241]
☆製作者☆ クーロン茶
右によけて追い越すプログラムです。
task main()
{
SetSensor(SENSOR_1,SENSOR_LIGHT);センサ−1がライトセンサーであると宣言
SetSensor(SENSOR_2,SENSOR_TOUCH);センサ−2がタッチセンサーであると宣言
SetSensor(SENSOR_3,SENSOR_LIGHT);センサ−3がライトセンサーであると宣言
OnFwd(OUT_A+OUT_C);
while (true) {
if(SENSOR_1 < 40) { //左側のライトセンサーが黒線に触れると
OnFwd(OUT_C); //右側のタイヤだけを回転
Off(OUT_A);
}
if(SENSOR_3 < 40) { //右側のライトセンサーが黒線に触れると
Off(OUT_C); //右側のタイヤだけを回転
OnFwd(OUT_A);
}
if(SENSOR_2 == 1) { //タッチセンサーが入ると
OnRev(OUT_A+OUT_C); //いったんバックして
Wait(50);
OnFwd(OUT_A); //右によけて追い越して
Wait(83);
OnFwd(OUT_C);
Wait(160);
OnRev(OUT_A);
Wait(83);
OnFwd(OUT_A);
Wait(160);
OnRev(OUT_A);
Wait(87);
OnFwd(OUT_A); //またラインとレースを開始します。
}
}
}
**工夫した点 [#r1cd8ac1]
180度反転して逆走し始めるプログラムです。
task main()
{
SetSensor(SENSOR_1,SENSOR_LIGHT);
SetSensor(SENSOR_2,SENSOR_TOUCH);
SetSensor(SENSOR_3,SENSOR_LIGHT);
OnFwd(OUT_A+OUT_C);
while (true) {
if(SENSOR_1 < 40) {
OnFwd(OUT_C);
Off(OUT_A);
}
if(SENSOR_3 < 40) {
Off(OUT_C);
OnFwd(OUT_A);
}
if(SENSOR_2 == 1) {
OnRev(OUT_A+OUT_C);
Wait(50);
OnFwd(OUT_A);
Wait(165);
OnFwd(OUT_C);
}
}
}
**工夫した点、反省点 [#r1cd8ac1]
★ロボット制作過程☆&br;
接続のコードが見えないように内部にコードを通し、&br;
見栄えを良くした。&br;
なんとなく鼻をつけた 笑☆&br;
でも、重心が片寄りすぎて前の方に支える足を付け加えるはめになった。&br;
おまけ:鼻の動くプログラムはおかじの個人ページに貼ってあります。
☆プログラム制作過程★