Skip to content

UMjDcMotorActuator

Models a DC motor with optional electrical dynamics (inductance),

cogging torque, thermal effects, and LuGre friction. Introduced in MuJoCo 3.7.0. Each array field is padded to the size that mjs_setToDCMotor expects: motorconst[2] / nominal[3] / saturation[3] / inductance[2] cogging[3] / controller[6] / thermal[6] / lugre[5] Missing tail entries are zero by default (per upstream).

Attribute Value
Kind Class
UE Macro UCLASS
Inherits UMjActuator
Blueprint Spawnable ✅ Yes

Properties

Public Properties

Property Type Description
resistance float
input EMjDcMotorInput
group int32
nsample int32
interp int32
delay float
ctrllimited bool
forcelimited bool
actlimited bool
armature float
cranklength float
actdim int32
GainType EMjGainType
BiasType EMjBiasType
DynType EMjDynType
Type EMjActuatorType The type of actuator dynamics (e.g. Motor, Position).
TransmissionType EMjActuatorTrnType The transmission type connecting the actuator to the system.
MjClassName FString Optional MuJoCo class name to inherit defaults from (string fallback).
DefaultClass UMjDefault* Reference to a UMjDefault component for default class inheritance. Hidden from the
TargetName FString Name of the target element (Joint, Tendon, Site, etc.) this actuator acts upon.
SliderSite FString Name of the slider site for slider-crank transmission.
RefSite FString Reference site name.

resistance

Override-enabled (bOverride_resistance)

  • Type: float
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

input

Override-enabled (bOverride_input)

  • Type: EMjDcMotorInput
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|MjActuator

group

Override-enabled (bOverride_group)

  • Type: int32
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

nsample

Override-enabled (bOverride_nsample)

  • Type: int32
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

interp

Override-enabled (bOverride_interp)

  • Type: int32
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

delay

Override-enabled (bOverride_delay)

  • Type: float
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

ctrllimited

Override-enabled (bOverride_ctrllimited)

  • Type: bool
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

forcelimited

Override-enabled (bOverride_forcelimited)

  • Type: bool
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

actlimited

Override-enabled (bOverride_actlimited)

  • Type: bool
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

armature

Override-enabled (bOverride_armature)

  • Type: float
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

cranklength

Override-enabled (bOverride_cranklength)

  • Type: float
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

actdim

Override-enabled (bOverride_actdim)

  • Type: int32
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

GainType

Override-enabled (bOverride_GainType)

  • Type: EMjGainType
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

BiasType

Override-enabled (bOverride_BiasType)

  • Type: EMjBiasType
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

DynType

Override-enabled (bOverride_DynType)

  • Type: EMjDynType
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

Type

The type of actuator dynamics (e.g. Motor, Position).

  • Type: EMjActuatorType
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

TransmissionType

The transmission type connecting the actuator to the system.

  • Type: EMjActuatorTrnType
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

MjClassName

Optional MuJoCo class name to inherit defaults from (string fallback).

  • Type: FString
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

DefaultClass

Reference to a UMjDefault component for default class inheritance. Hidden from the

  • Type: UMjDefault*
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator
  • Notes: Override-enabled (false)

TargetName

Name of the target element (Joint, Tendon, Site, etc.) this actuator acts upon.

  • Type: FString
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

SliderSite

Name of the slider site for slider-crank transmission.

  • Type: FString
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

RefSite

Reference site name.

  • Type: FString
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|Actuator

Functions

Public Functions

General

Function Returns Description
ImportFromXml() void Imports properties and override flags directly from the raw XML node.
RegisterToSpec() void Registers this actuator to the MuJoCo spec.
ResolveDesiredControl() float Called by Articulation on each async step.
ImportFromXml

Imports properties and override flags directly from the raw XML node.

  • Signature: ImportFromXml(const class FXmlNode* Node, const struct FMjCompilerSettings& CompilerSettings)
RegisterToSpec

Registers this actuator to the MuJoCo spec.

ResolveDesiredControl

Called by Articulation on each async step.

  • Signature: ResolveDesiredControl(uint8 Source)
  • Returns: float

MuJoCo|Runtime

Function Returns Description
SetControl() void Writes lock-free InternalValue; resolved into d->ctrl on the physics step.
GetControlRange() FVector2D [min, max] from the compiled model; ZeroVector when ctrl is unlimited.
GetActivation() float 0 for stateless actuators.
SetControl

Writes lock-free InternalValue; resolved into d->ctrl on the physics step.

  • Signature: SetControl(float Value)
  • Blueprint: 🔵 Callable
GetControlRange

[min, max] from the compiled model; ZeroVector when ctrl is unlimited.

  • Signature: GetControlRange()
  • Blueprint: 🔵 Callable
  • Returns: FVector2D
GetActivation

0 for stateless actuators.

  • Signature: GetActivation()
  • Blueprint: 🔵 Callable
  • Returns: float