mirror of
https://github.com/ArduPilot/ardupilot.git
synced 2026-10-06 19:00:27 +08:00
Rover: add unit and axis suffixes to virtual function parameters
This commit is contained in:
committed by
Randy Mackay
parent
7820b805d5
commit
80ed0ddea4
+8
-8
@@ -172,7 +172,7 @@ bool Rover::set_target_location(const Location& target_loc)
|
||||
|
||||
#if AP_SCRIPTING_ENABLED
|
||||
// set target velocity (for use by scripting)
|
||||
bool Rover::set_target_velocity_NED(const Vector3f& vel_ned, bool align_yaw_to_target)
|
||||
bool Rover::set_target_velocity_NED(const Vector3f& vel_ned_ms, bool align_yaw_to_target)
|
||||
{
|
||||
// exit if vehicle is not in Guided mode or Auto-Guided mode
|
||||
if (!control_mode->in_guided_mode()) {
|
||||
@@ -180,13 +180,13 @@ bool Rover::set_target_velocity_NED(const Vector3f& vel_ned, bool align_yaw_to_t
|
||||
}
|
||||
|
||||
// convert vector length into speed
|
||||
const float target_speed_m = safe_sqrt(sq(vel_ned.x) + sq(vel_ned.y));
|
||||
const float target_speed_ms = safe_sqrt(sq(vel_ned_ms.x) + sq(vel_ned_ms.y));
|
||||
|
||||
// convert vector direction to target yaw
|
||||
const float target_yaw_cd = degrees(atan2f(vel_ned.y, vel_ned.x)) * 100.0f;
|
||||
const float target_yaw_cd = degrees(atan2f(vel_ned_ms.y, vel_ned_ms.x)) * 100.0f;
|
||||
|
||||
// send target heading and speed
|
||||
mode_guided.set_desired_heading_and_speed(target_yaw_cd, target_speed_m);
|
||||
mode_guided.set_desired_heading_and_speed(target_yaw_cd, target_speed_ms);
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -213,7 +213,7 @@ bool Rover::get_steering_and_throttle(float& steering, float& throttle)
|
||||
}
|
||||
|
||||
// set desired turn rate (degrees/sec) and speed (m/s). Used for scripting
|
||||
bool Rover::set_desired_turn_rate_and_speed(float turn_rate, float speed)
|
||||
bool Rover::set_desired_turn_rate_and_speed(float turn_rate_degs, float speed_ms)
|
||||
{
|
||||
// exit if vehicle is not in Guided mode or Auto-Guided mode
|
||||
if (!control_mode->in_guided_mode()) {
|
||||
@@ -221,14 +221,14 @@ bool Rover::set_desired_turn_rate_and_speed(float turn_rate, float speed)
|
||||
}
|
||||
|
||||
// set turn rate and speed. Turn rate is expected in centidegrees/s and speed in meters/s
|
||||
mode_guided.set_desired_turn_rate_and_speed(turn_rate * 100.0f, speed);
|
||||
mode_guided.set_desired_turn_rate_and_speed(turn_rate_degs * 100.0f, speed_ms);
|
||||
return true;
|
||||
}
|
||||
|
||||
// set desired nav speed (m/s). Used for scripting.
|
||||
bool Rover::set_desired_speed(float speed)
|
||||
bool Rover::set_desired_speed(float speed_ms)
|
||||
{
|
||||
return control_mode->set_desired_speed(speed);
|
||||
return control_mode->set_desired_speed(speed_ms);
|
||||
}
|
||||
|
||||
// get control output (for use in scripting)
|
||||
|
||||
+3
-3
@@ -268,12 +268,12 @@ private:
|
||||
#endif
|
||||
|
||||
#if AP_SCRIPTING_ENABLED
|
||||
bool set_target_velocity_NED(const Vector3f& vel_ned, bool align_yaw_to_target) override;
|
||||
bool set_target_velocity_NED(const Vector3f& vel_ned_ms, bool align_yaw_to_target) override;
|
||||
bool set_steering_and_throttle(float steering, float throttle) override;
|
||||
bool get_steering_and_throttle(float& steering, float& throttle) override;
|
||||
// set desired turn rate (degrees/sec) and speed (m/s). Used for scripting
|
||||
bool set_desired_turn_rate_and_speed(float turn_rate, float speed) override;
|
||||
bool set_desired_speed(float speed) override;
|
||||
bool set_desired_turn_rate_and_speed(float turn_rate_degs, float speed_ms) override;
|
||||
bool set_desired_speed(float speed_ms) override;
|
||||
bool get_control_output(AP_Vehicle::ControlOutput control_output, float &control_value) override;
|
||||
bool nav_scripting_enable(uint8_t mode) override;
|
||||
bool nav_script_time(uint16_t &id, uint8_t &cmd, float &arg1, float &arg2, int16_t &arg3, int16_t &arg4) override;
|
||||
|
||||
+6
-6
@@ -123,7 +123,7 @@ public:
|
||||
float get_speed_default(bool rtl = false) const;
|
||||
|
||||
// set desired speed in m/s
|
||||
virtual bool set_desired_speed(float speed) { return false; }
|
||||
virtual bool set_desired_speed(float speed_ms) { return false; }
|
||||
|
||||
// execute the mission in reverse (i.e. backing up)
|
||||
void set_reversed(bool value);
|
||||
@@ -277,7 +277,7 @@ public:
|
||||
bool reached_destination() const override;
|
||||
|
||||
// set desired speed in m/s
|
||||
bool set_desired_speed(float speed) override;
|
||||
bool set_desired_speed(float speed_ms) override;
|
||||
|
||||
// start RTL (within auto)
|
||||
void start_RTL();
|
||||
@@ -545,7 +545,7 @@ public:
|
||||
bool reached_destination() const override;
|
||||
|
||||
// set desired speed in m/s
|
||||
bool set_desired_speed(float speed) override;
|
||||
bool set_desired_speed(float speed_ms) override;
|
||||
|
||||
// get or set desired location
|
||||
bool get_desired_location(Location& destination) const override WARN_IF_UNUSED;
|
||||
@@ -722,7 +722,7 @@ public:
|
||||
bool reached_destination() const override;
|
||||
|
||||
// set desired speed in m/s
|
||||
bool set_desired_speed(float speed) override;
|
||||
bool set_desired_speed(float speed_ms) override;
|
||||
|
||||
protected:
|
||||
|
||||
@@ -758,7 +758,7 @@ public:
|
||||
bool reached_destination() const override { return smart_rtl_state == SmartRTLState::StopAtHome; }
|
||||
|
||||
// set desired speed in m/s
|
||||
bool set_desired_speed(float speed) override;
|
||||
bool set_desired_speed(float speed_ms) override;
|
||||
|
||||
// save current position for use by the smart_rtl flight mode
|
||||
void save_position();
|
||||
@@ -854,7 +854,7 @@ public:
|
||||
float get_distance_to_destination() const override;
|
||||
|
||||
// set desired speed in m/s
|
||||
bool set_desired_speed(float speed) override;
|
||||
bool set_desired_speed(float speed_ms) override;
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
+7
-7
@@ -349,24 +349,24 @@ bool ModeAuto::reached_destination() const
|
||||
}
|
||||
|
||||
// set desired speed in m/s
|
||||
bool ModeAuto::set_desired_speed(float speed)
|
||||
bool ModeAuto::set_desired_speed(float speed_ms)
|
||||
{
|
||||
switch (_submode) {
|
||||
case SubMode::WP:
|
||||
case SubMode::Stop:
|
||||
return g2.wp_nav.set_speed_max(speed);
|
||||
return g2.wp_nav.set_speed_max(speed_ms);
|
||||
case SubMode::HeadingAndSpeed:
|
||||
_desired_speed = speed;
|
||||
_desired_speed = speed_ms;
|
||||
return true;
|
||||
case SubMode::RTL:
|
||||
return rover.mode_rtl.set_desired_speed(speed);
|
||||
return rover.mode_rtl.set_desired_speed(speed_ms);
|
||||
case SubMode::Loiter:
|
||||
return rover.mode_loiter.set_desired_speed(speed);
|
||||
return rover.mode_loiter.set_desired_speed(speed_ms);
|
||||
case SubMode::Guided:
|
||||
case SubMode::NavScriptTime:
|
||||
return rover.mode_guided.set_desired_speed(speed);
|
||||
return rover.mode_guided.set_desired_speed(speed_ms);
|
||||
case SubMode::Circle:
|
||||
return g2.mode_circle.set_desired_speed(speed);
|
||||
return g2.mode_circle.set_desired_speed(speed_ms);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -94,12 +94,12 @@ float ModeFollow::get_distance_to_destination() const
|
||||
}
|
||||
|
||||
// set desired speed in m/s
|
||||
bool ModeFollow::set_desired_speed(float speed)
|
||||
bool ModeFollow::set_desired_speed(float speed_ms)
|
||||
{
|
||||
if (is_negative(speed)) {
|
||||
if (is_negative(speed_ms)) {
|
||||
return false;
|
||||
}
|
||||
_desired_speed = speed;
|
||||
_desired_speed = speed_ms;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -257,17 +257,17 @@ bool ModeGuided::reached_destination() const
|
||||
}
|
||||
|
||||
// set desired speed in m/s
|
||||
bool ModeGuided::set_desired_speed(float speed)
|
||||
bool ModeGuided::set_desired_speed(float speed_ms)
|
||||
{
|
||||
switch (_guided_mode) {
|
||||
case SubMode::WP:
|
||||
return g2.wp_nav.set_speed_max(speed);
|
||||
return g2.wp_nav.set_speed_max(speed_ms);
|
||||
case SubMode::HeadingAndSpeed:
|
||||
case SubMode::TurnRateAndSpeed:
|
||||
// speed is set from mavlink message
|
||||
return false;
|
||||
case SubMode::Loiter:
|
||||
return rover.mode_loiter.set_desired_speed(speed);
|
||||
return rover.mode_loiter.set_desired_speed(speed_ms);
|
||||
case SubMode::SteeringAndThrottle:
|
||||
case SubMode::Stop:
|
||||
// no speed control
|
||||
|
||||
+2
-2
@@ -78,7 +78,7 @@ bool ModeRTL::reached_destination() const
|
||||
}
|
||||
|
||||
// set desired speed in m/s
|
||||
bool ModeRTL::set_desired_speed(float speed)
|
||||
bool ModeRTL::set_desired_speed(float speed_ms)
|
||||
{
|
||||
return g2.wp_nav.set_speed_max(speed);
|
||||
return g2.wp_nav.set_speed_max(speed_ms);
|
||||
}
|
||||
|
||||
@@ -124,9 +124,9 @@ bool ModeSmartRTL::get_desired_location(Location& destination) const
|
||||
}
|
||||
|
||||
// set desired speed in m/s
|
||||
bool ModeSmartRTL::set_desired_speed(float speed)
|
||||
bool ModeSmartRTL::set_desired_speed(float speed_ms)
|
||||
{
|
||||
return g2.wp_nav.set_speed_max(speed);
|
||||
return g2.wp_nav.set_speed_max(speed_ms);
|
||||
}
|
||||
|
||||
// save current position for use by the smart_rtl flight mode
|
||||
|
||||
Reference in New Issue
Block a user