stock mbed AnalogReads current loop closed and working
Fork of priustroller by
Diff: main.cpp
- Revision:
- 9:d3b70c15baa9
- Parent:
- 6:99ee0ce47fb2
- Child:
- 10:b4abecccec7a
diff -r 99ee0ce47fb2 -r d3b70c15baa9 main.cpp --- a/main.cpp Wed Mar 04 15:33:32 2015 +0000 +++ b/main.cpp Fri Mar 06 19:12:53 2015 +0000 @@ -7,6 +7,8 @@ float test_alpha = 0; float test_beta = 0; +float d_mean = 0; +float q_mean = 0; float test_DtcA; float test_DtcB; @@ -16,7 +18,7 @@ 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); + PositionSensor *sense_p = new AnalogHallPositionSensor(A4, A5, 0.249f, 0.497f, 0.231f, 0.499f, 205.0f); CurrentSensor *sense_ic = new AnalogCurrentSensor(A1, 0.01); CurrentSensor *sense_ib = new AnalogCurrentSensor(A2, 0.01); VoltageSensor *sense_bus = new AnalogVoltageSensor(A5, 0.01); @@ -24,8 +26,8 @@ TempSensor *sense_t_inverter = new TempSensor(); Throttle *throttle = new Throttle(A0, 0.5f, 3.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); + PidController *pid_d = new PidController(0.0001f, 0.0f, 0.0f, 5.0f, -5.0f); + PidController *pid_q = new PidController (0.0001f, 0.0f, 0.0f, 5.0f, -5.0f); 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); @@ -35,7 +37,7 @@ LoopDriver *driver = new LoopDriver(inverter, motor, user, pid_d, pid_q, modulator, 1.0f, 5000); motor->Config(4, 20.0f); - updater->Config(5000, 10); + updater->Config(5000, 100, 10); driver->Start(); updater->Start();