2014a/Member/kanzaki/Mission2
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
目次
#contents
*課題? [#h911b358]
紙コップ収集分別ロボット
2台のロボットで紙コップを収集し、同じ番号の書かれている紙...
ロボコンのフィールド平面図
&ref(2014a/Member/kanzaki/Mission2/2014a-mission2.png,100...
フィールドの説明
フィールドは課題1で使用した紙を2枚つなぎ合わせる (詳細な...
図の右半分の黄色い地点には、その数字と同じ数字が書いてあ...
ルール
基本ルール
◦競技時間は審判が続行不能と判断するまで、あるいはリ...
◦図の右上のスタートエリアからスタートする(課題1と同...
接地している部分がスタートエリア内に入って入ればよい。
◦図の左半分にある紙コップを集めて、それぞれ右半分に...
◦右半分の紙コップは10cm内の移動は認める
◦開始の合図から5秒以内にスタートボタンを押す作業を...
◦競技が終了するまで、ロボットに触ったり人間が遠隔で...
◦途中でうまく動かなくなった場合、1回限り再スタート...
◦同じ番号の紙コップに重ねることができれば、1組で10点
◦番号が1違いの紙コップに重ねれば、1組で2点
◦番号が2違いの紙コップに重ねれば、1組で0点
◦最終的な紙コップの位置が10cm以上動いた場合は、その...
*メンバー [#vf0c265c]
岩佐暁史(kanzaki) 秋山和哉(ayusaka) 藤岡芳弥(fuji)
*ロボット紹介 [#y8e62de9]
**ロボット全体像 [#tab8761a]
&ref(2014a/Member/kanzaki/Mission2/1.jpg,100%);
他のグループのロボットと比べてでかくなりすぎた。
**センサー [#va75bf7d]
&ref(2014a/Member/kanzaki/Mission2/2.jpg,100%);
正面を向いている青いブロックが紙コップを識別するためのセ...
&ref(2014a/Member/kanzaki/Mission2/3.jpg,100%);
下を向いている青いブロックがライントレースをするためのセ...
**紙コップのつかみ方 [#r6fc00e9]
&ref(2014a/Member/kanzaki/Mission2/4.jpg,100%);
前方についているこの部品が上下して
&ref(2014a/Member/kanzaki/Mission2/5.jpg,300%);
このようにコップをつかむ。
**紙コップのはずし方 [#r6fc00e9]
&ref(2014a/Member/kanzaki/Mission2/6.jpg,100%);
この部品を上に上げていくと赤い突起がついた所に紙コップが...
*プログラム [#p64a1e5d]
#define HIPOWER 1 //直線用のパワー
#define LOWPOWER 3 //カーブ用のパワー
#define set_power_H SetPower(OUT_AC,HIPOWER);
#define set_power_L SetPower(OUT_AC,LOWPOWER);
#define go_forward set_power_H; OnFwd(OUT_AC); //直進
#define turn_left1 set_power_L;\
OnFwd(OUT_C); OnRev(OUT_A); //左旋回
#define turn_left0 set_power_L;\
OnFwd(OUT_C); Off(OUT_A); //左折
#define turn_right0 set_power_L;\
OnFwd(OUT_A); Off(OUT_C); //右旋回
#define turn_right1 set_power_L;\
OnFwd(OUT_A); OnRev(OUT_C); //右折
#define SIGNALON 13
#define cross set_power_H; OnFwd(OUT_AC);Wait(20); //交...
#define c1 if (SENSOR_3 < 37) {Off(OUT_AC); SendMessage(...
task main()
{
SetSensor(SENSOR_2,SENSOR_LIGHT); //光センサーセット
SetSensor(SENSOR_3,SENSOR_LIGHT);
int nl=0;
int cc=0;
go_forward;
Wait(460);
turn_left1;
Wait(140);
go_forward;
Wait(280);
ここまでのプログラムで図のA地点まで来ます。ここA地点にあ...
ClearTimer(0);
while (true) {
while ((nl < 5) ||(FastTimer(0)<500)){
if (SENSOR_2 < 37) { //濃い黒を感知したら
turn_left1;
nl++;
} else if (SENSOR_2 < 41) { //薄い黒を感知したら
turn_left0;
nl=0;
} else if (SENSOR_2 < 45) { //灰色を感知したら
go_forward;
nl=0;
} else if (SENSOR_2 < 50) { //薄い白を感知したら
turn_right0;
} else { //濃い白を感知したら
turn_right1;
nl=0;
}
Wait(1);
}
上記のプログラムがライントレースです。
光センサーにより明るさを測って、明度の値により左右に曲が...
交差点は左旋回の回数を計ることで判別します。左旋回の回...
右旋回が0.5秒以上行われない限りは通常であると判断しライン...
turn_right1; Wait(35);
cross;
cc++;
if (cc == 1) {
go_forward;
Wait(50);
c1;
OnRev(OUT_AC);
Wait(150);
turn_left1;
Wait(40);
go_forward;
Wait(280);
c1;
OnRev(OUT_AC);
Wait(500);
turn_left1;
Wait(100);
go_forward;
Wait(200);
c1;
OnRev(OUT_AC);
Wait(100);
交差点を通った後A地点にあった紙コップの色を判断して次にB...
turn_left1;
Wait(330);
go_forward;
Wait(1000);
C地点から1地点まで紙コップを運びます
}
}
}
未完成ですがここまでしかできませんでした。予定ではこのま...
**もう一つのプログラム [#o4d3eaca]
#define SIGNALON 13
task main ()
{
ClearMessage();
while (true) {
until (Message() == SIGNALON);
OnFwd(OUT_AC);
Wait(30);
OnRev(OUT_AC);
Wait(30);
Off(OUT_AC);
}
}
紙コップをつかむプログラムです。
*失敗点 [#waef1d67]
&ref(2014a/Member/kanzaki/Mission2/4.jpg,100%);
前方が重すぎて傾いてしまった。そのせいで紙コップをつかむ...
タイヤとタイヤとの間の距離をあけなかったことで不安定にな...
*工夫点 [#bf2f18f7]
&ref(2014a/Member/kanzaki/Mission2/8.jpg,100%);
このパーツを前方につけることにより紙コップが来る位置が固...
*感想 [#weaea348]
今回は特に大変だった。ロボットが完成したと思いプログラム...
終了行:
目次
#contents
*課題? [#h911b358]
紙コップ収集分別ロボット
2台のロボットで紙コップを収集し、同じ番号の書かれている紙...
ロボコンのフィールド平面図
&ref(2014a/Member/kanzaki/Mission2/2014a-mission2.png,100...
フィールドの説明
フィールドは課題1で使用した紙を2枚つなぎ合わせる (詳細な...
図の右半分の黄色い地点には、その数字と同じ数字が書いてあ...
ルール
基本ルール
◦競技時間は審判が続行不能と判断するまで、あるいはリ...
◦図の右上のスタートエリアからスタートする(課題1と同...
接地している部分がスタートエリア内に入って入ればよい。
◦図の左半分にある紙コップを集めて、それぞれ右半分に...
◦右半分の紙コップは10cm内の移動は認める
◦開始の合図から5秒以内にスタートボタンを押す作業を...
◦競技が終了するまで、ロボットに触ったり人間が遠隔で...
◦途中でうまく動かなくなった場合、1回限り再スタート...
◦同じ番号の紙コップに重ねることができれば、1組で10点
◦番号が1違いの紙コップに重ねれば、1組で2点
◦番号が2違いの紙コップに重ねれば、1組で0点
◦最終的な紙コップの位置が10cm以上動いた場合は、その...
*メンバー [#vf0c265c]
岩佐暁史(kanzaki) 秋山和哉(ayusaka) 藤岡芳弥(fuji)
*ロボット紹介 [#y8e62de9]
**ロボット全体像 [#tab8761a]
&ref(2014a/Member/kanzaki/Mission2/1.jpg,100%);
他のグループのロボットと比べてでかくなりすぎた。
**センサー [#va75bf7d]
&ref(2014a/Member/kanzaki/Mission2/2.jpg,100%);
正面を向いている青いブロックが紙コップを識別するためのセ...
&ref(2014a/Member/kanzaki/Mission2/3.jpg,100%);
下を向いている青いブロックがライントレースをするためのセ...
**紙コップのつかみ方 [#r6fc00e9]
&ref(2014a/Member/kanzaki/Mission2/4.jpg,100%);
前方についているこの部品が上下して
&ref(2014a/Member/kanzaki/Mission2/5.jpg,300%);
このようにコップをつかむ。
**紙コップのはずし方 [#r6fc00e9]
&ref(2014a/Member/kanzaki/Mission2/6.jpg,100%);
この部品を上に上げていくと赤い突起がついた所に紙コップが...
*プログラム [#p64a1e5d]
#define HIPOWER 1 //直線用のパワー
#define LOWPOWER 3 //カーブ用のパワー
#define set_power_H SetPower(OUT_AC,HIPOWER);
#define set_power_L SetPower(OUT_AC,LOWPOWER);
#define go_forward set_power_H; OnFwd(OUT_AC); //直進
#define turn_left1 set_power_L;\
OnFwd(OUT_C); OnRev(OUT_A); //左旋回
#define turn_left0 set_power_L;\
OnFwd(OUT_C); Off(OUT_A); //左折
#define turn_right0 set_power_L;\
OnFwd(OUT_A); Off(OUT_C); //右旋回
#define turn_right1 set_power_L;\
OnFwd(OUT_A); OnRev(OUT_C); //右折
#define SIGNALON 13
#define cross set_power_H; OnFwd(OUT_AC);Wait(20); //交...
#define c1 if (SENSOR_3 < 37) {Off(OUT_AC); SendMessage(...
task main()
{
SetSensor(SENSOR_2,SENSOR_LIGHT); //光センサーセット
SetSensor(SENSOR_3,SENSOR_LIGHT);
int nl=0;
int cc=0;
go_forward;
Wait(460);
turn_left1;
Wait(140);
go_forward;
Wait(280);
ここまでのプログラムで図のA地点まで来ます。ここA地点にあ...
ClearTimer(0);
while (true) {
while ((nl < 5) ||(FastTimer(0)<500)){
if (SENSOR_2 < 37) { //濃い黒を感知したら
turn_left1;
nl++;
} else if (SENSOR_2 < 41) { //薄い黒を感知したら
turn_left0;
nl=0;
} else if (SENSOR_2 < 45) { //灰色を感知したら
go_forward;
nl=0;
} else if (SENSOR_2 < 50) { //薄い白を感知したら
turn_right0;
} else { //濃い白を感知したら
turn_right1;
nl=0;
}
Wait(1);
}
上記のプログラムがライントレースです。
光センサーにより明るさを測って、明度の値により左右に曲が...
交差点は左旋回の回数を計ることで判別します。左旋回の回...
右旋回が0.5秒以上行われない限りは通常であると判断しライン...
turn_right1; Wait(35);
cross;
cc++;
if (cc == 1) {
go_forward;
Wait(50);
c1;
OnRev(OUT_AC);
Wait(150);
turn_left1;
Wait(40);
go_forward;
Wait(280);
c1;
OnRev(OUT_AC);
Wait(500);
turn_left1;
Wait(100);
go_forward;
Wait(200);
c1;
OnRev(OUT_AC);
Wait(100);
交差点を通った後A地点にあった紙コップの色を判断して次にB...
turn_left1;
Wait(330);
go_forward;
Wait(1000);
C地点から1地点まで紙コップを運びます
}
}
}
未完成ですがここまでしかできませんでした。予定ではこのま...
**もう一つのプログラム [#o4d3eaca]
#define SIGNALON 13
task main ()
{
ClearMessage();
while (true) {
until (Message() == SIGNALON);
OnFwd(OUT_AC);
Wait(30);
OnRev(OUT_AC);
Wait(30);
Off(OUT_AC);
}
}
紙コップをつかむプログラムです。
*失敗点 [#waef1d67]
&ref(2014a/Member/kanzaki/Mission2/4.jpg,100%);
前方が重すぎて傾いてしまった。そのせいで紙コップをつかむ...
タイヤとタイヤとの間の距離をあけなかったことで不安定にな...
*工夫点 [#bf2f18f7]
&ref(2014a/Member/kanzaki/Mission2/8.jpg,100%);
このパーツを前方につけることにより紙コップが来る位置が固...
*感想 [#weaea348]
今回は特に大変だった。ロボットが完成したと思いプログラム...
ページ名: