汽车CAN总线通信网络可视化仿真和监控系统设计.docx
《汽车CAN总线通信网络可视化仿真和监控系统设计.docx》由会员分享,可在线阅读,更多相关《汽车CAN总线通信网络可视化仿真和监控系统设计.docx(24页珍藏版)》请在冰豆网上搜索。
![汽车CAN总线通信网络可视化仿真和监控系统设计.docx](https://file1.bdocx.com/fileroot1/2023-2/23/5f8d3cc2-aa80-4bf6-badb-dc4858f89d52/5f8d3cc2-aa80-4bf6-badb-dc4858f89d521.gif)
汽车CAN总线通信网络可视化仿真和监控系统设计
汽车CAN总线通信网络可视化仿真和监控系统设计
摘要:
CAN总线已经成为当今最成功的车载网络标准,被广泛应用于现代汽车控制中,但由于汽车应用环境的复杂性,CAN协议车载网络的安全(容错)性、实时性、可靠性以及带宽资源利用能力至今仍未能满足实际要求与发展需要.本课题就是在该背景之下深入研究了CAN总线通信协议,同时在VC++6。
0环境下开发了CAN总线通信协议的可视化操作试验平台。
该平台能够对CAN总线通信仿真,同时能够实时的监控实际车型的CAN总线通信系统。
此外,仿真平台开放了CAN总线上层应用层协议的制定,能够按照用户的需求,在基于CAN总线通信原则和通信数据格式的条件下来制定应用层协议。
此外,考虑到CAN总线通信数据多,速度快的特点,设计了数据库,能够实时的存储通信数据。
关键词:
CAN总线,VC++6.0,通信网络
第一章绪论
1.1研究背景
CAN总线是种类众多的现场总线的一种,它不但属于一个开放通信网络,同时也可以看做一种全分布控制系统.它作为智能设备的联系桥梁,把挂接在总线上、作为网络节点的智能设备相互连接,最终形成一个庞大的网络系统,同时更进一步构建自动化系统,用来达到都基本控制、补偿计算、参数修改、报警、监控、优化及控管一体化的综合的目的[1][2][3][4].其规模属于局域网、总线型结构,简单但能满足工业控制的需要。
CAN总线传输的信息帧短小,可靠性高[3][6]。
目前,高速发展的CAN总线已经形成了国际标准,被国际上众多专家认为几种最有前途的现场总线之一[5][6][7][9][11]。
汽车电子装置更新速度如此之快,通信方式也由原来的点对点变为网络化,这就要求建立一个完整的测试平台,对其复杂功能和参数进行测试,确保电子设备正常工作。
CAN现场总线由于其各方面的优越性能,可以有效保证这些要求.CAN总线整体性能虽然优于其它总线,但在网络负载较高情况下低优先级信息帧的发送时延过长甚至无法发送,不仅影响整个通信网络的实时性,在严重的情况下甚至会发生不可预料的事故。
在比较复杂的环境下(如高温、电磁干扰),都会对嵌有CAN装置设备的可靠性产生一定影响。
1.2研究意义
本问的目的是希望开发出一套基于CAN总线通信的可视化监控及仿真的试验平台。
该可视化仿真平台能够模拟CAN总线通信的基本原理和方法,有些部分甚至能够独立运行,同时可以让用户按照CAI总线通信的标准制订客户的应用层协议来观察其通信得质量。
此外,通过所设计之后的硬件接口和实车系统进行连接,监控试验平台能够对其进行测试及监控,进而得到真车通信系统上层通信协议格式,随后深入分析该格式的优势。
此外,平台能够对通信数据进行显示、统计、处理以及分析。
经过了上述的仿真和监控,帮助我们研究一些国外先进车型的CAN总线技术特长和优点.
1.3国内外研究现状
CAN总线自诞生之初,中间历经了上世纪90年代的飞速发展[1—3],已经制定了在世界范围内被广泛接受的ISO国际标准(IS011898)以及CAN技术规范(CAN2。
0)。
根据国际CAN用户和制造商非营利组织CiA(CAN inAutomation)于上世纪90年代初的统计:
在1998年CAN节点销售量已经达到9700万个,其中80%安装在欧洲,在这些CAN节点中80%应用在汽车工业,剩下20%则应用于工业控制系统和嵌入式网络,如监测系统、工业控制系统以及机器人控制系统等。
令人注意的是CAN总线也应用在欧洲高能物理项目CERN之中。
在21世纪之初,CAN总线技术发展迅速,在除了继续应用于传统的汽车应用领域,更开始逐渐应用在其他新的领域,如:
航空航天、医疗器械、自动化控制、航海和国防军事等多种领域.经历了多年的发展,CAN总线已经被全世界多家权威研究机构和大型公司认为是今后最有前途的现场总线之一。
我国科技创新的突飞猛和进经济的高速发展,CAN总线作为我国新兴的科学技术手段,必将会在我国工业、农业以及生活等众多领域发挥出巨大的作用和潜力,为推动我国的现代化建设做出应有的贡献。
现在,国际上流行的总线主要有如下几种:
基金会现场总线、ProfiBus、ControlNet和CAN总线等。
虽然都是总线,不过每一种总线技术所具有的特点都有着不同,而他们主要的应用的领域也都没有重叠与交叉。
(1) 基金会现场总线(Foundation Fieldbus)
国际著名的现场总线基金会[22]是被国际多家研究机构和知名公司所认可的唯一一个既不附属与某厂家,同时还是非商业化的国际标准化组织。
它的前身是以美国Fisher-Rosemount公司为首联合了ABB、横河、Foxboro等80家公司一起制定的ISP协议.基金会现场总线选择了ISO的开放互联系统OSI的简化模型(1、2、7层),即数据链路层、物理层、用户层和应用层。
信号的发射方式是由无线和光纤来发射,且传输的协议协议符合流行的IEC1158—2标准。
FF的传输信号采用曼彻斯特编码,每段最多允许240个节点,段数目最多可达65000个,最大允许报文可达128个比特组。
(2)Profibus
ProfiBus有着比较强烈的地域特性,是以欧洲用户和厂家为主而研发的特殊领域的现场总线系统.它是建立在德国标准(DIN19245)以及欧洲标准(EN50170)基础上的现场总线标准[27]。
ProfiBus是一种多主多从的令牌网络,目前它可提供三种模式,Profibus是由Profisbus-DP、Profibus—FMS、Profibus—PA系列组成。
一般可以用在过程自动化方面,由于是属于低速总线,因此它可以提供总线供电以及本质安全。
网络中由耦合器连接和耦合两个相异的网段,耦合器还可发挥出防爆和供电的作用。
德国国家标准DIN19245 和欧洲标准EN50170的现场总线标准[28][29],用于物料输送机械、大型装配和过程控制,并由ProfiBus.DP,ProfiBus.FMS,ProfiBus.PA组成了ProfiBus系列。
Profisbus-DP型一般会用来分散的外部设备之间高速的数据的传输,非常适于自动化加工领域等方面的应用。
Profibus—FMS多数都会用在一般的自动化控制,因其支持多主处理,因此非常适用于纺织领域,同时在低压开关、可编程控制器和楼宇自动化等也有着许多的应用.
ProfiBus支持多主多从式混合系统、纯主站式系统、主从式系统等几种传输的方式。
ProfiBus的传输速率一般在 9.6k~12Mbit/s左右,其最大传输距离在9.6kbit/s 的条件下为1200m,在12Mbit/s的条件下为200m。
也支持使用中继器延长至10km,以光缆或双绞线做为传输介质,可允许的最多连接数为127个站点。
(3)DeviceNet
DeviceNet是一种低成本的通信连接,也是一种简单的网络解决方案.有着开放的网络标准。
DeviceNet 是具有的直接互连性,不仅改善了设备间的通信,也提供了非常重要的设备间的功能。
基于CAN 技术,DeivceNet的传输速率达到了125~500kbit/s,每一个网络最大的节点数是64.DeivceNet的通信方式为:
客户/生产者(Consumer /Porducer),选择的是信息发送多信道广播的方法。
在目前,现场总线在中国等一些发展中国家以及欧美等发达国家发展非常迅速,而且已经成功应用在很多领域,在全球很多地区,有许多的大专院校以及研究机构都在利用拥有的资源以及他们本身所学的知识,想尽办法来帮助那些普通用户加深对现场总线技术的认识和理解[27—33]。
国内外的很多仪表制造商,都把对现场总线技术的发展以及产品作为重点来研究,这种策略是基于他们目前对国际时尚的需求和现场技术的发展趋势,是非常有远见的.
在国内的汽车行业中,如上海帕萨特B5、国产一汽宝来(BORA)、一汽奥迪A6等很多汽车厂商都开始使用CAN总线系统。
不仅在汽车业,CAN总线系统也已成功应用在如火车、船舶、煤矿等其他几种交通工具中。
煤炭科学研究总院抚顺分院曾经将CAN总线运用到了KJF-1型煤矿火灾监控系统中[34][35]。
由于KJF—1型煤矿火灾监控系统使用了CAN总线,不仅节点间实现了直接数据通讯,具备了无主通讯功能,而且通讯速率也远大于原有的监控系统。
CAN总线所独有的诸多优势,使CAN成为串行总线的领头羊,早在上世纪1999年,6千万个CAN控制器就已经在各个领域中表现颇为出色,显示出了很好的前景,2000年,超过1亿个CAN器件已经开始大规模销售。
现如今,CAN总线已经开始应用在一些过去被认为根本不会被使用的领域,比如家庭消费需要CAN总线的实时监控以及娱乐方便等,而在一些涉密单位,更加需要一些结合更高层协议应用的特殊保全系统,它们不同于早先简单的安保系统,这样就要釆用有着更高性能的CAN总线。
目前已经有一些基于CAN的保安系统经通过了权威认证,权威机构包括了TUV(德国安全标准权威)以及BIA(即德国专业委员),这足以说明CAN总线的优越性。
在全球范围内Open—SafetyCAN解决方案有幸获得了他们的第一个许可认证。
在此之后,很多其他方案开始逐步扩大CAN的应用范围。
比如DeviceNet-Safety[36][42][43],不仅要CAN应用在陆地上,更要向海空方面进行发展。
全球分级协会的领导正在设计方案要在海事运输中实现CANopen固件的使用。
总的说来,CAN总线有着很强大的发展潜力、市场前景和生命力。
作为在国内外正处于发展鼎盛时期的技术手段,其技术应用水平在近十几年中以极高的速度在发展,带动了我国工业控制的自动化水平.在现代工业技术的发展和我国经济改革不断深入的背景下,在巨大的全球市场中,CAN总线必然以其独特之处而得到更加广泛的应用。
第二章CAN总线技术原理及特点
2.1现场总线的原理
CAN是一个多主的总线网络,网络上的各节点都有权向其它的节点发送信息, 通信介质可以是光纤、同轴电缆或双绞线,其主要的特点为:
通信速率/距离为5kbps/10km~1Mbps/ 40m, 网络的节点数可以达到110个,每以个节点都可以主动的进行传输, 通信介质可以是光纤、同轴电缆或双绞线;采取点对点、全局广播发送接受数据;可以实现全分布式的多机系统,并且没有主从机之分,每点都可以主动发送报文,能够方便地构成多机备份系统;使用了非破坏性总线优先级仲裁技术时, 在两个节点同时向网上发送信息的时候,优先级低的那些节点将会主动的停止发送数据;支持4种报文帧即远程帧、数据帧、超载帧、出错帧,选择了短帧结构,受干扰概率低、传送时间短; 选择了CRC 校验及其他校验措施, 可以达到极低的信息出错率;具备了自动关闭的功能,当节点错误严重时,自动切断与总线的联系,以不影响系统的工作。
2.2现场总线的特点
现场总线是连接智能现场设备和其他自动化系统的双向全数字的多站通信系统,也就是说,即现场总线的网络节点是具有数字化与智能化特征的控制设备与监测系统,这些以分散的设备通过总线与系统相连接实现双向的信息交互,共同协作完成自动控制,网络管理和分级管理。
现场总线技术为现场控制设备和高级控制或应用系统之间的信息交互提供了必备的通讯网络,解决了工业现场的智能化仪器仪表、控制器、执行部件等现场设备间的数字通信问题[2].现场总线技术的主要应用领域包括:
机械制造业、交通运输业、冶金制造业与能源行业等。
现场总线系统的技术基础是测量控制仪表具备数字计算和数字通讯能力[3]。
伴随着微电子技术与集成电路技术的发展,现在数字测量控制仪表都具有专用的微处理器与通讯接口,多个测量控制仪表之间采用双绞线作为总线,进行简单连接后即可形成基本的网络系统。
系统内部的各组成单元按照规范公开的通信协议进行数字通信,初步形成了适合现场环境与监控领域的自动化网络控制系统,通过现场总线控制中心系统对位于现场的数字测量控制仪表设备之间进行远程控制。
现场总线系统在技术上具有以下特点:
(1)功能的自治性
自治性是指现场设备可在脱离控制设备或控制系统的情况下,独自完成基本的自动控制功能,由于设备自身具有一定的计算能力,所以能够将传感信息进行自动采集并进行补偿计算,通过总线通信接口将工程信息以数字信号的形式发送给控制系统。
(2)结构的分散性
分散性是指现场总线的系统建构具有分布式的特点,构成现场总线的是一种全分散的控制系统结构,这种结构提高了整体的可靠性,局部因素不会影响整体系统的运行,并且在异常状态系统可进行自诊断。
(3) 环境的适应性
环境的适应性是指现场总线所支持的通讯介质多样,可适应不同环境下对通讯技术的要求,一般来讲,绝大多数现场总线支持双绞线与光纤两种通讯介质,此外,部分现场总线设备还支持、外线,射频信号以及电力线等,现场总线可根据实施环境的不同而选择不同的通讯介质进行通讯。
(4)安装容易
现场总线由其独特的模块化结构,体积小, 节省空间;同时属于标准导轨安装,可以做到即插即用,非常方便。
(5)防护级别高
现场总线的防护箱可达IP65防护等级:
为适应工业现场工业总线系统的发展,例如化工业、食品业等系统防护需求,以及冶金、化工等工矿企业恶劣的现场环境,提供了具有IP65 防护等级的产品。
2.3现场总线数据处理系统
从系统组成方面来看,现有的现场总线控制系统是由仪器仪表,总线传输设备与软件系统共同组成,其中软件系统按照系统功能,可划分为测量软件系统、控制软件系统、设备管理软件系统,数据处理软件系统四个组成部分[11]。
下面针对软件系统的功能进行概要介绍:
(1)数据处理软件系统与企业办公网络不同,工业总线是一个相对独立封闭的自动化工控网络,要实现自动化控制网与计算机之间的信息交互,就需要一套数据处理系统负责自动化控制网与计算机之间的双向信息交互[12]。
现场总线控制系统中的数据处理系统,通常与控制系统部署在一起,在工业总线网络运行过程中,通过网络技术与组态技术对系统实时采集数据、进行数据处理与计算。
(2)控制软件系统:
控制软件系统是现场总线控制系统中的最重要的软件系统之一,一套完整的控制软件系统通常由组态软件,仿真软件和监控软件共同组成[13]。
系统操作员通过人机软件接口对系统进行配置,通过组态软件完成对设备进行功能参数定义,设置各个功能模块的连接,同时优化网络结构与控制逻辑。
当系统组态配置完成之后,系统使用人员即可通过监控软件,实时监视现场总线的工作情况,系统还提供了查询统计,报表输出,报警提示等其他监测软件所必备的常用功能。
(3)测量软件系统:
伴随着智能测量仪表的出现,数字式仪表已经具有数据采集与计算能力,通过总线网络将采集数据发送到测量软件系统。
测量软件系统具有多参数高性能的技术特点,并且能够实时显示仪表的状态信息,例如仪表电压,电量,阀门通断等[13].系统操作员可通过测量软件随时观测各设备的工作状态与现场参数变化,极大的方便了生产流程的调度与控制。
(4)设备管理软件系统:
设备管理软件系统主要是针对设备的信息进行统一管理,其功能包括设备的厂商信息,出场日期,设备诊断信息,运行状态记录,设备维护与更换信息等。
该软件的重要作用是通过可靠性智能预测分析对设备进行预防性维护,降低了设备运行风险,采用了可预测性的管理维护替代了被动的管理模式。
2.4关键技术
(1)网络通信数据并发处理
本系统与现场总线或其他类型的现场总线系统之间是一对多的双向通信关系,在多个现场总线系统同时向本系统发送业务数据时,系统会面临数据并发处理的问题。
所以,本系统在保障系统性能的前提下,要充分考虑网络通信数据的并发处理问题,包括数据的接收,缓存,解析和上行处理通知等.
(2)多版本异构数据的并行解析
当数据进入本系统之后,本系统将开始对数据的处理,包括过虑,校验,解析,二次封装,分发等一系列处理步骤,其中数据的解析是数据处理的重点。
本系统不仅仅要面对的是多个网络通信的并发访问问题,而且还要面临多版本异构数据解析的问题。
由于现场总线领域缺少统一的协议规范,即使是同一厂家的产品,软件版本的升级必然会产生数据格式异构的问题.所以,本系统要有一套可靠的机制来保证多版本异构数据的并行解析。
(3) 针对多应用系统的数据支撑
本系统的一项重要功能是实现了对多个应用系统的数据支撑,与网络通信并发访问的情况一样,本系统与应用系统之间也是一对多的关系。
本系统根据应用系统进行数据订阅的策略和上行数据类别的不同能够实现向多个应用系统数据的分发。
综上所述,系统目标的设定是源于对现有产品的实际使用需要,本系统的关键是实现了网联网网络数据向应用数据的转化,同时,为了便于系统未来的扩展性和兼容性,我们提高了系统的技术指标,并且增强了产品功能,以上核心系统目标明确了产品方案和产品设计的目的性。
第三章硬件描述
3.1系统分析
适用于汽车总线的通用数据处理系统的主要作用是用于汽车总线系统与其它应用系统之间的双向通讯服务。
从系统的层次结构角度来看,本系统即是连接汽车总线与外部应用的中间系统,也是总线系统数据处理的必备条件。
作为具有数据处理功能的服务系统,本系统对于总线网络以及应用系统都是必不可少的数据支撑[15].系统的应用领域主要为工业与制造业生产现场的设备通信控制与网络管理,对于系统的通信性能,容错能力,解析规则,外部接口,数据格式等都具备非常高的要求。
按照总线控制系统的数据采集-〉数据处理—>应用服务的三层解决方案,本系统的分析工作将分别从通信服务,系统内部功能和应用服务三项内容进行阐述。
汽车总线网络通信服务汽车总线网络通信服务实现了本系统与汽车总线网络的通信。
分析要点包括如下内容:
(1)通信服务需求
首先,通信服务支持以太网口数据接口。
对于以太网接口,系统要求能够实现多设备并发接入,可以同时最多打开多个以太网端口,以服务的形式进行网络通信[12].系统启动后,应按照系统的通信配置项开启以太网端口,等待网络通信的接入,而每个端口又是异步的处理方式,这样在打开多个端口的情况下可支持大于多个设备的并发接入。
再次,本系统与设备之间的以太网通信方式应采用长连接的通信方式.数据服务接入的瓶颈不在于数据的接收,处理或响应,而在于数据连接的建立,如果采用短连接的方式,周期更长,并且需要频繁的身份认证,数据处理的实时性将极为低下;最后,本系统与设备之间的这种长连接方式,还将提高本系统向总线网络的控制信息的快速下发.
(2)功能性需求
首先,接收的消息数据缓存在消息队列中,并在文件中缓存,数据解析成功后要清除原始数据,只有数据碎片和非法数据被保留.其次,对于接入的连接要进行数据回复,保证发送超时的情况下,设备重新接,重发数据。
最后,为了保证连接的有效性,设备与系统之间采用发送/应答心跳帧的方式保持通讯链路的连接状态。
系统内部功能
(1) 功能性需求
首先,本系统的重要功能之一是解决多数据版本兼容问题。
本系统所处理的数据内容多样,总线协议格式异构,为了满足协议版本兼容性的需求,我们将采用如下方式:
1.本系统支持版本库的管理;2。
上传的网络数据符合标准的总线协议,既在数据前封装制定格式的数据头(包括厂家编号,协议编号和协议版本等)3.标准的 DDL,对于协议的识别,解析以及数据存储均采用标准的 DDL执行。
其次,与协议解析相对应的是下行数据也要采用标准版本库的处理方式;系统实现DDL注册机功能,用于校验DDL的合法性和完整性。
最后,系统还应支持线程池与数据库连接池的管理.由于本系统数据的多样性,所以不能使用数据工厂模式进行数据的生成与写入,由标准的DDL引用数据库链接进行数据的写入与读取.
(2)数据管理需求
首先,系统要能实现数据日清理,对于系统工作所使用的数据库要每日进行清理和备份,提高数据表的查询能力。
其次,为了便于数据维护,系统应实现数据库的备份与恢复功能.应用服务
功能性需求
首先,本系统与应用系统间的网络通信格式支持TCP/IP数据服务与Webservice服务两种通信方式。
在数据通信期间,针对WebService我们采用SOAP协议,针对 TCP/IP我们使用XML文档或具备XML格式的数据帧进行数据传输,无论采用哪种方式,我们所发送的数据内容和格式是规范的,便于系统自身的数据生成,更便于应用系统的解析,对后续应用系统的升级不存在任何数据格式可变因素影响。
其次,应用系统与本系统之间采用订阅/发布与请求/应答两种工作模式:
在订阅/发布模式中,应用本系统通过数据服务层向数据本系统进行数据订阅,数据本系统根据已订阅的规则实时地向应用本系统发布数据消息;在请求/应答模式中,应用本系统通过数据服务层向数据本系统发起服务请求,数据本系统根据当前请求的上下文信息进行相应的服务应答.最后,本系统要进行应用系统的注册管理。
系统要为应用提供可接入的服务端口,应用系统通过服务端口进行服务信息注册,信息注册的内容包括应用系统的名称,服务类型,服务地址,数据订阅类别等.
3.2硬件电路设计
为了与CAN总线进行连接,还需要使用控制接口芯片、CAN协议处理。
本设计中所使用的是TJA1050和飞思卡尔的MCS912DJ644微处理器满足了和CAN总线连接的需求。
MASCAN12的CAN总线协议处理芯片被集成在了MCS912DJ644的内部,有5个FIFO接收缓冲器和3个发送缓存器。
CAN控制器被集成于片内的好处就在于电路有着很强的抗干扰能力;在开发的过程当中,操作CAN控制器非常方便;节省了PCB板的面积、电路简单;能够缩短硬件的开发周期;CPU在负载CAN控制器的时候负载比较低,一般为独立CAN的一半。
协议处理芯片仅仅处理CAN总线协议数据,但依然需要具体的硬件接口和硬件CAN总线进行连接,发送、接收CAN总线数据帧,论文采用TJA1050作为CAN总线收发芯片。
3.2。
1USB接口电路
通过连接上位机的USB总线,USB接口电路会接收USB数据,该数据来自上位机。
USB接口转发数据至微处理器,数据也通过USB总线将微处理器发出来的发送至主机。
通过USB控制器EZ-USBFXZ把主机的USB信号转化为并行信号,将其传送至微控制器MCS912DJ644,并能够接收微控制器MCS912DJ644传来的信号转换后发送至主机。
电路模块如图3—1所示:
图3-1 USB接口电路图
通过CAN总线收发器TJA1050,MC9S12DJ64内部的MSCAN12模块接收CAN总线上的数据帧,USB控制器EZ—USBFX2会接收经过MC9S12DJ64处理后转化成的信号。
MC9S12DJ64接收来自USB数据传输请求,并经过MSCAN12通过总线收发器TJA1050将数据帧发送到CAN总线上.电路图如图3-2所示.
图3—2CAN接口电路
MC9S12DJ64中MSCAN12的TXCAN、RXCAN管脚分别和CAN总线收发器TJA1050的TXD、RXD管脚进行连接。
为了使抗干扰能力得到提高,管脚利用光耦隔离器6N137进行互相连接,这样就可以实现总线上各个CAN节点间之间的电气隔离。
为了使CAN通讯的可靠性得到提升,通常终端匹配电阻要加在CAN总线网络的两个端点之间。
传输电缆的阻抗特性决定了终端匹配电阻的大小。
3.2。
2电平转换电路
由于USB控制器EZ一USBFX的I/O电平为3.3V,而微处理器MC9S12DJ64的I/O电平值是5V,因此必须对此加以电平转换。
SN74ALVC164245是5V一3。
3V电平转换的芯片,目的是为了控制微处理器USB控制器EZ一USBFX与MCS912DJ644之间电平转换以及数据的流向.电路图如3-3所示。
图3—3电平转换电路
3.2。
3整体电路设计
图3-4 整体电路设计