自动化设备规范(The Automation Device Specification)描述了一种独立于设备和现场总线的接口,这种接口用来管理ADS设备之间的通信。ADS是TwinCAT通讯协议,它规定了两个ADS设备交互的规范。
我们可以使用C++获取TwinCAT PLC的状态,变量,以及控制TwinCAT PLC的运行与停止。TwinCAT PLC侧不需要编程。下图详细描述了TwinCAT 设备间的通讯协议。倍福公司免费提供了ADS协议的库文件,功能号为TC1000 | TC3.1 ADS,版本3.1.4024.10。该文件可在倍福网站上下载。
(1)在C++项目中添加ADS库文件
所有的ADS库文件安装在TwinCAT默认文件夹'\TwinCAT\AdsAPI\'中。C++使用TcAdsDll中的库文件。
添加文件引用的lib静态库路径:工程->属性->配置属性->链接器->常规->附加库目录:加上lib文件存放目录。
注意:64位的库文件在x64文件中,32位的库文件在lib文件夹中。64位的库文件无法在32位系统中运行,可以Debug,但不能Release。同样地,32位的库文件无法在64位系统中运行,可以Debug,但不能Release。
(2)在C++项目中添加ADS头文件
添加ADS头文件路径:头文件->添加->现有项:选择Include文件中的头文件:TcAdsAPI.h、TcAdsDef.h。
(3)读取DLL版本
DLL版本数据由AdsVersion结构定义如下: