[[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にむけて、もう少し独力でできるようになりたい。


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS