欢迎来到天天文库
浏览记录
ID:27850947
大小:521.00 KB
页数:11页
时间:2018-12-06
《关于基于XCP协议支持多总线的ECU标定系统的实现.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、关于基于XCP协议支持多总线的ECU标定系统的实现0引言 汽车技术的飞速发展使得汽车电子控制单元(ElectronicControlUnit,ECU)中包含的控制参数大量增加,标定工作复杂度越来越高。在ECU开发过程中,控制参数的标定工作直接影响整车性能的优劣。面对日趋多样的ECU和通信总线类型,开发一种支持多总线的、通用灵活的标定系统,具有非常高的实用价值[1]。目前,CAN总线作为一种可靠的汽车总线已经广泛应用于高档汽车,因而多数标定系统都是基于CCP(CANCalibrationProtocol)协议开发的,具有一定的通用性[2]。但随着更为先进的FlexRay通信
2、总线迅速发展,开发出一种既支持当下主流的CAN总线,又兼容代表汽车总线趋势的FlexRay总线的标定系统,无疑具有很高的技术应用价值。 本文基于XCP协议设计了一套ECU标定系统,充分利用了XCP协议物理传输层与协议层相互独立的特性,基于同一协议层分别实现了对CAN总线和FlexRay总线的支持,大大提高了标定系统的总线兼容性与可扩展性。1标定系统总体方案设计 XCP协议由自动化及测量系统标准协会(AssociationforStandardizationofAutomationandMeasuringsystem,ASAM)提出,是对原有CCP2.1协议的继承和升级,
3、力求使用最小的系统和硬件资源开销实现高效通信[3]。该协议分别定义了协议层、传输层和接口层,其最突出的特点就是协议层独立于传输层。对于不同类型的通信总线,只需要将XCP报文(XCPMessage)的报文头和报文尾填上对应信息,而中间部分的XCP数据包(XCPPacket)由协议层定义,完全不受影响。因此XCP标定协议能够极好地适应总线多样化对标定系统通用性提出的要求。目前,ASAM已经在标准中定义的传输层包括:XCP-on-CAN、XCP-on-Ethernet(TCP/IP、UDP/IP)、XCP-on-SXI(SPI、SCI)、XCP-on-USB和XCP-on-Fle
4、xRay[3]。根据后续的实际需求,也考虑进一步定义XCP-on-LIN、XCP-on-K-Line和XCP-on-MOST。 图1是标定系统总体架构设计方案。整个标定系统框架遵循ASAM-MCD标准(原ASAP标准)搭建,包括运行于PC端的上位机标定软件、负责上位机和下位机之间通信的通信控制单元和下位机ECU。ECU端采用Freescale公司的MC9S12XF512芯片。上位机集成了方便用户进行测量和标定的图形界面以及XCP命令解析模块,用户请求经由上位机XCP协议模块打包,通过通信控制单元发送至下位机ECU通信接口,再由集成在ECU中的XCP驱动模块解析后调用对应命
5、令处理模块进行操作,将处理结果打包并通过通信控制单元发送回上位机。根据通信介质的不同,需要对XCP协议帧的帧头和帧尾进行对应的信息填充。本文设计的标定系统同时支持当下主流的CAN通信总线和代表未来汽车总线发展趋势的FlexRay总线。 2XCP协议驱动程序的实现 XCP协议以主从方式工作,并使用命令传输对象(CommandTransferObject,CTO)和数据传输对象(DataTransferObject,DTO)两种数据包来区分主从节点间的通信,如图2所示。 XCP协议规定了3种通信模式,分别是标准通信模式(StandardMode)、块传输通信模式(Bl
6、ockTransferMode)和交错传输通信模式(InterleavedMode)。本文设计的标定系统适用于CAN总线和FlexRay总线,采用标准通信模式,即在主机主动发起会话建立连接之后,对于主机发送的每一条命令,从机都必须进行响应处理,如出错则返回错误报告信息。在没有接收到从机对上一条命令的应答之前,主机不会发送新的命令[4]。2.1下位机端XCP协议驱动程序的实现 XCP协议作为对CCP协议的升级,其所具有的一个重要新功能是对冷启动测量的支持,即所谓的RESUME模式[3]。集成了XCP协议驱动的下位机启动后其状态机模型如图3所示。 从节点设备启动并完成初
7、始化后,会立刻检测ECU的非易失存储介质中是否有已配置好的DAQlist供RESUME模式使用,如果有,则进入RESUME模式,按配置列表周期性向上位机发送数据;如果没有相关配置文件,则进入DICONNECTED模式。在RESUME模式和DISCONNECTED模式下,从设备只响应来自主机的CON-NECT命令(XCP-ON-CAN条件下还可响应GET_SLAVE_ID命令)。下位机端XCP驱动的工作流程如图4所示。 按照主从通信模式,从机端使用中断方式对主机的命令进行响应。从机启动后会首先完成系统的初始化工
此文档下载收益归作者所有