From 4c32a86383ac1e9200c7733c3c8be2ef4d18fa25 Mon Sep 17 00:00:00 2001 From: Eddy Pedroni Date: Sun, 22 May 2022 15:53:20 +0200 Subject: Added specifications document, first revision --- specifications.md | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 specifications.md diff --git a/specifications.md b/specifications.md new file mode 100644 index 0000000..6919894 --- /dev/null +++ b/specifications.md @@ -0,0 +1,44 @@ +# Use Cases + +## Presets + +Useful presets are stored persistently (JSON or YAML) and recalled with a single command. Preset configuration is applied to both function generator and oscilloscope. The intention is to quickly restore a state that can then be used for manual tests. + +## Screen capture + +Capture screen, dump to PNG. File name can be parameterised including special codes for date, time and incrementing counter. + +## Frequency response measurement + +With a single command, a frequency response sweep is performed. + +Parameters: +* Frequency range (from, to in Hz) +* Measurement steps + * Linear or logarithmic? +* Signal generator channel +* Oscilloscope channel(s) + +Data is stored in an array of tuples (freq, [measurements]). + +Output options: +* CSV +* SVG plot? +* PNG plot? +* HTML report containing test parameters, data, plot, etc + +## Repeated measurement mode + +1. User specifies a set of actions to be taken on each round + * Record measurement on a specific channel + * Screen capture + * Frequency response sweep +2. System goes to measurement mode: whenever a specific key (enter) is pressed, all actions are taken + * System provides feedback when ready to accept new input +3. User exits measurement mode by pressing a special key (q) +4. Optionally, acquired data is handled. Options: + * Save to CSV + * Print to console + * Pass as argument to user callback + + -- cgit v1.2.3