- Community Home
- :
- User Groups
- :
- Special Interest Groups
- :
- NI VeriStand Add-Ons
- :
- NI VeriStand Add-Ons Documents
- :
- NI VeriStand Add-on: PID Models

Turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Document History
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Email to a Friend
- Printer Friendly Page
- Report to a Moderator

NI VeriStand Add-on: PID Models

** **The PID Models add-on allows users to use simple PID features in NI-VeriStand. This functionality is commonly used for Control Application.

4 variants are available:

- 1 PID Channel Controller. It's a single Channel PID controller. It allows user to specify "output range", different "PID coefficients" (proportional, integral and derivative).
- 4 PID Channels Controller. It's a 4 Channels version of the PID controller.
- 1 PID Channel Controller with Gain Scheduling. It's a single Channel PID controller with support of Gain Scheduling feature.
- Plant Model. It's here for illustration purpose (and/or for demo). It's a simulation of a basic plant. It can be used with PID models.

**setpoint**

Specifies the setpoint value, or desired value, of the process variable being controlled.

process variable

Specifies the measured value of the process variable being controlled. This value is equal to the feedback value of the feedback control loop.

**PID gains**

Specifies the proportional gain, integral time, and derivative time parameters of the controller. Default values are: kc=20, Ti=0.08 and Td=0.001.

**dt (s)**

Specifies the interval, in seconds, at which this model is called. If "dt (s)" is less than or equal to zero, this model calculates the time since it was last called using an internal timer with a one millisecond resolution. The default is -1.

**output range**

Specifies the range to which to coerce the control output. The default range is -100 to 100.

**output**

Returns the control output of the PID algorithm that is applied to the controlled process. If this model receives an invalid input, "output" returns NaN.

**dt out (s)**

Returns the actual time interval in seconds. "dt out (s)" returns either the value of "'dt (s)" or the computed interval if you set "dt (s)" to -1.

** setpoint**

Specifies the setpoint value, or desired value, of the process variable being controlled.

**process variable**

Specifies the measured value of the process variable being controlled. This value is equal to the feedback value of the feedback control loop.

**PID gains**

Specifies the proportional gain, integral time, and derivative time parameters of the controller. Default values are: kc=20, Ti=0.08 and Td=0.001.

** dt (s)**

Specifies the interval, in seconds, at which this model is called. If "dt (s)" is less than or equal to zero, this model calculates the time since it was last called using an internal timer with a one millisecond resolution. The default is -1.

** output range**

Specifies the range to which to coerce the control output. The default range is -100 to 100.

** output**

Returns the control output of the PID algorithm that is applied to the controlled process. If this model receives an invalid input, "output" returns NaN.

** dt out (s)**

Returns the actual time interval in seconds. "dt out (s)" returns either the value of "'dt (s)" or the computed interval if you set "dt (s)" to -1.

** setpoint**

Specifies the setpoint value, or desired value, of the process variable being controlled.

** process variable**

Specifies the measured value of the process variable being controlled. This value is equal to the feedback value of the feedback control loop.

** PID gains**

Specifies the proportional gain, integral time, and derivative time parameters of the controller. Default values are: kc=20, Ti=0.08 and Td=0.001.

** dt (s)**

Specifies the interval, in seconds, at which this model is called. If "dt (s)" is less than or equal to zero, this model calculates the time since it was last called using an internal timer with a one millisecond resolution. The default is -1.

** output range**

Specifies the range to which to coerce the control output. The default range is -100 to 100.

** output**

Returns the control output of the PID algorithm that is applied to the controlled process. If this model receives an invalid input, "output" returns NaN.

** dt out (s)**

Returns the actual time interval in seconds. "dt out (s)" returns either the value of "'dt (s)" or the computed interval if you set "dt (s)" to -1.

** Plant Input**

Controller output in percent, which would drive a valve or heating element if this were a real plant.

** output saturation range**

“output range” specifies the range to which to coerce the control output. The default range is -100 to 100, which corresponds to values specified in terms of percentage of full scale.

** dt (s)**

** process parameters**

static gain.

Lag (s). Process lag time in seconds.

Deadtime (s). A true deadtime, in multiples of the loop cycle time.

- Load.
- Deadband. Adds deadband to simulate an ornery valve positioner.

Sensor noise.

Initial PV.

Plant noise.

** Plant Output**

Process variable in percent, the measurement you get from the plant; the value you are trying to regulate.

** **To use the PID Models add-on, create a new NI-VeriStand project, open System-Explorer, add instances of the models.

** **To use the PID Models add-on, unzip the add-on files and place them close to your NI-VeriStand project files.

Please note that the 4 PID Channels Controller has a dependency (described in file *4 PID Channels Controller.depvs* file and stored in *Data* sub-folder). The 3 files should be kept together and organized the same way.

** **These Models were created for use with NI VeriStand 2013 SP1. To use them you must have the following software installed:

- NI-VeriStand 2013 SP1.

This add-on requires the following hardware.

- NI-VeriStand target running the engine (Windows or PharLap). Please note that targets running Vx-Works are not supported.

- LabVIEW 2014 doesn’t find the Plant System.vi automatically.

Select it manualy at: ...\National Instruments\LabVIEW 2014\examples\control\PID\subVIs\Plant System.vi

- Released

- The PID Models are based on LabVIEW Code with PID and Fuzzy Toolkit. In addition to toolkit, you need to have NI-VeriStand installed on the machine used to compile the code.

This add-on is provided as open-source software. If it does not meet your exact specification, you are encouraged to modify the source code to meet your needs. It is not officially supported by National Instruments.

If you encounter a problem with this add-on, or if you have suggestions for a future revision, please post to the forum for this add-on PID Models Feedback forum. You **must **use this feedback forum for support. Do not call National Instruments for support for this add-on.

National Instruments does not support this code or guarantee its quality in any way. THIS EXAMPLE PROGRAM IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).

LabVIEW 2014 doesn’t find the Plant System.vi automatically.

- Find more articles tagged with:
- model
- ni-veristand
- PID