2011a

2011a/A8/課題/プログラミングの説明

目次

課題1

A4の紙に似顔絵を書くロボットの作成。

メンバー紹介

ロボット

ペンについて

初めはアームの形にしていたが、アームの動きが速すぎてペンに遠心力がはたらいたため、パーツに負荷がかかってしまった。そこでエレベータ式に変更し、スムーズに動けるようにした。

土台について

土台は小回りがきき、スムーズに動くタイヤにした。

工夫について

ペンを前につけたので土台の前の部品を取り除いた。前に重心が偏ったためパーツを少しつけたした。

問題点について

ペンをつけている部分が重すぎて、勝手に下がることがある。また、うまく固定できていないため、ペンがぐらぐらである。

プログラム

中島

動く時間が決まっていないので、変数tを使って任意の時間をとった

#define down OnFwd(OUT_B);Wait(5);Float(OUT_B);
#define up OnRev(OUT_B);Wait(5);Float(OUT_B);
#define turn_left(t) OnRev(OUT_A);OnFwd(OUT_C);Wait(t);Float(OUT_A+OUT_C);
#define turn_right(t) OnRev(OUT_C);OnFwd(OUT_A);Wait(t);Float(OUT_A+OUT_C);
#define go_straight(t) OnFwd(OUT_A+OUT_C);Wait(t);Float(OUT_A+OUT_C);
#define go_back(t) OnRev(OUT_A+OUT_C);Wait(t);Float(OUT_A+OUT_C); 
task main()
{
turn_left(332);//輪郭
up;
go_back(10);
down;
turn_left(35);//口
up;
go_back(18);
turn_right(15);
down;
turn_left(15);
go_back(25);//鼻
up;
go_straight(40);
turn_left(75);
go_back(80);
down;
go_straight(20);//目
go_back(20);
go_straight(20);
up;
go_straight(10);
down;
go_straight(20);//目
up;
}

石井

#define turn_right(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t);Off(OUT_A+OUT_C);
#define turn_left(t) OnFwd(OUT_C);OnRev(OUT_A);Wait(t);Off(OUT_A+OUT_C);
#define up OnRev(OUT_B);Wait(5);Float(OUT_B);
#define down OnFwd(OUT_B);Wait(5);Float(OUT_B);
#define go_straight(t) OnFwd(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C);
#define go_back(t) OnRev(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C);

task main()
{
  down;                   //輪郭
  turn_right(330);
  up;
  go_back(30);            //口
  down;
  turn_left(40);
  up;
  turn_left(60);          //目
  go_back(30);
  down;
  turn_right(20);
  up;
  turn_left(20);
  go_back(20);
  down;
  turn_right(20);
  up;
  turn_right(40);         //鼻
  go_straight(20);
  turn_left(60);
  down;
  turn_right(15);
  go_back(10);
  up;
}

感想

コメントをどうぞ



トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2011-07-01 (金) 16:18:10