National Instruments Network Card 371685C 01 User Manual

TM  
TM  
LabWindows /CVI  
PID Control Toolkit User Manual  
LabWindows/CVI PID Control Toolkit User Manual  
May 2008  
371685C-01  
 
 
Important Information  
Warranty  
The media on which you receive National Instruments software are warranted not to fail to execute programming instructions, due to defects  
in materials and workmanship, for a period of 90 days from date of shipment, as evidenced by receipts or other documentation. National  
Instruments will, at its option, repair or replace software media that do not execute programming instructions if National Instruments receives  
notice of such defects during the warranty period. National Instruments does not warrant that the operation of the software shall be  
uninterrupted or error free.  
A Return Material Authorization (RMA) number must be obtained from the factory and clearly marked on the outside of the package before any  
equipment will be accepted for warranty work. National Instruments will pay the shipping costs of returning to the owner parts which are covered by  
warranty.  
National Instruments believes that the information in this document is accurate. The document has been carefully reviewed for technical accuracy. In  
the event that technical or typographical errors exist, National Instruments reserves the right to make changes to subsequent editions of this document  
without prior notice to holders of this edition. The reader should consult National Instruments if errors are suspected. In no event shall National  
Instruments be liable for any damages arising out of or related to this document or the information contained in it.  
EXCEPT AS SPECIFIED HEREIN, NATIONAL INSTRUMENTS MAKES NO WARRANTIES, EXPRESS OR IMPLIED, AND SPECIFICALLY DISCLAIMS ANY WARRANTY OF  
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. CUSTOMERS RIGHT TO RECOVER DAMAGES CAUSED BY FAULT OR NEGLIGENCE ON THE PART OF NATIONAL  
INSTRUMENTS SHALL BE LIMITED TO THE AMOUNT THERETOFORE PAID BY THE CUSTOMER. NATIONAL INSTRUMENTS WILL NOT BE LIABLE FOR DAMAGES RESULTING  
FROM LOSS OF DATA, PROFITS, USE OF PRODUCTS, OR INCIDENTAL OR CONSEQUENTIAL DAMAGES, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. This limitation of  
the liability of National Instruments will apply regardless of the form of action, whether in contract or tort, including negligence. Any action against  
National Instruments must be brought within one year after the cause of action accrues. National Instruments shall not be liable for any delay in  
performance due to causes beyond its reasonable control. The warranty provided herein does not cover damages, defects, malfunctions, or service  
failures caused by owner’s failure to follow the National Instruments installation, operation, or maintenance instructions; owner’s modification of the  
product; owner’s abuse, misuse, or negligent acts; and power failure or surges, fire, flood, accident, actions of third parties, or other events outside  
reasonable control.  
Copyright  
Under the copyright laws, this publication may not be reproduced or transmitted in any form, electronic or mechanical, including photocopying,  
recording, storing in an information retrieval system, or translating, in whole or in part, without the prior written consent of National  
Instruments Corporation.  
National Instruments respects the intellectual property of others, and we ask our users to do the same. NI software is protected by copyright and other  
intellectual property laws. Where NI software may be used to reproduce software or other materials belonging to others, you may use NI software only  
to reproduce materials that you may reproduce in accordance with the terms of any applicable license or other legal restriction.  
Trademarks  
National Instruments, NI, ni.com, and LabVIEW are trademarks of National Instruments Corporation. Refer to the Terms of Use section  
on ni.com/legalfor more information about National Instruments trademarks.  
The mark LabWindows is used under a license from Microsoft Corporation. Windows is a registered trademark of Microsoft Corporation in the United  
States and other countries. Other product and company names mentioned herein are trademarks or trade names of their respective companies.  
Patents  
For patents covering National Instruments products, refer to the appropriate location: Help»Patents in your software, the patents.txtfile  
on your media, or ni.com/patents.  
WARNING REGARDING USE OF NATIONAL INSTRUMENTS PRODUCTS  
(1) NATIONAL INSTRUMENTS PRODUCTS ARE NOT DESIGNED WITH COMPONENTS AND TESTING FOR A LEVEL OF  
RELIABILITY SUITABLE FOR USE IN OR IN CONNECTION WITH SURGICAL IMPLANTS OR AS CRITICAL COMPONENTS IN  
ANY LIFE SUPPORT SYSTEMS WHOSE FAILURE TO PERFORM CAN REASONABLY BE EXPECTED TO CAUSE SIGNIFICANT  
INJURY TO A HUMAN.  
(2) IN ANY APPLICATION, INCLUDING THE ABOVE, RELIABILITY OF OPERATION OF THE SOFTWARE PRODUCTS CAN BE  
IMPAIRED BY ADVERSE FACTORS, INCLUDING BUT NOT LIMITED TO FLUCTUATIONS IN ELECTRICAL POWER SUPPLY,  
COMPUTER HARDWARE MALFUNCTIONS, COMPUTER OPERATING SYSTEM SOFTWARE FITNESS, FITNESS OF COMPILERS  
AND DEVELOPMENT SOFTWARE USED TO DEVELOP AN APPLICATION, INSTALLATION ERRORS, SOFTWARE AND HARDWARE  
COMPATIBILITY PROBLEMS, MALFUNCTIONS OR FAILURES OF ELECTRONIC MONITORING OR CONTROL DEVICES,  
TRANSIENT FAILURES OF ELECTRONIC SYSTEMS (HARDWARE AND/OR SOFTWARE), UNANTICIPATED USES OR MISUSES, OR  
ERRORS ON THE PART OF THE USER OR APPLICATIONS DESIGNER (ADVERSE FACTORS SUCH AS THESE ARE HEREAFTER  
COLLECTIVELY TERMED “SYSTEM FAILURES”). ANY APPLICATION WHERE A SYSTEM FAILURE WOULD CREATE A RISK OF  
HARM TO PROPERTY OR PERSONS (INCLUDING THE RISK OF BODILY INJURY AND DEATH) SHOULD NOT BE RELIANT SOLELY  
UPON ONE FORM OF ELECTRONIC SYSTEM DUE TO THE RISK OF SYSTEM FAILURE. TO AVOID DAMAGE, INJURY, OR DEATH,  
THE USER OR APPLICATION DESIGNER MUST TAKE REASONABLY PRUDENT STEPS TO PROTECT AGAINST SYSTEM FAILURES,  
INCLUDING BUT NOT LIMITED TO BACK-UP OR SHUT DOWN MECHANISMS. BECAUSE EACH END-USER SYSTEM IS  
CUSTOMIZED AND DIFFERS FROM NATIONAL INSTRUMENTS' TESTING PLATFORMS AND BECAUSE A USER OR APPLICATION  
DESIGNER MAY USE NATIONAL INSTRUMENTS PRODUCTS IN COMBINATION WITH OTHER PRODUCTS IN A MANNER NOT  
EVALUATED OR CONTEMPLATED BY NATIONAL INSTRUMENTS, THE USER OR APPLICATION DESIGNER IS ULTIMATELY  
RESPONSIBLE FOR VERIFYING AND VALIDATING THE SUITABILITY OF NATIONAL INSTRUMENTS PRODUCTS WHENEVER  
NATIONAL INSTRUMENTS PRODUCTS ARE INCORPORATED IN A SYSTEM OR APPLICATION, INCLUDING, WITHOUT  
LIMITATION, THE APPROPRIATE DESIGN, PROCESS AND SAFETY LEVEL OF SUCH SYSTEM OR APPLICATION.  
 
About This Manual  
Chapter 1  
System Requirements ....................................................................................................1-1  
Activation Instructions...................................................................................................1-2  
Chapter 2  
The Precise PID Algorithm............................................................................................2-4  
Error Calculation .............................................................................................2-4  
Trapezoidal Integration ...................................................................................2-5  
Chapter 3  
PID Controller .................................................................................................3-4  
Using PID with Autotuning.............................................................................3-6  
Using PID with Gain Scheduling ....................................................................3-7  
Using PID with Lead-Lag ...............................................................................3-8  
Using PID with Setpoint Profiling ..................................................................3-8  
Using Ramp Generators ..................................................................................3-9  
© National Instruments Corporation  
v
LabWindows/CVI PID Control Toolkit User Manual  
 
Contents  
Converting between Percentage of Full Scale and Engineering Units ........... 3-9  
Using PID on Real-Time (RT) Targets........................................................... 3-10  
Using PID with DAQ Devices........................................................................ 3-10  
Appendix A  
Technical Support and Professional Services  
Glossary  
Index  
LabWindows/CVI PID Control Toolkit User Manual  
vi  
ni.com  
 
About This Manual  
The LabWindows/CVI PID Control Toolkit User Manual describes the PID  
Control Toolkit for LabWindows/CVI. The manual describes the  
features, functions, and operation of the toolkit. To use this manual, you  
need a basic understanding of process control strategies and algorithms.  
Conventions  
The following conventions appear in this manual:  
»
The » symbol leads you through nested menu items and dialog box options  
to a final action. The sequence File»Page Setup»Options directs you to  
pull down the File menu, select the Page Setup item, and select Options  
from the last dialog box.  
This icon denotes a note, which alerts you to important information.  
bold  
Bold text denotes items that you must select or click in the software, such  
as menu items and dialog box options. Bold text also denotes parameter  
names.  
italic  
Italic text denotes variables, emphasis, a cross-reference, or an introduction  
to a key concept. Italic text also denotes text that is a placeholder for a word  
or value that you must supply.  
monospace  
Text in this font denotes text or characters that you should enter from the  
keyboard, sections of code, programming examples, and syntax examples.  
This font is also used for the proper names of disk drives, paths, directories,  
programs, subprograms, subroutines, device names, functions, operations,  
variables, filenames, and extensions.  
Related Documentation  
The following documents contain information that you may find helpful as  
you read this manual:  
LabWindows/CVI PID Control Toolkit Help  
LabWindows/CVI Help  
NI-DAQmx Help  
Traditional NI-DAQ (Legacy) C Function Reference Help  
© National Instruments Corporation  
vii  
LabWindows/CVI PID Control Toolkit User Manual  
 
         
1
Overview of the PID Control  
Toolkit  
This chapter describes how to install the toolkit and describes  
Proportional-Integral-Derivative (PID) control applications.  
System Requirements  
Your computer must meet the following minimum system requirements to run the PID  
Control Toolkit:  
LabWindows/CVI 7.x or later  
Windows Vista/XP/2000  
Installation Instructions  
If you already have an earlier version of the PID Control Toolkit installed on your computer,  
you must uninstall it before installing this version of the PID Control Toolkit.  
Note When you install the PID Control Toolkit, your user account must have  
administrator privileges.  
Complete the following steps to install the PID Control Toolkit:  
1. Insert the PID Control Toolkit CD into the CD drive. If the CD does not run  
automatically, open Windows Explorer, right-click the CD drive icon, and select  
AutoPlay.  
2. On installation startup, the National Instruments PID Control Toolkit screen appears.  
Click Install Toolkit.  
3. In the User Information panel, enter your name and organization and the serial number  
found on your Certificate of Ownership card. LabWindows/CVI uses this serial number  
when you run the NI Activation Wizard.  
4. Follow the instructions on the screen. When the PID Control Toolkit has been  
successfully installed, click Finish.  
© National Instruments Corporation  
1-1  
LabWindows/CVI PID Control Toolkit User Manual  
 
         
Chapter 1  
Overview of the PID Control Toolkit  
Activation Instructions  
The first time you launch LabWindows/CVI after installing the PID Control Toolkit, you are  
prompted to activate the toolkit. Complete the following steps to activate the PID Control  
Toolkit.  
1. Click Activate Products.  
2. Select the Automatically activate through a secure Internet connection option and  
click Next. Your computer must be connected to the Internet for this option to work.  
If you do not have Internet access on your computer, refer to the LabWindows/CVI  
Release Notes.  
3. Enter the serial number with the number found on your Certificate of Ownership card.  
Click Next.  
4. Fill in the necessary information and click Next.  
5. Check the option if you would like to receive a confirmation email of your activation and  
click Next.  
6. After a brief moment, you should receive a message indicating whether the PID Control  
Toolkit has been activated or not. Click Next.  
Note If your activation was not successful, you can update the serial number, get help  
from National Instruments, or evaluate the toolkit.  
7. Continue to follow the instructions on the screen.  
8. When you successfully activate, click Finish. LabWindows/CVI displays a window  
indicating when this license expires.  
For more information about activation, refer to the LabWindows/CVI Release Notes.  
PID Control Toolkit Applications  
The PID Control Toolkit contains functions you can use to develop LabWindows/CVI control  
applications. For more information about the types of applications you can develop, refer to  
the example programs that are installed with the toolkit.  
LabWindows/CVI PID Control Toolkit User Manual  
1-2  
ni.com  
 
   
Chapter 1  
Overview of the PID Control Toolkit  
PID Control  
Currently, the PID algorithm is the most common control algorithm used in industry. Often,  
PID is used to control processes that include heating and cooling systems, fluid level  
monitoring, flow control, and pressure control. When using PID control, you must specify a  
process variable and a setpoint. The process variable is the system parameter you want to  
control, such as temperature, pressure, or flow rate. The setpoint is the desired value for the  
parameter you are controlling. A PID controller determines a controller output value, such as  
the heater power or valve position. When applied to the system, the controller output value  
drives the process variable toward the setpoint value.  
You can use the PID Control Toolkit functions with National Instruments hardware to develop  
LabWindows/CVI control applications. Use I/O hardware, such as DAQ devices, FieldPoint  
I/O modules, or GPIB boards, to connect your PC to the system you want to control. You can  
use the LabWindows/CVI I/O functions with the PID Control Toolkit to develop a control  
application or modify the examples provided with the toolkit.  
Using the PID Control Toolkit functions, you can develop the following control applications  
based on PID controllers:  
Proportional (P), proportional-integral (PI), proportional-derivative (PD), and  
proportional-integral-derivative (PID) algorithms  
Gain-scheduled PID  
PID autotuning  
Precise PID  
Lead-lag compensation  
Setpoint profile generation  
Multiloop cascade control  
Feedforward control  
Override (minimum/maximum selector) control  
Ratio/bias control  
Refer to the LabWindows/CVI PID Control Toolkit Help, which you can access by selecting  
Start»All Programs»National Instruments»PID Control Toolkit for CVI»LabWindows  
CVI PID Help, for more information about the functions.  
© National Instruments Corporation  
1-3  
LabWindows/CVI PID Control Toolkit User Manual  
 
           
2
PID Algorithms  
This chapter explains the fast PID, precise PID, and autotuning algorithms.  
The PID Algorithm  
The PID controller compares the setpoint (SP) to the process variable (PV) to obtain the error  
(e), as follows:  
e = SP PV  
Then the PID controller calculates the controller action, u(t), as follows. In this equation, Kc  
is the controller gain.  
t
1
de  
dt  
----  
-----  
u(t) = Kc e +  
edt + Td  
T
i
0
If the error and the controller output have the same range, –100% to 100%, controller gain is  
the reciprocal of proportional band. Ti is the integral time in minutes, also called the reset  
time, and Td is the derivative time in minutes, also called the rate time. The following formula  
represents the proportional action.  
up(t) = Kce  
The following formula represents the integral action.  
t
Kc  
-------  
uI(t) =  
edt  
Ti  
0
The following formula represents the derivative action.  
de  
-------  
uD(t) = KcT  
d dt  
© National Instruments Corporation  
2-1  
LabWindows/CVI PID Control Toolkit User Manual  
 
                       
Chapter 2  
PID Algorithms  
Implementing the PID Algorithm with the PID Functions  
This section describes how the PID Control Toolkit functions implement the fast (positional)  
PID algorithm. The fast PID algorithm is the default algorithm used in the PID Control  
Toolkit.  
Error Calculation  
The following formula represents the current error used in calculating proportional, integral,  
and derivative action, where PVf is the filtered process variable.  
e(k) = (SP PVf)  
Proportional Action  
Proportional action is the controller gain times the error, as shown in the following formula:  
uP(k)=(Kc*e(k))  
Trapezoidal Integration  
Trapezoidal integration is used to avoid sharp changes in integral action when there is a  
sudden change in the PV or SP. Use nonlinear adjustment of the integral action to counteract  
overshoot. The following formula represents the trapezoidal integration action.  
k
Kc  
e(i) + e(i 1)  
-----  
---------------------------------  
Δt  
uI(k)=  
Ti  
2
i = 1  
Partial Derivative Action  
Because of abrupt changes in the SP, apply derivative action to only the PV, not to the error  
(e), to avoid derivative kick. The following formula represents the partial derivative action.  
Td  
-----  
uD(k) = Kc  
(PV (k)PV (k 1))  
f
f
Δt  
Controller Output  
Controller output is the summation of the proportional, integral, and derivative action,  
as shown in the following formula:  
u(k) = uP(k) + uI(k) + uD(k)  
LabWindows/CVI PID Control Toolkit User Manual  
2-2  
ni.com  
 
             
Chapter 2  
PID Algorithms  
Output Limiting  
The actual controller output is limited to the range specified for control output, as follows:  
if u(k) ≥ umax then u(k) = umax  
and  
if u(k) ≤ umin then u(k) = umin  
The following formula shows the practical model of the PID controller.  
t
dPVf  
-----------  
dt  
1
Ti  
----  
u(t) = Kc (SP PV) +  
(SP PV)dt Td  
0
The PID functions use an integral sum correction algorithm that facilitates anti-windup and  
bumpless manual-to-automatic transfers. Windup occurs at the upper limit of the controller  
output, for example, 100%. When the error (e) decreases, the controller output decreases,  
moving out of the windup area. The integral sum correction algorithm prevents abrupt  
controller output changes when you switch from manual to automatic mode or change any  
other parameters.  
The default ranges for the SP, PV, and output parameters correspond to percentage values;  
however, you can use actual engineering units. If you use engineering units, you must adjust  
the corresponding ranges accordingly. The Ti and Td parameters are specified in minutes.  
In manual mode, you can change the manual input to increase or decrease the output.  
All the PID control functions are reentrant. Multiple calls from high-level functions use  
separate and distinct data.  
Note As a general rule, manually drive the PV until it meets or comes close to the SP  
before you perform the manual-to-automatic transfer.  
Gain Scheduling  
Gain scheduling refers to a system in which you change controller parameters based on  
measured operating conditions. For example, the scheduling variable can be the SP, the PV,  
a controller output, or an external signal. For historical reasons, the term gain scheduling is  
used even if other parameters, such as the derivative time or integral time parameters, change.  
Gain scheduling effectively controls a system whose dynamics change with the operating  
conditions.  
© National Instruments Corporation  
2-3  
LabWindows/CVI PID Control Toolkit User Manual  
 
         
Chapter 2  
PID Algorithms  
The Precise PID Algorithm  
This section describes how the PID Control Toolkit functions implement the precise PID  
algorithm.  
Error Calculation  
The current error used in calculating integral action for the precise PID algorithm is shown in  
the following formula:  
SP PV  
f
------------------------  
e(k) = (SP PVf)(L+(1 L)*  
)
SPrange  
where SPrange is the range of the SP and L is the linearity factor that produces a nonlinear gain  
term in which the controller gain increases with the magnitude of the error. If L is 1, the  
controller is linear. A value of 0.1 makes the minimum gain of the controller 10% Kc. Use of  
a nonlinear gain term is referred to as a precise PID algorithm.  
The error for calculating proportional action for the precise PID algorithm is shown in the  
βSP PV  
SPrange  
f
----------------------------  
eb(k) = (β*SP PVf)(L+(1 L)*  
)
where β is the setpoint factor for the Two Degree of Freedom PID algorithm described in the  
Proportional Action section. The formula used to calculate derivative action for the precise  
PID algorithm is the same formula used to calculate derivative action for the fast PID  
algorithm.  
Proportional Action  
In applications, SP changes are usually larger and faster than load disturbances, while load  
disturbances appear as a slow departure of the controlled variable from the SP. PID tuning for  
good load-disturbance responses often results in SP responses with unacceptable oscillation.  
However, tuning for good SP responses often yields sluggish load-disturbance responses.  
β, when set to less than one, reduces the SP response overshoot without affecting the  
load-disturbance response, indicating the use of a Two Degree of Freedom PID algorithm.  
β is an index of the SP response importance, from zero to one. For example, if you consider  
load response the most important loop performance, set β to 0.0. Conversely, if you want the  
PV to quickly follow the SP change, set β to 1.0.  
uP(k)=(Kc*eb(k))  
LabWindows/CVI PID Control Toolkit User Manual  
2-4  
ni.com  
 
           
Chapter 2  
PID Algorithms  
Trapezoidal Integration  
Trapezoidal integration is used to avoid sharp changes in integral action when there is a  
sudden change in the PV or SP. The following formula represents the trapezoidal integration  
action for the precise PID algorithm. Use nonlinear adjustment of integral action to counteract  
the overshoot. The larger the error, the smaller the integral action, as shown in the following  
formula and in Figure 2-1.  
k
Kc  
e(i) + e(i 1)  
1
-----  
---------------------------------  
------------------------------  
uI(k)=  
Δt  
10*e(i)2  
1 + --------------------  
2
Ti  
2
i = 1  
SPrng  
Figure 2-1. Nonlinear Multiple for Integral Action (SPrng = 100)  
The Autotuning Algorithm  
Use autotuning to improve performance. Often, many controllers are poorly tuned. As a  
result, some controllers are too aggressive and some controllers are too sluggish. PID  
controllers are difficult to tune when you do not know the process dynamics or disturbances.  
In this case, use autotuning. Before you begin autotuning, you must establish a stable  
controller, even if you cannot properly tune the controller on your own.  
© National Instruments Corporation  
2-5  
LabWindows/CVI PID Control Toolkit User Manual  
 
           
Chapter 2  
PID Algorithms  
Figure 2-2 illustrates the autotuning procedure excited by the setpoint relay experiment,  
which connects a relay and an extra feedback signal with the SP. Notice that the PID Library  
autotuning functions directly implement this process. The existing controller remains in  
the loop.  
SP  
PV  
e
+
+
P(I) Controller  
Process  
Relay  
Figure 2-2. Process under PID Control with Setpoint Relay  
For most systems, the nonlinear relay characteristic generates a limiting cycle from which the  
autotuning algorithm identifies the relevant information needed for PID tuning. If the existing  
controller is proportional only, the autotuning algorithm identifies the ultimate gain Ku and  
ultimate period Tu. If the existing model is PI or PID, the autotuning algorithm identifies the  
dead time τ and time constant Tp, which are two parameters in the integral-plus-deadtime  
model, as follows:  
eτs  
Tps  
--------  
GP(s) =  
Tuning Formulas  
This package uses Ziegler and Nichols’ heuristic methods for determining the parameters of  
a PID controller. When you autotune, select one of the following types of loop performance:  
fast (1/4 damping ratio), normal (some overshoot), or slow (little overshoot). Refer to the  
following tuning formula tables for each type of loop performance.  
Table 2-1. Tuning Formula under P-Only Control (Fast)  
Controller  
Kc  
Ti  
Td  
P
0.5Ku  
0.4Ku  
0.6Ku  
PI  
0.8Tu  
0.5Tu  
PID  
0.12Tu  
LabWindows/CVI PID Control Toolkit User Manual  
2-6  
ni.com  
 
       
Chapter 2  
PID Algorithms  
Table 2-2. Tuning Formula under P-Only Control (Normal)  
Controller  
Kc  
Ti  
Td  
P
0.2Ku  
0.18Ku  
0.25Ku  
PI  
0.8Tu  
0.5Tu  
PID  
0.12Tu  
Table 2-3. Tuning Formula under P-Only Control (Slow)  
Controller  
Kc  
Ti  
Td  
P
0.13Ku  
0.13Ku  
0.15Ku  
PI  
0.8Tu  
0.5Tu  
PID  
0.12Tu  
Table 2-4. Tuning Formula under PI or PID Control (Fast)  
Controller  
Kc  
Tp /τ  
Ti  
Td  
P
PI  
0.9Tp /τ  
3.33τ  
2.0τ  
PID  
1.1Tp /τ  
0.5τ  
Table 2-5. Tuning Formula under PI or PID Control (Normal)  
Controller  
Kc  
Ti  
Td  
P
0.44Tp /τ  
0.4Tp /τ  
0.53Tp /τ  
PI  
5.33τ  
4.0τ  
PID  
0.8τ  
© National Instruments Corporation  
2-7  
LabWindows/CVI PID Control Toolkit User Manual  
 
       
Chapter 2  
PID Algorithms  
Table 2-6. Tuning Formula under PI or PID Control (Slow)  
Controller  
Kc  
Ti  
Td  
P
0.26Tp /τ  
0.24Tp /τ  
0.32Tp /τ  
PI  
5.33τ  
4.0τ  
PID  
0.8τ  
Note During tuning, the process remains under closed-loop PID control. It is not  
necessary to switch off the existing controller and perform the experiment under open-loop  
conditions. In the setpoint relay experiment, the SP signal mirrors the SP for the PID  
controller.  
LabWindows/CVI PID Control Toolkit User Manual  
2-8  
ni.com  
 
   
3
Using the PID Control Toolkit  
This chapter contains the basic information you need to design a control strategy using the  
PID Control Toolkit functions.  
Designing a Control Strategy  
When you design a control strategy, sketch a flowchart that includes the physical process and  
control elements such as valves and measurements. Add feedback from the process and any  
required computations. Then use the PID Control Toolkit functions to translate the flowchart  
into an application.  
You can handle the inputs and outputs using DAQ devices, FieldPoint I/O modules, GPIB  
boards, or serial I/O ports. You can adjust polling rates in real time. Potential polling rates are  
limited only by your hardware.  
Setting Timing  
According to control theory, a control system must sample a physical process at a rate that is  
approximately 10 times faster than the fastest time constant in the physical process. For  
example, a time constant of 60 s is typical for a temperature control loop in a small system.  
In this case, a cycle time of 6 s is sufficient. Faster cycling offers no improvement in  
performance (Corripio 1990).  
The PID control feature, lead-lag feature, and setpoint profile feature in the PID Control  
Toolkit are time-dependent. A component can acquire the timing information either from a  
value you supply to the pidAttrDeltaTattribute or from the built-in internal timer. By  
default, the pidAttrUseInternalTimerattribute is set to 1, so the component uses the  
internal timer. Call PidSetAttributeand PidGetAttributeto set and get PID controller  
attributes.  
The internal timer calculates new timing information each time PidNextOutputis called.  
When the function is called, the timer determines the time since the last call to  
PidNextOutputand uses that time difference in its calculations.  
You can set the component to use the value you have supplied to the pidAttrDeltaT  
attribute by setting pidAttrUseInternalTimerto 0. Use the pidAttrDeltaTattribute  
for fast loops, including instances in which you use acquisition hardware to time the  
controller input.  
© National Instruments Corporation  
3-1  
LabWindows/CVI PID Control Toolkit User Manual  
 
             
Chapter 3  
Using the PID Control Toolkit  
Tuning Controllers Manually  
The following controller tuning procedures are based on the work of Ziegler and Nichols, the  
developers of the Quarter-Decay Ratio tuning techniques derived from a combination of  
theory and empirical observations (Corripio 1990). Experiment with these techniques and the  
process control simulation examples to compare them. For different processes, one method  
might be easier or more accurate than another. For example, some techniques that work best  
when used with online controllers cannot stand the large upsets described here. To perform  
these tests, set up your control strategy with the PV, SP, and output displayed on a large strip  
chart with the axes showing the values versus time. Refer to the Closed-Loop (Ultimate Gain)  
Tuning Procedure and Open-Loop (Step Test) Tuning Procedure sections for more  
information about disturbing the loop and determining the response from the graph. Refer to  
Tuning of Industrial Control Systems as listed in Appendix A, References, for more  
information about these procedures.  
Closed-Loop (Ultimate Gain) Tuning Procedure  
Although the closed-loop (ultimate gain) tuning procedure is very accurate, you must put your  
process in steady-state oscillation and observe the PV on a strip chart. Complete the following  
steps to perform the closed-loop tuning procedure.  
1. Set both the derivative time and the integral time on your PID controller to 0.  
2. With the controller in automatic mode, carefully increase the proportional gain (Kc) in  
small increments. Make a small change in the SP to disturb the loop after each increment.  
As you increase Kc, the value of the PV should begin to oscillate. Keep making changes  
until the oscillation is sustained, neither growing nor decaying over time.  
3. Record the controller proportional band (PBu) as a percent, where PBu = 100/Kc.  
4. Record the period of oscillation (Tu) in minutes.  
5. Multiply the measured values by the factors shown in Table 3-1 and enter the new tuning  
parameters into your controller. Table 3-1 provides the proper values for a quarter-decay  
ratio. If you want less overshoot, increase the gain (Kc).  
Note Proportional gain (Kc) is related to proportional band (PB) as follows: Kc = 100/PB.  
Table 3-1. Factors for Determining Tuning Parameter Values (Closed Loop)  
Controller  
PB (Percent)  
2.00 PBu  
Reset (Minutes)  
Rate (Minutes)  
P
PI  
0.83 Tu  
PID  
1.67 PBu  
0.50 Tu  
0.125 Tu  
LabWindows/CVI PID Control Toolkit User Manual  
3-2  
ni.com  
 
     
Chapter 3  
Using the PID Control Toolkit  
Open-Loop (Step Test) Tuning Procedure  
The open-loop (step test) tuning procedure assumes that you can model any process as a  
first-order lag and a pure deadtime. This method requires more analysis than the closed-loop  
tuning procedure, but the process does not need to reach sustained oscillation. Therefore, the  
open-loop tuning procedure might be quicker and more reliable for many processes. Observe  
the output and the PV on a strip chart that shows time on the x-axis. Complete the following  
steps to perform the open-loop tuning procedure.  
1. Put the controller in manual mode, set the output to a nominal operating value, and allow  
the PV to settle completely. Record the PV and output values.  
2. Make a step change in the output. Record the new output value.  
3. Wait for the PV to settle. From the chart, determine the values as derived from the sample  
displayed in Figure 3-1. The variables represent the following values:  
Td—Deadtime, in minutes  
T—Time constant, in minutes  
K—Process gain = change in PV/change in output  
Figure 3-1. Output and Process Variable Strip Chart  
4. Multiply the measured values by the factors shown in Table 3-2 and enter the new tuning  
parameters into your controller. Table 3-2 provides the proper values for a quarter-decay  
ratio. If you want less overshoot, reduce the gain (Kc).  
Table 3-2. Factors for Determining Tuning Parameter Values (Open Loop)  
Controller  
PB (Percent)  
100 (KTd/T)  
110 (KTd/T)  
80 (KTd/T)  
Reset (Minutes)  
Rate (Minutes)  
P
PI  
3.33 Td  
PID  
2.00 Td  
0.50 Td  
© National Instruments Corporation  
3-3  
LabWindows/CVI PID Control Toolkit User Manual  
 
       
Chapter 3  
Using the PID Control Toolkit  
Using the PID Library  
The following sections describe how to use the PID Library to implement a control strategy.  
PID Controller  
The PID controller requires several inputs, including SP, PID gains, timer interval (in case the  
internal timer is not used), PV, and output range. PID gains include proportional gain, integral  
time, and derivative time. The following steps provide an overview of typical PID controller  
use.  
1. Provide the PID gains to PidCreateto create a PID controller. PidCreatereturns a  
handle that you can use to identify the PID controller in subsequent function calls.  
2. Use PidSetAttributeto set the PID controller attributes such as SP, time interval,  
minimum and maximum controller output values, and so on.  
3. Provide the PV to the controller in a loop and use PidNextOutputto obtain the  
controller output, which is again applied on the system.  
4. Once the control loop ends, call PidDiscardto discard the PID controller and free its  
resources.  
You can call PidSetAttributewith the pidAttrOutputMinand pidAttrOutputMax  
attributes to specify the range of the controller output. The default range is –100 to 100, which  
corresponds to values specified in terms of percentage of full scale. However, you can change  
this range so that the controller gain relates engineering units to engineering units instead of  
percentage to percentage. The PID controller coerces the controller output to the specified  
range. In addition, the PID controller implements integrator anti-windup when the controller  
output is saturated at the specified minimum or maximum values. Refer to Chapter 2, PID  
Algorithms, for more information about anti-windup.  
PID Algorithms  
The PID controller can use the following types of PID algorithms to determine the controller  
output.  
Fast PID algorithm (pidFastPidAlgorithm)  
Precise PID algorithm (pidPrecisePidAlgorithm)  
Use the pidAttrAlgorithmattribute, which you can set using PidSetAttribute,  
to specify the algorithm to use. pidFastPidAlgorithmis the default value.  
LabWindows/CVI PID Control Toolkit User Manual  
3-4  
ni.com  
 
             
Chapter 3  
Using the PID Control Toolkit  
The fast PID algorithm is faster and simpler than the precise PID algorithm. Use the fast  
algorithm in fast control loops. The precise PID algorithm uses the Two Degree of Freedom  
algorithm to control the PV, which gives better results than the fast PID algorithm. The precise  
PID algorithm also uses extra parameters such as Beta, Linearity, and Setpoint Range, which  
you can specify using PidSetAttribute. The precise PID algorithm implements a  
bumpless manual-to-automatic transfer, which ensures a smooth controller output during the  
transition from manual to automatic control mode.  
Control Input Filter  
You can use the filtered PV to filter high-frequency noise from the measured values in a  
control application. For example, you can use a filtered PV if you are measuring process  
variable values using a DAQ device. To use a filtered PV, set pidAttrUseFilteredPVto 1.  
By default, this attribute is set to 0. You can use PidSetProcessVariableFilterand  
PidGetProcessVariableFilterto set or get custom filters.  
As discussed in the Setting Timing section, the sampling rate of the control system should be  
at least 10 times faster than the fastest time constant of the physical system. Therefore, if  
correctly sampled, any frequency components of the measured signal that are greater than  
one-tenth of the sampling frequency are a result of noise in the measured signal. Gains in the  
PID controller can amplify this noise and produce unnecessary wear on actuators and other  
system components. The filtered PV uses a low-pass fifth-order Finite Impulse Response  
(FIR) filter to filter out unwanted noise from input signals. The cutoff frequency of the  
low-pass filter is one-tenth of the sampling frequency, regardless of the actual sampling  
frequency value.  
Output Rate Limiting  
Sudden changes in control output are undesirable or even dangerous for many control  
applications. For example, a sudden large change in the SP can cause a very large change in  
controller output. Although, in theory, this large change in controller output results in fast  
system response, it may also cause unnecessary wear on actuators or sudden large power  
demands. In addition, the PID controller can amplify noise in the system, which results in a  
constantly changing controller output.  
You can use output rate limiting to avoid the problem of sudden changes in controller  
output. To enable output rate limiting, set pidAttrLimitOutputRateto 1, set  
pidAttrOutputRateand pidAttrInitialOutputto limit the rate of change of the  
controller output, and specify the controller output value on the first iteration of the control  
loop, respectively. Call PidSetAttributeand PidGetAttributeto set and get these  
attributes.  
© National Instruments Corporation  
3-5  
LabWindows/CVI PID Control Toolkit User Manual  
 
   
Chapter 3  
Using the PID Control Toolkit  
Using PID with Autotuning  
You can use autotuning to improve controller performance. There are two ways in which you  
can autotune a controller.  
Wizard-Based AutotuningYou can use the PID Autotuning Wizard to tune the  
parameters.  
Classic AutotuningYou can use the functions in the Autotuning class to develop a  
custom autotuning user interface.  
Complete the following steps to autotune a controller. These steps explain both wizard-based  
and classic autotuning.  
1. Call PidCreateWithAutotuneto create the controller and obtain the PID handle that  
identifies that controller in subsequent function calls. The PID Library invokes the  
callback function provided to PidCreateWithAutotunewhen the following PID  
events occur:  
pidNoiseEstimateEvent—Noise estimation is complete  
pidRelayCycleEvent—A setpoint relay cycle is complete  
pidAutotuneEvent—Autotuning is complete  
When you use wizard-based autotuning, the library invokes the callback function only  
when the autotuning is complete.  
2. Provide the PV to the controller in a loop and obtain the controller output, which is again  
applied on the system.  
3. While the PID control loop is being run, call PidAutotuneShowDialogif you want to  
use wizard-based autotuning. This function launches the Autotuning Wizard. To use  
classic autotuning, call the functions in the Autotuning class.  
4. Once the control loop ends, call PidDiscardto discard the PID controller and release  
its resources.  
Distributing Applications That Use Wizard-Based Autotuning  
Use the LabWindows/CVI application distribution feature to deploy applications you create  
using the PID Control Toolkit. The PID Control Toolkit installs CVIPIDRuntime.msmin the  
C:\Program Files\Common Files\Merge Modulesdirectory. This file installs  
CVIPIDAtUI.dllin the systemdirectory. If you deploy applications that use wizard-based  
autotuning, you must add this merge module to the distribution.  
The version of LabWindows/CVI you are using determines how you add the merge module  
to the distribution. If you are using LabWindows/CVI 7.x, create a file group in the  
distribution kit named _MSMS_. Include CVIPIDRuntime.msmin that file group. Build the  
distribution kit, and CVIPIDRuntime.msmwill be seamlessly merged in as an MSI merge  
module, instead of just being included as a file.  
LabWindows/CVI PID Control Toolkit User Manual  
3-6  
ni.com  
 
             
Chapter 3  
Using the PID Control Toolkit  
If you are using LabWindows/CVI 8.0 and later, click Add Additional Module in the  
Drivers & Components tab of the Edit Installer dialog box. In the Select Merge Module  
dialog box, browse to and select CVIPIDRuntime.msm. For additional information about  
distributing LabWindows/CVI applications, refer to the LabWindows/CVI Help.  
Using PID with Gain Scheduling  
Most processes are non-linear. Therefore, PID parameters that produce a desired response at  
one operating point might not produce a satisfactory response at another operating point.  
Using the gain scheduling feature, you can apply different sets of PID parameters for different  
regions of controller operation.  
The gain scheduler selects and outputs one set of PID gains from a gain schedule based on the  
current gain scheduling value. The gain scheduling value input can be anything and is based  
on the gain scheduling criteria that you set.  
Use the pidGSAttrGainScheduleCriteriaattribute to set the gain scheduling criteria.  
Call PidSetGainScheduleAttributeand PidGetGainScheduleAttributeto set and  
get gain scheduling attributes. The pidGSAttrGainScheduleCriteriaattribute can take  
the following values:  
Setpoint  
Process variable  
Controller output  
Gain schedule variable provided by the user through the  
pidGSAttrUserGainScheduleVariableattribute  
The gain schedule is a list of gain sets. A gain set consists of the following features:  
Proportional gain (Kc)  
Integral time (Ti)  
Derivative time (Td)  
Gain control value  
The PID Library uses the gain set that has the smallest control value that is greater than the  
value of the signal specified by the gain schedule criteria. For example, if three gain sets have  
control values equal to 10, 20, and 30 and the value of the signal specified by the gain schedule  
criteria is 15, then the second gain set is used.  
If the value of the signal specified by the gain schedule criteria is greater than the gain  
schedule's largest control value, then the gain set with the largest control value is used. You  
also can set pidGSAttrSelectionModeto pidManualto allow you to set the gain sets  
manually. By default, the mode is automatic.  
© National Instruments Corporation  
3-7  
LabWindows/CVI PID Control Toolkit User Manual  
 
       
Chapter 3  
Using the PID Control Toolkit  
Using PID with Lead-Lag  
The lead-lag compensator uses a positional algorithm that approximates a true exponential  
lead-lag. Feed forward control schemes often use this kind of algorithm as a dynamic  
compensator. Using lead-lag, you can simulate inertia of motors, slow settling times in pipes,  
and so on. Lead compensation stabilizes a closed loop by reacting to how fast something is  
changing rather than its current state. This process speeds up the reaction. Lag compensation  
stabilizes a closed loop by slowing down the reaction to the present value so that the  
correction is made more slowly and does not overshoot. This process slows down the reaction.  
The typical usage of the lead-lag follows:  
1. Pass gains to PidLeadLagCreateto create a lead-lag compensator.  
PidLeadLagCreatereturns a handle you can use to identify the lead-lag compensator  
in subsequent function calls.  
2. Use PidSetLeadLagAttributeand PidGetLeadLagAttributeto set and get the  
lead-lag compensator attributes such as time intervals and minimum/maximum output  
values. Provide the input to the compensator in a loop and use PidLeadLagNextOutput  
to obtain the output. This output is either applied to the system or to the controller, based  
on whether the lead-lag is being used as an input or an output filter.  
3. Once the control loop ends, call PidLeadLagDiscardto discard the lead-lag  
compensator and release its resources. Also call PidDiscardto discard the PID  
controller.  
The lead-lag compensator can be used either as an input or an output filter to the PID  
controller. The default output range is –100 to 100, which corresponds to values specified in  
terms of percentage of full scale. However, you can change this range so that the controller  
gain relates engineering units to engineering units instead of percentage to percentage. The  
lead-lag compensator coerces the controller output to the specified range.  
Using PID with Setpoint Profiling  
Using the setpoint profiling feature, you can generate a profile of setpoint values over time for  
a “ramp and soak” type PID application. For example, you might want to ramp the setpoint  
temperature of an oven control system over time and then hold, or soak, the setpoint at a  
certain temperature for another period of time. Use this feature to implement any arbitrary  
combination of ramp, hold, and step functions. Provide (setpoint, time) pairs to the setpoint  
profile. The setpoint profile maintains the setpoint specified in each pair for the corresponding  
times specified in the time array.  
LabWindows/CVI PID Control Toolkit User Manual  
3-8  
ni.com  
 
         
Chapter 3  
Using the PID Control Toolkit  
You can use the setpoint profiler as follows:  
1. Call PidSetpointProfileCreateto create a setpoint profile. Use a pair of time and  
setpoint value arrays to specify the setpoint profile with the time values in ascending  
order.  
2. Use PidSetSetpointProfileAttributeto set the setpoint profile attributes.  
3. Use PidSetpointProfileNextSetpointto obtain the setpoint from the profile in a  
loop and provide this setpoint to the controller.  
4. Once the control loop ends, call PidSetpointProfileDiscardto discard the setpoint  
profile and release its resources. Also call PidDiscardto discard the PID controller.  
At any time in the control loop, you can use pidSetpointProfileAttrElapsedTime  
to get the elapsed time. You also can check if the profile is complete using the  
pidSetpointProfileAttrProfileCompleteattribute.  
Using Ramp Generators  
A ramp generator is a simple component that you can use to generate a ramp output. Typically,  
you use a ramp generator as follows:  
1. Call PidRampCreateto create a ramp generator. Specify the SP, initial output, and the  
rate at which the output of the ramp changes.  
2. Call PidSetRampAttributeto set the ramp generator attributes.  
3. Use PidRampNextOutputto obtain the output of the ramp in a loop.  
4. Call PidRampDiscardto discard the ramp generator and release its resources.  
Converting between Percentage of Full Scale and Engineering Units  
As described in the previous sections, the default SP, PV, and output ranges for the PID  
Library functions correspond to a percentage of the full scale. Proportional gain (Kc) relates  
percentage of full-scale output to percentage of full-scale input. This is the default behavior  
of many PID controllers used for process control applications. To implement PID in  
this way, you must scale all inputs to percentage of full scale and all controller  
outputs to actual engineering units such as volts for analog output. You can use  
PidConvertEGUToPercentageto convert any input from real engineering units to  
percentage of full scale and PidConvertPercentageToEGUto convert the controller output  
from percentage to real engineering units. PidConvertPercentageToEGUhas an  
additional input parameter, bCoerce. The default value of bCoerce is TRUE, which indicates  
that the output is coerced to the range.  
Note The PID Library functions do not use the setpoint range and output range  
information to convert values to percentages in the PID algorithm. The controller gain  
relates the output in engineering units to the input in engineering units. For example, a gain  
© National Instruments Corporation  
3-9  
LabWindows/CVI PID Control Toolkit User Manual  
 
       
Chapter 3  
Using the PID Control Toolkit  
value of 1 produces an output of 10 for a difference between the SP and PV of 10,  
regardless of the output range and setpoint range.  
Using PID on Real-Time (RT) Targets  
Some PID applications are deterministic and, therefore, cannot be run on desktop operating  
systems. Because the PID Library is supported on real-time (RT) targets, you can use it to  
develop deterministic applications. For more information about developing and running  
RT applications, refer to the LabWindows/CVI Real-Time Module Help.  
Because RT systems do not support user interfaces, you cannot use wizard-based autotuning  
in PID applications that are targeted for RT platforms. Any applications that are targeted for  
RT must not include the following functions:  
PidAutotuneShowDialog  
PidAutotuneCloseDialog  
However, you can use other functions in the Autotuning class to tune the PID controller in  
applications targeted for RT platforms.  
Using PID with DAQ Devices  
This section addresses several important issues you might encounter when you use the DAQ  
APIs to control actual processes.  
Complete the following steps to use the PID Library with a DAQ device.  
1. Configure the DAQ device and channels for both input and output. Also configure the  
sample clocks, if necessary.  
2. Call PidCreateto create the PID controller. Then call PidSetAttributeto configure  
the controller attributes.  
3. Within the control loop, complete the following steps:  
a. Read the input from the DAQ device.  
b. Modify/manipulate the input so that it can be provided to the controller. This step is  
optional and required only in cases in which the controller input is derived from the  
acquired DAQ input.  
c. Supply this input to the controller and obtain the controller output.  
d. Modify/manipulate the controller output so that it can be used as the DAQ device  
output. This step is optional and required only in cases in which the output on the  
DAQ device is derived from the controller output.  
4. Discard the controller to release its resources. Also clear all the DAQ tasks. In some  
cases, just before clearing the DAQ tasks, the DAQ device outputs a 0.  
LabWindows/CVI PID Control Toolkit User Manual  
3-10  
ni.com  
 
       
Chapter 3  
Using the PID Control Toolkit  
The control loops can be timed in the following ways:  
Software-Timed—In software-timed control loops, the timing is controlled by the  
software loop rate. You can implement a software loop with a timer construct, such as a  
timer control or asynchronous timer, or a while loop with a delay or sleep operation at  
the end.  
Hardware-Timed—In hardware-timed control loops, the timing is controlled by the  
DAQ device. The DAQ device is configured with the appropriate sample rate, and the  
sample mode is set to hardware-timed.  
For more information about DAQ, refer to the NI-DAQmx Help or Traditional NI-DAQ  
(Legacy) C Function Reference Help, depending on the DAQ API you are using. Also refer  
to the DAQ example programs.  
© National Instruments Corporation  
3-11  
LabWindows/CVI PID Control Toolkit User Manual  
 
A
References  
The Instrument Society of America (ISA), the organization that sets standards for process  
control instrumentation in the United States, offers a catalog of books, journals, and training  
materials to teach you the basics of process control programming.  
The Corripio (1990) publication is an ISA Independent Learning Module book. It is organized  
as a self-study program covering measurement and control techniques, selection of  
controllers, and advanced control techniques. This book provides detailed tuning procedures.  
The following material is referenced in this manual:  
Corripio, A. B. 1990. Tuning of Industrial Control Systems. Raleigh, North Carolina: ISA.  
Ziegler, J. G. and N. B. Nichols. 1942. “Optimum Settings for Automatic Controllers.”  
Trans. ASME 64:759–68.  
© National Instruments Corporation  
A-1  
LabWindows/CVI PID Control Toolkit User Manual  
 
           
B
Technical Support and  
Professional Services  
Visit the following sections of the award-winning National Instruments  
Web site at ni.comfor technical support and professional services:  
Support—Technical support resources at ni.com/supportinclude  
the following:  
Self-Help Technical Resources—For answers and solutions,  
visit ni.com/supportfor software drivers and updates, a  
searchable KnowledgeBase, product manuals, step-by-step  
troubleshooting wizards, thousands of example programs,  
tutorials, application notes, instrument drivers, and so on.  
Registered users also receive access to the NI Discussion Forums  
at ni.com/forums. NI Applications Engineers make sure every  
question submitted online receives an answer.  
Standard Service Program Membership—This program  
entitles members to direct access to NI Applications Engineers  
via phone and email for one-to-one technical support as well as  
exclusive access to on demand training modules via the Services  
Resource Center. NI offers complementary membership for a full  
year after purchase, after which you may renew to continue your  
benefits.  
For information about other technical support options in your  
area, visit ni.com/services, or contact your local office at  
ni.com/contact.  
Training and Certification—Visit ni.com/trainingfor  
self-paced training, eLearning virtual classrooms, interactive CDs,  
and Certification program information. You also can register for  
instructor-led, hands-on courses at locations around the world.  
System Integration—If you have time constraints, limited in-house  
technical resources, or other project challenges, National Instruments  
Alliance Partner members can help. To learn more, call your local  
NI office or visit ni.com/alliance.  
© National Instruments Corporation  
B-1  
LabWindows/CVI PID Control Toolkit User Manual  
 
                 
Appendix B  
Technical Support and Professional Services  
If you searched ni.comand could not find the answers you need, contact  
your local office or NI corporate headquarters. Phone numbers for our  
worldwide offices are listed at the front of this manual. You also can visit  
the Worldwide Offices section of ni.com/niglobalto access the branch  
office Web sites, which provide up-to-date contact information, support  
phone numbers, email addresses, and current events.  
LabWindows/CVI PID Control Toolkit User Manual  
B-2  
ni.com  
 
