CN111327689A - 基于uds通信协议实现车辆ecu远程升级的方法 - Google Patents

基于uds通信协议实现车辆ecu远程升级的方法 Download PDF

Info

Publication number
CN111327689A
CN111327689A CN202010074474.6A CN202010074474A CN111327689A CN 111327689 A CN111327689 A CN 111327689A CN 202010074474 A CN202010074474 A CN 202010074474A CN 111327689 A CN111327689 A CN 111327689A
Authority
CN
China
Prior art keywords
ecu
vehicle
upgrading
upgrade
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010074474.6A
Other languages
English (en)
Inventor
金高辉
周宏伟
侯杨杨
李晓伟
张家如
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dayun Automobile Co Ltd
Original Assignee
Dayun Automobile Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dayun Automobile Co Ltd filed Critical Dayun Automobile Co Ltd
Priority to CN202010074474.6A priority Critical patent/CN111327689A/zh
Publication of CN111327689A publication Critical patent/CN111327689A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • B60W2050/0083Setting, resetting, calibration
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及车辆ECU远程升级设备及方法,针对不同车厂需独立开发各自的车辆ECU远程升级***的现状,提供一种基于UDS通信协议实现车辆ECU远程升级的方法。本发明基于车辆的CAN通信数据,编制出车辆UDS诊断协议和远程监控平台方案,通过硬件车载终端4G模块实现远程对车辆ECU的数据升级,无需再通过人工手动线下升级ECU,可以在后台设定车辆ECU升级时间,到达设定时间后ECU自动通过远程联网进行升级。UDS协议中规定了ECU出厂恢复机制,避免了升级过程中出现联网失败造成ECU死机损坏、数据丢失等情况。本发明通过建立云端平台、车载硬件和数据管理算法,结合UDS诊断协议进行加密安全访问,让ECU升级更加安全便捷。

Description

基于UDS通信协议实现车辆ECU远程升级的方法
技术领域
本发明涉及车辆ECU远程升级设备及方法,具体为基于UDS通信协议实现车辆ECU远程升级的方法。
背景技术
汽车在生活中用的越来越普遍,越来越多的车辆在量产后经常出现很多问题,车厂需要对销售出的汽车ECU(Electronic Control Unit,电子控制单元,又称“行车电脑”、“车载电脑”等)进行升级,一般都是需要车主把车开到指定的4S店或者返厂,由专门的工作人员进行手动ECU升级。目前传统升级程序方法是通过人员ECU拆板子或者焊电路芯片,借助下位机手动下线刷写,这样会导致时间、人力、财力占用很大一部分工作,工作效率低下,并且很容易出错。
对车辆远程控制及数据监控在智能化科技领域上已经有很多应用。车辆ECU远程升级在现有车辆上已有应用;但不同车厂需独立开发各自的车辆ECU远程升级***。
发明内容
本发明针对不同车厂需独立开发各自的车辆ECU远程升级***的现状,提供一种基于UDS通信协议实现车辆ECU远程升级的方法。
本发明是采用如下技术方案实现的:基于UDS通信协议实现车辆ECU远程升级的方法,包括设备云服务器、车载TBOX(Telematics BOX)、TSP(Telematics Service Provider,汽车远程服务提供商)管理***、车载ECU。
一.UDS诊断升级流程:
UDS(Unified diagnostic services)是面向整车所有ECU的。它只是一个应用层协议(ISO 14229-1),所以它既可以在CAN线上实现,甚至也能在Ethernet上实现。并且UDS提供的是一个诊断服务的基本框架,主机厂和零部件供应商可以根据实际情况选择实现其中的一部分或是自定义出一些私有化的诊断服务来。
整车的车载ECU都通过CAN总线与车载TBOX进行连接;CAN总线分为动力CAN总线PTCAN、车身CAN总线BCAN、信息CAN总线InfoCAN(如图1所示);PTCAN上连接有:整车控制器VCU、电池管理***BMS、直流转换CDU、前电机控制器MCUF、后电机控制器MCUR、电动转向***EPS、防抱死制动***ABS;BCAN上连接有:整车控制器VCU、安全气囊ACU、空调AC、压缩机ACCM、防夹PWU、车身模块BCM;InfoCAN上连接有:整车控制器VCU、组合仪表IC、行人预警AVAS。
车载ECU Bootloarder诊断升级协议(如图2所示):ECU Bootloarder启动时序,在Bootloader模式下,使用了三种诊断会话模式:默认会话模式,扩展会话模式和编程会话模式;如果ECU在正确的条件下收到“10h 02h”,ECU将外部重编程请求标志位置为有效,并执行ECU重启。
1.第一步预编程文件升级流程:
ECU升级预编程步骤,当TBOX接收到TSP平台指令后,TBOX从TSP下载刷写文件,然后对ECU进行版本识别进行预编程,具体流程如下(如图3所示):
1)读取ECU的硬件版本号:22hF1h93h;
2)读取引导软件的版本号:22hF1h95h;
3)诊断会话控制10h 03h:为了禁止ECU间的正常通信和控制DTC(DiagnosticTrouble Code,诊断故障代码)设置,预编程需要启动非默认会话模式。通过使用会话类型为扩展会话模式的诊断会话控制(10h)服务来完成。此请求使用一个单帧请求报文,通过功能寻址发送给所有的ECU;
4)例程控制,检查预编程条件:31h 01h FFh 02h,通过此例程来检查ECU编程条件,从而确保***安全,预编程检验条件由ECU决定,如果有任何不安全的因素,ECU应该拒绝编程;
5)功能请求,禁止DTC存储:85h02h,禁止DTC存储故障信息,防止对重编程通讯网络造成影响;
6)功能请求,禁止非诊断通讯:85h03h,禁止非诊断报文的收发,防止对重编程通讯网络造成影响。
2.第二步主编程文件升级流程:
ECU升级主编程步骤,在预编程步骤之后,是主编程步骤。主编程时序是单个ECU编程事件的应用,因此所有服务的请求都使用物理寻址,具体流程如下(如图4所示):
1)诊断会话控制10h 02h:在收到一个寻址方式为物理寻址,子功能为编程会话的诊断会话控制10h服务后,ECU启动Bootloader,并分配编程所需的所有资源;ECU需先发送肯定响应再执行跳转到编程模式动作;
2)安全访问27h 03h/04h:编程事件必须通过安全访问,安全访问27h服务在排放相关和安全***中是强制的,其它***不要求使用该服务。下载前,通过安全访问过程是强制的,确保只有合法的诊断仪能对ECU进行下载操作;
3)写入指纹信息:2EhF1h84h,写入年、月、日和设备的序列号;
4)下载FlashDriver,例程控制,检查FlashDriver的完整性:31h 01h F1h A0h,此例程用来检查逻辑块的完整性;
5)例程控制,擦除程序内存:31h 01h FFh 00h,为了允许应用软件和数据下载,ECU的内存将被擦除;此步骤通过例程控制服务31h来执行擦除内存;如果擦除内存例程被调用执行,那么应用软件的标志位将被置为无效;
6)驱动下载34h,36h,37h,31h:当ECU的非易失性存储单元中没有存储内存驱动时,将执行内存驱动的下载;下载按照如下时序来进行:请求下载、传输数据、请求传输退出;下载完所有字节后,用“检查编程完整性”例程31h 01h F1h A0h来检查所有的字节都正确传输;
7)完整性检查后,判断是否需要下载别的数据块,如需要,则跳转到31h FFh00h),如不需要,则继续向下进行;
8)例程控制,检查编程的依赖性:31h 01h FFh 01h,一旦完成所有的应用软件或数据块/模块的下载,TBOX将开始一个例程来触发ECU检查重编程的依赖性;ECU供应商定义检查内容,但必须确保所有逻辑块的兼容性和一致性;
9)重置ECU:11h 01h诊断仪使用物理寻址,发送一个复位类型为硬复位的ECU复位11h服务请求报文到CAN网络上;通过ECU复位服务请求将使ECU结束重编程过程,返回到正常的操作模式;内存驱动代码必须从RAM缓存中完全清除,避免意外激活这些可能会进行非预期的内存擦除或程序操作的代码;
3.第三步flash流程:
程序下载(如图5所示):应用软件或者数据的每一个连续的数据块(也叫段,可能是一个完整的应用软件或者数据,也可能是应用软件或者数据的一部分)下载到ECU非易失性内存中,都是遵循下面的服务顺序完成数据传输:
请求下载34h;
传输数据36h;
请求传输退出37h;
当单个应用软件或数据块长度超出网络层缓存大小时,单个应用软件或数据块需要多个数据传输36h请求报文来完成传输;
二、远程升级管理:
2.1远程升级管理
本方案可以在车辆的整个生命周期内,对车辆ECU软硬件版本进行管理,发布升级包自动进行差分发布升级任务,指定车辆在预置时间进行升级。在下载升级过程中,平台有相应远程下载升级策略、版本回退功能。下载完毕升级完成后,平台会统计批次升级成功率及失败原因。远程升级流程如图6所示。
2.2后台升级流程描述:
1.运营人员提供升级版本及软件包至Tsp,由Tsp验证升级包有效性后通过平台发布版本更新至OTA(Over-the-Air Technology)数据库。
2.待平台发布升级任务并到达指定时间后,Tsp再次校验版本与当前版本差异,确定升级范围,制作完整包/差分包。
3.当确认下发升级消息时,Tsp OTA服务器通知车辆T-Box有新的软件版本。由T-box回传版本信息。
4.Tsp确定差分版本内容后回传至T-box,由T-box与Tsp通信获取版本号。
5.当满足下载条件后,T-box进行下载过程。中途中断判定是否超过2小时以决定断点续传或重新下载。
6.经过下载过程完整下载升级包之后,校验CRC(Cyclic Redundancy Check,循环冗余校验)电子签名完整性。
7.由T-box判定是否有优先级更高的事件,从而进行升级动作。
8.升级完成后回传升级结果及当前版本信息至Tsp进行留存覆盖。
2.3软件数据包加密:
加密使用AES-128加密升级软件包。供应商生成一个AES-128密钥,进行保密,并且只能使用一次。下次将生成新的AES-128密钥。交付的软件包应该包含加密的升级软件包,电子证书以及加密的AES-128密钥。加密的AES-128密钥由RSA加密方法使用私有密钥进行保护,其公共密钥包含在电子证书内。
三、设备云服务器具体实施:
设备云服务器的云平台架构包括增值应用层、应用管理层、大数据服务层、基础服务层、数据接入层、设备接入层;云平台架构以模块化细分,模块化的设计可以确保基础功能的开通和后期功能及业务量的扩展,避免功能及逻辑错乱。
具体实施时,设备云服务器基于华为云服务器;
同时要求设备云服务器具备负载均衡服务,以实现流量分发的云服务,提供一种有效的、透明的方法扩展网络设备和服务器带宽。负载均衡服务增加了吞吐量,加强了网络数据处理能力,提高网络的灵活性、可用性以及应用***应对高负载的能力。负载均衡服务通常可作为应用***的网络入口,将用户请求分发到云服务器集群,实现应用***的弹性扩展。
本发明基于车辆的CAN通信数据,编制出车辆UDS诊断协议和远程监控平台方案,通过硬件车载终端4G模块实现远程对车辆ECU的数据升级,无需再通过人工手动线下升级ECU,可以在后台设定车辆ECU升级时间,到达设定时间后ECU自动通过远程联网进行升级。UDS协议中规定了ECU出厂恢复机制,避免了升级过程中出现联网失败造成ECU死机损坏、数据丢失等情况。本发明通过建立云端平台、车载硬件和数据管理算法,结合UDS诊断协议进行加密安全访问,让ECU升级更加安全便捷。
附图说明
图1为本发明车辆网络拓扑图;
图2为车载ECU Bootloarder诊断升级协议流程图;
图3为ECU升级预编程协议流程图;
图4为ECU升级主编程协议流程图;
图5为程序下载流程图;
图6为远程升级流程图。
具体实施方式
基于UDS通信协议实现车辆ECU远程升级的方法,包括设备云服务器、车载TBOX(Telematics BOX)、TSP(Telematics Service Provider,汽车远程服务提供商)管理***、车载ECU。
一.UDS诊断升级流程:
UDS(Unified diagnostic services)是面向整车所有ECU的。它只是一个应用层协议(ISO 14229-1),所以它既可以在CAN线上实现,甚至也能在Ethernet上实现。并且UDS提供的是一个诊断服务的基本框架,主机厂和零部件供应商可以根据实际情况选择实现其中的一部分或是自定义出一些私有化的诊断服务来。
整车的车载ECU都通过CAN总线与车载TBOX进行连接;CAN总线分为动力CAN总线PTCAN、车身CAN总线BCAN、信息CAN总线InfoCAN(如图1所示);PTCAN上连接有:整车控制器VCU、电池管理***BMS、直流转换CDU、前电机控制器MCUF、后电机控制器MCUR、电动转向***EPS、防抱死制动***ABS;BCAN上连接有:整车控制器VCU、安全气囊ACU、空调AC、压缩机ACCM、防夹PWU、车身模块BCM;InfoCAN上连接有:整车控制器VCU、组合仪表IC、行人预警AVAS。
车载ECU Bootloarder诊断升级协议(如图2所示):ECU Bootloarder启动时序,在Bootloader模式下,使用了三种诊断会话模式:默认会话模式,扩展会话模式和编程会话模式;如果ECU在正确的条件下收到“10h 02h”,ECU将外部重编程请求标志位置为有效,并执行ECU重启。
1.第一步预编程文件升级流程:
ECU升级预编程步骤,当TBOX接收到TSP平台指令后,TBOX从TSP下载刷写文件,然后对ECU进行版本识别进行预编程,具体流程如下(如图3所示):
1)读取ECU的硬件版本号:22hF1h93h;
2)读取引导软件的版本号:22hF1h95h;
3)诊断会话控制10h 03h:为了禁止ECU间的正常通信和控制DTC(DiagnosticTrouble Code,诊断故障代码)设置,预编程需要启动非默认会话模式。通过使用会话类型为扩展会话模式的诊断会话控制(10h)服务来完成。此请求使用一个单帧请求报文,通过功能寻址发送给所有的ECU;
4)例程控制,检查预编程条件:31h 01h FFh 02h,通过此例程来检查ECU编程条件,从而确保***安全,预编程检验条件由ECU决定,如果有任何不安全的因素,ECU应该拒绝编程;
5)功能请求,禁止DTC存储:85h02h,禁止DTC存储故障信息,防止对重编程通讯网络造成影响;
6)功能请求,禁止非诊断通讯:85h03h,禁止非诊断报文的收发,防止对重编程通讯网络造成影响。
2.第二步主编程文件升级流程:
ECU升级主编程步骤,在预编程步骤之后,是主编程步骤。主编程时序是单个ECU编程事件的应用,因此所有服务的请求都使用物理寻址,具体流程如下(如图4所示):
1)诊断会话控制10h 02h:在收到一个寻址方式为物理寻址,子功能为编程会话的诊断会话控制10h服务后,ECU启动Bootloader,并分配编程所需的所有资源;ECU需先发送肯定响应再执行跳转到编程模式动作;
2)安全访问27h 03h/04h:编程事件必须通过安全访问,安全访问27h服务在排放相关和安全***中是强制的,其它***不要求使用该服务。下载前,通过安全访问过程是强制的,确保只有合法的诊断仪能对ECU进行下载操作;
3)写入指纹信息:2EhF1h84h,写入年、月、日和设备的序列号;
4)下载FlashDriver,例程控制,检查FlashDriver的完整性:31h 01h F1h A0h,此例程用来检查逻辑块的完整性;
5)例程控制,擦除程序内存:31h 01h FFh 00h,为了允许应用软件和数据下载,ECU的内存将被擦除;此步骤通过例程控制服务31h来执行擦除内存;如果擦除内存例程被调用执行,那么应用软件的标志位将被置为无效;
6)驱动下载34h,36h,37h,31h:当ECU的非易失性存储单元中没有存储内存驱动时,将执行内存驱动的下载;下载按照如下时序来进行:请求下载、传输数据、请求传输退出;下载完所有字节后,用“检查编程完整性”例程31h 01h F1h A0h来检查所有的字节都正确传输;
7)完整性检查后,判断是否需要下载别的数据块,如需要,则跳转到31h FFh00h),如不需要,则继续向下进行;
8)例程控制,检查编程的依赖性:31h 01h FFh 01h,一旦完成所有的应用软件或数据块/模块的下载,TBOX将开始一个例程来触发ECU检查重编程的依赖性;ECU供应商定义检查内容,但必须确保所有逻辑块的兼容性和一致性;
9)重置ECU:11h 01h诊断仪使用物理寻址,发送一个复位类型为硬复位的ECU复位11h服务请求报文到CAN网络上;通过ECU复位服务请求将使ECU结束重编程过程,返回到正常的操作模式;内存驱动代码必须从RAM缓存中完全清除,避免意外激活这些可能会进行非预期的内存擦除或程序操作的代码;
3.第三步flash流程:
程序下载(如图5所示):应用软件或者数据的每一个连续的数据块(也叫段,可能是一个完整的应用软件或者数据,也可能是应用软件或者数据的一部分)下载到ECU非易失性内存中,都是遵循下面的服务顺序完成数据传输:
请求下载34h;
传输数据36h;
请求传输退出37h;
当单个应用软件或数据块长度超出网络层缓存大小时,单个应用软件或数据块需要多个数据传输36h请求报文来完成传输;
二、远程升级管理:
2.1远程升级管理
本方案可以在车辆的整个生命周期内,对车辆ECU软硬件版本进行管理,发布升级包自动进行差分发布升级任务,指定车辆在预置时间进行升级。在下载升级过程中,平台有相应远程下载升级策略、版本回退功能。下载完毕升级完成后,平台会统计批次升级成功率及失败原因。远程升级流程如图6所示。
2.2后台升级流程描述:
1.运营人员提供升级版本及软件包至Tsp,由Tsp验证升级包有效性后通过平台发布版本更新至OTA(Over-the-Air Technology)数据库。
2.待平台发布升级任务并到达指定时间后,Tsp再次校验版本与当前版本差异,确定升级范围,制作完整包/差分包。
3.当确认下发升级消息时,Tsp OTA服务器通知车辆T-Box有新的软件版本。由T-box回传版本信息。
4.Tsp确定差分版本内容后回传至T-box,由T-box与Tsp通信获取版本号。
5.当满足下载条件后,T-box进行下载过程。中途中断判定是否超过2小时以决定断点续传或重新下载。
6.经过下载过程完整下载升级包之后,校验CRC(Cyclic Redundancy Check,循环冗余校验)电子签名完整性。
7.由T-box判定是否有优先级更高的事件,从而进行升级动作。
8.升级完成后回传升级结果及当前版本信息至Tsp进行留存覆盖。
2.3软件数据包加密:
加密使用AES-128加密升级软件包。供应商生成一个AES-128密钥,进行保密,并且只能使用一次。下次将生成新的AES-128密钥。交付的软件包应该包含加密的升级软件包,电子证书以及加密的AES-128密钥。加密的AES-128密钥由RSA加密方法使用私有密钥进行保护,其公共密钥包含在电子证书内。
三、设备云服务器具体实施:
设备云服务器的云平台架构包括增值应用层、应用管理层、大数据服务层、基础服务层、数据接入层、设备接入层;云平台架构以模块化细分,模块化的设计可以确保基础功能的开通和后期功能及业务量的扩展,避免功能及逻辑错乱。
具体实施时,设备云服务器基于华为云服务器,设备云服务器的主要性能参数见下表:
Figure BDA0002378309510000091
Figure BDA0002378309510000101
同时要求设备云服务器具备负载均衡服务,以实现流量分发的云服务,提供一种有效的、透明的方法扩展网络设备和服务器带宽。负载均衡服务增加了吞吐量,加强了网络数据处理能力,提高网络的灵活性、可用性以及应用***应对高负载的能力。负载均衡服务通常可作为应用***的网络入口,将用户请求分发到云服务器集群,实现应用***的弹性扩展。
设备云服务器网络安全主要性能参数如下表:
Figure BDA0002378309510000102
Figure BDA0002378309510000111

