課題1

 お絵描きロボットの作成。
 パートナーの顔を描くロボットを作る。

メンバ

 梅田
 日高

ロボットについて

初期型

SN3N0013.jpg

 アームについては、こんなパーツを見つけたのでとりあえず組んでみたが
SN3N0017.jpg
 最初に作ったのは接続が困難だったのでボツに。(写真撮ってないから再現不可)

 仕方がないから接続しやすいように試行錯誤した結果こうなった。
SN3N0010.jpg

 別アングルから。モーターの下部に薄いレゴをいくつか重ねて接続しやすいようにした。
SN3N0011.jpgSN3N0012.jpg
 

 結局タイヤがでかすぎて小回りが利かないのでボツに。
 最初に組んだときは完璧だと思ったのになあ。

後期型

SN3N0003.jpg

 でかいのがダメなら小さくしようという安直な考えで、タイヤを小型のものに変更。
 しっくりきたのでこれで確定。

 タイヤの変更に伴いアームも少し変更した。
SN3N0002.jpgペンを上下させるパーツの向きを変えただけ。

アームについて詳しく見てみる

SN3N0019.jpg

 ギア部分。このマシンの心臓部といっても過言ではない。と思う。

SN3N0018.jpg

 試運転のときにアームが下がりすぎてアームがロボットを押し上げてロボットとアームが崩壊した。
 だから、ペンが下がりすぎないようにストッパーを付けた。動作に支障もでなかった。~ 

SN3N0020.jpg

 ペンが前後にずれないように色々試した。輪ゴムで固定するだけでは不安だったので試行錯誤した。
 結果、このように小さい棒みたいなパーツで前後に動かないようにした。

プログラムについて

梅田のプログラム

#define TIME 20
#define pen_down OnFwd(OUT_B);Wait(TIME);
#define pen_up OnRev(OUT_B);Wait(TIME);

task main() {

輪郭を書き始める

pen_down;
OnFwd(OUT_A);
Wait(900);
Off(OUT_A);
pen_up;
OnFwd(OUT_C);
Wait(50);
OnRev(OUT_A+OUT_C);
Wait(50);

目を書き始める

repeat(2)
{
OnFwd(OUT_A+OUT_C);
Wait(10);
pen_down;
Wait(20);
pen_up;
}
Off(OUT_A+OUT_C);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(60);
Off(OUT_A+OUT_C);
OnRev(OUT_A+OUT_C);
Wait(80);
Off(OUT_A+OUT_C);

口を書き始める

pen_down;
OnRev(OUT_C);
Wait(60);
pen_up;
OnFwd(OUT_A);
Wait(100);
Off(OUT_A+OUT_C);
OnFwd(OUT_A+OUT_C);
Wait(50);
Off(OUT_A+OUT_C);

鼻を書き始める

pen_down;
OnRev(OUT_A+OUT_C);
Wait(20);
pen_up;
Wait(100);
Off(OUT_A+OUT_C);
}

輪郭を書くのに苦労しました。時間を細かく確認しながらやったため綺麗な円が書けよかったです。 髪の毛なども書ければよかった。

完成した絵

SN3N0015.jpg

かわいらしい似顔絵になった。日高君に似てるかも(^−^)

日高のプログラム

sub pen_up()
{
OnRev(OUT_B);
Wait(20);
Off(OUT_B);
}

sub pen_down()
{
OnFwd(OUT_B);
Wait(20);
Off(OUT_B);
}

#define go(t) OnFwd(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C);
#define back(t) OnRev(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C);
#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); 

task main()
{
pen_down();//まず輪郭を描く
OnFwd(OUT_A);
Wait(850);
Off(OUT_A);
pen_up();
OnFwd(OUT_C);//向きを調整
Wait(50);
Off(OUT_C);
go(50);//距離を調整
pen_down();//右目を描く
turn_left(20);
pen_up();
back(40);
pen_down();//鼻を描く
turn_left(10);
pen_up();
turn_right(10);
back(40);
pen_down();//左目を描く
turn_right(20);
pen_up();
turn_left(60);
back(30);
turn_left(30);
pen_down();//最後に口を描く
turn_left(50);
pen_up();
go(150);
}

輪郭は割とあっさりできました。ただ目、鼻、口をどうやって描くか悩み、その結果髪の毛まで手がまわりませんでした。

完成した絵

SN3N0016.jpg

感想(苦労したあるいは悩んだ点)

   ロボット制作に関してはアームが完成した時点で、
 ほぼ完了した。(まあアームの完成に時間が掛ったのだが。)
 
 プログラムの方は微調整に手間がかかった。
 途中で心が折れそうになった。
 とりあえず自分のイメージには近づいたと思う。
 
 似顔絵のはずだが。まあ、予想通りというか、似ない。

コメント

コメントをどうぞ。

  • ポイントをきちんと押さえていると思います。ペンの上げ下げの機構をきちんと説明しているのは良いと思います -- FI? 2010-05-21 (金) 07:59:47
  • やや項目が簡素なので、問題点と工夫など充実させてみて下さい -- TAKA? 2010-05-21 (金) 12:46:12
  • ロボットの説明は良いと思います。あとは工夫した点などを充実させてください。また、プログラムは空行やインデントを用いた方が見やすく、理解しやすいと思います -- FI? 2010-07-29 (木) 10:20:27


添付ファイル: fileSN3N0020.jpg 180件 [詳細] fileSN3N0019.jpg 208件 [詳細] fileSN3N0018.jpg 181件 [詳細] fileSN3N0002.jpg 184件 [詳細] fileSN3N0003.jpg 185件 [詳細] fileSN3N0017.jpg 175件 [詳細] fileSN3N0016.jpg 192件 [詳細] fileSN3N0015.jpg 186件 [詳細] fileSN3N0014.jpg 90件 [詳細] fileSN3N0013.jpg 191件 [詳細] fileSN3N0012.jpg 191件 [詳細] fileSN3N0011.jpg 198件 [詳細] fileSN3N0010.jpg 195件 [詳細] fileSN3N0009.jpg 90件 [詳細] fileSN3N0008.jpg 112件 [詳細] fileSN3N0007.jpg 98件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-07-30 (金) 16:39:47 (3252d)