|
| 1 | +.. _actuators: |
| 2 | + |
| 3 | +=============== |
| 4 | +Actuators (PWM) |
| 5 | +=============== |
| 6 | + |
| 7 | +A generic PWM-controlled device can be added by connecting it to a pin on the autopilot's servo rail, and assigning that pin's ``SERVOx_FUNCTION`` parameter as one of ``Actuator 1..6`` as desired. Limits and direction are configured using the pin's ``SERVOx_MIN``/``MAX``/``REVERSED`` parameters. |
| 8 | + |
| 9 | +.. note: Where possible it is preferable to use dedicated output functions for the device type (e.g. :ref:`lights`, :ref:`grippers`, etc). Actuators serve as a convenience feature for controlling devices that have no dedicated configuration options, or where the options are insufficient for the device being controlled. |
| 10 | +
|
| 11 | +
|
| 12 | +Joystick/Gamepad Control |
| 13 | +======================== |
| 14 | + |
| 15 | +Actuator outputs can be controlled using the ``actuator_n_*`` :ref:`Button Functions <buttons>`, with options for: |
| 16 | + |
| 17 | +.. csv-table:: Actuator Button Functions |
| 18 | + :header: "Function", "Description" |
| 19 | + |
| 20 | + "``actuator_n_min``", "Set the servo output channel assigned to Actuator N to its minimum value" |
| 21 | + "``actuator_n_max``", "Set the servo output channel assigned to Actuator N to its maximum value" |
| 22 | + "``actuator_n_center``", "Set the servo output channel assigned to Actuator N to its center value" |
| 23 | + "``actuator_n_inc``", "Increase Actuator N by the ``ACTUATORn_INC`` parameter value" |
| 24 | + "``actuator_n_dec``", "Decrease Actuator N by the ``ACTUATORn_INC`` parameter value" |
| 25 | + "``actuator_n_min_momentary``", "Set Actuator N to its minimum value while the button is held, then to its center value on release" |
| 26 | + "``actuator_n_max_momentary``", "Set Actuator N to its maximum value while the button is held, then to its center value on release" |
| 27 | + "``actuator_n_min_toggle``", "Toggle Actuator N between its minimum and center values" |
| 28 | + "``actuator_n_max_toggle``", "Toggle Actuator N between its maximum and center values" |
| 29 | + |
| 30 | + |
| 31 | +Programmatic Control |
| 32 | +==================== |
| 33 | + |
| 34 | +Support for MAVLink-based control (via `MAV_CMD_DO_SET_ACTUATOR <https://mavlink.io/en/messages/common.html#MAV_CMD_DO_SET_ACTUATOR>`__) is `underway <https://github.com/ArduPilot/ardupilot/pull/32033>`__, but not yet available. |
| 35 | + |
| 36 | +Lua script control is not supported. |
0 commit comments