msl.equipment.resources.electron_dynamics.tc_series module

Establishes a connection to a TC Series Temperature Controller from Electron Dynamics Ltd.

class msl.equipment.resources.electron_dynamics.tc_series.TCSeries(record)[source]

Bases: ConnectionSerial

Establishes a connection to a TC Series Temperature Controller from Electron Dynamics Ltd.

Do not instantiate this class directly. Use the connect() method to connect to the equipment.

Parameters:

record (EquipmentRecord) – A record from an Equipment-Register Database.

get_alarm()[source]

Get the alarm parameters.

Returns:

list – The alarm parameters. See set_alarm() for more details.

get_control()[source]

Get the control parameters.

Returns:

list – The control parameters. See set_control() for more details.

get_output()[source]

Get the output parameters.

Returns:

list – The output parameters. See set_output() for more details.

get_sensor()[source]

Get the sensor parameters.

Returns:

list – The sensor parameters. See set_sensor() for more details.

get_setpoint()[source]

Get the setpoint parameters.

Returns:

list – The setpoint parameters. See set_setpoint() for more details.

get_status()[source]

Get the status.

Returns:

list – The status parameters.

set_alarm(alarm_type, minimum, maximum, ok_min, ok_max, limit_min, limit_max)[source]

Set the alarm parameters.

This corresponds to the c command in the Commands manual.

Parameters:
  • alarm_type (int) –

    The alarm type. One of:

    • 0: None

    • 1: Minimum

    • 2: Maximum

    • 3: Both

  • minimum (float) – Sets the temperature below which the alarm is activated.

  • maximum (float) – Sets the temperature above which the alarm is activated.

  • ok_min (float) – Sets the lower temperature difference point from the setpoint for temperature OK.

  • ok_max (float) – Sets the higher temperature difference point from the setpoint for temperature OK.

  • limit_min (float) – Sets the temperature minimum, below which the drive output is disabled.

  • limit_max (float) – Sets the temperature maximum, above which the drive output is disabled.

set_control(control_type, p, i, d, d_filter, dead_band, power_up_state)[source]

Set the control type and the control parameters.

This corresponds to the a command in the Commands manual.

Parameters:
  • control_type (int) –

    The control type. One of:

    • 0: None

    • 1: On/Off - Output drive is only fully On (heating or cooling) or Off

    • 2: Proportional (P)

    • 3: Proportional and Integral (PI)

    • 4: Proportional, Integral and Derivative (PID)

  • p (float) – The proportional (gain) value. With proportional action, the controller output is proportional to the temperature error from the setpoint. The proportional terms sets the gain for this where: Output = (setpoint-actual temperature ) * proportional term

  • i (float) – The integral value. With integral action, the controller output is proportional to the amount of time the error is present. Integral action eliminates offset. The integral term is a time unit in seconds. NB for larger effects of integration reduce the integral time, also for operation without integral, integral time can be set to a large number e.g. 1e6.

  • d (float) – The derivative value. With derivative action, the controller output is proportional to the rate of change of the measurement or error. The controller output is calculated by the rate of change of the measurement with time, in seconds. To increase the derivative action increase the derivative value. See also Derivative Filter (d_filter).

  • d_filter (float) – The derivative filter is a low pass filter function on the derivative value. This allows the filtration of noise components which are a problem with a pure derivative function. The filter value should be set to be between 0 and 1.

  • dead_band (float) –

    For use with On/Off control the dead band specifies the temperature range around the set point where the output is zero. For example:

    • Temperature > setpoint + dead_band (Fully Cooling)

    • Temperature < setpoint - dead_band (Fully Heating)

    • Temperature < setpoint + dead_band AND > setpoint-dead_band (Output off)

  • power_up_state (int) –

    This sets the temperature control state from power up. One of:

    • 0: Off

    • 1: On

    • 2: Same as the last setting prior to power off

set_output(polarity, minimum, maximum, frequency)[source]

Set the output parameters.

This corresponds to the g command in the Commands manual.

Parameters:
  • polarity (int) –

    Sets the polarity of the output drive. One of:

    • 0: Negative

    • 1: Positive

  • minimum (float) – Sets the minimum value limit of the output. Range -100 to +100.

  • maximum (float) – Sets the maximum value limit of the output. Range -100 to +100.

  • frequency (float) – Sets the pulse-width modulation repetition frequency of the output drive. Range 20 to 1000 Hz.

set_output_drive(mode, value)[source]

Set the output drive state and value.

This corresponds to the m command in the Commands manual.

Parameters:
  • mode (int) – The drive mode. Either 0 (Off) or 1 (On).

  • value (int) – Percent output.

set_sensor(sensor, x2, x, c, unit, averaging, rl=22000)[source]

Set the sensor type and the sensor parameters.

This corresponds to the e command in the Commands manual.

Parameters:
  • sensor (int) –

    The sensor type. One of:

    • 0: Voltage

    • 1: PT100

    • 2: LM35

    • 3: LM50

    • 4: LM60

    • 5: LM61

    • 6: NTC Thermistor

    • 7: RES

    • 8: PT1000

    • 9: RTD

  • x2 (float) –

  • x (float) –

  • c (float) –

    The x2, x and c parameters are quadratic coefficients than can be used to convert the sensor voltage into a temperature, i.e., temperature = (v * v * x2 ) + (v * x) + c, where v is the measured sensor voltage.

    For NTC thermistors x2 is the beta value as specified for the thermistor type, x is the resistance at 25 deg C, and, c is still the offset.

  • unit (str) –

    The temperature units. One of:

    • 'C': Centigrade

    • 'F': Fahrenheit

    • 'K': Kelvin

    • 'V': Voltage

    • 'R': Resistance

  • averaging (int) – Set the averaging to be 0 (Off) or 1 (On).

  • rl (float, optional) – Used for NTC or RES sensors. This value corresponds to the RL drive resistance.

set_setpoint(method, value, pot_range, pot_offset)[source]

Set the setpoint parameters.

This corresponds to the i command in the Commands manual.

Parameters:
  • method (int) –

    The temperature setpoint can be set via software or by altering the potentiometer on the temperature controller hardware. One of:

    • 0: Potentiometer

    • 1: Software

    • 2: Input

  • value (float) – The setpoint value.

  • pot_range (float) – The temperature range of the potentiometer.

  • pot_offset (float) – The minimum temperature point of the potentiometer.

set_test(mode, arg1, arg2, arg3, arg4, arg5, arg6, arg7)[source]

Set the test parameters.

This corresponds to the k command in the Commands manual.

Parameters:
  • mode (int) –

    The test mode. One of:

    • 0: Off

    • 1: Normal

    • 2: Temperature cycle

    • 3: Temperature ramp

    • 4: Auto tune

  • arg1 (float) – The maximum cycle value or the test time (in seconds).

  • arg2 (float) – The start temperature or setpoint value.

  • arg3 (float) – The end temperature or end peak test value.

  • arg4 (float) – The rate 1 or the calc PID value.

  • arg5 (float) – The rate 2 or the run PID value.

  • arg6 (float) – The time 1 or undo PID value.

  • arg7 (float) – The time 2 or auto cal value.