2012a/A2/LoveCraft/M2
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*ライントレーサーの製作 [#gddc2aa3]
''目次''
#contents
**はじめに [#va189ab3]
やあ、皆さんこんにちは。私です。この間の似顔絵ロボットの...
~''ルール''
-コースには出入口を4ヶ所、ヘアピンカーブ、直角カーブを1ヶ...
-4つの入口のどこかからコースに入り、1周半以上コースを走り...
~今回のルールはこんなところです。意外に単純なルールですが...
**制作したロボット、プログラム [#ef2b121e]
***ロボットの構造 [#kfa89e45]
~&ref(120611_171225.jpg); &ref(120611_171411.jpg);
~左上の写真はロボットを斜め上から見たもので、右上の写真は...
~&ref(120611_171333.jpg);
~上の写真中のSensor_Lightと書かれている2つの青い部品が光...
~&ref(SENSOR_R.gif);
~上のアニメーションはライントレースの原理を示したものです...
~上にあるアニメーションにあるように、右側のセンサが黒線の...
***プログラム [#u00b7f00]
今回走るコースは下の写真の通りです。
~&ref(120615_175239.jpg);
~それぞれの出入口には(1)〜(4)の番号が振ってあります。今回...
#define BRIHGTNESS 45
#define go_straight OnFwd(OUT_A+OUT_C); //直進
#define turn_left OnFwd(OUT_C);Off(OUT_A); //左旋回
#define turn_right OnFwd(OUT_A);Off(OUT_C); //右旋回
int cross = 0; //交差点をまたいだ回数をカウントする関数
sub turn90()
{
OnFwd(OUT_A);OnRev(OUT_C);Wait(60);
}
sub hairpin()
{
SetPower(OUTAC,3);
if(SENSOR_1 < BRIGHTNESS) {turn_left;} //左側のセンサー...
if(SENSOR_3 < BRIGHTNESS) {turn_right;} //右側のセンサ...
else {go_straight;}//交差点は直進し
}
sub trace_line()
{
if(SENSOR_1 < BRIGHTNESS && ) {turn_left;} //左側のセ...
if(SENSOR_3 < BRIGHTNESS) {turn_right;} //右側のセンサ...
if(SENSOR_1 < BRIGHTNESS && SENSOR_3 < BRIGHTNESS) {...
else {go_straight;}
}
task main()
{ SetPower(OUT_AC,5);
SetSensor(SENSOR_1, SENSOR_LIGHT);
SetSensor(SENSOR_3, SENSOR_LIGHT);
go_straight(); until(SENSOR_1 < BRIGHTNESS && SENSOR_3 <...
turn_left(); until(SENSOR_3 > BRIGHTNESS);//サーキットに...
while(croos!=2){trace_line();};
ClearTimer(0);
while(FastTimer(0) < 100){trace_line();};
turn90();
while(SENSOR_1 < BRIGHTNESS) {trace_line();};
go_straight();Wait(50);
int cross = 0;
while(cross!=1) {trace_line();};
while(SENSOR_3 BRIGHTNESS) {trace_line();};
go_straight();Wait(30);
int cross = 0;
while(cross!=1) {trace_line();};
ClearTimer(0);
while(FastTimer(0) < 500) {trace_line();};
}
***工夫した点、頑張った点 [#p3a19b54]
今回の課題では、やはりロボット本体よりもプログラムのほう...
**まとめ [#va199284]
実は今回のロボット制作では、プログラム作りに時間がかかっ...
終了行:
*ライントレーサーの製作 [#gddc2aa3]
''目次''
#contents
**はじめに [#va189ab3]
やあ、皆さんこんにちは。私です。この間の似顔絵ロボットの...
~''ルール''
-コースには出入口を4ヶ所、ヘアピンカーブ、直角カーブを1ヶ...
-4つの入口のどこかからコースに入り、1周半以上コースを走り...
~今回のルールはこんなところです。意外に単純なルールですが...
**制作したロボット、プログラム [#ef2b121e]
***ロボットの構造 [#kfa89e45]
~&ref(120611_171225.jpg); &ref(120611_171411.jpg);
~左上の写真はロボットを斜め上から見たもので、右上の写真は...
~&ref(120611_171333.jpg);
~上の写真中のSensor_Lightと書かれている2つの青い部品が光...
~&ref(SENSOR_R.gif);
~上のアニメーションはライントレースの原理を示したものです...
~上にあるアニメーションにあるように、右側のセンサが黒線の...
***プログラム [#u00b7f00]
今回走るコースは下の写真の通りです。
~&ref(120615_175239.jpg);
~それぞれの出入口には(1)〜(4)の番号が振ってあります。今回...
#define BRIHGTNESS 45
#define go_straight OnFwd(OUT_A+OUT_C); //直進
#define turn_left OnFwd(OUT_C);Off(OUT_A); //左旋回
#define turn_right OnFwd(OUT_A);Off(OUT_C); //右旋回
int cross = 0; //交差点をまたいだ回数をカウントする関数
sub turn90()
{
OnFwd(OUT_A);OnRev(OUT_C);Wait(60);
}
sub hairpin()
{
SetPower(OUTAC,3);
if(SENSOR_1 < BRIGHTNESS) {turn_left;} //左側のセンサー...
if(SENSOR_3 < BRIGHTNESS) {turn_right;} //右側のセンサ...
else {go_straight;}//交差点は直進し
}
sub trace_line()
{
if(SENSOR_1 < BRIGHTNESS && ) {turn_left;} //左側のセ...
if(SENSOR_3 < BRIGHTNESS) {turn_right;} //右側のセンサ...
if(SENSOR_1 < BRIGHTNESS && SENSOR_3 < BRIGHTNESS) {...
else {go_straight;}
}
task main()
{ SetPower(OUT_AC,5);
SetSensor(SENSOR_1, SENSOR_LIGHT);
SetSensor(SENSOR_3, SENSOR_LIGHT);
go_straight(); until(SENSOR_1 < BRIGHTNESS && SENSOR_3 <...
turn_left(); until(SENSOR_3 > BRIGHTNESS);//サーキットに...
while(croos!=2){trace_line();};
ClearTimer(0);
while(FastTimer(0) < 100){trace_line();};
turn90();
while(SENSOR_1 < BRIGHTNESS) {trace_line();};
go_straight();Wait(50);
int cross = 0;
while(cross!=1) {trace_line();};
while(SENSOR_3 BRIGHTNESS) {trace_line();};
go_straight();Wait(30);
int cross = 0;
while(cross!=1) {trace_line();};
ClearTimer(0);
while(FastTimer(0) < 500) {trace_line();};
}
***工夫した点、頑張った点 [#p3a19b54]
今回の課題では、やはりロボット本体よりもプログラムのほう...
**まとめ [#va199284]
実は今回のロボット制作では、プログラム作りに時間がかかっ...
ページ名: