[[2009a]]

*目次 [#kf3d7989]
#contents

*課題1/似顔絵ロボット [#p4b903e7]
**メンバー紹介 [#q48d5634]
KIMIYASU…創造主。

YU-KI…名付け親。

ゴンザレス…主人公。A7右のクリスティーナは許嫁。
**課題内容 [#ra4cd80d]
A3用紙に相手の似顔絵を描くロボットを作成する。

•ひとりにつき一つ以上のプログラムを作成すること。

•ペン以外はキットに含まれる部品を使うこと。

•キットに付属の高価な輪ゴムは切れやすいので切れないように十分注意すること。

•改良や調整をしやすくするため、ロボット本体だけでなく、プログラムについても可能な部分についてはサブルーチンや関数、マクロなどを使って部品に分けること。

似顔絵が相手に似ている程、ロボットにアレンジ性が見られるとポイントが高くなる。


**ロボットの作成 [#k4ad2886]
私たちは2人ともレゴブロック愛好家ということで、本体はすぐに完成しました。

過去の先輩方のページから知恵をかりて誕生したイカしたクールガイ...その名はゴンザレス!!

ただ、プログラミングは2人とも苦手だったので少々苦労しました。 


***足の部分 [#cb64d0af]
車体の安定感のことを考えてタイヤを採用しました。

2輪式にしたのでバランスをとれるように車体の前後に支えを取り付けました。
#ref(gm.jpg)
#ref(GIMG0249.JPG)


***ペンを持つ部分 [#e19ae083]
似顔絵を描く場合、ペンを上げたり下げたりする動作が必要となってきます。ペンを紙につけたまま固定するとゴチャゴチャになっちゃいますからね。

ペンのブレをなくすために、ペンを両サイドから挟み込む形をとりました。上下運動はペンを挟む2つのタイヤが回転することによって可能になりました。
#ref(gu.jpg) 


***全体図 [#s553649e]
...そして完成したのがこちら。
#ref(gnm.jpg)
#ref(CIMG0249.JPG)

翼をつけることによってゴツいゴンザレスがちょっとキュートになりました(´艸`)♡笑`` 


**プログラミング [#o5dfbda2]
各自が似顔絵プログラムを作成する。

更に関数やマクロ、サブルーチンを用いてプログラムを部品に分ける。

***KIMIYASU [#xcd51133]
 #define PM_T 20
 sub pen_up()
 {
 OnFwd(OUT_B);
 Wait(PM_T);
 Off(OUT_B);
 }
 sub pen_down()
 {
 OnRev(OUT_B);
 Wait(PM_T);
 Float(OUT_B);
 }
 task main()             
 { 
 OnFwd(OUT_A);             輪郭
 Wait(630);
 Off(OUT_A);       輪郭完成
 OnRev(OUT_C);      前髪
 OnFwd(OUT_A);    
 Wait(145);
 Off(OUT_A+OUT_C);    前髪完成
 pen_up();
 OnRev(OUT_A+OUT_C);   口
 Wait(50);
 Off(OUT_A+OUT_C);
 pen_down();
 OnRev(OUT_A+OUT_C);   
 Wait(30);
 Off(OUT_A+OUT_C);    口完成
 pen_up();
 OnFwd(OUT_A+OUT_C);   左目
 Wait(26);
 Off(OUT_A+OUT_C);
 OnRev(OUT_A);
 OnFwd(OUT_C);
 Wait(30);
 Off(OUT_A+OUT_C);
 OnFwd(OUT_A+OUT_C);
 Wait(10);
 Off(OUT_A+OUT_C);
 pen_down();
 OnFwd(OUT_A+OUT_C);  
 Wait(30);
 Off(OUT_A+OUT_C);   左目完成
 pen_up();
 OnRev(OUT_A+OUT_C);  右目
 Wait(50);
 Off(OUT_A+OUT_C);
 OnRev(OUT_A);
 OnFwd(OUT_C);
 Wait(10);
 Off(OUT_A+OUT_C);
 pen_down();        
 OnRev(OUT_A);
 OnFwd(OUT_C);
 Wait(30);
 Off(OUT_A+OUT_C);   右目完成
 }
顔の中身のプログラミングはつらかったです!!でも完成万歳!!

***YU-KI [#xef8e766]
KIMIYASUは優しい顔立ちをしているのでほんわかした感じのイメージで…

完成予想図はこんなカンジ☆
#ref(似顔絵.jpg)

 〜基本プログラム〜
 #define pen_down OnFwd(OUT_B);Wait(15);Off(OUT_B);  //ペンを下げる
 #define pen_up OnRev(OUT_B);Wait(10);Off(OUT_B);  //ペンを上げる
 #define go_st(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);  //後退
 #define right_left  OnFwd(OUT_A);Wait(50);Off(OUT_A);OnFwd(OUT_C);Wait(50);Off(OUT_C);  //左右に前進 
 #define maru OnFwd(OUT_A);Wait(600);Off(OUT_A);  //円を描く(輪郭) 
 

 〜メインプログラム〜
 task main ()
  {
  pen_down;
  maru;
  pen_up;  //輪郭完成!!
  OnRev(OUT_C);Wait(140);Off(OUT_C);
  go_back(70);  //軌道修正
  pen_down;
  right_left;
  right_left;
  right_left;
  pen_up;  //前髪完成!!
  OnFwd(OUT_C);Wait(300);Off(OUT_C);
  go_back(120);  //軌道修正
  pen_down;
  go_st(40);
  pen_up;  //左目完成!!
  go_st(40);
  pen_down;
  go_st(20);
  pen_up;  //右目完成!!
  OnRev(OUT_C);Wait(500);Off(OUT_C);
  go_back(100);  //軌道修正
  pen_down;
  go_back(30);
  pen_up;  //鼻完成!!
  go_st(100);
  OnRev(OUT_A);Wait(150);Off(OUT_A);  //軌道修正
  pen_down;
  go_back(25);  //口完成!!
  }



**完成図 [#d6113e06]
***KIMIYASU [#c0be582d]
ついに出来上がったYU-KIゴンザレスがいなければここまでできなかっただろうに・・・

#ref(似顔絵.JPG)

特徴の大きな目をうまく書けませんでした(・_;)

***YU-KI [#a659de22]
無事プログラミングを終えたゴンザレスが描いたKIMUYSUがこちら↓
#ref(YU-KI似顔絵完成図.jpg)
ほんわか…というよりは二ヒルなカンジになってしまいました/(>A<)\

ま・いいでしょう(・∀・)))笑


**創意工夫した点 [#rfbb4677]
•2輪式だからバランスが悪い→車体の前後に支えを設置

•足が弱い(走らせるとタイヤが吹っ飛ぶ)→タイヤを小さいものに換え、ギアを挟んで強化

#ref(ゴンザレス車輪.JPG)

•見た目がゴツすぎる→翼をつけてキュートさをプラス♡

#ref(gb.jpg)

•ペンがぶれる→タイヤとギアをふんだんに使って補強


**感想 [#u5652e96]
***KIMIYASU [#r447f1ec]
ロボットを作るのは子供の頃に戻った感じでとってもやりやすかった!でもプログラミングがデラ難しかった。

自分の思っ通りにペンが走ってくれなくて、思い通りにならなくて徹夜になって物思いにふけた。

でも、初めは輪郭も描けなくて、何度もやり直ししたが、顔になってるからよかった。それに、ゴンザレスは翼がついて、見た目も強そうで気に入りました!

今回は計画性がなかったから徹夜になってしまったので次回からは余裕を持って行動したいです。


***YU-KI [#o34cdcd6]
レゴブロックをいじったのは6年ぶりくらいだったので最初は戸惑いましたが、慣れてきてからは楽しくロボットを製作することができました。

最終的にとってもカッコイイ子が出来上がったので満足です♡


プログラミングは初めての経験でとても苦労しました。

でも、まわりのみんなのおかげでなんとか完成させることができました☆

みんなありがとう(*´3`)ノ♡♡♡


*コメント [#o52d17c9]
このページに関する御意見・ご感想などありましたら、お書きください。m(_ _)m


- ロボットは、画像と説明でわかりやすい説明です。ただ、プログラムに説明が欲しいところ。説明をつけることは、課題の条件「可能な部分についてはサブルーチンや関数、マクロなどを使って部品に分けること。」を満たすプログラムに改良する方法が見つけるヒントになります。 -- [[こさか]] &new{2009-05-21 (木) 22:38:05};
- (訂正) ×「画像と説明で」→○「画像で」 すみません -- [[こさか]] &new{2009-05-21 (木) 22:39:09};
- ロボットの説明は詳しくて良いです。あとは、マクロやサブルーチンを使ってください -- [[FI]] &new{2009-05-22 (金) 11:15:46};
- プログラムの美しさが格段にアップしています!ゴンザレスとクリスティーナの関係に驚きを隠せません。 -- [[こさか]] &new{2009-05-28 (木) 23:30:11};

#comment

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS