Skip to content

Glossary

This glossary defines the ubiquitous language of this bounded context.

Code identifiers are derived from these terms by applying the target language's own naming convention (camelCase, PascalCase, snake_case, ...) — see the "Code identifiers ... mirror its glossary term exactly" rule in the general coding guideline. Never invent a synonym: if the term is "Task Title", the identifier must derive from "Task Title" itself (e.g. taskTitle, TaskTitle, task_title), never from "Title" or "TaskName".

Core Terms

Term Definition Scope
Drive The three motors of the robot, addressed as one subsystem on the CAN bus. ALL
Motor One of the three motors of the Drive, numbered 1 to 3. ALL
Bridge This firmware. It relays the messages of the Drive between the CAN bus and the Motor Controller Boards. ALL
Motor Controller Board A finished, reusable third-party product with a left and a right motor output. It has a fixed UART interface, which the Bridge consumes unchanged. ALL
Superordinate Controller The Raspberry Pi computer that commands the Drive. ALL
Status Report Line over USB serial in which the Bridge reports its counters, the feedback of each Motor Controller Board, and the cause of its last start; every 5 s and at once on news (capability 006). ALL
Silence Timeout Time without a valid frame after which a Motor Controller Board counts as silent in the Status Report. ALL

Messages

Term Definition Scope
Drive Command Target speeds of all three Motors. Sent by the Superordinate Controller. ALL
Status Query Request for the state of the Drive. Sent by the Superordinate Controller. ALL
Board Command Target speeds for the left and right output of one Motor Controller Board, split from a Drive Command. ALL
Board Status Supply Voltage and Controller Temperature reported by one Motor Controller Board, once per second. ALL
Motor Status Supply Voltage and Controller Temperature of one Motor, taken from the Board Status of the board that drives it. Sent by the Drive. ALL
Board Odometry Measured Speeds of the left and right output reported by one Motor Controller Board, every 10 ms. ALL
Motor Speed Measured Speed of one Motor, taken from the Board Odometry of the board that drives it. Sent by the Drive. ALL
Board State State Bits reported by one Motor Controller Board when they change and in reply to a Status Query. ALL
Motor State State Bits of one Motor: the bits of its own output and the board-wide bits of the Board State of the board that drives it. Sent by the Drive. ALL

Value Objects

Value objects have no identity — they are equal by value.

Term Validation / Constraints
Target Speed Unit-less, nominal range -1000 to 1000. Not enforced by the Bridge.
Supply Voltage Battery voltage measured by a Motor Controller Board, in units of 0.01 V. Not checked by the Bridge.
Controller Temperature Temperature of a Motor Controller Board, in °C. Not checked by the Bridge.
State Bits 32 bits: persistent conditions in bits 0–15, events set for one report in bits 16–31, in the layout of the board's Serial_Feedback_State. Not checked by the Bridge.
Measured Speed Speed of one output as measured by its Motor Controller Board. Unit-less, sign as reported by the board. Not checked by the Bridge.