*目次 [#y56c268a]
#contents
*課題 [#z7e616e4]
**似顔絵をロボットで描く [#eca505e8]
・A3用紙に相方の似顔絵を描くロボットを作成し、プログラムも作成する。
*使用したロボット [#j92985e2]


#ref(HI3B0008.JPG)


RCX2.0本体を前方に配置して、鉛筆を真ん中に来るようにした。また鉛筆を上下させるモーターは後方に配置した。鉛筆を真ん中にしたのは、絵を描くさいに前にあるとカーブなどでうまくかけないことが多々あったからである。RCX2.0本体を前にしたために新たにブロックをつけ補強してある。

*プログラム [#ye456378]
**A   08A3019E[#a461ad51]

#ref(080529_165033-1.jpg)

task main()
     {OnFwd(OUT_B);
repeat(4){ 
    OnFwd(OUT_A);   //輪郭
    OnFwd(OUT_C);     
    Wait(30); 
    Off(OUT_A); 
     OnFwd(OUT_C); 
     Wait(217);
}
 Off(OUT_A+OUT_C); //輪郭の中にはいいって口
  OnFwd(OUT_A);  
    OnFwd(OUT_C);     
    Wait(10); 
    Off(OUT_A); 
     OnFwd(OUT_C); 
     Wait(217);
     
      OnRev(OUT_B);  
      Wait(10);
      OnFwd(OUT_B);
     Wait(10);
     OnRev(OUT_B);
     Wait(10);
     
       OnFwd(OUT_A);  //ちょっと進む    OnFwd(OUT_C);     
    Wait(30); 
    Off(OUT_C); 
     OnFwd(OUT_A); 
     Wait(217); 
     
     OnFwd(OUT_A);  //左目
    OnFwd(OUT_C);     
    Wait(10); 
     Off(OUT_A); 
     OnFwd(OUT_C); 
     Wait(217);
     
      OnRev(OUT_B);
      Wait(6);
      OnFwd(OUT_B);
     Wait(6);
     OnRev(OUT_B);
     Wait(6);
     OnFwd(OUT_B);
     Wait(6);
      OnRev(OUT_B);
      Wait(6);
     
     OnFwd(OUT_A);  //右目
    OnFwd(OUT_C);     
    Wait(30); 
    }
 
**B 08T1051C [#a461ad51]

#ref(HI3B0002.jpg)


task main()



      {OnFwd(OUT_B+OUT_C);
      {OnFwd(OUT_B+OUT_C);//顔の輪郭を描く
      { OnFwd(OUT_B+OUT_C);
        SetPower(OUT_C,4);
        SetPower(OUT_B,7);
        Wait(1185);//face
        Wait(1185);



       OnRev(OUT_A+OUT_B+OUT_C);
       OnRev(OUT_A+OUT_B+OUT_C);//口を描く準備
       Wait(060);
       OnFwd(OUT_C);


       OnFwd(OUT_C);//口を描く
       OnRev(OUT_A +OUT_B);
       SetPower(OUT_B,7);
       Wait(030);
       OnFwd(OUT_A+OUT_C);
       OnRev(OUT_B);
       SetPower(OUT_B,7);
       Wait(090);
       OnFwd(OUT_A+OUT_B+OUT_C);
       SetPower(OUT_B,7);
       Wait(050);//mouth
       Wait(050);


      OnRev(OUT_A+OUT_B+OUT_C);
      OnRev(OUT_A+OUT_B+OUT_C);//鼻を描く準備
 
     SetPower(OUT_B,7);
     Wait(075);
    OnFwd(OUT_C);
    OnRev(OUT_A+OUT_B);
    SetPower(OUT_B,7);
    Wait(120);
    OnFwd(OUT_A+OUT_C);
    OnRev(OUT_B);
    SetPower(OUT_B,7);
    Wait(060);
    OnFwd(OUT_A+OUT_B+OUT_C);



    OnFwd(OUT_A+OUT_B+OUT_C);//鼻を描く
    SetPower(OUT_B,7);
    Wait(018);//nose
    Wait(018);





    OnRev(OUT_A+OUT_B+OUT_C);
    OnRev(OUT_A+OUT_B+OUT_C);//目を描く準備
    SetPower(OUT_B,7);
    Wait(020);
    OnFwd(OUT_A);
    OnRev(OUT_B+OUT_C);
    SetPower(OUT_B,7);
    Wait(120);
    OnFwd(OUT_A+OUT_C);



    OnFwd(OUT_A+OUT_C);/右目を描く
    OnRev(OUT_B);
    SetPower(OUT_B,7);
    Wait(050);
    OnFwd(OUT_A+OUT_B+OUT_C);
    SetPower(OUT_B,7);
    Wait(020);



    OnRev(OUT_A+OUT_B+OUT_C);
    SetPower(OUT_B,7);
    Wait(080);
    OnFwd(OUT_A+OUT_B+OUT_C);



    OnFwd(OUT_A+OUT_B+OUT_C);//右目を描く
    SetPower(OUT_B,7);
    Wait(020);//eyes
    Wait(020);

       Off(OUT_A+OUT_B+OUT_C);//off}
 
*苦労した点 [#h5dff449]
**問題点 [#sdebd678]
◦ペンの上げ下げができない。

◦描いた線が薄い。

◦前に鉛筆を取り付けるとプログラムしにくい。

◦同じプログラムでも時々おかしくなる。

**解決 [#h49458d4]
◦3回ロボット本体を組み直し今の形ができた。

◦ペンを持つモーターに回転を掛け濃くした。

◦先輩のページを参考に本体の真ん中に鉛筆を持ってきた。

◦解決できない。

*TAコメント [#g41fac02]
良かった点
+レポートの骨組みはできているので、細部を充実させてください。
+それぞれの問題に対して、解決方法を考えています。

改善点
+プログラムもロボットの写真も説明が必要です。



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