以太网与CAN总线间网关的设计与实现
- 格式:doc
- 大小:145.50 KB
- 文档页数:4
实现以太网与CAN总线之间的协议转换以太网与CAN总线是两种不同的通信协议,用于不同领域的通信需求。
为了实现以太网与CAN总线之间的协议转换,可以使用网关设备来完成。
下面将从介绍以太网和CAN总线的特点、协议转换的实现原理以及应用实例三个方面来详细阐述。
一、以太网和CAN总线的特点1.以太网:是一种在局域网中广泛应用的通信协议,具有高带宽、高稳定性、广域覆盖等特点。
以太网适用于数据量大、实时性要求低的场景,如互联网、局域网等。
2.CAN总线:是一种多节点通信的串行总线协议,具有高实时性、可靠性、抗干扰性强等特点。
CAN总线适用于数据量小、实时性要求高的场景,如汽车、工业控制等。
二、协议转换的实现原理协议转换的实现原理是通过网关设备来实现的,网关设备一般具备两个接口,一个连接以太网,一个连接CAN总线。
其具体实现原理如下:1.数据转换:网关设备负责将以太网数据报文转换为CAN总线数据帧,或将CAN总线数据帧转换为以太网数据报文。
这一步主要是将两种不同协议间的数据格式进行转换。
2.报文解析:网关设备需要解析以太网数据报文的协议头和CAN总线数据帧的帧格式,以确定数据的含义和传输方式。
3.数据交换:网关设备将解析后的数据通过CAN控制器发送到CAN总线上,或从CAN总线上接收数据并通过以太网接口发送到以太网上。
数据交换保证了两种不同协议下的通信。
三、应用实例以太网与CAN总线的协议转换广泛应用于汽车电子控制单元(ECU)的通信中。
例如,汽车CAN总线上的传感器和执行器通过网关设备将数据传输到以太网上的车载娱乐系统、导航系统等控制单元中。
同时,以太网上的娱乐系统、导航系统也可以通过网关设备将命令和控制信息传输到CAN 总线上的控制单元,实现车辆控制和信息交互。
以太网与CAN总线之间的协议转换的实现,可以实现不同通信协议之间的互联互通,扩展了其应用范围。
网关设备的应用使得以太网和CAN总线在不同场景下的通信更加便捷和灵活。
CAN与以太网数据交换的研究与分析摘要:主要介绍将CAN现场总线以协议中的标准模式接入以太网的方法,实现CAN网络中的数据和以太网中的数据进行简单交换;给出相应的硬件和软件原理以及重点难点说明。
关键词:CAN总线以太网数据交换 TCP/IP协议 BasicCAN模式1 技术背景CAN(Controller Area Network——控制器局域网)是一种由带CAN控制器组成高性能串行数据局域通信网络,是国际上应用最广泛的现场总线之一。
它最早由德国Bosch公司推出,用于汽车内部测量与执行部件之间的数据通信。
其总线规范已被ISO估计标准组织制定为国际标准。
由于其具有多主机、传输距离远(最远为10km)、传输速度快(最快为1Mbps)、抗干扰能力强等诸多优点,所以被认为是最有发展前途的现场总线之一。
CAN协议是建立在国际标准组织的开放系统互连模型基础上的。
1991年9月,Philips Semiconductors制定并发布的CAN技术规范Version2.0为现行最高版本。
其中规定了两种模式:标准模式和扩展模式。
本文主要对标准模式进行介绍。
TCP/IP(Transmission Control Protocol/Internet Protocol——传输控制协议/网络协议)是一个工业标准的协议集,包括IP、TCP、UDP等子协议,保证数据在网络上的正确传输。
TCP/IP协议是现代因特网的基础。
TCP/IP协议为四层模型:应用层、传输层、网络层和数据链路层。
每层都有不同的功能,而且层和层之间在逻辑上是相互独立的。
每层都对应一些子协议,如图1所示。
本文用到的协议包括ARP、IP和TCP等。
2 应用背景CAN总线在很多行业被广泛应用。
由其组成的局域网可以将很多底层测控设备连接起来,最远距离可达10km(在不接中继器的条件下)。
相对其它现场总线,该距离已经是很远了。
但随着以太网的发展,人们希望对底层设备也能进行真正意义上的远程控制。
1 引言can(controller area network)即控制器局域网络,最初是由德国bosch公司为解决汽车监控系统中的自动化系统集成而设计的数字信号通信协议,属于总线式串行通信网络。
由于can总线自身的特点,其应用领域由汽车行业扩展到过程控制、机械制造、机器人和楼宇自动化等领域,被公认为最有发展前景的现场总线之一。
can总线系统网络拓扑结构采用总线式结构,其结构简单、成本低,并且采用无源抽头连接,系统可靠性高。
本设计在保证系统可靠工作和降低成本的条件下,具有通用性、实时性和可扩展性等持点。
2 系统总体方案设计整个can网络由上位机(上位机也是网络节点)和各网络节点组成(见图1)。
上位机采用工控机或通用计算机,它不仅可以使用普通pc机的丰富软件,而且采用了许多保护措施,保证了安全可靠的运行,工控机特别适合于工业控制环境恶劣条件下的使用。
上位机通过can总线适配卡与各网络节点进行信息交换,负责对整个系统进行监控和给下位机发送各种操作控制命令和设定参数。
网络节点由传感器接口、下位机、can控制器和can收发器组成,通过can收发器与总线相连,接收上位机的设置和命令。
传感器接口把采集到的现场信号经过网络节点处理后,由can收发器经由can总线与上位机进行数据交换,上位机对传感器检测到的现场信号做进一步分析、处理或存储,完成系统的在线检测,计算机分析与控制。
本设计can总线传输介质采用双绞线。
图 1 can总线网络系统结构3 can总线智能网络节点硬件设计本文给出以arm7tdmi内核philips公司的lpc2119芯片作为核心构成的智能节点电路设计。
该智能节点的电路原理图如图2所示。
该智能节点的设计在保证系统可靠工作和降低成本的条件下,具有通用性、实时性和可扩展性等特点,下面分别对电路的各部分做进一步的说明。
图2 can总线智能网络点3.1 lpc2119处理器特点lpc2119是philips公司推出的一款高性价比很处理器。
摘要提出了一种基于ARM7微控制器LPC2368的以太网与CAN总线互联网关的设计。
给出了系统硬件框图、CAN通信软件、以太网通信软件和以太网-CAN协议转换软件等部分的程序设计流程图,所设计网关实现方法简单,外扩器件少,可靠性高,已用于某工业现场,实现了以太网与CAN总线的互联,为企业信息网络与控制网络集成提供了一种可行的方法。
关键词:以太网,现场总线,互联网关,LPC2368AbstractPutforwardtheGatewaydesignofEthernet-CANwhitchbasedonARM7single-chipLPC2368.Giventhesystemhard-wareframediagram,programdesignoftheCANcommunication、EthernetcommunicationandEthernet-CANprotocolcon-version.GatewayDesignedasimple,lessforeignexpansiondevices,rationalstructure,highreliabilityandwassuitableforsomeindustryscene,realizeconnectionofEthernetandCAN.Keywords:Ethernet,fiedbus,connectiongateway,LPC2368CAN总线作为一种底层的现场网络,主要应用于企业下层车间和生产现场,而企业管理层大多采用以太网,因此必须将现场总线测控网络通过互联网关与以太网相连并接入因特网以满足这种上下层沟通的需求,本文提出了一种以太网与CAN总线互联网关的设计方案,并实现了以太网(企业管理层)与CAN总线(下层车间和生产现场)的互联。
1以太网—CAN总线互联网关的硬件设计1.1微控制器的选择微控制器是以太网-CAN总线互联网关的核心,对CAN控制器和以太网控制器进行控制,内驻有以太网控制器驱动程序、CAN控制器驱动程序以及TCP/IP协议,完成以太网协议和CAN总线协议转换,实现以太网和CAN总线通信数据透明传输。
一种汽车以太网总线转CAN总线的通信网关及方法随着汽车电子系统的不断发展,车载网络通信已经成为现代汽车中的重要组成部分。
其中,以太网总线和CAN总线是两种常见的汽车网络通信协议。
为了实现不同通信协议之间的互联互通,需要采用一种通信网关,将以太网总线转换为CAN总线。
本文将介绍一种汽车以太网总线转CAN总线的通信网关及方法。
汽车以太网总线转CAN总线的通信网关主要由硬件和软件两部分组成。
硬件部分包括以太网接口模块、CAN总线接口模块和处理器模块;软件部分包括驱动程序和通信协议的实现。
首先,以太网接口模块用于接收和发送以太网数据帧。
它将以太网数据帧解析为数据包,提取出CAN总线通信所需的数据信息,并将其传输给处理器模块。
同时,它也负责将处理器模块发送的数据打包成以太网数据帧,通过以太网总线发送出去。
接下来是CAN总线接口模块,它用于接收和发送CAN总线数据帧。
它接收到的CAN总线数据帧会经过解析,提取出以太网通信所需的数据信息,并将其传输给处理器模块。
而处理器模块发送给它的数据则会被打包成CAN总线数据帧,并通过CAN总线发送出去。
处理器模块是通信网关的核心部件,它主要负责对接收到的以太网数据包和CAN总线数据帧进行分析处理,并将它们进行相应的转换。
在接收到以太网数据包时,处理器模块会根据通信协议将其解析为CAN总线数据信息,并发送给CAN总线接口模块进行发送。
而在接收到CAN总线数据帧时,处理器模块会将其解析为以太网数据包,并发送给以太网接口模块进行发送。
驱动程序是通信网关的重要组成部分,它是硬件和软件之间的桥梁。
驱动程序负责控制硬件模块的工作,比如对以太网接口模块和CAN总线接口模块进行初始化配置,以及对其进行数据的接收和发送控制。
同时,驱动程序也负责实现通信协议的解析和封装,将接收到的数据进行转换处理。
通信协议的实现是汽车以太网总线转CAN总线的通信网关的关键。
它定义了数据的格式和传输规则,保证了以太网和CAN总线之间的正常通信。
CAN总线协议到EtherCAT从站协议的转换网关CAN转ETHERCAT网关CAN设备(支持CANopen)接入EtherCAT网络CAN-EtherCAT网关CAN转ETHERCAT网关can协议和485协议区别CAN转ETHERCAT网关can协议标准CAN转ETHERCAT网关can协议是什么意思CAN转ETHERCAT网关can协议顿格式CAN转ETHERCAT网关can协议分为几种CAN转ETHERCAT网关can协议的特点CAN转ETHERCAT网关can协议和canfd协议CAN转ETHERCAT网关can协议属于哪一层CAN转ETHERCAT网关can协议中的SPNCAN转ETHERCAT网关can协议和homeplugCAN转ETHERCAT网关can协议完全讲解CAN转ETHERCAT网关can协议和485协议区别CAN转ETHERCAT网关can协议顿格式大家好,今天要跟大家分享一款自主研发的通讯网关,YC-ECT-CAN。
这款产品能够将各种CAN总线和ETHERCAT网络连接起来,实现高效的数据传输和通信。
那么,这款通讯网关具体有哪些功能和特点呢?接下来,我们就一起来了解一下。
首先,YC-ECT-CAN通讯网关能够实现CAN总线和ETHERCAT网络的连接。
CAN总线是一种广泛应用于工业自动化领域的通信协议,而ETHERCAT是一种高效的工业现场总线协议,两者的结合能够提高生产效率、降低成本。
其次,YC-ECT-CAN通讯网关能够根据节点号进行读写。
这意味着可以通过ETHERCAT总线对CAN总线上的设备进行读写操作,实现数据的传输和监控。
此外,YC-ECT-CAN通讯网关还支持多种协议转换,如Modbus、Profinet等。
这使得不同通信协议之间的设备可以实现互联互通,从而拓展了通讯网关的应用场景。
技术参数ETHERCAT 技术参数网关做为ETHERCAT 网络的从站,可以连接倍福、欧姆龙、基恩士等厂家的PLC。
摘要:研究了以太网和CAN总线间的互联技术。
通过分析以太网和CAN总线的网络模型,给出了实现以太网和CAN 总线互联的核心设备——Ethernet/CAN网关的模型结构,并在此模型的基础上给出了基于ARM7微处理器的网关硬件设
计方案和软件流程。
关键词: CAN 以太网网关设计
现场总线(Field Bus)在工业控制领域得到了广泛的应用。
而以太网(Ethernet)以其廉价和开放的特点成为最普及的局域网技术,它是构筑互联网的基础。
现场总线通信数据量小,可靠性高。
而以太网通信数据量大,速度快。
10M/100M的以太网目前已经非常成熟。
将以太网作为信息传递的主干网,连接现场总线和其他高级设备的新型网络结构
是工业控制网络的发展趋势。
在这种新的工业控制网络中,以太网不仅是主干网,而且可与现场总线相互交换数据。
所以工业控制网络不仅可以深入到控制现场的各种设备,还可以借助互联网实现对现场设备的远程调试和故障诊断。
要将现场总线接入以太网,关键是设计以太网和现场总线间的网关,从而实现2个网络间的数据传输。
不同的现场总线,因其通信协议不同,需要设计不同的网关。
本文主要讨论目前在现场总线中应用较多的CAN(Control Area Network)总线和以太网间网关(Ethernet/CAN Gateway)的设计。
其网络结构如图1所示。
1 网关的模型
Ethernet/CAN网关连接的是2个通信协议和结构完全不同的网络。
对于Ethernet/CAN网关来说,它的工作实际上是对信息重新封装以使它们能够被Ethernet或CAN网所读取。
为了完成这项任务,网关必须能运行在OSI模型的几个层次上。
下面先讨论OSI和Ethernet以及 CAN的网络模型。
OSI是国际标准化组织(International Standardization Organization,ISO)为实现开放系统互连而建立的模型,其目的是为异种计算机间的互连提供一个共同的基础和标准框架,并为保持相关标准的一致性和兼容性提供共同的参
考。
OSI参考模型如图2所示。
OSI模型共有7层。
每一层的功能都是独立的,而且利用下一层所提供的功能为上一层服务。
物理层是第1层,应用层是第7层。
每层的具体功能和定义可以参阅有关书籍。
在OSI模型中,1~3层为底层,实现传输功能。
网络和终端都具备此功能。
4~7层为高层,实现通信处理,通常用网络终端来实现。
Ethernet和CAN的网络模型都只支持OSI所
定义的7层结构中的一部分,在某些层次上,其定义也有所不同。
Ethernet中没有与OSI模型中的会话层和表示层相对应的层次。
Ethernet网络模型如图3所示。
其中数据链路层的定义和OSI模型有所不同,它由逻辑链路控制(LLC)和介质访问控制(MAC)2个子层组成。
LLC的主要功能是对数据报的封装和拆装。
MAC的主要功能是控制对传输介质的访问。
严格说来,标准CAN总线只支持OSI模型中最低的2层。
和Ethernet一样,在数据链路层也分为逻辑链路控制子层和介质访问控制子层2个部分。
但具体定义和Ethernet中的定义有所不同。
由于CAN总线并没有定义应用层,因此
用户可以自己定义应用层的协议。
对于网关来说,它必须能够读取和发送Ethernet和CAN网上的数据。
因此,它必须具备CAN以及Ethernet所定义的网络层次。
通过对Ethernet和CAN网络模型与OSI模型的对比与分析,可以得到Ethernet/CAN网关的基本模型结构
图如图4所示。
在网关模型中,与Ethernet和CAN网络连接部分的各层的定义与Ethernet和CAN网络模型中所定义的相同。
不同的是在Ethernet应用层的位置,定义了一个管理协议层。
Ethernet和CAN网络之间的信息传递就是在该层实现的。
网关的管理协议层包含了Ethernet应用层和对CAN总线站点的管理。
2 网关的实现
通过前面的讨论,得到了网关的基本模型。
对于它的实现,有2种较常用的方法:一种是采用设计专用集成电路的方法。
这种设计方法的优点是网关的速度快,可靠性高,但设计复杂度高,开发周期长。
另一种方法是采用通用型微处理器并配备一定的外围电路来构造硬件平台。
通过在该平台上所运行的程序来实现网关的功能。
本文采用后一种实现方
式。
根据网关的功能,网关系统主要由3部分组成:CAN总线接口、协议处理单元和Ethernet接口。
网关硬件结构如图5所示。
很明显,协议处理单元是网关硬件的核心,它的主要部分是通用微处理器,主要完成CAN总线到以太网的协议
转换。
因此通用微处理器的性能决定了网关实时性的优劣。
协议处理单元中的通用微处理器在设计中采用ARM公司的ARM7TDMI 32位RISC处理器。
它含有3级流水线,采用单一的32位数据总线传送指令和数据,因此有很优越的性能。
Ethernet接口电路采用台湾Realtek公司生产的以太网控制芯片RTL8019AS来实现。
RTL8019AS本身包含了Ethernet网络模型中最低2层。
而CAN总线接口电路中采用的是应用比较广泛的CAN总线控制芯片SJA1000。
网关硬件框图如图6所示。
其中,为了提高抗干扰性,CAN接口电路中加入了光电隔离电路。
网关运行的程序和相应的参数的设置通过RS232接口电路完成。
网关硬件框图中与网关模型中的CAN总线物理层和数据链路层相对应的是CAN物理接口电路和CAN控制器SJA1000。
网关模型中Ethernet物理层和数据链路层与硬件框图中的以太网控制器相对应。
网关模型中其他部分由ARM处理器件
中所运行的软件来实现。
网关软件的工作流程图如图7所示。
当连接在CAN总线上的现场设备向连接在Ethernet上的监控计算机发送数据时,数据首先通过网关上的CAN总线接口电路送到CAN总线控制芯片SJA1000。
SJA1000向ARM处理器发出中断请求。
如果此时ARM处理器正在执行其他优先级较高的任务,数据就暂时存储在SJA1000的缓存中。
当ARM处理器执行完任务后,响应中断,从SJA1000中将数据取出。
通过管理协议层中所对应的程序,提取需要传送的数据,然后再对该数据分别添加TCP和IP层所需要的信息。
ARM处理器通过并行总线将经过封装的数据发送给以太网控制芯片RTL8019AS。
RTL8019AS自动给这些数据添加以太网物理层和逻辑链路层所需要的相关信息,然后再通过物理接口传送到以太网上。
这时监控计算机就可以通过机器的网卡接收到从CAN总线上的设备所传递的数据。
反之,当监控计算机向CAN总线网中的现场设备发送数据时,它首先通过以太网将数据发送给网关上的以太网控制器RTL8019AS。
同样也是采用中断的方式,ARM处理器响应中断后,通过读取RTL8019AS中的相关寄存器来判定是否收到数据。
对于新收到的数据,将其从RTL8019AS 的数据缓冲区中取出。
在提取其中实际要传送的数据后,再将数据封装成CAN总线能够识别的数据格式,通过CAN总线控制器发送到CAN总线网中相应的现场设备。
以上是对网关工作流程的基本描述。
ARM处理器响应中断后,实际上是分别都调用了CAN和Ethernet通信子程序。
以太网的TCP和IP层所包含的TCP/IP协议是一个非常大的协议族,因受到
网关硬件资源的限制,设计中对TCP/IP协议族进行了简化。
3 结束语
Ethernet/CAN网关是以太网为主干网的新型工业控制网络的核心设备。
本文对该网关的模型进行了讨论,并根据该模型给出了网关的硬件和软件框图。
使用性能更高的处理器或采用专用集成电路设计技术将进一步提高网关的性能。
参考文献
1 郑建彬.以太网和CAN现场总线网间的嵌入式网关设计. 信息技术,2002;(1)
2 邓先成.LAN/Field Bus网关设计.西北工业大学硕士学位论文,2001
3 邬宽明.CAN总线原理和应用系统设计.北京:北京航天航空大学出版社,1996
4 周立功.单片机与TCP/IP综合应用技术.广州周立功单片机发展有限公司,2003
5 王田苗.嵌入式系统设计与实例开发——基于ARM微处理器与μC/OS-Ⅱ实时操作系统.北京:清华大学出版社,2002。