2019a/Member

目次

課題について

課題1については,2019a/Mission1を参照してください.

選んだ文字

「香川」という県名を選びました.

ロボット本体について

ロボティクス入門2.jpeg

上の写真は,ロボット全体を撮影したものである.ロボット全体を四輪のタイヤで動かし,モーターの回転を使ってペンを回転させて,ペン先を紙に当てたり,紙から離したりする,コンパクトで単純な構造にした.

プログラムについて

前後の移動,右回転,左回転,ペンの上げ下げをあらかじめ定義した.

f,b,r,lはそれぞれの稼働時間である.

#define pen_up OnRev(OUT_B);Wait(10);//ペンを上げる
#define pen_down OnFwd(OUT_B);Wait(10);//ペンを下げる
#define mae(f) OnFwd(OUT_AC);Wait(f);Off(OUT_AC);//前進
#define ushiro(b) OnRev(OUT_AC);Wait(b);Off(OUT_AC);//後退
#define migikaiten(r) OnFwd(OUT_A);OnRev(OUT_C);Wait(r);Off(OUT_AC);//右回転
#define hidarikaiten(l) OnFwd(OUT_C);OnRev(OUT_A);Wait(l);Off(OUT_AC);//左回転

すべてをサブルーチンでプログラムした.

サブルーチンが8つ超えると,超えた分の定義ができないため,全12画を8つのまとまりに分けた.

sub ichinikaku()//1,2画目
{
    pen_down;
    ushiro(70);
   pen_up;
    migikaiten(20);
    mae(100);
    pen_down;
    ushiro(120);
    pen_up;
}
sub sankaku()//3画目
{
    mae(150);
    migikaiten(120);
    ushiro(50)
    pen_down;
    ushiro(80);
    pen_up;
}
sub yongokaku()//4,5画目
{
    mae(40);
    pen_down;
    OnFwd(OUT_A);
    Wait(120);
    Off(OUT_A);
    pen_up;
    OnRev(OUT_A);
    Wait(120);
    Off(OUT_A);
    pen_down;
    OnFwd(OUT_C);
    Wait(120);
    Off(OUT_C);
    pen_up;
    OnRev(OUT_C);
    Wait(120);
    Off(OUT_C);
}
sub rokkaku()//6画目
{
    mae(230);
    migikaiten(120);
    mae(40);
    migikaiten(120);
    pen_down;
    ushiro(80);
    pen_up;
}
sub nanakaku()//7画目
{
    mae(170);
    migikaiten(140);
    ushiro(80);
    pen_down;
    mae(100);
    pen_up;
    mae(80);
    migikaiten(120);
    ushiro(100);
    pen_down;
    mae(80);
    pen_up;
    mae(40);
}
sub hachikaku()//8画目
{
    mae(15);
    hidarikaiten(120);
    ushiro(120);
    pen_down;
    ushiro(100);
    pen_up;
}
sub kyukaku()//9画目
{
    hidarikaiten(120);
    ushiro(30);
    hidarikaiten(135);
    ushiro(220);
    pen_down;
    ushiro(100);
    pen_up;
}
sub jujuichijunikaku()//10,11,12画目
{
    mae(200);
    hidarikaiten(120);
    pen_down;
    mae(100);
    pen_up;
    hidarikaiten(120);
    mae(50);
    migikaiten(120);
    ushiro(30);
    pen_down;
    ushiro(70);
    pen_up;
    migikaiten(120);
    ushiro(50);
    hidarikaiten(120);
    ushiro(40);
    pen_down;
    mae(120);
    pen_up;
}
task main()
{
    ichinikaku();
    sankaku();
    yongokaku();
    rokkaku();
    nanakaku();
    hachikaku();
    kyukaku();
    jujuichijunikaku();
}

まとめ

書けた文字

ロボティクス入門.jpeg

感想

動作の確認をするたびに,紙との摩擦の影響で,少し動きが変わったので,数値の調整が難しかった.今回は,簡易的な構造のロボットを用い,プログラムを凝ったが,複雑な機械を用いて,簡単なプログラムで済むようなものも作ってみたい.


添付ファイル: fileロボティクス入門.jpeg 4件 [詳細] fileロボティクス入門2.jpeg 6件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-06-06 (木) 23:03:17 (76d)