2005/B4
2005/B4
2005/B4
右という字を書くプログラミング†
//書道プログラム
//作成者/すなお、 きょうすけ
//作成日/2005ー11ー
int move_time;
sub arm_up()
{
OnFwd(OUT_B); Wait(move_time); Off(OUT_B);
}
sub arm_down()
{
OnRev(OUT_B); Wait(move_time-95);
Float(OUT_B);
}
sub turn()
{ OnFwd(OUT_B); Wait(100);
Off(OUT_B);
OnFwd(OUT_A+OUT_C); Wait(7);
Off(OUT_A+OUT_C);
OnFwd(OUT_A); Wait(200);
OnRev(OUT_A+OUT_C); Wait(130);
Off(OUT_A+OUT_C);
OnRev(OUT_B); Wait(7);
Float(OUT_B);
}
task main()
{
move_time = 100 ;
OnFwd(OUT_A+OUT_C); Wait(move_time - 50);
Off(OUT_A+OUT_C); arm_up();
OnFwd(OUT_A+OUT_C); Wait(move_time - 50); Off(OUT_A+OUT_C);
OnFwd(OUT_A); Wait(move_time - 70);Off(OUT_A);
OnRev(OUT_A+OUT_C); Wait(move_time - 31); Off(OUT_A+OUT_C);
arm_down();
OnFwd(OUT_A+OUT_C); Wait(move_time + 10 ); Off(OUT_A+OUT_C);
arm_up();
OnRev(OUT_C); OnFwd(OUT_A); Wait(move_time + 75); Off(OUT_A+OUT_C);
OnFwd(OUT_A+OUT_C); Wait(move_time-50); Off(OUT_A+OUT_C);
OnRev(OUT_C); OnFwd(OUT_A); Wait(move_time +17);
Off(OUT_A+OUT_C);
OnRev(OUT_A+OUT_C); Wait(move_time); Off(OUT_A+OUT_C);
arm_down();
OnFwd(OUT_A+OUT_C); Wait(move_time + 12);
Off(OUT_A+OUT_C);
arm_up();
OnRev(OUT_C); OnFwd(OUT_A); Wait(move_time +13); Off(OUT_A+OUT_C);
OnRev(OUT_A+OUT_C); Wait(move_time); Off(OUT_A+OUT_C);
OnFwd(OUT_A+OUT_C); Wait(move_time + 20);
Off(OUT_A+OUT_C);
OnRev(OUT_C); OnFwd(OUT_A); Wait(move_time +13); Off(OUT_A+OUT_C);
OnRev(OUT_A+OUT_C); Wait(move_time); Off(OUT_A+OUT_C);
OnFwd(OUT_A+OUT_C); Wait(100); Off(OUT_A+OUT_C);
repeat(4){
turn();
OnFwd(OUT_A+OUT_C); Wait(50);
Off(OUT_A+OUT_C);
}
}
- プログラムの前半はすなお、後半はきょうすけで作りました。
- サブルーチンを使ってまとめたつもりでしたが、プログラムが長くなってしまいました。
- 板の上と絨毯の上での動きが全然違って苦戦しました。
- ロボットの方は割と簡単にできました。
- プログラムが見づらいです。改行やコメントを適宜いれてもう少し見やすく作ることを心がけましょう。 -- まいける(TA)
- 動作の解説を入れるともっと見やすくなるのでは... -- ゆん(TAM)