Glossary  
A
algorithm  
A prescribed set of well-defined rules or processes for the solution of a  
problem in a finite number of steps.  
autotuning  
Automatically testing a process under control to determine the controller  
gains that will provide the best controller performance.  
Autotuning Wizard  
An automated graphical user interface provided in the Autotuning  
functions. The Autotuning Wizard gathers some information about the  
desired control from the user and then steps through the PID autotuning  
process. You must specify to use wizard-based autotuning in  
PidCreateWithAutotuneto use this feature.  
B
bias  
The offset added to a controller’s output.  
bumpless transfer  
A process in which the next output always increments from the current  
output, regardless of the current controller output value. Therefore, transfer  
from automatic to manual control is always bumpless.  
C
cascade control  
Control in which the output of one controller is the setpoint for another  
controller.  
closed loop  
controller  
A signal path that includes a forward path, a feedback path, and a summing  
point and that forms a closed circuit. Also called a feedback loop.  
Hardware and/or software used to maintain parameters of a physical  
process at desired values.  
controller output  
cycle time  
A quantity or condition that is varied as a function of the actuating error  
signal so as to change the value of the directly controlled variable.  
The time between samples in a discrete digital control system.  
© National Instruments Corporation  
G-1  
LabWindows/CVI PID Control Toolkit User Manual  
 
 
Glossary  
D
damping  
The progressive reduction or suppression of oscillation in a device or  
system.  
dead time (Td)  
The interval of time, expressed in minutes, between initiation of an input  
change or stimulus and the start of the resulting observable response.  
derivative (control)  
action  
Control response to the time rate of change of a variable.  
E
EGU  
Engineering units.  
F
feedback control  
Control in which a measured variable is compared to its desired value to  
produce an actuating error signal that is acted upon in such a way as to  
reduce the magnitude of the error.  
feedback loop  
See closed loop.  
G
gain  
For a linear system or element, the ratio of the magnitude, amplitude, or a  
steady-state sinusoidal output relative to the causal input; the length of a  
phasor from the origin to a point of the transfer locus in a complex plane.  
gain scheduling  
The process of applying different controller gains for different regions of  
operation of a controller. Gain scheduling is most often used in controlling  
nonlinear physical processes.  
H
Hz  
Hertz. Cycles per second.  
LabWindows/CVI PID Control Toolkit User Manual  
G-2  
ni.com  
 
