diff --git a/ArduCopter/Attitude.cpp b/ArduCopter/Attitude.cpp index f035a05471..1d1ab7f038 100644 --- a/ArduCopter/Attitude.cpp +++ b/ArduCopter/Attitude.cpp @@ -287,10 +287,10 @@ float Copter::get_surface_tracking_climb_rate(int16_t target_rate, float current } // set_accel_throttle_I_from_pilot_throttle - smoothes transition from pilot controlled throttle to autopilot throttle -void Copter::set_accel_throttle_I_from_pilot_throttle(int16_t pilot_throttle) +void Copter::set_accel_throttle_I_from_pilot_throttle(float pilot_throttle) { // shift difference between pilot's throttle and hover throttle into accelerometer I - g.pid_accel_z.set_integrator(pilot_throttle-throttle_average); + g.pid_accel_z.set_integrator((pilot_throttle-throttle_average) * 1000.0f); } // updates position controller's maximum altitude using fence and EKF limits diff --git a/ArduCopter/Copter.h b/ArduCopter/Copter.h index 4aa4ea6d19..08a96d4c51 100644 --- a/ArduCopter/Copter.h +++ b/ArduCopter/Copter.h @@ -616,7 +616,7 @@ private: float get_takeoff_trigger_throttle(); float get_throttle_pre_takeoff(float input_thr); float get_surface_tracking_climb_rate(int16_t target_rate, float current_alt_target, float dt); - void set_accel_throttle_I_from_pilot_throttle(int16_t pilot_throttle); + void set_accel_throttle_I_from_pilot_throttle(float pilot_throttle); void update_poscon_alt_max(); void rotate_body_frame_to_NE(float &x, float &y); void gcs_send_heartbeat(void);