问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

XCP协议基础:功能、架构与CCP协议的区别

创作时间:
作者:
@小白创作中心

XCP协议基础:功能、架构与CCP协议的区别

引用
CSDN
1.
https://m.blog.csdn.net/m0_56208280/article/details/145169938

XCP(eXtended Calibration Protocol)协议,即扩展标定协议,也被称为通用测量与标定协议(Universal Measurement and Calibration Protocol)。其中的“X”代表任意的传输层,如CAN、CANFD、FlexRay、Ethernet等。XCP协议是在CAN标定协议(CCP)的基础上发展而来的,旨在满足汽车工业对动态数据交换和ECU(电子控制单元)校准的需求。该协议由ASAM工作委员会(自动化和测量系统标准化协会)标准化,ASAM是汽车OEM、供应商和工具生产商的组织。

XCP的主要功能

  1. 数据测量功能
  • 实时数据采集:XCP能够实时获取ECU内部各种信号与变量的值,例如发动机的转速、温度、节气门开度等。主设备可按照设定的频率向ECU发送请求,从设备迅速响应并返回相关数据,使工程师能动态监测系统运行状态。
  • 多类型数据支持:支持多种数据类型的测量,包括整型、浮点型、字符型等。这确保了可以对ECU中不同性质的参数进行准确测量,无论是简单的开关量信号,还是复杂的连续变化的物理量数据。
  • 同步测量:可实现多个信号的同步测量,通过精确的时间戳标记,保证测量数据在时间上的一致性。这对于分析多个相互关联参数间的动态关系至关重要,例如发动机喷油时刻与活塞位置的同步测量,有助于优化燃烧过程。
  1. 参数标定功能
  • 在线参数修改:工程师无需重新烧写整个ECU程序,就能通过XCP协议在车辆运行过程中实时修改ECU内部的控制参数。例如,在发动机研发过程中,可随时调整喷油脉宽、点火提前角等关键参数,快速验证不同参数设置对发动机性能的影响。
  • 非易失性存储:标定后的参数不仅能在ECU运行时生效,还能通过XCP协议安全地存储到ECU的非易失性存储器(如Flash)中。这样即使车辆断电重启,修改后的参数依然保持有效,确保车辆性能的稳定性和一致性。
  • 参数分组管理:对于复杂的ECU系统,内部存在大量需要标定的参数。XCP允许将这些参数进行分组管理,方便工程师根据功能模块或特定需求,对不同组别的参数进行集中标定和调整,提高工作效率。
  1. 内存访问功能
  • 直接内存读取与写入:XCP协议允许主设备直接访问ECU内部的内存区域,包括程序内存(ROM)和数据内存(RAM)。这意味着不仅可以读取存储在内存中的常量数据,还能修改运行时的数据变量,为深入调试和优化ECU程序提供了强大手段。

什么是标定

标定是根据ECU的性能要求或者整车的性能要求,修改调整或者优化ECU内部参数的过程。例如,已知电机转速y和电压x之间存在如下关系:y=ax+b,基于此算法编写了一个算法代码;为了使电机转速y达到最佳,需要进行不断的测试:通过更改系数a或者常量b,然后观察y的值,循环往复,将观察到的数据进行记录,然后总结出能够使电机运行状况达到最优工况下的a和b的值,并更改算法控制程序。整个过程就是一次标定的过程。

什么时候进行标定

  • 零部件更换后
  • 软件升级后
  • 车辆碰撞或维修后
  • 日常定期维护

标定的意义

标定可确保不同的车辆系统协调高效地运行。正确的标定可以优化油耗、最大限度地提高性能、减少排放并增强安全性能。如果没有定期标定,车辆可能无法发挥预期性能,从而导致效率低下和潜在的安全风险。汽车行业的标定工作在确保汽车以最佳性能和安全性运行方面发挥着举足轻重的作用。

XCP协议的结构

XCP协议分为以下几个部分:

  • Part 1 – Overview:XCP协议概述,包括XCP的特点描述以及XCP协议的基本原理。
  • Part 2 – Protocol Layer Specification:对协议层进行详细的规范和说明,包括XCP数据包类型、格式以及各命令使用说明。
  • Part 3 – Transport Layer Specification:该部分包含5份文档,分别对应5个不同的传输层(CAN,Ethernet/TCP_IP,FlexRay,SxI/SCI&SPI,USB),规定不同总线下传输层的实现。
  • Part 4 – Interface Specification:该部分对A2L描述文件、秘钥与种子加解密、数据校验功能说明。
  • Part 5 – Example Communication Sequences:该部分描述了部分通信数据流,演示如何使用XCP协议的命令同ECU进行通讯。XCP通信协议方式XCP数据包主要有两种形式:传输控制命令的CTO(Command Transfer Object)和同步数据包DTO(Data Transfer Object)。

XCP协议和CCP协议的区别

XCP是继CCP(CAN校准协议)之后的协议升级版,基于CAN的部分基本没有改变。XCP的开发旨在通过不同的传输媒介来实现此功能。CCP协议是基于CAN总线传输的协议,而XCP除了支持CAN总线外,还支持FlexRay、Ethernet等多种通讯方式。

参考资料

  • 【汽车电子】万字详解汽车标定与XCP协议
  • 【官方自制】CANape基础教程合集(更新中)
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号