目次
今回私が作ったものは長野県の「長」という字を書くロボットだ。作るにあたって初めに考えたことは、ロボット自体が車輪で旋回しながら書くタイプとアームを用いて書くタイプのどちらにするかだった。そこで私が書こうとしている「長」という字は主に横棒と縦棒で構成されているので後者のアームを用いたロボットを作ることにした。
私が作ったロボットの一番の特徴は図にあるようにアームがついていることだ。最初の指針通りこのアームにより横線を書くことができるようになった。
左右の動きはアームに任せることにしたので、ボディは前後の動きのみとした。
したがってボディにはモーターAの一つだけを使った。
制作時の問題点としては、アームの動きによるバランスの崩れが挙げられる。そこでバッテリーをアームの反対側に配置し、前後の車輪の間隔も広くした。
また前輪を大きくしてバランスを保たせることに成功した。
モーターはB,Cをそれぞれペンの上下の運動、アームの運動に用いた。
ペンの上下の運動は簡略な方法をとりアームの先端に付けたモーターの回転に合わせてペンが上下に動くようにした。
次に横の移動だが次の画像のギザギザの部品をアームに用いてみた。
この部品は溝があるので歯車としっかりかみ合うことがわかった。そこでこれらの部品を用いることとした。
しかし固定の方法が問題だった。当初はブロックで上下を囲むということを考えた。だがアームの先端のモーターのおもみにより平行に動かなかったり、ブロックが取れてしまったりした。そこで図の白い車輪のような部品で固定してみると平行に動くようになり、安定性も上昇した。
「長」は縦と横の線の組み合わせであるのでどちらかを先に書いたほうが良いと考えた。
よってまずは横線を5本書き、最後に縦線を書くという方針をとり図のように書き順を設定した。
#define kaku(TI) OnFwd(OUT_B);Wait(30);Off(OUT_B);Wait(100);OnRev(OUT_C);Wait(TI);Off(OUT_C);Wait(100);OnRev(OUT_B);Wait(30);Off(OUT_B);Wait(100);OnFwd(OUT_C);Wait(TI+10);Off(OUT_BC);
#define tobe(TA) OnFwd(OUT_A);Wait(TA);Off(OUT_A);Wait(100);
task main() { kaku(17);//1.下の短い横線を書く tobe(15); kaku(35);//2.一番長い横線を書く repeat(3) { tobe(15); kaku(23); } //3.4.5.上の3つの横線を書く
OnRev(OUT_C); Wait(23); Off(OUT_C); Wait(100); OnFwd(OUT_B); Wait(30); Off(OUT_BC); Wait(100);//もとへ戻してしまったアームを再び伸ばす
OnRev(OUT_A); Wait(75); Off(OUT_A); Wait(100);//6.縦棒を引く
OnFwd(OUT_AC); Wait(27); Off(OUT_ABC); } //7.アームを動かしながら進むことで斜めの線を書く
書いた結果、図のような字になった。大体はできていると思うがところどころの点が非常に目立つと感じた。
これはペンの上下の動きの方法が大雑把すぎた可能性があるので上へ垂直に引っ張り上げる機構を作ればよかったと感じた。