Bayley Wang
/
foc-ed_in_the_bot_compact
robot
Diff: main.cpp
- Revision:
- 154:0a22dcf91577
- Parent:
- 152:6877dceec871
- Child:
- 157:a9b2002994d5
--- a/main.cpp Thu May 04 15:16:56 2017 +0000 +++ b/main.cpp Thu May 04 16:52:04 2017 +0000 @@ -30,7 +30,6 @@ DQMapper *dq; ThrottleMapper *th; -MedianFilter *throttle_filter, *velocity_filter; int loop_counter = 0; bool control_enabled = false; @@ -45,7 +44,7 @@ float w_raw = dp_mech * F_SW; //rad/s - read.w = velocity_filter->update(w_raw); + read.w = control.velocity_filter->update(w_raw); } void commutate() { @@ -134,7 +133,7 @@ void slow_loop() { float x = io.throttle_in->get_throttle(); - x = throttle_filter->update(x); + x = control.throttle_filter->update(x); control.torque_percent = th->map(x, read.w); dq->map(control.torque_percent, read.w, &control.d_ref, &control.q_ref); } @@ -152,7 +151,7 @@ } bool is_driving() { - return io.throttle_in->get_throttle() > 0.01f || fabsf(read.w) > W_SAFE; + return control.torque_percent > 0.01f || fabsf(read.w) > W_SAFE; } float update_filter(float old, float x, float str) { @@ -160,8 +159,8 @@ } void log() { - //io.pc->printf("%d,%d,%d,%d,%d,%d,%d,%d\n", (int) read.w, (int) control.d_ref, (int) control.d_filtered, (int) control.q_ref, (int) control.q_filtered, (int) (255 * control.torque_percent), - // (int) (255 * foc.vd), (int) (255 * foc.vq)); + io.pc->printf("%d,%d,%d,%d,%d,%d,%d,%d\n", (int) read.w, (int) control.d_ref, (int) control.d_filtered, (int) control.q_ref, (int) control.q_filtered, (int) (255 * control.torque_percent), + (int) (255 * foc.vd), (int) (255 * foc.vq)); //io.pc->printf("%d,%d,%d,%d,%d\n", (int) read.w, (int) control.d_filtered, (int) control.q_filtered, (int) (255 * foc.vd), (int) (255 * foc.vq)); wait(1.0f / LOG_FREQUENCY); } @@ -187,8 +186,6 @@ int main() { dq = new LutMapper(); th = new NullThrottleMapper(); - throttle_filter = new MedianFilter(THROTTLE_FILTER_WINDOW); - velocity_filter = new MedianFilter(W_FILTER_WINDOW); BREMSInit(&io, &read, &foc, &control, false);