2015a/Member/bin-san/Mission2
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
#contents
*コース [#l5e827a1]
トレースするコースは、C地点を出発地点とし、そこから十字路...
#ref(./2015a-mission2.png,50%)
*プログラム [#l46bf864]
**定義 [#wc1fa39e]
今回は繊細な動きが出来るように細かく定義をした。
#define THRESHOLD 45 //しきい値
#define SPEED_H 25
#define SPEED_L 25
#define OnRL(speedR,speedL) OnFwd(OUT_B,speedR);OnFwd(OU...
#define GO_STR OnRL(SPEED_H, SPEED_H);
#define LEFT_TURN0 OnRL(SPEED_L, 0); // 左折
#define LEFT_TURN1 OnRL(SPEED_L, -SPEED_L); // 左旋回
#define RIGHT_TURN0 OnRL(0, SPEED_L); // 右折
#define RIGHT_TURN1 OnRL(-SPEED_L, SPEED_L); // 右旋回
#define STEP 100 // 1回の判断で動作させる時間
#define nMAX 300 // 通常のカーブとして許容できる繰り返...
#define short_break Off(OUT_BC); Wait(1000); // 小休止
#define CROSS_TIME 200 // 交差点通過にかかる時間
#define LINE_CRO OnRL(SPEED_L,SPEED_L);Wait(CROSS_TIME);...
#define arm_close(t) OnRev(OUT_A,30);Wait(t); //アーム...
#define Shoot OnFwd(OUT_A,30);Wait(200);OnFwd(OUT_BC,50)...
今回は、速度が速いとカーブがうまく曲がれなかったり、大き...
**本体のプログラム [#raa49e0a]
これは参考プログラムを主体とし、シュートやアームを閉じて...
task main()
{
SetSensorLight(S3);
int nOnline=0; // 続けて黒になった回数 (カウンター)
while (true) {
while (nOnline < nMAX) {
if (SENSOR_3 < THRESHOLD-15) {
LEFT_TURN1;
nOnline++; // カウンタを増やす
} else {
if (SENSOR_3 < THRESHOLD-7) {
LEFT_TURN0;
} else if (SENSOR_3 < THRESHOLD+7) {
GO_STR;
} else if (SENSOR_3 < THRESHOLD+15) {
RIGHT_TURN0;
} else {
RIGHT_TURN1;
}
nOnline=0; // カウンターをリセット
}
Wait(STEP);
}
short_break; // 小休憩
RIGHT_TURN1; Wait(nMAX*STEP); // 進行方向修正
LINE_CRO; // 交差点を渡る
arm_close(500);
nOnline=0; //カウンターをリセット
PlaySound(SOUND_DOWN); //交差点を認識した事がわかる...
Wait(500);
long t0 = CurrentTick(); //シュートを打つにあたって...
while(CurrentTick()-t0 <= 11000){ //11秒後にタイマー...
if (SENSOR_3 < THRESHOLD-15) {
LEFT_TURN1;
nOnline++; // カウンターを増やす
} else {
if (SENSOR_3 < THRESHOLD-7) {
LEFT_TURN0;
} else if (SENSOR_3 < THRESHOLD+7) {
GO_STR;
} else if (SENSOR_3 < THRESHOLD+15) {
RIGHT_TURN0;
} else {
RIGHT_TURN1;
}
nOnline=0; // カウンターをリセット
}
Wait(STEP);
}
Shoot;
}
}
*ロボットについて [#r7b9f2f1]
**母機について [#pab89817]
ロボットがこの形になるまでに様々な試作機を製作した。特に...
***光センサー [#i5cab541]
この機体は光センサーを2つの前輪の間に設置してある。ここ...
この写真はロボットを下から撮ったものである。
真ん中のライトが付いたようなパーツが光センサーである。
#ref(./IMG_2903.JPG,25%)
***後輪 [#c237c719]
前輪はモーターが直接ついており、後輪はその補助輪としての...
この写真からよく分かるように、本体が後輪の真上にある。
&ref(./IMG_2904.JPG,25%);&ref(./IMG_2869.JPG,12%);
***アームについて [#af4b8b0b]
今回ボールをつかむ上で様々な機構のアームを考えた。そして...
#ref(./IMG_2875.JPG,12%)
*今回の課題に対する感想・反省点 [#za981e89]
正直なところ、ライントレースロボットの製作は書道ロボット...
終了行:
#contents
*コース [#l5e827a1]
トレースするコースは、C地点を出発地点とし、そこから十字路...
#ref(./2015a-mission2.png,50%)
*プログラム [#l46bf864]
**定義 [#wc1fa39e]
今回は繊細な動きが出来るように細かく定義をした。
#define THRESHOLD 45 //しきい値
#define SPEED_H 25
#define SPEED_L 25
#define OnRL(speedR,speedL) OnFwd(OUT_B,speedR);OnFwd(OU...
#define GO_STR OnRL(SPEED_H, SPEED_H);
#define LEFT_TURN0 OnRL(SPEED_L, 0); // 左折
#define LEFT_TURN1 OnRL(SPEED_L, -SPEED_L); // 左旋回
#define RIGHT_TURN0 OnRL(0, SPEED_L); // 右折
#define RIGHT_TURN1 OnRL(-SPEED_L, SPEED_L); // 右旋回
#define STEP 100 // 1回の判断で動作させる時間
#define nMAX 300 // 通常のカーブとして許容できる繰り返...
#define short_break Off(OUT_BC); Wait(1000); // 小休止
#define CROSS_TIME 200 // 交差点通過にかかる時間
#define LINE_CRO OnRL(SPEED_L,SPEED_L);Wait(CROSS_TIME);...
#define arm_close(t) OnRev(OUT_A,30);Wait(t); //アーム...
#define Shoot OnFwd(OUT_A,30);Wait(200);OnFwd(OUT_BC,50)...
今回は、速度が速いとカーブがうまく曲がれなかったり、大き...
**本体のプログラム [#raa49e0a]
これは参考プログラムを主体とし、シュートやアームを閉じて...
task main()
{
SetSensorLight(S3);
int nOnline=0; // 続けて黒になった回数 (カウンター)
while (true) {
while (nOnline < nMAX) {
if (SENSOR_3 < THRESHOLD-15) {
LEFT_TURN1;
nOnline++; // カウンタを増やす
} else {
if (SENSOR_3 < THRESHOLD-7) {
LEFT_TURN0;
} else if (SENSOR_3 < THRESHOLD+7) {
GO_STR;
} else if (SENSOR_3 < THRESHOLD+15) {
RIGHT_TURN0;
} else {
RIGHT_TURN1;
}
nOnline=0; // カウンターをリセット
}
Wait(STEP);
}
short_break; // 小休憩
RIGHT_TURN1; Wait(nMAX*STEP); // 進行方向修正
LINE_CRO; // 交差点を渡る
arm_close(500);
nOnline=0; //カウンターをリセット
PlaySound(SOUND_DOWN); //交差点を認識した事がわかる...
Wait(500);
long t0 = CurrentTick(); //シュートを打つにあたって...
while(CurrentTick()-t0 <= 11000){ //11秒後にタイマー...
if (SENSOR_3 < THRESHOLD-15) {
LEFT_TURN1;
nOnline++; // カウンターを増やす
} else {
if (SENSOR_3 < THRESHOLD-7) {
LEFT_TURN0;
} else if (SENSOR_3 < THRESHOLD+7) {
GO_STR;
} else if (SENSOR_3 < THRESHOLD+15) {
RIGHT_TURN0;
} else {
RIGHT_TURN1;
}
nOnline=0; // カウンターをリセット
}
Wait(STEP);
}
Shoot;
}
}
*ロボットについて [#r7b9f2f1]
**母機について [#pab89817]
ロボットがこの形になるまでに様々な試作機を製作した。特に...
***光センサー [#i5cab541]
この機体は光センサーを2つの前輪の間に設置してある。ここ...
この写真はロボットを下から撮ったものである。
真ん中のライトが付いたようなパーツが光センサーである。
#ref(./IMG_2903.JPG,25%)
***後輪 [#c237c719]
前輪はモーターが直接ついており、後輪はその補助輪としての...
この写真からよく分かるように、本体が後輪の真上にある。
&ref(./IMG_2904.JPG,25%);&ref(./IMG_2869.JPG,12%);
***アームについて [#af4b8b0b]
今回ボールをつかむ上で様々な機構のアームを考えた。そして...
#ref(./IMG_2875.JPG,12%)
*今回の課題に対する感想・反省点 [#za981e89]
正直なところ、ライントレースロボットの製作は書道ロボット...
ページ名: