fix some stuff
This commit is contained in:
parent
6ea107bf4e
commit
63cc52ef1e
@ -98,7 +98,7 @@ class PID {
|
|||||||
* \param current
|
* \param current
|
||||||
* Current sensor library.
|
* Current sensor library.
|
||||||
*/
|
*/
|
||||||
double compute(double current);
|
double calculate(double current);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns target value.
|
* Returns target value.
|
||||||
|
|||||||
@ -48,7 +48,7 @@ void PID::set_exit_condition(int p_small_exit_time, double p_small_error, int p_
|
|||||||
void PID::set_target(double input) { target = input; }
|
void PID::set_target(double input) { target = input; }
|
||||||
double PID::get_target() { return target; }
|
double PID::get_target() { return target; }
|
||||||
|
|
||||||
double PID::compute(double dist) {
|
double PID::calculate(double dist) {
|
||||||
error = target - dist; // Calculate the error
|
error = target - dist; // Calculate the error
|
||||||
derivative = error - lastError; // Calculate the derivative term
|
derivative = error - lastError; // Calculate the derivative term
|
||||||
|
|
||||||
@ -63,9 +63,9 @@ double PID::compute(double dist) {
|
|||||||
integral = 0;
|
integral = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
output = (error * constants.kp) + (integral * constants.ki) + (derivative * constants.kd);
|
output = (error * constants.kp) + (integral * constants.ki) + (derivative * constants.kd); // Combine all of the terms to get an output speed
|
||||||
|
|
||||||
lastError = error;
|
lastError = error; // Set the last error to the previously calculated error.
|
||||||
|
|
||||||
return output;
|
return output;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -31,9 +31,9 @@ void Drive::ez_auto_task() {
|
|||||||
// Drive PID task
|
// Drive PID task
|
||||||
void Drive::drive_pid_task() {
|
void Drive::drive_pid_task() {
|
||||||
// Compute PID
|
// Compute PID
|
||||||
leftPID.compute(left_sensor());
|
leftPID.calculate(left_sensor());
|
||||||
rightPID.compute(right_sensor());
|
rightPID.calculate(right_sensor());
|
||||||
headingPID.compute(get_gyro());
|
headingPID.calculate(get_gyro());
|
||||||
|
|
||||||
// Compute slew
|
// Compute slew
|
||||||
double l_slew_out = slew_calculate(left_slew, left_sensor());
|
double l_slew_out = slew_calculate(left_slew, left_sensor());
|
||||||
@ -58,7 +58,7 @@ void Drive::drive_pid_task() {
|
|||||||
// Turn PID task
|
// Turn PID task
|
||||||
void Drive::turn_pid_task() {
|
void Drive::turn_pid_task() {
|
||||||
// Compute PID
|
// Compute PID
|
||||||
turnPID.compute(get_gyro());
|
turnPID.calculate(get_gyro());
|
||||||
|
|
||||||
// Clip gyroPID to max speed
|
// Clip gyroPID to max speed
|
||||||
double gyro_out = util::clip_num(turnPID.output, max_speed, -max_speed);
|
double gyro_out = util::clip_num(turnPID.output, max_speed, -max_speed);
|
||||||
@ -77,7 +77,7 @@ void Drive::turn_pid_task() {
|
|||||||
// Swing PID task
|
// Swing PID task
|
||||||
void Drive::swing_pid_task() {
|
void Drive::swing_pid_task() {
|
||||||
// Compute PID
|
// Compute PID
|
||||||
swingPID.compute(get_gyro());
|
swingPID.calculate(get_gyro());
|
||||||
|
|
||||||
// Clip swingPID to max speed
|
// Clip swingPID to max speed
|
||||||
double swing_out = util::clip_num(swingPID.output, max_speed, -max_speed);
|
double swing_out = util::clip_num(swingPID.output, max_speed, -max_speed);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user