MAVLINKHUD

Overview

The IM parameter group configures the Input Mapping and collective curves for Traditional Helicopters.

Helicopters require complex nonlinear mapping between the pilot's collective stick and the physical pitch of the main rotor blades. This group manages the "Feel" of the collective in different flight modes.

Key Concepts

1. Collective Curves (IM_STB_COL_x)

In Stabilize and Acro modes, the collective stick doesn't command altitude; it commands blade pitch directly.

  • 4-Point Curve: The curve is defined by four points corresponding to Stick positions (0%, 40%, 60%, 100%).
  • IM_STB_COL_1: Pitch at minimum stick.
  • IM_STB_COL_4: Pitch at maximum stick.

2. Acro Expo (IM_ACRO_COL_EXP)

Adds exponential "feel" to the collective stick in Acro mode, allowing for more precise hover control around the center stick.

Parameter Breakdown

  • IM_STB_COL_1..4: Curve points (normalized 0-1000).
  • IM_ACRO_COL_EXP: Exponential factor.

Integration Guide

  • Tuning: Adjust these curves to achieve a linear climb/descent feel that matches your motor power and blade efficiency.

Developer Notes

  • Library: libraries/AC_AttitudeControl/AC_AttitudeControl_Heli.cpp.
  • Context: Only relevant for Helicopters.

IM_ACRO_COL_EXP: Acro Mode Collective Expo

Description

Used to soften collective pitch inputs near center point in Acro mode.

Values

  • Range: 0 to 1.0
  • Default: 0
  • Increment: 0.1
Value Meaning
0 Disabled (Linear)
0.1 Very Low
0.2 Low
0.3 Medium
0.4 High
0.5 Very High

Description

This parameter adds "Expo" (Exponential curvature) to the collective pitch stick when flying in Acro mode.

  • Effect: It reduces the sensitivity of the collective stick around the center position (mid-stick).
  • Purpose: Allows for more precise control of blade pitch near 0 degrees (typically mid-stick in Acro setup) while still allowing full positive and negative pitch at the stick extremes. This is useful for 3D flight maneuvers where precise management of zero-lift is required.

Source Code

ardupilot/libraries/AC_InputManager/AC_InputManager_Heli.cpp

IM_STB_COL_4: Stabilize Collective High

Description

Helicopter's maximum collective pitch setting at full collective stick input in Stabilize mode. Set this as a percent of collective range given by H_COL_MAX minus H_COL_MIN.

Values

  • Range: 0 to 100
  • Units: %
  • Increment: 1
  • Default: 100

Description

This parameter defines the top point of the collective pitch curve used in Stabilize mode.

  • Input: 100% (Stick fully up).
  • Output: The value of IM_STB_COL_4 (as a percentage of the total collective range).
  • Usage: Typically set to 100% to allow full climb performance, but can be reduced if the pilot wants to limit the maximum climb rate in Stabilize mode.

Source Code

ardupilot/libraries/AC_InputManager/AC_InputManager_Heli.cpp

IM_STB_COL_1: Stabilize Collective Low

Description

Helicopter's minimum collective pitch setting at zero collective stick input in Stabilize mode. Set this as a percent of collective range given by H_COL_MAX minus H_COL_MIN.

Values

  • Range: 0 to 100
  • Units: %
  • Increment: 1
  • Default: 0

Description

This parameter defines the bottom point of the collective pitch curve used in Stabilize mode.

  • Input: 0% (Stick fully down).
  • Output: The value of IM_STB_COL_1 (as a percentage of the total collective range defined by H_COL_MIN and H_COL_MAX).
  • Usage: Typically set to 0% for normal setups, or higher if you want to limit negative pitch (descent rate) in Stabilize mode to prevent accidental rapid descents by beginners.

Source Code

ardupilot/libraries/AC_InputManager/AC_InputManager_Heli.cpp

IM_STB_COL_3: Stabilize Collective Mid-High

Description

Helicopter's collective pitch setting at mid-high (60%) collective stick input in Stabilize mode. Set this as a percent of collective range given by H_COL_MAX minus H_COL_MIN.

Values

  • Range: 0 to 100
  • Units: %
  • Increment: 1
  • Default: 60

Description

This parameter defines the third point of the collective pitch curve used in Stabilize mode.

  • Input: 60% (Stick slightly above center).
  • Output: The value of IM_STB_COL_3 (as a percentage of the total collective range).
  • Usage: Typically set to a value that provides a hover or gentle climb. This, along with IM_STB_COL_2, creates the "hover band" sensitivity.

Source Code

ardupilot/libraries/AC_InputManager/AC_InputManager_Heli.cpp

IM_STB_COL_2: Stabilize Collective Mid-Low

Description

Helicopter's collective pitch setting at mid-low (40%) collective stick input in Stabilize mode. Set this as a percent of collective range given by H_COL_MAX minus H_COL_MIN.

Values

  • Range: 0 to 100
  • Units: %
  • Increment: 1
  • Default: 40

Description

This parameter defines the second point of the collective pitch curve used in Stabilize mode.

  • Input: 40% (Stick slightly below center).
  • Output: The value of IM_STB_COL_2 (as a percentage of the total collective range).
  • Usage: Typically set to a value that provides a gentle descent or hover-capable pitch, depending on pilot preference. This helps define the transition from minimum pitch to hover pitch.

Source Code

ardupilot/libraries/AC_InputManager/AC_InputManager_Heli.cpp