The ctrl_heliox module

A class for monitoring and controlling the Heliox.

Classes

HelioxController

class src.instruments.controllers.ctrl_heliox.HelioxController(experiment, heliox)[source]

A tool for monitoring the Heliox status and manually controlling it.

Methods

abort()[source]

Stop the monitor.

clearUpdateCommands()[source]

Remove all update commands.

classmethod getInstrumentClassName()[source]

Return the instrument class managed by this controller.

classmethod isSingleton()[source]

Return whether at most one instance of the controller may exist.

Returns :

bool :

Whether only zero or one instance of the controller may exist.

run()[source]

Start updating the monitor and listening for commands.

setField(field)[source]

Set the magnetic field.

Parameters :

field : float

The desired magnetic field in Tesla.

setFieldRampRate(rampRate)[source]

Set the magnetic field ramp rate.

Parameters :

rampRate : float

The desired magnetic field ramp rate.

setPID(newP, newI, newD)[source]

Set the PID values for the temperature controller.

Parameters :

newP : float

The proportional band in Kelvin, to a resolution of 0.001 K.

newI : float

The integral action time in minutes. Values between 0 and 140 minutes (inclusive), in steps of 0.1 minutes, are accepted.

newD : float

The derivative action time in minutes. The allowed range is 0 to 273 minutes. The default is 0.0.

setTemperature(temperature)[source]

Set the sample temperature using the automatic algorithm.

Parameters :

temperature : float

The desired sample temperature in Kelvin.

setTemperatureSampleHigh(temperature)[source]

Set the sample-high temperature.

Parameters :

temperature : float

The desired sample-high temperature in Kelvin.

setTemperatureSampleLow(temperature)[source]

Set the sample-low temperature.

Parameters :

temperature : float

The desired sample-low temperature in Kelvin.

setTemperatureSorb(temperature)[source]

Set the sorb temperature.

Parameters :

temperature : float

The desired sorb temperature in Kelvin.

setUpdateCommands(commands)[source]

Set the commands to execute each time the monitor updates.

All of the parameters of which the monitor keeps track will be substituted into the commands as keyword arguments every time there is an update. The keys are as follows:

  • ‘field’
  • ‘setpoint’
  • ‘ramp_rate’
  • ‘pid’
  • ‘temperatures’
Parameters :

commands : list of Command

A list of Command objects which will be executed each time the monitor object updates.

Table Of Contents

Previous topic

The controllers package

Next topic

The noauto package

This Page