扭矩传感器的零点校正方法和装置转让专利

申请号 : CN201110449600.2

文献号 : CN102564689B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 钟柳杰孙建军

申请人 : 浙江智慧电装有限公司浙江吉利控股集团有限公司

摘要 :

本发明公开了一种扭矩传感器的零点校正方法和装置,方法包括静态零点学习和动态零点修正,并按照一定时序和算法相互校验印证,以滤除扰动,保证控制的准确性;可以在用户使用过程中实时动态地跟踪零点偏差。本发明将控制算法限定在扭矩传感器的极限范围内,严格确保零点校正的安全性,保证用户驾驶过程中,转向系统始终对称均衡,即便超出一定的零点校正范围,控制器也会立即切断助力输出,点亮故障灯,最大限度给予用户驾驶舒适性和安全性;使电动助力转向系统达到最佳匹配,延长产品的使用时间。

权利要求 :

1.一种扭矩传感器的零点校正方法,其特征在于,包括如下步骤:

(1)静态零点学习:

a)分别读取扭矩传感器的前几次上电工作后确认并保存的零点基准值得到零点基准值队列;

b)采集扭矩传感器本次上电时的原始零点基准值;

c)将步骤b)的原始零点基准值与步骤a)中的各个零点基准值相比较;

若相比较的差值均处于设定范围内,则将步骤b)的原始零点基准值作为静态零点学习后得到的临时零点基准值;否则将步骤a)中扭矩传感器上一次上电工作后确认并保存的零点基准值作为静态零点学习后得到的临时零点基准值;

(2)动态零点修正:

d)在设定的时间窗口内按照预定的时间间隔采样扭矩传感器信号;

e)将步骤d)中的每一个当前采样值利用其前一个滤波值进行一阶滤波,得到时间窗口内与每一个采样值相对应的滤波值;

f)将步骤e)得到的同一时间窗口内的滤波值进行遇限削弱积分,即将每一个滤波值分别与步骤c)的临时零点基准值作差,得到差值,将处于设定范围内的差值累加得到累加值;

g)利用所述的累加值和当前车速滤波值确定与本次时间窗口相对应的当前初始修正值,利用与前两次的时间窗口相对应的二阶滤波值对当前初始修正值进行二阶滤波,得到当前初始修正值的二阶滤波值,若该二阶滤波值大于预设的安全修正值,则将预设的安全修正值作为修正值,否则将该二阶滤波值作为修正值;所述的当前车速滤波值即为当前时间窗口结束时车速所对应的滤波值;

将步骤c)的临时零点基准值与得到的修正值相加得到动态零点修正后的零点修正值。

2.如权利要求1所述的扭矩传感器的零点校正方法,其特征在于,步骤a)中分别读取扭矩传感器的前三次上电工作后确认并保存的零点基准值得到零点基准值队列。

3.如权利要求2所述的扭矩传感器的零点校正方法,其特征在于,步骤b)中连续采样八次得到八个原始零点基准值,通过中值滤波取四个中间值,并取该四个中间值的平均值作为所述的原始零点基准值。

4.如权利要求3所述的扭矩传感器的零点校正方法,其特征在于,步骤d)中所述的时间窗口为10~60秒,预定的时间间隔为500~1000微秒。

5.如权利要求1~4任一项所述的扭矩传感器的零点校正方法,其特征在于,在掉电保持中,采集一个掉电时刻的零点基准值,将该掉电时刻的零点基准值与步骤c)的临时零点基准值作差,若差值处在设定范围内则利用掉电时刻的零点基准值更新所述的零点基准值队列;否则利用步骤c)的临时零点基准值更新所述的零点基准值队列。

6.如权利要求5所述的扭矩传感器的零点校正方法,其特征在于,步骤c)所述的临时零点基准值与扭矩传感器默认的零点基准值之间的差应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内,否则发出报警信号,并切断电动助力转向系统的输出。

7.如权利要求6所述的扭矩传感器的零点校正方法,其特征在于,步骤g)所述的修正值应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内,否则发出报警信号,并切断电动助力转向系统的输出。

8.一种扭矩传感器的零点校正装置,其特征在于,包括:

模块A、用于分别读取扭矩传感器的前几次上电工作后确认并保存的零点基准值得到零点基准值队列;

模块B、用于采集扭矩传感器本次上电时的原始零点基准值;

模块C、用于将模块B的原始零点基准值与模块A中的各个零点基准值相比较;

