System Requirements¶
Purpose¶
This document lists the system-level requirements for the MOTSEN Tool. Every
requirement is derived from a single desc node in System Description
and is written as a small, testable “shall” statement so that one verification
case can later cover one requirement.
Rules used in this document:
Each
sysreqmakes a single claim. Compound behaviors are split into multiple requirements.derived_frompoints to exactly oneDESC_*. If two descriptions apply, the requirement is split.Requirements that depend on an open decision use
status: placeholderandlinked_to:the relevantDEC_*in Project Plan.Forward links to hardware/software requirements and to test cases are added as those documents come online; they are intentionally not stubbed here.
Top-Level Requirements¶
MOTSEN shall operate on three-phase permanent-magnet synchronous motors (PMSM, IPMSM) and brushless DC motors (BLDC). |
MOTSEN shall present every measurement and diagnostic result through the host PC user interface. |
MOTSEN shall operate from a DC bus in the 12–24 V range with an output below 100 W for the Phase 1 (MVP) target. |
System Context¶
MOTSEN shall be operable by a single user from a single host PC. |
MOTSEN shall perform its specified functions without requiring any external laboratory instrument (oscilloscope, LCR meter, power analyzer, signal generator). |
MOTSEN shall provide every feature without requiring a network or cloud connection. |
Power Stage Requirements¶
The power stage shall drive three motor phases from the DC bus. |
The power stage shall be driven by center-aligned PWM with a configurable dead-time on each half-bridge. |
PWM generation shall be synchronized with ADC sampling such that phase currents are sampled at a defined point within the PWM cycle. |
The PWM frequency shall be configurable. The supported range is a placeholder pending eval-board selection (DEC_001). |
On output-disable, the power stage shall return all three phases to a high-impedance state within one PWM period. |
Sensing Requirements¶
MOTSEN shall measure the current in each motor phase. |
Phase currents shall be sampled synchronously with the PWM cycle. |
MOTSEN shall measure the DC-bus voltage. |
MOTSEN shall trip a fault when the DC-bus voltage falls below or exceeds firmware-configurable thresholds. |
MOTSEN shall not report a characterization result before the sensing chain has been calibrated against a reference for the current session or stored calibration. |
Position Sensor Requirements¶
MOTSEN shall read the state of each Hall sensor input. |
MOTSEN shall decode Hall states into a 6-state commutation sector and an inferred direction of rotation. |
MOTSEN shall read an incremental encoder alongside Hall sensors. Scheduled for Phase 2 (MIL_042). |
MOTSEN shall read a resolver. Scheduled for Phase 3 (MIL_077). |
MOTSEN shall detect a missing or disconnected position sensor and report it as a sensor-check failure. |
Embedded Controller Requirements¶
The firmware shall provide a hardware abstraction layer covering GPIO, UART, timer, ADC, and PWM peripherals. |
The Phase 1 (MVP) firmware shall run on the NXP S32K322 MCU. |
The firmware shall support a second MCU family without modification to application-layer code. Scheduled for Phase 2 (MIL_048). |
The HAL implementation strategy (NXP RTD/SDK wrap vs thin register layer) is pending DEC_005. |
Safety & Protection Requirements¶
The firmware shall enforce a configured current limit at all times while PWM output is enabled. |
On any detected fault, the firmware shall disable PWM output within one control cycle. |
A hardware overcurrent latch shall trip the PWM outputs independently of the firmware control loop. |
The system shall exit the Fault state only after an explicit acknowledgement from the user. |
On power-on, the system shall enter the Idle / Safe state with PWM disabled. |
In Sensor Check mode, excitation current shall be limited to a value below the configured Run-mode current limit. |
Host Communication Link Requirements¶
The host link shall provide read and write access to firmware parameters. |
The host link shall provide a streaming telemetry channel for live signals. |
On loss of the host link, the firmware shall transition the tool to the Idle / Safe state. |
The physical layer (UART vs USB-CDC) and the on-wire frame format are pending DEC_003. |
MOTSEN shall provide a CAN interface. Scheduled for Phase 2 (MIL_043); inclusion in Phase 1 is pending DEC_004. |
Host Application Requirements¶
The host application shall serve the user interface from a local web server running on the host PC. |
The UI shall display live phase currents. |
The UI shall display the live state of the active position sensor. |
The UI shall allow the user to read and edit firmware parameters and apply them to the running firmware. |
The host application shall be single-user and shall not require authentication. |
The UI shall display the current operating mode and any active fault. |
The host application shall expose a scriptable interface for running measurement sequences without manual UI interaction. Scheduled for Phase 2 (MIL_044). |
The host application shall persist motor parameters and measurement results to the host filesystem. Scheduled for Phase 2 (MIL_047). |
Measurement & Characterization Requirements¶
MOTSEN shall measure motor phase resistance Rs. |
The Rs result shall agree with a reference motor measurement within a documented tolerance. |
The sensor health check shall detect an incorrect phase sequence and report it as a failure with a clear diagnostic message. |
The sensor health check shall detect Hall sensor misalignment and report it as a failure with a clear diagnostic message. |
The sensor health check shall run end-to-end on a real motor when triggered from the host UI and shall report a pass/fail result back to the UI. |
MOTSEN shall measure D-axis and Q-axis inductances Ld and Lq. Scheduled for Phase 2 (MIL_040). |
MOTSEN shall measure the back-EMF constant and torque constant Kt. Scheduled for Phase 2 (MIL_041). |
Operating Mode Requirements¶
MOTSEN shall expose exactly five operating modes to the user: Idle / Safe, Sensor Check, Characterization, Run, and Fault. |
All operating-mode transitions shall be enforced by the firmware. UI actions request transitions; firmware decides whether to grant them. |
On any detected fault, the system shall transition immediately to the Fault state from any source mode. |
The system shall exit Fault only into Idle / Safe, and only after explicit user acknowledgement. |
The system shall not transition directly between Characterization and Run. Any such transition shall pass through Idle / Safe. |
Phase 1 Run mode shall be open-loop commutation only. FOC closed-loop control is scheduled for Phase 2 (MIL_045). |
Open-Decision Placeholders¶
These requirements are intentionally redundant with the placeholder descriptions in System Description so that the open decisions are visible from both sides.
Final voltage range, continuous/peak current, switching frequency, and gate driver topology are pending DEC_001 (eval board selection). |
Host-link physical layer and frame format are pending DEC_003. |
Backend language and framework for the local web server are pending DEC_002. |
HAL implementation strategy is pending DEC_005. |
Whether CAN is in Phase 1 or strictly Phase 2 is pending DEC_004. |
Whether sensorless control is in scope, and for which phase, is pending DEC_006. |
License selection and publication policy are pending DEC_007. |
Traceability¶
Each sysreq above declares derived_from: exactly one DESC_* node in
System Description. Forward links downward will be added as the
following documents come online:
implemented_by:toHWREQ_*andSWREQ_*once Hardware Requirements and Software Requirements are populated.verified_by:toTEST_*once System Test Plan is populated.
Placeholder requirements (status: placeholder) close in two ways:
By closure of their referenced
DEC_*(an architectural decision is made), at which point the requirement is rewritten to a concreteshalland the status moves todraft.By their referenced
MIL_*becoming active in the current phase, at which point the placeholder requirement becomes a real requirement for that phase.