CN102063083A - 一种多ecu分时下载方法 - Google Patents

一种多ecu分时下载方法 Download PDF

Info

Publication number
CN102063083A
CN102063083A CN2010105710901A CN201010571090A CN102063083A CN 102063083 A CN102063083 A CN 102063083A CN 2010105710901 A CN2010105710901 A CN 2010105710901A CN 201010571090 A CN201010571090 A CN 201010571090A CN 102063083 A CN102063083 A CN 102063083A
Authority
CN
China
Prior art keywords
ecu
programming
bus
group
master control
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.)
Granted
Application number
CN2010105710901A
Other languages
English (en)
Other versions
CN102063083B (zh
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.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
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 Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201010571090.1A priority Critical patent/CN102063083B/zh
Publication of CN102063083A publication Critical patent/CN102063083A/zh
Application granted granted Critical
Publication of CN102063083B publication Critical patent/CN102063083B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明涉及一种多ECU分时下载方法,多个ECU与主控电脑共用一条总线,其特征在于,步骤如下:(1)对多个ECU分组,预设每个ECU的标识ID及优先级;(2)主控电脑启动主线程,通过总线依次访问每个ECU;(3)主控电脑启动接收线程,接收总线上每个ECU反馈消息,若反馈消息显示空闲,该ECU进入编程程序,若反馈消息显示繁忙,则该ECU退出编程;(4)主控电脑启动发送线程,发送编程命令,按照优先级对每个空闲ECU组的ECU进行编程。需要分组,实现多ECU同时在线编程;实现按优先级设置进行编程;分时下载,极大的节省了编程时间。

Description

一种多ECU分时下载方法
技术领域
本发明涉及汽车内部总线通信领域,尤其涉及一种多ECU分时下载方法。
背景技术
在汽车发动机等电控系统开发过程中,标定是必不可少的过程,为适应这一过程的通用性,汽车自动化及测量系统标准协会(ASAM)提出了支持多种传输层的通用CAN标定协议(CCP)。在标定过程中,有大量的标定参数需要进行在线下载编程(Online Programming)。标定工具与ECU是一对多的形式,控制这一过程的是标定工具中的系统引导(Bootloader)组件。该组件负责编程相关数据的管理、加载以及发送接收,保证数据传输的高效安全,以及命令正确的执行。在XCP协议中,规定了Bootloader上下位机所需遵循的规范。
Bootloader在接收到上位机(主控电脑)发送的命令后,经过解析,执行相关动作——通常是擦除或者对烧写闪存(FLASH),如果执行成功,则返回成功的命令代码,并通过总线发出,若失败,则返回故障代码,以供上位机进行分析。
Bootloader在进行在线编程时,会耗费较长的时间。这一过程在总线连接有较少ECU时尚不明显,但ECU数目一旦变大,由于上位机必须等待每一个ECU的对命令的响应,在此过程中,上位机处于闲置状态,因此浪费了大量时间,有时会明显影响标定工程师的操作。
发明内容
为解决上述问题,本发明提供一种时间利用率高、响应及时的多ECU分时下载方法。
本发明采用的技术方案是:一种多ECU分时下载方法,多个ECU与主控电脑共用一条总线,其特征在于,步骤如下:
(1)对多个ECU分组,预设每个ECU的标识ID及优先级;
(2)主控电脑启动主线程,通过总线依次访问每个ECU;
(3)主控电脑启动接收线程,接收总线上每个ECU反馈消息,若反馈消息显示空闲,该ECU进入编程程序,若反馈消息显示繁忙,则该ECU退出编程;
(4)主控电脑启动发送线程,发送编程命令,按照优先级对每个空闲ECU组的ECU进行编程。
本发明的第一优选方案为:所述的步骤(1)中,若多个ECU可共享一个编程文件,则分为一组。
本发明的第二优选方案为:每个ECU设置接收过滤模块,用于区分总线上主控电脑发送的信号和ECU发送的信号。
本发明的第三优选方案为:所述的步骤(1)中ECU分组,当ECU组中所有的ECU为空闲状态时,该组可进入步骤(4)。
本发明的技术思想在于:对于主控电脑来说,是一个一对多的过程;而对于ECU来说,这种过程与一对一时没有区别。在本发明中,系统对所有ECU进行一次遍历,得到ECU当前状态,并得到最高优先级的可操作ECU,然后发送相关命令。在不用等待ECU返回的情况下,进入下一轮查找和动作。这种情况,使得整个系统一直处在忙碌的状态,对总线利用率达到了最高。当同一个ECU组包含多个ECU时,由于共享一个编程文件,系统只需要发送一次编程命令,即可被该组内所有ECU接收到,因此降低了总的编程命令数,提高了效率。
本发明的技术优势在于:按需要分组,实现多ECU同时在线编程;实现按优先级设置进行编程;分时下载,极大的节省了编程时间。
下面结合附图和具体实施方式对本发明做进一步说明。
附图说明
图1典型上下位机通信流程
图2本实施例中的主控电脑与MCU配合工作流程
图3ECU程序流程
具体实施方式
在本实施例中,扩展了XCP的一些规定和功能,设计了一种分时的用于在线编程的Bootloader组件,并以飞思卡尔HCS12系列作为ECU对象,CAN总线作为总线对这一过程进行了实现,并对总线以及上下位机处理过程的时间进行了实时性分析和实验验证。
主控电脑(PC机)与ECU之间的通信在遵循CCP协议的基础上,为了实现本发明中的一些新的功能,扩展了部分编程命令,其中主要使用到的命令包括:
Figure BSA00000371074600031
SET_MTA:指定编程起始地址
Figure BSA00000371074600041
PROGRAM_CLEAR:擦除Flash
Figure BSA00000371074600042
PROGRAM/PROGRAM_MAX:Flash编程相关
Figure BSA00000371074600043
PROGRAM_TERMINATE:扩展的XCP命令,命令ECU退
出在线编程
在实际开发过程中,有时会遇到多个ECU同时连接的情况,而某些ECU可能共享同一个编程文件,即同一个编程文件的额内容将下载至多个ECU中。
设有N个ECU,序号为{1,2...N},需要进行下载编程,按组(Group)分为G1:{1,2...N1},G2:{N1+1,N1+2...N2}...Gm:{Nm-1+1,Nm-1+2...Nm},每组的ECU情况相同,需要下载同样的标定数据,即Bootloader组件对同一组内的ECU需要发送同样的编程相关命令。
其中,满足Nm=N。
Bootloader组件中,定义一个ECU状态表(readyTableECU[]),用来表示单个ECU的当前状态;定义一个Group状态表(readyTableGroup[]),用来表示这个组的状态;定义一个Group优先级列表(priorityTable[]),用来表示用户对每组ECU指定的优先级。
在本实施例中,就绪状态表示ECU已经完成上一次编程相关动作,可以接受新的命令;挂起状态表示ECU处于编程之中,不能接收新的命令;停止状态表示该ECU由于某种原因(如发生了故障或者已经完成了所有编程)处于不需接收任何命令,Bootloader应将该ECU排除出工作组。
参考图1,指出了下载编程中一种典型的上下位机通信方法,当多ECU进行下载时,同一时间只有一个ECU处于与上位机的连接状态,其余则断开。
参考图2,指出了本实施例的实施流程图,说明如下:
分组。定义共享同一个编程文件的ECU为同一组,对于每组定义个优先级。对每个编程文件进行解析,并通过CCP协议包装,形成一个编程缓冲池。
编号。通过设置每个ECU进行编号,使该ECU只能接收到主控电脑的命令,过滤掉其他ECU发送的消息帧;对每组ECU设置优先级;置ECU初始状态为空闲状态。ECU与主控电脑(PC机)之间通过CAN总线连接。
接收线程接收CAN总线上的消息。首先读取该CAN帧的ID标识符,通过其判断该消息的ECU出处;然后按照CCP协议解析该命令,命令显示成功,则将该ECU的状态表对应位重新置为空闲状态;否则,按照故障处理,将ECU的状态表对应位置为结束状态,该ECU退出编程。
系统主线程查找空闲的ECU组,该组内所有ECU都进入空闲时,该组才为空闲;并通过优先级列表查询出优先级最高的ECU,将编程缓冲池中的相关命令置于发送线程,然后进入下一轮查找过程。
参考图3,指出了ECU运行的程序流程图。在与总线连接的情况下,接收总线的信息并遵循CCP协议进行解析,执行相应的动作,将完成情况反馈给PC机
各位技术人员须知,虽然本发明按照上述实施例对本发明做了进一步描述,但是本发明的发明思想不仅仅限于本实施例,如若是基于本发明发明思想的变化,皆在本发明保护范围内。

Claims (4)

1.一种多ECU分时下载方法,多个ECU与主控电脑共用一条总线,其特征在于,步骤如下:
(1)对多个ECU分组,预设每个ECU的标识ID及优先级;
(2)主控电脑启动主线程,通过总线依次访问每个ECU;
(3)主控电脑启动接收线程,接收总线上每个ECU反馈消息,若反馈消息显示空闲,该ECU进入编程程序,若反馈消息显示繁忙,则该ECU退出编程;
(4)主控电脑启动发送线程,发送编程命令,按照优先级对每个空闲ECU组的ECU进行编程。
2.根据权利要求1所述的一种多ECU分时下载方法,其特征在于:所述的步骤(1)中,若多个ECU可共享一个编程文件,则分为一组。
3.根据权利要求1所述的一种多ECU分时下载方法,其特征在于:每个ECU设置接收过滤模块,用于区分总线上主控电脑发送的信号和ECU发送的信号。
4.根据权利要求1或2所述的一种多ECU分时下载方法,其特征在于:所述的步骤(1)中ECU分组,当ECU组中所有的ECU为空闲状态时,该组可进入步骤(4)。
CN201010571090.1A 2010-11-29 2010-11-29 一种多ecu分时下载方法 Expired - Fee Related CN102063083B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010571090.1A CN102063083B (zh) 2010-11-29 2010-11-29 一种多ecu分时下载方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010571090.1A CN102063083B (zh) 2010-11-29 2010-11-29 一种多ecu分时下载方法

Publications (2)

Publication Number Publication Date
CN102063083A true CN102063083A (zh) 2011-05-18
CN102063083B CN102063083B (zh) 2014-10-08

Family

ID=43998393

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010571090.1A Expired - Fee Related CN102063083B (zh) 2010-11-29 2010-11-29 一种多ecu分时下载方法

Country Status (1)

Country Link
CN (1) CN102063083B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103795647A (zh) * 2012-11-01 2014-05-14 鼎点视讯科技有限公司 数据采集方法、数据采集器和系统
CN106302063A (zh) * 2016-08-12 2017-01-04 深圳市沃特玛电池有限公司 Can通信线电路系统及其终端电阻接入控制方法
CN109460254A (zh) * 2018-09-25 2019-03-12 杭州旗捷科技有限公司 一种指令处理方法、cpu交互系统及采用该系统的耗材芯片

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222525A (zh) * 2008-01-24 2008-07-16 浙江大学 自适应通信主体物理拓扑结构的多ecu消息通信方法
CN101547149A (zh) * 2009-04-20 2009-09-30 浙江大学 一种基于can网络的osek com消息动态调度方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222525A (zh) * 2008-01-24 2008-07-16 浙江大学 自适应通信主体物理拓扑结构的多ecu消息通信方法
CN101547149A (zh) * 2009-04-20 2009-09-30 浙江大学 一种基于can网络的osek com消息动态调度方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨时威等: ""基于XCP协议的混合动力车多电控单元标定系统"", 《上海交通大学学报》, vol. 41, no. 10, 31 October 2007 (2007-10-31), pages 1620 - 2 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103795647A (zh) * 2012-11-01 2014-05-14 鼎点视讯科技有限公司 数据采集方法、数据采集器和系统
CN106302063A (zh) * 2016-08-12 2017-01-04 深圳市沃特玛电池有限公司 Can通信线电路系统及其终端电阻接入控制方法
CN109460254A (zh) * 2018-09-25 2019-03-12 杭州旗捷科技有限公司 一种指令处理方法、cpu交互系统及采用该系统的耗材芯片

Also Published As

Publication number Publication date
CN102063083B (zh) 2014-10-08

Similar Documents

Publication Publication Date Title
CN109164783B (zh) 车辆诊断方法、装置、设备及介质
CN107896162B (zh) 监控系统的部署方法、装置、计算机设备及存储介质
CN106941516B (zh) 基于工业互联网操作系统的异构现场设备控制管理系统
US8644959B2 (en) System and method for functionalization in line with demand, for control and regulatory devices
US9229440B2 (en) Method for the configuration of a control device
US9880927B2 (en) Functionally expandable vehicle control device and method for supplementing the functionality of a vehicle control device
US20110238188A1 (en) Engineering tool
US20090125656A1 (en) Method and Arrangement for the Automatic Configuration of a Master-Slave Field Bus System
CN113189970B (zh) Can总线控制器的硬件在环自动测试方法、系统及存储介质
CN107066413B (zh) 一种用于处理多个总线设备数据的方法及其总线系统
JP2016115344A (ja) メモリマップを利用するためのシステムおよび方法
CN103617061A (zh) 基于arm的多节点在线更新软件的方法
CN102063083B (zh) 一种多ecu分时下载方法
US20090210073A1 (en) Can System
CN102902526A (zh) 一种通过延时实现bmc及ip信息的自动化设置方法
CN106775818B (zh) 基于can总线的ecu升级方法及ecu升级设备
EP3012700B1 (en) Programmable controller and control method for programmable controller
CN115733871A (zh) 通信交互方法、装置、设备及存储介质
US7508770B2 (en) Method for the project engineering of an automation system
CN107453903B (zh) 一种识别通讯从站的方法和系统以及一种存储设备
KR101354698B1 (ko) 차량용 전자 제어 장치의 동작 방법
KR102354062B1 (ko) 직접 메모리 액세스 제어 장치 및 그 작동 방법
CN111722870B (zh) 一种电控单元的驱动配置方法、装置、设备及存储介质
US8619778B2 (en) Method for automatic address allocation to a communication partner and a communication partner
US20230333841A1 (en) Electronic control apparatus, reprogram execution method, and non-transitory computer readable storage medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20141008

Termination date: 20201129

CF01 Termination of patent right due to non-payment of annual fee