Prius IPM controller

Dependencies:   mbed

Fork of analoghalls5_5 by N K

Revision:
6:99ee0ce47fb2
Parent:
5:ee1e6c84c302
Child:
7:76d6ceb23e0d
Child:
9:d3b70c15baa9
--- a/main.cpp	Tue Mar 03 06:28:10 2015 +0000
+++ b/main.cpp	Wed Mar 04 15:33:32 2015 +0000
@@ -4,26 +4,35 @@
 #include "meta.h"
 
 Serial *pc = new Serial(SERIAL_TX, SERIAL_RX);
+float test_alpha = 0;
+float test_beta = 0;
+
+
+float test_DtcA;
+float test_DtcB;
+float test_DtcC;
 
 int main() {
     pc->baud(115200);
+    pc->printf("%s\n\r", "Init Serial Comm");
+    
     PositionSensor *sense_p = new AnalogHallPositionSensor(A4, A5, 0.249f, 0.497f, 0.231f, 0.499f, 200.0f);
-    CurrentSensor *sense_ia = new AnalogCurrentSensor(A1, 0.01);
+    CurrentSensor *sense_ic = new AnalogCurrentSensor(A1, 0.01);
     CurrentSensor *sense_ib = new AnalogCurrentSensor(A2, 0.01);
     VoltageSensor *sense_bus = new AnalogVoltageSensor(A5, 0.01);
     TempSensor *sense_t_motor = new TempSensor();
     TempSensor *sense_t_inverter = new TempSensor();
     Throttle *throttle = new Throttle(A0, 0.5f, 3.0f);
     
-    PidController *pid_d = new PidController(0.0f, 0.0f, 0.0f, 0.0f, 1.0f);
-    PidController *pid_q = new PidController (0.0f, 0.0f, 0.0f, 0.0f, 1.0f);
+    PidController *pid_d = new PidController(0.1f, 0.0f, 0.0f, 1.0f, 0.0f);
+    PidController *pid_q = new PidController (0.1f, 0.0f, 0.0f, 1.0f, 0.0f);
     
-    Motor *motor = new Motor(sense_ia, sense_ib, sense_p, sense_t_motor);
+    Motor *motor = new Motor(sense_ic, sense_ib, sense_p, sense_t_motor);
     Inverter *inverter = new Inverter(D6, D13, D3, D8, sense_bus, sense_t_inverter);
     User *user = new User(throttle);
     Modulator *modulator = new SinusoidalModulator(inverter);
     StatusUpdater *updater = new StatusUpdater(inverter, motor, user);
-    LoopDriver *driver = new LoopDriver(inverter, motor, user, pid_d, pid_q, modulator, 100.0f, 5000);
+    LoopDriver *driver = new LoopDriver(inverter, motor, user, pid_d, pid_q, modulator, 1.0f, 5000);
     
     motor->Config(4, 20.0f);
     updater->Config(5000, 10);