Glossary  
I
Instrument Society of  
America (ISA)  
The organization that sets standards for process control instrumentation in  
the United States.  
integral (control) action Control action in which the output is proportional to the time integral of the  
input. That is, the rate of change of output is proportional to the input.  
K
K
Process gain.  
Kc  
Controller gain.  
L
lag  
A lowpass filter or integrating response with respect to time.  
linearity factor  
A value, ranging from 0 to 1, used to specify the linearity of a calculation.  
A value of 1 indicates a linear operation. A value of 0 indicates a squared  
nonlinear operation.  
load disturbance  
The ability of a controller to compensate for changes in physical  
parameters of a controlled process while the setpoint value remains  
constant.  
M
ms  
Milliseconds.  
N
noise  
In process instrumentation, an unwanted component of a signal or variable.  
Noise may be expressed in units of the output or in percent of output span.  
© National Instruments Corporation  
G-3  
LabWindows/CVI PID Control Toolkit User Manual  
 
Glossary  
O
output limiting  
Preventing a controller’s output from traveling beyond a desired maximum  
range.  
overshoot  
The maximum excursion beyond the final steady-state value of output as  
the result of an input change.  
P
P
Proportional.  
PD  
Proportional, derivative.  
Proportional, integral.  
Proportional, integral, derivative.  
PI  
PID  
PID control  
A common control strategy in which a process variable is measured and  
compared to a desired setpoint to determine an error signal. A proportional  
gain (P) is applied to the error signal, an integral gain (I) is applied to the  
integral of the error signal, and a derivative gain (D) is applied to the  
derivative of the error signal. The controller output is a linear combination  
of the three resulting values.  
PID controller  
A controller that produces proportional plus integral (reset) plus derivative  
(rate) control action.  
process gain (K)  
process variable (PV)  
For a linear process, the ratio of the magnitudes of the measured process  
response to that of the manipulated variable.  
The measured variable (such as pressure or temperature) in a process to be  
controlled.  
proportional action  
Control response in which the output is proportional to the input.  
proportional band (PB)  
The change in input required to produce a full range change in output due  
to proportional control action. PB = 100/Kc.  
PSI  
Pounds per square inch.  
LabWindows/CVI PID Control Toolkit User Manual  
G-4  
ni.com  
 
Glossary  
R
ramp  
The total (transient plus steady-state) time response resulting from a sudden  
increase in the rate of change from zero to some finite value of input  
stimulus.  
reentrant execution  
Mode in which calls to multiple instances of a function can execute in  
parallel with distinct and separate data storage.  
S
s
Seconds.  
setpoint (SP)  
An input variable that sets the desired value of the controlled process  
variable.  
span  
The algebraic difference between the upper and lower range values.  
T
time constant (T)  
In process instrumentation, the value T (in minutes) in an exponential  
response term, A exp (–t/T), or in one of the transform factors, such as  
1+sT.  
trapezoidal integration  
A numerical integration in which the current value and the previous value  
are used to calculate the addition of the current value to the integral value.  
V
V
Volts.  
W
windup area  
The time during which the controller output is saturated at the maximum or  
minimum value. The integral action of a simple PID controller continues to  
increase (wind up) while the controller is in the windup area.  
© National Instruments Corporation  
G-5  
LabWindows/CVI PID Control Toolkit User Manual  
 
Index  
A
applications, 1-3  
autotuning, 3-6  
classic, 3-6  
DAQ devices, using PID with, 3-10  
derivative action, 2-1  
derivative time, 2-1  
procedure, 3-6  
wizard based, 3-6  
diagnostic tools (NI resources), B-1  
distributing applications, 3-6  
documentation  
distributing applications, 3-6  
autotuning algorithm  
tuning formulas, 2-6  
conventions used in manual, vii  
NI resources, B-1  
PI control (fast), 2-7  
PI control (normal), 2-7  
P-only control (normal), 2-7  
P-only control (slow), 2-7  
E
engineering units, converting from percentage  
B
examples (NI resources), B-1  
F
C
fast PID algorithm, 3-4  
calculating controller action, 2-1  
classic autotuning, 3-6  
closed-loop tuning procedure, 3-2  
control strategy, designing, 3-1  
controller  
gain scheduling, 2-3, 3-7  
action, 2-1  
gain, 2-1  
output, 2-2  
PID, 1-3  
H
help file, accessing, 1-3  
help, technical support, B-1  
conventions used in the manual, vii  
Corripio, A.B., A-1  
© National Instruments Corporation  
I-1  
LabWindows/CVI PID Control Toolkit User Manual  
 
 
Index  
action, 2-2  
output limiting, 2-3  
I
installation instructions, 1-1  
integral action, 2-1  
partial derivative action, 2-2  
proportional action, 2-2  
trapezoidal integration, 2-2  
gain scheduling, 2-3  
integral time, 2-1  
PID controller, 1-3  
typical use, 3-4  
PID Library, 3-4  
K
pidAttrAlgorithm, 3-4  
L
action, 2-5  
lag compensation, 3-8  
N
proportional action, 2-4  
trapezoidal integration, 2-5  
error calculation, 2-4  
National Instruments support and  
services, B-1  
Nichols, N.B., A-1  
action, 2-2, 2-5  
proportional action, 2-4  
trapezoidal integration, 2-5  
process variable, 1-3  
proportional action, 2-2  
O
output limiting, 2-3  
rate time, 2-1  
P
real-time targets, using PID on, 3-10  
related documentation, vii  
reset time, 2-1  
partial derivative action, 2-2  
engineering units, 3-9  
PID algorithm, 2-1 to 2-3  
autotuning algorithm, 2-5 to 2-8  
calculating controller action, 2-1  
error calculation, 2-2  
LabWindows/CVI PID Control Toolkit User Manual  
I-2  
ni.com  
 
