在CompactRIO目标上同时使用扫描接口和LabVIEW FPGA接口称为混合模式。这将允许您对工作在扫描模式下的模块使用I / O变量,而另一些模块则使用FPGA进行编程控制。请注意,某些C系列模块与扫描接口不兼容,但使用混合模式可能会减少最终应用程序的编程量。
注意 :一个模块只能用于扫描接口模式或FPGA模式,但不能同时用于两者。
使用混合模式将对最终应用程序产生两种影响:
请按照以下的步骤设置您的CompactRIO工作在混合模式:
1.创建一个新的LabVIEW项目,然后在项目浏览器(
Project Explorer)窗口中右键单击顶级项目项。选择
新建»目标和设备(New»Targets and Devices)以显示
添加目标和设备(Add Targets and Devices)对话框。
2.如果已安装硬件,请确保选择
现有目标或设备(Existing target or device),展开
Real-Time CompactRIO ,然后选择CompactRIO控制器。单击
确定 。
3.如果未安装硬件,请选中
新建目标或设备 (
New target or device),展开
Real-Time CompactRIO ,然后选择CompactRIO控制器。单击
确定(OK) 。如果您没有集成控制器和机箱,请右键单击目标并选择
新建»目标和设备(New»Targets and Devices)。选择
新建目标或设备(New target or device) ,展开
CompactRIO 机箱(CompactRIO Chassis),然后选择您的机箱,单击
确定(OK) 。
4.如果出现
选择编程模式(Select Programming Mode)对话框,请选择“
扫描接口( Scan Interface),单击
继续 (
Continue)。
5.如果
发现 C系列模块?(Discover C Series Modules? )对话框出现,单击
发现( Discover) 。这会将机箱下的C系列模块添加到项目中。
6.右键单击机箱并选择
新建»FPGA 目标(New»FPGA Target),将FPGA目标添加到机箱
。7.如果看到
部署CompactRIO机箱设置?(Deploy CompactRIO Chassis Settings)?在对话框中,选择
稍后部署(Deploy Later) 。设置项目后,机箱将置于LabVIEW FPGA接口模式。
8.将机箱下的你想要使用LabVIEW FPGA接口模式的模块拖拽到FPGA目标下。这样,模块IO就会从机箱下移除,转而出现在FPGA目标下面的以模块名命名的文件夹下面。
9.如果您有任何与扫描接口不兼容的模块,请右键单击FPGA Target并选择
新建»C 模块( New»C Series Modules),将它们添加到FPGA目标下,可以添加现有模块或手动将模块添加到项目中。
注意 :从RIO 17.0驱动程序开始,将在名为“RSI Resources”或“Real-Time Scan Resources”的Chassis项目下的项目树中添加一个新文件夹。此项目包含您选择在扫描模式下编程的所有模块。要在“扫描接口”模式下将C系列模块添加到项目中,请右键单击
实时扫描资源(Real-Time Scan Resources),然后选择
新建»C系列模块(
New » C Series Modules)。这与上面描述的在FPGA接口模式下向FPGA目标添加模块的过程相同。
10.如果已连接到目标,请右键单击项目中的机箱,然后选择
部署(Deploy) 。如果未连接到目标,请确保在操作机箱之前,将机箱部署在FPGA接口模式下。
11.右键单击FPGA Target并选择
新建»VI(New»VI ),在FPGA Target下创建一个新的
VI 。使用FPGA I / O节点为LabVIEW FPGA接口模式中使用的模块实现FPGA代码。
12.编译VI。这将把RIO扫描接口逻辑添加到FPGA代码中,并允许应用程序同时使用扫描引擎和FPGA。
如果在尝试运行应用程序时收到以下错误,请确保机箱处于LabVIEW FPGA接口模式。
错误-61141:LabVIEW FPGA:由于FPGA正忙,无法执行操作。在请求此操作之前,停止FPGA上的所有操作。如果目标处于扫描接口编程模式,则将其置于FPGA接口编程模式。
1.右键单击项目中的机箱,然后选择
属性(Properties)。
2.确保选择了
LabVIEW FPGA接口(LabVIEW FPGA Interface) ,单击
确定(OK) 。
3.右键单击机箱,然后选择
部署(Deploy) 。
注意 :cRIO-904x控制器也支持DAQmx编程。要在实时控制器下为项目添加C系列模块(用于NI-DAQmx编程),右键单击
实时扫描资源(Real-Time Resources)并选择
新建»C系列模块(New»C Series Modules) 。如上所述,这与将模块添加到项目中以用于其他编程模式的过程相同。
Additional Information
使用混合模式意味着RT Target下会有一些C系列模块,LabVIEW项目中的FPGA Target下也会有一些C系列模块。