2016a/Member/ta/Mission3
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2016a/Member]]
#contents
*はじめに [#y7b27905]
今回の課題は、前回の課題2のコースを用いて紙コップの運搬を...
ライントレースの速さ正確さや、紙コップを何段積めるかなど...
**ルール [#j204430c]
基本ルール [#be8b192f]
紙コップをC地点、D地点にそれぞれ3個(合計6個)置き...
紙コップは上下どちらにおいてもかまわない
2台のロボットの場合はA地点とB地点からスタート、一...
最終的に黒線で囲まれた輪の中にC地点からの紙コップ...
紙コップを重ねる場所は、必ずしも目的地点の輪の中...
最終的に紙コップが自力で立っていること、またロボ...
競技時間はすべてのコップを重ね終わるまで、あるい...
審判の合図の後、5秒以内にロボットをスタートさせ、...
EV3のチームはA,B,Cにそれぞれマークした紙コップを...
EV3のチームはA,B,C,Dのどこからスタートしてもよい...
紙コップに色を塗ったり文字や絵をかいてもよいが、...
光センサは2セット合わせて2つまで使って良い、その...
基本得点の計算方法
1段目の紙コップ3点、2段目の紙コップ6点、・・、n段...
奇数段目にあるDのコップと偶数段目にあるCのコップ...
EV3は1段目のAのカップ2点、2段目のBのカップ4点、3...
技術点の計算方法
以下の動作の精度・スピード・確実性などを含めた技術的...
スタートしてから紙コップの地点まで移動する速さ、...
紙コップをつかむ動作 (3点)
紙コップをゴールまで運ぶ動作の速さ、正確さ (2点)
紙コップを重ねる動作 (3点)
2台のロボットの連携の良さ (3点)
自立型のロボットとしての形や動作の美しさ、斬新さ ...
ロボコン出場ロボットとしての完成度 (2点)
その他 (2点)
*我々の作戦 [#xb8fa0a6]
僕たちは、1台の機体で紙コップを運び積み上げることにした。...
*ロボットの説明 [#o2fecd49]
#ref(2016a/Member/ta/Mission3/image1 [8558].JPG,30%,ロボ...
上の写真のように、紙コップを持ち上げて運搬するためにクワ...
#ref(2016a/Member/ta/Mission3/image1 [9077].JPG,30%,紙コ...
こうして紙コップをはさみ、ハサミがそれ以上閉まらなくなる...
#ref(2016a/Member/ta/Mission3/image2 [9078].JPG,30%,かみ...
#ref(2016a/Member/ta/Mission3/image2 [8559].JPG,30%,紙コ...
ただ、ギアがうまくかみ合わず、紙コップが持ち上がらないこ...
*プログラムの説明 [#af77d978]
今回の課題では、内田君がプログラムを書いてくれた。
**基本的な定義 [#dab57da3]
#define BLACK 44 //これ以下は黒
#define WHITE 50 //これ以上は白
#define RIGHT_S OnFwd(OUT_A);OnRev(OUT_C); //右旋回
#define RIGHT_K OnFwd(OUT_A);Off(OUT_C); //右回転
#define LEFT_S OnFwd(OUT_C);OnRev(OUT_A); //左旋回
#define LEFT_K OnFwd(OUT_C);Off(OUT_A); //左回転
#define go_fwd(t) OnFwd(OUT_AC);Wait(t);Off(OUT_AC); //...
#define go_back(t) OnRev(OUT_AC);Wait(t);Off(OUT_AC); //...
#define STEP 1
#define arm_up(t) OnFwd(OUT_B);Wait(t);Off(OUT_B); //t秒...
#define arm_down(t) OnRev(OUT_B);Wait(t);Off(OUT_B); //t...
#define RIGHT_i(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t);Off...
#define LEFT_i(t) OnFwd(OUT_C);OnRev(OUT_A);Wait(t);OFF(...
**サブルーチン [#pceabb9b]
sub line_trace_i()
{
ClearTimer(0);
while(FastTimer(0) < 45) {
if (SENSOR_2 < BLACK) {
RIGHT_S;
} else if (SENSOR_2 < BLACK +2 ) {
RIGHT_K;
} else if (SENSOR_2 > WHITE ) {
LEFT_S;
ClearTimer(0);
} else if (SENSOR_2 >= WHITE -2 ) {
LEFT_K;
ClearTimer(0);
} else {
OnFwd(OUT_AC);
ClearTimer(0);
}
Wait(STEP);
}
Off(OUT_AC);
ClearTimer(0);
PlaySound(SOUND_UP);
Wait(100);
}
sub line_trace_ii()
{
ClearTimer(0);
while(FastTimer(0) < 55) {
if (SENSOR_2 < BLACK) {
RIGHT_S;
} else if (SENSOR_2 < BLACK +2 ) {
RIGHT_K;
} else if (SENSOR_2 > WHITE ) {
LEFT_S;
ClearTimer(0);
} else if (SENSOR_2 >= WHITE -2 ) {
LEFT_K;
ClearTimer(0);
} else {
OnFwd(OUT_AC);
ClearTimer(0);
}
Wait(STEP);
}
Off(OUT_AC);
PlaySound(SOUND_UP);
Wait(100);
}
sub turn_left()
{ ClearTimer(0);
while (FastTimer(0) < 290) {
LEFT_K;
}
}
sub turn_right()
{ ClearTimer(0);
while (FastTimer(0) < 90) {
RIGHT_K;
}
}
sub cross_fwd()
{ ClearTimer(0);
while (FastTimer(0) < 60) {
LEFT_K;
}
}
**メインプログラム [#n550f902]
task main()
{ go_fwd(100);
line_trace_i();
cross_fwd();
line_trace_i();
cross_fwd();
line_trace_i();
turn_right();
Off(OUT_AC);
arm_down(70);
go_fwd(200);
arm_up(90);
RIGHT_i(120);
arm_down(20);
Wait(50);
arm_down(70);
go_back(100);
arm_up(120);
RIGHT_i(50);
line_trace_ii();
arm_down(100);
go_fwd(200);
arm_up(80);
LEFT_i(130);
go_fwd(50);
arm_down(80);
}
*まとめ [#obb3a927]
テスト走行では3点はとれるようになっていたが、たまにライ...
本番では一回目はライントレースで失敗し、再チャレンジでは...
また、今回の課題は2班で組んで挑戦する課題だったが、もう...
終了行:
[[2016a/Member]]
#contents
*はじめに [#y7b27905]
今回の課題は、前回の課題2のコースを用いて紙コップの運搬を...
ライントレースの速さ正確さや、紙コップを何段積めるかなど...
**ルール [#j204430c]
基本ルール [#be8b192f]
紙コップをC地点、D地点にそれぞれ3個(合計6個)置き...
紙コップは上下どちらにおいてもかまわない
2台のロボットの場合はA地点とB地点からスタート、一...
最終的に黒線で囲まれた輪の中にC地点からの紙コップ...
紙コップを重ねる場所は、必ずしも目的地点の輪の中...
最終的に紙コップが自力で立っていること、またロボ...
競技時間はすべてのコップを重ね終わるまで、あるい...
審判の合図の後、5秒以内にロボットをスタートさせ、...
EV3のチームはA,B,Cにそれぞれマークした紙コップを...
EV3のチームはA,B,C,Dのどこからスタートしてもよい...
紙コップに色を塗ったり文字や絵をかいてもよいが、...
光センサは2セット合わせて2つまで使って良い、その...
基本得点の計算方法
1段目の紙コップ3点、2段目の紙コップ6点、・・、n段...
奇数段目にあるDのコップと偶数段目にあるCのコップ...
EV3は1段目のAのカップ2点、2段目のBのカップ4点、3...
技術点の計算方法
以下の動作の精度・スピード・確実性などを含めた技術的...
スタートしてから紙コップの地点まで移動する速さ、...
紙コップをつかむ動作 (3点)
紙コップをゴールまで運ぶ動作の速さ、正確さ (2点)
紙コップを重ねる動作 (3点)
2台のロボットの連携の良さ (3点)
自立型のロボットとしての形や動作の美しさ、斬新さ ...
ロボコン出場ロボットとしての完成度 (2点)
その他 (2点)
*我々の作戦 [#xb8fa0a6]
僕たちは、1台の機体で紙コップを運び積み上げることにした。...
*ロボットの説明 [#o2fecd49]
#ref(2016a/Member/ta/Mission3/image1 [8558].JPG,30%,ロボ...
上の写真のように、紙コップを持ち上げて運搬するためにクワ...
#ref(2016a/Member/ta/Mission3/image1 [9077].JPG,30%,紙コ...
こうして紙コップをはさみ、ハサミがそれ以上閉まらなくなる...
#ref(2016a/Member/ta/Mission3/image2 [9078].JPG,30%,かみ...
#ref(2016a/Member/ta/Mission3/image2 [8559].JPG,30%,紙コ...
ただ、ギアがうまくかみ合わず、紙コップが持ち上がらないこ...
*プログラムの説明 [#af77d978]
今回の課題では、内田君がプログラムを書いてくれた。
**基本的な定義 [#dab57da3]
#define BLACK 44 //これ以下は黒
#define WHITE 50 //これ以上は白
#define RIGHT_S OnFwd(OUT_A);OnRev(OUT_C); //右旋回
#define RIGHT_K OnFwd(OUT_A);Off(OUT_C); //右回転
#define LEFT_S OnFwd(OUT_C);OnRev(OUT_A); //左旋回
#define LEFT_K OnFwd(OUT_C);Off(OUT_A); //左回転
#define go_fwd(t) OnFwd(OUT_AC);Wait(t);Off(OUT_AC); //...
#define go_back(t) OnRev(OUT_AC);Wait(t);Off(OUT_AC); //...
#define STEP 1
#define arm_up(t) OnFwd(OUT_B);Wait(t);Off(OUT_B); //t秒...
#define arm_down(t) OnRev(OUT_B);Wait(t);Off(OUT_B); //t...
#define RIGHT_i(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t);Off...
#define LEFT_i(t) OnFwd(OUT_C);OnRev(OUT_A);Wait(t);OFF(...
**サブルーチン [#pceabb9b]
sub line_trace_i()
{
ClearTimer(0);
while(FastTimer(0) < 45) {
if (SENSOR_2 < BLACK) {
RIGHT_S;
} else if (SENSOR_2 < BLACK +2 ) {
RIGHT_K;
} else if (SENSOR_2 > WHITE ) {
LEFT_S;
ClearTimer(0);
} else if (SENSOR_2 >= WHITE -2 ) {
LEFT_K;
ClearTimer(0);
} else {
OnFwd(OUT_AC);
ClearTimer(0);
}
Wait(STEP);
}
Off(OUT_AC);
ClearTimer(0);
PlaySound(SOUND_UP);
Wait(100);
}
sub line_trace_ii()
{
ClearTimer(0);
while(FastTimer(0) < 55) {
if (SENSOR_2 < BLACK) {
RIGHT_S;
} else if (SENSOR_2 < BLACK +2 ) {
RIGHT_K;
} else if (SENSOR_2 > WHITE ) {
LEFT_S;
ClearTimer(0);
} else if (SENSOR_2 >= WHITE -2 ) {
LEFT_K;
ClearTimer(0);
} else {
OnFwd(OUT_AC);
ClearTimer(0);
}
Wait(STEP);
}
Off(OUT_AC);
PlaySound(SOUND_UP);
Wait(100);
}
sub turn_left()
{ ClearTimer(0);
while (FastTimer(0) < 290) {
LEFT_K;
}
}
sub turn_right()
{ ClearTimer(0);
while (FastTimer(0) < 90) {
RIGHT_K;
}
}
sub cross_fwd()
{ ClearTimer(0);
while (FastTimer(0) < 60) {
LEFT_K;
}
}
**メインプログラム [#n550f902]
task main()
{ go_fwd(100);
line_trace_i();
cross_fwd();
line_trace_i();
cross_fwd();
line_trace_i();
turn_right();
Off(OUT_AC);
arm_down(70);
go_fwd(200);
arm_up(90);
RIGHT_i(120);
arm_down(20);
Wait(50);
arm_down(70);
go_back(100);
arm_up(120);
RIGHT_i(50);
line_trace_ii();
arm_down(100);
go_fwd(200);
arm_up(80);
LEFT_i(130);
go_fwd(50);
arm_down(80);
}
*まとめ [#obb3a927]
テスト走行では3点はとれるようになっていたが、たまにライ...
本番では一回目はライントレースで失敗し、再チャレンジでは...
また、今回の課題は2班で組んで挑戦する課題だったが、もう...
ページ名: