MAVLINKHUD

Overview

The CRUISE parameter group (often appearing as TRIM_ARSPD_CM, CRUISE_SPEED, or CRUISE_THROTTLE) defines the baseline "Standard" flight/drive conditions for the vehicle.

These parameters tell the autopilot "This is what normal looks like." They are foundational for the navigation controllers (TECS / Speed Controller).

Key Concepts

1. Target Speed (CRUISE_SPEED)

The default target speed in meters/second for Auto, Cruise, and RTL modes.

  • Plane: Indicated Airspeed.
  • Rover: Ground Speed.

2. Base Throttle (CRUISE_THROTTLE)

The approximate throttle percentage required to maintain CRUISE_SPEED in level flight/driving.

  • Importance: This provides a "FeedForward" baseline for the throttle controller. The PID loops only work to correct errors around this base value. If set correctly, the controller has to do very little work.

Parameter Breakdown

  • CRUISE_SPEED: Target speed (m/s).
  • CRUISE_THROTTLE: Target throttle (%).
  • CRUISE_ALT_FLOOR: (Plane) Minimum altitude floor.

Integration Guide

Tuning

  1. Fly/Drive Manual: Establish a steady speed that feels efficient.
  2. Observe: Note the speed and throttle percentage from the OSD or logs.
  3. Set: Update CRUISE_SPEED and CRUISE_THROTTLE with these observed values.

Developer Notes

  • Aliases: In older Plane parameters, TRIM_ARSPD_CM is the canonical name for CRUISE_SPEED.
  • Dependencies: TECS uses CRUISE_SPEED as the center of the speed envelope.

CRUISE_ALT_FLOOR

m
Default 0
Range 0 100

Minimum altitude for FBWB and CRUISE mode (CRUISE_ALT_FLOOR)

Description

This parameter creates a virtual "floor" or minimum altitude for the FBWB and CRUISE flight modes. If the pilot tries to descend below this altitude (measured above Home), the autopilot will ignore the pitch-down command and level off. This is a safety feature to prevent low-level crashes during long-range cruising.

The Mathematics

$$ \text{Pitch Target} = \text{Constrain}(\text{Pilot Input}) \text{ s.t. } \text{Alt} \ge \text{CRUISE\_ALT\_FLOOR} $$

The Engineer's View

Defined in ArduPlane/Parameters.cpp.

  • 0: Disabled.
  • >0: Minimum altitude in meters.

Tuning & Behavior

  • Default Value: 0 (Disabled)
  • Safety: Setting this to e.g., 50m ensures you never accidentally fly into terrain while cruising.

CRUISE_SPEED

m/s
Default 2.0
Range 0 100.0

Target Cruise Speed (CRUISE_SPEED)

Description

CRUISE_SPEED is the "Default Speed Limit" for your Rover or Boat.

When you start an Auto mission or trigger a Return to Launch (RTL), the autopilot will attempt to maintain this speed while navigating between waypoints. It acts as the primary velocity target for the cruise control system.

Tuning & Behavior

  • Default: 2.0 m/s (approx 7.2 km/h).
  • Recommendation: Set this to a speed where your vehicle can still turn reliably and safely.
  • Physics: This works in combination with CRUISE_THROTTLE to establish the initial power level for the propulsion system.

CRUISE_THROTTLE

%
Default 50
Range 0 100

Target Cruise Throttle (CRUISE_THROTTLE)

Description

CRUISE_THROTTLE provides the "Feed-Forward" value for the speed controller.

It tells the autopilot: "To go at CRUISE_SPEED, you typically need about X% throttle." This gives the controller a starting point. If the vehicle is moving too slowly, the autopilot will increase throttle above this value; if moving too fast, it will decrease it.

Tuning & Behavior

  • Default: 50%.
  • Calibration: Drive your vehicle in Manual or Acro mode at your desired cruise speed. Note the throttle percentage shown on your GCS. Enter that value here.
  • Effect: A correctly set cruise throttle leads to much smoother acceleration and more stable speed tracking during autonomous missions.