*課題1 [#r87ed83b]
僕は「富山」を書くことにしました。 
*プログラムについて [#sbec1d73]
 int x1, x2, x3, x4, x5, y1, y2, y3, z;
 
  
 
 #define car10 OnFwd(OUT_A);Wait(x1);Off(OUT_A);
 
 
 
 #define car11 OnRev(OUT_A);Wait(x1);Off(OUT_A);
 
 #define car20 OnFwd(OUT_A);Wait(x2);Off(OUT_A);
 
 #define car21 OnRev(OUT_A);Wait(x2);Off(OUT_A);
 
 #define car30 OnFwd(OUT_A);Wait(x3);Off(OUT_A);
 
 #define car31 OnRev(OUT_A);Wait(x3);Off(OUT_A);
 
 #define car40 OnFwd(OUT_A);Wait(x4);Off(OUT_A);
 
 #define car50 OnFwd(OUT_A);Wait(x5);Off(OUT_A);
 
 #define car51 OnRev(OUT_A);Wait(x5);Off(OUT_A);
 
 
 
 #define pen_r10 OnFwd(OUT_B);Wait(y1);Off(OUT_B);
 
 
 
 #define pen_l11 OnRev(OUT_B);Wait(y1);Off(OUT_B);
 
 
 
 #define pen_r20 OnFwd(OUT_B);Wait(y2);Off(OUT_B);
 
 #define pen_l21 OnRev(OUT_B);Wait(y2);Off(OUT_B);
 
 
 
 #define pen_r30 OnFwd(OUT_B);Wait(y3);Off(OUT_B);
 
 
 
 #define pen_l31 OnRev(OUT_B);Wait(y3);Off(OUT_B);
 
 
 
 
 
 #define pen_up OnFwd(OUT_C);Wait(z);Off(OUT_C);
 
 
 
 #define pen_down OnRev(OUT_C);Wait(z);Off(OUT_C);
定義の部分です。「car」の部分は数字の1桁目が1のときは後退、0のときは前進を表しています   
 task main(){
 SetPower(OUT_C+OUT_B,OUT_LOW);
 SetPower(OUT_A,OUT_HALF);
  
 
  
 
 x1 = 6 ;
 
 x2 = 2*x1;
 
 x3 = 3*x1;
 
 x4 = 7*x1/2;
 
 x5 = 5*x1;
 
  
 
 y1 = 120  ;
 
 y2 = 3*y1/4;
 
 y3 = y1/2;
 
  
 
 z = 10 ;
時間の関数の部分です。xは車の前後、yはペンの左右、zはペンの上下を表しています。動かす時間を半分にするなどして、線の長さを変えています。 
 pen_down;
 
 car10;pen_up;
 
 pen_l31;pen_down;
 
 car10;pen_up;
 
 car11;pen_down;
 
 pen_r10;
 
 car10;pen_up;
 
 
 
 
 
 pen_l21;pen_down;
 
 pen_r30;pen_up;
 
 car10;
 
 pen_l31;pen_down;
 
 car10;pen_up;
 
 pen_l11;pen_down;
 
 pen_r30;
 
 car10;pen_up;
 
 pen_l31;pen_down;
 
 pen_r30;pen_up;
 
 
 
  
 
 car10;
 
 pen_l21;pen_down;
 
 car20;pen_up;
 
 car21;pen_down;
 
 pen_r10;
 
 car20;
 
 pen_l11;pen_up;
 
 car11;pen_down;
 
 pen_r10;pen_up;
 
 pen_l31;
 
 car11;pen_down;
 
 car20;pen_up;
 
 pen_l31;
 
  
 
 car50;
「富」の部分のプログラムです。 
 pen_r30;pen_down;
 
 car50;pen_up;
 
 car31;
 
 pen_l31;pen_down;
 
 car30;
 
 pen_r10;pen_up;
 
 car31;pen_down;
 
 car40;pen_up;
 
 }
「山」の部分のプログラムです。 
 

*ロボットについて [#tca61c6b]
#ref(./image1.jpeg,50%,ロボット全体)
車を動かす部分、ペンを左右に動かす部分、ペンを上下に動かす部分の3つに分けて、作りました。 
#ref(./image1(1).jpeg,50%,ペン左右)
ペンを左右に動かす部分です。下の画像のギザギザなレールの上を動きます。
#ref(./image2(1).jpeg,50%,車)
#ref(./image2.jpeg,50%,ペン上下)
ペンを上下させる部分です。機関車などのタイヤのようになっています。
*まとめ [#obfe3f6b]
ペンがどうしても下がってきてしまい、線が重なってうまく文字を書くことができなかった。「山」は読める程度にはなったが、「冨」は前半がうまくいかなかった。改良点として、ペンの上下の部分をもっと歯車を組み合わせて揺れないようにすべきだったと思う。



トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS