2018a/Member

目次

課題1

これまで住んだことのある都道府県名、市町村名、地区名などの中から2文字以上のものを選び、それをA4の紙を書くロボットを製作せよ。

書いた文字

今回の課題では「江田」という漢字を書くロボットを作った。

ロボットについて

ロボット全体

今回はモーターを3つ使ったxy軸で動くロボットを作った。

―弔鯑阿モーター

横を動くモーター

ペンを上げ下げするモーター

image4.jpg

ロボットの全体図

横を動くモーター

image3.jpg

腕を折りたたむ感じで横に移動させる。

プログラミングについて

最初に細かい定義を設定し、それを組み立てるやり方をとった。

ペンの上げ下げの定義

#define Pen_up OnRev(OUT_B,40); Wait(100); Off(OUT_B);//ペンをあげる
#define Pen_down OnFwd(OUT_B,40); Wait(100); Off(OUT_B);//ペンを下げる

左右の移動の定義

#define LR_10 OnFwd(OUT_A,30);Wait(500);Off(OUT_A);//左から右へ(小)
#define LR_20 OnFwd(OUT_A,30);Wait(1000);Off(OUT_A);//左から右へ(中)
#define RL_10 OnRev(OUT_A,30);Wait(500);Off(OUT_A);//右から左へ(小)
#define RL_20 OnRev(OUT_A,30);Wait(1000);Off(OUT_A);//右から左へ(中) 

上下の移動の定義

#define US_10 OnFwd(OUT_C,30);Wait(500);Off(OUT_C);//上から下へ(小)
#define US_20 OnFwd(OUT_C,30);Wait(1000);Off(OUT_C);//上から下へ(中)
#define SU_10 OnRev(OUT_C,30);Wait(500);Off(OUT_C);//下から上へ(小)
#define SU_20 OnRev(OUT_C,30);Wait(1000);Off(OUT_C);//下から上へ(中)

斜めの定義

#define NNM OnFwd(OUT_A,30);OnRev(OUT_C,30);Wait(400);Off(OUT_AC);//左下から右上へ

全体のプログラム

task main()
{
    #define Pen_up OnRev(OUT_B,40); Wait(100); Off(OUT_B);//ペンをあげる
    #define Pen_down OnFwd(OUT_B,40); Wait(100); Off(OUT_B);//ペンを下げる
    #define LR_10 OnFwd(OUT_A,30);Wait(500);Off(OUT_A);//左から右へ(小)
    #define LR_20 OnFwd(OUT_A,30);Wait(1000);Off(OUT_A);//左から右へ(中)
    #define RL_10 OnRev(OUT_A,30);Wait(500);Off(OUT_A);//右から左へ(小)
    #define RL_20 OnRev(OUT_A,30);Wait(1000);Off(OUT_A);//右から左へ(中) 
    #define US_10 OnFwd(OUT_C,30);Wait(500);Off(OUT_C);//上から下へ(小)
    #define US_20 OnFwd(OUT_C,30);Wait(1000);Off(OUT_C);//上から下へ(中)
    #define SU_10 OnRev(OUT_C,30);Wait(500);Off(OUT_C);//下から上へ(小)
    #define SU_20 OnRev(OUT_C,30);Wait(1000);Off(OUT_C);//下から上へ(中)
    #define NNM OnFwd(OUT_A,30);OnRev(OUT_C,30);Wait(400);Off(OUT_AC);//左下から右上へ
     LR_10;
     Pen_up;
     US_10;
     Pen_down;
     RL_10;
     Pen_up;
     US_10;
     Pen_down;
     NNM;
     Pen_up;
     SU_10;
     LR_10;
     Pen_down;
     LR_20; 
     Pen_up;
     RL_10;
     Pen_down;
     US_20;
     Pen_up;
     RL_10;
     Pen_down;
     LR_20;    //「江」書き終わり
     
     Pen_up;
     US_10;
     Pen_down;
     US_20;
     RL_20;
     SU_20;
     LR_20;
     Pen_up;
     RL_10;
     Pen_down;
     US_20;
     Pen_up;
     RL_10;
     SU_10;
     Pen_down;
     LR_20;   //「田」書き終わり
}

完成形 

image5.jpeg

なんとか見える程度まではできた

反省点

簡単な動作を定義付けし、組み立てていく方法をとってからは楽だったが、それまで時間と労力をかけすぎてしまったのでプログラミングでより簡素にしていくことを心がけていきたい。

感想

初めて本格的に自分でプログラミングをしてみたが、機械といえどプログラミングしたとおりになかなか実行しないことにもどかしさを感じた。次回は今回のをふまえてより正確なプログラミングをできるようにしたい。  


添付ファイル: fileimage5.jpeg 21件 [詳細] fileimage4.jpg 14件 [詳細] fileimage3.jpg 15件 [詳細] fileimage2.jpg 17件 [詳細] fileimage1.jpg 8件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-06-26 (火) 20:32:05 (143d)