robot

Dependencies:   FastPWM3 mbed

Revision:
157:a9b2002994d5
Parent:
154:0a22dcf91577
Child:
158:882f9c208378
--- a/main.cpp	Thu May 04 21:16:51 2017 +0000
+++ b/main.cpp	Sun May 07 16:46:53 2017 +0000
@@ -89,12 +89,12 @@
     foc.vd_decouple = -Lq * POLE_PAIRS * read.w * foc.q / BUS_VOLTAGE / 2.0f;
     foc.vq_decouple = Ld * POLE_PAIRS * read.w * foc.d / BUS_VOLTAGE / 2.0f;
     
-    constrain_norm(&foc.vd_decouple, &foc.vq_decouple, 1.0f, 1.0f, 1.0f);
+    constrain_norm(&foc.vd_decouple, &foc.vq_decouple, 1.0f, 1.0f, 1.0f + OVERMODULATION_FACTOR);
     
     foc.vd = KP_D * d_err + control.d_integral;// + foc.vd_decouple;
     foc.vq = KP_Q * q_err + control.q_integral;// + foc.vq_decouple;
     
-    constrain_norm(&foc.vd, &foc.vq, 1.0f, 1.0f, 1.0f);
+    constrain_norm(&foc.vd, &foc.vq, 1.0f, 1.0f, 1.5f);//1.0f);
     
     if (!control_enabled) {
         foc.vd = 0.0f;
@@ -126,9 +126,9 @@
     }
     
     /*output to timers*/
-    set_dtc(io.a, 0.5f + 0.5f * va * MODULATION_MAX);
-    set_dtc(io.b, 0.5f + 0.5f * vb * MODULATION_MAX);
-    set_dtc(io.c, 0.5f + 0.5f * vc * MODULATION_MAX);
+    set_dtc(io.a, 0.5f + 0.5f * va * LINEAR_MODULATION_MAX);
+    set_dtc(io.b, 0.5f + 0.5f * vb * LINEAR_MODULATION_MAX);
+    set_dtc(io.c, 0.5f + 0.5f * vc * LINEAR_MODULATION_MAX);
 }
 
 void slow_loop() {