概念
EPICS利用基于TCP/IP的信道接入(CA)网络协议。信道接入协议是建立在TCP/IP之上的应用层。
EPICS是客户端/服务器架构。通道访问服务器(CA服务器)可以通过使用输入/输出控制器(IOC)充当现实世界的I/O点。CA服务器将数据作为EPICS过程变量(PV)发布到网络和从网络读取数据。
方法
LabVIEW中使用EPICS有两种方法:
- 德国helmholtz-berlin实验室封装好的EPICS LabVIEW工具包;
- NI LabVIEW DSC里面自带的EPICS;
Introduction to EPICS
Interactively Configuring LabVIEW EPICS I/O Clients and Servers
以下介绍第一种方法的测试过程。
环境
- CA Lab:caLabSetup_1732x86;
- LabVIEW:2023,32位;
下载安装
Downloads of CA Lab
epics-extensions/CALab
我这里下载了caLabSetup_1732x86版本。注意根据LabVIEW的位数进行选择。
这里安装在user.lib路径中:
添加环境变量:
检查环境变量是否设置:
打开cmd,输入caget,如下表示安装成功。
测试
编译下载文件:
我这里的路径:C:\Program Files (x86)\National Instruments\LabVIEW 2023\user.lib\caLab
首先运行Soft IOC Shell:
第一种,可以运行SoftIOC Demo
第二种,也可以在cmd中输入以下来运行Soft IOC Shell:
cpp
"C:\Program Files (x86)\National Instruments\LabVIEW 2023\user.lib\caLab\Lib\softIoc" -D "C:\Program Files (x86)\National Instruments\LabVIEW 2023\user.lib\caLab\Lib\softIoc.dbd" -d "C:\Program Files (x86)\National Instruments\LabVIEW 2023\user.lib\caLab\Examples\caLab.db"
这里采用第二种方式简单测试:输入dbl可以看到已定义的变量名
再打开一个cmd对变量读写:
也可以打开例程VI中的函数进行测试:
Write Demo - Looping.vi:
Write Demo - Timed.vi+Read Demo 1.vi
Write Demo.vi+Read Demo 1.vi
参考
CA Lab - LabVIEW (Realtime) + EPICS
EPICS实战(上位机篇):基于LV ZYNQ实现的EPICS通信系统(大物理)