Six crescent shaped legs

Dependencies:   mbed

Revision:
26:c865244ca3cf
Parent:
25:a8bb69e99d6b
Child:
27:24a9ac72fe92
--- a/main.cpp	Tue Apr 26 12:22:05 2016 +0000
+++ b/main.cpp	Thu May 12 17:00:10 2016 +0000
@@ -3,19 +3,48 @@
 #include "SyncGroup.hpp"
 
 InterruptIn bt(USER_BUTTON);
-Serial pc(USBTX, USBRX);
+Serial pc(SERIAL_TX, SERIAL_RX);
+//Serial pc(USBTX, USBRX);
 
 //PIDData speedPIDData = {0.3f, 2.0f, 0.02f};
 //PIDData turnPIDData = {5.0f, 0.1f, 0.04f};
 PIDData speedPIDData = {0.5f, 0.0f, 0.0f};
-PIDData turnPIDData = {30.0f, 0.01f, 1.f};
+PIDData turnPIDData = {30.0f, 0.01f, 1.0f};
 SyncGroup sync;
+    
+// 1
+MotorData m1Data = {PB_0, PC_0, PC_3}; //PWM, Dir1, Dir2
+EncoderData enc1Data = {PC_1, PA_4, 102.083 * 64}; //EncA, encB  // https://www.pololu.com/product/2826
+EncoderMotor m1(m1Data, enc1Data, speedPIDData, turnPIDData, NULL);
+
+// 2
+MotorData m2Data = {PB_7, PC_14, PC_13};  //PB7 = fault
+EncoderData enc2Data = {PC_15, PH_0, 102.083 * 64};
+EncoderMotor m2(m2Data, enc2Data, speedPIDData, turnPIDData, NULL);
+
+// 3
+MotorData m3Data = {PA_15, PC_11, PC_10}; 
+EncoderData enc3Data = {PC_12, PA_13, 102.083 * 64};
+EncoderMotor m3(m3Data, enc3Data, speedPIDData, turnPIDData, NULL);
 
-MotorData mData = {PB_0, PC_0, PC_1};
-//EncoderData encData = {PA_0, PA_1, 100 * 64};
-EncoderData encData = {PA_0, PA_1, 102.083 * 64}; // https://www.pololu.com/product/2826
+// 4
+MotorData m4Data = {PB_8, PC_6, PC_9}; 
+EncoderData enc4Data = {PC_5, PA_12, 102.083 * 64};
+EncoderMotor m4(m4Data, enc4Data, speedPIDData, turnPIDData, NULL);
 
-EncoderMotor m(mData, encData, speedPIDData, turnPIDData, &sync);
+// 5
+MotorData m5Data = {PB_15, PB_1, PB_2}; 
+EncoderData enc5Data = {PB_14, PB_13, 102.083 * 64};
+EncoderMotor m5(m5Data, enc5Data, speedPIDData, turnPIDData, NULL);
+
+// 6
+//MotorData m6Data = {PB_3, PA_10, PA_2};  //PA_2 = TX; PA_3 (m6-fault) = RX
+//EncoderData enc6Data = {PB_5, PB_4, 102.083 * 64};
+//EncoderMotor m6(m6Data, enc6Data, speedPIDData, turnPIDData, NULL); 
+
+//const int mitu = 5;
+
+//EncoderMotor m[mitu] = {m1,m2,m3,m4,m5};//,m6};
 
 //SpeedEncoder s(encData);
 
@@ -30,21 +59,21 @@
 void rise()
 {
     //pc.printf("rise\n");
-    m.drive(0);
+    m1.drive(0);
 }
 
 void fall()
 {
     //pc.printf("fall\n");
-    m.drive(0.25);
+    m1.drive(0.25);
 }
 
 int main()
 {   
+    printf("MAIN\n");
     bt.rise(&rise);
     bt.fall(&fall);
-    
-    m.setup();
+    m1.setup();
     
     float rot, speed;
     //m.rotate(1.f, 0.5);
@@ -56,13 +85,12 @@
         //scanf("%f", &turn);
         //m.rotate(turn, 0.2);
         scanf("%f %f", &rot, &speed);
-        m.rotate(rot, speed);
+        m1.rotate(rot, speed);
         //m.drive(speed);
         //printf("%f %f\n", s.getTurnSpeed(), m.getSetSpeed());
         //printf("%f %f\n", m.s, m.getSetSpeed());
-        
-        printf("%ld %f %f\n", m.getEncoder().getCount(), m.getEncoder().getTurn(), m.getSetTurn());
+        printf("%ld %f %f\n", m1.getEncoder().getCount(), m1.getEncoder().getTurn(), m1.getSetTurn());
         //printf("%f %f\n", m.getEncoder().getTurn(), m.getSetTurn());
         wait(1.f / 60);
     }
-}
\ No newline at end of file
+}   
\ No newline at end of file