重庆邮电大学硕士学位论文基于ISO15765的车载CAN网络上位机诊断软件设计姓名:姚燕申请学位级别:硕士专业:控制理论与控制工程指导教师:李锐;程安宇20110610
重庆邮电人学硕士论文摘要摘要随着车载CAN(ControllerAreaNetwork)网络技术的发展与广泛应用,车载CAN网络国际诊断标准ISOl5765随之发布。但由于协议的新颖性与国外对此相关知识产权的保护,使得国内在此方面的技术研究相对薄弱,诊断工具主要是依靠国外高成本的设备。因此,研究设计基于国际诊断标准的具有自主知识产权的低成本CAN网络诊断工具具有重要意义。论文以某车型的网络结构与支持诊断的网络节点为被诊断对象,在对IS015765体系结构进行深入研究的基础上,通过VC软件平台与USBCANII硬件采集卡设计低成本的车载CAN网络诊断上位机。论文的具体工作如下:(1)在研究车载CAN网络诊断协议体系结构的基础上,针对某车型的车载网络结构,提出了网络诊断的结构及诊断的功能需求,将诊断上位机分为相对独立的常规诊断模块(无下载功能)和下载诊断模块进行设计。(2)在深入理解诊断协议的基础上,实现了应用层5类诊断服务的设计。针对网络层的数据传输,设计符合ISOl5765.2的数据封装算法,实现网络层的数据传输。(3)在实现应用层协议与网络层的数据传输的基础上,针对安全访问服务的实现过程,设计安全访问算法并建立安全算法动态链接库,利用VC软件平台与USBCANII硬件采集卡,设计车载CAN网络常规诊断模块的低成本诊断上位机。(4)在深入研究基于IS015765.3的下载诊断流程的基础上,设计S19文件处理算法对S19文件进行处理,实现基于CAN网络诊断协议的在线下载流程。以USBCSNII为硬件下载器,利用VC软件平台设计在线下载上位机软件,来实现程序基于车载CAN网络的在线下载。(5)搭建测试平台,结合CANoe对所开发的诊断上位机进行测试,包括常规诊断上位机的测试以及下载功能的测试。通过实际测试,验证所设计的低成本诊断上位机可实现与车载CAN网络进行基于IS015765的诊断通信;并可实现程序通过CAN网络的在线下载;从而验证了所设计诊断上位机的可行性。关键词:车载网络,CAN,IS015765,诊断,测试
AbstractWiththedevelopmentandwideuseofin.VehicleCAN(ControllerAreaNetwork)networktechnology,completein-vehicleCANnetworkinternationaldiagnosticspecificationhasbeenpublished.However,becauseofthenoveltyofthespecificationandtheprotectionofintellectualpropertyrightsofforeigncountry,ourcountryisrelativelyweakonthistechnique,moreover,diagnostictoolismainlydependentonhigh·costforeignequipment.Therefore,thestudyonCANnetworkdiagnostictoolbasedonISO15765withindependentintellectualpropertyrightsissignificant.Inthispaper,diagnosticstructureofcertaincarandnetworknodeswhichcanbediagnosticiSchosenasthediagnosticobject.AftertheanalysisanddeepstudyofISO15765architecture,lowcostdiagnosticuppercomputerofCANnetworkisdesignedbyVCsoftwareandUSBCANIIhardwareacquisitioncard.Themaincontributionsofdissertationincludethefollowing:(1)Basingontheresearchondiagnosticprotocolarchitectureofin.vehicleCANnetwork.thestructureofin.vehiclenetworkandthediagnosticfunctionneedsareputforwardforacertainvehiclemodel.Thediagnosticuppercomputerdesignisdividedintorelativelyindependentofordinarydiagnosticmodule(withoutdownloadfunction)anddownloaddiagnosticmodule.(2)Themajor5kindsofdiagnosticservicesofapplicationlayerarerealizedbasedondeepunderstandingofdiagnosticprotoc01.Forthenetworklayerdatatransmission,datapackingalgorithmwhichmeettheISO15765—2isdesignedtOachievethenetworklayerdatapackagetransmission.(3)Basingontherealizationoftheapplication—layerprotocolandthenetworklayerdatatransmissionalgorithm.Forthesafetyaccessrealization,safetyalgorithmisdesignedandDLLiscreated.Low-costCANnetworkdiagnosticuppercomputerofordinarydiagnosismoduleisdesignedbyVCsoftwareplatformandUSBCANIIhardwareacquisitioncard.(4)TheS19fileprocessingalgorithmisdesignedtorealizeprogramon.1inedownloadthroughCANnetworkdiagnosticspecification,whichisII
重庆邮电大学硕十论文AbstractbasedonIS015765—3downloadprocess.Uppercomputerofon—linedownloadisdesignedbyVCsoftwareplatformandUSBCANIIhardware,bywhichprogramcanbedownloadedon—linethroughCANnetwork.(5)TestplatformisbuilttotestthediagnosticuppercomputercombinedwithCANoe.Thetestincludesordinarydiagnosticmoduletestanddownloadfunctiontest.TestresultsshowthatdiagnosticuppercomputercancommunicatewithCANnetworkthroughIS015765,andS19filecanbedownloadedon-linethroughCANsuccessfully.Thefeasibilityofthedesigneddiagnosticuppercomputerisvalidated.。Keywords:in—vehiclenetwork,CAN,ISO15765,diagnosis,testIIl
重庆邮电大学硕十论文第一章绪论第一章绪论1.1课题研究的背景与意义CAN网络技术起源于欧洲,最早运用于汽车的电子通讯系统上,专门装备高档车型,被公认为现代B级、C级轿车和高技术含量代表的标志之一【11。它具有极强的抗干扰和纠错能力,这项技术的最大优点是减少了线束的数量和控制器接口的引脚数,能够使多个控制器和各类型的传感器之间的数据通信联系起来,使整车线束布置更加紧凑。CAN网络由于其非破坏性的网络仲裁机制、较高的通信速率和灵活可靠的通信方式乜1,在车载网络领域广受青睐,CAN网络可以更简单、迅速地实现汽车控制、通信、在线诊断以及在线编程。由于其综合的优势,目前,在多种车用总线中,CAN总线成为应用最广泛的总线。由于车载CAN总线的广泛应用,车载CAN网络的诊断技术亦显得尤为重要。由于诊断系统独立于车载CAN网络,这使得系统的开发成本增加,内部网络变得复杂。为解决上述问题,欧洲汽车厂商推出一种基于CAN总线的诊断系统通信标准IS015765,它可满足E.OBD(European.OnBoardDiagnosis)的系统要求,IS015765以IS014229.1定义的服务为基础,规定了基于CAN总线的诊断服务(UDSonCAN),包括网络管理、网络定时、应用层定时等详细内容,使得该协议的适用性和可操作性更强,并与IS014230应用层的服务和参数完全兼容pJ。基于IS015765的车载网络诊断不仅可以读取故障码,还能实现车载网络ECU(ElectronicControlUnit)的在线升级功能。通过在线升级功能,整车厂可以在4S店刷新控制器的软件,从而减少因软件缺陷造成的召回成本H。此外,还能实现读取、写入及控制ECU的信息。如读取ECU的版本信息、生产厂商以及控制ECU的输入输出信息等功能。IS015765符合现代汽车网络总线系统的发展趋势,已被许多汽车厂商采纳,并将成为未来汽车行业的通用诊断标准。对于车载网络的诊断,国外各大著名汽车公司对诊断技术的研究较为成熟,其诊断通信协议也是由国外各大厂商制定,其相关的诊断产品和诊断工具也开发的较为成熟,比如德国Vector公司的诊断系列产品,以及Mentor公司的诊断系列产品。目前国内的汽车生产厂商及汽车零部件厂商与研发机构大都直接使用国外相对成熟的诊断系列产品。由于知识产权的保护,国外对车载网络的诊断技术几乎处于封锁状态,即使是中外合资的相关汽车厂商或零部件厂商其诊断技术也是不会对国内开放。综上原因,使得目前国内的车载网络诊断技术处于起步阶段。因
重庆邮电大学硕士论文第一章绪论此,深入研究车载网络诊断技术,是摆在国内汽车设计公司和汽车生产厂商面前必须解决的实际问题。1.2车载网络诊断协议概述对车载网络诊断技术的实现主要依托于对车载网络诊断协议的应用与实现。现对常用的车载网络的国际诊断协议进行概述如下:ISO-9141:早在1996年国际标准化组织颁布基于K线的ISO.9141标准;该标准的应用时间不算太长。ISO14230:ISO14230于1999年出台,又称作KeywordProtocol2000(kwp2000),该诊断标准是基于K线的,波特率为10.4kb/s,用单线(K线)通信,也可用双线(K线和L线)通信,目前多用单线通信。IS014230的头格式不是固定的,有3或4个字节,报文传输不用分包,最大可传255个字节数据,K线本质上是一种半双工串行通信总线。过去比较常用,到目前为止,IS014230仍是许多汽车厂商采用的诊断通信标准【51。报文头数据域校验和格式目标地址源地址长度数据l数据2数据11校验和图1.1ISO14230K线数据格式ISo/DIS15765,1999年出台ISO/DIS15765(DiagnosticsonCAN·basedonKWP一2000),此诊断标准是基于ISO14230在CAN线上的扩充,源于K线的诊断标准。lSO15031:2001年6月发布ISO15031(Communicationforemissions—relateddiag—nostics),此诊断标准的出台主要针对排放系统相关的诊断,其中ISO15031-6中,对故障诊断码的格式进行了详细规定。lSO15765,2001年发布了ISO15765(DiagnosticsonCAN—basedonUDS),此诊断标准与基于K线的诊断标准不同,这是基于统一诊断服务的诊断。其中的ISOl5765.3、IS015765—2分别规定了应用层与网络层的实现,在IS015765.2网络层中对ECU2
重庆邮电大学硕士论文第一章绪论的在线上传下载进行了详细的规定。将帧类型分为单帧、第一帧、流控帧和后续帧,此诊断标准对报文进行打包传输,数据以流控帧的机制进行传输,一次最多可传输4095字节的数据。标准CAN帧格式【6l如图1.2所示。仲裁域12f{7=控制域6位数据域64位帧远程标识保留数据循环校CRC应帧开标识符传输符扩数据域验位界定旌结始请求展位位0长度口CRC符场束llllll40.6415l27图1.2标准CAN帧格式ISO14229-1:2006年发布统一诊断服务标准ISO14229.1(UnifiedDiagnosticServices)。该国际标准只是规定应用层上诊断规范,该标准的制定是为了针对任何一种连续数据链路,不涉及网络及实现未。定义诊断系统的通用需求,为了实现这一点,该标准基于OSI基本参考模型,如表1.1所示,其通信系统为7层。其中映射到CAN线上的诊断为IS015765。在其它链路上的映射,如无线局域网、Flexray等的诊断,也将按照IS014229.1(统一诊断标准UDS)执行【r『J。表l-1诊断规范与OSI的对应关系表适用性OSI7层增强诊断服务(非放射相关)遵循应用层(第7层)ISO14229-l/ISO15765—3/ISO11992.4ISO14229.1/更多标准ISO/难C表达层(第6层)7498会话层(第5层)ISO15765.3/IS011992.4更多标准和传输层(第4层)ISO15765.2/ISO11992-4更多标准ISO,IEC网络层(第3层)ISO15765.2/ISOll992_4更多标准1073l的7数据链路层(第2层)ISO1l898/IS011992.1/SAE儿939一15更多标准层物理层(第1层)ISO11898/ISO11992-l/SAEJ1939-15更多标准综述上述几种车载网络诊断协议,国内外汽车厂商使用较广泛的诊断协议为基于K线的ISO14230和基于CAN线的IS015765诊断协议,然而随着汽车中电控电元数量的增加,如ABS系统、发送机电控系统、车身控制模块(BCM)系统、安全气囊等系统【8】,这些系统之间以及系统与汽车仪表之间都需要进行数据交换,若这么多的数据量仍采用导线对数据进行点对点传输,则大量导线的使用会导致系统内部繁杂,且增加成本。此外,由于K线不能满足数据链路层在网络管理以3
重庆邮电人学硕十论文第一章绪论及通信速率上的局限性,使得K线无法满足越来越复杂的车载诊断网络的需求19】。随着CAN网络在汽车网络上的广泛应用,基于CAN网络的IS015765的诊断则受到广泛应用,它符合现代汽车网络总线的发展趋势,逐渐被越来越多的汽车厂商使用,将成为未来汽车行业的通用诊断标准。与基于K线的IS014230相比,基于CAN线的诊断协议IS015765具有以下的优势:(1)CAN总线的传输速率比K线要高很多,K线的传输速率为10.4kbit/s,而CAN线的最高波特率可达1Mbit/s。(2)K线使用的是单线传输,CAN线为双线采用差分信号传输,抗干扰能力强,且可靠性比K线好。(3)CAN总线可以构建比较复杂的网络结构,对于不同网络仍可通过网关实现诊断,即可实现不同网段的远程诊断,并且CAN网络的网络管理能力很强。(4)当诊断设备采用功能寻址对多个ECU进行诊断或诊断控制通信时,开发者不需考虑由于同时访问总线引起的总线冲突问题,因为CAN总线采用仲裁机制确保总线通信的正常进行。(5)利用ISOl5765基于CAN线的诊断,其网络层对报文的传输进行了规范化的顺序控制以及流控制等,提高了报文传输的可靠性,并且其单次传输的报文数量可达4096字节。而K线在网络层没有定义,单次最多传输255字节的数据。(6)在IS015765.2中,明确规定了基于CAN网络的ECU在线上传下载的诊断通信流程,将上传下载纳入诊断范围内,上传下载的内容按照IS015765.2网络层传输规则进行传输,以实现更标准、更可靠的网络数据传输。1.3国内车载CAN网络诊断存在的问题根据国内外车载网络诊断的研究现状现与目前流行的车载网络诊断协议基础,现从以下三个方面阐述目前在国内车载CAN网络诊断研究中存在的、并待解决的问题:(一)我国车载网络诊断技术自主知识产权方面由于基于CAN网络技术的新颖性与诊断协议本身的复杂性,现阶段国内在基于IS015765的车载网络诊断技术的开发与应用方面尚不成熟,在诊断开发与设计方面通常借助于国外的工具或产品。目前,国内汽车制造商与设备供应商大都使用德国VECTOR公司的Candelastudio、Diva、CANdesc等诊断系列工具,由于这些诊断工具受知识产权的保护,成本较高,其整套设备需花费几十万元。因此,有必要设计开发具有自主知识产权的基于IS015765的车载网络诊断,突破国外在4