Process controllers are a class of NICE devices encompassing anything which controls a continuously varying quantity like temperature, or pressure using a feedback loop. One process controller may control multiple quantities simultaneously and may allow many quantities to be monitored. NICE presents all process controllers the same way, regardless of the type of quantity they are controlling. All process controllers have:
Note: The process controller device class does NOT include devices, which control "steady" quantities, such as power supplies. This is because these devices generally achieve a desired set point quickly, with little variation. Additionally, power supplies essentially operate with 2 setpoints (current and voltage), which are sought simultaneously, until one is achieved.
To change the value of the sensor being controlled by control loop, you need to move the corresponding setpoint. This is typically done by 1st setting the primaryControlLoop node (if not already configured) and then running a command like:
>> move temp 500K
(If the unit is omitted then the user unit is used -- like any node).
This will set the setpoint of the Nth control loop (whatever index you configured in primaryControlLoop) and then wait for the temperature to stabilize (see "Wait Parameters" below for a full description).
If you want to set the setpoint on the controller, but don't want to wait, then directly move the setpoint you are interested in:
>> move temp.setPoint_1 500K
You can read the primary sensor with the command:
>> read temp
Or a specific sensor with:
>> read temp.sensor_<X>
Sensors values are accessed via nodes. These nodes do not have fixed names, because different types of controllers refer to them differently and it is useful to have NICE’s name correspond to the physical controller. For example, one brand of controller, refers to sensors a “A”, “B”, “C”, etc. while another brand may refer to them as “External” and “Internal”.
These nodes will be named:
These sensors are regularly queried, by NICE at a configurable period: <device>.backgroundPollPeriod.
Tight control of sensor values in managed in a control loop by the process controller hardware. NICE provides access to each of the N control loops through the following nodes:
There are several settings which affect when NICE considers a change of setpoint to be complete. This will affect how long a move command sits in the queue or how long NICE waits, before a count starts, inside a trajectory.
Note: If a setpoint is moved within tolerance, of the control sensor’s current reading, then NICE will assume that stability has already been achieved and immediately proceed to the hold time period. NICE will still write the new setpoint to the process controller hardware.
Note: If timeout is set to 0, then NICE will give up on achieving stability and move directly to the hold time period without issuing a warning.