2016b/Member/god22ila/Mission3
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
目次
#Contents
*課題3の内容 [#g40fe707]
#ref(2016b/Member/god22ila/Mission3/2016b-mission3.png,50...
今回の課題は基本ルールに従ってピッチャーロボとバッターロ...
**基本ルール [#z54d30fa]
-ピッチャーロボとバッターロボが決められた場所についてピン...
-ピッチャーロボはA地点からM地点まで移動
-バッターロボはC地点からB地点まで移動
-高さの制限はないがスタートの時点で機体が枠内に収まること
-M,B地点では接地部分が枠内に収まっていること
-ピッチャーロボはスタート時にピンポン玉を5個まで持てる
-バッターロボはピンポン玉を3秒以上持っていてはいけない
-移動の途中でゴールにぶつかってはいけない
**得点の計算方法 [#m8cee12c]
-5つあるゴールに書かれている数字を合計するが、同じゴール...
-打つことはできたがどのゴールにも入らなかった場合は1点に...
**技術点の説明 [#ca104426]
以下の評価ポイントを含めた技術的な工夫や芸術性について他...
**評価ポイント [#c216650b]
-スタートから所定の位置まで移動するスピードと正確さ(3点)
-ピンポン玉を投げる動作について(3点)
-ピンポン玉を打つ動作について(3点)
-2台のロボットの連携の良さについて(3点)
-自立型ロボットとしての形や動作の美しさ、斬新さについて(3...
-ロボコン出場ロボットとしての完成度(3点)
-その他(2点)
*本体の説明(バッターロボ) [#qfbc9a2d]
#ref(2016b/Member/god22ila/Mission3/IMG_kitai1.JPG,50%,機...
本体は今回もライントレーサーを使うこともあり、課題2で使っ...
*アームの説明(バッターロボ) [#r24463bf]
#ref(2016b/Member/god22ila/Mission3/IMG_kitai3.JPG,50%,機...
斜め上から
#ref(2016b/Member/god22ila/Mission3/IMG_kitai4.JPG,50%,ア...
アームは直接モータにブロックを付けた構造になっているので...
*本体の説明(ピッチャーロボ) [#fe6d1ad0]
#ref(2016b/Member/god22ila/Mission3/IMG_kitai2.JPG,50%,機...
バッターロボと同じくライントレーサーを使うので、前回の僕...
*アームの説明(ピッチャーロボ) [#mac7a008]
#ref(2016b/Member/god22ila/Mission3/IMG_armkeisya.jpg,50%...
ピンポン玉の収納部の下が傾斜しているのでピンポン玉がそこ...
#ref(2016b/Member/god22ila/Mission3/IMG_syuriken.jpg,50%,...
ピンポン玉がどんどん落ちてこないように手裏剣型のストッパ...
*2台を通信するプログラムについて [#cbea9911]
バッターロボをマスター、ピッチャーロボをスレーブとし2台で...
*バッターロボのプログラム [#kfe49bfb]
#define turnright OnFwd(OUT_C,45);
#define turnleft OnFwd(OUT_B,45);
#define senkairight OnFwdSync(OUT_BC,45,-100);
#define senkaileft OnFwdSync(OUT_BC,45,100);
#define goforward OnFwdSync(OUT_BC,60,0);
#define zokkou Wait(400);
#define CONN 1 //スレーブの接続番号
#define SIGNALON 11 //モータを動かすメッセージ
#define SIGNALOFF 12 //モータを止めるメッセージ
**光センサーを起動 [#xbad0f68]
task main()
{
SetSensorLight(S1);
int n=0; //nの値を決める
int m=1200; //mの値を決める
**ライントレースで目標の場所まで移動 [#x92b7f6c]
バッターロボはC地点からB地点までM地点を介して移動する。C...
-C〜Mまで
while(n<2){ //nの値が2より小さいとき
if(SENSOR_1>40){ //白と認識したとき
goforward //直進
}
else{ //違ったら
goforward //白と認識するまで直進する
zokkou
Off(OUT_BC);
zokkou
n++; //nの値を増やす
}
}
-M〜Bまで
Off(OUT_BC);//Bのほうへ機体を向ける
zokkou
senkairight
Wait(1300);
Off(OUT_BC);
nの値が2〜5までの時
while(n<6){
if(SENSOR_1>40){ //白と認識されているとき
goforward //前進
}
else{ //違ったら
goforward //白と認識されるまで前進して
zokkou
Off(OUT_BC);
zokkou
n++; //nの値を1増やす
}
}
微調整をしてBの枠の中に入り、ボールを打てる向きに機体の向...
Off(OUT_BC); //機体の向きを調節するためのプログラム
zokkou
goforward
Wait(600);
Off(OUT_BC);
zokkou
senkaileft
Wait(700);
Off(OUT_BC);
zokkou
goforward
Wait(1100);
Off(OUT_BC);
Wait(2000);
**通信のプログラム [#f55eba9c]
while (m<1450){ //mの値が1450よりも小さいとき
SendRemoteNumber(CONN,MAILBOX1,SIGNALON); //スレー...
-バットで打つプログラム
Wait(m); //mの値でピンポン玉を打つタイミン...
RotateMotor(OUT_A,75,180);
Wait(500);
RotateMotor(OUT_A,-20,180);
Wait(500);
m=m+50; //mの値を増やす
}
SendRemoteNumber(CONN,MAILBOX1,SIGNALOFF); //スレー...
Off(OUT_A);
}
スレーブにSIGNALONが送信されるとピンポン玉が発射される。...
*ピッチャーロボのプログラム [#cd84a823]
#define turnright OnFwd(OUT_C,45);
#define turnleft OnFwd(OUT_B,45);
#define seikairight OnFwdSync(OUT_BC,45,-100);
#define senkaileft OnFwdSync(OUT_BC,45,100);
#define goforward OnFwdSync(OUT_BC,45,0);
#define zokkou Wait(400);
#define SIGNALON 11 //モータを動かすメッセージ
#define SIGNALOFF 12 //モータを止めるメッセージ
**光センサーを起動 [#k20e6350]
task main()
{
SetSensorLight(S1);//光センサー起動
int n=0;//nの値を決める
teisi
**ライントレースで目標の場所まで移動 [#u93b11a5]
ロボットは枠の中からスタートしMに向かって直進し、Mの枠内...
while(n<4){ //スタート地点からM地点まで行くプログ...
if(SENSOR_1>37){ //白と認識したとき
goforward //前進
}
else{ //違ったら
goforward //白と認識されるまで前進し
zokkou
Off(OUT_BC);
zokkou
n++; //nの値を増やす
}
}
nの値が4以上になったら方向転換してバッターロボのほうに発...
Off(OUT_BC);//方向を変えるプログラム
goforward
zokkou
Off(OUT_BC);
zokkou
turnright
Wait(3500);
Off(OUT_BC);
**通信のプログラム [#m12ccad8]
MAILBOXに値を受け取ることにより動作を実行する。受け取った...
int msg; //受け取った値を入れておく変数
while (true) {
ReceiveRemoteNumber(MAILBOX1,true,msg);//MAILBOX1の...
if (msg == SIGNALON) { //SIGNALONを受け取った場合
RotateMotor(OUT_A,-20, 95);//ピンポン玉を発射する...
}
if (msg == SIGNALOFF) { //SIGNALOFFを受け取った場合
Off(OUT_A); //停止
}
}
}
*感想 [#k0a1c7eb]
今回の課題は2台のロボットを用いて野球をするというもので、...
終了行:
目次
#Contents
*課題3の内容 [#g40fe707]
#ref(2016b/Member/god22ila/Mission3/2016b-mission3.png,50...
今回の課題は基本ルールに従ってピッチャーロボとバッターロ...
**基本ルール [#z54d30fa]
-ピッチャーロボとバッターロボが決められた場所についてピン...
-ピッチャーロボはA地点からM地点まで移動
-バッターロボはC地点からB地点まで移動
-高さの制限はないがスタートの時点で機体が枠内に収まること
-M,B地点では接地部分が枠内に収まっていること
-ピッチャーロボはスタート時にピンポン玉を5個まで持てる
-バッターロボはピンポン玉を3秒以上持っていてはいけない
-移動の途中でゴールにぶつかってはいけない
**得点の計算方法 [#m8cee12c]
-5つあるゴールに書かれている数字を合計するが、同じゴール...
-打つことはできたがどのゴールにも入らなかった場合は1点に...
**技術点の説明 [#ca104426]
以下の評価ポイントを含めた技術的な工夫や芸術性について他...
**評価ポイント [#c216650b]
-スタートから所定の位置まで移動するスピードと正確さ(3点)
-ピンポン玉を投げる動作について(3点)
-ピンポン玉を打つ動作について(3点)
-2台のロボットの連携の良さについて(3点)
-自立型ロボットとしての形や動作の美しさ、斬新さについて(3...
-ロボコン出場ロボットとしての完成度(3点)
-その他(2点)
*本体の説明(バッターロボ) [#qfbc9a2d]
#ref(2016b/Member/god22ila/Mission3/IMG_kitai1.JPG,50%,機...
本体は今回もライントレーサーを使うこともあり、課題2で使っ...
*アームの説明(バッターロボ) [#r24463bf]
#ref(2016b/Member/god22ila/Mission3/IMG_kitai3.JPG,50%,機...
斜め上から
#ref(2016b/Member/god22ila/Mission3/IMG_kitai4.JPG,50%,ア...
アームは直接モータにブロックを付けた構造になっているので...
*本体の説明(ピッチャーロボ) [#fe6d1ad0]
#ref(2016b/Member/god22ila/Mission3/IMG_kitai2.JPG,50%,機...
バッターロボと同じくライントレーサーを使うので、前回の僕...
*アームの説明(ピッチャーロボ) [#mac7a008]
#ref(2016b/Member/god22ila/Mission3/IMG_armkeisya.jpg,50%...
ピンポン玉の収納部の下が傾斜しているのでピンポン玉がそこ...
#ref(2016b/Member/god22ila/Mission3/IMG_syuriken.jpg,50%,...
ピンポン玉がどんどん落ちてこないように手裏剣型のストッパ...
*2台を通信するプログラムについて [#cbea9911]
バッターロボをマスター、ピッチャーロボをスレーブとし2台で...
*バッターロボのプログラム [#kfe49bfb]
#define turnright OnFwd(OUT_C,45);
#define turnleft OnFwd(OUT_B,45);
#define senkairight OnFwdSync(OUT_BC,45,-100);
#define senkaileft OnFwdSync(OUT_BC,45,100);
#define goforward OnFwdSync(OUT_BC,60,0);
#define zokkou Wait(400);
#define CONN 1 //スレーブの接続番号
#define SIGNALON 11 //モータを動かすメッセージ
#define SIGNALOFF 12 //モータを止めるメッセージ
**光センサーを起動 [#xbad0f68]
task main()
{
SetSensorLight(S1);
int n=0; //nの値を決める
int m=1200; //mの値を決める
**ライントレースで目標の場所まで移動 [#x92b7f6c]
バッターロボはC地点からB地点までM地点を介して移動する。C...
-C〜Mまで
while(n<2){ //nの値が2より小さいとき
if(SENSOR_1>40){ //白と認識したとき
goforward //直進
}
else{ //違ったら
goforward //白と認識するまで直進する
zokkou
Off(OUT_BC);
zokkou
n++; //nの値を増やす
}
}
-M〜Bまで
Off(OUT_BC);//Bのほうへ機体を向ける
zokkou
senkairight
Wait(1300);
Off(OUT_BC);
nの値が2〜5までの時
while(n<6){
if(SENSOR_1>40){ //白と認識されているとき
goforward //前進
}
else{ //違ったら
goforward //白と認識されるまで前進して
zokkou
Off(OUT_BC);
zokkou
n++; //nの値を1増やす
}
}
微調整をしてBの枠の中に入り、ボールを打てる向きに機体の向...
Off(OUT_BC); //機体の向きを調節するためのプログラム
zokkou
goforward
Wait(600);
Off(OUT_BC);
zokkou
senkaileft
Wait(700);
Off(OUT_BC);
zokkou
goforward
Wait(1100);
Off(OUT_BC);
Wait(2000);
**通信のプログラム [#f55eba9c]
while (m<1450){ //mの値が1450よりも小さいとき
SendRemoteNumber(CONN,MAILBOX1,SIGNALON); //スレー...
-バットで打つプログラム
Wait(m); //mの値でピンポン玉を打つタイミン...
RotateMotor(OUT_A,75,180);
Wait(500);
RotateMotor(OUT_A,-20,180);
Wait(500);
m=m+50; //mの値を増やす
}
SendRemoteNumber(CONN,MAILBOX1,SIGNALOFF); //スレー...
Off(OUT_A);
}
スレーブにSIGNALONが送信されるとピンポン玉が発射される。...
*ピッチャーロボのプログラム [#cd84a823]
#define turnright OnFwd(OUT_C,45);
#define turnleft OnFwd(OUT_B,45);
#define seikairight OnFwdSync(OUT_BC,45,-100);
#define senkaileft OnFwdSync(OUT_BC,45,100);
#define goforward OnFwdSync(OUT_BC,45,0);
#define zokkou Wait(400);
#define SIGNALON 11 //モータを動かすメッセージ
#define SIGNALOFF 12 //モータを止めるメッセージ
**光センサーを起動 [#k20e6350]
task main()
{
SetSensorLight(S1);//光センサー起動
int n=0;//nの値を決める
teisi
**ライントレースで目標の場所まで移動 [#u93b11a5]
ロボットは枠の中からスタートしMに向かって直進し、Mの枠内...
while(n<4){ //スタート地点からM地点まで行くプログ...
if(SENSOR_1>37){ //白と認識したとき
goforward //前進
}
else{ //違ったら
goforward //白と認識されるまで前進し
zokkou
Off(OUT_BC);
zokkou
n++; //nの値を増やす
}
}
nの値が4以上になったら方向転換してバッターロボのほうに発...
Off(OUT_BC);//方向を変えるプログラム
goforward
zokkou
Off(OUT_BC);
zokkou
turnright
Wait(3500);
Off(OUT_BC);
**通信のプログラム [#m12ccad8]
MAILBOXに値を受け取ることにより動作を実行する。受け取った...
int msg; //受け取った値を入れておく変数
while (true) {
ReceiveRemoteNumber(MAILBOX1,true,msg);//MAILBOX1の...
if (msg == SIGNALON) { //SIGNALONを受け取った場合
RotateMotor(OUT_A,-20, 95);//ピンポン玉を発射する...
}
if (msg == SIGNALOFF) { //SIGNALOFFを受け取った場合
Off(OUT_A); //停止
}
}
}
*感想 [#k0a1c7eb]
今回の課題は2台のロボットを用いて野球をするというもので、...
ページ名: