hephy-dd / comet-pqc Goto Github PK
View Code? Open in Web Editor NEWProcess Quality Control for CMS outer tracker
Home Page: https://hephy-dd.github.io/comet-pqc/
License: GNU General Public License v3.0
Process Quality Control for CMS outer tracker
Home Page: https://hephy-dd.github.io/comet-pqc/
License: GNU General Public License v3.0
Rotate X/Y table controls 90 degree to the left as probe card camera image is rotated.
Default hvsrc_route_termination
should be rear
according to documentation but is front
at default.
Restore main window size to cope with usage on HiDPI screens (window is very small and needs to be resized by user).
Define application states and transitions.
Use analysis functions to calculate fits and display as additional series in measurement plot.
Switch off any enabled light source before starting a measurement.
Extend file writer to assign optional units for CSV column names, eg.
timestamp[s],voltage[V],current[A]
Contact and measurement names are often to verbose (can include special characters) for use in data filenames. Add configuration key id
for contacts and measurements to be used for filenames (if available), else a mangled version of the name is used as fallback.
Proposal:
measurements:
- id: rev_nplus_VdP_cross
name: Reverse N+ Van-der-Pauw cross (V Source)
...
Add configuration parameters to configure units for X and Y axis of measurement plots, as range of displayed series depends on type of test structure, eg.
parameters:
plot_axis_x_unit: V
plot_axis_y_unit: nA
Handle exceptions from YAML configuration parser, show an error message box with details.
Environment box service/thread.
:INIT
*OPC
before initiate, then polling for *ESR
bit 0Use external analysis python module to generate a HTML analysis page for every measurement, eg.
HPK_VPX33234_024_..._GCD_2020-08-12T11-16-27.txt
HPK_VPX33234_024_..._GCD_2020-08-12T11-16-27.html
Switch LCR open correction mode single/multi and select correction channel for multi mode, eg.
parameters:
lcr_open_correction_mode: multi
lcr_open_correction_channel: 42
Fixed width of instrument status panel interferes with scaling on HiDPI monitors.
Add emulator for environment box.
Add operator selection in dashboard and write selected operator name to result files.
Base class handling a single measurement:
* execute always in case of an error
Individual measurements inherit this base class.
class IVRamp(Measurement):
...
Add camera controls:
Set K2657 display to voltage for 4-wire measurements.
Unify enable
and enabled
in parameter keys, renaming
matrix_enabled
to matrix_enable
to prevent confusion.
Reset sequence tree checked states (tick boxes) and state information when changing the sample name.
Maximum Z movement limit of table should be configurable.
When executing a sequence, keep previous measurement states to be able to track all measurements already measures at least once.
Electrometer out of range errors are currently not handled. If an out of range error occurs after :READ?
, the measurement should be aborted.
When moving to manual controls via the 'Control' dialog immediately after using the 'Move to' dialog, the 'Control dialog' closes with 'Error: 1004 '. After reopening the 'Control' dialog, all works fine.
Version: 0.21.1
There might be the need to acquire additional capacitance correction values for every test structure. A capacitance correction measurement could be used to determine the required correction then used by other measurements of the same structure/contact/flute.
To be discussed.
Add list of named sectors described in polygons to the chuck configuration to be used in probe card mode. The table position can be used to determine all the sectors that overlap with the center of the probe card camera view. This information can be used as additional position information in table control dialogs and to be appended to measurement data headers and filenames.
Distinguish following measurement states in case of an exception (replacing state Failed
):
Timeout
(device communication timeout)Compliance
(voltage/current compliance tripped)Error
(any other exception, eg. RuntimeError
, ValueError
)Replace contact states Failed
by Error
.
Comment will be written to all measurement data headers.
In some cases readings with electrometer can require a long time, sometimes more than 30 seconds.
The current :READ?
query could be split up into writing :INIT
, polling for *OPC?
, finally reading the result using FET?
. Add an additional timeout parameter to the measurement parameters (elm_read_timeout
, default 60.0 seconds).
Independent of single measurements or sequence execution, all resulting measurement data files should be stored inside a directory representing the silicon sample identification (name and type), eg.
/home/user/work/
HPK_VPX12345_042_PSS_HM-WW/
HPK_VPX12345_043_PSS_HM-WW/
...
Output
should be renamed into Working Directory
in the user interface.
Add documentation for available measurements and parameters to be used in sequence configuration files.
Generate JSON formatted measurement data for easy loading in analysis tool chain.
Format of keys to be specified.
Providing a Start/Stop mechanism to execute selected measurements for selected wafers/slots. Starting a measurement sequence should create a results directory (eg. pqc-2020-01-31T08-24-01
) which holds results from individual measurements as well as a snapshot of the used configuration for documentation purpose.
Create a github-pages documentation, adding details on configuration file formats.
In addition to the estimated measurement time, show also average step time (in main window status message).
Save a PNG image of the measurement plot alongside the measurement data file for a quick inspection of results.
HPK_VPX33234_024_..._GCD_2020-08-12T11-16-27.txt
HPK_VPX33234_024_..._GCD_2020-08-12T11-16-27.png
Resize table control and move dialogs for HiDPI screens.
To improve archiving all generated measurement data files should use following schema (see also #36):
<sample_name>/<sample_name>_<connection_id>_<measurement_id><timestamp_iso>.txt
Accelerate voltage/current ramps for initialize and finish or error to reduce total measurement time.
Set TEST_LED
of environment box when executing one or more measurements. The LED provides visual feedback for operators that a measurement is currently ongoing.
Create UI skeleton providing:
Create YAML configurations files, schema files for validation and configuration loader functions and classes for:
Edit: updated naming scheme.
Migrate to comet version 0.11.0
Laser should be switched on/off by operator for the time being.
Provide persistent user defined table positions.
Add PID controls:
Mode select and setpoint are locked if PID control switched on.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.