*はじめに [#fb877586] 今回僕たちのグループではレゴ社マインドストームというロボットの旧モデルRISを使い、似顔絵を描くロボットの本体製作とプログラム製作をしました。~ 今回の課題で注意した点~ ・プログラムをなるべく簡単にする。~ ・A4用紙に収まるようにする。~ ・原則キットの部品を使う。~ ・期限内にすべての課題を終わらす。~ *ロボットの構造 [#r5b83619] 使用したロボット http://yakushi.shinshu-u.ac.jp/robotics/?plugin=attach&pcmd=open&file=DSC_0018-1.JPG&refer=2016a%2FMember%2Fkuzusan%2FMission1 ペンはキットに付属していた輪ゴムで固定した。最初はテープで固定しようかと思ったが、できるだけ付属の部品だけを使わなければいけないので、ゴムをつかうことになった。ただ、輪ゴムだけでは不安定なので、ペンを少しロボットの隙間で固定した。 *プログラム [#ue83175f] ***まず動きを定義する [#ub548b9c] #define go_forward(t) OnFwd(OUT_AC); \ #define go_forward(t) OnFwd(OUT_AC); \ Wait(t);Off(OUT_AC); #define go_back(t) OnRev(OUT_AC); \ #define go_back(t) OnRev(OUT_AC); \ Wait(t);Off(OUT_AC); #define turn_right(t) OnRev(OUT_C); OnFwd(OUT_A); \ #define turn_right(t) OnRev(OUT_C); OnFwd(OUT_A); \ Wait(t);Off(OUT_AC); #define p_up OnFwd(OUT_B); \ #define p_up OnFwd(OUT_B); \ Wait(5);Off(OUT_B); #define p_down OnRev(OUT_B); \ #define p_down OnRev(OUT_B); \ Wait(6);Off(OUT_B); ***顔を描く [#b889cef6] task main () { task main () { p_up; Wait(50); p_down; Wait(100); turn_right(420); //ここで輪郭が完成 Wait(100); p_up; Wait(50); p_down; Wait(100); go_forward(55); Wait(50); p_up; go_back(10); Wait(50); repeat(3) { go_back(45); turn_right(84); go_forward(10); Wait(100); p_down; Wait(100); go_forward(14); p_up; } go_back(45); turn_right(84); go_forward(5); repeat(3) { go_back(45); turn_right(84); go_forward(10); Wait(100); p_down; Wait(100); go_forward(14);//ここでメガネが完成 p_up; } go_back(75); turn_right(84); go_forward(15); Wait(50); p_down; Wait(50); go_forward(15);//ここで口が完成 Wait(50); p_up; ***完成 [#ee60eeab] #ref(./index.jpeg) 顔はいがんでしまったが、メンバー同士が判別できたので成功と言える。 *感想 [#x4ee9817] 正直このゼミがこんなに大変だとは思っておらず、非常に苦労しました。ですが班のメンバーと助けあいながらなんとか完成させられてよかった。次からはもっと効率よく課題をこなしていきたいと思いました。