from .....Internal.Core import Core
from .....Internal.CommandsGroup import CommandsGroup
from .....Internal import Conversions
from ..... import enums
from ..... import repcap
# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class SelectionCls:
"""
| Commands in total: 1
| Subgroups: 0
| Direct child commands: 1
"""
def __init__(self, core: Core, parent):
self._core = core
self._cmd_group = CommandsGroup("selection", core, parent)
[docs]
def set(self, limits_standard: enums.EmcLimitsStandard, measurement=repcap.Measurement.Default) -> None:
"""
``MEASurement<*>:EMC:LIMit:SELection`` \n
Snippet: ``driver.measurement.emc.limit.selection.set(limits_standard = enums.EmcLimitsStandard.AD1, measurement = repcap.Measurement.Default)`` \n
Selects the electrostatic discharge (ESD) immunity test levels according to the guidelines of the EN IEC 61000-4-2:2025
standard.
For contact discharge (CD) and air discharge (AD) , it specifies the maximum voltage (kV) . \n
- CD1: Contact discharge, 2 kV.
- CD2: Contact discharge, 4 kV.
- CD3: Contact discharge, 6 kV.
- CD4: Contact discharge, 8 kV.
- AD1: Air discharge, 2 kV.
- AD2: Air discharge, 4 kV.
- AD3: Air discharge, 8 kV.
- AD4: Air discharge, 15 kV.
:param limits_standard: CD1 | CD2 | CD3 | CD4 | AD1 | AD2 | AD3 | AD4
:param measurement: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Measurement')
"""
param = Conversions.enum_scalar_to_str(limits_standard, enums.EmcLimitsStandard)
measurement_cmd_val = self._cmd_group.get_repcap_cmd_value(measurement, repcap.Measurement)
self._core.io.write_with_opc(f'MEASurement{measurement_cmd_val}:EMC:LIMit:SELection {param}')
# noinspection PyTypeChecker
[docs]
def get(self, measurement=repcap.Measurement.Default) -> enums.EmcLimitsStandard:
"""
``MEASurement<*>:EMC:LIMit:SELection`` \n
Snippet: ``value: enums.EmcLimitsStandard = driver.measurement.emc.limit.selection.get(measurement = repcap.Measurement.Default)`` \n
Selects the electrostatic discharge (ESD) immunity test levels according to the guidelines of the EN IEC 61000-4-2:2025
standard.
For contact discharge (CD) and air discharge (AD) , it specifies the maximum voltage (kV) . \n
- CD1: Contact discharge, 2 kV.
- CD2: Contact discharge, 4 kV.
- CD3: Contact discharge, 6 kV.
- CD4: Contact discharge, 8 kV.
- AD1: Air discharge, 2 kV.
- AD2: Air discharge, 4 kV.
- AD3: Air discharge, 8 kV.
- AD4: Air discharge, 15 kV.
:param measurement: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Measurement')
:return: limits_standard: CD1 | CD2 | CD3 | CD4 | AD1 | AD2 | AD3 | AD4
"""
measurement_cmd_val = self._cmd_group.get_repcap_cmd_value(measurement, repcap.Measurement)
response = self._core.io.query_str_with_opc(f'MEASurement{measurement_cmd_val}:EMC:LIMit:SELection?')
return Conversions.str_to_scalar_enum(response, enums.EmcLimitsStandard)