若相比较的差值均处于设定范围内,则将模块B的原始零点基准值作为静态零点学习后得到的临时零点基准值;否则将模块A中扭矩传感器上一次上电工作后确认并保存的零点基准值作为临时零点基准值;

模块D、用于在设定的时间窗口内按照预定的时间间隔采样扭矩传感器信号;

模块E、用于将模块D中的每一个当前采样值利用其前一个滤波值进行一阶滤波,得到时间窗口内与每一个采样值相对应的滤波值;

模块F、用于将模块E得到的同一时间窗口内的滤波值进行遇限削弱积分,即将每一个滤波值分别与模块C的临时零点基准值作差,得到差值,将处于设定范围内的差值累加得到累加值;

模块G、用于利用所述的累加值和当前车速滤波值确定与本次时间窗口相对应的当前初始修正值,利用与前两次的时间窗口相对应的二阶滤波值对当前初始修正值进行二阶滤波,得到当前初始修正值的二阶滤波值,若该二阶滤波值大于预设的安全修正值,则将预设的安全修正值作为修正值,否则将该二阶滤波值作为修正值;所述的当前车速滤波值即为当前时间窗口结束时车速所对应的滤波值;

将模块C的临时零点基准值与得到的修正值相加得到零点修正值。

9.如权利要求8所述的扭矩传感器的零点校正装置,其特征在于,设有零点基准值队列更新模块,用于在掉电保持中,采集一个掉电时刻的零点基准值,将该掉电时刻的零点基准值与模块C的临时零点基准值作差,若差值处在设定范围内则利用掉电时刻的零点基准值更新所述的零点基准值队列;否则利用模块C的临时零点基准值更新所述的零点基准值队列。

10.如权利要求9所述的扭矩传感器的零点校正装置,其特征在于,所述的模块C中,临时零点基准值与扭矩传感器默认的零点基准值之间的差应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内,否则发出报警信号,并切断电动助力转向系统的输出;

所述的模块G中,修正值应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内,否则发出报警信号,并切断电动助力转向系统的输出。

说明书 :

扭矩传感器的零点校正方法和装置

技术领域

[0001] 本发明涉及一种扭矩传感器的校正方法和装置,尤其涉及一种汽车电动助力转向系统中扭矩传感器的零点校正方法和装置。

背景技术

[0002] 现有技术中汽车方向盘带有电动助力转向系统,当转动方向盘,扭矩被传递到扭力杆时,输入轴和输出轴之间的旋转方向出现偏差,扭矩传感器感应该偏差,再结合车速传感器输出的信号,确定转向助力的大小和方向,并利用驱动电机辅助转向操作。
[0003] 电动助力转向系统长期使用过程会导致扭矩传感器安装位置发生偏移、扭矩传感器电位器弹簧弹性回复力老化、扭矩传感器电位器滑块与管住螺旋球槽产生机械磨损等,以致电动助力转向扭矩的机械零点与电气零点发生偏差。使驾驶者在操纵方向盘时出现左右转向力矩不对称,车辆丧失直线行驶的能力,严重时会导致主动转向或方向打死。现有技术仅在用户维修时才能进行零点校正,对于用户正常使用时此功能是完全缺失的。

发明内容

[0004] 本发明提供一种电动助力转向系统中扭矩传感器的零点校正方法,利用电控算法来弥补机械结构的老化,保证用户驾驶的舒适性和安全性,并尽可能地延长产品的使用时间,使整个电动助力转向系统达到平衡。
[0005] 一种扭矩传感器的零点校正方法,包括如下步骤:
[0006] (1)静态零点学习:
[0007] a)分别读取扭矩传感器的前几次上电工作后确认并保存的零点基准值得到零点基准值队列。
[0008] 扭矩传感器每一次上电工作后都将本次工作结束时的零点基准值进行保存,多次工作后就会形成零点基准值队列,可以保证零点基准值在使用过程中进行准确可靠地传递,便于实现零点偏差的实时跟踪。
[0009] 每次读取的零点基准值数量可根据精度要求设定,例如一般设为三次,即分别读取前三次上电工作后确认并保存的零点基准值,分别得到三个零点基准值。
[0010] b)采集扭矩传感器本次上电时的原始零点基准值。
[0011] 扭矩传感器每次上电初始化时,会读取一个原始零点基准值,为了消除偶然因素,连续采样八次得到八个原始零点基准值,通过中值滤波取四个中间值,并取该四个中间值的平均值作为所述的原始零点基准值;根据精度要求的不同,连续采样次数也可以适当调整。
[0012] c)将步骤b)的原始零点基准值与步骤a)中的各个零点基准值相比较。
[0013] 若相比较的差值均处于设定范围内,则将步骤b)的原始零点基准值作为静态零点学习后得到的临时零点基准值;否则,步骤a)中扭矩传感器上一次上电工作后确认并保存的零点基准值作为静态零点学习后得到的临时零点基准值。
[0014] 例如步骤a)中得到三个零点基准值,那么就要将步骤b)的原始零点基准值分别与这三个零点基准值相比较,因此也得到三个差值,按照三个零点基准值获得的时间由近及远,对应的三个差值应分别处于:100~300毫伏、130~390毫伏、150~450毫伏的范围内,则将步骤b)的原始零点基准值作为静态零点学习后得到的临时零点基准值。
[0015] (2)动态零点修正:
[0016] d)在设定的时间窗口内按照预定的时间间隔采样扭矩传感器信号。
[0017] 设定的时间窗口可以是10~60秒,例如为30秒;而预定的时间间隔一般为500~1000微秒,例如500微秒。
[0018] e)将步骤d)中的每一个当前采样值利用其前一个滤波值进行一阶滤波,得到时间窗口内与每一个采样值相对应的滤波值;
[0019] 例如,利用第N-1个采样值的滤波值对第N个采样值进行一阶滤波,得到第N个采样值的滤波值,该滤波值再应用到对第N+1个采样值的一阶滤波中。即,YN=A1×XN+(1-A1)×YN-1。滤波系数A1可以是0.032~0.140,例如为0.094。
[0020] 其中:
[0021] XN为第N个采样值;
[0022] YN为与第N个采样值相对应的滤波值;
[0023] YN-1为与第N-1个采样值相对应的滤波值,即前一个滤波值。
[0024] f)将步骤e)得到的同一时间窗口内的滤波值进行遇限削弱积分,即将每一个滤波值分别与步骤c)的临时零点基准值作差,得到差值,将处于600毫伏内的差值累加得到累加值。若累加值为正数,则表示向右修正,否则表示向左修正。
[0025] g)利用所述的累加值和当前车速滤波值确定与本次时间窗口相对应的当前初始修正值,利用与前两次的时间窗口相对应的二阶滤波值对当前初始修正值进行二阶滤波,得到当前初始修正值的二阶滤波值,若该二阶滤波值大于预设的安全修正值250毫伏,则将预设的安全修正值作为修正值,否则将该二阶滤波值作为修正值;
[0026] 所述的当前车速滤波值通过如下方式获得:
[0027] 通过边沿捕获采集车速传感器信号,按照预定的时间间隔得到车速初始值,预定的时间间隔一般为500~1000毫秒,例如500毫秒。
[0028] 将每一个当前车速初始值利用其前一个滤波值进行一阶滤波,得到与每一个初始值相对应的滤波值;
[0029] 例如,利用第N-1个初始值的滤波值对第N个初始值进行一阶滤波,得到第N个初始值的滤波值,该滤波值再应用到对第N+1个初始值的一阶滤波中。即,YN=A1’×XN+(1-A1’)×YN-1。滤波系数A1’可以是0.25~0.43,例如为0.31。
[0030] 其中:
[0031] XN为第N个初始值;
[0032] YN为与第N个初始值相对应的滤波值;
[0033] YN-1为与第N-1个初始值相对应的滤波值,即前一个滤波值。
[0034] 由以上表述可知,所述的当前车速滤波值即为当前时间窗口结束时车速所对应的滤波值。
[0035] 进行二阶滤波时,利用第N-2个修正值的滤波值和第N-1个修正值的滤波值对第N个修正值进行二阶滤波,得到第N个修正值的滤波值,该滤波值再应用到对第N+1个修正值的二阶滤波中。即,YN=A2×XN+B2×YN-1-(A2+B2-1)×YN-2。滤波系数A2为0.188。滤波系数B2为1.664。
[0036] 其中:
[0037] XN为第N个初始修正值;
[0038] YN为第N个初始修正值的二阶滤波值;
[0039] YN-1为第N-1个初始修正值的二阶滤波值;
[0040] YN-2为第N-2个初始修正值的二阶滤波值。
[0041] 将步骤c)的临时零点基准值与得到的修正值相加得到动态零点修正后的零点修正值。
[0042] 由于机械结构的老化导致扭矩零点偏差,因此零点偏差的趋势是局部单调的缓慢的模拟变化过程。针对该本质特点,本发明通过步骤(1)的静态零点学习和步骤(2)的动态零点修正,采集并处理大量数据,有效地滤除扰动因素,充分保证零点校正的准确性,还可以在用户使用过程中实时动态地跟踪零点偏差。
[0043] 由步骤a)可知,每次零点校正都会使用到零点基准值队列,为了保证零点基准值队列的可靠性,作为优选,在掉电保持中,采集一个掉电时刻的零点基准值,将该掉电时刻的零点基准值与步骤c)的临时零点基准值作差,若差值处在设定范围内(83~250毫伏)则利用掉电时刻的零点基准值更新所述的零点基准值队列,即将掉电时刻的零点基准值作为扭矩传感器本次工作结束时的零点基准值进行保存;否则利用步骤c)的临时零点基准值更新所述的零点基准值队列。
[0044] 由于扭矩传感器具有一定的有效范围,一般是具有一个扭矩传感器测量极限范围,一个扭矩传感器实际使用的测量范围,且扭矩传感器实际使用的测量范围应该在扭矩传感器测量极限范围之内,而两者的差值即是可浮动的空间,静态零点学习和动态零点修正均应该在这个空间内,否则会超出扭矩传感器测量极限范围。
[0045] 正常工况时,扭矩传感器电气零点T0与机械零点吻合,助力对称输出。扭矩传感器实际使用的上限值T1,该值由实车、电机、管柱在系统匹配时确定。扭矩传感器极限范围的上限值T3,该值由传感器自身的线性输出范围决定。因此可以计算静态零点学习的范围,实际使用的区间Tr=T1-T0,静态零点学习的上限值Sr=T3-Tr。经过零点校正后,扭矩传感器的零点更新到T0’,需要保证T0’<Sr,否则立即切断助力输出,且点亮故障灯。在行车过程中的动态零点修正时,对校正后的零点T0’上下进行微调,该微调范围由扭矩积分值和当前车速滤波值共同来确定,最终保证在一定限度内对零点偏移实时跟踪,助力对称输出。
[0046] 作为优选,静态零点学习范围应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内,即步骤c)所述的临时零点基准值与扭矩传感器默认的零点基准值(设备使用前的初始值)之间的差应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内。否则发出报警信号,并切断电动助力转向系统的输出,确保扭矩传感器安全可靠、避免失真工作。
[0047] 作为优选,动态零点修正范围应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内,即步骤g)所述的修正值,应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内。否则发出报警信号,并切断电动助力转向系统的输出,确保扭矩传感器安全可靠、避免失真工作。
[0048] 作为优选,所述的静态零点学习范围大于动态零点修正范围,静态零点学习范围由扭矩传感器的有效范围决定,动态零点修正范围由控制算法设定的安全修正值限定。
[0049] 本发明还提供了一种扭矩传感器的零点校正装置,包括:
[0050] 模块A、用于分别读取扭矩传感器的前几次上电工作后确认并保存的零点基准值得到零点基准值队列;
[0051] 模块B、用于采集扭矩传感器本次上电时的原始零点基准值;
[0052] 模块C、用于将模块B的原始零点基准值与模块A中的各个零点基准值相比较;
[0053] 若相比较的差值均处于设定范围内,则将模块B的原始零点基准值作为静态零点学习后得到的临时零点基准值;否则将模块A中扭矩传感器上一次上电工作后确认并保存的零点基准值作为临时零点基准值;
[0054] 例如步骤a)中得到三个零点基准值,那么就要将步骤b)的原始零点基准值分别与这三个零点基准值相比较,因此也得到三个差值,按照三个零点基准值获得的时间由近及远,对应的三个差值应分别处于:100~300毫伏、130~390毫伏、150~450毫伏的范围内,则将步骤b)的原始零点基准值作为静态零点学习后得到的临时零点基准值。
[0055] 模块D、用于在设定的时间窗口内按照预定的时间间隔采样扭矩传感器信号;
[0056] 设定的时间窗口可以是10~60秒,例如为30秒;而预定的时间间隔一般为500~1000微秒,例如500微秒。
[0057] 模块E、用于将模块D中的每一个当前采样值利用其前一个滤波值进行一阶滤波,得到时间窗口内与每一个采样值相对应的滤波值;
[0058] 例如,利用第N-1个采样值的滤波值对第N个采样值进行一阶滤波,得到第N个采样值的滤波值,该滤波值再应用到对第N+1个采样值的一阶滤波中。即,YN=A1×XN+(1-A1)×YN-1。滤波系数A1可以是0.032~0.140,例如为0.094。
[0059] 其中:
[0060] XN为第N个采样值;
[0061] YN为与第N个采样值相对应的滤波值;
[0062] YN-1为与第N-1个采样值相对应的滤波值,即前一个滤波值。
[0063] 模块F、用于将模块E得到的同一时间窗口内的滤波值进行遇限削弱积分,即将每一个滤波值分别与模块C的临时零点基准值作差,得到差值,将处于600毫伏内的差值累加得到累加值;
[0064] 模块G、用于利用所述的累加值和当前车速滤波值确定与本次时间窗口相对应的当前初始修正值,利用与前两次的时间窗口相对应的二阶滤波值对当前初始修正值进行二阶滤波,得到当前初始修正值的二阶滤波值,若该二阶滤波值大于预设的安全修正值250毫伏,则将预设的安全修正值作为修正值,否则将该二阶滤波值作为修正值;
[0065] 将模块C的临时零点基准值与得到的修正值相加得到零点修正值。
[0066] 所述的当前车速滤波值通过如下方式获得:
[0067] 通过边沿捕获采集车速传感器信号,按照预定的时间间隔得到车速初始值,预定的时间间隔一般为500~1000毫秒,例如500毫秒。
[0068] 将每一个当前车速初始值利用其前一个滤波值进行一阶滤波,得到与每一个初始值相对应的滤波值;
[0069] 例如,利用第N-1个初始值的滤波值对第N个初始值进行一阶滤波,得到第N个初始值的滤波值,该滤波值再应用到对第N+1个初始值的一阶滤波中。即,YN=A1’×XN+(1-A1’)×YN-1。滤波系数A1’可以是0.25~0.43,例如为0.31。
[0070] 其中:
[0071] XN为第N个初始值;
[0072] YN为与第N个初始值相对应的滤波值;
[0073] YN-1为与第N-1个初始值相对应的滤波值,即前一个滤波值。
[0074] 由以上表述可知,所述的当前车速滤波值即为当前时间窗口结束时车速所对应的滤波值。
[0075] 进行二阶滤波时,利用第N-2个修正值的滤波值和第N-1个修正值的滤波值对第N个修正值进行二阶滤波,得到第N个修正值的滤波值,该滤波值再应用到对第N+1个修正值的二阶滤波中。即,YN=A2×XN+B2×YN-1-(A2+B2-1)×YN-2。滤波系数A2为0.188。滤波系数B2为1.664。
[0076] 其中:
[0077] XN为第N个初始修正值;
[0078] YN为第N个初始修正值的二阶滤波值;
[0079] YN-1为第N-1个初始修正值的二阶滤波值;
[0080] YN-2为第N-2个初始修正值的二阶滤波值。
[0081] 作为优选,模块A中分别读取扭矩传感器的前三次上电工作后确认并保存的零点基准值得到零点基准值队列。
[0082] 作为优选,模块B中连续采样八次得到八个原始零点基准值,通过中值滤波取四个中间值,并取该四个中间值的平均值作为所述的原始零点基准值。
[0083] 作为优选,模块D中所述的时间窗口为10~60秒,预定的时间间隔为500~1000微秒。
[0084] 作为优选,设有零点基准值队列更新模块,用于在掉电保持中,采集一个掉电时刻的零点基准值,将该掉电时刻的零点基准值与模块C的临时零点基准值作差,若差值处在设定范围内(83~250毫伏)则利用掉电时刻的零点基准值更新所述的零点基准值队列;否则利用模块C的临时零点基准值更新所述的零点基准值队列。
[0085] 所述的模块C中,临时零点基准值与扭矩传感器默认的零点基准值之间的差应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内,否则发出报警信号,并切断电动助力转向系统的输出。
[0086] 所述的模块G中,修正值,应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内,否则发出报警信号,并切断电动助力转向系统的输出。
[0087] 本发明零点校正方法分为静态零点学习和动态零点修正,并按照一定时序和算法相互校验印证,以滤除扰动,保证控制的准确性;可以在用户使用过程中实时动态地跟踪零点偏差。本发明将控制算法限定在扭矩传感器的极限范围内,严格确保零点校正的安全性,保证用户驾驶过程中,转向系统始终对称均衡,即便超出一定的零点校正范围,控制器也会立即切断助力输出,点亮故障灯,最大限度给予用户驾驶舒适性和安全性;使电动助力转向系统达到最佳匹配,延长产品的使用时间。

