基于CAN总线与CAN以太网网关互连系统的设计

网友投稿 541 2023-04-27

基于CAN总线与CAN以太网网关互连系统的设计

1、 引言

2 、 系统总体设计

CAN总线是一个设备互连总线型控制网络。在CAN总线上可以挂接多达110个设备节点,各设备间可以自主相互通信,实现复杂网络控制系统。但设备信息层无法直接到达信息管理层,要想设备信息进入信息管理层就要通过一种数据网关。

协议转换是异构网络互连的技术关键和难点,协议转换一般可采用分层转换的方法,自低向上逐层进行。目前互连大都是在网际层或网络层展开的,因而必须对互连层以下各层协议逐层向上转换,这种转换方法的依据是协议分层的基本原理:即低层支持高层,高层调用低层,低层断开连接后,高层连接也随之断开,但高层断开连接却不会影响低层。从网络的分层结构上来看,我们设计的互连系统具有如图一所示的分层结构。以太网上运行TCP/IP协议,它具有应用层、传输层、网络层、以太网数据链路层和物理层;CAN总线具有应用层、数据链路层和物理层,其中应用层由用户自己定义,数据链路层和物理层由CAN协议所定义;SX52数据网关具有物理层、数据链路层和应用层,其应用层也就是ETHERNET与CAN的信息数据交换层,SX52微控制器在此层相互解释并转发这两种不同协议的数据。

基于CAN总线与CAN以太网网关互连系统的设计

3 、 CAN协议分析

CAN是遵从OSI模型,按照OSI基准模型,CAN结构划分为两层:数据链路层和物理层。按照IEEE802.2和802.3标准,数据链路层又划分为:

LLC子层提供的功能包括:帧接收滤波、超载通告和恢复管理。其中,超载通告功能是如果接收器内部条件要求延迟下一个LLC数据帧或LLC远程帧,则通过LLC子层开始发送超载帧最多可产生两个超载帧,以延迟下一个数据帧或远程帧。

按照网络的OSI七层模型来看,CAN总线网络完成了最下面两层协议的工作,即物理层和数据链路层,它们由CAN控制器的硬件实现电平转换和帧的封装。在实际应用中,还需要建立自己的上层协议。这里设计了一种简单实用的“命令项+数据项”结构,其完整数据帧结构如图二所示。

4 、 SX52的TCP/IP协议栈的设计

ARP协议可以实现逻辑地址到物理地址的动态映射。以太网接口支持一个唯一的48-bit的物理地址。在SX52中,ARP协议是通过一个“IP地址对应以太网地址”的单登记核实现。当远程主机需要知道它的物理地址时,远程主机会向它发送ARP请求,这时它就会响应这个远程主机的请求,告诉对方自己的物理地址。当应用层需要传输IP数据包时,SX52 ARP协议也可以请求远程目的物理地址。

TCP向应用层提供一种面向连接的、可靠的字节流服务。在面向工业控制上的应用时,可以对复杂的TCP协议做合理的简化,因为CAN网络传输速度较快,数据量小且l0Mpbs的以太网传输一般不会发生阻塞,以太网上的主机也会有足够的能力及时处理通信数据。所以可以固定超时与重传的时间为5s,此外RTL8019AS上有两个1500字节的接收缓冲区,且CAN网络为控制网,信息量小,所以可以固定接受窗口为1400字节。设计中采用一般的TCP服务就可以满足应用,所以可以忽略紧急指针和选项和填充字段的值。通过上述的三点简化,实际上大大简化了TCP协议的实现,因为TCP的超时与重传的时间的确定和窗口大小的控制有着较复杂的算法和实现机制。

5、 创新点总结

本文的创新点是针对传统工业控制自动化现场总线连接方式成本高,开发周期长的不足之处,设计一种单独的CAN以太网网关互连系统,成功地实现以太网和现有CAN总线网的直接数据互联。现场总线通过与因特网、企业内部网相连,使自动控制系统与现场设备成为企业综合自动化系统和信息系统的一个组成部分。系统在开放性、互操作性、现场设备智能化、系统结构、对现场环境适应性等性能方面得到了很大的提高,成功实现两个异类网络的数据通信。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:四合一气体检测仪如何安装,有哪些事项需注意
下一篇:针对RFID系统产生的安全隐患及其相关应对策略分析
相关文章