2015a/Member/gocchi/Mission2
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
#contents
*ロボットの構造 [#r327de9a]
まず初めに私たちが作ったロボットを説明しよう。
今回は黒のラインの上をなぞって走行し、途中に置いてあるボ...
そして最後にそれをゴールにシュートするというロボットを作...
今回は重心も考えて安定したロボットを目指した。
**タイヤ [#o640751c]
タイヤの部分はこうなっている。
&ref(./ロボ2.1.jpg,30%);
3輪にすることでプログラムの制御が楽になっている。
反省はタイヤとタイヤの隙間をもっと狭くしたい。
なぜかというと小回りがききなめらかなライントレースができ...
**アーム [#w1ab14f0]
これが今回のアームである。
下のアームの間のところに光センサーがついている。
こうすることによりライン上に置いてあるボールを確実につか...
&ref(./ロボ2.5.jpg,30%);
***アームの動き [#b3697d87]
アームはこのように上からアームを下すようになっている。
動かない残りの2本とで挟むようになっている。
アームの数は全部で3本だ。
&ref(./ロボ2.3.jpg,30%);
&ref(./ロボ2.4.jpg,30%);
なぜこの形にしたかというと持ち上げるより簡単であるうえ、...
この方がシュートしやすいと考えたからである。
*コースを走る [#h061bfa0]
**コース [#s07c7343]
今回はAからCのこの赤い部分のコースを走る。
ボールは青い丸の位置に置く。
&ref(./ライン図.png,50%);
**プログラム [#le7b3f31]
***定義 [#r65fc005]
#define GOLL OnFwd(OUT_B,30);OnFwd(OUT_C,0); /...
#define GOL OnFwd(OUT_B,30);OnFwd(OUT_C,-15); /...
#define GOR OnFwd(OUT_B,-15);OnFwd(OUT_C,30); /...
#define GORL OnFwd(OUT_B,0);OnFwd(OUT_C,30); /...
#define SR OnFwd(OUT_B,-55);OnFwd(OUT_C,35); /...
#define GOS OnFwd(OUT_BC,40); /...
***ライン上を走る [#q24d1d56]
while(ture){
if(SENSOR_3<28){
GOR; /...
} else if(SENSOR_3<35){
GORL; /...
} else if(SENSOR_3<50){
GOS; /...
} else if(SENSOR_3<57){
GOLL; /...
} else {
GOL; /...
}
}
***交差点 [#a0799a86]
今回は交差点を直進した。
while(ture){
if(SENSOR_3<28){ // 濃い黒と判断
GOR;
} else if(SENSOR_3<35){ // 薄い黒と判断
GORL;
} else if(SENSOR_3<50){ // 中間と判断
t0=CurrentTick(); // 黒と判断し...
GOS;
} else if(SENSOR_3<57){ // 暗い白と判断
t0=CurrentTick(); // 黒と判断し...
GOLL;
} else { // 明るい白と...
t0=CurrentTick(); // 黒と判断し...
GOL;
}
if(CurrentTick()-t0>300){ // 黒が0.3秒...
Off(OUT_BC);
Wait(2000); // 交差点で2秒停...
BGOR; // 元の位置に...
Wait(1300);
GO; // 直進
Wait(1500);
}
}
***全体 [#sea759e8]
task main ()
{
SetSensorLight(S3); //...
int n=0;
long t1=CurrentTick(); //...
long t0=CurrentTick(); //...
while(CurrentTick()-t1<9000){ ...
if(SENSOR_3<28){
GOR;
} else if(SENSOR_3<35){
GORL;
} else if(SENSOR_3<50){
GOS;
} else if(SENSOR_3<57){
GOLL;
} else {
GOL;
}
}
Off(OUT_BC);
Wait(2000); ...
while(CurrentTick()-t1<13000){ /...
if(SENSOR_3<28){
GOR;
} else if(SENSOR_3<35){
GORL;
} else if(SENSOR_3<50){
GOS;
} else if(SENSOR_3<57){
GOLL;
} else {
GOL;
}
}
Off(OUT_BC); ...
OnFwd(OUT_A,10); ...
Wait(1500);
Off(OUT_A);
while(CurrentTick()-t1<26000){ ...
if(SENSOR_3<28){
GOR;
} else if(SENSOR_3<35){
GORL;
} else if(SENSOR_3<50){
t0=CurrentTick();
GOS;
} else if(SENSOR_3<57){
t0=CurrentTick();
GOLL;
} else {
t0=CurrentTick();
GOL;
}
if(CurrentTick()-t0>300){ /...
Off(OUT_BC);
Wait(2000);
BGOR;
Wait(1300);
GO;
Wait(1500);
}
}
while(CurrentTick()-t1<32000){ /...
if(SENSOR_3<28){
GOR;
} else if(SENSOR_3<35){
GORL;
} else if(SENSOR_3<50){
GOS;
} else if(SENSOR_3<57){
GOLL;
} else {
GOL;
}
}
Off(OUT_BC); ...
OnFwd(OUT_BC,-40); ...
Wait(100);
OnFwd(OUT_A,-10); ...
Wait(1500);
Off(OUT_BC);
OnFwd(OUT_BC,70); ...
Wait(60);
}
*反省・課題・感想 [#eedbfe4b]
**反省・課題 [#l335f1d9]
今回はライントレースするロボットを製作しプログラミングを...
今回ライントレースをしボールをゴールまで運んでシュートす...
しかし改善できるところはたくさんある。例えばもっとなめら...
ほかにはもっと早くゴールするようタイムにもこだわりたい。
**感想 [#fe4ddfab]
今回はロボットをしっかり目的に合わせて作成することができ...
ただライントレースをすればよいというのもではなく少し難し...
細かい調整をしてボールがゴールに入ったときはとてもうれし...
ぜひ次は関数を使ってみたい。
終了行:
#contents
*ロボットの構造 [#r327de9a]
まず初めに私たちが作ったロボットを説明しよう。
今回は黒のラインの上をなぞって走行し、途中に置いてあるボ...
そして最後にそれをゴールにシュートするというロボットを作...
今回は重心も考えて安定したロボットを目指した。
**タイヤ [#o640751c]
タイヤの部分はこうなっている。
&ref(./ロボ2.1.jpg,30%);
3輪にすることでプログラムの制御が楽になっている。
反省はタイヤとタイヤの隙間をもっと狭くしたい。
なぜかというと小回りがききなめらかなライントレースができ...
**アーム [#w1ab14f0]
これが今回のアームである。
下のアームの間のところに光センサーがついている。
こうすることによりライン上に置いてあるボールを確実につか...
&ref(./ロボ2.5.jpg,30%);
***アームの動き [#b3697d87]
アームはこのように上からアームを下すようになっている。
動かない残りの2本とで挟むようになっている。
アームの数は全部で3本だ。
&ref(./ロボ2.3.jpg,30%);
&ref(./ロボ2.4.jpg,30%);
なぜこの形にしたかというと持ち上げるより簡単であるうえ、...
この方がシュートしやすいと考えたからである。
*コースを走る [#h061bfa0]
**コース [#s07c7343]
今回はAからCのこの赤い部分のコースを走る。
ボールは青い丸の位置に置く。
&ref(./ライン図.png,50%);
**プログラム [#le7b3f31]
***定義 [#r65fc005]
#define GOLL OnFwd(OUT_B,30);OnFwd(OUT_C,0); /...
#define GOL OnFwd(OUT_B,30);OnFwd(OUT_C,-15); /...
#define GOR OnFwd(OUT_B,-15);OnFwd(OUT_C,30); /...
#define GORL OnFwd(OUT_B,0);OnFwd(OUT_C,30); /...
#define SR OnFwd(OUT_B,-55);OnFwd(OUT_C,35); /...
#define GOS OnFwd(OUT_BC,40); /...
***ライン上を走る [#q24d1d56]
while(ture){
if(SENSOR_3<28){
GOR; /...
} else if(SENSOR_3<35){
GORL; /...
} else if(SENSOR_3<50){
GOS; /...
} else if(SENSOR_3<57){
GOLL; /...
} else {
GOL; /...
}
}
***交差点 [#a0799a86]
今回は交差点を直進した。
while(ture){
if(SENSOR_3<28){ // 濃い黒と判断
GOR;
} else if(SENSOR_3<35){ // 薄い黒と判断
GORL;
} else if(SENSOR_3<50){ // 中間と判断
t0=CurrentTick(); // 黒と判断し...
GOS;
} else if(SENSOR_3<57){ // 暗い白と判断
t0=CurrentTick(); // 黒と判断し...
GOLL;
} else { // 明るい白と...
t0=CurrentTick(); // 黒と判断し...
GOL;
}
if(CurrentTick()-t0>300){ // 黒が0.3秒...
Off(OUT_BC);
Wait(2000); // 交差点で2秒停...
BGOR; // 元の位置に...
Wait(1300);
GO; // 直進
Wait(1500);
}
}
***全体 [#sea759e8]
task main ()
{
SetSensorLight(S3); //...
int n=0;
long t1=CurrentTick(); //...
long t0=CurrentTick(); //...
while(CurrentTick()-t1<9000){ ...
if(SENSOR_3<28){
GOR;
} else if(SENSOR_3<35){
GORL;
} else if(SENSOR_3<50){
GOS;
} else if(SENSOR_3<57){
GOLL;
} else {
GOL;
}
}
Off(OUT_BC);
Wait(2000); ...
while(CurrentTick()-t1<13000){ /...
if(SENSOR_3<28){
GOR;
} else if(SENSOR_3<35){
GORL;
} else if(SENSOR_3<50){
GOS;
} else if(SENSOR_3<57){
GOLL;
} else {
GOL;
}
}
Off(OUT_BC); ...
OnFwd(OUT_A,10); ...
Wait(1500);
Off(OUT_A);
while(CurrentTick()-t1<26000){ ...
if(SENSOR_3<28){
GOR;
} else if(SENSOR_3<35){
GORL;
} else if(SENSOR_3<50){
t0=CurrentTick();
GOS;
} else if(SENSOR_3<57){
t0=CurrentTick();
GOLL;
} else {
t0=CurrentTick();
GOL;
}
if(CurrentTick()-t0>300){ /...
Off(OUT_BC);
Wait(2000);
BGOR;
Wait(1300);
GO;
Wait(1500);
}
}
while(CurrentTick()-t1<32000){ /...
if(SENSOR_3<28){
GOR;
} else if(SENSOR_3<35){
GORL;
} else if(SENSOR_3<50){
GOS;
} else if(SENSOR_3<57){
GOLL;
} else {
GOL;
}
}
Off(OUT_BC); ...
OnFwd(OUT_BC,-40); ...
Wait(100);
OnFwd(OUT_A,-10); ...
Wait(1500);
Off(OUT_BC);
OnFwd(OUT_BC,70); ...
Wait(60);
}
*反省・課題・感想 [#eedbfe4b]
**反省・課題 [#l335f1d9]
今回はライントレースするロボットを製作しプログラミングを...
今回ライントレースをしボールをゴールまで運んでシュートす...
しかし改善できるところはたくさんある。例えばもっとなめら...
ほかにはもっと早くゴールするようタイムにもこだわりたい。
**感想 [#fe4ddfab]
今回はロボットをしっかり目的に合わせて作成することができ...
ただライントレースをすればよいというのもではなく少し難し...
細かい調整をしてボールがゴールに入ったときはとてもうれし...
ぜひ次は関数を使ってみたい。
ページ名: