2019a/Member/ao/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2019a/Member]]~
&size(40){課題1};~
~
&size(20){目次};~
#contents
*書いた字とロボットについて [#q4707970]
私たちが書いた感じは「甲府」です。作成時間はざっと''20時間''です。~
ロボットは、ペンを左右に動かすパーツと、ペンを上下させるパーツ、~
そしてロボットを前後に動かすための車輪を3つです。そのうち2つは~
ロボットを支えるためのもので、実際にプログラムで動いている車輪は1つです。~
ペンを左右に移動させて横棒を、ロボットを前後に動かして縦棒を書き、~
それを同時に行うことで斜め線を書きました。~
*完成した文字 [#m978699e]
#ref(甲府.jpg)
*ロボットの説明 [#d163fa3f]
**前輪パーツ [#gdb7009b]
動かすタイヤは前輪一つです。~
パーツを調整しながら重心を真ん中にするのに苦労しました。
#ref(前輪.JPG)
**後輪パーツ [#n98b234e]
後輪パーツはバランスを良くするため、棒を2つをくっつけて~
タイヤを出来るだけ後ろに取り付けました。
#ref(後輪.JPG)
**ペンを左右に動かすパーツ [#p7621ed9]
上の写真のように歯車を使ってペンを掴んでいるパーツ全体を左右に動かすことで~
ペンを左右に動かしました。
#ref(ペンを左右に動かすパーツ.JPG)
**ペンの上げ下げ [#zc9fcf8e]
ペンの上げ下げの部分は2つのタイヤでペンを挟み、~
タイヤを回転させて行いました。
#ref(ペンの上げ下げ.JPG)
*プログラム [#r4c70992]
**準備のためのプログラム [#q29864ff]
#define wait(t) Wait(t); //簡略化
#define off() Off(OUT_ABC);wait(100);
#define front(t) OnFwd(OUT_B);wait(t);off(); //前へ
#define back(t) OnRev(OUT_B);wait(t);off(); //後ろへ
#define right(t) OnRev(OUT_A);wait(t);off(); //ペンを右へ
#define left(t) OnFwd(OUT_A);wait(t);off(); //ペンを左へ
#define up() OnRev(OUT_C);wait(4);off(); //ペンを上げる
#define down() OnFwd(OUT_C);wait(10);off(); //ペンを下げる
**甲のプログラム [#z982d763]
甲の左上の端から時計回りに外側を囲み、左の真ん中の線の所まで下がって~
真ん中の横棒を書きます。そして、真ん中の縦棒の支店までペンを持って行って~
そのまま下に線を引きます。ペンを上げた状態で終わります。
right(32);back(17);left(32);front(17); //甲の字
back(9);right(32);up();
front(9);left(18);down();
back(20);back(10);up();
**移動のプログラム [#r734a5c4]
少し下がってペンを下ろします。
back(7);down(); //移動
**府のプログラム [#s22d67aa]
「广」の部分は書き順と同じで、そのまま右に移動して「イ」の~
縦棒を逆から書きます。次に「イ」の上の部分を上から斜めに書きます。~
「寸」の横棒を左から書いて、あとは書き順と同じように書きます。
back(10);up(); //府の字
right(16);down();
left(32);back(20);back(10);up();
right(12);down();
front(14);front(10);up();
front(6)right(6);down();
OnFwd(OUT_A);OnRev(OUT_B);wait(10);
Off(OUT_B);wait(3);off();up();
right(16);down();
right(14);up();
left(4);front(7);
back(15);back(10);up();
left(12);front(14);down();
OnRev(OUT_AB);wait(4);Off(OUT_B);
wait(2);off();
*プログラム全体 [#re3f640f]
#define wait(t) Wait(t); //簡略化
#define off() Off(OUT_ABC);wait(100);
#define front(t) OnFwd(OUT_B);wait(t);off(); //前へ
#define back(t) OnRev(OUT_B);wait(t);off(); //後ろへ
#define right(t) OnRev(OUT_A);wait(t);off(); //ペンを右へ
#define left(t) OnFwd(OUT_A);wait(t);off(); //ペンを左へ
#define up() OnRev(OUT_C);wait(4);off(); //ペンを上げる
#define down() OnFwd(OUT_C);wait(10);off(); //ペンを下げる
task main{
right(32);back(17);left(32);front(17); //甲の字
back(9);right(32);up();
front(9);left(18);down();
back(20);back(10);up();
back(7);down(); //移動
back(10);up(); //府の字
right(16);down();
left(32);back(20);back(10);up();
right(12);down();
front(14);front(10);up();
front(6)right(6);down();
OnFwd(OUT_A);OnRev(OUT_B);wait(10);
Off(OUT_B);wait(3);off();up();
right(16);down();
right(14);up();
left(4);front(7);
back(15);back(10);up();
left(12);front(14);down();
OnRev(OUT_AB);wait(4);Off(OUT_B);
wait(2);off();
}
*感想 [#ge55c15f]
ロボットがしっかりしていないとプログラムをきちんと書いても、~
ペンが浮いたり、実行するたび違う動きをしたりするので難しかった。~
ペンが浮くのを対処するのに、2度に分けて長い棒を書いたり、~
ペンを上げるのより下げる時間を長くしたり工夫しました。~
工夫一つで大きく動きが変わるので驚きました。~
~
~
~
終了行:
[[2019a/Member]]~
&size(40){課題1};~
~
&size(20){目次};~
#contents
*書いた字とロボットについて [#q4707970]
私たちが書いた感じは「甲府」です。作成時間はざっと''20時間''です。~
ロボットは、ペンを左右に動かすパーツと、ペンを上下させるパーツ、~
そしてロボットを前後に動かすための車輪を3つです。そのうち2つは~
ロボットを支えるためのもので、実際にプログラムで動いている車輪は1つです。~
ペンを左右に移動させて横棒を、ロボットを前後に動かして縦棒を書き、~
それを同時に行うことで斜め線を書きました。~
*完成した文字 [#m978699e]
#ref(甲府.jpg)
*ロボットの説明 [#d163fa3f]
**前輪パーツ [#gdb7009b]
動かすタイヤは前輪一つです。~
パーツを調整しながら重心を真ん中にするのに苦労しました。
#ref(前輪.JPG)
**後輪パーツ [#n98b234e]
後輪パーツはバランスを良くするため、棒を2つをくっつけて~
タイヤを出来るだけ後ろに取り付けました。
#ref(後輪.JPG)
**ペンを左右に動かすパーツ [#p7621ed9]
上の写真のように歯車を使ってペンを掴んでいるパーツ全体を左右に動かすことで~
ペンを左右に動かしました。
#ref(ペンを左右に動かすパーツ.JPG)
**ペンの上げ下げ [#zc9fcf8e]
ペンの上げ下げの部分は2つのタイヤでペンを挟み、~
タイヤを回転させて行いました。
#ref(ペンの上げ下げ.JPG)
*プログラム [#r4c70992]
**準備のためのプログラム [#q29864ff]
#define wait(t) Wait(t); //簡略化
#define off() Off(OUT_ABC);wait(100);
#define front(t) OnFwd(OUT_B);wait(t);off(); //前へ
#define back(t) OnRev(OUT_B);wait(t);off(); //後ろへ
#define right(t) OnRev(OUT_A);wait(t);off(); //ペンを右へ
#define left(t) OnFwd(OUT_A);wait(t);off(); //ペンを左へ
#define up() OnRev(OUT_C);wait(4);off(); //ペンを上げる
#define down() OnFwd(OUT_C);wait(10);off(); //ペンを下げる
**甲のプログラム [#z982d763]
甲の左上の端から時計回りに外側を囲み、左の真ん中の線の所まで下がって~
真ん中の横棒を書きます。そして、真ん中の縦棒の支店までペンを持って行って~
そのまま下に線を引きます。ペンを上げた状態で終わります。
right(32);back(17);left(32);front(17); //甲の字
back(9);right(32);up();
front(9);left(18);down();
back(20);back(10);up();
**移動のプログラム [#r734a5c4]
少し下がってペンを下ろします。
back(7);down(); //移動
**府のプログラム [#s22d67aa]
「广」の部分は書き順と同じで、そのまま右に移動して「イ」の~
縦棒を逆から書きます。次に「イ」の上の部分を上から斜めに書きます。~
「寸」の横棒を左から書いて、あとは書き順と同じように書きます。
back(10);up(); //府の字
right(16);down();
left(32);back(20);back(10);up();
right(12);down();
front(14);front(10);up();
front(6)right(6);down();
OnFwd(OUT_A);OnRev(OUT_B);wait(10);
Off(OUT_B);wait(3);off();up();
right(16);down();
right(14);up();
left(4);front(7);
back(15);back(10);up();
left(12);front(14);down();
OnRev(OUT_AB);wait(4);Off(OUT_B);
wait(2);off();
*プログラム全体 [#re3f640f]
#define wait(t) Wait(t); //簡略化
#define off() Off(OUT_ABC);wait(100);
#define front(t) OnFwd(OUT_B);wait(t);off(); //前へ
#define back(t) OnRev(OUT_B);wait(t);off(); //後ろへ
#define right(t) OnRev(OUT_A);wait(t);off(); //ペンを右へ
#define left(t) OnFwd(OUT_A);wait(t);off(); //ペンを左へ
#define up() OnRev(OUT_C);wait(4);off(); //ペンを上げる
#define down() OnFwd(OUT_C);wait(10);off(); //ペンを下げる
task main{
right(32);back(17);left(32);front(17); //甲の字
back(9);right(32);up();
front(9);left(18);down();
back(20);back(10);up();
back(7);down(); //移動
back(10);up(); //府の字
right(16);down();
left(32);back(20);back(10);up();
right(12);down();
front(14);front(10);up();
front(6)right(6);down();
OnFwd(OUT_A);OnRev(OUT_B);wait(10);
Off(OUT_B);wait(3);off();up();
right(16);down();
right(14);up();
left(4);front(7);
back(15);back(10);up();
left(12);front(14);down();
OnRev(OUT_AB);wait(4);Off(OUT_B);
wait(2);off();
}
*感想 [#ge55c15f]
ロボットがしっかりしていないとプログラムをきちんと書いても、~
ペンが浮いたり、実行するたび違う動きをしたりするので難しかった。~
ペンが浮くのを対処するのに、2度に分けて長い棒を書いたり、~
ペンを上げるのより下げる時間を長くしたり工夫しました。~
工夫一つで大きく動きが変わるので驚きました。~
~
~
~
ページ名: