*中を書くプログラム [#o5b953a7]
*中を書くプログラム [#s881e9a6]

 
  task main() 
  { 
  
   #difine turnR OnRev(OUT_C); OnFwd(OUT_A); 
    Wait(130); Off(OUT_A+OUT_C);  //turnR=90°右旋回                      
   
   #difine turnL OnRev(OUT_A); OnFwd(OUT_C); 
    Wait(130); Off(OUT_A+OUT_C); //turnL=90°左旋回
 
   #difine pen_up  OnFwd(OUT_B); Wait(10); 
    Off(OUT_B);                  //pen_up=ペンを上げる    
 
   #difine pen_down OnRev(OUT_B);  Wait(10); 
    Off(OUT_B);            //pen_down=ペンを下げる 
 { 
    OnFwd(OUT_A); OnFwd(OUT_C); 
    Wait(80); Off(OUT_A+OUT_C);     //一画目
 
    OnFwd(OUT_B); Wait(10); 
    Off(OUT_B);                  //ペンを上げる 
    pen_up                  //ペンを上げる 
 
    OnRev(OUT_A+OUT_C); Wait(160); 
    Off(OUT_A+OUT_C);         //元の位置に戻る
 
    OnRev(OUT_A); OnFwd(OUT_C); 
    Wait(130); Off(OUT_A+OUT_C);   //方向転換
    turnL                           //方向転換
 
    OnFwd(OUT_A); OnFwd(OUT_C); 
    Wait(90); Off(OUT_A+OUT_C)   //微調整
 
    OnRev(OUT_B);  Wait(10); 
    Off(OUT_B);           //ペンを下ろす
    pen_down           //ペンを下ろす
 
    OnFwd(OUT_A); OnFwd(OUT_C); 
    Wait(120); Off(OUT_A+OUT_C);  //二画目
 
    OnFwd(OUT_B);  Wait(10); 
    Off(OUT_B);           //ペンを上げる
    pen_up             //ペンを上げる
 
    OnRev(OUT_C);  Wait(260); 
    Off(OUT_A+OUT_C);        //方向転換
    turnR                      //方向転換
 
    OnFwd(OUT_A); OnFwd(OUT_C); 
    Wait(90); Off(OUT_A+OUT_C);  //微調整
 
    OnRev(OUT_B);  Wait(10); 
    Off(OUT_B);           //ペンを下ろす
    pen_down           //ペンを下ろす
 
    OnFwd(OUT_A); OnFwd(OUT_C); 
    Wait(80); Off(OUT_A+OUT_C);  //二画目続き
 
    OnFwd(OUT_B);  Wait(10); 
    Off(OUT_B);                      //ペンを上げる
    pen_up                      //ペンを上げる
 
    OnRev(OUT_C);  Wait(280); 
    Off(OUT_C); 
    OnFwd(OUT_A); OnFwd(OUT_C); 
    Wait(120); Off(OUT_A+OUT_C); 
    OnFwd(OUT_A); OnRev(OUT_C); 
    Wait(340); Off(OUT_A+OUT_C); 
    OnFwd(OUT_A); OnFwd(OUT_C); 
    Wait(50); Off(OUT_A+OUT_C);     //三画目への移動
 
    OnRev(OUT_B);  Wait(10); 
    Off(OUT_B);                    //ペンを下ろす
    pen_down                    //ペンを下ろす
 
    OnFwd(OUT_A); OnFwd(OUT_C); 
    Wait(200); Off(OUT_A+OUT_C);   //三画目
 
    OnFwd(OUT_B);  Wait(10); 
    Off(OUT_B);                   //ペンを上げる
    pen_up                   //ペンを上げる
 
    OnRev(OUT_A); OnFwd(OUT_C); 
    Wait(280); Off(OUT_A+OUT_C); 
    OnFwd(OUT_A); OnFwd(OUT_C); 
    Wait(240); Off(OUT_A+OUT_C); 
    OnRev(OUT_A); OnFwd(OUT_C); 
    Wait(240); Off(OUT_A+OUT_C);   //四画目への移動
 
    OnRev(OUT_B); Wait(10); 
    Off(OUT_B); Wait(32);         //ペンを下ろす
    pen_down         //ペンを下ろす
 
    OnFwd(OUT_A); OnFwd(OUT_C); 
    Wait(300); Off(OUT_A+OUT_C);  //四画目 }



**うまくいった点 [#q75acc14]
**うまくいった点 [#we845c6b]

ADIO:特に無い気がするが、強いていえば組み立てが早かった点?

カルロスjr:うまく分業できた点?


**苦労した点 [#me72bb8b]
**苦労した点 [#hdf1d965]

ADIO:キャタピラは、場所によって摩擦の違いで旋回にかかる時間や、移動にかかる時間が異なるため、本番にあわせて時間調整する必要があった点。 モーターが動くときと動かないときがあった点。 左右のモーターの単位時間における回転数が微妙に異なるため、直進させようとすると若干右に寄っていってしまった点。

カルロスjr:キャタピラは手の込んでいる割りに、動きに正確性を欠いたのでプログラミングに苦労した。また持ち運びのときも乱雑に扱ったつもりはないが、分解しているときが多々あった。 そして、ペンを持たせたアーム部分だが、なぜか動かなかったりする場面もあった。あと個人的にアーム部分を作るのに柔軟にイメージができなかった。 プログラミングにおいては、書き順通りということで、キャタピラを反転させたときにできるずれを修正するのが動きに正確性を欠いているので難しかった。

**反省点 [#adec37a4]
**反省点 [#t9178f35]

ADIO&カルロスjr:中を書くプログラムのところを見てわかるように、定義付けの#defineを全く使っていません。そのため、本番にあわせて時間調整するのに時間がかかりすぎてしまった。最低限右旋回と左旋回ぐらいは定義付けしておくべきであった。
ADIO&カルロスjr:元々の中を書くプログラムには定義付けの#defineを全く使っていませんでしたそのため、本番にあわせて時間調整するのに時間がかかりすぎてしまった。最低限右旋回と左旋回ぐらいは定義付けしておくべきであった。

よろしければコメントをお願いします。
#comment



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