Unit 18 · lesson
Build the Architecture
Now design the system that satisfies the requirements.
Do not begin with a pile of vendor parts. Begin with responsibilities.
Subsystems
A complete architecture may include:
- mechanical platform;
- power;
- actuators;
- low-level control;
- sensors;
- localization;
- perception;
- mission logic;
- communication;
- operator interface;
- logging;
- safety/stop path.
Not every project needs every block.
Interface diagram
Use boxes and labeled arrows. The first version should show responsibility flow before it tries to look like a finished engineering diagram.
Robot architecture starts with responsibility flow
The diagram is not a parts list. It shows who receives a request, who decides, who measures state, who commands motion, and where evidence is recorded.
- OPERATORmission request or stop inputcommands
- MISSION LOGICselects goals and checks authorityasks
- LOCALIZATIONestimates where the robot isinforms
- MOTION CONTROLturns targets into bounded commandsdrives
- ACTUATORSmotors and mechanisms change the robotmoves
- EVIDENCElogs, pose checkpoints, and measured response
Add power separately. Power and data are not the same arrow.
Trace requirements into architecture
Create a table:
| Requirement | Owning subsystem(s) | Interface/evidence |
|---|---|---|
| R-01 complete route | mission + motion | state log + pose checkpoints |
| R-06 stop input | operator + safety + drive | stop trace |
| R-10 reject stale pose | localization + mission | timestamp test |
If a requirement has no owner, the architecture is incomplete.
Tradeoff records
Write at least three short architecture decisions.
Example:
ADR-01: Use wheel odometry plus periodic visual correction.
Reason: odometry provides frequent local motion while visual references bound accumulated drift.
Cost: adds camera processing, transform, and visibility dependencies.
Architecture is not the boxes. It is the reasoning behind the boundaries.
Interfaces deserve their own design
Two well-designed subsystems can still fail together if their interface is vague.
For every important arrow in your architecture, define an interface record:
| Field | Example |
|---|---|
| producer | localization |
| consumer | mission logic |
| data | pose (x, y, θ) |
| frame | world |
| units | m, m, rad |
| expected rate | 20 Hz |
| maximum age | 150 ms |
| invalid behavior | reject motion request |
Do this for at least three high-consequence interfaces.
Show power and information separately
A block diagram that mixes power and data into unlabeled arrows hides failure propagation.
Create two views if necessary. The power view answers where energy can fail. The information view answers how state and commands move.
Power moves through a separate dependency chain
Power is not the same arrow as data. A robot can receive the right command and still fail if the energy path cannot support the load.
- BATTERYstored energy sourceprotect
- PROTECTIONmain breaker, fuse, or safety boundarydistribute
- DISTRIBUTIONroutes energy to subsystemsfeeds
- LOADSmotors, computers, radios, sensors, payloadsobserve
- EVIDENCEvoltage sag, heat, resets, current, or dropout
Information moves through perception and control
Sensor data becomes estimated state, planning decisions, control outputs, actuator commands, and measured feedback.
- SENSORSmeasure the robot and environmentestimate
- STATEpose, speed, heading, object locationplan
- PLANNINGchoose target or next actioncontrol
- CONTROLconvert target into safe commandscommand
- ACTUATORSexecute and create new measurements
Then annotate where the two views meet. A motor driver receives information from control logic and energy from the power system. Either path can fail.
Architecture review question
Take one requirement and trace it end to end.
For a safe-stop requirement, your architecture needs to show the full chain:
A safe-stop requirement has an end-to-end evidence path
The stop input is only the first event. A useful architecture shows authority, command inhibition, actuator response, and measured confirmation.
- STOP INPUToperator, sensor, or rule requests stopevaluated by
- AUTHORITY LOGICdecides the stop request is validinhibits
- MOTION COMMANDfuture motion is blocked or limitedupdates
- CONTROLLER OUTPUTactuator command changesmeasured by
- CONFIRMATIONmotion stops and evidence is recorded
If your architecture cannot show where the requirement is implemented and how its result is observed, the diagram is not yet useful.
Architecture is not decoration. It is a model you should be able to interrogate.