Skip to content

Eurotherm 2000 series used with Regulation plugin:

YAML configuration file example

class: Eurotherm2000
plugin: regulation
module: temperature.eurotherm.eurotherm2000
serial:
    url: /dev/ttyS0
inputs:
    - name: euro_in
      unit: '°C'
outputs:
    - name: euro_out
      unit: '%'
ctrl_loops:
    - name: euro_loop
      input: $euro_in
      output: $euro_out

Opionnaly, unit can be specified for each input/output channel.

Usage

In the Bliss session import the Loop object (ex: euro_loop).

Type the name in the bliss shell to print informations.

TEST_BCU [5]: euro_loop
     Out [5]:
            === Loop: euro_loop ===
            controller: Eurotherm2480 (READY)
            Input: euro_in @ 22.619 °C
            output: euro_out @ 4.398 %

            === Setpoint ===
            setpoint: 23 °C       
            ramprate: 10 °C/min   
            ramping: False        

            === PID ===           
            kp: 400               
            ki: 180               
            kd: 1

Access the associated input and output with euro_loop.input and euro_loop.output.

Ramp to a given setpoint temperature with euro_loop.setpoint = 23.

Change the ramp rate with euro_loop.ramprate = 10.

If ramprate is set to zero (euro_loop.ramprate = 0), the controller will reach the setpoint temperature as fast as possible.

Get current input temperature with euro_loop.input.read().

Perform a scan with the regulation loop as an axis with euro_loop.axis.

Access the controller with euro_loop.controller and all expert commands with euro_loop.controller.cmds.

All current values of the controller parameters can be retrieved with euro_loop.controller.dump_all_cmds.

Status Information

In a Bliss session, type the name of the loop to show information about the Loop, its controller and associated input and output.

Use euro_loop.controller.status or euro_loop.controller.state to retrieve information about the controller.