Skip to content

Latest commit

 

History

History
260 lines (253 loc) · 19.7 KB

other_device_functions.md

File metadata and controls

260 lines (253 loc) · 19.7 KB

List of available functions for other devices

Available devices:

  • CPWplus 150 Balance (RS-232); Tested 01/2021
  • RODOS-10N Solid-State Relay (Ethernet); Tested 01/2021
  • Owen-MK110-220.4DN.4R (RS-485) Discrete IO Module; Tested 04/2021
  • Cryomagnetics LM-510 Liquid Cryogen Monitor (TCP/IP Socket); Tested 07/2022
  • Cryomech CPA2896, CPA1110 Digital Panels (RS-485); Tested 07/2022

Functions:

Balance

balance_weight()

balance_weight()
Arguments: none; Output: float.
Example: balance_weight() returns the current weight of the balances.

This function returns the current weight of the balances and should be called with no argument.

Other

Rodos-10N Solid-State Relay (Ethernet)

relay_turn_on(number)

relay_turn_on(number)
Arguments: number = integer; Output: none.
Example: relay_turn_on(1) turns on the first channel of solid-state relay.

This function turns on the specified channel of the solid-state relay and should be called with one argument. Channel should be specified as integer in the range of 1 to 4.

relay_turn_off(number)

relay_turn_off(number)
Arguments: number = integer; Output: none.
Example: relay_turn_off(2) turns off the second channel of solid-state relay.

This function turns off the specified channel of the solid-state relay and should be called with one argument. Channel should be specified as integer in the range of 1 to 4.

Owen-MK110-220.4DN.4R Discrete Input-Output Module (RS-485)

discrete_io_input_counter(channel)

discrete_io_input_counter(channel)
Arguments: channel = ['1','2','3','4']; Output: integer.
Example: discrete_io_input_counter('1') returns the counter value of the first input.

This function returns the counter value of the specified input channel of the discrete IO module. The function requires one argument that should be one of the following: [1','2','3','4'].

discrete_io_input_counter_reset(channel)

discrete_io_input_counter_reset(channel)
Arguments: channel = ['1','2','3','4']; Output: none.
Example: discrete_io_input_counter_reset('1') resets the counter value of the first input.

This function resets the counter of the specified input channel. The function requires one argument that should be one of the following: [1','2','3','4'].

discrete_io_input_state()

discrete_io_input_state()
Arguments: none; Output: string ('1234' etc).
Example: discrete_io_input_state() returns the input states of the IO module in the format '1234'
that means inputs 1-4 are on.

This function returns the input channel states of the discrete IO module and should be called without argument. The output is in the form ['0','1','2',...'12',...'1234']. The meaning is the following: '0' - all inputs are off, '12' - inputs 1 and 2 are on, and so on.

discrete_io_output_state(*state)

discrete_io_output_state(*state)
Arguments: state = string ('1234' etc) or none; Output: none or string ('1234' etc).
Example: discrete_io_output_state('0') turns off all the outputs of the IO module. 

This function set or queries the output channel states of the discrete IO module. If an argument is specified the function sets specified state of the output channels. If there is no argument the function returns the current state of the output channels. The argument should be in the form ['0','1','2',...'12',...'1234']. The meaning is the following: '0' - all outputs are off, '12' - outputs 1 and 2 are on, and so on. The output format is the same as the described argument.

Cryomagnetics LM-510 Liquid Cryogen Monitor (TCP/IP Socket)

cryogenic_refrigerator_name()

cryogenic_refrigerator_name()
Arguments: none; Output: string.

The function returns device name.

cryogenic_refrigerator_state(*state)

cryogenic_refrigerator_state(*state)
Arguments: state = ['On','Off'] or none; Output: string or none.
Example: cryogenic_refrigerator_state('On') turns on the compressor.

The function for querying or setting the state of the cryogenic refrigerator. If there is no argument the function will return the current state. If called with an argument the specified state will be set. The return value is one of the following: ['Idling','Starting','Running','Stopping','Error Lockout','Error','Helium Cool Down','Power related Error','Recovered from Error']. The available states to set are ['On','Off'].

cryogenic_refrigerator_status_data()

cryogenic_refrigerator_status_data()
Arguments: none; Output: array.
Example: cryogenic_refrigerator_status_data() reads all the status data from the compressor.

This function queries the status data of the cryogenic refrigerator. The returned array is as follows:
array[0] = Coolant Tempeparure In
array[1] = Coolant Tempeparure Out
array[2] = Oil Tempeparure
array[3] = Helium Tempeparure
array[4] = Low Pressure
array[5] = Low Pressure Averaged
array[6] = High Pressure
array[7] = High Pressure Averaged
array[8] = Delta Pressure Averaged
array[9] = Motor Current (A)
array[10] = Operation Hours (H/1000)
The dimensions for the pressure and temperature data can be checked using cryogenic_refrigerator_pressure_scale() and [cryogenic_refrigerator_temperature_scale()] (#cryogenic_refrigerator_temperature_scale) functions, respectively. Note that Cryomech uses the so-called Little endian (Intel) byte order.

cryogenic_refrigerator_warning_data()

cryogenic_refrigerator_warning_data()
Arguments: none; Output: array.
Example: cryogenic_refrigerator_warning_data() reads all the warning and alarm data from the compressor.

This function queries the warning and alarm data of the cryogenic refrigerator. The returned array is as follows:
array[0] = Warning State
array[1] = Alarm State
Available warning states are ['No warnings','Coolant IN running High','Coolant IN running Low','Coolant OUT running High','Coolant OUT running Low','Oil running High','Oil running Low','Helium running High','Helium running Low','Low Pressure running High','Low Pressure running Low','High Pressure running High','High Pressure running Low','Delta Pressure running High','Delta Pressure running Low','Static Presure running High','Static Presure running Low','Cold head motor Stall']. Available error states are ['No Errors','Coolant IN High','Coolant IN Low','Coolant OUT High','Coolant OUT Low','Oil High','Oil Low','Helium High','Helium Low','Low Pressure High','Low Pressure Low','High Pressure High','High Pressure Low','Delta Pressure High','Delta Pressure Low','Motor Current Low','Three Phase Error','Power Supply Error','Static Presure High','Static Presure Low'].

cryogenic_refrigerator_pressure_scale()

cryogenic_refrigerator_pressure_scale()
Arguments: none; Output: string.
Example: cryogenic_refrigerator_pressure_scale() reads the currently used pressure scale.

This function queries the current pressure scale. The returned value is one of the following: ['PSI','Bar','KPA']. The scale cannot be changed via remote interface.

cryogenic_refrigerator_temperature_scale()

cryogenic_refrigerator_temperature_scale()
Arguments: none; Output: string.
Example: cryogenic_refrigerator_temperature_scale() reads the currently used temperature scale.

This function queries the current temperature scale. The returned value is one of the following: ['Fahrenheit','Celsius','Kelvin']. The scale cannot be changed via remote interface.

Cryomech CPA2896, CPA1110 Digital Panels (RS-485)

level_monitor_name()

level_monitor_name()
Arguments: none; Output: string.

The function returns device name.

level_monitor_select_channel(*channel)

level_monitor_select_channel(*channel)
Arguments: channel = ['1','2'] or none; Output: string.
Example: level_monitor_select_channel('1') sets the default channel for future computer commands to 1.

The function for querying or setting the default channel for future computer commands. If there is no argument the function will return the current default channel. If called with an argument the specified default channel will be set.

level_monitor_boost_mode(*mode)

level_monitor_boost_mode(*mode)
Arguments: mode = ['On','Off','Smart'] or none; Output: string.
Example: level_monitor_boost_mode('Smart') sets the boost mode to 'Smart'.

The function for querying or setting the operating mode for the boost portion of a sensor read cycle for the selected channel. If there is no argument the function will return the boost mode. If called with an argument the specified boost mode will be set. The available modes are ['On','Off','Smart']. Boost 'Off' will eliminate the boost portion of the read cycle, boost 'On' enables the boost portion on every read cycle, and boost 'Smart' enables a boost cycle if no readings have been taken in the previous 5 minutes. Note, that this function is not available on the second channel if it is used as HRC (Helium Recondenser Controller) channel. This setting should be specified in the configuration file in the field: hrc_second_channel.

level_monitor_high_level_alarm(*level)

level_monitor_high_level_alarm(*level)
Arguments: level = string or none; Output: string; '68 cm'.
Example: level_monitor_high_level_alarm('99.0') sets the high level alarm to 99.0 in the present units.

The function for querying or setting the threshold for the high alarm in the present units for the selected channel. If the liquid level rises above the threshold the alarm will be activated. The alarm will be disabled if the threshold is set to 100.0. This function is not available on the second channel if it is used as HRC (Helium Recondenser Controller) channel. This setting should be specified in the configuration file in the field: hrc_second_channel.

level_monitor_low_level_alarm(*level)

level_monitor_low_level_alarm(*level)
Arguments: level = string or none; Output: string; '0 cm'.
Example: level_monitor_low_level_alarm() queries the low level alarm.

The function for querying or setting the threshold for the low alarm in the present units for the selected channel. If the liquid level rises above the threshold the alarm will be activated. The alarm will be disabled if the threshold is set to 0.0. This function is not available on the second channel if it is used as HRC (Helium Recondenser Controller) channel. This setting should be specified in the configuration file in the field: hrc_second_channel.

level_monitor_sensor_length()

level_monitor_sensor_length()
Arguments: none; Output: string; '68 cm'.
Example: level_monitor_sensor_length() queries the sensor length.

This function returns the active sensor length in the present units for the selected channel. The length is returned in centimeters if percent is the present unit selection. This function is not available on the second channel if it is used as HRC (Helium Recondenser Controller) channel. This setting should be specified in the configuration file in the field: hrc_second_channel.

level_monitor_sample_mode(*mode)

level_monitor_sample_mode(*mode)
Arguments: mode = ['Sample/Hold','Continuous','Off'] or none; Output: string.
Example: level_monitor_sample_mode('Continuous') sets the continuous sampling.

The function for querying or setting the sample mode for the selected channel. If there is no argument the function will return the sample mode. If called with an argument the specified sample mode will be set. The available modes are ['Sample/Hold','Continuous','Off']. In the 'Sample/Hold' mode the measurements are taken when a measure command is sent via the computer interface or when the delay between samples set by the level_monitor_sample_interval() function command expires. The interval timer is reset on each measurement, regardless of source of the measurement request. In 'Continuous' mode measurements are taken as frequently as possible. This function is not available on the second channel if it is used as HRC (Helium Recondenser Controller) channel. This setting should be specified in the configuration file in the field: hrc_second_channel.

level_monitor_units(*units)

level_monitor_units(*units)
Arguments: units = ['cm','in','%'] or none; Output: string.
Example: level_monitor_units('cm') sets the units to centimeters.

The function for querying or setting the units to be used for all input and display operations for the selected channel. If there is no argument the function will return the present units. If called with an argument the specified units will be set. The available units are ['cm','in','%']. This function is not available on the second channel if it is used as HRC (Helium Recondenser Controller) channel. This setting should be specified in the configuration file in the field: hrc_second_channel.

level_monitor_measure(channel)

level_monitor_measure(channel)
Arguments: channel = ['1','2']; Output: string; '44.4 cm'
Example: level_monitor_measure('2') measures the data from the second channel.

The function starts a measurement on the selected channel and queries the result in the present units. This function return two values (pressure in psi and heater power in watts) if the second channel is used as HRC (Helium Recondenser Controller).

level_monitor_sample_interval(*interval)

level_monitor_sample_interval(*interval)
Arguments: interval = three arguments: 'hours', 'minutes', 'seconds' or none; Output: string; '0:10:0'.
Example: level_monitor_sample_interval('0', '5', '0') sets the time between samples to 5 minutes.

The function for querying or setting the time between samples for the selected channel. If there is no argument the function will return the present time between samples in the HH:MM:SS format. If called with three arguments the specified interval will be set. The three arguments corresponds to hours (0-99), minutes (0-59), and seconds (0-59). This function is not available on the second channel if it is used as HRC (Helium Recondenser Controller) channel. This setting should be specified in the configuration file in the field: hrc_second_channel.

level_monitor_hrc_target_pressure(*pressure)

level_monitor_hrc_target_pressure(*pressure)
Arguments: pressure = string or none; Output: string; '0.5 PSI'.
Example: level_monitor_hrc_target_pressure('1.0') sets the target_pressure to 1.0 psi.

The function for querying or setting the target operating pressure for the HRC (Helium Recondenser Controller) channel. If there is no argument the function will return the present target pressure in psi. If called with one argument the specified pressure will be set. The target pressure should be between 0.15 and 14.25 psi. This function is only available for HRC (Helium Recondenser Controller) channel. This setting should be specified in the configuration file in the field: hrc_second_channel.

level_monitor_hrc_heater_power_limit(*limit)

level_monitor_hrc_heater_power_limit(*limit)
Arguments: limit = string or none; Output: string; '6 Watts'.
Example: level_monitor_hrc_heater_power_limit('4.0') sets the heater power limit to 4.0 watts.

The function for querying or setting the heater power limit for the HRC (Helium Recondenser Controller) channel. If there is no argument the function will return the present heater power limit in watts. If called with one argument the specified power limit will be set. The heater power limit should be between 0.1 and 10 watts. Note, that this function is only available for HRC (Helium Recondenser Controller) channel. This setting should be specified in the configuration file in the field: hrc_second_channel.

level_monitor_hrc_heater_enable(*state)

level_monitor_hrc_heater_enable(*state)
Arguments: state = ['On','Off'] or none; Output: string.
Example: level_monitor_hrc_heater_enable('On') turns on the HRC heater.

The function for querying or setting the state of the HRC (Helium Recondenser Controller) channel heater. If there is no argument the function will return the present state. If called with one argument the specified state will be set. The available states are ['On','Off']. Note, that if the heater is turned off due to the system being above the target operating pressure when the heater is enabled, 'On' will still be returned. This function is only available for HRC (Helium Recondenser Controller) channel. This setting should be specified in the configuration file in the field: hrc_second_channel.

level_monitor_command(command)

level_monitor_command(command)
Arguments: command = string; Output: none.
Example: level_monitor_command('LOW 45.0'). This example sets low threshold for Control functions 
(automated refill activation).

The function for sending an arbitrary command from a programming guide to the device in a string format. No output is expected.

level_monitor_query(command)

level_monitor_query(command)
Arguments: command = string; Output: string.
Example: level_monitor_query('CTRL?'). This example queries the status of the Control Relay (i.e., refill status).

The function for sending an arbitrary command from a programming guide to the device in a string format. An output in a string format is expected.