[[2011a]]

#contents

* 課題1 [#j7d67950]

A4の紙にペンとロゴのロボットのキットだけで相方の似顔絵を書くロボット。

* メンバー [#c03bbe22]

宮嶋 ホンウンジ

* ロボットの紹介 [#j963f80d]
 
作った部分は少ないですができるだけ工夫してみました。
ロボットの写真など

** 反省点 [#b43e8d94]

-うまくペンを床に固定することができずに線画うまく書けない。
-

** 苦労した点 [#ybd2982b]

-ペンを固定する場所が難しくて少しでもずれるとうまく書けなかったので苦労しました。
-できるだけペンを固定したかったんですが、ゴムを大切にしなくてはいけないので、どのようにペンをつければいいか悩みました。結局あまりいい答えにはたどり着けませんでしたが...
-ペンがロボットの中心にないので動かして書くとき、線を曲げたい時などうまく合わせるのが大変だった。。

* プログラミング [#v191e835]

** 宮嶋 [#w59d6880]

 #define TURN_RIGHT1 OnFwd(OUT_A);OnRev(OUT_C);Wait(350);Off(OUT_A+OUT_C); //顔の輪郭
 #define TURN_RIGHT1 OnFwd(OUT_C);OnRev(OUT_A);Wait(350);Off(OUT_A+OUT_C); //顔の輪郭
 #define BACK OnRev(OUT_A+OUT_C);Wait(30);Off(OUT_A+OUT_C); //元の位置にもどる
 #define FWD OnFwd(OUT_A+OUT_C);Wait(30);Off(OUT_A+OUT_C); //ペンを書けるところまで前進
 #define RIGHT2 UP;Wait(100);BACK;OnFwd(OUT_A);OnRev(OUT_C);Wait(105);Off(OUT_A+OUT_C);FWD;DOWN;Wait(100); //髪の形1
 #define RIGHT2 UP;Wait(100);BACK;OnFwd(OUT_C);OnRev(OUT_A);Wait(105);Off(OUT_A+OUT_C);FWD;DOWN;Wait(100); //髪の形1
 #define UP OnFwd(OUT_B);Wait(10);Off(OUT_B); //ペン上昇
 #define DOWN OnRev(OUT_B);Wait(8);Off(OUT_B); //ペン降下
 #define MAE OnFwd(OUT_A+OUT_C);Wait(70);Off(OUT_A+OUT_C); //髪の縦線
 #define RIGHT UP;Wait(100);BACK;OnFwd(OUT_A);OnRev(OUT_C);Wait(70);Off(OUT_A+OUT_C);FWD;DOWN;Wait(100); //方向転換
 #define TURN_RIGHT_90 OnFwd(OUT_C);OnRev(OUT_A);Wait(85);Off(OUT_A+OUT_C); //90度回転
 #define RIGHT UP;Wait(100);BACK;OnFwd(OUT_C);OnRev(OUT_A);Wait(70);Off(OUT_A+OUT_C);FWD;DOWN;Wait(100); //方向転換
 #define TURN_RIGHT_90 OnFwd(OUT_A);OnRev(OUT_C);Wait(85);Off(OUT_A+OUT_C); //90度回転
 #define EYE OnFwd(OUT_A+OUT_C);Wait(45);Off(OUT_A+OUT_C);DOWN;OnFwd(OUT_A+OUT_C);Wait(25);Off(OUT_A+OUT_C);UP;OnFwd(OUT_A+OUT_C);Wait(35);Off(OUT_A+OUT_C);DOWN;OnFwd(OUT_A+OUT_C);Wait(25);Off(OUT_A+OUT_C);
 #define TURN_LEFT_90 OnFwd(OUT_A);OnRev(OUT_C);Wait(85);Off(OUT_A+OUT_C); //90度回転
 #define TURN_LEFT_90 OnFwd(OUT_C);OnRev(OUT_A);Wait(85);Off(OUT_A+OUT_C); //90度回転

 task main()
 {
 TURN_RIGHT1;
 OnFwd(OUT_A+OUT_C);Wait(60);Off(OUT_A+OUT_C); //前髪
 RIGHT;MAE; //髪の縦線
 RIGHT2;OnFwd(OUT_A+OUT_C);Wait(100);Off(OUT_A+OUT_C); //髪の横線
 RIGHT2;MAE; //髪の縦線
 UP;OnFwd(OUT_A);OnRev(OUT_C);Wait(145);Off(OUT_A+OUT_C);OnFwd(OUT_A+OUT_C);Wait(60); //方向転換 
 UP;OnFwd(OUT_C);OnRev(OUT_A);Wait(145);Off(OUT_A+OUT_C);OnFwd(OUT_A+OUT_C);Wait(60); //方向転換 
 TURN_RIGHT_90;EYE; //目
 UP;BACK;TURN_LEFT_90;OnFwd(OUT_A+OUT_C);Wait(30);Off(OUT_A+OUT_C);
 TURN_LEFT_90;OnFwd(OUT_A+OUT_C);Wait(65);Off(OUT_A+OUT_C);
 DOWN;OnFwd(OUT_A+OUT_C);Wait(30);Off(OUT_A+OUT_C);UP; //口
 }

** ホンウンジ [#nf2eaeb7]
task main()
{     Wait(100);
 task main()
 {     Wait(100);
   OnFwd(OUT_A); 
   OnRev(OUT_C);
      Wait(355);         
   Float(OUT_A+OUT_C);    //circle 
      Wait(100);
   OnRev(OUT_A+OUT_C);
      Wait(110);
   Float(OUT_A+OUT_C);
      Wait(100);        //start hair
   OnFwd(OUT_B);
     Wait(10);
   Float(OUT_B);     
     Wait(100);           //pen up
   OnFwd(OUT_A+OUT_C);
      Wait(110);       
    Float(OUT_A+OUT_C);   
       Wait(100);          //go 
    OnFwd(OUT_A);
    OnRev(OUT_C);
        Wait(83);
   Float(OUT_A+OUT_C);
        Wait(100);         // 1/4 turn
   OnRev(OUT_A+OUT_C); 
         Wait(5);  
   Float(OUT_A+OUT_C);
        Wait(100);     // go back
    OnRev(OUT_B);
       Wait(10);
     Float(OUT_B);   // pen down
      Wait(100);
    OnFwd(OUT_A); 
    OnRev(OUT_C);
      Wait(35);         
   Float(OUT_A+OUT_C);   
    OnFwd(OUT_C); 
    OnRev(OUT_A);
      Wait(70);    
    OnFwd(OUT_A); 
    OnRev(OUT_C);
      Wait(35);      
   Float(OUT_A+OUT_C);    
      Wait(100);          // smile
    OnFwd(OUT_B);
      Wait(10);        
   Float(OUT_B);
     Wait(100);     // pen up 
   OnFwd(OUT_A+OUT_C);
      Wait(20);       
    Float(OUT_A+OUT_C);   
       Wait(100);          //go 
    OnFwd(OUT_A);
    OnRev(OUT_C);
        Wait(83);
   Float(OUT_A+OUT_C);
        Wait(100);         // 1/4 turn
   OnRev(OUT_A+OUT_C);
      Wait(20);       
    Float(OUT_A+OUT_C);   
       Wait(100);          //go 
    OnRev(OUT_B);
       Wait(10);
     Float(OUT_B);   // pen down
   OnRev(OUT_A+OUT_C);
      Wait(20);       
    Float(OUT_A+OUT_C);   
       Wait(100);          //go 
   OnFwd(OUT_B);
      Wait(15);        
   Float(OUT_B);
     Wait(100);     // pen up 
   OnRev(OUT_A+OUT_C);
      Wait(15);       
    Float(OUT_A+OUT_C);   
       Wait(100);          //go 
    OnRev(OUT_B);
       Wait(10);
     Float(OUT_B);  
      Wait(50); // pen down
   OnRev(OUT_A+OUT_C);
      Wait(20);       
    Float(OUT_A+OUT_C);   
       Wait(100);          //go 
}
 }
    

** 完成品 [#z99e1ff1]
* 完成品 [#z99e1ff1]

** 工夫した点 [#wd83242e]

** 宮嶋 [#dbfb70db]

-似顔絵を書くことにおいて自分たちのロボットのかかる時間ができるだけ簡単なものがいいですけどそこまでシンプルすぎないように頑張ったつもりです。
-似顔絵の構造と書き順は書くときのロボットの動きの流れを重視して決めました。
-線を曲げたいときはロボットの構造上戻って曲がって進んでペンをおろすなどの作業があるので合わせるのに時間がかかった。

** 改善すべき点 [#h4b73f6f]

** 宮嶋 [#ja71906e]

-線を曲げるところや曲がる角度の調節がうまくできないので、顔の形が変になってしまったので、もっと合わせるべきだった。
-流れを重視したので目、口などのパーツが結構適当になってしまった。
-線がうまく書けないので、構造上においてもっと改善すべきだった。

* 感想 [#e70f7a8a]

** 宮嶋 [#ha685170]

ロボットを作ることは想像していたよりも難しくてロボット自体を作ることにおいてもプログラムを作ることにおいても時間のかかることで結局うまくできませんでしたが苦労しました。
** ホンウンジ [#ic0287e7]
ペンの位置が固定できなうて、大変でした。そして、線の連結の方向によって、ロボットの方向も変わることを考えずにプログラミングを作って苦労しました。


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