System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及变量观测,特别涉及一种控制器的变量观测方法、装置及电子设备。
技术介绍
1、电子控制单元(electronic control unit,ecu)是车辆系统中的中枢系统,在对车辆系统进行开发调试过程中,需要对ecu的内部参数进行观测和标定。
2、相关技术中,一般采用通用测量和标定协议(universal measurement andcalibration protocol,xcp)实现对ecu内部定义的变量的观测和标定,然而,现有的基于xcp的变量观测方法只适用于地址固定的全局变量,无法实现对局部变量的观测。
技术实现思路
1、本专利技术提供一种控制器的变量观测方法、装置及电子设备,用以解决现有技术中的基于xcp的控制器变量观测方法,无法实现对局部变量进行观测的问题。
2、第一方面,本专利技术实施例提供一种控制器的变量观测方法,包括:
3、针对控制器中任意一个功能模块,将所述功能模块中的预设局部变量作为基准变量;
4、根据所述基准变量对应的数据类型、待测局部变量对应的数据类型以及所述待测局部变量和所述基准变量的位置关系,确定所述待测局部变量的偏移地址,其中,所述待测局部变量为所述功能模块中除预设局部变量之外的其他局部变量;
5、根据所述基准变量的实时地址和所述待测局部变量的偏移地址,确定所述待测局部变量的绝对地址;
6、根据所述绝对地址,对所述待测局部变量对应的变量值进行观测。
7、
8、在一种可选的实施方式中,所述根据所述基准变量对应的数据类型、待测局部变量对应的数据类型以及所述待测局部变量和所述基准变量的位置关系,确定所述待测局部变量的偏移地址,包括:
9、根据所述基准变量对应的数据类型,在预设的数据类型与数据长度的对应关系中,查找所述基准变量对应的第一数据长度,以及
10、根据所述待测局部变量对应的数据类型,在所述数据类型与数据长度的对应关系中,查找与所述待测局部变量对应的第二数据长度;
11、根据所述待测局部变量和所述基准变量的位置关系以及所述第一数据长度,确定第一地址区域,以及根据所述待测局部变量和所述基准变量的位置关系以及所述第二数据长度,确定第二地址区域;
12、根据所述第一地址区域和所述第二地址区域,确定所述偏移地址。
13、上述方法,通过基准变量对应的数据类型、待测局部变量对应的数据类型以及待测局部变量和基准变量的位置关系,确定基准变量对应的第一地址区域,以及待测局部变量对应的第二地址区域,从而根据第一地址区域和第二地址区域计算得到待测局部变量相对于基准变量的偏移地址。由于该偏移地址是固定的,因此,通过该偏移地址可实现对待测局部变量对应的变量值的观测。
14、在一种可选的实施方式中,所述根据所述待测局部变量和所述基准变量的位置关系以及所述第一数据长度,确定第一地址区域,包括:
15、若所述基准变量为所述功能模块中定义的第一个局部变量,则将预设地址作为所述第一地址区域中的首位地址,并将所述第一数据长度作为所述第一地址区域的长度,以得到所述第一地址区域;
16、若所述基准变量为所述功能模块中定义的非第一个局部变量,则根据第一目标局部变量对应的第二地址区域中的末位地址,确定第三数据长度,根据所述第三数据长度与所述第一数据长度的比值,确定所述第一地址区域中的首位地址,并将所述第一数据长度作为所述第一地址区域的长度,以得到所述第一地址区域,其中,所述第一目标局部变量为定义在所述基准变量之前,且与所述基准变量相邻的待测局部变量。
17、在一种可选的实施方式中,所述根据所述第三数据长度与所述第一数据长度的比值,确定所述第一地址区域中的首位地址,包括:
18、若所述第三数据长度与所述第一数据长度的比值为整数,则将所述第一目标局部变量对应的第二地址区域中的末位地址和预设步长的和值,作为所述第一地址区域中的首位地址;
19、若所述第三数据长度与所述第一数据长度的比值为非整数,则对所述比值向上取整,并将向上取整的结果与所述第一数据长度的乘积,作为第四数据长度,将所述第四数据长度对应的地址与所述预设步长的和值,作为所述第一地址区域中的首位地址。
20、上述方法,将第一数据长度作为第一地址区域的长度,并根据基准变量在功能模块中定义的位次,确定第一地址区域中的首位地址,从而确定用于存储基准变量的第一地址区域。
21、在一种可选的实施方式中,所述根据所述待测局部变量和所述基准变量的位置关系以及所述第二数据长度,确定第二地址区域,包括:
22、若所述待测局部变量为所述功能模块中定义的第一个局部变量,则将预设地址作为所述第二地址区域中的首位地址,并将所述第二数据长度作为所述第二地址区域的长度,以得到所述第二地址区域;
23、若所述待测局部变量为所述功能模块中定义的非第一个局部变量,则根据第二目标局部变量对应的地址区域中的末位地址,确定第五数据长度,根据所述第五数据长度与所述第二数据长度的比值,确定所述第二地址区域中的首位地址,并将所述第二数据长度作为所述第二地址区域的长度,以得到所述第二地址区域,其中,所述第二目标局部变量为定义在所述待测局部变量之前,且与所述待测局部变量相邻的局部变量,所述第二目标局部变量包括所述待测局部变量或所述基准变量。
24、在一种可选的实施方式中,所述根据所述第五数据长度与所述第二数据长度的比值,确定所述第二地址区域中的首位地址,包括:
25、若所述第五数据长度与所述第二数据长度的比值为整数,则将所述第二目标局部变量对应的地址区域中的末位地址和预设步长的和值,作为所述第二地址区域中的首位地址;
26、若所述第五数据长度与所述第二数据长度的比值为非整数,则对所述比值向上取整,并将向上取整的结果与所述第二数据长度的乘积,作为第六数据长度,将所述第六数据长度对应的地址与所述预设步长的和值,作为所述第二地址区域中的首位地址。
27、上述方法,将第二数据长度作为第二地址区域的长度,并根据待测局部变量在功能模块中定义的位次,确定第二地址区域中的首位地址,从而确定用于存储待测局部变量的第二地址区域。
28、在一种可选的实施方式中,所述根据所述第一地址区域和所述第二地址区域,确定所述偏移地址,包括:
29、将所述第二地址区域中的首位地址与所述第一地址区域中的首位地址的差值,作为所述待测局部变量的偏移地址。
30、上述方法,通过计算第二地址区域中的首位地址与第一地址区域中的首位地址的差值,从而得到待测局部变本文档来自技高网...
【技术保护点】
1.一种控制器的变量观测方法,其特征在于,包括:
2.如权利要求1所述的方法,其特征在于,所述根据所述基准变量对应的数据类型、待测局部变量对应的数据类型以及所述待测局部变量和所述基准变量的位置关系,确定所述待测局部变量的偏移地址,包括:
3.如权利要求2所述的方法,其特征在于,所述根据所述待测局部变量和所述基准变量的位置关系以及所述第一数据长度,确定第一地址区域,包括:
4.如权利要求3所述的方法,其特征在于,所述根据所述第三数据长度与所述第一数据长度的比值,确定所述第一地址区域中的首位地址,包括:
5.如权利要求2所述的方法,其特征在于,所述根据所述待测局部变量和所述基准变量的位置关系以及所述第二数据长度,确定第二地址区域,包括:
6.如权利要求5所述的方法,其特征在于,所述根据所述第五数据长度与所述第二数据长度的比值,确定所述第二地址区域中的首位地址,包括:
7.如权利要求2所述的方法,其特征在于,所述根据所述第一地址区域和所述第二地址区域,确定所述偏移地址,包括:
8.如权利要求1-7任一所
9.一种控制器的变量观测装置,其特征在于,包括:
10.一种电子设备,其特征在于,包括:
...【技术特征摘要】
1.一种控制器的变量观测方法,其特征在于,包括:
2.如权利要求1所述的方法,其特征在于,所述根据所述基准变量对应的数据类型、待测局部变量对应的数据类型以及所述待测局部变量和所述基准变量的位置关系,确定所述待测局部变量的偏移地址,包括:
3.如权利要求2所述的方法,其特征在于,所述根据所述待测局部变量和所述基准变量的位置关系以及所述第一数据长度,确定第一地址区域,包括:
4.如权利要求3所述的方法,其特征在于,所述根据所述第三数据长度与所述第一数据长度的比值,确定所述第一地址区域中的首位地址,包括:
5.如权利要求2所述的方法,其特征在于,所述根据所述待测局部...
【专利技术属性】
技术研发人员:刘晓波,史家涛,刘晓冬,李富民,赵星阳,
申请(专利权)人:潍柴动力股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。