- 追加された行はこの色です。
- 削除された行はこの色です。
[[2005/A3]]
*序章 文字「左」を書く program editer Hideshi [#i983f7f2]
**基本プログラム [#wd9eee33]
[#m527a634]
sub Pen_Down() {OnFwd(OUT_B);Float(OUT_B);Wait(50);}
sub Pen_Up() {OnRev(OUT_B);}
void Right_Turn(int t){OnFwd(OUT_A);OnRev(OUT_C);Wait(t);}
void Left_Turn(int t){OnFwd(OUT_C);OnRev(OUT_A);Wait(t);}
void Back(int t) {OnRev(OUT_A+OUT_C);Wait(t);}
void Go(int t){OnFwd(OUT_A+OUT_C);Wait(t);}
sub Stop() {Off(OUT_A+OUT_C);Wait(50);}
***工夫点 [#bacf425b]
・左右を反対方向に 0.85 秒回せば、機体が 90 度回る事は多くの班で気づいている事だと思うけど、あえて sub で指示をせず、 void にして time 値を状況ごとに変えれるようにして微調整をおこないました。
**実際に動かす [#l3257f9a]
task main()
{Pen_Down();Wait(20); // The first straight
Go(120);Pen_Up();Stop();
Back(85);Left_Turn(20); //Shift to the second curve
Stop();Pen_Down();Wait(50);Right_Turn(70); //The second curve
Pen_Up();Go(50);Left_Turn(50);Back(45);Stop(); //Shift to the third straight
Pen_Down();Go(60);Stop();Pen_Up(); //The third straight
Go(80);Left_Turn(85);Back(124);Stop(); //Shift to the fourth straight
Pen_Down();Back(50);Stop(); //The fourth straight
Pen_Up();Go(100);Left_Turn(85);Back(75);Stop(); //Shift to the fifth straight
Pen_Down();Back(80);Stop(); //The fifth straight
Pen_Up();Right_Turn(85);Back(50);Off(OUT_A+OUT_B+OUT_C);}
**感想 [#c9f4ce01]
・機体はグループで話し合って作りましたが、プログラムは自分でしか作れないので大変でした。特に微調整に多くの時間をかけたけど、上手く書けたので良かったです。
*コメントをお願いします [#udd54ac0]
-他の人が見ても理解しやすい様な工夫をするともっと良いと思う。プログラム自体は良いと思う。 -- [[ストップ]] &new{2005-11-18 (金) 15:27:00};
#comment