a

Dependencies:   Locate Move Servo button mbed

Fork of 3rdcompfixstart by 涼太郎 中村

Files at this revision

API Documentation at this revision

Comitter:
choutin
Date:
Sun Sep 11 11:40:17 2016 +0000
Parent:
17:5b9fbb6133ad
Commit message:
a

Changed in this revision

Locate.lib Show annotated file Show diff for this revision Revisions of this file
Move.lib Show annotated file Show diff for this revision Revisions of this file
Servo.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/Locate.lib	Sat Sep 10 13:32:25 2016 +0000
+++ b/Locate.lib	Sun Sep 11 11:40:17 2016 +0000
@@ -1,1 +1,1 @@
-https://developer.mbed.org/users/choutin/code/Locate/#ba3ef4656f7a
+https://developer.mbed.org/users/choutin/code/Locate/#08dfba38d5d9
--- a/Move.lib	Sat Sep 10 13:32:25 2016 +0000
+++ b/Move.lib	Sun Sep 11 11:40:17 2016 +0000
@@ -1,1 +1,1 @@
-https://developer.mbed.org/users/choutin/code/Move/#4e9cadc225f5
+https://developer.mbed.org/users/choutin/code/Move/#4501c9202500
--- a/Servo.lib	Sat Sep 10 13:32:25 2016 +0000
+++ b/Servo.lib	Sun Sep 11 11:40:17 2016 +0000
@@ -1,1 +1,1 @@
-https://developer.mbed.org/users/choutin/code/Servo/#58ef29cb8785
+https://developer.mbed.org/users/choutin/code/Servo/#b0d581acc298
--- a/main.cpp	Sat Sep 10 13:32:25 2016 +0000
+++ b/main.cpp	Sun Sep 11 11:40:17 2016 +0000
@@ -11,61 +11,49 @@
 
 
 const int dist=150;//タイヤ、アーム間の距離
-const int slidedist=75;
-const int space=0;//壁やばそうなときのよゆう
-const float btime=1.7;
+const int slidedist=102-20;
+const int space=50;//壁やばそうなときのよゆう
+const float btime=1.9;
 const float allowdegree=0.2;
 const float allowlength=0.2;
 
 
-int main(){
-        setup();
-    initmotor();
-    close_arm();
-    while(1){
-    pmove(600,0); 
-    pmove2(300,600); 
-    pmove2(0,0);     
-    }
-    
-}
-
-/*
-
 int main()
 {
     
-    int team=1,phase=0;
-    team=teamLED();
-    setup();
-    initmotor();
+    int teams=1,phase=0;
+    teams=teamLED();
+    int team = 1;
+    setup(teams);
+    initmotor(teams);
+    open_arm();
+    wait(2);
     close_arm();
     
     while(start()){}
    int targetx[9] = { 600,600,600,1200,900,1200,900,1200,900 };
    int targety[9] = { team*(300+slidedist),team*(600+slidedist),team*(900+slidedist),team*(1200+slidedist),team*(900+slidedist),team*(600+slidedist),team*(600+slidedist),team*(0+slidedist),team*(300+slidedist) };
-   int goalx=0,goaly1=1200+150,goaly2=900+slidedist,goaly3=600+slidedist,goaly4=300+slidedist;
+   int goalx=150,goaly=1200+(slidedist)*0;//yへのslidediatを無視
     
     phase=phaseSW();
-
-    //phaseごとの初期位置修正
-    
     
     //
 
 //オブジェクト0,1,2回収
     if(phase==0){
-       pmove(targetx[0],0);
+       pmove(targetx[0],0); //傾きをはじめから向くように
        open_hand();
-       pmove(targetx[0],targety[0]);
+       pmove2(targetx[0],targety[0]);
        close_hand();
+       wait(0.3);
        beltup();
        wait(btime);
        beltstop();
        open_hand();
        //回収
-       pmove(targetx[1],targety[1]);
+       pmove2(targetx[1],targety[1]);
        close_hand();
+       wait(0.3);
        beltup();
        wait(btime);
        beltstop();
@@ -74,69 +62,108 @@
        pmove(targetx[2],targety[2]);
        //回収
        close_hand();
-       pmove(600,1200+slidedist-space*3);//次につなげるハブ
-       pmove(goalx,goaly1);
+       pmove2(goalx,goaly);
        //リリース
+       turnrad_ccw(PI,team);
        open_arm();
        open_hand();
+       wait(0.5);
        back300();//(300,1200)なう
-    turnrad_ccw(2*PI);
-       phase=1;    
-       
-    }
-    
-    if(phase==1){
-       //オブジェクト3,4回収
+        turnrad_ccw(2*PI,team);
+//--------------------------------------------------------------------
        open_arm();
        pmove(targetx[3],targety[3]);
        close_arm();
        close_hand();
+       turnrad_cw(PI,team);
+       /*
+       open_hanf();
+       pmove(1800,team*(1200+slidedist));
+       closehand();
+       */
+       pmove(150,team*(1200+slidedist-space));//ゴール
+
+        open_arm();
+        open_hand();
+        wait(0.3);
+
+       
+        back300();
+        turnrad_ccw(2*PI,team);
+        phase=2;
+        
+       //また縦に回収
+       close_arm();
+       pmove2(900,team*(1200+slidedist+space));
+
+       open_hand();
+       pmove2(targetx[4],targety[4]);
+       close_hand();
+       wait(0.3);
+       beltup();
+       wait(btime);
+       beltstop();
+       open_hand();
+       //回収
+       pmove(targetx[6],targety[6]);
+       close_hand();
+       wait(0.3);
        beltup();
        wait(btime);
        beltstop();