Index  
S
setpoint, 1-3  
relay experiment, 2-6  
software (NI resources), B-1  
step test tuning procedure, 3-3  
W
Web resources, B-1  
windup, 2-3  
wizard-based autotuning, 3-6  
distributing applications, 3-6  
T
technical support, B-1  
timing information, acquiring, 3-1  
timing, setting, 3-1  
Z
Ziegler, J.G., A-1  
training and certification (NI resources), B-1  
trapezoidal integration, 2-2, 2-5  
troubleshooting (NI resources), B-1  
tuning procedure  
closed loop, 3-2  
open loop, 3-3  
step test, 3-3  
ultimate gain, 3-2  
© National Instruments Corporation  
I-3  
LabWindows/CVI PID Control Toolkit User Manual  
 

Multiquip Portable Generator DCA 15SPX3 User Manual
Muratec Fax Machine MFX 1500E User Manual
Nilfisk ALTO Vacuum Cleaner 12 PE EC User Manual
Nokia Headphones BH 804 User Manual
NordicTrack Home Gym 831159770 User Manual
NordicTrack Home Gym NTB12920 User Manual
Nortel Networks Telephone P0609347 02 User Manual
Olympus Computer Drive MAUSB 300 User Manual
Omron Healthcare Blood Pressure Monitor HEM 712CLC User Manual
One for All Universal Remote SV 1100 User Manual