[[ホームページ作成の注意点]]
-[[2012a/a2/Hato/M1]]-
-[[2012a/A2/Hato/M1]]-

目次

#contents

*課題1 似顔絵を書くロボット [#u14335b1]

**ページ作成者 [#i3188808]
Hato

*ロボット本体 [#ia4225aa]
僕たちは、お絵かきロボットを作る際、足となるドライブベース、ペンの上げ下げをする
ベルトコンベアー、の二つを考えて作った。写真のように、紙の上を走って描くロボットである。
#ref(DSC_0023.JPG)

**ドライブベース [#s1a0294d]
初めは、もっと大きいタイヤを使っていたが、どうしても紙を巻き込んでしまうので写真のように、タイヤを小さくした。
#ref(DSC_0018.JPG)
また、このままでは、安定しないので、補助輪もつけた
#ref(hozyorin.png)
これで安定するようになった。特に前輪は地面と接触していないが、ロボットが傾くのを防ぐには、じゅうぶんだった。
**ベルトコンベアー [#if38fe0e]
初め、ペンをアームで上げる予定だったが、~
 �.撻鵑鮠紊欧觝檗�安定しない~
 �△澆鵑覆笋辰討い�~
の二つの理由でやめた~

そうして、決めたのが、''ベルトコンベアーを使う方法である!''
#ref(beruto.png)*プログラム [#m07591ad]
これのメリットは''ペンを紙に対して、垂直に上下できることである!''
しかし、僕たちは、ある課題に直面した。~
 それは、''エンジンのパワーと強度の両立''である。~
詳しくいうと、エンジンのパワーを上げると、本体が耐えられなくなり、壊れてしまうが、パワーを下げると、ペンが動かないのだ(汗)~
こうして考えたのが、これ↓~
#ref(DSC_0020.JPG)
見にくいが、モーターから3つのギアがかみ合ってゴムベルトでベルトを動かしている。ギアをだんだん大きくしていくことにより、パワーを上げ、かかる力を弱いところにかけないようにしてパワーと強度の両立に成功した(やったね!)
*プログラム [#f98781f9]
こんなかんじ

 sub Active_pen()
 {
    PlaySound(SOUND_UP) ; 
    OnFwd(OUT_B); //ペンを有効にする
    Wait(60);
    Off(OUT_B);
 }

 sub Deactive_pen()
 {
    PlaySound(SOUND_DOWN) ; 
    OnRev(OUT_B); //ペンを無効にする
    Wait(63);
    Off(OUT_B);
 }

 sub Turn_Right_Alpha()
 {
    OnFwd(OUT_A); //右回転その1
    OnRev(OUT_C);
    Wait(30);
    Off(OUT_AC);
 }

  sub Turn_Right_Bravo()
 {
    OnFwd(OUT_A); //右回転その1
    OnRev(OUT_C);
    Wait(20);
    Off(OUT_AC);
 }

 sub Turn_Left_Alpha()
 {
    OnRev(OUT_A); //右回転その1
    OnFwd(OUT_C);
    Wait(20);
    Off(OUT_AC);
 }

 sub Turn_Left_Bravo()
 {
    OnFwd(OUT_C); //右回転その1
    OnRev(OUT_A);
    Wait(30);
    Off(OUT_AC);
 }


 task main()
 {
    Active_pen();
    SetPower(OUT_B,5);

    OnFwd(OUT_A); //輪郭を書く

 repeat(30){         
    OnRev(OUT_C);
    Wait(1);
    Off(OUT_C);
    Wait(12);
 }
    Off(OUT_AC);
    Deactive_pen();
    Off(OUT_B);

    Turn_Right_Alpha(); //目
    OnFwd(OUT_AC);
    Wait(30);
    Off(OUT_AC);
    Active_pen();
    Off(OUT_B);
    OnFwd(OUT_AC);
    Wait(30);
    Off(OUT_AC);
    Deactive_pen();
    OnFwd(OUT_AC);
    Wait(50);
    Off(OUT_AC);
    Active_pen();
    OnRev(OUT_AC);
    Wait(30);
    Off(OUT_AC);

    Turn_Left_Alpha(); //はな
    Deactive_pen();
    OnRev(OUT_AC);
    Wait(20);
    Off(OUT_AC);
    Active_pen();
    Turn_Left_Alpha();
    Deactive_pen();
 }
#ref(DSC_0027.JPG)
とりあえず、顔である。ロボットばかり気をとられて、プログラミングを忘れていた…。
*感想 [#tf58663e]
正直、先輩たちのロボットが素晴らしすぎるので、初めのうちは、不安しかなかった。しかし、やっていくうちに楽しく思えてきた。~
今回は、あまりうまくいかなかったが次こそ頑張りたい。

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS