[[2009a]] *目次 [#p341fe6b] #contents *課題1 お絵描きロボット[#jc6c908b] 相手の似顔絵を書くロボットの作成 *ロボット本体 [#g0d94c0f] **ロボットの説明[#gcc04daa] 今回、私たちは四輪のRCX縦型のロボットを作りました。まず最初にできたのが下の写真です。 #ref(2009a/A7/課題1左/初号機.jpg,30%,試作品1号) しかしギアがうまくかみ合わなかったり、小回りがあまり利かなかったので、改良しました。 工夫した点 最初キャタピラを使用していましたが、小回りや、止まりの良さなどを重視して車輪に変更しました。 **ロボットの基本構造[#q63d93c3] #ref(2009a/A7/課題1左/CIMG0247.JPG,70%) ロボットは縦にRCX本体をおき、ペンを一番上にあるモーターからの突き刺し型。そして、ペンの位置ができる限り回転の真ん中にいくようにと考えて4輪駆動の前輪をなるべく前にやり、バランスのとれた形を目指しました。 #ref(2009a/A7/課題1左/CIMG0238.JPG) ***苦労した点 [#o708a5fb] 車輪がうまく噛み合ず、動き方がランダムでした。そしてその結果、プログラム通りにロボットの動きが実行されず、絵がなかなか思い通りにかけませんでした。そしてその問題を解決するために **ロボットのアーム[#za4922a8] 私たちは、ペンを片側に3個のギアをかませることで安定させました。また、先端の固定は、タイヤを支えるパーツとリンクをさせたこと、RCXの本体との間にパーツを一つ入れてあること、棒のパーツを使い、両サイドから圧迫することにより固定をしました。 ***苦労した点 [#se1d4a6e] 最後に改良を加えるにあたり、ペンをできる限り回転の中心に近い位置に取り付けようと試み、3個目のモーターを高い位置にした結果、強度、パーツの数、ペンの安定などたくさんの課題を抱え、多少の強度と、形にこだわらない無理矢理なパーツの組み合わせにより、かろうじてペンの固定に成功しました *プログラムについて[#qd74bf52] **Fe2+のプログラム [#d97e2d07] #define fwd(t) OnFwd(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C);//前進 #define rev(t) OnRev(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C);//後進 #define arev(t) OnRev(OUT_A);Wait(t);Off(OUT_A);//右回り #define crev(t) OnRev(OUT_C);Wait(t);Off(OUT_C);//左回り #define circa(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t);Off(OUT_A+OUT_C);//右回転 #define circb(t) OnFwd(OUT_C);OnRev(OUT_A);Wait(t);Off(OUT_A+OUT_C);//左回転 #define pend OnFwd(OUT_B);Wait(15);Off(OUT_B);//ペンをあげる #define penu OnRev(OUT_B);Wait(12);Off(OUT_B);//ペンを下げる task main () { penu; penu; afwd(350);//顔の輪郭 afwd(350); pend; circa(170); fwd(30); penu; penu; afwd(250); fwd(20); repeat(10)//髪の毛 repeat(10) { cfwd(40); rev(35); } pend; crev(200);//目 crev(200); fwd(100); circa(120); fwd(30); penu; Wait(100); fwd(30);//口 fwd(30); pend; Wait(100); fwd(30); pend; fwd(40); circa(200); fwd(25); penu; fwd(25); } #ref(2009a/A7/課題1左/CIMG0345.JPG,20%) ***工夫した点 [#z81f92bc] 特に苦労したのが顔の輪郭です。これだけはどうしても譲ることができず、何度もプログラムしました。このロボットの大きさの特性を生かし、半円と直線を組み合わせることで、自然な顔の輪郭をつくることができました。髪の毛にブログラムは、複雑だったのプログラムをシンプルにし、できるだけ誤差がでないようにしました。 **リナのプログラム [#naf9d9ef] #ref(2009a/A7/課題1左/CIMG0344.JPG,20%) ***工夫した点 [#p9d3b604] 輪郭をホームベース型にすることにより人間らしくし、髪も、輪郭を書くのではなく細かい動きで髪の毛を表現しました。 *感想 [#l34b15b5] *コメント [#fed478b8] コメントをどうぞ - ロボットの説明を問題→対策の順にしている点が分かりやすいです。プログラムの説明はソースの合間に入れていった方がわかりやすくなると思います。 -- [[こさか]] &new{2009-05-21 (木) 22:48:56}; - プログラムは二つ必要です。 -- [[FI]] &new{2009-05-22 (金) 11:19:46}; #comment