Claims (1)

1.一种基于UDS通信协议实现车辆ECU远程升级的方法,包括设备云服务器、车载TBOX、TSP管理***、车载ECU;其特征在于,
一.UDS诊断升级流程:
整车的车载ECU都通过CAN总线与车载TBOX进行连接;CAN总线分为动力CAN总线PTCAN、车身CAN总线BCAN、信息CAN总线InfoCAN;PTCAN上连接有:整车控制器VCU、电池管理***BMS、直流转换CDU、前电机控制器MCUF、后电机控制器MCUR、电动转向***EPS、防抱死制动***ABS;BCAN上连接有:整车控制器VCU、安全气囊ACU、空调AC、压缩机ACCM、防夹PWU、车身模块BCM;InfoCAN上连接有:整车控制器VCU、组合仪表IC、行人预警AVAS;
车载ECU Bootloarder诊断升级协议:ECU Bootloarder启动时序,在Bootloader模式下,使用了三种诊断会话模式:默认会话模式,扩展会话模式和编程会话模式;如果ECU在正确的条件下收到“10h 02h”,ECU将外部重编程请求标志位置为有效,并执行ECU重启;
1.第一步预编程文件升级流程:
ECU升级预编程步骤,当TBOX接收到TSP平台指令后,TBOX从TSP下载刷写文件,然后对ECU进行版本识别进行预编程,具体流程如下:
1)读取ECU的硬件版本号:22hF1h93h;
2)读取引导软件的版本号:22hF1h95h;
3)诊断会话控制10h 03h:为了禁止ECU间的正常通信和控制DTC设置,预编程需要启动非默认会话模式;通过使用会话类型为扩展会话模式的诊断会话控制10h服务来完成;此请求使用一个单帧请求报文,通过功能寻址发送给所有的ECU;
4)例程控制,检查预编程条件:31h 01h FFh 02h,通过此例程来检查ECU编程条件,从而确保***安全,预编程检验条件由ECU决定,如果有任何不安全的因素,ECU应该拒绝编程;
5)功能请求,禁止DTC存储:85h02h,禁止DTC存储故障信息,防止对重编程通讯网络造成影响;
6)功能请求,禁止非诊断通讯:85h03h,禁止非诊断报文的收发,防止对重编程通讯网络造成影响;
2.第二步主编程文件升级流程:
ECU升级主编程步骤,在预编程步骤之后,是主编程步骤;主编程时序是单个ECU编程事件的应用,因此所有服务的请求都使用物理寻址,具体流程如下:
1)诊断会话控制10h 02h:在收到一个寻址方式为物理寻址,子功能为编程会话的诊断会话控制10h服务后,ECU启动Bootloader,并分配编程所需的所有资源;ECU需先发送肯定响应再执行跳转到编程模式动作;
2)安全访问27h 03h/04h:编程事件必须通过安全访问,安全访问27h服务在排放相关和安全***中是强制的,其它***不要求使用该服务;下载前,通过安全访问过程是强制的,确保只有合法的诊断仪能对ECU进行下载操作;
3)写入指纹信息:2EhF1h84h,写入年、月、日和设备的序列号;
4)下载FlashDriver,例程控制,检查FlashDriver的完整性:31h 01h F1h A0h,此例程用来检查逻辑块的完整性;
5)例程控制,擦除程序内存:31h 01h FFh 00h,为了允许应用软件和数据下载,ECU的内存将被擦除;此步骤通过例程控制服务31h来执行擦除内存;如果擦除内存例程被调用执行,那么应用软件的标志位将被置为无效;
6)驱动下载34h,36h,37h,31h:当ECU的非易失性存储单元中没有存储内存驱动时,将执行内存驱动的下载;下载按照如下时序来进行:请求下载、传输数据、请求传输退出;下载完所有字节后,用“检查编程完整性”例程31h 01h F1h A0h来检查所有的字节都正确传输;
7)完整性检查后,判断是否需要下载别的数据块,如需要,则跳转到31h FFh 00h,如不需要,则继续向下进行;
8)例程控制,检查编程的依赖性:31h 01h FFh 01h,一旦完成所有的应用软件或数据块/模块的下载,TBOX将开始一个例程来触发ECU检查重编程的依赖性;ECU供应商定义检查内容,但必须确保所有逻辑块的兼容性和一致性;
9)重置ECU:11h 01h诊断仪使用物理寻址,发送一个复位类型为硬复位的ECU复位11h服务请求报文到CAN网络上;通过ECU复位服务请求将使ECU结束重编程过程,返回到正常的操作模式;内存驱动代码必须从RAM缓存中完全清除,避免意外激活这些可能会进行非预期的内存擦除或程序操作的代码;
3.第三步flash流程:
程序下载:应用软件或者数据的每一个连续的数据块下载到ECU非易失性内存中,都是遵循下面的服务顺序完成数据传输:
请求下载34h;
传输数据36h;
请求传输退出37h;
当单个应用软件或数据块长度超出网络层缓存大小时,单个应用软件或数据块需要多个数据传输36h请求报文来完成传输;
二、远程升级管理:
2.1远程升级管理
在车辆的整个生命周期内,对车辆ECU软硬件版本进行管理,发布升级包自动进行差分发布升级任务,指定车辆在预置时间进行升级;在下载升级过程中,平台有相应远程下载升级策略、版本回退功能;下载完毕升级完成后,平台会统计批次升级成功率及失败原因;
2.2后台升级流程描述:
1.运营人员提供升级版本及软件包至Tsp,由Tsp验证升级包有效性后通过平台发布版本更新至OTA数据库;
2.待平台发布升级任务并到达指定时间后,Tsp再次校验版本与当前版本差异,确定升级范围,制作完整包/差分包;
3.当确认下发升级消息时,Tsp OTA服务器通知车辆T-Box有新的软件版本;由T-box回传版本信息;
4.Tsp确定差分版本内容后回传至T-box,由T-box与Tsp通信获取版本号;
5.当满足下载条件后,T-box进行下载过程;中途中断判定是否超过2小时以决定断点续传或重新下载;
6.经过下载过程完整下载升级包之后,校验CRC;电子签名完整性;
7.由T-box判定是否有优先级更高的事件,从而进行升级动作;
8.升级完成后回传升级结果及当前版本信息至Tsp进行留存覆盖;
2.3软件数据包加密:
加密使用AES-128加密升级软件包;供应商生成一个AES-128密钥,进行保密,并且只能使用一次;下次将生成新的AES-128密钥;交付的软件包应该包含加密的升级软件包,电子证书以及加密的AES-128密钥;加密的AES-128密钥由RSA加密方法使用私有密钥进行保护,其公共密钥包含在电子证书内;
三、设备云服务器具体实施:
设备云服务器的云平台架构包括增值应用层、应用管理层、大数据服务层、基础服务层、数据接入层、设备接入层;
设备云服务器基于华为云服务器;
同时要求设备云服务器具备负载均衡服务,以实现流量分发的云服务,提供一种有效的、透明的方法扩展网络设备和服务器带宽;负载均衡服务作为应用***的网络入口,将用户请求分发到云服务器集群,实现应用***的弹性扩展。
CN202010074474.6A 2020-01-22 2020-01-22 基于uds通信协议实现车辆ecu远程升级的方法 Pending CN111327689A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010074474.6A CN111327689A (zh) 2020-01-22 2020-01-22 基于uds通信协议实现车辆ecu远程升级的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010074474.6A CN111327689A (zh) 2020-01-22 2020-01-22 基于uds通信协议实现车辆ecu远程升级的方法

Publications (1)

Publication Number Publication Date
CN111327689A true CN111327689A (zh) 2020-06-23

Family

ID=71172110

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010074474.6A Pending CN111327689A (zh) 2020-01-22 2020-01-22 基于uds通信协议实现车辆ecu远程升级的方法

Country Status (1)

Country Link
CN (1) CN111327689A (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112114832A (zh) * 2020-09-21 2020-12-22 华人运通(上海)云计算科技有限公司 车辆升级控制方法、终端设备、车辆和计算机存储介质
CN112529219A (zh) * 2020-12-17 2021-03-19 武汉光庭信息技术股份有限公司 一种整车ecu升级方法及***
CN112527352A (zh) * 2020-12-08 2021-03-19 航天科技控股集团股份有限公司 基于诊断协议进行智能配置读取分析的方法
CN112596447A (zh) * 2020-12-23 2021-04-02 潍柴动力股份有限公司 Ecu刷写数据长度的确定方法、装置、电子设备及介质
CN112667280A (zh) * 2020-12-30 2021-04-16 中车大连机车研究所有限公司 一种基于Git技术的机车车载应用软件集中控制***
CN113194441A (zh) * 2021-04-30 2021-07-30 江苏徐工工程机械研究院有限公司 一种工程机械车辆通信***、方法及远程升级方法
CN113204356A (zh) * 2021-06-02 2021-08-03 吉林大学 一种面向车载嵌入式设备的应用程序动态更新方法
CN113411180A (zh) * 2020-09-22 2021-09-17 郑州嘉晨电器有限公司 一种数据加密总线自适应的工业设备远程升级***
CN113419755A (zh) * 2021-06-04 2021-09-21 江铃汽车股份有限公司 汽车ecu程序刷写方法、***、可读存储介质及计算机设备
CN113472884A (zh) * 2021-06-30 2021-10-01 潍柴动力股份有限公司 Ota升级方法和装置
CN113741393A (zh) * 2021-09-03 2021-12-03 东风汽车集团股份有限公司 基于中央网关的车辆安全网络架构及其诊断方法
CN114217596A (zh) * 2021-12-15 2022-03-22 安徽江淮汽车集团股份有限公司 基于车联网的智能诊断升级***及方法
CN114398066A (zh) * 2022-01-07 2022-04-26 中通客车股份有限公司 一种域控制器的软件升级方法、***及应用
CN114880002A (zh) * 2022-07-12 2022-08-09 江铃汽车股份有限公司 一种ota数据刷写方法及***
CN114936047A (zh) * 2022-04-21 2022-08-23 江铃汽车股份有限公司 Ivi***恢复出厂设置方法、***、电子设备及存储介质
CN115022223A (zh) * 2022-06-06 2022-09-06 深圳市赛格车圣科技有限公司 Tbox通过uds进行自动化测试的方法及***
CN115314522A (zh) * 2022-07-25 2022-11-08 北京经纬恒润科技股份有限公司 车载操作***
CN115421756A (zh) * 2022-09-16 2022-12-02 杭州云动智能汽车技术有限公司 一种服务型网关升级方法
CN115857885A (zh) * 2022-12-27 2023-03-28 深圳市浩科智联科技有限公司 一种基于soc软件的汽车主题ui全流程开发测试部署***

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160371076A1 (en) * 2015-06-16 2016-12-22 Lear Corporation METHOD FOR UPDATING VEHICLE ECUs USING DIFFERENTIAL UPDATE PACKAGES
CN109040205A (zh) * 2018-07-18 2018-12-18 北京车和家信息技术有限公司 车辆升级的方法及装置
CN110474961A (zh) * 2019-07-14 2019-11-19 江苏开沃汽车有限公司 纯电乘用车基于can总线实现多路远程ota升级方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160371076A1 (en) * 2015-06-16 2016-12-22 Lear Corporation METHOD FOR UPDATING VEHICLE ECUs USING DIFFERENTIAL UPDATE PACKAGES
CN106257420A (zh) * 2015-06-16 2016-12-28 李尔公司 用于使用差分更新包更新ecu的方法
CN109040205A (zh) * 2018-07-18 2018-12-18 北京车和家信息技术有限公司 车辆升级的方法及装置
CN110474961A (zh) * 2019-07-14 2019-11-19 江苏开沃汽车有限公司 纯电乘用车基于can总线实现多路远程ota升级方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
詹克旭: "基于UDS协议的汽车ECU升级方案", 《计算机应用于软件》 *

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112114832B (zh) * 2020-09-21 2024-03-15 华人运通(上海)云计算科技有限公司 车辆升级控制方法、终端设备、车辆和计算机存储介质
CN112114832A (zh) * 2020-09-21 2020-12-22 华人运通(上海)云计算科技有限公司 车辆升级控制方法、终端设备、车辆和计算机存储介质
CN113411180A (zh) * 2020-09-22 2021-09-17 郑州嘉晨电器有限公司 一种数据加密总线自适应的工业设备远程升级***
CN112527352A (zh) * 2020-12-08 2021-03-19 航天科技控股集团股份有限公司 基于诊断协议进行智能配置读取分析的方法
CN112529219A (zh) * 2020-12-17 2021-03-19 武汉光庭信息技术股份有限公司 一种整车ecu升级方法及***
CN112596447A (zh) * 2020-12-23 2021-04-02 潍柴动力股份有限公司 Ecu刷写数据长度的确定方法、装置、电子设备及介质
CN112667280A (zh) * 2020-12-30 2021-04-16 中车大连机车研究所有限公司 一种基于Git技术的机车车载应用软件集中控制***
CN112667280B (zh) * 2020-12-30 2024-06-04 中车大连机车研究所有限公司 一种基于Git技术的机车车载应用软件集中控制***
CN113194441A (zh) * 2021-04-30 2021-07-30 江苏徐工工程机械研究院有限公司 一种工程机械车辆通信***、方法及远程升级方法
CN113204356A (zh) * 2021-06-02 2021-08-03 吉林大学 一种面向车载嵌入式设备的应用程序动态更新方法
CN113204356B (zh) * 2021-06-02 2023-11-07 吉林大学 一种面向车载嵌入式设备的应用程序动态更新方法
CN113419755A (zh) * 2021-06-04 2021-09-21 江铃汽车股份有限公司 汽车ecu程序刷写方法、***、可读存储介质及计算机设备
CN113472884A (zh) * 2021-06-30 2021-10-01 潍柴动力股份有限公司 Ota升级方法和装置
CN113741393A (zh) * 2021-09-03 2021-12-03 东风汽车集团股份有限公司 基于中央网关的车辆安全网络架构及其诊断方法
CN113741393B (zh) * 2021-09-03 2023-03-24 东风汽车集团股份有限公司 基于中央网关的车辆安全网络架构及其诊断方法
CN114217596A (zh) * 2021-12-15 2022-03-22 安徽江淮汽车集团股份有限公司 基于车联网的智能诊断升级***及方法
CN114398066A (zh) * 2022-01-07 2022-04-26 中通客车股份有限公司 一种域控制器的软件升级方法、***及应用
CN114936047A (zh) * 2022-04-21 2022-08-23 江铃汽车股份有限公司 Ivi***恢复出厂设置方法、***、电子设备及存储介质
CN115022223A (zh) * 2022-06-06 2022-09-06 深圳市赛格车圣科技有限公司 Tbox通过uds进行自动化测试的方法及***
CN114880002B (zh) * 2022-07-12 2022-09-06 江铃汽车股份有限公司 一种ota数据刷写方法及***
CN114880002A (zh) * 2022-07-12 2022-08-09 江铃汽车股份有限公司 一种ota数据刷写方法及***
CN115314522A (zh) * 2022-07-25 2022-11-08 北京经纬恒润科技股份有限公司 车载操作***
CN115421756A (zh) * 2022-09-16 2022-12-02 杭州云动智能汽车技术有限公司 一种服务型网关升级方法
CN115421756B (zh) * 2022-09-16 2023-07-18 杭州云动智能汽车技术有限公司 一种服务型网关升级方法
CN115857885A (zh) * 2022-12-27 2023-03-28 深圳市浩科智联科技有限公司 一种基于soc软件的汽车主题ui全流程开发测试部署***
CN115857885B (zh) * 2022-12-27 2023-09-22 深圳市浩科智联科技有限公司 一种基于soc软件的汽车主题ui全流程开发测试部署***

Similar Documents

Publication Publication Date Title
CN111327689A (zh) 基于uds通信协议实现车辆ecu远程升级的方法
CN110474961B (zh) 纯电乘用车基于can总线实现多路远程ota升级方法
US11907698B2 (en) Vehicle electronic control system, vehicle master device, method for controlling transmission of data storage bank information and computer program product for controlling transmission of data storage bank information
US11669323B2 (en) Vehicle electronic control system, program update notification control method and computer program product
US11683197B2 (en) Vehicle master device, update data distribution control method, computer program product and data structure of specification data
US11822366B2 (en) Electronic control unit, vehicle electronic control system, rewrite execution method, rewrite execution program, and data structure of specification data
US11671498B2 (en) Vehicle master device, update data verification method and computer program product
US20210157573A1 (en) Vehicle electronic control system, progress screen display control method and computer program product
CN108647040A (zh) 一种基于PEPS***的Bootloader架构及刷写方法
CN109582340A (zh) 一种电动汽车远程升级的方法及***
US11999360B2 (en) Vehicle master device, control method for executing rollback, computer program product for executing rollback and data structure of specification data
US12030443B2 (en) Vehicle electronic control system, distribution package download determination method and computer program product
US11467821B2 (en) Vehicle master device, installation instruction determination method and computer program product
US20210155173A1 (en) Vehicle master device, vehicle electronic control system, activation request instruction method and computer program product
US11928459B2 (en) Electronic control unit, retry point specifying method and computer program product for specifying retry point
US20210157574A1 (en) Vehicle master device, non-rewrite target power supply administration method and computer program product
US20220179643A1 (en) Vehicle master device, vehicle electronic control system, configuration setting information rewrite instruction method, and configuration setting information rewrite instruction program product
CN111480141A (zh) 用于更新机动车控制设备的软件的方法和设备
CN110825403A (zh) 一种汽车电子控制单元ecu刷写的方法及***
US11941384B2 (en) Vehicle master device, rewrite target group administration method, computer program product and data structure of specification data
CN102135922A (zh) 应用程序的刷新方法和***
US11926270B2 (en) Display control device, rewrite progress display control method and computer program product
US11907697B2 (en) Vehicle electronic control system, center device, vehicle master device, display control information transmission control method, display control information reception control method, display control information transmission control program, and display control information reception control program
CN112698857A (zh) 一种数据刷写的方法及设备
US20210165585A1 (en) Electronic control unit, vehicle electronic control system, activation execution control method and computer program product

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200623

RJ01 Rejection of invention patent application after publication