- 追加された行はこの色です。
- 削除された行はこの色です。
[[2006a/B2]]
#contents
*ロボットの構造☆ [#w027d20f]
**製作過程 [#d8f58e4d]
・今回は、タッチセンサーはシングルバンパーで、光センサーは二つ使うというアイデアはすんなりまとまった。
・しかし、これらふたつのセンサーをどのようにつけるかで時間を食ってしまう・・・(泣)
・結局ロボット製作に二時間ほどかかってしまった。
**出来上がったロボット[#d52be7a1]
&ref(kadai2.1.jpg);
&ref(kadai2.3.jpg);
↑↑バンパーのついている方が前です。
**タッチセンサーの装着 [#i64439f4]
&ref(kadai2.9.jpg); ←斜めから見た様子
&ref(kadai2.8.jpg); ←真横から見た様子
何かにぶつかったら、センサーのスイッチが入りタッチセンサーが作動する仕組みになってます。
**光センサーの装着 [#ad9f5061]
&ref(kadai2.6.jpg); ←右側の光センサー
&ref(kadai2.7.jpg); ←左側の光センサー
&ref(kadai2.5.jpg); ←車体の裏から見た光センサー
二つの光センサーで、黒い線を挟み込むようにして黒い線の上を走行します。
*試作プログラム[#f6858232]
**障害物にぶつかったら反転するプログラム [#xe917385]
シングルバンパーでの反転するプログラムです。
製作日//:06-6-14
製作者//:Blue
task main()
SetSensor(SENSOR_2,SENSOR_TOUCH); //センサー2がタッチセンサーと宣言
while(true)
{
OnFwd(OUT_A+OUT_C);
until(SENSOR_2==1); //タッチセンサーが押されるまで直進
OnRev(OUT_A+OUT_C); //タッチセンサーが押された後、後退
Wait(20);
OnRev(OUT_A); //モーターAを逆回転
Wait(200);
OnFwd(OUT_C); //モーターCを正回転
Wait(190);
OnFwd(OUT_A+OUT_C); //反転して直進
}
}
床の摩擦によって多少動きにブレはあるが、ちゃんと反転してくれた↑↑
**黒い線の上を走行するライン・トレースのプログラム [#b9bd5fa9]
光センサー二つをつけたときのライン・トレースのプログラムです。
製作日//:06-6-14
製作者//:Blue
task main()
{
SetSensor(SENSOR_1,SENSOR_LIGHT); //センサー1が光センサーと宣言
SetSensor(SENSOR_3,SENSOR_LIGHT); //センサー3が光センサーと宣言
while(true)
{
if (SENSOR_1> 40) //光センサー1が黒い線まで来ていないとき
{
OnFwd(OUT_A); //モーターAを正回転
Off(OUT_C); //モーターCを静止
}
else //光センサー2が黒い線に来たとき
{
OnFwd(OUT_C); //モーターCを正回転
Off(OUT_A); //モーターAを静止
}
if (SENSOR_3>40) //光センサー3が黒い線まで来ていないとき
{
OnFwd(OUT_C); //モーターCを正回転
Off(OUT_A); //モーターAを静止
}
else //光センサー3が黒い線まで来たとき
{
OnFwd(OUT_A); //モーターAを正回転
Off(OUT_C); //モーターCを静止
}
}
}
}
動きはたどたどしいけれど、ちゃんと黒い線の上を走ります!
動きはたどたどしいけれど、ちゃんと黒い線の上を走ってます!