motor spins

Dependencies:   mbed

Fork of analoghalls5 by Bayley Wang

Revision:
5:ee1e6c84c302
Parent:
4:fdadf4a3577a
Child:
6:99ee0ce47fb2
--- a/loopdriver.cpp	Mon Mar 02 11:17:15 2015 +0000
+++ b/loopdriver.cpp	Tue Mar 03 06:28:10 2015 +0000
@@ -52,7 +52,7 @@
 float LoopDriver::LutSin(float theta) {
     if (theta < 0.0f) theta += 360.0f;
     if (theta >= 360.0f) theta -= 360.0f;
-    return sinetab[(int) theta];
+    return (sinetab[(int) theta]*2)-1.0f; //shift range 0:1 to -1:1
 }
 
 float LoopDriver::LutCos(float theta) {
@@ -60,11 +60,11 @@
 }
 
 void LoopDriver::update() {
-    _blinky_toggle = !_blinky_toggle;
-    
+    /*
     _inverter->SetDtcA(LutSin(_motor->angle));
     _inverter->SetDtcB(LutSin(_motor->angle - 120.0f));
     _inverter->SetDtcC(LutSin(_motor->angle + 120.0f));
+    */
     
     float alpha, beta, d, q, ref_d, ref_q, valpha, vbeta;
     Clarke(_motor->I_a, _motor->I_b, &alpha, &beta);
@@ -73,4 +73,7 @@
     float vd = _pid_d->Update(ref_d, d);
     float vq = _pid_q->Update(ref_q, q);
     InverseParke(vd, vq, _motor->angle, &valpha, &vbeta);
+    _modulator->Update(valpha, vbeta);
+    
+    
 }