2015a/Member/Katuu/Mission3
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2015a/MemberOnly]]
*目次 [#s6072681]
&ref(./kadai3mokuzi.JPG,20%);
#contents
*Mission3〜超音波センサーの利用〜 [#ba24c159]
今回の課題は半径1m以内においた空き缶を超音波センサーで...
ただし缶がロボットから25cm以内にある時は30cm地点まで下が...
&ref(./14384980078OAWE8CCRZef3eT1438498005.gif,30%);
*Machine〜今回の課題で使用するロボット〜 [#s9576fb6] ...
課題2 ...
&ref(./kadai2machine.JPG,9%); &ref(./robot ...
課題2のロボットとの違いは、ロボットの上部に超音波センサ...
少々前方が重くなってしまったが、制作の時間が省けプログラ...
(マシンについての細かい解説は下記URL参照↓↓)
http://yakushi.shinshu-u.ac.jp/robotics/?2015a%2FMember%2...
*Starategy〜課題へのアプローチ〜 [#p31b4d2c]
?一定時間回転してその中で缶との距離を測る。
?それを基にして次の回転で缶の方を向いて止まる。
??で測った缶との距離を判断して課題の条件を満たすように移...
?シュート!
*Program〜用いたプログラム〜 [#k86b8df4]
今回使用したプログラムは、まず最初の十秒間最初の位置で旋...
**定義 [#a26f3ec2]
#define KOUSOKU 30 ...
#define TEISOKU 20 ...
#define ARMOPEN RotateMotor(OUT_A,50,90);
#define SHOT ARMOPEN;OnFwd(OUT_BC,100);Wait(100);
#define SEARCH OnFwd(OUT_B,KOUSOKU);OnRev(OUT_C,KOUSOKU);
#define KAITENZIKAN 10000
**メインタスク [#k45206b7]
task main()
{
int kiteiti=100;
SetSensorLowspeed(S2);
long t0 = CurrentTick();
while(CurrentTick()-t0<=KAITENZIKAN){
SEARCH;
if(SensorUS(S2)<=kiteiti){
SensorUS(S2)=kiteiti;
}
}
SEARCH;
until(SensorUS(S2)<=kiteiti);
Off(OUT_BC);
int tyousei;
while(tyousei==0){
if(SensorUS(S2)<=25){
OnRev(OUT_BC,TEISOKU);
until(SensorUS(S2)>=30);
Off(OUT_BC);
tyousei++;
}
else if(SensorUS(S2)>25){
OnFwd(OUT_BC,TEISOKU);
until(SensorUS(S3)<=25);
Off(OUT_BC);
tyousei++;
}
}
SHOT;
}
}
*My impression〜感想〜 [#k7c40434]
ロボット本体は課題2の物に超音波センサーを取り付けるだけで...
終了行:
[[2015a/MemberOnly]]
*目次 [#s6072681]
&ref(./kadai3mokuzi.JPG,20%);
#contents
*Mission3〜超音波センサーの利用〜 [#ba24c159]
今回の課題は半径1m以内においた空き缶を超音波センサーで...
ただし缶がロボットから25cm以内にある時は30cm地点まで下が...
&ref(./14384980078OAWE8CCRZef3eT1438498005.gif,30%);
*Machine〜今回の課題で使用するロボット〜 [#s9576fb6] ...
課題2 ...
&ref(./kadai2machine.JPG,9%); &ref(./robot ...
課題2のロボットとの違いは、ロボットの上部に超音波センサ...
少々前方が重くなってしまったが、制作の時間が省けプログラ...
(マシンについての細かい解説は下記URL参照↓↓)
http://yakushi.shinshu-u.ac.jp/robotics/?2015a%2FMember%2...
*Starategy〜課題へのアプローチ〜 [#p31b4d2c]
?一定時間回転してその中で缶との距離を測る。
?それを基にして次の回転で缶の方を向いて止まる。
??で測った缶との距離を判断して課題の条件を満たすように移...
?シュート!
*Program〜用いたプログラム〜 [#k86b8df4]
今回使用したプログラムは、まず最初の十秒間最初の位置で旋...
**定義 [#a26f3ec2]
#define KOUSOKU 30 ...
#define TEISOKU 20 ...
#define ARMOPEN RotateMotor(OUT_A,50,90);
#define SHOT ARMOPEN;OnFwd(OUT_BC,100);Wait(100);
#define SEARCH OnFwd(OUT_B,KOUSOKU);OnRev(OUT_C,KOUSOKU);
#define KAITENZIKAN 10000
**メインタスク [#k45206b7]
task main()
{
int kiteiti=100;
SetSensorLowspeed(S2);
long t0 = CurrentTick();
while(CurrentTick()-t0<=KAITENZIKAN){
SEARCH;
if(SensorUS(S2)<=kiteiti){
SensorUS(S2)=kiteiti;
}
}
SEARCH;
until(SensorUS(S2)<=kiteiti);
Off(OUT_BC);
int tyousei;
while(tyousei==0){
if(SensorUS(S2)<=25){
OnRev(OUT_BC,TEISOKU);
until(SensorUS(S2)>=30);
Off(OUT_BC);
tyousei++;
}
else if(SensorUS(S2)>25){
OnFwd(OUT_BC,TEISOKU);
until(SensorUS(S3)<=25);
Off(OUT_BC);
tyousei++;
}
}
SHOT;
}
}
*My impression〜感想〜 [#k7c40434]
ロボット本体は課題2の物に超音波センサーを取り付けるだけで...
ページ名: