MSC immunity and emission data¶
This page documents the concrete persisted paths of MSC workflows. See Immunity results and EUT assessment for the shared semantics of structured EUT events and criteria A, B, and C.
MSC immunity raw data¶
Access starts with:
raw = history.rawData_Immunity[description]
pref contains corrected reference-antenna power, efield optional field
probe values, and noise the noise measurement. eutstatus uses the same
index. Its entries add testfield and optionally eut_event and
monitor_diagnostics. value remains the legacy-compatible EUT status,
while eut_event is the structured observation.
Further top-level keys are performance_criterion, eut_event_policy,
and post_exposure_timeout. mg is the persisted measurement-graph
description, not an open device connection.
When the threshold kernel is used, threshold_search[frequency] contains
its structured frequency result. Keys such as status, tested field levels,
the identified threshold, and the related eut_event are kernel-specific
and additive. Applications evaluating only standard exposures may ignore this
field.
MSC immunity evaluation¶
Evaluate_Immunity writes to
processedData_Immunity[description]:
Key |
Meaning |
|---|---|
|
Maximum and average received power at
|
|
Relative EUT loading against the maximum considered chamber loading, by frequency. |
|
List of threshold indications by frequency. |
|
Applied criterion |
|
Assessment keyed by
|
|
Summary by frequency. |
|
Summary for the entire dataset. |
Each EUTImmunityThreshold[frequency] entry has TestField,
Field from Pfwd, and EUT. The first two are field-strength quantities.
When no impairment was detected, EUT == "Maximum testfield reached" only
indicates that the highest tested level was reached; it is not a numerically
identified failure threshold.
MSC emission raw data¶
Access starts with:
raw = history.rawData_Emission[description]
pref contains corrected received power using the shared index. noise
uses the same path but is normally measured at only one tuner position. Both
entry types contain value, pfwd, and pbwd; the two power keys are
normally None for receiver acquisition. mg holds the measurement-graph
description.
MSC emission evaluation¶
Evaluate_Emission writes to processedData_Emission[description]. All
domain result fields are indexed by frequency and, where applicable, antenna
position:
PMaxRec,PAveRecMaximum and average received power.
PRad_from_CCF,PRad_from_CLFRadiated power derived from the average chamber calibration factor and the loading/insertion-loss approach, respectively.
ERad_from_CCF,ERad_from_CLFField strength derived at the assumed evaluation location.
PRad_noise,ERad_noiseNoise-related power and field floor, indexed only by frequency.
RelLoadingRelative EUT loading by frequency.
Evaluation assumptions are stored in Gmax_Model ("FAR" or
"OATS"), Assumed_hg, and Assumed_RH. The historical keys
Asumed_Distance and Asumed_Directivity[frequency] contain distance and
directivity. Their single-s spelling is an established data contract and
must not be corrected silently.
Emission results can only be interpreted with the main, loading, and EUT calibrations used. Their names are currently not stored in a dedicated provenance block of the processed dataset and must therefore accompany an external export.
Optional RC routing and RX capture provenance¶
All five MSC measurement methods accept optional graph_context. For example,
{"tmode": "AMP", "rmode": "PMATT"} selects amplified TX and the RX powermeter;
RECATT selects the receiver in an emission measurement. Explicit routing
requires a context-capable switch and currently supports one RX device/antenna
pair. An autocorrelation run without an RX readout may still select the routing.
Existing frequency-only configurations may omit the parameter.
Each independent capture starts with the additional 20 dB RX attenuator. A valid
positive device-input power at least 40 dB below MAXIN permits an unattenuated
follow-up at unchanged frequency, generator level and tuner position. Equality
is included (with floating-point roundoff tolerance). The calibrated difference
between both paths is checked without moving the switch before physically
bypassing attenuation; this also protects against a continuously emitting EUT. Missing
MAXIN keeps the attenuator; invalid readings or exceeded limits abort with RF
off. The full selected device group is reacquired, so forward/reflected powers
and probe samples belong to the final capture, not its screening read.
Switching uses ApplyContext and therefore switches generator RF off. Settling
waits after switching are at least 0.5 s, or the measurement delay if longer.
Protection is restored before returning from each capture, before later level,
frequency or tuner changes. Capture failures and interrupts leave RF off;
external state mismatches are not silently reapplied. These waits and RF gaps
are equipment-response time, not EUT dwell time. Existing immunity kernels
perform their dwell after capture; EUT monitoring and manual intervention remain
active. The 40 dB rule is a laboratory policy, not an IEC acceptance criterion.
Reference: the maintained IEC 61000-4-21 draft, clause 7, D.3.2.1 and D.4
(equipment response, dwell and power recording), and E.4 (receiver observation).
New noise, pref and efield sample bundles may contain optional
rx_capture metadata in addition to unchanged value, pfwd, pbwd
and acquisition fields. This also applies to calibration and autocorrelation
bundles when an RX device was captured. Older bundles omit the field. It records
the selected final capture, even though the operational graph has already
returned to its attenuated state:
Key |
Meaning |
|---|---|
|
Integer 1. |
|
Frequency in Hz and actual logical TX/RX modes of the stored capture. |
|
Physical RX device node and antenna-feed graph node. |
|
Nominal additional attenuation, 20 or 0; not the full calibrated loss. |
|
Attenuated screening power at the device input, a Quantity in watts. |
|
Device-input limit as a Quantity in watts, or None when unavailable. |
|
Final device-input power as a Quantity in watts, before path correction. |
|
Actual dimensionless power transmission (POWERRATIO) used to divide input power to obtain antenna-feed power; no second nominal 20 dB factor. |
|
Integer 40, the required screening distance below MAXIN. |
|
Port resistance used for voltage-to-power conversion, default 50 ohms. |
|
|
measurement_acquisitions[*].run_configuration.graph_context stores the
requested routing dictionary (empty for legacy frequency-only operation).
rx_impedance_ohm is an optional graph_context setting for voltage readings:
power is RMS voltage squared divided by this positive resistance. It is the
instrument port resistance, not a chamber or free-space wave impedance.
The configuration snapshot still records exact DOT/INI/calibration sources.
No existing index hierarchy, correction formula or processed-result key changes.
Receiver MAXIN uses a named extra INI channel with NAME = MAXIN,
FILE and INTERPOLATION, like powermeter safety limits. Values should be
power quantities (e.g. a data file with UNIT: dBm); the limit is read through
GetSafetyLimit("MAXIN") rather than a measurement-data query. RX scalar
capture requires a receiver driver such as rec_rs_esu.py. The spectrum trace
driver sa_rs_esu.py does not implement this interface and is rejected before
hardware initialization when explicit routing is requested.
Existing transmitting MSC workflows (main/EUT calibration, autocorrelation,
immunity) still require amplifier and forward/reflected-power paths and accept
only tmode=AMP here. DIRECT and termination modes remain available
through MGraph for dedicated path/amplifier tests. Unconnected power meters
are therefore not treated as valid forward-power readings. Emission runs may
terminate TX.