[[2008b/MemberOnly/進行状況A]] #hr CENTER:&size(25){似顔絵ロボットー突き刺し型ロボットー}; #hr CENTER:製作者:滝沢 東山 実験中 &ref(2008b/A7/課題1右/課題1マシン全体図1.jpg1,75%,マシン); 目次 #contents ------- 今回、我々のコンセプトはシンプルイズ•ザ•ベスト。 そのコンセプトで製作したのがアーム突き刺し型ロボットである。 *突き刺し型ロボットの利点 [#la6ffb39] -製作するのが簡単(ギアを一個も使わず作成できる)。 -自分で接地してくれるのでアームの上げ下げのプログラムの調整が不要(若干必要だが他のよりは簡単にできる)そのため、筆圧などのブレが生じにくい。 -アームの上げ下げの見た目が早い。 -すぐに解体できるので持ち運び便利。 -動きが大きいのでわくわくする(?)。 これぞロボット!という感じを出したかったので突き刺し型にして、なおかつシンプルな方が見た目がスマートでいいということでこの形になりました。 *苦労した点 [#u55de425] - 1ペンの固定が難しくてアームを上げ下げするたびにペンが上下する。 - 2アーム自体が柔いため筆圧が一定にならない。 - 3上の二つを防ぐためにアームを改良したらモーター固定部分が耐えきれずに分解してしまう。 - 4ペンの左右のブレ。 - 5アームの駆動が強すぎて車体が浮く。 1と2と4は予想していた問題でしたが、3と5が起きたときは二人で爆笑したもんでした。しかし、笑っている場合ではなくて早急に直さないと部品が痛む可能性もあり色々と実験を重ねました。 その結果以下の改良を施すことになりました。 - 1ペンがちゃんとアームに固定をできるように、とにかくガチガチに固定した。 - 2さらに、ペンをアームにガチガチに固定することによって、アーム自体が重くなり、筆圧を一定にすることができた。 - 3車体が浮くのはプログラムのアームの上げ下げの前にOffを入れることで改善 - 4左右のブレに対しては一カ所で固定するのではなくて立体的に固定することでブレをなくした。 ペンを固定するために力のモーメントを考えて固定、2はやっていたら安定してきて気がついた。ただし2を行った結果アームがより強力になりモーター分解や車体が浮くのを増長した。 そのため3の提案は筆圧を一定するのに大きく寄与した。これに気がつくのに時間がかかった。 4は二人でペンをいじくり回した結果たどり着いた。ここらへんから机上の理論で終わるのではなく、とりあえず実験してみることの大切さを覚えていった。 *似顔絵を書くプログラムの紹介 [#n9e8de4f] - 1滝沢の場合 - 2東山の場合 なぜだか上から目線になった。このようなプログラムにする気はなかったけど、面白いからそのままにしてみた。 #define PEN_TIME 20 sub up_arm() //ペンをあげるサブルーチン { OnRev(OUT_B); Wait(12); Off(OUT_B); Wait(5); } sub down_arm () { OnFwd(OUT_B);//ペンをさげるサブルーチン Wait(11); //モーターではあまり下ろさず重力で下ろすように工夫 Off(OUT_B); Wait(PEN_TIME);// このOffタイムでちゃんと接地するまで次に移項しないようにした } task main() { down_arm(); // 顔の輪郭 OnFwd(OUT_C); Wait(830); Off(OUT_A);//Offを入れることでアームの接地がぶれるのを防ぐ up_arm(); OnRev(OUT_A); Wait(70);//目の作成に移る。 Off(OUT_A); //目をかく位置にまで微調整 OnRev(OUT_C); Wait(30); Off(OUT_C); OnRev(OUT_A+OUT_C); Wait(80); OnFwd(OUT_A+OUT_C); Wait(50); Off(OUT_A+OUT_C); Wait(20); down_arm();//目をかいていく。 OnFwd(OUT_A+OUT_C); Wait(30); Off(OUT_A+OUT_C); Wait(20); up_arm(); OnFwd(OUT_A+OUT_C); Wait(30); Off(OUT_A+OUT_C); Wait(20); down_arm(); OnFwd(OUT_A+OUT_C); Wait(30); Off(OUT_A+OUT_C); Wait(20); up_arm(); OnFwd(OUT_A+OUT_C);//鼻を書くために位置調整に入る Wait(40); Off(OUT_A+OUT_C); Wait(20); OnRev(OUT_A+OUT_C); Wait(5); Off(OUT_A+OUT_C); OnRev(OUT_C); OnFwd(OUT_A); Wait(100); Off(OUT_C+OUT_A); OnRev(OUT_A+OUT_C); Wait(40); Off(OUT_A+OUT_C); Wait(20); down_arm();//ここから鼻を作る OnRev(OUT_A+OUT_C); Wait(15); Off(OUT_A+OUT_C); Wait(20); OnFwd(OUT_A+OUT_C); Wait(20); up_arm(); //鼻終わり OnRev(OUT_C); OnFwd(OUT_A);// 口をにっこりするために移動 Wait(70); OnFwd(OUT_A+OUT_C); Wait(20); Off(OUT_A+OUT_C); down_arm();//回転を利用して口をかく OnRev(OUT_C); OnFwd(OUT_A); Wait(140); Off(OUT_A+OUT_C); up_arm(); } 自分が気をつけた点は、こまめにOffを入れて車体が浮かないようにすることです。浮くとペンもぶれてかけなくなるので一個一個いれていきました。 現段階ではプログラムが長いので非常にごちゃごちゃしているので簡単にできないか、似顔絵などもシンプルすぎるのでせめて髪の毛だけでもかけないかと模索中です。 見下した感じになるのは意外に面白くできたのでこのまま採用しました! *プログラムの作成についての苦労 [#r226149f] -突き刺し型で接地する際の調整はなかったが、アームを重くした分上げ下げでの力が強すぎて、車体が安定しなくなってしまった。 -マシンの構造上、小回りが利かないので小さい円を書くのに苦労した。(実際は使用しないでかける方法に走った) - *滝沢と東山の奮闘日誌 [#u1068eb7] -10/23 滝沢が風邪でダウン ロボットがないために作成できず。お先真っ暗スタート。 -10/28 アーム作成に取りかかる。この段階ではアームはただ固定しただけの貧弱なものであったため、上げ下げするのとともにペンが上下したり、左右のぶれがひどくとても使えなかった。しかもB端子が使えずプログラムも作れない。先生に助けてもらうことに。 -10/29 先生のところにいき、無事B端子復活! ここから始まった。 -10/30 アーム改良に走る二人。ペンが上下しない用にするために固定しようと試みる。とりあえず、二人でいろいろしていたら完成していた。 -10/31 アームが強すぎてモーターが吹っ飛んだ。 モーターを固定できるように改良した。アームもそれに伴い修正 -11/4 東山の処女作完成。なぜか見下した顔に。続いて滝沢の処女作も完成。無難にできてしまった。 -11/5 ペン圧の安定のためギアの出力、モーターの固定をして左右のぶれをなくすためのバンパーも改良。 東山は絵を改良するも、やっぱり見下した顔に。 *反省点 [#g63f6f6e] *皆さんのコメント [#g72ad519] - テスト -- [[テスター]] &new{2008-11-05 (水) 17:16:51}; #comment