[[2011a]]

#contents

* 課題1 [#j7d67950]

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

* メンバー [#c03bbe22]

宮嶋 ホン

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

&ref(1.jpg);
-ロボットの全体的なイメージです。

&ref(2.jpg);
-ロボットの本体は基本の三つのもので、一番動き安いことで選びました。

&ref(3.jpg);
-ペンを回すためにモタをこのように利用しました。
-歯車がよく会うために、間隔を合わせることが大変でした。
-モタが予想より早く回って、モタが動く時間の設定が難しいでした。

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

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

** 宮嶋 [#w59d6880]

 #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_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_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_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_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]
 #define pen_up OnFwd(OUT_B); Wait(10); Float(OUT_B);//pen up
 #define pen_down OnRev(OUT_B); Wait(10); Float(OUT_B);// pen down
 #define circle OnFwd(OUT_A);OnRev(OUT_C);Wait(355);  Float(OUT_A+OUT_C);//circle 
 #dafine hair OnRev(OUT_A+OUT_C);Wait(110);Float(OUT_A+OUT_C);Wait(100);//start hair    
 #define 1/4_turn  OnFwd(OUT_A);OnRev(OUT_C);Wait(83);Float(OUT_A+OUT_C);Wait(100); 
 #define go_back OnRev(OUT_A+OUT_C); Wait(5); Float(OUT_A+OUT_C); Wait(100);//go back  
 #define smlie 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);          
 #define go20   OnFwd(OUT_A+OUT_C); Wait(20);Float(OUT_A+OUT_C);Wait(100);//smile   

 task main()
 {     
   circle; 
   hair;
   pen_up;
   OnFwd(OUT_A+OUT_C);
   Wait(110);       
   Float(OUT_A+OUT_C);   
   Wait(100);   //go 
   1/4_turn;
   go back;
   pen_down;
   smile;    
   pen up; 
   go20;
   1/4 turn;
   go20; 
   pen down;
   go20;
   pen up; 
   go15; 
   pen down;
   go20;      }
    

* 完成品 [#z99e1ff1]

**宮島 [#s7af9473]
&ref(1111.jpg);&ref(1212.jpg);

**ホン [#w0a2119e]
&ref(6.jpg);&ref(5.JPG);

* 感想 [#e70f7a8a]

** 宮嶋 [#ha685170]

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

#comment



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