LabVIEW通过ADS OCX实现与倍福TwinCAT3的通讯测试

时间:2024-05-18 18:10:07

LabVIEW通过ADS实现与倍福TwinCAT3通讯的方法包括:

  • ADS DLL
  • ADS OCX
  • ADS NET

对于变量的读取分为定时轮询方式和事件触发方式。
本文介绍ADS OCX方法,分别介绍定时轮询方式和事件触发方式。

读取状态-定时轮询

192.168.0.105.1.1为NetId的地址(通过右击右下角图标,Router-Change AMS NetId,可以找到NetId的地址)。
端口号默认为851。
首先连接到PLC设备,再通过方法调用来读取。LabVIEW通过ADS OCX实现与倍福TwinCAT3的通讯测试

读取变量-定时轮询

在Twincat3的PLC程序中定义Main.PLCVar,定义为BOOL类型。
192.168.0.105.1.1为NetId的地址(通过右击右下角图标,Router-Change AMS NetId,可以找到NetId的地址)。
端口号默认为851。
首先连接到PLC设备,建立变量的句柄,再通过方法调用来读取。
LabVIEW通过ADS OCX实现与倍福TwinCAT3的通讯测试

写入变量-定时轮询

在Twincat3的PLC程序中定义Main.PLCVar,定义为BOOL类型。
192.168.0.105.1.1为NetId的地址(通过右击右下角图标,Router-Change AMS NetId,可以找到NetId的地址)。
端口号默认为851。
首先连接到PLC设备,建立变量的句柄,再通过方法调用来写入变量。
LabVIEW通过ADS OCX实现与倍福TwinCAT3的通讯测试

读取变量-事件触发

在Twincat3的PLC程序中定义Main.testInt,定义为INT类型。
192.168.0.105.1.1为NetId的地址(通过右击右下角图标,Router-Change AMS NetId,可以找到NetId的地址)。
端口号默认为851。
首先连接到PLC设备,调用方法与事件回调,通过Twincat3的触发即可实现变量的读取。
LabVIEW通过ADS OCX实现与倍福TwinCAT3的通讯测试

读取结构体-事件触发

在Twincat3的PLC程序中定义Main.stTCtoLV,定义为STRUCT类型。
192.168.0.105.1.1为NetId的地址(通过右击右下角图标,Router-Change AMS NetId,可以找到NetId的地址)。
端口号默认为851。
首先连接到PLC设备,调用方法与事件回调,通过Twincat3的触发即可实现变量的读取。
LabVIEW通过ADS OCX实现与倍福TwinCAT3的通讯测试

参考资料:
https://infosys.beckhoff.com/english.php?content=…/content/1033/tcsample_labview/html/tcadsocx_api_labview_setup.htm&id=