mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-24 14:33:34 +08:00
FlightTaskOrbit: parameterize hardcoded maximum radius (#20012)
This commit is contained in:
@@ -72,7 +72,7 @@ bool FlightTaskOrbit::applyCommandParameters(const vehicle_command_s &command)
|
||||
|
||||
float new_velocity = signFromBool(new_is_clockwise) * new_absolute_velocity;
|
||||
|
||||
if (math::isInRange(new_radius, _radius_min, _radius_max)) {
|
||||
if (math::isInRange(new_radius, _radius_min, _param_mc_orbit_rad_max.get())) {
|
||||
_started_clockwise = new_is_clockwise;
|
||||
_sanitizeParams(new_radius, new_velocity);
|
||||
_orbit_radius = new_radius;
|
||||
@@ -146,7 +146,7 @@ bool FlightTaskOrbit::sendTelemetry()
|
||||
void FlightTaskOrbit::_sanitizeParams(float &radius, float &velocity) const
|
||||
{
|
||||
// clip the radius to be within range
|
||||
radius = math::constrain(radius, _radius_min, _radius_max);
|
||||
radius = math::constrain(radius, _radius_min, _param_mc_orbit_rad_max.get());
|
||||
velocity = math::constrain(velocity, -fabsf(_velocity_max), fabsf(_velocity_max));
|
||||
|
||||
bool exceeds_maximum_acceleration = (velocity * velocity) >= _acceleration_max * radius;
|
||||
|
||||
Reference in New Issue
Block a user