#contents *課題1 [#z8387f9d] ・A4の紙に松本の大学生活を表す漢字1文字を書くロボットを制作する。 ・7画以上の漢字であること。 ・文字は15cm四方に収まる大きさにすること。 **選んだ漢字 [#o3b79c6b] 私はトヨタの社員になるという将来の夢の実現のために信州大学に入ったので「車」という字にしました。 *ロボットについて [#rba2b7d0] **本体について [#ae3a0a9e] 私は本体の右がわに回転するアームをつけました。 **アーム部分について [#q11b7f8c] 筆ペンを使い回転するだけである程度長く線がかけるようにしました。 *プログラミングについて [#kb348121] **書き順 [#v7057eda] 今回は特に書き順にはこだわらずに下の写真のような書き順で「車」を書いた。 #ref(2017a/Member/takato/Mission1/IMG_5305.JPG,100%,結果) **プログラム [#f53c3176] ***工夫した点 [#v7a4ad1b] ・右側にアームを付けたたため両側の車輪が同じ力で動こうとすると右に曲がってしまうので、右側の車輪の力だけ少しつよくした。 ・本体は上下にしか動かさずアームを多動させることによって、全体のバランスが崩れる可能性を少なくさせました。 ***モーターの説明 [#sc9b1d3d] ・回転させるモーターはA,B,Cの3つがあり、それぞれ A:アームを回転させる。 B:右のタイヤを回転させる。 C:左のタイヤを回転させる。 #ref(2017a/Member/takato/Mission1/Image_82df09b.jpg,100%,結果) ***プログラムの説明 [#eab18fcf] #define SPEED 25 //右のモーターの回転速度 #define SPEED2 20 //左のモーターの回転速度 #define TIME 500 //一画目を書く時間 #define TIME3 250 //一画目を書くためにアームを上げる時間 ・一画目の横線を書くプログラム sub RETURN() { OnFwd(OUT_A,SPEED); Wait(TIME3); OnRev(OUT_A,SPEED); Wait(TIME); Off(OUT_A); } ・下に下がるプログラム sub BACK(int time) { OnRev(OUT_B,SPEED); OnRev(OUT_C,SPEED2); Wait(time); Off(OUT_BC); } ・アームを左に動かすプログラム sub LEFT(int time) { OnFwd(OUT_A,SPEED); Wait(time); Off(OUT_A); } ・アームを右に動かすプログラム sub RIGHT(int time) { OnRev(OUT_A,SPEED); Wait(time); Off(OUT_A); } ・前に進むプログラム sub STRAIGHT(int time) { OnFwd(OUT_B,SPEED); OnFwd(OUT_C,SPEED2); Wait(time); Off(OUT_BC); } ***書き出し [#ib204fea] task main () { 一画目 RETURN(); 2画目 BACK(500); LEFT(500); 3画目 BACK(500); RIGHT(500); 4画目 BACK(500); LEFT(500); 5画目 BACK(500); RIGHT(500); 6画目 STRAIGHT(2000); LEFT(250); BACK(2200); 7画目 STRAIGHT(500); LEFT(100); STRAIGHT(1000); 8画目 LEFT(700); BACK(1000); } *まとめ [#m3bd8820] **結果 [#cab1a41c] 上記のプログラムで「車」を書いた結果次の写真のようになった。 #ref(2017a/Member/takato/Mission1/IMG_5308.JPG,100%,結果) **感想 [#a6323408] 一番最初の課題で正直本当にに何もわからない状態だったけど、だんだん進めていくにつれて少しずつコツが掴めてきた感覚があってとても嬉しかったです。 次のタッチセンサーの課題も積極的に取り組んで、できるだけ早くコツがつかめるようになりたいと思います。