2017a/Member/tsukuzin/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2017a/Member]]
5月31日 14:40 プログラムの字下げをしました
目次
#contents
*Mission1 [#aad87d9a]
大学生活を表す漢字一文字を書かせるとのことでアパートと大...
*本体について [#zce957cf]
本体は小回りを利かせるために標準形の横幅を少し短くした。
本体と赤外線塔セットで30㎤の箱に収まるサイズなにで...
*書く機構について [#y4349824]
書く機構は写真のように車体の中心にボールペンを設置した。...
実際の動作は3枚目の画像のように動く。(ペンを固定してい...
&ref(2017a/Member/tsukuzin/Mission1/s_kikou3.png,50%,);
&ref(2017a/Member/tsukuzin/Mission1/s_kikou2.png,50%,);
&ref(2017a/Member/tsukuzin/Mission1/penkikou.gif,100%,);
***書く機構の失敗作について [#c0d7e677]
最初は画像のような機構を考えていたが、旋回時の誤差が考え...
&ref(2017a/Member/tsukuzin/Mission1/s_shippaisaku.png,50%...
*プログラムについて [#q368940a]
***使用した関数 [#g14a2a06]
#define mae_susumu(f) OnFwd(OUT_AC); Wait(f); Off(OUT_A...
#define mae_susumu_up(f) OnFwd(OUT_AC); OnRev(OUT_B); Wa...
#define ushiro_sagaru(y) OnRev(OUT_AC); Wait(y); Off(OUT...
#define ushiro_sagaru_up(y) OnRev(OUT_ABC); Wait(y); Off...
#define senkai_migi_up(g) OnFwd(OUT_A); OnRev(OUT_BC); W...
#define senkai_hidari_up(h) OnFwd(OUT_C); OnRev(OUT_AB);...
#define senkai_migi(g) OnFwd(OUT_A); OnRev(OUT_C); Wait(...
#define senkai_hidari(h) OnFwd(OUT_C); OnRev(OUT_A); Wai...
関数名は誰が見てもわかりやすいように名前を付けた。Bモータ...
***プログラム本体について [#o241eadf]
task main ()
{
Wait(200); // 準備時間
ichikaku_me();
nikaku_me();
sankaku_me();
Wait(40); //車体のバランスが崩れるので間を入れる
yonkaku_me();
gokaku_me_idou();
gokaku_and_rokukaku_me();
nanakaku_me();
}
上のように、「task main」はサブルーチンを使用しているので...
「車体のバランスが崩れるので間を入れる」についての反省点...
**各サブルーチンについて [#w245c2da]
*1画目 [#kaee0267]
sub ichikaku_me()
{
mae_susumu(16);
}
一画目は点を打つだけ
*2画目 [#hc14847c]
sub nikaku_me()
{
senkai_migi_up(100);
mae_susumu_up(30);
senkai_hidari_up(140);
mae_susumu(21); //本来はこのまま続けてるが、ロボッ...
}
最初の3行までのプログラムは旋回時の誤差を修正するための...
*3、4画目 [#u9df7910]
sub sankaku_me() //
{
mae_susumu_up(13);
senkai_migi_up(200);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu(31);
senkai_hidari_up(200);
ushiro_sagaru(15);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu(20);
senkai_hidari_up(36);
Wait(30); //反動で車体が浮くので間を入れる
ushiro_sagaru(40);
}
sub yonkaku_me()
{
mae_susumu_up(10);
Wait(30); //反動で車体が浮くので間を入れる
senkai_migi_up(70);
mae_susumu(86); //しんにょう終わり
}
3画目はカクカク細かく動くので、間隔を入れないと倒れてしま...
*5、6、7画目 [#hdee8e52]
sub gokaku_me_idou()
{
senkai_hidari_up(130);
mae_susumu_up(55);//5画目の開始地点移動へ
senkai_hidari_up(100);
mae_susumu_up(25);
senkai_migi_up(100);
}
sub gokaku_and_rokukaku_me()
{
senkai_migi_up(70);
ushiro_sagaru(23);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu_up(9);
Wait(30); //反動で車体が浮くので間を入れる
senkai_hidari_up(60);//ここから6画目
ushiro_sagaru(25);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu(18);
}
sub nanakaku_me()
{
senkai_hidari_up(110);
ushiro_sagaru_up(9);
Wait(30); //反動で車体が浮くので間を入れる
ushiro_sagaru(23);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu_up(13)
Wait(30); //反動で車体が浮くので間を入れる
senkai_hidari_up(110);
ushiro_sagaru(10);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu(30);
}
「gokaku_me_idou」の調整でつくりが斜めになったり、変な位...
5、6、7画目も誤差の修正などの細かな動作が多い。
*完成した文字 [#le68214d]
&ref(2017a/Member/tsukuzin/Mission1/近333.png,50%,画像の...
&ref(2017a/Member/tsukuzin/Mission1/近444.png,50%,);
左の「近」はもっともきれいな形で書いてくれた時の写真。た...
右は発表会当日調整前に書いた時の写真。つくりが傾いてしま...
*旋回時の誤差について [#a1123]
まずこのロボットの旋回時の誤差は約半径1?で次の画像のよう...
&ref(2017a/Member/tsukuzin/Mission1/誤差説明.gif,100%,);
赤い線を引きたいとき、誤差を考えずにプログラムを作ると次...
&ref(2017a/Member/tsukuzin/Mission1/誤差説明1.gif,100%,);
青い線が実際書かれるもので、変な形になってしまう。
次に誤差を考えて少しだけロボットを余分に進ませてから旋回...
&ref(2017a/Member/tsukuzin/Mission1/誤差説明2.gif,100%,);
画像のように綺麗にかけるようにするためには細かい調整が必...
***間隔を入れた理由について [#a12345]
書く機構を車体の中心に設置したことで誤差を小さくすること...
でっかちになってしまった。そのため素早い前後の動作をする...
&ref(2017a/Member/tsukuzin/Mission1/s_kikou1.png,50%,);
***感想 [#f3f8b038]
初めてプログラミングをやってみて、サブルーチンや関数を使...
終了行:
[[2017a/Member]]
5月31日 14:40 プログラムの字下げをしました
目次
#contents
*Mission1 [#aad87d9a]
大学生活を表す漢字一文字を書かせるとのことでアパートと大...
*本体について [#zce957cf]
本体は小回りを利かせるために標準形の横幅を少し短くした。
本体と赤外線塔セットで30㎤の箱に収まるサイズなにで...
*書く機構について [#y4349824]
書く機構は写真のように車体の中心にボールペンを設置した。...
実際の動作は3枚目の画像のように動く。(ペンを固定してい...
&ref(2017a/Member/tsukuzin/Mission1/s_kikou3.png,50%,);
&ref(2017a/Member/tsukuzin/Mission1/s_kikou2.png,50%,);
&ref(2017a/Member/tsukuzin/Mission1/penkikou.gif,100%,);
***書く機構の失敗作について [#c0d7e677]
最初は画像のような機構を考えていたが、旋回時の誤差が考え...
&ref(2017a/Member/tsukuzin/Mission1/s_shippaisaku.png,50%...
*プログラムについて [#q368940a]
***使用した関数 [#g14a2a06]
#define mae_susumu(f) OnFwd(OUT_AC); Wait(f); Off(OUT_A...
#define mae_susumu_up(f) OnFwd(OUT_AC); OnRev(OUT_B); Wa...
#define ushiro_sagaru(y) OnRev(OUT_AC); Wait(y); Off(OUT...
#define ushiro_sagaru_up(y) OnRev(OUT_ABC); Wait(y); Off...
#define senkai_migi_up(g) OnFwd(OUT_A); OnRev(OUT_BC); W...
#define senkai_hidari_up(h) OnFwd(OUT_C); OnRev(OUT_AB);...
#define senkai_migi(g) OnFwd(OUT_A); OnRev(OUT_C); Wait(...
#define senkai_hidari(h) OnFwd(OUT_C); OnRev(OUT_A); Wai...
関数名は誰が見てもわかりやすいように名前を付けた。Bモータ...
***プログラム本体について [#o241eadf]
task main ()
{
Wait(200); // 準備時間
ichikaku_me();
nikaku_me();
sankaku_me();
Wait(40); //車体のバランスが崩れるので間を入れる
yonkaku_me();
gokaku_me_idou();
gokaku_and_rokukaku_me();
nanakaku_me();
}
上のように、「task main」はサブルーチンを使用しているので...
「車体のバランスが崩れるので間を入れる」についての反省点...
**各サブルーチンについて [#w245c2da]
*1画目 [#kaee0267]
sub ichikaku_me()
{
mae_susumu(16);
}
一画目は点を打つだけ
*2画目 [#hc14847c]
sub nikaku_me()
{
senkai_migi_up(100);
mae_susumu_up(30);
senkai_hidari_up(140);
mae_susumu(21); //本来はこのまま続けてるが、ロボッ...
}
最初の3行までのプログラムは旋回時の誤差を修正するための...
*3、4画目 [#u9df7910]
sub sankaku_me() //
{
mae_susumu_up(13);
senkai_migi_up(200);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu(31);
senkai_hidari_up(200);
ushiro_sagaru(15);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu(20);
senkai_hidari_up(36);
Wait(30); //反動で車体が浮くので間を入れる
ushiro_sagaru(40);
}
sub yonkaku_me()
{
mae_susumu_up(10);
Wait(30); //反動で車体が浮くので間を入れる
senkai_migi_up(70);
mae_susumu(86); //しんにょう終わり
}
3画目はカクカク細かく動くので、間隔を入れないと倒れてしま...
*5、6、7画目 [#hdee8e52]
sub gokaku_me_idou()
{
senkai_hidari_up(130);
mae_susumu_up(55);//5画目の開始地点移動へ
senkai_hidari_up(100);
mae_susumu_up(25);
senkai_migi_up(100);
}
sub gokaku_and_rokukaku_me()
{
senkai_migi_up(70);
ushiro_sagaru(23);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu_up(9);
Wait(30); //反動で車体が浮くので間を入れる
senkai_hidari_up(60);//ここから6画目
ushiro_sagaru(25);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu(18);
}
sub nanakaku_me()
{
senkai_hidari_up(110);
ushiro_sagaru_up(9);
Wait(30); //反動で車体が浮くので間を入れる
ushiro_sagaru(23);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu_up(13)
Wait(30); //反動で車体が浮くので間を入れる
senkai_hidari_up(110);
ushiro_sagaru(10);
Wait(30); //反動で車体が浮くので間を入れる
mae_susumu(30);
}
「gokaku_me_idou」の調整でつくりが斜めになったり、変な位...
5、6、7画目も誤差の修正などの細かな動作が多い。
*完成した文字 [#le68214d]
&ref(2017a/Member/tsukuzin/Mission1/近333.png,50%,画像の...
&ref(2017a/Member/tsukuzin/Mission1/近444.png,50%,);
左の「近」はもっともきれいな形で書いてくれた時の写真。た...
右は発表会当日調整前に書いた時の写真。つくりが傾いてしま...
*旋回時の誤差について [#a1123]
まずこのロボットの旋回時の誤差は約半径1?で次の画像のよう...
&ref(2017a/Member/tsukuzin/Mission1/誤差説明.gif,100%,);
赤い線を引きたいとき、誤差を考えずにプログラムを作ると次...
&ref(2017a/Member/tsukuzin/Mission1/誤差説明1.gif,100%,);
青い線が実際書かれるもので、変な形になってしまう。
次に誤差を考えて少しだけロボットを余分に進ませてから旋回...
&ref(2017a/Member/tsukuzin/Mission1/誤差説明2.gif,100%,);
画像のように綺麗にかけるようにするためには細かい調整が必...
***間隔を入れた理由について [#a12345]
書く機構を車体の中心に設置したことで誤差を小さくすること...
でっかちになってしまった。そのため素早い前後の動作をする...
&ref(2017a/Member/tsukuzin/Mission1/s_kikou1.png,50%,);
***感想 [#f3f8b038]
初めてプログラミングをやってみて、サブルーチンや関数を使...
ページ名: