2005/A1
プログラム†
//作成:Harada
//左を書くロボット
#define P_IN 370
#define P_OUT 350
#define P_DOWN 150
#define P_UP 155
void go(int t) //前進 100で7cm程度
{
OnFwd(OUT_A+OUT_C);
Wait(t);
Off(OUT_A+OUT_C);
}
void back(int t) //後進
{
OnRev(OUT_A+OUT_C);
Wait(t);
Off(OUT_A+OUT_C);
}
void left_t(int t) //左転回 130で90度
{
OnFwd(OUT_C); OnRev(OUT_A);
Wait(t);
Off(OUT_A+OUT_C);
}
void right_t(int t) //右転回 130で90度
{
OnFwd(OUT_A); OnRev(OUT_C);
Wait(t);
Off(OUT_A+OUT_C);
}
void left(int t) //左旋回 260で90度
{
OnFwd(OUT_C); Float(OUT_A);
Wait(t);
Off(OUT_A+OUT_C);
}
void right(int t) //右旋回 260で90度
{
OnFwd(OUT_A); Float(OUT_C);
Wait(t);
Off(OUT_A+OUT_C);
}
void left_b(int t) //左後旋回 260で90度
{
OnRev(OUT_C); Float(OUT_A);
Wait(t);
Off(OUT_A+OUT_C);
}
void right_b(int t) //右後旋回 260で90度
{
OnRev(OUT_A); Float(OUT_C);
Wait(t);
Off(OUT_A+OUT_C);
}
sub in() //ペン挿入
{
OnRev(OUT_B);
Wait(P_IN);
Float(OUT_B);
}
sub out() //ペン排出
{
OnFwd(OUT_B);
Wait(P_OUT);
Float(OUT_B);
}
sub down() //ペン下降
{
OnRev(OUT_B);
Wait(P_DOWN);
Float(OUT_B);
}
sub up() //ペン上昇
{
OnFwd(OUT_B);
Wait(P_UP);
Float(OUT_B);
}
task main()
{
in();
go(70);
left_t(75);
go(100);
down(); //1画目
back(250);
up();
go(140);
right_t(75);
back(70);
down(); //2画目
go(200);
up();
back(130);
left_t(75);
back(60);
right_t(75);
go(20);
right_t(130);
down(); //3画目
go(75);
up();
back(75);
left_t(130);
down(); //4画目
go(100);
up();
down();
right_t(130);
go(75);
up();
right_t(130);
go(100);
down(); //5画目
back(100);
up();
out();
}
コメント†