2013b/Member/kk/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
『2013b/Member/kk/Mission1』
*ロボットの紹介 [#c17bbfd1]
ライントレーサー。紙の上に書かれた黒い線を自動でたどって...
#ref(robotics3.jpg,around);
~四輪モデルでは半径が1.5cmのカーブがスムーズに曲がり切れ...
&br;前の二つのタイヤはそれぞれ独立したモーターで動かし、...
&br;回転軸とセンサーライトまでの距離が短いためセンサーが...
&br;後輪はロボット全体を支えるための補助となっています。
#clear
。
#ref(front.jpg,around);
前面。缶を挟む構造がない為何もありません。
#clear
。
#ref(sencer.jpg,around);
光センサーは値にばらつきが出ないように地面に近くなってい...
&br;光センサーと前輪の車軸との距離は近めで3?ほどです。
#clear
*コース [#k645f3c7]
#ref(mission1.jpg,around);
課題は交差点を判断し、途中におかれた缶をどかし、元の位置...
~問題の半径1.5のカーブでは、主となる前の二つのタイヤが離...
#clear
*プログラム [#x2919ef6]
決められたコースを一周するプログラムです。
-定義文
...
#define turn_left OnFwd(OUT_C);Off(OUT_A);// 左回り ...
#define turn_right OnFwd(OUT_A);Off(OUT_C);// 右回り...
#define go OnFwd(OUT_AC);// 直進 ...
#define tu_le OnFwd(OUT_C);OnRev(OUT_A);// 左小回り
#define tu_ri OnFwd(OUT_A);OnRev(OUT_C);// 右小回り
#define black 38 //
#define white 46 //
#define conr_1 700 ]-| それぞ...
#define conr_2 520 | 時間を...
#define conr_3 109 |
#define conr_4 400 ]-| ...
交差点近くになるまでの時間は、ライントレースで急なカー...
&br; この時間条件をif文に入れることで交差点付近でのみ c...
-サブルーチン
sub conrring()
{PlaySound(SOUND_DOWN); 判断を知らせる為の音
SetPower(OUT_AC,5); 少し遅くタイヤが回転します
tu_le;
Wait(20);
Off(OUT_AC);
go;
Wait(20);
ClearTimer(0);}
交差点を判断した時に行う一連の動作です。音が鳴ってからま...
&br SetPowerはこの一連の動きを制御するのにゆっくりと動い...
-ライントレースをするメインプログラムです
task main()
{
int counts; counts=0; ・・・・・・連続で黒と判断し...
int order; order=0; ・・・・・・交差点ごとに特定...
SetSensor(SENSOR_1,SENSOR_LIGHT);
ClearTimer(0);
while(true)
{
if ((conr_times>2)&&(FastTimer(0)>conr_4)&&(orde...
{conrring;order++;}
else if((conr_times>2)&&(FastTimer(0)>conr_3)&&(orde...
{conrring;order++;}
else if((conr_times>2)&&(FastTimer(0)>conr_2)&&(orde...
{conrring;order++;}
else if((conr_times>2)&&(FastTimer(0)>conr_1))
{conrring;order++;}
else if (SENSOR_1>white+1){tu_le;conr_times--;}...
else if(SENSOR_1<black-1){tu_ri;conr_times++;} ...
else if(SENSOR_1>=white){turn_left;conr_times--;} ...
else if(SENSOR_1<=black){turn_right;conr_times++;} ...
else {go;} ...
}
}
プログラムの説明
#ref(threshuhold.jpg)
-ノーマルトレースでは、黒・薄い黒・境界部・薄い白・白の5...
~黒領域では右回転、白領域では左回転をその場で行います。薄...
-交差点に来ると特定の動きをするプログラムが始動する仕組み...
-プログラムは上から順に動いていくためif文では個々の条件の...
交差点判断一回目。光センサーで黒だった回数(...
交差点に接近する時間が経つまでは条件外で動...
((conr_times>2)&&(FastTimer(0)>conr_1))
{conrring;order++;}
交差点を一回渡ったことで初めてorderが1増え...
プログラムが動くようになります。
((conr_times>2)&&(FastTimer(0)>conr_2)&&(orde...
{conrring;order++;}
三回目ーーー。
((conr_times>2)&&(FastTimer(0)>conr_3)&&(orde...
{conrring;order++;}
四回目ーーー。
((conr_times>2)&&((FastTimer(0)>conr_4)&&(ord...
{conrring;order++;}
*課題 [#m06816f8]
確実に交差点を渡るため4つのプログラムを用意。しかし交...
&br; プログラムが見にくく、長くなる原因となりました。一...
-プログラムに柔軟性を持たせる
-誤作動を起こさない線の判断の方法を考える
*感想 [#mafe0526]
今回のライントレースでは交差点を超えて一周することが出...
はじめに説明書に書いてあるとうりに作った四輪のロボット...
終了行:
『2013b/Member/kk/Mission1』
*ロボットの紹介 [#c17bbfd1]
ライントレーサー。紙の上に書かれた黒い線を自動でたどって...
#ref(robotics3.jpg,around);
~四輪モデルでは半径が1.5cmのカーブがスムーズに曲がり切れ...
&br;前の二つのタイヤはそれぞれ独立したモーターで動かし、...
&br;回転軸とセンサーライトまでの距離が短いためセンサーが...
&br;後輪はロボット全体を支えるための補助となっています。
#clear
。
#ref(front.jpg,around);
前面。缶を挟む構造がない為何もありません。
#clear
。
#ref(sencer.jpg,around);
光センサーは値にばらつきが出ないように地面に近くなってい...
&br;光センサーと前輪の車軸との距離は近めで3?ほどです。
#clear
*コース [#k645f3c7]
#ref(mission1.jpg,around);
課題は交差点を判断し、途中におかれた缶をどかし、元の位置...
~問題の半径1.5のカーブでは、主となる前の二つのタイヤが離...
#clear
*プログラム [#x2919ef6]
決められたコースを一周するプログラムです。
-定義文
...
#define turn_left OnFwd(OUT_C);Off(OUT_A);// 左回り ...
#define turn_right OnFwd(OUT_A);Off(OUT_C);// 右回り...
#define go OnFwd(OUT_AC);// 直進 ...
#define tu_le OnFwd(OUT_C);OnRev(OUT_A);// 左小回り
#define tu_ri OnFwd(OUT_A);OnRev(OUT_C);// 右小回り
#define black 38 //
#define white 46 //
#define conr_1 700 ]-| それぞ...
#define conr_2 520 | 時間を...
#define conr_3 109 |
#define conr_4 400 ]-| ...
交差点近くになるまでの時間は、ライントレースで急なカー...
&br; この時間条件をif文に入れることで交差点付近でのみ c...
-サブルーチン
sub conrring()
{PlaySound(SOUND_DOWN); 判断を知らせる為の音
SetPower(OUT_AC,5); 少し遅くタイヤが回転します
tu_le;
Wait(20);
Off(OUT_AC);
go;
Wait(20);
ClearTimer(0);}
交差点を判断した時に行う一連の動作です。音が鳴ってからま...
&br SetPowerはこの一連の動きを制御するのにゆっくりと動い...
-ライントレースをするメインプログラムです
task main()
{
int counts; counts=0; ・・・・・・連続で黒と判断し...
int order; order=0; ・・・・・・交差点ごとに特定...
SetSensor(SENSOR_1,SENSOR_LIGHT);
ClearTimer(0);
while(true)
{
if ((conr_times>2)&&(FastTimer(0)>conr_4)&&(orde...
{conrring;order++;}
else if((conr_times>2)&&(FastTimer(0)>conr_3)&&(orde...
{conrring;order++;}
else if((conr_times>2)&&(FastTimer(0)>conr_2)&&(orde...
{conrring;order++;}
else if((conr_times>2)&&(FastTimer(0)>conr_1))
{conrring;order++;}
else if (SENSOR_1>white+1){tu_le;conr_times--;}...
else if(SENSOR_1<black-1){tu_ri;conr_times++;} ...
else if(SENSOR_1>=white){turn_left;conr_times--;} ...
else if(SENSOR_1<=black){turn_right;conr_times++;} ...
else {go;} ...
}
}
プログラムの説明
#ref(threshuhold.jpg)
-ノーマルトレースでは、黒・薄い黒・境界部・薄い白・白の5...
~黒領域では右回転、白領域では左回転をその場で行います。薄...
-交差点に来ると特定の動きをするプログラムが始動する仕組み...
-プログラムは上から順に動いていくためif文では個々の条件の...
交差点判断一回目。光センサーで黒だった回数(...
交差点に接近する時間が経つまでは条件外で動...
((conr_times>2)&&(FastTimer(0)>conr_1))
{conrring;order++;}
交差点を一回渡ったことで初めてorderが1増え...
プログラムが動くようになります。
((conr_times>2)&&(FastTimer(0)>conr_2)&&(orde...
{conrring;order++;}
三回目ーーー。
((conr_times>2)&&(FastTimer(0)>conr_3)&&(orde...
{conrring;order++;}
四回目ーーー。
((conr_times>2)&&((FastTimer(0)>conr_4)&&(ord...
{conrring;order++;}
*課題 [#m06816f8]
確実に交差点を渡るため4つのプログラムを用意。しかし交...
&br; プログラムが見にくく、長くなる原因となりました。一...
-プログラムに柔軟性を持たせる
-誤作動を起こさない線の判断の方法を考える
*感想 [#mafe0526]
今回のライントレースでは交差点を超えて一周することが出...
はじめに説明書に書いてあるとうりに作った四輪のロボット...
ページ名: