課題1(書道ロボット)目次
#contents
*書道ロボットの説明 [#w4f847fb]
**ロボットの概形 [#c19bc0ee]
#ref(./ロボット写真1.jpg)
#ref(./ロボット写真2.jpg)
※この写真は練習時のものですが、本番も同様この形でロボットに輪ゴムを使用してしまいました。
※このロボットの写真は練習時のものです。
**動きの説明 [#uef063a3]
後ろにあるモーターによってタイヤを動かしそれを回すことによって取り付けてあるペンが上下する仕組みになっています。移動用のタイヤは三輪でそのうち二つはモーターで動き一つはキャスターの役割を担っています。
*プログラミング [#p09e3fc3]
**「凌」プログラミング全体 [#dfd12931]
 #define down_pen OnRev(OUT_B); Wait(60); Off(OUT_B);
 #define up_pen OnFwd(OUT_B); Wait(60); Off(OUT_B);
 task main()
 {
  down_pen;
  OnRev(OUT_AC); Wait(40); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(200); Off(OUT_AC);
  OnRev(OUT_AC); Wait(20); Off(OUT_AC);
  up_pen;
  OnRev(OUT_AC); Wait(50); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(20); Off(OUT_AC);
  OnFwd(OUT_A); OnRev(OUT_C); Wait(380); Off(OUT_AC);
  OnRev(OUT_AC); Wait(60); Off(OUT_AC);
  up_pen;
  OnRev(OUT_AC); Wait(130); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(90); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(110); Off(OUT_AC);
  up_pen;
  OnFwd(OUT_AC); Wait(55); Off(OUT_AC);
  OnFwd(OUT_A); OnRev(OUT_C); Wait(190); Off(OUT_AC);
  OnRev(OUT_AC); Wait(60); Off(OUT_AC);
  down_pen;
  OnFwd(OUT_AC); Wait(120); Off(OUT_AC);
  up_pen;
  OnRev(OUT_A); OnFwd(OUT_C); Wait(180); Off(OUT_AC);
  OnFwd(OUT_AC); Wait(90); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(200); Off(OUT_AC);
  up_pen;
  OnFwd(OUT_AC); Wait(130); Off(OUT_AC);
  OnFwd(OUT_A); OnRev(OUT_C); Wait(70); Off(OUT_AC);
  OnFwd(OUT_AC); Wait(20); Off(OUT_AC);
  down_pen;
  OnFwd(OUT_AC); Wait(80); Off(OUT_AC);
  up_pen;
  OnRev(OUT_AC); Wait(100); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(80); Off(OUT_AC);
  OnRev(OUT_AC); Wait(45); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(180); Off(OUT_AC);
  OnRev(OUT_AC); Wait(10); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(40); Off(OUT_AC);
  OnFwd(OUT_A); OnRev(OUT_C); Wait(180); Off(OUT_AC);
  OnRev(OUT_AC); Wait(50); Off(OUT_AC);
  up_pen;
  OnFwd(OUT_A); OnRev(OUT_C); Wait(50); Off(OUT_AC);
  OnFwd(OUT_AC); Wait(120); Off(OUT_AC);
  OnFwd(OUT_A); OnRev(OUT_C); Wait(100); Off(OUT_AC);
  down_pen;
  OnFwd(OUT_AC); Wait(100); Off(OUT_AC);
  up_pen;
  OnRev(OUT_AC); Wait(100); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(130); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(80); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(280); Off(OUT_AC);
  OnRev(OUT_AC); Wait(190); Off(OUT_AC);
  up_pen;
  OnFwd(OUT_AC); Wait(130); Off(OUT_AC);
  OnFwd(OUT_A); OnRev(OUT_C); Wait(200); Off(OUT_AC);
  OnFwd(OUT_AC); Wait(80); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(250); Off(OUT_AC);
  up_pen;
 }
**「凌」プログラミング部分部分 [#g752f7fa]
***1.定義(ペンの上下) [#d5e35148]
 #define down_pen OnRev(OUT_B); Wait(60); Off(OUT_B);
 #define up_pen OnFwd(OUT_B); Wait(60); Off(OUT_B);
***2.「凌」のにすい [#f3c3d189]
  down_pen;
  OnRev(OUT_AC); Wait(40); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(200); Off(OUT_AC);
  OnRev(OUT_AC); Wait(20); Off(OUT_AC);
  up_pen;
  OnRev(OUT_AC); Wait(50); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(20); Off(OUT_AC);
  OnFwd(OUT_A); OnRev(OUT_C); Wait(380); Off(OUT_AC);
  OnRev(OUT_AC); Wait(60); Off(OUT_AC);
  up_pen;
***3.「凌」の土 [#ye526965]
  up_pen;
  OnRev(OUT_AC); Wait(130); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(90); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(110); Off(OUT_AC);
  up_pen;
  OnFwd(OUT_AC); Wait(55); Off(OUT_AC);
  OnFwd(OUT_A); OnRev(OUT_C); Wait(190); Off(OUT_AC);
  OnRev(OUT_AC); Wait(60); Off(OUT_AC);
  down_pen;
  OnFwd(OUT_AC); Wait(120); Off(OUT_AC);
  up_pen;
***4.「凌」のハ [#v8c597ff]
  down_pen;
  OnFwd(OUT_AC); Wait(80); Off(OUT_AC);
  up_pen;
  OnRev(OUT_AC); Wait(100); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(80); Off(OUT_AC);
  OnRev(OUT_AC); Wait(45); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(180); Off(OUT_AC);
  OnRev(OUT_AC); Wait(10); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(40); Off(OUT_AC);
  OnFwd(OUT_A); OnRev(OUT_C); Wait(180); Off(OUT_AC);
  OnRev(OUT_AC); Wait(50); Off(OUT_AC);
  up_pen;
***5.「凌」の久 [#c29f6e93]
  down_pen;
  OnFwd(OUT_AC); Wait(100); Off(OUT_AC);
  up_pen;
  OnRev(OUT_AC); Wait(100); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(130); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(80); Off(OUT_AC);
  OnRev(OUT_A); OnFwd(OUT_C); Wait(280); Off(OUT_AC);
  OnRev(OUT_AC); Wait(190); Off(OUT_AC);
  up_pen;
  OnFwd(OUT_AC); Wait(130); Off(OUT_AC);
  OnFwd(OUT_A); OnRev(OUT_C); Wait(200); Off(OUT_AC);
  OnFwd(OUT_AC); Wait(80); Off(OUT_AC);
  down_pen;
  OnRev(OUT_AC); Wait(250); Off(OUT_AC);
  up_pen;

*反省 [#g345b109]
今回の反省は課題の中でミスを多くしてしまったことです。具体的には授業直前までに仕上げたものは私の操作ミスで消えてしまったということ(上に載せたプログラミングは改善前のものです。)と書いた字を写真で撮り忘れたことです。次回はもう少し落ち着いて取り組みたいです。残念ながら今回は作品を写真に納めることが出来なかったのですがなかなか綺麗に書けたと思うので次回こそはつっくた作品を無駄にしないようにしたいです。

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS