Rover: replaced constrain() with constrain_float()
This commit is contained in:
parent
ba83950fc4
commit
b13406859f
@ -1595,17 +1595,17 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
|
||||
} else if (var_type == AP_PARAM_INT32) {
|
||||
if (packet.param_value < 0) rounding_addition = -rounding_addition;
|
||||
float v = packet.param_value+rounding_addition;
|
||||
v = constrain(v, -2147483648.0f, 2147483647.0f);
|
||||
v = constrain_float(v, -2147483648.0f, 2147483647.0f);
|
||||
((AP_Int32 *)vp)->set_and_save(v);
|
||||
} else if (var_type == AP_PARAM_INT16) {
|
||||
if (packet.param_value < 0) rounding_addition = -rounding_addition;
|
||||
float v = packet.param_value+rounding_addition;
|
||||
v = constrain(v, -32768, 32767);
|
||||
v = constrain_float(v, -32768, 32767);
|
||||
((AP_Int16 *)vp)->set_and_save(v);
|
||||
} else if (var_type == AP_PARAM_INT8) {
|
||||
if (packet.param_value < 0) rounding_addition = -rounding_addition;
|
||||
float v = packet.param_value+rounding_addition;
|
||||
v = constrain(v, -128, 127);
|
||||
v = constrain_float(v, -128, 127);
|
||||
((AP_Int8 *)vp)->set_and_save(v);
|
||||
} else {
|
||||
// we don't support mavlink set on this parameter
|
||||
|
@ -92,7 +92,7 @@ static void calc_throttle(float target_speed)
|
||||
SPEED_TURN_GAIN percentage.
|
||||
*/
|
||||
float steer_rate = fabsf((nav_steer_cd/nav_gain_scaler) / (float)SERVO_MAX);
|
||||
steer_rate = constrain(steer_rate, 0.0, 1.0);
|
||||
steer_rate = constrain_float(steer_rate, 0.0, 1.0);
|
||||
float reduction = 1.0 - steer_rate*(100 - g.speed_turn_gain)*0.01;
|
||||
|
||||
if (control_mode >= AUTO && wp_distance <= g.speed_turn_dist) {
|
||||
@ -129,7 +129,7 @@ static void calc_nav_steer()
|
||||
} else {
|
||||
nav_gain_scaler = g.speed_cruise / ground_speed;
|
||||
}
|
||||
nav_gain_scaler = constrain(nav_gain_scaler, 0.2f, 1.4f);
|
||||
nav_gain_scaler = constrain_float(nav_gain_scaler, 0.2f, 1.4f);
|
||||
|
||||
// Calculate the required turn of the wheels rover
|
||||
// ----------------------------------------
|
||||
|
@ -52,7 +52,7 @@ static void update_crosstrack(void)
|
||||
// ----------------
|
||||
if (abs(wrap_180_cd(target_bearing - crosstrack_bearing)) < 4500) { // If we are too far off or too close we don't do track following
|
||||
crosstrack_error = sinf(radians((target_bearing - crosstrack_bearing) / (float)100)) * wp_distance; // Meters we are off track line
|
||||
nav_bearing += constrain(crosstrack_error * g.crosstrack_gain, -g.crosstrack_entry_angle.get(), g.crosstrack_entry_angle.get());
|
||||
nav_bearing += constrain_float(crosstrack_error * g.crosstrack_gain, -g.crosstrack_entry_angle.get(), g.crosstrack_entry_angle.get());
|
||||
nav_bearing = wrap_360_cd(nav_bearing);
|
||||
}
|
||||
}
|
||||
|
@ -154,7 +154,7 @@ test_radio(uint8_t argc, const Menu::arg *argv)
|
||||
// ------------------------------
|
||||
set_servos();
|
||||
|
||||
tuning_value = constrain(((float)(g.rc_7.radio_in - g.rc_7.radio_min) / (float)(g.rc_7.radio_max - g.rc_7.radio_min)),0,1);
|
||||
tuning_value = constrain_float(((float)(g.rc_7.radio_in - g.rc_7.radio_min) / (float)(g.rc_7.radio_max - g.rc_7.radio_min)),0,1);
|
||||
|
||||
cliSerial->printf_P(PSTR("IN 1: %d\t2: %d\t3: %d\t4: %d\t5: %d\t6: %d\t7: %d\t8: %d Tuning = %2.3f\n"),
|
||||
g.channel_steer.control_in,
|
||||
|
Loading…
Reference in New Issue
Block a user