2005/C5/課題2右
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*壁に沿って動くプログラム [#l417de3c]
int t;
int w;
sub yuu () //yuuのプログラム
{
OnFwd(OUT_A+OUT_C); //前進
until((SENSOR_1==1)&&(SENSOR_3==1));//タッチセンサー1もしくはタッチセンサー1,3両方が反応するまで
OnRev(OUT_A+OUT_C); //後進
Wait(w);
OnFwd(OUT_A);
OnRev(OUT_C); //右に回転
Wait(105);
Off (OUT_A+OUT_C); //停止
}
sub sho () //shoのプログラム
{
ClearTimer (0);
while (Timer (0) < t)
{
while (SENSOR_1==1 && SENSOR_3==0)
{
Off (OUT_A+OUT_C); //停止
OnFwd (OUT_A+OUT_C); //前進
}
while (SENSOR_1==0 && SENSOR_3==0)
{
Off (OUT_A+OUT_C); //停止
OnFwd (OUT_C);
OnRev (OUT_A); //左に回転
Wait (10);
OnFwd (OUT_A+OUT_C); //前進
Wait (10);
}
if (SENSOR_1==1 && SENSOR_3==1)
{
OnRev (OUT_A+OUT_C); //後進
Wait (0);
OnFwd (OUT_A);
OnRev (OUT_C); //右に回転
Wait (130);
Off (OUT_A+OUT_C); //停止
}
}
Off (OUT_A+OUT_C); //停止
}
task main ()
{
SetSensor (SENSOR_1, SENSOR_TOUCH); //left //タッチセンサー左
SetSensor (SENSOR_3, SENSOR_TOUCH); //right //タッチセンサー右
w=5;
yuu();
w=50;
yuu();
OnFwd (OUT_A+OUT_C); //前進
Wait (330);
OnFwd (OUT_C);
OnRev (OUT_A); //左に回転
Wait (90);
OnFwd (OUT_A+OUT_C); //前進
until (SENSOR_1==1 && SENSOR_3==1); //タッチセンサー1もしくはタッチセンサー1,3両方が反応するまで
t=110;
sho();
w=5;
yuu();
yuu();
OnFwd (OUT_A+OUT_C); //前進
Wait(340);
t=1000;
sho();
Off (OUT_A+OUT_C); //停止
}
写真
#ref(http://yakushi.shinshu-u.ac.jp/robotics-photo/2005-11-24/img_0017_Medium.jpg)
特徴
タッチセンサーを2つ使用。タッチセンサーの反応をよくするために左側のタッチセンサーにブロックをつける。
感想
二人のプログラムをあわせてプログラミングをした。壁にそって離れることなく走れた。かなり完成度は高いと思う。
二人のプログラムをあわせてプログラミングをした。壁にそって離れることなく走れた。かなり完成度は高いと思う。
-プログラムだけでは様子がわからないので、コメントやロボットの説明を書き加えて下さい。 -- [[まいける(TA)]] &new{2005-12-02 (金) 18:04:59};
-説明をいれましょう。 -- [[かとりーぬ(TA)]] &new{2005-12-16 (金) 18:59:45};
#comment
終了行:
*壁に沿って動くプログラム [#l417de3c]
int t;
int w;
sub yuu () //yuuのプログラム
{
OnFwd(OUT_A+OUT_C); //前進
until((SENSOR_1==1)&&(SENSOR_3==1));//タッチセンサー1もしくはタッチセンサー1,3両方が反応するまで
OnRev(OUT_A+OUT_C); //後進
Wait(w);
OnFwd(OUT_A);
OnRev(OUT_C); //右に回転
Wait(105);
Off (OUT_A+OUT_C); //停止
}
sub sho () //shoのプログラム
{
ClearTimer (0);
while (Timer (0) < t)
{
while (SENSOR_1==1 && SENSOR_3==0)
{
Off (OUT_A+OUT_C); //停止
OnFwd (OUT_A+OUT_C); //前進
}
while (SENSOR_1==0 && SENSOR_3==0)
{
Off (OUT_A+OUT_C); //停止
OnFwd (OUT_C);
OnRev (OUT_A); //左に回転
Wait (10);
OnFwd (OUT_A+OUT_C); //前進
Wait (10);
}
if (SENSOR_1==1 && SENSOR_3==1)
{
OnRev (OUT_A+OUT_C); //後進
Wait (0);
OnFwd (OUT_A);
OnRev (OUT_C); //右に回転
Wait (130);
Off (OUT_A+OUT_C); //停止
}
}
Off (OUT_A+OUT_C); //停止
}
task main ()
{
SetSensor (SENSOR_1, SENSOR_TOUCH); //left //タッチセンサー左
SetSensor (SENSOR_3, SENSOR_TOUCH); //right //タッチセンサー右
w=5;
yuu();
w=50;
yuu();
OnFwd (OUT_A+OUT_C); //前進
Wait (330);
OnFwd (OUT_C);
OnRev (OUT_A); //左に回転
Wait (90);
OnFwd (OUT_A+OUT_C); //前進
until (SENSOR_1==1 && SENSOR_3==1); //タッチセンサー1もしくはタッチセンサー1,3両方が反応するまで
t=110;
sho();
w=5;
yuu();
yuu();
OnFwd (OUT_A+OUT_C); //前進
Wait(340);
t=1000;
sho();
Off (OUT_A+OUT_C); //停止
}
写真
#ref(http://yakushi.shinshu-u.ac.jp/robotics-photo/2005-11-24/img_0017_Medium.jpg)
特徴
タッチセンサーを2つ使用。タッチセンサーの反応をよくするために左側のタッチセンサーにブロックをつける。
感想
二人のプログラムをあわせてプログラミングをした。壁にそって離れることなく走れた。かなり完成度は高いと思う。
二人のプログラムをあわせてプログラミングをした。壁にそって離れることなく走れた。かなり完成度は高いと思う。
-プログラムだけでは様子がわからないので、コメントやロボットの説明を書き加えて下さい。 -- [[まいける(TA)]] &new{2005-12-02 (金) 18:04:59};
-説明をいれましょう。 -- [[かとりーぬ(TA)]] &new{2005-12-16 (金) 18:59:45};
#comment
ページ名: