[[2019a/Member]]

目次
#contents



*課題について [#n09c5be2]
私は、滋賀県の県庁所在地である「大津」を書くことにしました。詳しくは[[2019a/Mission1]]を参照してください。


*ロボットの本体の説明 [#qee10873]
私たちは、ロボットをできるだけはやく作り、プログラム作成に時間がかけられるようにしました。

なぜならば、ロボカップの大会などでロボット作成に多くの時間を費やしたために、プログラミングにほとんど時間を割くことができず、負けてしまうチームを見たことがあるからです。

モーター2つで移動し、モーター1つでペンの上げ下げを行うロボットを作成しました。


#ref(IMG_4646.jpeg)
全体図
NXT1つとモーター3つという極めて単純な作りです。

初めは、簡略化のためにNXTをモーターの上に載せておらず、モーター部分だけが動くようにしていました。

しかし、それだと軽すぎたために、モーターが空回りしてしまいました。

そのため、NXTをモーターの上に載せるようにしました。

#ref(IMG_4651.jpeg)
モーターの部分

真ん中のモーターでペンを上げ下げします。

垂直にあげる機構を作っても良かったのですが、ペンが接地しているかどうかが問題なので、モーターの回転運動をそのまま使うことにしました。

しかし、この方法だときちんと接地することが難しいので、上げるときの動作よりも下げるときの動作よりにかける時間を長くすることによって解決しました。

*プログラムの説明 [#nf96d142]

「大津」の書き方
#ref(IMG_4655.jpeg)
写真の通りに書くようにしました。

上げ下げの動作が多いのはプログラムが大変なので、回数を減らすために、できるだけ一筆で書くようにしました。

「大」は一筆で書き、「津」は「大」の終わりからだと、右側から書いた方が移動距離が短くなるので、右側から書き、最後にさんずいを書くことにしました。

横棒は書くのが大変なので、回転の動きで、曲線によって対応するようにしました。



・プログラム
 #define zenshin OnFwd(OUT_BC,50); //前進
 
 #define koushin OnFwd(OUT_BC,-50); //後進
 
 #define ageru OnFwd(OUT_A,-50);Wait(150); // ペンを上げる動作
 
 #define sageru OnFwd(OUT_A,50);Wait(170); // ペンを下げる動作
 
 #define zikan Wait(100); // 動作を行う時間














#ref(IMG_4657.jpeg)
実際に書いた「大津」

かろうじて、「大津」と読める・・・。


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS