- 追加された行はこの色です。
- 削除された行はこの色です。
[[2015a/Member]]
* 使用したロボ [#t6abc8c0]
車体の中心にペンを入れることでロボの軌跡と書きたい文字がリンクするようにした。
#ref(2015a/Member/swimy/Mission1/IMG_3913.JPG,50%,文字を書くロボット)
*プログラム [#ge4a8526]
**「林」の文字を書く [#l6a1df5e]
#define TURN_TIME 78//90°回転する時間を定義する
#define TURN_HALF 39//45°回転する時間を定義する
#define rise OnFwd(OUT_B);Wait(10);Off(OUT_B);//ペンを上げる動作を「rise」と定義する
#define down OnRev(OUT_B);Wait(10);Off(OUT_B);//ペンを下す動作を「down」と定義する
task main()
{
repeat(2){//「林」を書きたいので「木」を2回繰り返すようにする
OnFwd(OUT_AC);
Wait(100);
rise;
OnRev(OUT_AC);
Wait(50);
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(TURN_TIME);
down;
OnFwd(OUT_AC);
Wait(200);
rise;
OnRev(OUT_AC);
Wait(180);
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(TURN_HALF);
down;
OnFwd(OUT_AC);
Wait(75);
rise;
OnRev(OUT_AC);
Wait(75);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(TURN_TIME);
down;
OnFwd(OUT_AC);
Wait(75);
rise;
OnRev(OUT_AC);
Wait(75);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(TURN_HALF);
OnFwd(OUT_AC);
Wait(60);
}
Off(OUT_AC);
}
*課題を振り返ってみて [#e6e0be6c]
今回のプログラムで目標である字を書くということは達成できた。しかし、このロボだと細かな作業には限界があり、文字の大きさはA4ぎりぎりになってしまった。アームを作ってそれを動かすほうが今回の課題としては最適だったと思う。プログラムとしてはdefineをもっと使っていけばこんな長いものにはならずにスマートにできたはずだ。これらの反省点は次回以降に生かしていきたい