1 Definition
A Motor Command is a directive issued by the Motion Actuation Subsystem to a traction or steering motor of a Connected Autonomous Vehicle (CAV). It defines what the motor shall achieve- typically expressed as target velocity, torque, or position – together with when and how to apply the command.
MPAI‑CAV deployments increasingly rely on motors requiring richer descriptions:
• precise torque envelopes,
• state‑dependent limits,
• health and temperature awareness,
• actuator‑side feedback expectations,
• safety overrides.
2 Functional Requirements
A Motor Command shall:
- Identify the Command and Motor: Include unique identifiers for the command lifecycle and the target Motor.
- Support Multi‑Mode Actuation: Express control in velocity, torque, acceleration, or position, depending on motor type.
- Provide Timing Information: Include the intended moment of application, duration, or scheduling within the control cycle.
- Support Safety‑Aware Execution: Incorporate optional limits and safety thresholds (current, temperature, torque caps).
- Allow Explicit Control Profiles: Enable multi‑phase envelopes (e.g., ramp‑up, hold, ramp‑down).
- Include Optional Predictive Control Parameters: Such as feed‑forward torque correction or expected load compensation.
- Support Data Exchange and Traceability: Provide standard AIF V3 metadata for logging and system verification.
- Be Forward‑Compatible: Allow future additions without breaking existing deployments (via optional fields).
3 Syntax
https://schemas.mpai.community/CAV2/V1.1/data/MotorCommand.json
4 Semantics
| Label | Description |
|---|---|
| Header | Motor Command Header — standard “CAV‑MRC‑Vx.y”, where x.y is the version. |
| MotorCommandID | ID of the Motor Command instance. |
| MotorID | Identifier of the addressed Motor. |
| MotorCommand | Set of Motor Command parameters. |
| – MotorCommandTime | Time interval during which the command shall be applied. |
| – ControlMode | Specifies which control modality is active: velocity, torque, position, or acceleration. |
| – TargetVelocity | Target velocity expected at the end of the commanded duration (only when ControlMode = velocity). |
| – TargetTorque | Target torque to be produced by the motor (only when ControlMode = torque). |
| – TargetPosition | Target shaft/steering position (only when ControlMode = position). |
| – TargetAcceleration | Target acceleration to be produced (only when ControlMode = acceleration). |
| – ControlProfile | Optional multi‑phase actuation profile (ramp‑up, hold, ramp‑down), each with its duration and optional velocity/torque/acceleration values. |
| – SafetyLimits | Optional safety envelope including maximum allowable current, maximum temperature, and maximum torque. |
| – HealthAwareness | Optional health‑aware parameters such as thermal derating mode, expected load estimate, or motor‑state hint. |
| DataExchangeMetadata | Metadata describing exchange, processing context, and runtime characteristics (AIF V3.0). |
| Trace | Trace information enabling reproducibility and auditability of the Motor Command (AIF V3.0). |
| DescrMetadata | Optional descriptive metadata. |