附图说明

[0088] 图1为本发明零点校正方法的流程示意图。

具体实施方式

[0089] 本发明一种扭矩传感器的零点校正装置,包括:
[0090] 模块A、用于分别读取扭矩传感器的前几次上电工作后确认并保存的零点基准值得到零点基准值队列;
[0091] 模块B、用于采集扭矩传感器本次上电时的原始零点基准值;
[0092] 模块C、用于将模块B的原始零点基准值与模块A中的各个零点基准值相比较;
[0093] 若相比较的差值均处于设定范围内,则将模块B的原始零点基准值作为静态零点学习后得到的临时零点基准值;否则将模块A中扭矩传感器上一次上电工作后确认并保存的零点基准值作为临时零点基准值;
[0094] 模块D、用于在设定的时间窗口内按照预定的时间间隔采样扭矩传感器信号;
[0095] 模块E、用于将模块D中的每一个当前采样值利用其前一个滤波值进行一阶滤波,得到时间窗口内与每一个采样值相对应的滤波值;
[0096] 模块F、用于将模块E得到的同一时间窗口内的滤波值进行遇限削弱积分,即将每一个滤波值分别与模块C的临时零点基准值作差,得到差值,将处于设定范围内的差值累加得到累加值;
[0097] 模块G、用于利用所述的累加值和当前车速滤波值确定与本次时间窗口相对应的当前初始修正值,利用与前两次的时间窗口相对应的二阶滤波值对当前初始修正值进行二阶滤波,得到当前初始修正值的二阶滤波值,若该二阶滤波值大于预设的安全修正值,则将预设的安全修正值作为修正值,否则将该二阶滤波值作为修正值;
[0098] 将模块C的临时零点基准值与得到的修正值相加得到零点修正值。
[0099] 还设有零点基准值队列更新模块,用于在掉电保持中,采集一个掉电时刻的零点基准值,将该掉电时刻的零点基准值与模块C的临时零点基准值作差,若差值处在设定范围内则利用掉电时刻的零点基准值更新所述的零点基准值队列;否则利用模块C的临时零点基准值更新所述的零点基准值队列。
[0100] 参见图1,本发明一种扭矩传感器的零点校正方法,可以利用本发明零点校正装置实现,模块A~G对应步骤a)~g),在对应的模块分别执行如下步骤:
[0101] (1)静态零点学习:
[0102] a)控制器从非易失性存储器中读取前几次上电工作后确认并保存的零点基准值得到零点基准值队列zero_cfm_base[n]。
[0103] 此处取n=3,队列采用FIFO形式,即zero_cfm_base[0]为前一次工作后在掉电保持时保存的零点基准值,zero_cfm_base[1]为再前一次工作后在掉电保持时保存的零点基准值,zero_cfm_base[2]为更前一次工作后在掉电保持时保存的零点基准值。
[0104] b)采集扭矩传感器本次上电时的原始零点基准值zero_raw_base1。
[0105] 连续采样扭矩传感器信号8次,得到8个原始采样值t0、t1、t2、t3、t4、t5、t6、t7,通过中值滤波得到4个中间值,再通过均值滤波得到4个中间值的平均值t,取zero_raw_base1=t。
[0106] c)将步骤b)的原始零点基准值zero_raw_base1与步骤a)中各个零点基准值相比较,即使用zero_cfm_base[2]、zero_cfm_base[1]、zero_cfm_base[0]对zero_raw_base1进行偏移趋势的判别校验。
[0107] 如向右偏移,
[0108] 当zero_cfm_base[0]<zero_raw_base1,且满足zero_raw_base1-zero_cfm_base[0]<RR×K0;
[0109] 当zero_cfm_base[0]>zero_raw_base1,且满足zero_cfm_base[0]-zero_raw_base1<RL×K0。
[0110] 当zero_cfm_base[1]<zero_raw_base1,且满足zero_raw_base1-zero_cfm_base[1]<RR×K1;
[0111] 当zero_cfm_base[1]>zero_raw_base1,且满足zero_cfm_base[1]-zero_raw_base1<RL×K1。
[0112] 当zero_cfm_base[2]<zero_raw_base1,且满足zero_raw_base1-zero_cfm_base[2]<RR×K2;
[0113] 当zero_cfm_base[2]>zero_raw_base1,且满足zero_cfm_base[2]-zero_raw_base1<RL×K2。
[0114] 如向左偏移,
[0115] 当zero_cfm_base[0]>zero_raw_base1,且满足zero_cfm_base[0]-zero_raw_base1<LL×K0;
[0116] 当zero_cfm_base[0]<zero_raw_base1,且满足zero_raw_base1-zero_cfm_base[0]<LR×K0。
[0117] 当zero_cfm_base[1]>zero_raw_base1,且满足zero_cfm_base[1]-zero_raw_base1<LL×K1;
[0118] 当zero_cfm_base[1]<zero_raw_base1,且满足zero_raw_base1-zero_cfm_base[1]<LR×K1。
[0119] 当zero_cfm_base[2]>zero_raw_base1,且满足zero_cfm_base[2]-zero_raw_base1<LL×K2;
[0120] 当zero_cfm_base[2]<zero_raw_base1,且满足zero_raw_base1-zero_cfm_base[2]<LR×K2。
[0121] RR=LL=300毫伏,RL=LR=100毫伏。相关度系数K0=1,K1=1.3,K2=1.5。考虑左右对称性,则RR=LL,RL=LR。RR和LL表示偏移趋势一致,RL和LR表示偏移趋势波动,所以RR>RL,LL>LR,即趋势一致的限值大,趋势波动的限值小。由于实际工况下零点偏移是一个局部单调的缓慢的模拟变化过程,并且结合零点基准值的保存时序,所以K0<K1<K2。
[0122] 当zero_raw_base1满足所有判别条件,则临时零点基准值zero_temp_base=zero_raw_base1,否则临时零点基准值zero_temp_base=zero_cfm_base[0]。
[0123] (2)动态零点修正:
[0124] d)在设定的时间窗口内按照预定的时间间隔采样扭矩传感器信号,设定的时间窗口是30秒;而预定的采样时间间隔一般为500微秒。
[0125] e)将步骤d)中的每一个当前采样值t_atd,与上次滤波值t_1filtered进行一阶滤波,得到滤波值t_1filt=A1×t_atd+(1-A1)×t_1filtered,滤波系数A1可以是0.032~0.140,例如为0.094。滤波系数决定了采样值的截止频率和相位滞后。A1取值大,则扭矩传感器信号响应灵敏,但容易受到高频噪声的扰动,稳定性差;A1取值小,则扭矩传感器信号响应滞后,但抗扰动能力强,稳定性好。
[0126] f)在每个30秒的时间窗口内对以上计算得到的多个滤波值进行遇限削弱积分。
[0127] 如右向,差值t_delt=滤波值t_1filt-临时零点基准值zero_temp_base为正数,若|差值t_delt|>C,则该值舍弃,否则将差值t_delt累加;
[0128] 如左向,差值t_delt=滤波值t_1filt-临时零点基准值zero_temp_base为负数,若|差值t_delt|>C,则该值舍弃,否则将差值t_delt累加。
[0129] C可以是500~800毫伏,例如为600毫伏。
[0130] 若最终差值的累加值为正数,则表示向右(>zero_temp_base)修正,否则表示向左(<zero_temp_base)修正。
[0131] g)根据步骤f)获得的累加值以及当前车速的滤波值在表1中确定与本次时间窗口相对应的当前初始修正值t_tab。
[0132] 当前车速滤波值通过如下方式获得:
[0133] 通过边沿捕获采集车速传感器信号,按照预定的时间间隔得到车速初始值,预定的时间间隔一般为500毫秒。
[0134] 将每一个车速初始值v_dat,与上次滤波值v_1filtered进行一阶滤波,得到滤波值v_1filt=A1’×v_dat+(1-A1’)×v_1filtered,滤波系数A1’可以是0.25~0.43,例如为0.31。滤波系数决定了车速值的截止频率和相位滞后。A1’取值大,则车速传感器信号响应灵敏,但容易受到高频噪声的扰动,稳定性差;A1’取值小,则车速传感器信号响应滞后,但抗扰动能力强,稳定性好。
[0135] 由以上表述可知,当前车速滤波值即为当前时间窗口结束时车速所对应的滤波值。
[0136] 表1
[0137]
[0138] 表1中:
[0139] x轴表示某个方向的扭矩累加值(即对应步骤f)获得的累加值);反映零点偏移趋势,随着累加值的增加,z轴输出的修正值也会增加;
[0140] y轴表示当前车速滤波值(千米每小时),随着车速的增加,所需的转向助力会迅速减少,为保证行车的稳定性和安全性,z轴输出的修正值也会减少。
[0141] z轴为初始修正值(毫伏),即与本次时间窗口相对应的当前初始修正值t_tab。若步骤f)获得的累加值以及当前车速滤波值在表1中没有准确对应的数值,则按照x轴、y轴和z轴的数值变化趋势作线性插值计算拟合得出经验曲线,当前初始修正值t_tab利用该经验曲线确定。
[0142] 将表1中确定的初始修正值t_tab与前两次时间窗口的二阶滤波值t_2filtered0、t_2filteredl进行二阶滤波,得到二阶滤波值t_2filt=A2×t_tab+B2×t_2filtered0-(A2+B2-1)×t_2filteredl,滤波系数A2为0.188。滤波系数B2为1.664。
滤波系数决定了修正值的截止频率和相位滞后,根据扭矩传感器特性曲线、电机特性曲线、机械管柱传动比、行车动态模型、助力输出控制模型等系统匹配因素来确定。由于零点偏移是一个局部单调的缓慢的模拟变化过程,并且更要保证行车工况下的安全性,所以采用抗扰动能力强、稳定性好的二阶滤波算法。
[0143] 将动态零点修正限定在安全的范围,若二阶滤波值t_2filt>D,则修正值zero_offset=D,否则修正值zero_offset=二阶滤波值t_2filt。
[0144] D可以是200~300毫伏,例如为250毫伏。
[0145] 最终控制器结合之前得到的修正方向,得到动态零点修正后的零点修正值=临时零点基准值zero_temp_base+修正值zero_offset。
[0146] 控制器在本次掉电保持中采集一个掉电时刻的零点基准值zero_raw_base2。
[0147] 该掉电时刻的零点基准值zero_raw_base2也是按照步骤b)的方式获得,即连续采样扭矩传感器信号8次,得到8个原始采样值,通过中值滤波得到4个中间值,再通过均值滤波得到4个中间值的平均值,取掉电时刻的零点基准值zero_raw_base2=平均值。
[0148] 控制器使用临时零点基准值zero_temp_base对掉电时刻的零点基准值zero_raw_base2进行偏移趋势的判别校验。
[0149] 与步骤c)采用相同的算法,
[0150] 如向右偏移,
[0151] 当zero_temp_base<zero_raw_base2,且满足zero_raw_base2-zero_temp_base<RR×K;
[0152] 当zero_temp_base>zero_raw_base2,且满足zero_temp_base-zero_raw_base2<RL×K。
[0153] 如向左偏移,
[0154] 当zero_temp_base>zero_raw_base2,且满足zero_temp_base-zero_raw_base2<LL×K;
[0155] 当zero_temp_base<zero_raw_base2,且满足zero_raw_base2-zero_temp_base<LR×K。
[0156] RR,LL,RL,LR为步骤c)中的参数。相关度系数K=0.83。K对应最近一次偏移趋势判别,所以K小于步骤c)中的前几次偏移趋势判别的K0、K1、K2,即K<K0<K1<K2。
[0157] 当zero_raw_base2满足判别条件,则按如下方式更新零点基准值队列:
[0158] zero_cfm_base[2]=zero_cfm_base[1]、
[0159] zero_cfm_base[1]=zero_cfm_base[0]、
[0160] zero_cfm_base[0]=zero_raw_base2。
[0161] 否则按如下方式更新零点基准值队列:
[0162] zero_cfm_base[2]=zero_cfm_base[1]、
[0163] zero_cfm_base[1]=zero_cfm_base[0]、
[0164] zero_cfm_base[0]=zero_temp_base。
[0165] 将更新的零点基准值队列保存到非易失性存储器中,保证了零点基准值队列的可靠性、传递性。
[0166] 本发明零点校正方法中还要求静态零点学习范围应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内,动态零点修正范围应处在扭矩传感器实际使用的测量范围和扭矩传感器测量极限范围的差值内,且静态零点学习范围大于动态零点修正范围,否则发出报警信号,并切断电动助力转向系统的输出,确保扭矩传感器安全可靠、避免失真工作。