2015a/Member/sa-tan/Mission2
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
#contents
*ロボット [#w8bdd8ff]
**はじめに [#i3d85ab2]
このコースのAからBをトレースする。
#ref(./yakushi.shinshu-u.ac.jp.png,50%);
黒い線と白いところの間をトレースし、交差点を横断し、ボー...
**ロボット本体構造 [#n052a679]
***機体の外観 [#if2cdaf5]
クワガタのような外観
動力のあるタイヤが2つにクルクルと回転する補助輪が一つで...
アームは下からボールをすくいあげるように掴む構造になって...
明るさセンサーはタイヤから少し離れた前方についている。コ...
#ref(./IMG_2255.JPG,10%);
&ref(./IMG_2256.JPG,10%);
&ref(./IMG_2258.JPG,10%);
&ref(./IMG_2261.JPG,10%);
***ボールをつかんで離すための機構 [#c9b87d92]
モーターの縦回転を横回転に変えるために4枚歯の歯を4つ使っ...
&ref(./57.png,30%);
アームが大きく開いていて、それが閉じることによって
ボールをつかむことが出来る。
#ref(./IMG_2259.JPG,10%);
&ref(./IMG_2260.JPG,10%);
***黒い線を辿るための機構 [#dfb8795c]
アームの下についたセンサーによって、黒い線、白いところ、...
&ref(./IMG_2262.JPG,10%);
**プログラムの説明 [#l7b06986]
赤外線センサーを用い、入射した赤外線の反射強度により、ロ...
1)線の外(白)
2)線の境界上(グレー)
3)線の上(黒)
の三種類として認識する。進行方向向かって左側の境界上を移...
1)右にシフト
2)直進
3)左にシフト
しながら進んでいく。基本的にはwhileループで1[ms]ごとにセ...
交差点の判定は、スタートからの経過時間と黒の線上にいる時...
ボールキャッチ処理は完全にスタート時からの秒数に依存して...
#define BLACK 36
#define WHITE 48
#define SPEED 25
#define go_forward OnRev(OUT_BC,SPEED);
#define turn_left OnRev(OUT_B,SPEED);Off(OUT_C);
#define turn_right Off(OUT_B);OnRev(OUT_C,SPEED);
#define turn_left2 OnFwd(OUT_C,SPEED);OnRev(OUT_B,SPEED);
#define STEP 1
#define tukamu OnFwd(OUT_A,SPEED);Wait(1000);Off(OUT_A);...
#define hanasu turn_right;Wait(1000);go_forward;Wait(300...
task main(){
SetSensorLight(S3);
int n=0; //黒の上にいる時間を計測するための変数
int m=0;
int flg1=0; //交差点通過前=0 交差点通過後=1
int flg2=0; //ゴール判定用のフラグ
int flg3=0; //ボールキャッチ前=0 ボールキャッチ後=1
long t0=CurrentTick();
while(flg2==0){//ゴール判定用の
if(CurrentTick()-t0>9000 && flg3==0){ //ボールをつかむ
tukamu;
flg3=1;//ボールを掴んだというフラグを立てる
}else if(SENSOR_3 < BLACK){ //黒の上なら
turn_left;
n++;//黒のカウンターを上げる
if(n>500 && CurrentTick()-t0>10000 && flg1==0){ //黒の...
Off(OUT_BC);
n=0; //黒のカウンターリセット
flg1=1; //交差点を通ったというフラグをたてる
turn_left2;
Wait(700);
}
}else if(n>500 && flg1==1){
flg2=1;//ゴールを通過したというフラグを立てる
}else if(SENSOR_3 < WHITE){ //ラインの境界なら
go_forward;
n=0;//黒のカウンターをリセットする
}else{ //それ以外(白)なら
turn_right;
n=0;
}
Wait(STEP);//1msの間待つ。1サイクル1msに設定する
}
hanasu;//ボールを放す
}
**感想 [#e4d3765e]
交差点を通過する時など、白黒をセンサーに認識させたりと、...
終了行:
#contents
*ロボット [#w8bdd8ff]
**はじめに [#i3d85ab2]
このコースのAからBをトレースする。
#ref(./yakushi.shinshu-u.ac.jp.png,50%);
黒い線と白いところの間をトレースし、交差点を横断し、ボー...
**ロボット本体構造 [#n052a679]
***機体の外観 [#if2cdaf5]
クワガタのような外観
動力のあるタイヤが2つにクルクルと回転する補助輪が一つで...
アームは下からボールをすくいあげるように掴む構造になって...
明るさセンサーはタイヤから少し離れた前方についている。コ...
#ref(./IMG_2255.JPG,10%);
&ref(./IMG_2256.JPG,10%);
&ref(./IMG_2258.JPG,10%);
&ref(./IMG_2261.JPG,10%);
***ボールをつかんで離すための機構 [#c9b87d92]
モーターの縦回転を横回転に変えるために4枚歯の歯を4つ使っ...
&ref(./57.png,30%);
アームが大きく開いていて、それが閉じることによって
ボールをつかむことが出来る。
#ref(./IMG_2259.JPG,10%);
&ref(./IMG_2260.JPG,10%);
***黒い線を辿るための機構 [#dfb8795c]
アームの下についたセンサーによって、黒い線、白いところ、...
&ref(./IMG_2262.JPG,10%);
**プログラムの説明 [#l7b06986]
赤外線センサーを用い、入射した赤外線の反射強度により、ロ...
1)線の外(白)
2)線の境界上(グレー)
3)線の上(黒)
の三種類として認識する。進行方向向かって左側の境界上を移...
1)右にシフト
2)直進
3)左にシフト
しながら進んでいく。基本的にはwhileループで1[ms]ごとにセ...
交差点の判定は、スタートからの経過時間と黒の線上にいる時...
ボールキャッチ処理は完全にスタート時からの秒数に依存して...
#define BLACK 36
#define WHITE 48
#define SPEED 25
#define go_forward OnRev(OUT_BC,SPEED);
#define turn_left OnRev(OUT_B,SPEED);Off(OUT_C);
#define turn_right Off(OUT_B);OnRev(OUT_C,SPEED);
#define turn_left2 OnFwd(OUT_C,SPEED);OnRev(OUT_B,SPEED);
#define STEP 1
#define tukamu OnFwd(OUT_A,SPEED);Wait(1000);Off(OUT_A);...
#define hanasu turn_right;Wait(1000);go_forward;Wait(300...
task main(){
SetSensorLight(S3);
int n=0; //黒の上にいる時間を計測するための変数
int m=0;
int flg1=0; //交差点通過前=0 交差点通過後=1
int flg2=0; //ゴール判定用のフラグ
int flg3=0; //ボールキャッチ前=0 ボールキャッチ後=1
long t0=CurrentTick();
while(flg2==0){//ゴール判定用の
if(CurrentTick()-t0>9000 && flg3==0){ //ボールをつかむ
tukamu;
flg3=1;//ボールを掴んだというフラグを立てる
}else if(SENSOR_3 < BLACK){ //黒の上なら
turn_left;
n++;//黒のカウンターを上げる
if(n>500 && CurrentTick()-t0>10000 && flg1==0){ //黒の...
Off(OUT_BC);
n=0; //黒のカウンターリセット
flg1=1; //交差点を通ったというフラグをたてる
turn_left2;
Wait(700);
}
}else if(n>500 && flg1==1){
flg2=1;//ゴールを通過したというフラグを立てる
}else if(SENSOR_3 < WHITE){ //ラインの境界なら
go_forward;
n=0;//黒のカウンターをリセットする
}else{ //それ以外(白)なら
turn_right;
n=0;
}
Wait(STEP);//1msの間待つ。1サイクル1msに設定する
}
hanasu;//ボールを放す
}
**感想 [#e4d3765e]
交差点を通過する時など、白黒をセンサーに認識させたりと、...
ページ名: