課題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

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

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

コメント

コメントをどうぞ。



添付ファイル: fileSN3N0020.jpg 318件 [詳細] fileSN3N0019.jpg 331件 [詳細] fileSN3N0018.jpg 331件 [詳細] fileSN3N0002.jpg 328件 [詳細] fileSN3N0003.jpg 308件 [詳細] fileSN3N0017.jpg 307件 [詳細] fileSN3N0016.jpg 322件 [詳細] fileSN3N0015.jpg 308件 [詳細] fileSN3N0014.jpg 143件 [詳細] fileSN3N0013.jpg 308件 [詳細] fileSN3N0012.jpg 344件 [詳細] fileSN3N0011.jpg 311件 [詳細] fileSN3N0010.jpg 347件 [詳細] fileSN3N0009.jpg 140件 [詳細] fileSN3N0008.jpg 151件 [詳細] fileSN3N0007.jpg 141件 [詳細]

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