§ハート型を描くロボットのプログラム
task main() { OnFwd(OUT_A); Wait(285); //ここまででハートの左上を描く SetPower(OUT_A,7); SetPower(OUT_C,2); OnFwd(OUT_A+OUT_C); Wait(100); //ハートの左半分完成 SetPower(OUT_C,7); OnRev(OUT_A); OnFwd(OUT_C); Wait(80); //方向転換 SetPower(OUT_A,2); SetPower(OUT_C,7); OnRev(OUT_A); OnRev(OUT_C); Wait(100); //ハートの右下 Off(OUT_A); OnRev(OUT_C); Wait(300); //右上も完成 Off(OUT_A); Off(OUT_C); //スタート地点に戻ってる }
コメント
ハートの上部は、片方のタイヤのみを回転させてカーブを描かせました。 ハートの下部は、左右のモーターの出力をかえ、微妙に曲線になるようにし、 よりハート形らしい図形になるようにしました。 本体は二輪のロボットで、ペンがタイヤ間の中心に位置しています。 ペンの固定にはゴムも利用し、ソフトに支えられるようにしました。 また、二輪で不安定なので、バランスを取るために三角型の頂点になるような位置に、 時計皿の形をしたパーツをつけました。 このパーツは滑らかな形なので、紙からはみだしても引っかからず、 ロボットがスムーズに進んでくれました。 しかし折り返し部分ではどうしてもずれが生じてしまいました。 ロボットの走行時間の調整が一番難しかったです。 スタート位置やペンの状態などで、走らせるたびに少しずつ違う図形を書いてしまうのも大変でした。 でもハート形(に見えなくもないもの)を描いてくれたときは感動!! 馬鹿な子が可愛く思えた瞬間でした。