2014a/Member/ayusaka/Mission2
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
目次
#contents
*課題 [#y8345716]
○2台のロボットで紙コップを収集し、同じ番号の書かれている...
○ルール~
◦競技時間は審判が続行不能と判断するまで、あるいはリ...
◦図の右上のスタートエリアからスタートする(課題1と同...
◦図の左半分にある紙コップを集めて、それぞれ右半分に...
◦右半分の紙コップは10cm内の移動は認める~
◦開始の合図から5秒以内にスタートボタンを押す作業を...
◦競技が終了するまで、ロボットに触ったり人間が遠隔で...
◦途中でうまく動かなくなった場合、1回限り再スタート...
◦同じ番号の紙コップに重ねることができれば、1組で10点~
◦番号が1違いの紙コップに重ねれば、1組で2点~
◦番号が2違いの紙コップに重ねれば、1組で0点~
◦最終的な紙コップの位置が10cm以上動いた場合は、その...
*メンバー [#a7bd6338]
秋山和哉(ayusaka)~
岩佐暁史(kanzaki)~
藤岡芳弥(fuji)~
*ロボット [#v57f11ea]
全体像~
&ref(image-01.jpg);~
センサー部分。ライントレース用、コップの判断用と写真の様...
&ref(image-02.jpg);~
コップを掴む機構。これに押しはめて持ち上げる。上について...
&ref(image-03.jpg);~
掴む部分を上下させる機構。ギザギザの部分を歯車で駆け上が...
&ref(image-04.jpg);~
補助部分。前方につけてコップの位置を調整する~
&ref(image-05.jpg);~
コップを掴んだ様子~
&ref(image-06.jpg);~
*プログラム [#a9b65eea]
#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(S...
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);
}
上記のプログラムがライントレースです。 光センサーにより明...
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地点まで紙コップを運びます
} } }
未完成ですがここまでしかできませんでした。予定ではこのま...
↑
コップを掴むプログラム †
#define SIGNALON 13
task main ()
{
ClearMessage();
while (true) {
until (Message() == SIGNALON);
OnFwd(OUT_AC);
Wait(30);
OnRev(OUT_AC);
Wait(30);
Off(OUT_AC); } }
*感想、工夫した点 [#jac4db70]
ロボットがどう紙コップを掴むのか、そして離すのかを考える...
終了行:
目次
#contents
*課題 [#y8345716]
○2台のロボットで紙コップを収集し、同じ番号の書かれている...
○ルール~
◦競技時間は審判が続行不能と判断するまで、あるいはリ...
◦図の右上のスタートエリアからスタートする(課題1と同...
◦図の左半分にある紙コップを集めて、それぞれ右半分に...
◦右半分の紙コップは10cm内の移動は認める~
◦開始の合図から5秒以内にスタートボタンを押す作業を...
◦競技が終了するまで、ロボットに触ったり人間が遠隔で...
◦途中でうまく動かなくなった場合、1回限り再スタート...
◦同じ番号の紙コップに重ねることができれば、1組で10点~
◦番号が1違いの紙コップに重ねれば、1組で2点~
◦番号が2違いの紙コップに重ねれば、1組で0点~
◦最終的な紙コップの位置が10cm以上動いた場合は、その...
*メンバー [#a7bd6338]
秋山和哉(ayusaka)~
岩佐暁史(kanzaki)~
藤岡芳弥(fuji)~
*ロボット [#v57f11ea]
全体像~
&ref(image-01.jpg);~
センサー部分。ライントレース用、コップの判断用と写真の様...
&ref(image-02.jpg);~
コップを掴む機構。これに押しはめて持ち上げる。上について...
&ref(image-03.jpg);~
掴む部分を上下させる機構。ギザギザの部分を歯車で駆け上が...
&ref(image-04.jpg);~
補助部分。前方につけてコップの位置を調整する~
&ref(image-05.jpg);~
コップを掴んだ様子~
&ref(image-06.jpg);~
*プログラム [#a9b65eea]
#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(S...
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);
}
上記のプログラムがライントレースです。 光センサーにより明...
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地点まで紙コップを運びます
} } }
未完成ですがここまでしかできませんでした。予定ではこのま...
↑
コップを掴むプログラム †
#define SIGNALON 13
task main ()
{
ClearMessage();
while (true) {
until (Message() == SIGNALON);
OnFwd(OUT_AC);
Wait(30);
OnRev(OUT_AC);
Wait(30);
Off(OUT_AC); } }
*感想、工夫した点 [#jac4db70]
ロボットがどう紙コップを掴むのか、そして離すのかを考える...
ページ名: