2019a/Member/Masa/Mission3
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2019a/Member]]
#contents
*課題3について [#hfe6ff7f]
ピンポン玉または青と赤のボールを運搬して、所定の容器の中...
#ref(./2019a-mission3.png,50%,今回のコース)
**基本ルール [#ze2fe9c0]
プラ容器内の玉を1個運べば8点。二つとも運べば20点。
L地点とL'地点の玉をどちらか1個運べば4点、2個とも運べば12...
競技時間は審判が続行不能と判断するまで、あるいはリタイア...
図のA地点または(および)A'地点からスタートする。ただし接...
開始の合図から5秒以内にスタートボタンを押す作業を完了す...
**今回のロボコンに対しての作戦 [#naec340a]
今回私たちは、ロボットを作る際にまず作戦を決めた。まず、...
ルートはAからB、Cを通ったところで右折し、箱を取り、次の箱...
*今回作ったロボットの解説 [#hd90a6c8]
#ref(./47808.jpg,40%,今回のロボット)
まずモーターの使いどころだが、弁当箱を持ち上げるために馬...
#ref(./47809.jpg,40%,今回のロボット)
弁当箱を持ち上げ、そのあとにレールをたどってもう一つの弁...
#ref(./47806.jpg,40%,今回のロボットの背面)
赤線の中にあるように、光センサーを二つ使うことでライント...
**ライントレースの方法 [#b725b2e5]
二つの光センサーを使っているため、レールの両端にセンサー...
#ref(./kousaten.png,40%,曲がり角)
曲がり角では片方のセンサーが黒と判断された場合、そのセン...
#ref(./cross.png,40%,交差点)
交差点に差し掛かった場合は両方のセンサーが黒と判断された...
*今回のプログラムと解説 [#h88f4b98]
**送信側のプログラム [#f2938fdc]
#define Line 43
#define UP 13
#define DOWN 12
#define STOP 11
ここは受信側と送信側で通信をするための数字を定義している。
sub follow_line()
{
SetSensor(SENSOR_2,SENSOR_LIGHT);
SetSensor(SENSOR_3,SENSOR_LIGHT);
int t;
t=FastTimer(0);
while(FastTimer(0)<250)
{
if(SENSOR_2>43 && SENSOR_3>43){OnFwd(OUT_BC);
}else if(SENSOR_2<Line && SENSOR_3>Line){OnFwd(O...
}else if(SENSOR_2>Line && SENSOR_3<Line){OnFwd(O...
}else {Off(OUT_BC);}
}
Off(OUT_BC);
}
ここまでがライントレースのプログラムとなっている。ライン...
右左折の判断は上記した通りとなっている。
task main()
{
ClearTimer(0);
follow_line();
Wait(20);
OnFwd(OUT_BC);
Wait(95);
Off(OUT_BC);
OnFwd(OUT_C);
OnRev(OUT_B);
Wait(100);
Off(OUT_BC);
OnRev(OUT_BC);
Wait(230);
Off(OUT_BC);
Wait(40);
ここまではA→Bの間でライントレース後に箱まで調整して取りに...
SendMessage(DOWN);
Wait(1);
SendMessage(STOP);
ここで受信側のロボットにアームを下げるように指示をし、そ...
OnFwd(OUT_BC);
Wait(300);
Off(OUT_BC);
OnFwd(OUT_B);
OnRev(OUT_C);
Wait(220);
Off(OUT_BC);
Wait(20);
OnFwd(OUT_BC);
Wait(400);
Off(OUT_BC);
OnFwd(OUT_C);
OnRev(OUT_B);
Wait(120);
Off(OUT_BC);
その後箱を取り、空の箱まで移動させている
OnRev(OUT_BC);
SendMessage(UP);
Wait(200);
SendMessage(STOP);
Off(OUT_BC);
}
最後に箱を上げながらバックすることで確実に空の箱にボール...
**受信側のプログラム [#q748b0f3]
#define arm_up OnFwd(OUT_AC);Wait(30);Off(OUT_AC);l
#define arm_down SetPower(OUT_AC,1);OnRev(OUT_AC);Wait(5...
ここではアームを上げる動きと、下げる動きの定義づけをして...
#define UP 13
#define DOWN 12
#define STOP 11
ここは通信のための定義をしている。
task main()
{
ClearMessage();
While(true){
if(Message() == STOP){
Off(OUT_AC);
}else if(Message() == DOWN){
arm_down;
}else if(Message() == UP){
arm_up;}
}
}
メッセージを受信してから、アームの上げ下げをするというプ...
*感想 [#ad40e54b]
全てのボールを拾わずに箱の中だけに焦点を当てて確実にボー...
あまり汎用性の高いプログラムではなく、その位置にある箱を...
終了行:
[[2019a/Member]]
#contents
*課題3について [#hfe6ff7f]
ピンポン玉または青と赤のボールを運搬して、所定の容器の中...
#ref(./2019a-mission3.png,50%,今回のコース)
**基本ルール [#ze2fe9c0]
プラ容器内の玉を1個運べば8点。二つとも運べば20点。
L地点とL'地点の玉をどちらか1個運べば4点、2個とも運べば12...
競技時間は審判が続行不能と判断するまで、あるいはリタイア...
図のA地点または(および)A'地点からスタートする。ただし接...
開始の合図から5秒以内にスタートボタンを押す作業を完了す...
**今回のロボコンに対しての作戦 [#naec340a]
今回私たちは、ロボットを作る際にまず作戦を決めた。まず、...
ルートはAからB、Cを通ったところで右折し、箱を取り、次の箱...
*今回作ったロボットの解説 [#hd90a6c8]
#ref(./47808.jpg,40%,今回のロボット)
まずモーターの使いどころだが、弁当箱を持ち上げるために馬...
#ref(./47809.jpg,40%,今回のロボット)
弁当箱を持ち上げ、そのあとにレールをたどってもう一つの弁...
#ref(./47806.jpg,40%,今回のロボットの背面)
赤線の中にあるように、光センサーを二つ使うことでライント...
**ライントレースの方法 [#b725b2e5]
二つの光センサーを使っているため、レールの両端にセンサー...
#ref(./kousaten.png,40%,曲がり角)
曲がり角では片方のセンサーが黒と判断された場合、そのセン...
#ref(./cross.png,40%,交差点)
交差点に差し掛かった場合は両方のセンサーが黒と判断された...
*今回のプログラムと解説 [#h88f4b98]
**送信側のプログラム [#f2938fdc]
#define Line 43
#define UP 13
#define DOWN 12
#define STOP 11
ここは受信側と送信側で通信をするための数字を定義している。
sub follow_line()
{
SetSensor(SENSOR_2,SENSOR_LIGHT);
SetSensor(SENSOR_3,SENSOR_LIGHT);
int t;
t=FastTimer(0);
while(FastTimer(0)<250)
{
if(SENSOR_2>43 && SENSOR_3>43){OnFwd(OUT_BC);
}else if(SENSOR_2<Line && SENSOR_3>Line){OnFwd(O...
}else if(SENSOR_2>Line && SENSOR_3<Line){OnFwd(O...
}else {Off(OUT_BC);}
}
Off(OUT_BC);
}
ここまでがライントレースのプログラムとなっている。ライン...
右左折の判断は上記した通りとなっている。
task main()
{
ClearTimer(0);
follow_line();
Wait(20);
OnFwd(OUT_BC);
Wait(95);
Off(OUT_BC);
OnFwd(OUT_C);
OnRev(OUT_B);
Wait(100);
Off(OUT_BC);
OnRev(OUT_BC);
Wait(230);
Off(OUT_BC);
Wait(40);
ここまではA→Bの間でライントレース後に箱まで調整して取りに...
SendMessage(DOWN);
Wait(1);
SendMessage(STOP);
ここで受信側のロボットにアームを下げるように指示をし、そ...
OnFwd(OUT_BC);
Wait(300);
Off(OUT_BC);
OnFwd(OUT_B);
OnRev(OUT_C);
Wait(220);
Off(OUT_BC);
Wait(20);
OnFwd(OUT_BC);
Wait(400);
Off(OUT_BC);
OnFwd(OUT_C);
OnRev(OUT_B);
Wait(120);
Off(OUT_BC);
その後箱を取り、空の箱まで移動させている
OnRev(OUT_BC);
SendMessage(UP);
Wait(200);
SendMessage(STOP);
Off(OUT_BC);
}
最後に箱を上げながらバックすることで確実に空の箱にボール...
**受信側のプログラム [#q748b0f3]
#define arm_up OnFwd(OUT_AC);Wait(30);Off(OUT_AC);l
#define arm_down SetPower(OUT_AC,1);OnRev(OUT_AC);Wait(5...
ここではアームを上げる動きと、下げる動きの定義づけをして...
#define UP 13
#define DOWN 12
#define STOP 11
ここは通信のための定義をしている。
task main()
{
ClearMessage();
While(true){
if(Message() == STOP){
Off(OUT_AC);
}else if(Message() == DOWN){
arm_down;
}else if(Message() == UP){
arm_up;}
}
}
メッセージを受信してから、アームの上げ下げをするというプ...
*感想 [#ad40e54b]
全てのボールを拾わずに箱の中だけに焦点を当てて確実にボー...
あまり汎用性の高いプログラムではなく、その位置にある箱を...
ページ名: