N K
/
GaNtroller
a fork of priustroller
Fork of priustroller_current by
Diff: callbacks.cpp
- Revision:
- 50:16b43e8fe04f
- Parent:
- 49:0603121a0538
- Child:
- 52:4d4b2b3ef8dc
- Child:
- 53:ef62d7a958f2
diff -r 0603121a0538 -r 16b43e8fe04f callbacks.cpp --- a/callbacks.cpp Tue Apr 21 03:52:08 2015 +0000 +++ b/callbacks.cpp Fri Apr 24 16:19:29 2015 +0000 @@ -31,15 +31,17 @@ dbg_loop_d = vd = c->pid_d->Update(ref_d, d_filtered); dbg_loop_q = vq = c->pid_q->Update(ref_q, q_filtered); - /* + - if(c->user->throttle <= 0.1f){ - float ramp = (c->user->throttle*10.0f)*(c->user->throttle*10.0f); - vd = ramp*vd; - vq = ramp*vq; + if(c->user->throttle <= 0.05f){ //disable inverter - prevent whining, allow for safe precharge. + c->inverter->Disable(); + c->pid_d->ZeroIntegrator(); + c->pid_q->ZeroIntegrator(); } + else { + c->inverter->Enable(); + } - */ dbg_loop_d = vd; dbg_loop_q = vq; @@ -61,7 +63,7 @@ //c->serial->printf("%f %f %f %f %f %f\n\r", dbg_d_filtered, dbg_q_filtered, dbg_ref_d, dbg_ref_q, dbg_loop_d, dbg_loop_q); //c->serial->printf("%f\n\r", dbg_angle); //c->serial->printf("%f\n\r", c->user->throttle); - c->serial->printf("%f %f\n\r", dbg_ib, dbg_ic); + //c->serial->printf("%f %f\n\r", dbg_ib, dbg_ic); } void log(Context *c) {