-       pmove(1200,900+slidedist);//ハブ
        open_hand();
-       pmove(targetx[4],targety[4]);
+       //回収
+       pmove(targetx[8],targety[8]);
+       //回収
+       close_hand();
+       pmove2(150,team*(900+slidedist));//斜め移動
        
-       pmove(goalx,goaly2);
+       turnrad_ccw(PI,team);
        open_arm();
        open_hand();
-       //リリース
        back300();
     
-        phase=2;
+       
+       pmove2(700,(600+slidedist));//ハブ
+
+       pmove(targetx[5],targety[5]);
+       close_arm();
+       close_hand();
+       nxback300();
+       
+       pmove2(150,team*(900+slidedist));
+       open_arm();
+       open_hand();
+       
+        back300();
+        while(1){
+            buzzer(1);
+            wait(0.5);
+            buzzer(0);
+            wait(1);   
+        }
     }
     
-    if(phase==2){
-       //オブジェクト5,6回収
-       open_arm();
-       pmove(1200,900+slidedist);//ハブ
-       pmove(targetx[5],targety[5]);
-       //回収
-       pmove(targetx[6],targety[6]);
-       //回収?
-
-       pmove(goalx,goaly3);
-       back300();
-       phase=3;
+    
+    if(phase==1){
+        
+     pmove(targetx[7],targety[7]);
+     back300();
+     pmove2(goalx,goaly);
+     turnrad_ccw(PI,team);
+     open_arm();
+     open_hand();
+     back300();
+     
+     pmove2(900,600+slidedist);
+     
+        pmove(targetx[5],targety[5]);
+        pmove2(goalx,goaly);
+        turnrad_ccw(2*PI,team);
+        open_arm();
+        open_hand();
+        back300();
+        
     }
     
-    if(phase==3){
-       //オブジェクト7,8回収
-       pmove(1200,600+slidedist);//ハブ
-
-       pmove(targetx[7],targety[7]);
-       //回収
-        pmove(900,0);
-        //回収
-        pmove(targetx[8],targety[8]);
-       //回収?
-       pmove(goalx,300+slidedist+30);
-       //リリース
-       back300();
-       
-       phase=4;
-       }
-
-
-}*/
\ No newline at end of file
+}
\ No newline at end of file