Definition
Functional Requirements
Syntax
Semantics
Conformance
Performance
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 MPAI‑PTF Data Exchange 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/V2.0/data/MotorCommand.json
4 Semantics
Table 1 specifies the semantics of the Motor Command Data Type.
| Label | Type | Req. | Description |
|---|---|---|---|
| Header | string (CAV-MRC-V2.0) | Yes | Motor Command Header – Standard CAV-MRC-Vx.y |
| MInstanceID | string | Identifier of the M-Instance (Virtual Space) associated with this Motor Command. | |
| UEnvironmentID | string | Identifier of the U-Environment (Real Space) associated with this Motor Command. | |
| MotorCommandID | string | Yes | Unique identifier of this Motor Command instance. |
| MotorCommandTime | Simple Time | Time this Motor Command was produced. | |
| MotorCommandSpaceTime | Simple Time | Space/Time where/when this Motor Command applies. | |
| MotorID | string | Yes | Identifier of the motor to which this command is addressed. |
| MotorCommand | object | Yes | Set of Motor Command parameters. |
| MotorCommand. |
string | Yes | Specifies which control modality is active. One of: velocity, torque, position, acceleration. |
| MotorCommand. |
Simple Time | Yes | Time interval during which the command shall be applied. |
| MotorCommand. |
number | Target motor output velocity (m/s). Valid when ControlMode = velocity. | |
| MotorCommand. |
number | Target motor torque (N·m). Valid when ControlMode = torque. | |
| MotorCommand. |
number | Target shaft or steering position (radians or degrees). Valid when ControlMode = position. | |
| MotorCommand. |
number | Target acceleration (m/s²). Valid when ControlMode = acceleration. | |
| MotorCommand. |
object [] | Optional multi-phase actuation profile (ramp-up, hold, ramp-down). | |
| MotorCommand. |
string | Yes | Phase of the actuation profile. One of: ramp-up, hold, ramp-down. |
| MotorCommand. |
number | Yes | Duration of this phase in seconds. |
| MotorCommand. |
number | Target velocity for this phase (m/s). | |
| MotorCommand. |
number | Target torque for this phase (N·m). | |
| MotorCommand. |
number | Target acceleration for this phase (m/s²). | |
| MotorCommand. |
object | Optional safety envelope for this command. | |
| MotorCommand. |
number | Maximum allowable motor current (A). | |
| MotorCommand. |
number | Maximum allowable motor temperature (°C). | |
| MotorCommand. |
number | Maximum allowable torque (N·m). | |
| MotorCommand. |
object | Optional health-aware parameters for this command. | |
| MotorCommand. |
boolean | Indicates whether thermal derating mode is active. | |
| MotorCommand. |
number | Estimated load to be compensated (N·m or kg). | |
| MotorCommand. |
string | Optional hint from the motor-health subsystem. | |
| DataXMData | Data Exchange Metadata | MPAI-PTF Data Exchange Metadata providing provenance, authorisation, legal, security, and confidence information associated with this Motor Command in a trusted data exchange context. | |
| DescrMetadata | string | Human-readable descriptive metadata of the Motor Command (plain text, max 2048 characters). |
5 Conformance Testing
Data conform to the Motor Command Data Type when they validate against its schema. If the schema references other schemas, data referencing a secondary schema shall also validate against that schema, if present, and conform with the Qualifier, if present.