自分の名前の中から1字をロボットに書かせる。詳しくは課題1を参照。
私の場合『来』を選びました。
足回りはRISの冊子を頼りに作りました。前のタイヤ二つにモーターを付け、後ろは自由に動きます。
しかし、モーターに直接タイヤを付けていたため、速度が出すぎて文字を書くための微調整ができませんでした。
そこで、自転車のギアをもとに考え、モーターに『歯数の少ないギア』タイヤ側に『歯数の大きいギア』を付けて速度を落としました。
ペンは先輩のを頼りに挟み、上げ下ろしはタイヤで行いました。
また、トルクをかけ続けないと線が書けないことがわかりました。
そこで試行錯誤したところ輪ゴムによってトルクをかけると、輪ゴムが伸びて丁度よくトルクがかり、きれいな線が書けました。
最後にもう一つに工夫は、タイヤ以外の点でペンを支えたことです。
こうすることによって、ロボットが前後に動いてもペンがぶれなくなります。
プログラムは、
#define down OnRev(OUT_B); Wait(110); Off(OUT_B);//ペンを下げる #define up OnFwd(OUT_B); Wait(100); Off(OUT_B);//ペンを上げる #define go_st(t) OnFwd(OUT_AC); Wait(t); Off(OUT_AC); Wait(200);//まっすぐ進む #define turn(t) OnFwd(OUT_A); OnRev(OUT_C); Wait(t); Off(OUT_AC); Wait(200);//右回りする。 task main () { down;//横上 go_st(50); up; turn(53); go_st(25); turn(53); down;//横下 go_st(50); up; turn(106); go_st(25); turn(159); go_st(35); turn(106); down;//縦 go_st(100); up; turn(106); go_st(90); turn(53); go_st(25); turn(78); down;//斜め右上 go_st(30); up; go_st(5); down; go_st(50); up; turn(106); go_st(85); turn(133); go_st(30); turn(133); down;//斜め左上 go_st(30); up; go_st(5); down; go_st(50); up; }『来』という漢字は、直線でも表せるので大変助かりました。