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 sysreq makes a single claim. Compound behaviors are split into multiple requirements.

  • derived_from points to exactly one DESC_*. If two descriptions apply, the requirement is split.

  • Requirements that depend on an open decision use status: placeholder and linked_to: the relevant DEC_* 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

System Requirement: Target motor class SYS_001
status: draft
derived from: DESC_001
is derived by: TEST_SYS_001

MOTSEN shall operate on three-phase permanent-magnet synchronous motors (PMSM, IPMSM) and brushless DC motors (BLDC).

System Requirement: Results presented on the host PC SYS_002
status: draft
derived from: DESC_001

MOTSEN shall present every measurement and diagnostic result through the host PC user interface.

System Requirement: MVP operating envelope SYS_003
status: draft
derived from: DESC_001

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

System Requirement: Single-user single-PC operation SYS_010
status: draft
derived from: DESC_010

MOTSEN shall be operable by a single user from a single host PC.

System Requirement: No external lab instruments required SYS_011
status: draft
derived from: DESC_010

MOTSEN shall perform its specified functions without requiring any external laboratory instrument (oscilloscope, LCR meter, power analyzer, signal generator).

System Requirement: No remote connectivity required SYS_012
status: draft
derived from: DESC_010

MOTSEN shall provide every feature without requiring a network or cloud connection.

Power Stage Requirements

System Requirement: Three-phase drive SYS_030
status: draft
derived from: DESC_030

The power stage shall drive three motor phases from the DC bus.

System Requirement: Center-aligned PWM with dead-time SYS_031
status: draft
derived from: DESC_030

The power stage shall be driven by center-aligned PWM with a configurable dead-time on each half-bridge.

System Requirement: PWM synchronized to ADC sampling SYS_032
status: draft
derived from: DESC_030

PWM generation shall be synchronized with ADC sampling such that phase currents are sampled at a defined point within the PWM cycle.

System Requirement: Configurable PWM frequency SYS_033
status: placeholder
derived from: DESC_030

The PWM frequency shall be configurable. The supported range is 1kHz to 100kHz.

System Requirement: Fast output disable SYS_034
status: draft
derived from: DESC_030

On output-disable, the power stage shall drive swithes to open state in less than TBD us.

Sensing Requirements

System Requirement: Phase current measurement SYS_040
status: draft
derived from: DESC_031

MOTSEN shall measure the current in each motor phase.

System Requirement: PWM-synchronous current sampling SYS_041
status: draft
derived from: DESC_031

Phase currents shall be sampled synchronously with the PWM cycle.

System Requirement: DC-bus voltage measurement SYS_042
status: draft
derived from: DESC_031

MOTSEN shall measure the DC-bus voltage.

System Requirement: DC-bus over/under-voltage supervision SYS_043
status: draft
derived from: DESC_031

MOTSEN shall trip a fault when the DC-bus voltage falls below or exceeds firmware-configurable thresholds.

System Requirement: Sensing chain calibrated before characterization SYS_044
status: draft
derived from: DESC_031
is derived by: HWREQ_033

MOTSEN shall not report a characterization result before the sensing chain has been calibrated against a reference for the current session or stored calibration.

System Requirement: Phase voltage measurement SYS_045
status: draft
derived from: DESC_031

MOTSEN shall measure the voltage on each motor phase for use in characterization procedures.

System Requirement: DC-bus current measurement SYS_046
status: draft
derived from: DESC_031

MOTSEN shall measure the DC-bus current for power measurement and supervision.

Position Sensor Requirements

System Requirement: Hall sensor readout SYS_050
status: draft
derived from: DESC_032

MOTSEN shall read the state of each Hall sensor input.

System Requirement: Hall decoding to sector and direction SYS_051
status: draft
derived from: DESC_032

MOTSEN shall decode Hall states into a 6-state commutation sector and an inferred direction of rotation.

System Requirement: Encoder support SYS_052
status: placeholder
links to: MIL_042
derived from: DESC_032

MOTSEN shall read an incremental or magnetic encoder alongside Hall sensors. Scheduled for Phase 2 (MIL_042).

System Requirement: Resolver support SYS_053
status: placeholder
links to: MIL_077
derived from: DESC_032

MOTSEN shall read a resolver. Scheduled for Phase 3 (MIL_077).

System Requirement: Detect disconnected position sensor SYS_054
status: draft
derived from: DESC_032

MOTSEN shall detect a missing or disconnected position sensor and report it as a sensor-check failure.

Embedded Controller Requirements

System Requirement: HAL coverage SYS_060
status: draft
derived from: DESC_033

The firmware shall provide a hardware abstraction layer covering GPIO, UART, timer, ADC, and PWM peripherals.

System Requirement: MVP target MCU SYS_061
status: draft
derived from: DESC_033

The Phase 1 (MVP) firmware shall run on the TBD MCU.

System Requirement: Second MCU support SYS_062
status: placeholder
links to: MIL_048
derived from: DESC_033

The firmware shall support a second MCU family without modification to application-layer code. Scheduled for Phase 2 (MIL_048).

Safety & Protection Requirements

System Requirement: Firmware current limit always active SYS_070
status: draft
derived from: DESC_034

