課題1の目次
#contents
* 課題 [#w83014b2]
各自の名前の中の一文字をA4用紙の中に書きなさい。ただし7画以上の文字を選ぶこと。

もし7画以上の文字がない場合には合計7画以上になるように複数の文字を書きなさい。

今回は「涼」という文字を書くことにした。

* 書道ロボットの概要 [#dea94fe9]
モータは左右のタイヤ、ペンの上げ下げに3つ使われており、モータの回転によって直接ペンを上下させるシンプルな構造になっている。
* プログラムの内容 [#kf2cb337]
** 関数 [#ta31381c]
 void turn_left(int s)     //左に曲がる関数を定義
 {
   OnFwd(OUT_C);
   OnRev(OUT_A);
   Wait(s);
   Off(OUT_AC);
   Wait(30);
 }

 void turn_right(int t)   //右に曲がる関数を定義
 {
   OnFwd(OUT_A);
   OnRev(OUT_C);
   Wait(t);
   Off(OUT_AC);
   Wait(30);
 }

 void go_straight(int u)  //前進する関数を定義
 {
    OnFwd(OUT_AC);
    Wait(u);
    Off(OUT_AC);
    Wait(30);
 }

 void write(int v)        //文字を書く関数を定義
 {
   OnFwd(OUT_B);
   Wait(5);
   Off(OUT_B);
   OnFwd(OUT_AC);
   Wait(v);
   Off(OUT_ABC);
   Wait(30);
 }
** プログラム「涼」 [#f9cf0b52]
 task main()
 {
   write(15);                //1画目
   OnFwd(OUT_A);
   Wait(125);
   OnRev(OUT_C);
   Wait(45);
   write(15);                //2画目
   OnFwd(OUT_C);
   Wait(140);
   write(18);                //3画目
   go_straight(40);
   turn_left(64);
   write(8);                 //4画目
   turn_left(31);
   OnRev(OUT_AC);
   Wait(10);
   write(30);                //5画目
   turn_right(72);
   repeat(2)                 //6,7,8画目
   {
      write(20);             
      turn_left(31);
      write(7);              
      turn_left(31);
   }
   OnFwd(OUT_C);
   Wait(18);
   go_straight(20);
   write(20);                //9画目
   turn_right(46);
   write(5);                 //10画目               
   go_straight(15);
   turn_left(36);
   write(10);                //11画目
   OnRev(OUT_C);
   Wait(15);
   turn_left(36);
   go_straight(20);
   turn_left(33);
   write(10);                //12画目
 }

* 制作上の課題と問題点 [#s0b970d4]
* その他 [#rc3b27b4]
* まとめ [#c0782b23]

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