夜光:车载通讯系统详细设计 (三)

本文介绍基于 ADS 协议的通讯技术。ADS 是自动化设备规范,有独立接口、NetId 和端口号。其建立在 TCP/IP 之上,有异步、通知、同步三种通讯方式,本文选异步方式。还以 PLC 中字符串读写程序为例,展示从控制台读取 PLC 字符串的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

夜光序言:

 

 

有没有那么一个人 你凝望过她 千百遍 但没有去相识

有没有那么一个人 你默默念过她 千万回 却没有去问候

有没有那么一个人 你刻意经过她 千万重 可没有去打扰

有没有那么一扇门 你双手扶在门把 千万次 却没有起手

 

 

 

 

 

正文:

基于 ADS 协议的通讯技术 


ADS(Automation Device Specification)是自动化设备规范的简称,为更好的接收对该种设备的数据访问,ADS 协议专门定义了一个独立的接口来完成该项工作。

同时为了方便识别,ADS 设备都拥有独立的 NetId 和端口号,并提供丰富的外围程序接口。

 


基于 ADS 的 TwinCAT 系统构架如图 

ADS 协议建立在 TCP/IP 之上,处于网络通讯协议的应用层,如图所示。 ADS 设备的通讯方式有:异步方式、通知方式、同步方式。本文选择的通讯方式 是异步方式, 这种方式通讯效率更高,实时性更好,ADS 服务器以回调函数形式 将对请求的反馈通知给客户端,故客户端在发送请求后不用一直阻塞在那里。


一次 ADS 通讯请求本机约为 1ms 左右,远程约为 15ms 左右,如 CPU 占用率 过高(例如 50%以上,则可能大于 50ms)。对变量的访问采用变量名方式,通过 获取 TwinCAT ADS 设备中的句柄值来读写相应的变量。 

 

以 PLC 中字符串读写程序为例,首先打开 TwinCAT PLC Control 程序,在变量声明区定义一个字符串型变量“String1”,并且在 String1 中输入“BECKHOFF”, 编写完成后,运行程序。

 

 PLC Control 运行窗口 效果如图 

 


打开 Visio Studio 2008,创建一个控制台项目,并且为项目配置好所需链接库。
 定义句柄变量,设置 AMS 地址变量等参数,编写程序并运行,效果如图

 控制台读取字符串 

 

 

从控制台窗口可以看到,PLC control 中的字符串“BECKHOFF”已经读取到 我们的控制台上。 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值