The firmware shall enforce a configured current limit at all times while PWM output is enabled.

System Requirement: PWM disabled on fault within one control cycle SYS_071
status: draft
derived from: DESC_034

On any detected fault, the firmware shall disable PWM output within one control cycle.

System Requirement: Independent hardware overcurrent latch SYS_072
status: placeholder
derived from: DESC_034

A hardware overcurrent latch shall trip the PWM outputs independently of the firmware control loop. Scheduled for Phase 2; Phase 1 relies on firmware limits only.

System Requirement: Explicit fault acknowledgement SYS_073
status: draft
derived from: DESC_034

The system shall exit the Fault state only after an explicit acknowledgement from the user.

System Requirement: Power-on safe state SYS_074
status: draft
derived from: DESC_034

On power-on, the system shall enter the Idle / Safe state with PWM disabled.

System Requirement: Sensor-check excitation current cap SYS_075
status: draft
derived from: DESC_034

In Sensor Check mode, excitation current shall be limited to a value below the configured Run-mode current limit.

Host Application Requirements

System Requirement: Native desktop application SYS_090
status: draft
derived from: DESC_036

The host application shall be a native desktop application running locally on the user’s PC, communicating directly with the firmware over the host communication link.

System Requirement: Live position sensor display SYS_092
status: draft
derived from: DESC_036

The UI shall display the live state of the active position sensor.

System Requirement: Parameter editing from UI SYS_093
status: draft
derived from: DESC_036

The UI shall allow the user to read and edit firmware parameters and apply them to the running firmware.

System Requirement: Single-user, no authentication SYS_094
status: draft
derived from: DESC_036

The host application shall be single-user and shall not require authentication.

System Requirement: Mode and fault display SYS_095
status: draft
derived from: DESC_036

The UI shall display the current operating mode and any active fault.

System Requirement: Scripting interface SYS_096
status: placeholder
links to: MIL_044
derived from: DESC_036

The host application shall expose a scriptable interface for running measurement sequences without manual UI interaction. Scheduled for Phase 2 (MIL_044).

System Requirement: Persistent parameter and result storage SYS_097
status: placeholder
links to: MIL_047
derived from: DESC_036

The host application shall persist motor parameters and measurement results to the host filesystem. Scheduled for Phase 2 (MIL_047).

Measurement & Characterization Requirements

System Requirement: Measure phase resistance Rs SYS_100
status: draft
derived from: DESC_037

MOTSEN shall measure motor phase resistance Rs.

System Requirement: Rs accuracy against reference motor SYS_101
status: draft
derived from: DESC_037

The Rs result shall agree with a reference motor measurement within a documented tolerance.

System Requirement: Detect incorrect phase sequence SYS_102
status: draft
derived from: DESC_037

The sensor health check shall detect an incorrect phase sequence and report it as a failure with a clear diagnostic message.

System Requirement: Detect Hall misalignment SYS_103
status: draft
derived from: DESC_037

The sensor health check shall detect Hall sensor misalignment and report it as a failure with a clear diagnostic message.

System Requirement: Sensor health check end-to-end from UI SYS_104
status: draft
derived from: DESC_037

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.

System Requirement: Measure Ld and Lq SYS_105
status: placeholder
links to: MIL_040
derived from: DESC_037

MOTSEN shall measure D-axis and Q-axis inductances Ld and Lq. Scheduled for Phase 2 (MIL_040).

System Requirement: Measure back-EMF / torque constant SYS_106
status: placeholder
links to: MIL_041
derived from: DESC_037

MOTSEN shall measure the back-EMF constant and torque constant Kt. Scheduled for Phase 2 (MIL_041).

System Requirement: Determine pole-pair count SYS_107
status: placeholder
links to: MIL_040
derived from: DESC_037

MOTSEN shall determine the pole-pair count of the motor under test. Scheduled for Phase 2 alongside Ld/Lq (MIL_040).

Operating Mode Requirements

System Requirement: Defined mode set SYS_110
status: draft
derived from: DESC_040

MOTSEN shall expose exactly five operating modes to the user: Idle / Safe, Sensor Check, Characterization, Run, and Fault.

System Requirement: Firmware-enforced transitions SYS_111
status: draft
derived from: DESC_040

All operating-mode transitions shall be enforced by the firmware. UI actions request transitions; firmware decides whether to grant them.

System Requirement: Fault preempts all modes SYS_112
status: draft
derived from: DESC_040

On any detected fault, the system shall transition immediately to the Fault state from any source mode.

System Requirement: Fault exit requires acknowledgement SYS_113
status: draft
derived from: DESC_040

The system shall exit Fault only into Idle / Safe, and only after explicit user acknowledgement.

System Requirement: No direct Characterization to Run SYS_114
status: draft
derived from: DESC_040

The system shall not transition directly between Characterization and Run. Any such transition shall pass through Idle / Safe.

System Requirement: Phase 1 Run is open-loop SYS_115
status: placeholder
links to: MIL_045
derived from: DESC_040

Phase 1 Run mode shall be open-loop commutation only. FOC closed-loop control is scheduled for Phase 2 (MIL_045).

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: