一杯清酒邀明月
天下本无事,庸人扰之而烦耳。
posts - 3121,comments - 209,views - 578万

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设备,再通过方法调用来读取。

读取变量-定时轮询-地址方式
在Twincat3的PLC程序中定义Main.PLCVar地址为PLCVar AT %MX0.0 : BOOL。
192.168.0.105.1.1为NetId的地址(通过右击右下角图标,Router-Change AMS NetId,可以找到NetId的地址)。
端口号默认为851。
首先连接到PLC设备,输入IndexGroup和IndexOffset。

 IndexGroup如下表:

 IndexOffset如下图寻找

读取变量-定时轮询-变量名方式
在Twincat3的PLC程序中定义Main.PLCVar,定义为BOOL类型。
192.168.0.105.1.1为NetId的地址(通过右击右下角图标,Router-Change AMS NetId,可以找到NetId的地址)。
端口号默认为851。
首先连接到PLC设备,建立变量的句柄,再通过方法调用来读取。

写入变量-定时轮询-变量名方式
在Twincat3的PLC程序中定义Main.PLCVar,定义为BOOL类型。
192.168.0.105.1.1为NetId的地址(通过右击右下角图标,Router-Change AMS NetId,可以找到NetId的地址)。
端口号默认为851。
首先连接到PLC设备,建立变量的句柄,再通过方法调用来写入变量。

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

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

 

posted on   一杯清酒邀明月  阅读(774)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
历史上的今天:
2022-08-04 Qt 生成dump文件及windbg调试(进阶版)
2022-08-04 Windows下的Qt编译器 - MinGW和MSVC的区别
2022-08-04 Qt MSVC与MinGW的区别
2022-08-04 Qt 建立带有子项目的项目,以及子项目之间的调用
2021-08-04 使用C#调用C++类库
2021-08-04 C# IntPtr类型
2021-08-04 C# 调用C++ dll string类型返回
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示