目次

課題1

15僉15僂了擁の中に、七画以上の今年の大学生活を表す漢字一文字を書く。

選んだ文字

大学生になり、一人暮らしを始めたので「住」を選びました。

ロボットの説明

ロボットの全体

今回は主に、ペンを車型のロボットに装着するか、ペンをx,y,軸に移動するロボットに装着するかに分かれたが、私達のロボットはx,y,軸に移動するロボットを作り上げた。 モーターを3つ使い、1つ目はX軸のアームで、2つ目はY軸のためのタイヤ、3つ目はペンの上下に使用する。

ロボットの全体1
ロボットの全体2

前後の動き

右後輪と左後輪を軸でつなぎ、曲がったり、左右別々に動かないようにした。

軸についたギアをモーターで回すことで前後に動く。

後輪

アーム部分

細長いレゴのブロックに歯を取り付け、Y軸方向に伸びたり、縮むようにした。

アーム

アームの先の部分

初めはペンを上下に動かすモーターに普通のギアを装着していたため、文字が破線になりやすくなっていた。トルクギアを装着することにより、ペン先を押さえつけることができ、破線から実線に変えることができた。しかし、トルクギアに変更すると、ペンの重さでペン先が常時紙に着いた状態になってしまった。これを解消するため輪ゴムを装着し、ペンを上げた状態をつくれるようにした。

ペンを輪ゴムで固定すると、ペン先と紙の摩擦によりペンが固定位置より大きく動いてしまった。そのためレゴブロックで固定した。

アーム

この機体はアームが伸びるほど、重心が車体の中央から外れていき転倒してしまう可能性が大きくなる。転倒防止のためアームの先にキャスターをつけることにより、安定感がでた。

アーム

プログラム

文字の書き方

正規の書き方とは違う書き方をしている。

書き順

プログラム全体

前後と横の動きをあらかじめ定義している。

ペンを上げる動作は、ギアの動力をなくして、ゴムの力でペンが上がるようになっている。

ペンを下げた後とペンを上げる前に待ち時間を入れることで、書き終わりと書き始めに待ち時間を作った。

t,z,m,q,はそれぞれの稼働時間にしてある。

#define pen_down OnFwd(OUT_C);Wait(100);//ペンを下げる
#define pen_up Wait(100);Off(OUT_C);//ぺんを上げる
#define yoko_nobiru(t) OnFwd(OUT_B);Wait(t);Off(OUT_B);//アームを伸ばす
#define yoko_chijimu(z) OnRev(OUT_B);Wait(z);Off(OUT_B);//アームを縮める
#define mae(m) OnFwd(OUT_A);Wait(m);Off(OUT_A);//車を手前に走らせる
#define ushiro(q) OnRev(OUT_A);Wait(q);Off(OUT_A);//車を奥に走らせる

一画目から七画目までサブルーチンでプログラムをし、変更しやすくしている。

sub ichikaku()//一画目
{
    pen_down;
    OnRev(OUT_A);
    OnFwd(OUT_B);
    Wait(020);
    Off(OUT_AB);
    pen_up;
}
sub nikaku()//二画目
{
    yoko_chijimu(009);
    mae(013);
    pen_down;
    mae(040);
    pen_up;      
}
sub sannkaku()//三画目
{
    ushiro(005);
    yoko_nobiru(015);
    pen_down;
    yoko_nobiru(030);
    pen_up;
}
sub yonnkaku()//四画目
{ 
    ushiro(020);
    yoko_chijimu(010);
    pen_down;
    yoko_chijimu(015);
    pen_up;
}
sub gokaku()//五画目
{
    yoko_chijimu(010);
    ushiro(020);
    pen_down;
    yoko_nobiru(030);
    pen_up;
}
sub rokkaku()//六画目
{
    yoko_chijimu(016);
    ushiro(006);
    pen_down;
    OnFwd(OUT_A);
    OnFwd(OUT_B);
    Wait(005); 
    Off(OUT_AB);
    pen_up;
}
sub nanakaku()//七画目
{
    yoko_chijimu(002);
    mae(002)
    pen_down;
    mae(037);
    pen_up;
}
task main()//メイン
{
    ichikaku();
    nikaku();
    sannkaku();
    yonnkaku();
    gokaku();
    rokkaku();
    nanakaku();
}   

まとめ

書けた文字

破線をなくすためにペンを通常よりも少し下につけたため、書き始めと書き終わりに余分な線ができてしまった。

書けた文字

感想

初めはモーターの動く時間と距離の比をもとめて、理論値でプログラムを組んでみたが、思っていた軌道と違う線が出来上がってしまった。機体にはクセがあるので実際にやりながら、プログラミングをする必要あることがわかった。機体の作製には苦労したが、電池の電圧低下による影響が少ない機体が出来上がったのでよかったと思う。まだ改良すれば綺麗に書けるかもしれないが、読める文字が出来上がったのでよかった。


添付ファイル: fileDSC_0336.JPG 92件 [詳細] fileDSC_0324.JPG 84件 [詳細] fileDSC_0326.JPG 107件 [詳細] fileDSC_0328.JPG 110件 [詳細] fileDSC_0330.JPG 130件 [詳細] fileDSC_0329.JPG 86件 [詳細] fileDSC_0332.JPG 79件 [詳細] fileDSC_0323_1.JPG 139件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-11-10 (木) 18:51:38 (1015d)