2014a/Member/kanzaki/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
目次
#contents
*課題? [#a246ac04]
1.スタート地点から出発し、黒い線にそって動く。
2.一つ目の十字の交差点と二つめの十字の交差点の間に置かれ...
3.さらに黒線に沿って動いてゴール地点を目指す。
4.ゴールに向けてピンポン玉をシュートする。
http://yakushi.shinshu-u.ac.jp/robotics/?plugin=ref&page=...
*ロボット紹介 [#n48599e1]
**ロボット全体像 [#n25c1197]
&ref(2014a/Member/kanzaki/Mission1/1.jpg,50%);&ref(2014a/...
横から 前から 底から
**光センサー [#n3a85bc1]
&ref(2014a/Member/kanzaki/Mission1/6.jpg,50%);
青色の部品が光センサーです。このセンサーによって黒か白か...
**ピンポン玉のキャッチ方法 [#o0eff5eb]
&ref(2014a/Member/kanzaki/Mission1/7.jpg,50%);
この写真のタイヤの部品を右回転させ、ピンポン玉がタイヤに...
タイヤを回転させ続け、ピンポン玉が離れないようにしました。
**ピンポン玉のシュート方法 [#wc2b0dac]
&ref(2014a/Member/kanzaki/Mission1/7.jpg,50%);
タイヤの部品を左回転させ、そうするとタイヤと連動している
&ref(2014a/Member/kanzaki/Mission1/8.jpg,50%);&ref(2014a/...
このパーツが回転し、ピンポン玉を押し出すようにした。
*プログラム [#lf70b930]
**定義 [#j3e56972]
#define HIPOWER 4 //直線用のパワー
#define LOWPOWER 2 //カーブ用のパワー
#define set_power_H SetPower(OUT_AC,HIPOWER);
#define set_power_L SetPower(OUT_AC,LOWPOWER);
#define go_forward set_power_H; OnFwd(OUT_AC); //直進
#define turn_left1 set_power_L;\
OnFwd(OUT_C); OnRev(OUT_A); //左旋回
#define turn_left0 set_power_L;\
OnFwd(OUT_C); Off(OUT_A); //左折
#define turn_right0 set_power_L;\
OnFwd(OUT_A); Off(OUT_C); //右旋回
#define turn_right1 set_power_L;\
OnFwd(OUT_A); OnRev(OUT_C); //右折
#define cross set_power_H; OnFwd(OUT_AC);Wait(20); //交...
task main()
{
**設定 [#eb1073b1]
SetSensor(SENSOR_2,SENSOR_LIGHT); //光センサーセット
int nl=0; //交差点を感知するための変数
int cc=0; //交差点を渡った数
int hc=0; //色々な機能を実行するための変数
go_forward; //スタートの枠から出るための直進
Wait(100);
ClearTimer(0); //タイマー0をセット
OnRev(OUT_B); //ピンポン玉が離れないようにするためのタ...
while (true) {
**ライントレース [#ab6e2d4f]
while ((nl < 5)||(FastTimer(0)<500)||(FastTimer(1)<680)...
if (SENSOR_2 < 37) { //濃い黒を感知したら
turn_left1; //左旋回
nl++; //nlに1を足す
} else if (SENSOR_2 < 39) { //薄い黒を感知したら
turn_left0; //左折
nl=0; //判断し直し
} else if (SENSOR_2 < 45) { //灰色を感知したら
go_forward; //直進
]nl=0; //判断し直し
} else if (SENSOR_2 < 47) { //薄い白を感知したら
turn_right0; //右折
} else { //濃い白を感知したら
turn_right1; //右旋回
}
Wait(1);
}
光センサーにより明るさを測って、明度の値により左右に曲が...
交差点は左旋回の回数を計ることで判別します。左旋回の回...
右旋回が0.5秒以上行われない限りは通常であると判断しライン...
**交差点 [#sf572cb3]
turn_right1; Wait(35); //交差点を感知するときにずれた...
cross; //交差点を渡る
nl=0; //判断し直し
cc++; //?に1を足す
hc++; //hcに1を足す
**ピンポン玉をつかむ [#m87d58d3]
while(hc==1){ //一回目の交差点を渡ったら
turn_right1;
Wait(70);
go_forward; //ボールをキャッチ
Wait(80);
turn_left0; //ボールを固定
Wait(100);
hc++;
}
**交差点と勘違いしないために [#mbbcc9c9]
while((hc==3)||(hc==5)){
ClearTimer(1); //2個目と3個目の交差点を渡ったらタイ...
hc++;
}
**ピンポン玉をシュートする [#k76e02b9]
while (cc==4) {
turn_right1; //角度を微調整
Wait(5);
OnRev(OUT_AC); //ゴールの外に出る
Wait(100);
Off(OUT_ABC);
OnFwd(OUT_B); //ピンポン玉をシュート
Wait(150);
cc++;
}
**止まる [#p5a0a237]
while(cc==5){
Off(OUT_ABC); //止まる
}
}
}
*工夫したところ [#m33d8f14]
**ロボット本体 [#lc45f7b3]
&ref(2014a/Member/kanzaki/Mission1/9.jpg,50%);
底からみて左側の黄色いパーツを短くすることによって、
ピンポン玉をキャッチしやすくした。
**プログラム [#b7370575]
タイマーなしでプログラムを組んだときは、下記の赤い○がつい...
交差点と勘違いしてうまくできなかった。
タイマーを入れることによってスタートから5秒間、2個目と3個...
過ぎてから6.8秒間は交差点を認識しないようにしたらうまくで...
&ref(2014a/Member/kanzaki/Mission1/10.png,50%);
ピンポン玉がタイヤに触れても内側に入り込まなかったことが...
ピンポン玉がタイヤに触れてから少し左折することによって内...
入り込むようになった。
*感想・反省 [#z38d5cc7]
はじめピンポン玉をコース上に置かずに試していて、すべてが...
ピンポン玉を置いたときにボールが全くつかめなかったのはシ...
いろのとは違う動きをすることが多々あるのでこまめに試した...
前方が重すぎてうまく動かなかったことがあり、パーツを削っ...
終了行:
目次
#contents
*課題? [#a246ac04]
1.スタート地点から出発し、黒い線にそって動く。
2.一つ目の十字の交差点と二つめの十字の交差点の間に置かれ...
3.さらに黒線に沿って動いてゴール地点を目指す。
4.ゴールに向けてピンポン玉をシュートする。
http://yakushi.shinshu-u.ac.jp/robotics/?plugin=ref&page=...
*ロボット紹介 [#n48599e1]
**ロボット全体像 [#n25c1197]
&ref(2014a/Member/kanzaki/Mission1/1.jpg,50%);&ref(2014a/...
横から 前から 底から
**光センサー [#n3a85bc1]
&ref(2014a/Member/kanzaki/Mission1/6.jpg,50%);
青色の部品が光センサーです。このセンサーによって黒か白か...
**ピンポン玉のキャッチ方法 [#o0eff5eb]
&ref(2014a/Member/kanzaki/Mission1/7.jpg,50%);
この写真のタイヤの部品を右回転させ、ピンポン玉がタイヤに...
タイヤを回転させ続け、ピンポン玉が離れないようにしました。
**ピンポン玉のシュート方法 [#wc2b0dac]
&ref(2014a/Member/kanzaki/Mission1/7.jpg,50%);
タイヤの部品を左回転させ、そうするとタイヤと連動している
&ref(2014a/Member/kanzaki/Mission1/8.jpg,50%);&ref(2014a/...
このパーツが回転し、ピンポン玉を押し出すようにした。
*プログラム [#lf70b930]
**定義 [#j3e56972]
#define HIPOWER 4 //直線用のパワー
#define LOWPOWER 2 //カーブ用のパワー
#define set_power_H SetPower(OUT_AC,HIPOWER);
#define set_power_L SetPower(OUT_AC,LOWPOWER);
#define go_forward set_power_H; OnFwd(OUT_AC); //直進
#define turn_left1 set_power_L;\
OnFwd(OUT_C); OnRev(OUT_A); //左旋回
#define turn_left0 set_power_L;\
OnFwd(OUT_C); Off(OUT_A); //左折
#define turn_right0 set_power_L;\
OnFwd(OUT_A); Off(OUT_C); //右旋回
#define turn_right1 set_power_L;\
OnFwd(OUT_A); OnRev(OUT_C); //右折
#define cross set_power_H; OnFwd(OUT_AC);Wait(20); //交...
task main()
{
**設定 [#eb1073b1]
SetSensor(SENSOR_2,SENSOR_LIGHT); //光センサーセット
int nl=0; //交差点を感知するための変数
int cc=0; //交差点を渡った数
int hc=0; //色々な機能を実行するための変数
go_forward; //スタートの枠から出るための直進
Wait(100);
ClearTimer(0); //タイマー0をセット
OnRev(OUT_B); //ピンポン玉が離れないようにするためのタ...
while (true) {
**ライントレース [#ab6e2d4f]
while ((nl < 5)||(FastTimer(0)<500)||(FastTimer(1)<680)...
if (SENSOR_2 < 37) { //濃い黒を感知したら
turn_left1; //左旋回
nl++; //nlに1を足す
} else if (SENSOR_2 < 39) { //薄い黒を感知したら
turn_left0; //左折
nl=0; //判断し直し
} else if (SENSOR_2 < 45) { //灰色を感知したら
go_forward; //直進
]nl=0; //判断し直し
} else if (SENSOR_2 < 47) { //薄い白を感知したら
turn_right0; //右折
} else { //濃い白を感知したら
turn_right1; //右旋回
}
Wait(1);
}
光センサーにより明るさを測って、明度の値により左右に曲が...
交差点は左旋回の回数を計ることで判別します。左旋回の回...
右旋回が0.5秒以上行われない限りは通常であると判断しライン...
**交差点 [#sf572cb3]
turn_right1; Wait(35); //交差点を感知するときにずれた...
cross; //交差点を渡る
nl=0; //判断し直し
cc++; //?に1を足す
hc++; //hcに1を足す
**ピンポン玉をつかむ [#m87d58d3]
while(hc==1){ //一回目の交差点を渡ったら
turn_right1;
Wait(70);
go_forward; //ボールをキャッチ
Wait(80);
turn_left0; //ボールを固定
Wait(100);
hc++;
}
**交差点と勘違いしないために [#mbbcc9c9]
while((hc==3)||(hc==5)){
ClearTimer(1); //2個目と3個目の交差点を渡ったらタイ...
hc++;
}
**ピンポン玉をシュートする [#k76e02b9]
while (cc==4) {
turn_right1; //角度を微調整
Wait(5);
OnRev(OUT_AC); //ゴールの外に出る
Wait(100);
Off(OUT_ABC);
OnFwd(OUT_B); //ピンポン玉をシュート
Wait(150);
cc++;
}
**止まる [#p5a0a237]
while(cc==5){
Off(OUT_ABC); //止まる
}
}
}
*工夫したところ [#m33d8f14]
**ロボット本体 [#lc45f7b3]
&ref(2014a/Member/kanzaki/Mission1/9.jpg,50%);
底からみて左側の黄色いパーツを短くすることによって、
ピンポン玉をキャッチしやすくした。
**プログラム [#b7370575]
タイマーなしでプログラムを組んだときは、下記の赤い○がつい...
交差点と勘違いしてうまくできなかった。
タイマーを入れることによってスタートから5秒間、2個目と3個...
過ぎてから6.8秒間は交差点を認識しないようにしたらうまくで...
&ref(2014a/Member/kanzaki/Mission1/10.png,50%);
ピンポン玉がタイヤに触れても内側に入り込まなかったことが...
ピンポン玉がタイヤに触れてから少し左折することによって内...
入り込むようになった。
*感想・反省 [#z38d5cc7]
はじめピンポン玉をコース上に置かずに試していて、すべてが...
ピンポン玉を置いたときにボールが全くつかめなかったのはシ...
いろのとは違う動きをすることが多々あるのでこまめに試した...
前方が重すぎてうまく動かなかったことがあり、パーツを削っ...
ページ名: