2015a/Member

課題

書道ロボットを作成し、自分の名前の7画以上の漢字を書く。今回は「見」を書いた。

ロボット本体の説明

  • 前後運動 モーターを1つ使用。車体を前後に走らせることで縦の線を書けるようにした。
    S__38232075.jpg
  • 横移動 モーターを1つ使用。ラックギアの上を歯車で走らせることで横線を書けるようにした。
  • ペンの上げ下げ モーターを1つ使用し、タイヤとタイヤの間にペンを挟む形をとった。タイヤを回転させることによって、ペンを巻き上げ上下運動を可能にした。
    S__38232077.jpg

工夫した点

  • 車体バランス 前方に重量のあるアームを搭載したことにより、バランスが悪く車体が傾いてしまった。そこで後方に比較的重いパーツであるタイヤをとりつけ、車体全体にバランスをとった。
  • アーム アームの右側にモーターをとりつけたため右側に重心が偏り安定しなかった。そこで車体と同様に左側にタイヤを取り付けバランスをとり安定した動きを可能にした。
    S__38232074.jpg

プログラムの説明

まず、前後左右、ペンの上げ下げについてをマクロとして定義した。書き順はバラバラなため画像で示す。

無題.png
/*ペンの上げ下げ*/
#define UP OnFwd(OUT_C);Wait(5);Off(OUT_C);
#define DOWN OnRev(OUT_C);Wait(5);Off(OUT_C);
/*左右の移動*/
#define MIGI(MIGI_TIME) OnFwd(OUT_B);Wait(MIGI_TIME);Off(OUT_B);
#define LEFT(LEFT_TIME) OnRev(OUT_B);Wait(LEFT_TIME);Off(OUT_B);
/*前後運動*/
#define GO(GO_TIME) OnRev(OUT_A);Wait(GO_TIME);Off(OUT_A);
#define BACK(BACK_TIME) OnFwd(OUT_A);Wait(BACK_TIME);Off(OUT_A);



task main()
{

   // 1画目

    MIGI(80);
    BACK(50);
    LEFT(80);
    GO(50);
    UP;

   // 移動

    BACK(30);

   // 2画目

    DOWN;
    MIGI(80);
    UP;

   // 移動

    BACK(30);

   // 3画目

    DOWN;
    LEFT(80);
    UP;

   // 移動

    BACK(30);
    MIGI(30);

   // 4画目

    DOWN;
    BACK(50);
    UP;

   // 移動

    GO(40);
    MIGI(30);

   // 5画目

    DOWN;
    BACK(40);
    MIGI(30);
    
}

ロボによる作品

_S__7299075.jpg

問題点

  • 動きがはやかったため毎回安定した動きでかけなかった
  • 縦横の線はうまくできたが、斜めの線ができなかった。
  • ペンの固定が甘く線がずれてしまった

反省

今回のロボットは、全体を通して安定性が低かった。ロボ本体の改良はもちろん、プログラムを工夫して安定性を高めなければならなかった。


添付ファイル: fileS__38232074.jpg 120件 [詳細] file_S__7299075.jpg 128件 [詳細] file_S__7299075.jpg 128件 [詳細] file無題.png 102件 [詳細] fileS__38232077.jpg 109件 [詳細] fileS__38232075.jpg 134件 [詳細] filekakusu.png [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-07-30 (木) 14:29:31