程序员开发实例大全宝库

网站首页 > 编程文章 正文

工业4.0 下TwinCAT3 HMI上位机与PLC通信测试(ADS通信)

zazugpt 2024-08-25 17:14:02 编程文章 18 ℃ 0 评论

Beckhoff ADS (Automation DeviceSpecification)提供一个应用程序之间互相通信的接口,在TW3系统中,TwinCAT PLC,TwinCAT NC等被设计成虚拟的自动化设备,类似于实际的物理设备与设备之间通过基于TCP协议的路由来交换信息,参考下面的图示

ADS设备最重要的两个属性就是端口号和AdsAmsNetId

? AdsPortNr 指定通信的虚拟设备(ADS server),比如PLC,NC

? AdsAmsNetId 指定ADS路由器,是TCP IP地址的扩展

ADS 设备之间的通讯有多种方式,不同方式有不同的特点。

1.一般的ADS 通讯(General ADS Services)

- 异步方式(Asynchronous)

ADS 客户端向ADS 服务器发送ADS 请求,同时客户端继续自己的工作。ADS 服务器处理请求后,把响应以Call-back 函数方式发给客户端。

- 通知方式(Notification)

ADS 客户端向ADS 服务器发送ADS 请求,ADS 服务器以Call-back 函数的方式不断向客户端发送响应,直到客户端取消该请求。PLC变量不更新,就不会向客户端相应,类似于OPC通信的订阅。

这两种通讯方式的效率高,但需求复杂的客户端程序。

优点:不会造成系统堵塞

缺点:不能确保每次请求都有返回

2.特殊的ADS 通讯(Specific ADS Services)

TwinCATADS 设备和Windows应用程序(例如VB、VC 应用程序等)之间的通讯除了可以采用一般的ADS 通讯方式外,还可以采用特殊的通讯方式,即同步通讯方式。

- 同步方式(Synchronous)

ADS 客户端向ADS 服务器发送ADS 请求,在通讯过程中客户端程序停止执行,直到获得ADS 服务器返回的响应。

这种通讯方式不需求复杂的客户端程序,但其轮循的通讯方式给系统带来比较大的负载,因此通讯效率较低。

优点:能即时返回结果

缺点:如果通讯故障会造成系统堵塞

TwinCAT ADS访问变量有两种方式:

1.地址方式

一个PLC变量的地址由两部分组成:GroupIndex和OffsetIndex:

GroupIndex一般用于区别寄存器类型,在TwinCAT ADS设备中为常量,具体内容可以参考Information System(后附常用的GroupIndex值)。

OffsetIndex为变量的偏移地址,在PLC中为该变量的地址。

2.变量名方式

在TwinCAT ADS设备中每个变量都有一个句柄(Handle)。

适用变量名访问变量首先需要得到该变量的句柄。(不同的高级语言方式略有不同)

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表