canape软件应用
这两个月来一直在学习VECTOR的软件CANape,下面就这个两个月的调试做一些整理。
CANape软件可以对下位机进行测量、标定、诊断,目前我们的项目主要是测量和标定。
我用的协议是CCP协议。
测量其实比较简单,有两种模式进行测量。***就是上位机(CANape)定时的发命令给下位机,然后要求下位机在一定的时间内返回该命令对应的返回值。其实说白了就是查询。第二就是上位机发命令启动下位机,让下位机自动的、按一定时间间隔进行数据传输。所谓的DAQ模式。
标定,标定RAM里面的数据很简单,就是你修改了RAM里面的数据之后,上位机会立即发命令给下位机,通知该RAM空间的数据进行更新。
标定EEPROM里面的数据也叫简单,跟标定RAM里面的数据差不多。其实他就是多了一个EEPROM空间的擦除函数。因为EEPROM数据的标定必须先擦除再写。幸好的是EEPROM里面的数据擦除不像FLASH一样一擦除就一个扇区。只是擦除连续的4个字节,而写却是连续的2个字节。所以再写2个字节的时候,你就得先擦除4个字节。因此就得考虑后面两个被擦除的字节必须得重写原来的数据一次
标定FLASH里面的数据比较麻烦。因为如果你要更新一个扇区里面的一个字节,就得擦除这个扇区的所有内容。所以你重新写FLASH的时候就得把原来的数据重新写一遍。目前我采取的做法都是先把FLASH里面的数据拷贝到RAM里面,先标定RAM里面的数据。等你把这些数据标定好后再重新刷到FLASH里面。还有要考虑得是FLASH数据的存储问题。不能把数据表格跟程序放一起。因为如果放在一个扇区的话,你写FLASH就会先把程序擦除掉。很有可能程序就会跑飞。
CANape软件的应用:
***步就是建立上位机与下位机的逻辑连接,就是发命令给下位机。因为是CCP是基于CAN总线的,因此就要求按照CAN的接口。要设置接收ID和发送ID,上位机也有这两个填写项,设置一样就OK。其次就是波特率设置成一样。波特率里面的时间段1和时间段2的比***设置成0.875。最后就是设置下位机的逻辑链接地址,这里要注意的是上位机的逻辑地址是按照Intel格式设置的。然后点击test connection看一下是否可以链接。如果下位机的CCP协议写好了,是可以communication的。
第二步就是建立DB,整个DB都是基于MAP文件的。MAP文件其实就是你程序里面的变量、函数等这些的地址映射的一个文件。利用这个MAP文件建立DB,在CANape就可以通过这个变量的地址来访问数据。
第三步就是建立测量、标定等的窗口。
第四步就是进行测量标定
INCA 数据采集一定需要用CAN卡(ES580等)么?
貌似国内有专门做这一块硬件的,我见到过CAN卡,仿ETAS公司的产品的,效果还是一样的!
在CCP标定协议使用时,Calibration data和DAQ模式使用有什么区别,如何使用?
CCP2.0还是CCP2.1?
你是要实现协议还是应用协议?做标定软件吗?
首先得看你的ECU是否支持数据标定(CAL)和数据查询(DAQ)(一般还有一个资源,PGM,程序刷写)。支持的话,是否对资源使用了权限设置。使用了的话,密码-种子算法为何?这里牵涉到CCP命令有CONNECT,GET_CCP_VERSION,EXCHANGE_ID,GET_SEED,UNLOCK。数据标定使用SET_MTA,DNLOAD,DNLOAD6,UPLOAD,SHORT_UPLOAD等;数据查询需要设置DAQList和ODTList,命令有GET_DAQ_SIZE,SET_DAQ_PTR,WRITE_DAQ,START_STOP。你下载一份CCP2.1协议看下吧。
总而言之,CAL和DAQ是2个不同模块(第3个是PGM)。CAL通常用于数据标定(数据下载和数据上传),DAQ用于数据查询(数据采集)。CAL需要标定数据的地址描述信息等(标定数据MAP图和初始数据),DAQ也需要一个监控变量的地址描述文件(典型的有如ASAP2文件)。使用的话,一般是封装在标定软件或诊断软件里面,如果你是做标定软件的,你应该自己看手册自己实现;如果你是标定工程师,你应该看标定软件手册。
我的小松泉混合动力车两个控制器一样吗
我的小松泉混合动力车两个控制器一样吗
一种最接近实用化的新能源汽车,混合动力车既具备传统燃油车的长处又汲取了电动车的优势,在有效提高经济性和降低排放方面有很好的发展前景。整车控制器(VCU)用于实现能量管理和动力系统控制,是混合动力车的控制中枢。VCU中的控制参数是实现混合动力车性能的关键因素之一,必须进行相应的优化和标定工作。 标定是VCU开发过程中的一个重要环节,而标定系统的选用关系到标定质量、标定时间和标定成本。基于CCP协议的标定方式能够实现便捷、可靠和高效的在线标定。论文在简要介绍CCP协议和标定系统组成的基础上
网络语言ccp什么意思
cpp(多重含义)CPP是有多个义项。催化热裂解,合作框架协议,每次购买成本,采购专业资格证书,中国石油天然气管道局,程序设计语言,CPP薄膜,脑灌注压,酪蛋白磷酸肽,慢性盆腔疼痛等。
怎么用INCA生成cag文件
1.修改原可用A2L的如下段
/begin SOURCE
"10ms" 0x0 0x0
DISPLAY_IDENTIFIER "10ms"
/begin QP_BLOB
1
LENGTH 10
CAN_ID_FIXED 0x80000101
RASTER 1
FIRST_PID 10
/end QP_BLOB
/end SOURCE
CAN_ID_FIXED 0x80000101 此条为必须添加的项,INCA在允许自己定义DAQLIST的CANID,所以必须定义,否则不能监控变量。(尽管DAQLIST周期发送正常) 此处还要看ECU底层CCP协议中的DAQ具体使用什么CANID来发送数据帧。(我们使用的是101)
2.修改如下段
/begin MOD_PAR ""
/begin MEMORY_SEGMENT
Ram2000 "" VARIABLES RAM INTERN 0x2000 0x2000 -1 -1 -1 -1 -1
/end MEMORY_SEGMENT
/begin MEMORY_SEGMENT
Dst4000 "" DATA FLASH INTERN 0x4000 0x4000 -1 -1 -1 -1 -1
/end MEMORY_SEGMENT
/begin MEMORY_SEGMENT
DstC000 "" CODE FLASH INTERN 0xC000 0x3F00 -1 -1 -1 -1 -1
/end MEMORY_SEGMENT
/begin MEMORY_SEGMENT
DstE08000 "" CODE FLASH EXTERN 0xE08000 0x74000 -1 -1 -1 -1 -1
/end MEMORY_SEGMENT
/begin MEMORY_SEGMENT
DstF88000 "" CODE FLASH EXTERN 0xF88000 0x74000 -1 -1 -1 -1 -1
/end MEMORY_SEGMENT
/end MOD_PAR
内存布局的分配,此处填写不对的话,与.s19文件无法对应,会提示A2L文件有问题,具体定义可以参考PRM文件,以及底层CCP中的相关内存布局的宏定义。
其他部分不用更改。(注意EXTERN 和INTERN 关键字,使用不分页内存时用INTERN ;分页的使用EXTERN)
3.修改如下段:
/begin DEFINED_PAGES
0x1 "Working Page" 0x0 0xFC1000 0x1000
RAM
RAM_INIT_BY_ECU
FLASH_BACK
/end DEFINED_PAGES
/begin DEFINED_PAGES
0x2 "Reference Page" 0x0 0x4000 0x4000
FLASH
DEFAULT
/end DEFINED_PAGES
填写工作页和参考页的地址,具体方法如下,参考页为要标定的FLASH数据区,里面存有相应的APP常量,地址参见.PRM文件,或者是CCP头文件中相关区段的地址定义。
工作页,为普通的RAM区,地址设置值参见.PRM,本例中选用了分页RAM 0xFC1000,未使用.prm中已经定义好的有数据的内部RAM。(使用内部RAM 0x2000 是否好用可以实践验证)
4.修改INCA的CCP驱动配置文件目录如下:
C:ETASETASShared9DevicesCCP
中的CCP.ini文件下的
;DNLOAD
CCP21_CMD_0x03_Timeout=800 (原来时间是80MS)
此处可以将时间改的大一些,我们修改此处的原因是发现INCA同ECU通信过程中,命令的超时时限不同,导致INCA在很短的超时时间内(我们ECU往FLASH中写数据时比较慢)不断给ECU发送命令最终导致操作失败。(注意我们修改此处原因是由于标定数据时候不正常,对应写数据命令为CCP21_CMD_0x03,通过监控CAN通信过程,发现了是超时时限太小的原因。类似的问题都可通过抓INCA与ECU之间的通信数据包来分析解决,也可以修改其他命令的时限)。
注:找到有效解决问题的方法更关键!当然也要有好的工具。
ccp协议的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于CCP协议 下载 不起作用、ccp协议的信息别忘了在本站进行查找喔。