To download NI software, including the products shown below, visit ni.com/downloads.
Overview
This reference example includes a recommended architecture for performing low channel count multi-channel PID control on a Real-Time (RT) CompactRIO (cRIO) controller with a host user interface. Channel I/O is performed using the cRIO chassis configured for Scan Mode.
Description
The LabVIEW Project consists of two major components. The RT application running on the cRIO controller (cRIO 9074 for this example) and the operater interface running on development environment on a host machine. The RT application is the PID Control (RT VI).vi and the operator interface is listed as HMI (Host VI).vi. The two running applications communicate using Network Published Shared variables. Here is a snapshot of the project layout:
The RT application PID Control (RT VI).vi is broken up into 3 sections; Initialize, Control, Shutdown.
The Host VI (HMI (Host VI).vi) is also broken up into 3 sections; Initialize, Main UI, Shutdown.
Steps to Implement or Execute Code
Requirements
Software
LabVIEW 8.6 or higher Development Environment
LabVIEW Real-Time 8.6 or higher
LabVIEW PID and Fuzzy Logic Toolkit
Hardware
Computer with LabVIEW Development Environment
cRIO Controller (This example uses a cRIO-9074 integrated controller but other cRIO setups can be used)
cRIO Chassis that supports Scan Interface (http://zone.ni.com/reference/en-XX/help/372603F-01/riohelprt/supported_hardware_rt/)
cRIO I/O Modules (NI 9211 and NI 9474 are used in this example)
Ethernet Cabling
Additional Information
This example uses the ni.com style controls from the UI Interest Group
View the CompactRIO Developer's Guide for additional development guidlines and reference architectures.
**This document has been updated to meet the current required format for the NI Code Exchange. For more details visit this discussion thread**
Example code from the Example Code Exchange in the NI Community is licensed with the MIT license.
thanks for posting! could you please rename your attachment to include the LabVIEW version? "_lvXX.zip" is fine.
Updated the attached code.
The timed loops were set at the same priority. Whoops.
If you downloaded this previously, make sure to set your control loop to a priority greater than 100.
226
Hi jkurtw,
Thank you very much for this example!
Actually, I am trying to implement it, but it is not working properly!
No output from the PID side!
What could be the reason, from your point of view?
Thank you in advance.
Tanieta