herosdevices.hardware.bristol.wlm ================================= .. py:module:: herosdevices.hardware.bristol.wlm .. autoapi-nested-parse:: Includes classes for controlling Bristol Instruments wavemeters. Module Contents --------------- .. py:data:: DEFAULT_OBSERVABLES .. py:class:: WLM871(address: str, *args, **kwargs) Bases: :py:obj:`herosdevices.core.templates.TelnetDeviceTemplate` Controller for the Bristol Instruments 871A Laser Wavelength Meter with **network** interface. .. py:attribute:: wavelength .. py:attribute:: frequency .. py:attribute:: wavenumber .. py:attribute:: power .. py:attribute:: temperature .. py:attribute:: pressure .. py:attribute:: light_type .. py:attribute:: auto_exposure .. py:attribute:: observables :type: dict .. py:method:: set_averaging(state: Literal['ON', 'OFF'] | bool, count: int | None = None) -> None Set averaging state and optionally count. :param state: Averaging state ('ON', 'OFF', or boolean) :param count: Number of readings to average (2-128), if None, current set value is not changes .. py:method:: get_averaging() -> dict[str, Any] Get current averaging settings. :returns: Dictionary with 'state' (str) and 'count' (int) .. py:method:: get_averaged_data(data_type: Literal['POW', 'FREQ', 'WAV', 'WNUM'] = 'WAV') -> float Get averaged data for the specified type. :param data_type: Type of data to get ('POW', 'FREQ', 'WAV', 'WNUM') :returns: Averaged value as float .. py:method:: calibrate() -> None Initiate instrument calibration. .. py:method:: get_calibration_settings() -> dict[str, Any] Get all calibration settings. :returns: Dictionary with calibration method, temperature, and timer settings .. py:method:: set_calibration_settings(method: Literal['OFF', 'TIME', 'TEMP'] | None = None, temperature_change: int | None = None, timer_minutes: int | None = None) -> None Set calibration settings at once. Settings not specified or None are not changed. :param method: Calibration method ('OFF', 'TIME', 'TEMP') :param temperature_change: Temperature change in 1/10th °C (1-50) :param timer_minutes: Time between calibrations in minutes (5-1440) .. py:method:: memory_clear() -> None Clear all measurements in the memory buffer. .. py:method:: memory_start_record() -> None Start writing measured data to the memory buffer. .. py:method:: memory_stop_record() -> None Stop writing measured data to the memory buffer. .. py:method:: memory_get_data() -> numpy.ndarray Get buffered data from memory. :returns: Buffered data as numpy array (format defined in manual) .. py:method:: get_identity() -> str Get instrument identification. :returns: Instrument identification string .. py:method:: get_error() -> tuple[int, str] Get error from error queue. :returns: Tuple of (error_number, error_message) .. py:method:: save_settings() -> None Save current instrument settings. .. py:method:: recall_settings() -> None Recall saved instrument settings. .. py:method:: reset_instrument() -> None Reset instrument to default state. .. py:attribute:: address .. py:attribute:: connection .. py:attribute:: write .. py:attribute:: read