GUI controllers

The files in pyhard2.ctrlr initialize and launch the GUI controllers.

In order to remain compatible with the Dashboard, they must contain a function named createController() that returns the initialized Controller.

The initialization itself may be driven on the command line with the help of the ArgumentParser setup in Config() or in the configuration file passed to Config().

See also:
The format for the configuration file and the command line arguments is describe in Config().
Example:

The skeleton for the createController() function follows:

import pyhard2.ctrlr as ctrlr
import pyhard2.driver as drv
from pyhard2.driver.MODULE import Driver  # import the actual driver
import pyhard2.driver.virtual as virtual

def createController():
   """Initialize controller."""
   config = ctrlr.Config("NAME")  # name of the driver module
   if config.virtual:
      driver = virtual.VirtualInstrument()
      # The virtual instrument comprises input, output, setpoint, and
      # a PID.
      iface = ctrlr.Controller.virtualInstrumentController(
         config, driver)
   else:
      driver = Driver(drv.Serial(config.port))
      iface = ctrlr.Controller(config, driver)
      # We need at least one command.
      iface.addCommand(driver.SUBSYSTEM.COMMAND, "COLUMN_NAME")
   # We need at least one node.
   iface.addNode(0, "ROW_NAME")
   iface.populate()
   return iface

DAQ

Graphical user interface to NI-DAQ and comedi-compatible data acquisition hardware.

class pyhard2.ctrlr.daq.ValveButton(parent=None)

Button displaying the image of a valve.

pyhard2.ctrlr.daq.createController()

Initialize controller.

pyhard2.ctrlr.daq.main(argv)

Start controller.

Bronkhorst

Graphical user interface to Bronkhorst flow and pressure controllers.

pyhard2.ctrlr.bronkhorst.createController()

Initialize controller.

pyhard2.ctrlr.bronkhorst.main(argv)

Start controller.

Fluke

Graphical user interface to Fluke Series 18x multimeters.

pyhard2.ctrlr.fluke.createController()

Initialize controller.

pyhard2.ctrlr.fluke.main(argv)

Start controller.

Pfeiffer

Graphical user interface to Pfeiffer Maxigauge pressure controller.

pyhard2.ctrlr.pfeiffer.createController()

Initialize controller.

pyhard2.ctrlr.pfeiffer.main(argv)

Start controller.

Watlow

Graphical user interface to Watlow Series988 temperature controller.

class pyhard2.ctrlr.watlow.WatlowProgram

Program that can be used in combination with the ramping facility provided in hardware.

rate

The signal is emitted with the heating rate until the next setpoint.

See also

The class inherits SingleShotProgram.

class pyhard2.ctrlr.watlow.WatlowController(config, driver, uifile='', parent=None)

GUI controller with controls for hardware ramping.

See also

The class inherits pyhard2.ctrlr.Controller.

setRampRateColumn(column)

Set ramp rate column to column.

setRampInitColumn(column)

Set ramp init column to column.

pyhard2.ctrlr.watlow.createController()

Initialize controller.

pyhard2.ctrlr.watlow.main(argv)

Start controller.