- 追加された行はこの色です。
- 削除された行はこの色です。
[[2014a/Member]]
目次
#contents
今回の課題
#contents
メンバー
#contents
ロボ本体
#contents
プログラム
#contents
感想・反省
今回の課題
http://yakushi.shinshu-u.ac.jp/robotics/?2014a%2FMission1
メンバー
saborijini,hodaka
ロボ本体
1.ベース部分
細かいコースを走るためにコンパクト化を図った。
http://yakushi.shinshu-u.ac.jp/robotics/?plugin=attach&pcmd=open&file=P1040021.JPG&refer=2014a%2FMember%2Fhodaka%2FMission1
2.アーム部分
小さい図になってしまったが、ボールをキャッチするまではアームを上げたこの状態で進む。
小さい写真になってしまったが、ボールをキャッチするまではアームを上げたこの状態で進む。
http://yakushi.shinshu-u.ac.jp/robotics/?plugin=attach&pcmd=open&file=P1040024.JPG&refer=2014a%2FMember%2Fhodaka%2FMission1
ボールをキャッチするとアームが下がったこの状態で進む。
http://yakushi.shinshu-u.ac.jp/robotics/?plugin=attach&pcmd=open&file=P1040025.JPG&refer=2014a%2FMember%2Fhodaka%2FMission1
プログラム
#define IKICHI 45
#define SPEED_HIGH 45
#define SPEED_LOW 30
#define OnRL(speedR,speedL) OnFwd(OUT_A,speedR);OnFwd(OUT_C,speedL);
#define go OnRL(SPEED_HIGH,SPEED_HIGH);//直進する
#define turn_left OnRL(SPEED_HIGH,0);//左折する
#define senkai_left OnRL(SPEED_LOW,-SPEED_LOW);//左旋回する
#define turn_right OnRL(0,SPEED_HIGH);//右折する
#define senkai_right OnRL(-SPEED_LOW,SPEED_LOW);//右旋回する
#define STEP 1
#define nMAX 300
#define short_break Off(OUT_AC);Wait(1000);//小休憩
#define CROSS_TIME 200
#define cross_line OnRL(SPEED_HIGH,SPEED_HIGH);Wait(CROSS_TIME);short_break;//交差点を渡る
#define UP_DOWN 38
#define catch OnFwd(OUT_B,UP_DOWN);Wait(600);Off(OUT_B);//アームを下ろす
#define release OnRev(OUT_B,UP_DOWN);Wait(600);OnRev(OUT_AC,45);Wait(500);OnFwd(OUT_B,UP_DOWN);Wait(600);\
OnFwd(OUT_AC,45);Wait(500);Off(OUT_AC);//アームを一旦上げ、後退して再びアームを下ろし、前進する
task main()
{
SetSensorLight(S1);
int nOnline=0;
long t0 = CurrentTick();
if(CurrentTick-t0=1500){catch;}
else if (CurrentTick-t0=4000){release;}
go;//ライントレースのプログラム
Wait(500);
while(true){
while(nOnline < nMAX){
if(SENSOR_1 < IKICHI-7){
senkai_right;
nOnline++;
}else{
if(SENSOR_1 < IKICHI-7){
senkai_right;
}else if (SENSOR_1 < IKICHI+7){
go;
}else if (SENSOR_1 < IKICHI+10){
senkai_left;
}else{
senkai_left;
}
nOnline=0;
}
Wait(STEP);
}//交差点のプログラム
short_break;
senkai_left;Wait(nMAX*STEP);
cross_line;
nOnline=0;
}
}
感想・反省
何より苦労したのはプログラミングである。思うように動かず、自分一人の力ではおそらくまともにライントレースすることさえできたかわからない。saborijiniの協力があってやっと動くところまでこぎつけた。
ロボに関してはdaiの班のベースを参考にコンパクトにすることを意識した。
いずれもみんなの協力あってこそである。次回の課題2にむけて、もう少し独力でできるようになりたい。