一种电动助力转向器控制方法

文档序号:1701792 发布日期:2019-12-13 浏览:10次 >En<

阅读说明:本技术 一种电动助力转向器控制方法 (control method of electric power steering gear ) 是由 胡雪 何德龙 张建 余方宽 于 2019-10-09 设计创作,主要内容包括:本发明提出了一种电动助力转向器控制方法,包括以下步骤:S1:计算方向盘扭矩;S2:计算方向盘角度;S3:计算方向盘转速,MCU根据方向盘角度和时间计算得出;S4:采集车速信号;S5:计算基本助力扭矩;S6:计算阻尼扭矩;S7:计算齿条末端保护扭矩大小;S8:计算扭矩阻尼扭矩命令;S9:计算回正扭矩大小;S10:计算总助力扭矩大小,MCU将基本助力扭矩、补偿扭矩、齿条末端保护扭矩、阻尼扭矩、扭矩阻尼扭矩与回正扭矩求和,所得值为总助力扭矩大小;S11:控制电机。能够高效为汽车转向进行助力,安全稳定。(the invention provides a control method of an electric power steering gear, which comprises the following steps: s1: calculating the torque of the steering wheel; s2: calculating the angle of a steering wheel; s3: calculating the rotating speed of a steering wheel, and calculating by the MCU according to the angle of the steering wheel and time; s4: collecting a vehicle speed signal; s5: calculating a basic power-assisted torque; s6: calculating a damping torque; s7: calculating the protection torque of the tail end of the rack; s8: calculating a torque damping torque command; s9: calculating the magnitude of aligning torque; s10: calculating the total power-assisted torque, and summing the basic power-assisted torque, the compensation torque, the rack tail end protection torque, the damping torque, the torque damping torque and the aligning torque by the MCU to obtain a value of the total power-assisted torque; s11: and controlling the motor. Can carry out the helping hand for automobile steering high-efficiently, safety and stability.)

一种电动助力转向器控制方法

技术领域

本发明涉及汽车助力技术领域,具体涉及一种电动助力转向器控制方法。

背景技术

在汽车行驶中,转向运动是最基本的运动。我们通过方向盘来操纵和控制汽车的行驶方向,从而实现自己的行驶意图。电动助力转向系统的英文缩写叫“EPS”,它利用电动机产生的动力协助驾车者进行转向。现有技术中,转向器中通过转轴齿轮的转动带动齿条横向运动,齿条与横拉杆连接,从而带动横拉杆横向运动,最终通过横拉杆拉动转向节,使转向节带动车轮转向。随着现代汽车技术的迅猛发展,人们对汽车转向操纵性能的要求日益提高。

发明内容

本发明旨在至少解决现有技术中存在的技术问题,特别创新地提出了一种电动助力转向器控制方法,能够高效为汽车转向进行助力,安全稳定。

为了实现本发明的上述目的,本发明提供了一种电动助力转向器控制方法,包括以下步骤:

S1:计算方向盘扭矩;

S2:计算方向盘角度;

S3:计算方向盘转速,MCU根据方向盘角度和时间计算得出;

S4:采集车速信号;

S4-1:MCU通过CAN总线获取车速信号,并将车速信号通过SPI通讯发送至安全MCU;

S4-2:限制车速变化,若单位时间内的车速变化量大于最大车速变化值,则以初始速度加上最大车速变化值作为当前车速输出到MCU;

S5:计算基本助力扭矩;

S6:计算阻尼扭矩;

S7:计算齿条末端保护扭矩大小;

S8:计算扭矩阻尼扭矩命令;

S9:计算回正扭矩大小;

S10:计算总助力扭矩大小,MCU将基本助力扭矩、补偿扭矩、齿条末端保护扭矩、阻尼扭矩、扭矩阻尼扭矩与回正扭矩求和,所得值为总助力扭矩大小;

S11:控制电机。

上述方案中:步骤S1还包括:

S1-1:计算第一扭矩传感器脉冲信号的PWM占空比,MCU从CC2单元采集第一扭矩传感器脉冲信号,通过MCU计算第一扭矩传感器脉冲信号的占空比;

S1-2:检验第一扭矩传感器脉冲信号的PWM占空比;

S1-2-1:MCU将第一扭矩传感器脉冲信号的PWM占空比通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第一扭矩传感器脉冲信号的PWM占空比是否在正常范围内;

S1-2-2:若MCU和安全MCU任意一个检测到第一扭矩传感器脉冲信号的PWM占空比不在正常范围内,则MCU或安全MCU向预驱动发出“第一扭矩传感器脉冲信号的PWM占空比信号不正确”故障信号,并执行S1-7;

S1-3:计算第二扭矩传感器脉冲信号的PWM占空比,MCU从CC2单元采集第一扭矩传感器脉冲信号,通过MCU计算第二扭矩传感器脉冲信号的PWM占空比;

S1-4:检验第二扭矩传感器脉冲信号的PWM占空比;

S1-4-1:MCU将第二扭矩传感器脉冲信号的PWM占空比通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第二扭矩传感器脉冲信号的PWM占空比是否在正常范围内;

S1-4-2:若MCU和安全MCU任意一个检测到第二扭矩传感器脉冲信号的PWM占空比不在正常范围内,则MCU或安全MCU向预驱动发出“第二扭矩传感器脉冲信号的PWM占空比信号不正确”故障信号,并执行S1-7;

S1-5:通过MCU计算第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和;

S1-6:检验第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和;

S1-6-1:MCU将第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和是否在正常范围内;

S1-6-2:若第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和不在正常范围内,则MCU或安全MCU向预驱动发出本故障信号,并执行S1-7;若第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和在正常范围内,执行S1-8;

S1-7:MCU或安全MCU向预驱动发出“汽车进入安全状态”指令,同时MCU或安全MCU停止电机转动,停止为汽车转向进行电动助力,在下一次点火器点火后再解除“汽车进入安全状态”指令,执行S2;

S1-8:MCU根据第一扭矩传感器脉冲信号占空比和第二扭矩传感器脉冲信号占空比信号,并结合扭杆刚度、第一扭矩传感器和第二扭矩传感器特性等,综合计算得到方向盘的扭矩信号;

步骤S2还包括:

S2-1:计算第一角度传感器脉冲信号的PWM占空比,MCU从比较捕获端口采集第一角度传感器脉冲信号,通过MCU计算第一角度传感器脉冲信号的占空比;

S2-2:检验第一角度传感器脉冲信号的PWM占空比;

S2-2-1:MCU将第一角度传感器脉冲信号的PWM占空比通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第一角度传感器脉冲信号的PWM占空比是否在正常范围内;

S2-2-2:若MCU和安全MCU任意一个检测到第一角度传感器脉冲信号的PWM占空比不在正常范围内,则MCU或安全MCU向预驱动发出“第一角度传感器脉冲信号的PWM占空比信号不正确”故障信号,并执行S2-7;

S2-3:计算第二角度传感器脉冲信号的PWM占空比,MCU从比较捕获端口单元采集第一角度传感器脉冲信号,通过MCU计算第二角度传感器脉冲信号的占空比;

S2-4:检验第二角度传感器脉冲信号的PWM占空比;

S2-4-1:MCU将第二角度传感器脉冲信号的PWM占空比通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第二角度传感器脉冲信号的PWM占空比是否在正常范围内;

S2-4-2:若MCU和安全MCU任意一个检测到第二角度传感器脉冲信号的PWM占空比不在正常范围内,则MCU或安全MCU向预驱动发出“第二角度传感器脉冲信号的PWM占空比信号不正确”故障信号,并执行S2-7;

S2-5:通过MCU计算第一角度传感器脉冲信号的PWM占空比和第二角度传感器脉冲信号的PWM占空比的和;

S2-6:检验第一角度传感器脉冲信号的PWM占空比和第二角度传感器脉冲信号的PWM占空比的和;

S2-6-1:MCU将第一角度传感器脉冲信号的PWM占空比和第二角度传感器脉冲信号的PWM占空比的和通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第一角度传感器脉冲信号的PWM占空比和第二角度传感器脉冲信号的PWM占空比的和是否在正常范围内;

S2-6-2:若第一角度信号的PWM占空比和第一角度信号的PWM占空比的和不在正常范围内,则MCU或安全MCU向预驱动发出本故障信号,并执行S2-7;若第一角度传感器脉冲信号的的PWM占空比和第二角度传感器脉冲信号的PWM占空比的和在正常范围内,执行S2-8;

S2-7:MCU或安全MCU向预驱动发出“汽车进入安全状态”指令,同时MCU或安全MCU停止电机转动,停止为汽车转向进行电动助力,在下一次点火器点火后再解除“汽车进入安全状态”指令,执行S2;

S2-8:MCU根据第一角度传感器和第二角度传感器的特性,使用游标算法,根据第一角度传感器检测信号和第二角度传感器检测信号的角度数据,得到一个大概的角度范围,再加上一个精确的角度,综合计算得到方向盘的角度信号。

上述方案中:步骤S6还包括以下步骤:

S5-1:MCU将S1-8计算得到的扭矩信号进行低通滤波处理;

S5-1-1:MCU根据函数计算扭矩信号的低频扭矩;

S5-2:计算高频扭矩;

S5-2-1:MCU根据S1-8计算得到的扭矩信号减去低频扭矩,所得差值为高频扭矩;

S5-3:插值查表;

S5-3-1:MCU向数据库发起调取基本助力查表命令,数据库向MCU发送基本助力表;

S5-3-2:MCU根据S4-2所得车速大小作为关检词,查询标定参数,得到当前的增益;

S5-4:将高频扭矩与低频扭矩分别与所得增益相乘,得到高频增益和低频增益最后再将高频增益和低频增益加起来,经过稳定性函数计算基本助力扭矩。

上述方案中:步骤S6还包括以下步骤:

S6-1:MCU根据S1-8计算得到的扭矩信号进行插值查表,获取阻尼扭矩第一相关参数;

S6-1-1:MCU向数据库发起调取阻尼扭矩查表命令,数据库向MCU发送阻尼扭矩数据表;

S6-1-2:MCU根据S1-8计算得到的扭矩信号作为关检词,获取阻尼扭矩第一相关参数;

S6-2:MCU根据S4-2所得车速大小与S3所得方向盘转速大小进行差值查表,获取阻尼扭矩第二相关参数;

S6-2-1:MCU从由电机位置信号Encode接受到方向盘转速信号后,对方向盘转速信号进行滤波处理和限值处理;

S6-2-2:MCU向数据库发起调取阻尼扭矩查表命令,数据库向MCU发送阻尼扭矩数据表;

S6-2-3:MCU根据S4-2所得车速大小与S3所得方向盘转速大小作为关检词,获取阻尼扭矩第二相关参数;

S6-3:MCU将阻尼扭矩第二相关参数与阻尼扭矩第二相关参数相乘,所得乘积为阻尼扭矩大小;

步骤S7还包括以下步骤:

S7-1:MCU通过S4-2获取车速信号,MCU根据HALL传感器和ENCODER输入的信号计算绝对位置;

S7-2:MCU通过SPI通讯将绝对位置发送至安全MCU,通过安全MCU检测绝对位置是否有效;

S7-2-1:安全MCU通过Hella传感器和位置信号相互校验绝对位置是否有效,并通过安全MCU检测角度中位是否已经标定;若均有效,执行S7-3;

S7-3:MCU根据S4-2获取的车速信号和S7-1所得绝对位置信号进行插值查表,计算齿条末端保护扭矩大小;

S7-3-1:MCU向数据库发出调取齿条末端保护扭矩数据表的指令,再将车速信号和绝对位置信号作为关键词,查找对应的数据,所得数据为齿条末端保护扭矩大小。

上述方案中:步骤S8还包括以下步骤:

S8-1:MCU根据S4-2获取的车速信号进行插值查表,获取第一扭矩阻尼相关参数;

S8-1-1:MCU向数据库发出调取扭矩阻尼扭矩数据表的指令,再将车速信号作为关键词,查找扭矩阻尼扭矩第一相关参数;

S8-2:MCU根据S1-8计算得到的扭矩信号进行插值查表,获取第二扭矩阻尼相关参数;

S8-2-1:MCU向数据库发出调取扭矩阻尼扭矩数据表的指令,再将S1-8计算得到的扭矩信号作为关键词,查找扭矩阻尼扭矩第二相关参数;

S8-3:MCU将S1-8计算得到的扭矩信号求得单位时间内扭矩信号的变化量;

S8-4:将变化量进行低通滤波,再用原始的变化量信号减去经过低通滤波后的变化量信号,得到经过高通滤波处理的变化量信号;

S8-5:MCU向数据库发出调取扭矩阻尼扭矩数据表的指令,再将经过高通滤波处理的变化量信号进行插值查表,获得第三扭矩阻尼相关参数;

S8-6:将第一扭矩阻尼相关参数、第二扭矩阻尼相关参数和第三扭矩阻尼相关参数相乘,所得的积为扭矩阻尼扭矩大小;

步骤S9还包括以下步骤:

S9-1:MCU通过S4-2获取车速信号,MCU根据HALL传感器和ENCODER输入的信号计算绝对位置;

S9-2:MCU通过SPI通讯将绝对位置发送至安全MCU,通过安全MCU检测绝对位置是否有效;若有效,执行S9-3;

S9-3:MCU根据S4-2获取的车速信号和S7-1所得绝对位置信号进行插值查表,计算回正扭矩大小;

S9-3-1:MCU向数据库发出调取齿条末端保护扭矩数据表的指令,再将车速信号和绝对位置信号作为关键词,查找对应的数据,所得数据为回正扭矩大小。

上述方案中:步骤S10还包括以下步骤:

S10-1:计算总助力扭矩命令限值;

S10-1-1:供电电压限值;MCU获取电源的电压大小,MCU向数据库发出调取总助力供电电压限制数据表的指令,并以电压大小作为关键词,查找供电电压限值百分比,MCU根据供电电压限值百分比向电机供电;

S10-1-2:总助力扭矩过大限值;MCU从CAN总线获取发动机转速信号,同时根据S4-2获取车速信号,根据S1-7获取扭矩信号,根据S3获取方向盘转速信号;MCU向数据库发出调取总助力扭矩限值数据表的指令,并以发动机转速信号、车速信号、方向盘转速信号和扭矩信号作为关键词,查找总助力扭矩限值;

S10-1-3:发动机停止时,总助力扭矩大小为零。

上述方案中:步骤S11还包括:

S11-1:计算电机电流大小;

S11-1-1:MCU根据总助力扭矩大小来确定Q轴电流大小,

S11-1-2:再根据温度传感器的检测信号来限制Q轴的最大值;

S11-1-3:若电机的转速较快时,则加入D轴的电流;

S11-2:计算电机所在位置和转速;

S11-2-1:MCU根据采集到的HALL传感器的位置信号来计算电机所在的位置;

S11-2-2:MCU根据电机位置的变化和时间,计算电机的转速;

S11-3:进行D轴和Q轴PI调节;

S11-4:计算电机三相电压大小;

S11-5:分配H桥MOS管的占空比;

S11-6:三相电机电流采样;

S11-6-1:检测三相电机中任意两相的电流;

S11-6-2:通过HALL传感器检测电机转子的位置,得到电机转子对应的扇区,于是就得到了当前三相电流的关系,就能计算出三相的电流。

S11-7:计算电机扭矩;

S11-7-1:电机扭矩等于反馈Q轴电流乘以电流扭矩转换常数;

S11-8:电机温度估算。

上述方案中:步骤S11-4还包括:

S11-4-1:MCU将电机位置信号和进行PI调节后的D轴电压值和Q轴电压值发送至三相电压计算模块,三相电压计算模块计算alpha电压和beta电压;

S11-4-1-1:修正电机位置,MCU根据电机的转速得到该时间段内电机转过的角度,重新确定电机位置,MCU将重新确定的电机位置信号发送至三相电压计算模块;

S11-4-1-2:三相电压计算模块接收重新确定的电机位置信号,计算重新确定的电机位置的余弦和正弦;

S11-4-1-3:三相电压计算模块计算alpha电压大小,alpha电压等于D轴电压乘以重新确定的电机位置的余弦的乘积减去Q轴电压命令乘以修正过后的电机位置的正弦的乘积的差值;

S11-4-1-4:三相电压计算模块计算beta电压大小,beta电压命令等于D轴电压命令乘以修正过后的电机位置的正弦的乘积减去Q轴电压命令乘以修正过后的电机位置的余弦的乘积的差值;

S11-4-1-5:三相电压计算模块将alpha电压值和beta电压值发送至MCU;

S11-4-2:三相电压计算模块根据alpha电压和beta电压计算三相电压值;

S11-4-2-1:三相电压计算计算模块A相电压大小,A相的电压等于alpha的电压命令;

S11-4-2-2:三相电压计算模块计算B相电压大小,B相的电压等于负的二分之一的alpha电压命令加上根号三倍的beta电压命令除以2的和;

S11-4-2-2:三相电压计算模块计算C相电压大小,C相的电压等于相线1电压命令与相线2电压的命令的和的相反数;

S11-4-3:三相电压计算模块将三相的电压值发送至MCU。

上述方案中:步骤S11-5还包括:

S11-5-1:分配A相占空比;

S11-5-1-1:检测A相占空比是否大于最大占空比,若大于则执行S11-5-1-2,否则执行S11-5-1-3;

S11-5-1-2:将A相PWM周期第一边沿与零点对齐,将A相PWM周期第二边沿对准PWM周期,并打开A相上MOS管,关闭A相下MOS管,执行S11-5-2;

S11-5-1-3:检测A相占空比是否小于最小占空比,若小于则执行S11-5-1-4,否则执行S11-5-1-5;

S11-5-1-4:将A相PWM周期的第一边沿与零点对齐,将A相PWM周期第二边沿对准PWM周期的一半,并关闭A相上MOS管,打开A相下MOS管,执行S11-5-2;

S11-5-1-5:定义B相开始边沿,A相开始边沿等于最小边沿,将A相开始边沿与A相占空比相加求和;

S11-5-1-6:判断A相开始边沿与A相占空比的和是否大于第二最大边沿;若大于第二最大边沿,执行S11-5-1-7;否则执行S11-5-1-8;

S11-5-1-7:A相PWM周期的第一边沿等于第二最大边沿减去A相占空比;A相PWM周期的第二边沿等于第二最大边沿,执行S11-5-2;

S11-5-1-8:判断A相开始边沿与A相占空比的和是否小于第二最小边沿;若小于第二最小边沿,执行S11-5-1-9;否则执行S11-5-1-10;

S11-5-1-9:A相PWM周期的第一边沿等于第二最小边沿减去A相占空比;A相PWM周期的第二边沿等于第二最小边沿,执行S11-5-2;

S11-5-1-10:A相PWM周期的第一边沿等于A相开始边沿;A相PWM周期的第二边沿等于A相开始边沿加上A相占空比;

S11-5-2:分配B相占空比;

S11-5-2-1:检测B相占空比是否大于最大占空比,若大于则执行S11-5-2-2,否则执行S11-5-2-3;

S11-5-2-2:将B相PWM周期第一边沿与零点对齐,将B相PWM周期第二边沿对准PWM周期,并打开B相上MOS管,关闭B相下MOS管,执行S11-5-3;

S11-5-2-3:检测B相占空比是否小于最小占空比,若小于则执行S11-5-2-4,否则执行S11-5-2-5;

S11-5-2-4:B相的PWM边沿1等于PWM周期的一半,B相PWM边沿1等于PWM周期的一半,并关闭B相上MOS管,打开B相下MOS管,执行S11-5-3;

S11-5-2-5:定义B相开始边沿,B相开始边沿等于A相PWM周期第一边沿加上波形重叠设置;

S11-5-2-6:判断B相开始边沿加上B相占空比是否大于第二最大边沿,若大于第二最大边沿,执行S11-5-2-7;否则执行S11-5-2-8;

S11-5-2-7:B相PWM周期的第一边沿等于第二最大边沿减去B相占空比;B相PWM周期的第二边沿等于第二最大边沿,执行S11-5-3;

S11-5-2-8:判断B相开始边沿加上B相占空比是否小于第二最小边沿,若小于第二最小边沿,执行S11-5-2-9,否则执行S11-5-2-10;

S11-5-2-9:B相PWM周期的第一边沿等于第二最小边沿减去B相占空比;B相PWM周期的第二边沿等于第二最小边沿,执行S11-5-3;

S11-5-2-10:B相PWM周期的第一边沿等于B相开始边沿,B相PWM周期的第一边沿等于B相开始边沿加上B相占空比;

S11-5-3:分配C相占空比;

S11-5-3-1:检测C相占空比是否大于最大占空比,若大于则执行S11-5-3-2,否则执行S11-5-3-3;

S11-5-3-2:将C相PWM周期第一边沿与零点对齐,C相PWM周期第二边沿等于PWM周期,并打开C相上MOS管,关闭C相下MOS管;

S11-5-3-3:检测C相占空比是否小于最小占空比,若小于则执行S11-5-3-4,否则执行S11-5-3-5;

S11-5-3-4:C相的PWM边沿1等于PWM周期的一半,C相PWM边沿1等于PWM周期的一半,并关闭C相上MOS管,打开C相下MOS管;

S11-5-3-5:定义C相开始边沿,C相开始边沿等于B相PWM周期第一边沿加上波形重叠设置;

S11-5-3-6:判断C相开始边沿加上C相占空比是否大于第二最大边沿,若大于第二最大边沿,执行S11-5-3-7;否则执行S11-5-3-8;

S11-5-3-7:C相PWM周期的第一边沿等于第二最大边沿减去C相占空比;C相PWM周期的第二边沿等于第二最大边沿,执行S11-5-3;

S11-5-3-8:判断C相开始边沿加上C相占空比是否小于第二最小边沿,若小于第二最小边沿,执行S11-5-3-9,否则执行S11-5-3-10;

S11-5-3-9:C相PWM周期的第一边沿等于第二最小边沿减去C相占空比;C相PWM周期的第二边沿等于第二最小边沿,执行S11-5-3;

S11-5-3-10:C相PWM周期的第一边沿等于C相开始边沿,C相PWM周期的第一边沿等于C相开始边沿加上C相占空比。

上述方案中:步骤S11-8还包括:

S11-8-1:MCU根据电机的转速判断电机是否处于堵转工作状态,若电机处于堵转工作状态时,则执行S11-8-2;若电机处于正常工作状态时,则执行S11-8-5;

S11-8-2:MCU将Q轴反馈电流和D轴反馈电流同时发送至电机堵转温度估算模块,通过电机堵转温度估算模块根据堵转时电机电流积分系数计算电机堵转时的功率消耗,再根据堵转时的功率消耗计算温度升高度数;

S11-8-3:MCU将PCB板的温度传感器的温度检测数据发送至电机堵转温度估算模块,确定PCB板的温度;

S11-8-4:电机堵转温度估算模块通过温度升高度数和PCB板的温度计算堵转时的电机温度,并将计算出的电机温度发送至MCU;执行S11-8-8;

S11-8-5:MCU将Q轴反馈电流和D轴反馈电流同时发送至电机正常温度估算模块,通过电机正常温度估算模块根据正常时电机电流积分系数计算电机正常时的功率消耗,再根据正常时的功率消耗计算温度升高度数;

S11-8-6:MCU将PCB板的温度传感器的温度检测数据发送至电机正常温度估算模块,确定PCB板的温度;

S11-8-7:电机正常温度估算模块通过温度升高度数和PCB板的温度计算正常状态下的电机温度,并将计算出的电机温度发送至MCU;执行S11-8-8;

S11-8-8:MCU根据电机温度进行插值查表,MCU向数据库发送Q轴限制电流查表命令,数据库向MCU发送Q轴限制电流数据表;

S11-8-9:MCU根据电机温度作为关键词,获取Q轴限制电流大小,MCU根据Q轴限制电流大小调整PI调节后的Q轴的电流大小。

综上所述,由于采用了上述技术方案,本发明的有益效果是:能够计算出较为精准的总助力扭矩,更好控制汽车转向,提高汽车行驶安全性,增加驾驶舒适性。

本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1是本发明的流程示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件;下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。

如图1所示,一种电动助力转向器控制方法,包括以下步骤:

S1:计算扭矩;

S1-1:计算第一扭矩传感器脉冲信号的PWM占空比,MCU从CC2单元采集第一扭矩传感器脉冲信号,通过MCU计算第一扭矩传感器脉冲信号的占空比;

S1-2:检验第一扭矩传感器脉冲信号的PWM占空比;

S1-2-1:MCU将第一扭矩传感器脉冲信号的PWM占空比通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第一扭矩传感器脉冲信号的PWM占空比是否在正常范围内;

S1-2-2:若MCU和安全MCU任意一个检测到第一扭矩传感器脉冲信号的PWM占空比不在正常范围内,则MCU或安全MCU向预驱动发出“第一扭矩传感器脉冲信号的PWM占空比信号不正确”故障信号,并执行S1-7;

S1-3:计算第二扭矩传感器脉冲信号的PWM占空比,MCU从CC2单元采集第一扭矩传感器脉冲信号,通过MCU计算第二扭矩传感器脉冲信号的PWM占空比;

S1-4:检验第二扭矩传感器脉冲信号的PWM占空比;

S1-4-1:MCU将第二扭矩传感器脉冲信号的PWM占空比通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第二扭矩传感器脉冲信号的PWM占空比是否在正常范围内;

S1-4-2:若MCU和安全MCU任意一个检测到第二扭矩传感器脉冲信号的PWM占空比不在正常范围内,则MCU或安全MCU向预驱动发出“第二扭矩传感器脉冲信号的PWM占空比信号不正确”故障信号,并执行S1-7;

S1-5:通过MCU计算第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和;

S1-6:检验第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和;

S1-6-1:MCU将第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和是否在正常范围内;

S1-6-2:若第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和不在正常范围内,则MCU或安全MCU向预驱动发出本故障信号,并执行S1-7;若第一扭矩传感器脉冲信号的PWM占空比和第二扭矩传感器脉冲信号的PWM占空比的和在正常范围内,执行S1-8;

S1-7:MCU或安全MCU向预驱动发出“汽车进入安全状态”指令,同时MCU或安全MCU停止电机转动,停止为汽车转向进行电动助力,在下一次点火器点火后再解除“汽车进入安全状态”指令,执行S2;

S1-8:MCU根据第一扭矩传感器脉冲信号占空比和第二扭矩传感器脉冲信号占空比信号,并结合扭杆刚度、第一扭矩传感器和第二扭矩传感器特性等,综合计算得到方向盘的扭矩信号;

S2:计算角度;

S2-1:计算第一角度传感器脉冲信号的PWM占空比,MCU从比较捕获端口采集第一角度传感器脉冲信号,通过MCU计算第一角度传感器脉冲信号的占空比;

S2-2:检验第一角度传感器脉冲信号的PWM占空比;

S2-2-1:MCU将第一角度传感器脉冲信号的PWM占空比通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第一角度传感器脉冲信号的PWM占空比是否在正常范围内;

S2-2-2:若MCU和安全MCU任意一个检测到第一角度传感器脉冲信号的PWM占空比不在正常范围内,则MCU或安全MCU向预驱动发出“第一角度传感器脉冲信号的PWM占空比信号不正确”故障信号,并执行S2-7;

S2-3:计算第二角度传感器脉冲信号的PWM占空比,MCU从比较捕获端口单元采集第一角度传感器脉冲信号,通过MCU计算第二角度传感器脉冲信号的占空比;

S2-4:检验第二角度传感器脉冲信号的PWM占空比;

S2-4-1:MCU将第二角度传感器脉冲信号的PWM占空比通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第二角度传感器脉冲信号的PWM占空比是否在正常范围内;

S2-4-2:若MCU和安全MCU任意一个检测到第二角度传感器脉冲信号的PWM占空比不在正常范围内,则MCU或安全MCU向预驱动发出“第二角度传感器脉冲信号的PWM占空比信号不正确”故障信号,并执行S2-7;

S2-5:通过MCU计算第一角度传感器脉冲信号的PWM占空比和第二角度传感器脉冲信号的PWM占空比的和;

S2-6:检验第一角度传感器脉冲信号的PWM占空比和第二角度传感器脉冲信号的PWM占空比的和;

S2-6-1:MCU将第一角度传感器脉冲信号的PWM占空比和第二角度传感器脉冲信号的PWM占空比的和通过SPI通讯发送给安全MCU,通过MCU和安全MCU分别同时检验第一角度传感器脉冲信号的PWM占空比和第二角度传感器脉冲信号的PWM占空比的和是否在正常范围内;

S2-6-2:若第一角度信号的PWM占空比和第一角度信号的PWM占空比的和不在正常范围内,则MCU或安全MCU向预驱动发出本故障信号,并执行S2-7;若第一角度传感器脉冲信号的的PWM占空比和第二角度传感器脉冲信号的PWM占空比的和在正常范围内,执行S2-8;

S2-7:MCU或安全MCU向预驱动发出“汽车进入安全状态”指令,同时MCU或安全MCU停止电机转动,停止为汽车转向进行电动助力,在下一次点火器点火后再解除“汽车进入安全状态”指令,执行S2;

S2-8:MCU根据第一角度传感器和第二角度传感器的特性,使用游标算法,根据第一角度传感器检测信号和第二角度传感器检测信号的角度数据,得到一个大概的角度范围,再加上一个精确的角度,综合计算得到方向盘的角度信号;

S3:计算方向盘转速,MCU根据方向盘角度和时间计算得出;

S4:采集车速信号;

S4-1:MCU通过CAN总线获取车速信号,并将车速信号通过SPI通讯发送至安全MCU;

S4-2:限制车速变化,若单位时间内的车速变化量大于最大车速变化值,则以初始速度加上最大车速变化值作为当前车速输出到MCU;

S5:计算基本助力扭矩;

S5-1:MCU将S1-8计算得到的扭矩信号进行低通滤波处理;

S5-1-1:MCU根据函数计算扭矩信号的低频扭矩;

S5-2:计算高频扭矩;

S5-2-1:MCU根据S1-8计算得到的扭矩信号减去低频扭矩,所得差值为高频扭矩;

S5-3:插值查表;

S5-3-1:MCU向数据库发起调取基本助力查表命令,数据库向MCU发送基本助力表;

S5-3-2:MCU根据S4-2所得车速大小作为关检词,查询标定参数,得到当前的增益;

S5-4:将高频扭矩与低频扭矩分别与所得增益相乘,得到高频增益和低频增益最后再将高频增益和低频增益加起来,经过稳定性函数计算基本助力扭矩;

S6:计算阻尼扭矩;

S6-1:MCU根据S1-8计算得到的扭矩信号进行插值查表,获取阻尼扭矩第一相关参数;

S6-1-1:MCU向数据库发起调取阻尼扭矩查表命令,数据库向MCU发送阻尼扭矩数据表;

S6-1-2:MCU根据S1-8计算得到的扭矩信号作为关检词,获取阻尼扭矩第一相关参数;

S6-2:MCU根据S4-2所得车速大小与S3所得方向盘转速大小进行差值查表,获取阻尼扭矩第二相关参数;

S6-2-1:MCU从由电机位置信号Encode接受到方向盘转速信号后,对方向盘转速信号进行滤波处理和限值处理;

S6-2-2:MCU向数据库发起调取阻尼扭矩查表命令,数据库向MCU发送阻尼扭矩数据表;

S6-2-3:MCU根据S4-2所得车速大小与S3所得方向盘转速大小作为关检词,获取阻尼扭矩第二相关参数;

S6-3:MCU将阻尼扭矩第二相关参数与阻尼扭矩第二相关参数相乘,所得乘积为阻尼扭矩大小;

S7:计算齿条末端保护扭矩大小;

S7-1:MCU通过S4-2获取车速信号,MCU根据HALL传感器和ENCODER输入的信号计算绝对位置;

S7-2:MCU通过SPI通讯将绝对位置发送至安全MCU,通过安全MCU检测绝对位置是否有效;

S7-2-1:安全MCU通过Hella传感器和位置信号相互校验绝对位置是否有效,并通过安全MCU检测角度中位是否已经标定;若均有效,执行S7-3;

S7-3:MCU根据S4-2获取的车速信号和S7-1所得绝对位置信号进行插值查表,计算齿条末端保护扭矩大小;

S7-3-1:MCU向数据库发出调取齿条末端保护扭矩数据表的指令,再将车速信号和绝对位置信号作为关键词,查找对应的数据,所得数据为齿条末端保护扭矩大小;

S8:计算扭矩阻尼扭矩命令;

S8-1:MCU根据S4-2获取的车速信号进行插值查表,获取第一扭矩阻尼相关参数;

S8-1-1:MCU向数据库发出调取扭矩阻尼扭矩数据表的指令,再将车速信号作为关键词,查找扭矩阻尼扭矩第一相关参数;

S8-2:MCU根据S1-8计算得到的扭矩信号进行插值查表,获取第二扭矩阻尼相关参数;

S8-2-1:MCU向数据库发出调取扭矩阻尼扭矩数据表的指令,再将S1-8计算得到的扭矩信号作为关键词,查找扭矩阻尼扭矩第二相关参数;

S8-3:MCU将S1-8计算得到的扭矩信号求得单位时间内扭矩信号的变化量;

S8-4:将变化量进行低通滤波,再用原始的变化量信号减去经过低通滤波后的变化量信号,得到经过高通滤波处理的变化量信号;

S8-5:MCU向数据库发出调取扭矩阻尼扭矩数据表的指令,再将经过高通滤波处理的变化量信号进行插值查表,获得第三扭矩阻尼相关参数;

S8-6:将第一扭矩阻尼相关参数、第二扭矩阻尼相关参数和第三扭矩阻尼相关参数相乘,所得的积为扭矩阻尼扭矩大小;

S9:计算回正扭矩大小;

S9-1:MCU通过S4-2获取车速信号,MCU根据HALL传感器和ENCODER输入的信号计算绝对位置;

S9-2:MCU通过SPI通讯将绝对位置发送至安全MCU,通过安全MCU检测绝对位置是否有效;若有效,执行S9-3;

S9-3:MCU根据S4-2获取的车速信号和S7-1所得绝对位置信号进行插值查表,计算回正扭矩大小;

S9-3-1:MCU向数据库发出调取齿条末端保护扭矩数据表的指令,再将车速信号和绝对位置信号作为关键词,查找对应的数据,所得数据为回正扭矩大小;

S10:计算总助力扭矩大小,MCU将基本助力扭矩、补偿扭矩、齿条末端保护扭矩、阻尼扭矩、扭矩阻尼扭矩与回正扭矩求和,所得值为总助力扭矩大小;

S10-1:计算总助力扭矩命令限值;

S10-1-1:供电电压限值;MCU获取电源的电压大小,MCU向数据库发出调取总助力供电电压限制数据表的指令,并以电压大小作为关键词,查找供电电压限值百分比,MCU根据供电电压限值百分比向电机供电;

S10-1-2:总助力扭矩过大限值;MCU从CAN总线获取发动机转速信号,同时根据S4-2获取车速信号,根据S1-7获取扭矩信号,根据S3获取方向盘转速信号;MCU向数据库发出调取总助力扭矩限值数据表的指令,并以发动机转速信号、车速信号、方向盘转速信号和扭矩信号作为关键词,查找总助力扭矩限值;

S10-1-3:发动机停止时,总助力扭矩大小为零,即MCU停止转向助力;

S11:控制电机;

S11-1:计算电机电流大小;

S11-1-1:MCU根据总助力扭矩大小来确定Q轴电流大小;

S11-1-3:若电机的转速较快时,则加入D轴的电流,其中,D轴的电流大小根据电机转速和电机参数计算;

S11-2:计算电机所在位置和转速;

S11-2-1:MCU根据采集到的HALL传感器的位置信号来计算电机所在的位置;

S11-2-2:MCU根据电机位置的变化和时间,计算电机的转速;

S11-3:进行D轴和Q轴PI调节;

S11-3-1:MCU先根据总助力扭矩大小计算出的D轴电流和Q轴电流驱动电机转动;再检测电机三相的电流,并结合步骤S11-2-1所得电机所在位置将检测的三相电流转换算成实际的D轴电流和Q轴电流;

S11-3-2:MCU先将根据总助力扭矩大小计算所得Q轴电流和根据电机转速和电机参数所得D轴电流发送至PI调节模块;

S11-3-3:将实际的D轴电流和Q轴电流作为D轴反馈电流和Q轴反馈电流发送至PI调节模块;

S11-3-3:PI调节模块计算D轴电流和D轴反馈电流的差值,以及计算D轴电流和D轴反馈电流的差值,再结合车速进行调节;如果电流的差值大于0就逐渐增大输出的该轴的电压命令,否则就减小该轴的电压命令,最终达到电流之差为0的目的;

S11-4:计算电机三相电压大小;

S11-4-1:MCU将步骤S11-2-1所得电机位置信号和进行PI调节后的D轴电压值、Q轴电压值发送至三相电压计算模块,三相电压计算模块计算alpha电压和beta电压;

S11-4-1-1:修正电机位置,MCU根据电机的转速得到该时间段内电机转过的角度,重新确定电机位置,MCU将重新确定的电机位置信号发送至三相电压计算模块;

S11-4-1-2:三相电压计算模块接收重新确定的电机位置信号,计算重新确定的电机位置的余弦和正弦;

S11-4-1-3:三相电压计算模块计算alpha电压大小,alpha电压等于D轴电压乘以重新确定的电机位置的余弦的乘积减去Q轴电压命令乘以修正过后的电机位置的正弦的乘积的差值;

S11-4-1-4:三相电压计算模块计算beta电压大小,beta电压命令等于D轴电压命令乘以修正过后的电机位置的正弦的乘积减去Q轴电压命令乘以修正过后的电机位置的余弦的乘积的差值;

S11-4-1-5:三相电压计算模块将alpha电压值和beta电压值发送至MCU;

S11-4-2:三相电压计算模块根据alpha电压和beta电压计算三相电压值;

S11-4-2-1:三相电压计算计算模块A相电压大小,A相的电压等于alpha的电压命令;

S11-4-2-2:三相电压计算模块计算B相电压大小,B相的电压等于负的二分之一的alpha电压命令加上根号三倍的beta电压命令除以2的和;

S11-4-2-2:三相电压计算模块计算C相电压大小,C相的电压等于相线1电压命令与相线2电压的命令的和的相反数;

S11-4-3:三相电压计算模块将三相的电压值发送至MCU;

S11-5:分配H桥MOS管的占空比;

S11-5-1:分配A相占空比;

S11-5-1-1:检测A相占空比是否大于最大占空比,若大于则执行S11-5-1-2,否则执行S11-5-1-3;

S11-5-1-2:将A相PWM周期第一边沿与零点对齐,将A相PWM周期第二边沿对准PWM周期,并打开A相上MOS管,关闭A相下MOS管,执行S11-5-2;

S11-5-1-3:检测A相占空比是否小于最小占空比,若小于则执行S11-5-1-4,否则执行S11-5-1-5;

S11-5-1-4:将A相PWM周期的第一边沿与零点对齐,将A相PWM周期第二边沿对准PWM周期的一半,并关闭A相上MOS管,打开A相下MOS管,执行S11-5-2;

S11-5-1-5:定义B相开始边沿,A相开始边沿等于最小边沿,将A相开始边沿与A相占空比相加求和;

S11-5-1-6:判断A相开始边沿与A相占空比的和是否大于第二最大边沿;若大于第二最大边沿,执行S11-5-1-7;否则执行S11-5-1-8;

S11-5-1-7:A相PWM周期的第一边沿等于第二最大边沿减去A相占空比;A相PWM周期的第二边沿等于第二最大边沿,执行S11-5-2;

S11-5-1-8:判断A相开始边沿与A相占空比的和是否小于第二最小边沿;若小于第二最小边沿,执行S11-5-1-9;否则执行S11-5-1-10;

S11-5-1-9:A相PWM周期的第一边沿等于第二最小边沿减去A相占空比;A相PWM周期的第二边沿等于第二最小边沿,执行S11-5-2;

S11-5-1-10:A相PWM周期的第一边沿等于A相开始边沿;A相PWM周期的第二边沿等于A相开始边沿加上A相占空比;

S11-5-2:分配B相占空比;

S11-5-2-1:检测B相占空比是否大于最大占空比,若大于则执行S11-5-2-2,否则执行S11-5-2-3;

S11-5-2-2:将B相PWM周期第一边沿与零点对齐,将B相PWM周期第二边沿对准PWM周期,并打开B相上MOS管,关闭B相下MOS管,执行S11-5-3;

S11-5-2-3:检测B相占空比是否小于最小占空比,若小于则执行S11-5-2-4,否则执行S11-5-2-5;

S11-5-2-4:B相的PWM边沿1等于PWM周期的一半,B相PWM边沿1等于PWM周期的一半,并关闭B相上MOS管,打开B相下MOS管,执行S11-5-3;

S11-5-2-5:定义B相开始边沿,B相开始边沿等于A相PWM周期第一边沿加上波形重叠设置;

S11-5-2-6:判断B相开始边沿加上B相占空比是否大于第二最大边沿,若大于第二最大边沿,执行S11-5-2-7;否则执行S11-5-2-8;

S11-5-2-7:B相PWM周期的第一边沿等于第二最大边沿减去B相占空比;B相PWM周期的第二边沿等于第二最大边沿,执行S11-5-3;

S11-5-2-8:判断B相开始边沿加上B相占空比是否小于第二最小边沿,若小于第二最小边沿,执行S11-5-2-9,否则执行S11-5-2-10;

S11-5-2-9:B相PWM周期的第一边沿等于第二最小边沿减去B相占空比;B相PWM周期的第二边沿等于第二最小边沿,执行S11-5-3;

S11-5-2-10:B相PWM周期的第一边沿等于B相开始边沿,B相PWM周期的第一边沿等于B相开始边沿加上B相占空比;

S11-5-3:分配C相占空比;

S11-5-3-1:检测C相占空比是否大于最大占空比,若大于则执行S11-5-3-2,否则执行S11-5-3-3;

S11-5-3-2:将C相PWM周期第一边沿与零点对齐,C相PWM周期第二边沿等于PWM周期,并打开C相上MOS管,关闭C相下MOS管;

S11-5-3-3:检测C相占空比是否小于最小占空比,若小于则执行S11-5-3-4,否则执行S11-5-3-5;

S11-5-3-4:C相的PWM边沿1等于PWM周期的一半,C相PWM边沿1等于PWM周期的一半,并关闭C相上MOS管,打开C相下MOS管;

S11-5-3-5:定义C相开始边沿,C相开始边沿等于B相PWM周期第一边沿加上波形重叠设置;

S11-5-3-6:判断C相开始边沿加上C相占空比是否大于第二最大边沿,若大于第二最大边沿,执行S11-5-3-7;否则执行S11-5-3-8;

S11-5-3-7:C相PWM周期的第一边沿等于第二最大边沿减去C相占空比;C相PWM周期的第二边沿等于第二最大边沿,执行S11-5-3;

S11-5-3-8:判断C相开始边沿加上C相占空比是否小于第二最小边沿,若小于第二最小边沿,执行S11-5-3-9,否则执行S11-5-3-10;

S11-5-3-9:C相PWM周期的第一边沿等于第二最小边沿减去C相占空比;C相PWM周期的第二边沿等于第二最小边沿,执行S11-5-3;

S11-5-3-10:C相PWM周期的第一边沿等于C相开始边沿,C相PWM周期的第一边沿等于C相开始边沿加上C相占空比;

S11-6:三相电机电流采样;

S11-6-1:检测三相电机中任意两相的电流;

S11-6-2:通过HALL传感器检测电机转子的位置,得到电机转子对应的扇区,于是就得到了当前三相电流的关系,就能计算出三相的电流;其中,一个扇区分为6个扇区,每个扇区的三相电流关系固定;所以通过判断当所处扇区就能知道采集到的电流是A\B\C三相中的哪一相,最终得到三相电流;

S11-7:计算电机扭矩;

S11-7-1:电机扭矩等于反馈Q轴电流乘以电流扭矩转换常数;

S11-8:电机温度估算;

S11-8-1:MCU根据电机的转速判断电机是否处于堵转工作状态,若电机处于堵转工作状态时,则执行S11-8-2;若电机处于正常工作状态时,则执行S11-8-5;

S11-8-2:MCU将Q轴反馈电流和D轴反馈电流同时发送至电机堵转温度估算模块,通过电机堵转温度估算模块根据堵转时电机电流积分系数计算电机堵转时的功率消耗,再根据堵转时的功率消耗计算温度升高度数;

S11-8-3:MCU将PCB板的温度传感器的温度检测数据发送至电机堵转温度估算模块,确定PCB板的温度;

S11-8-4:电机堵转温度估算模块通过温度升高度数和PCB板的温度计算堵转时的电机温度,并将计算出的电机温度发送至MCU;执行S11-8-8;

S11-8-5:MCU将Q轴反馈电流和D轴反馈电流同时发送至电机正常温度估算模块,通过电机正常温度估算模块根据正常时电机电流积分系数计算电机正常时的功率消耗,再根据正常时的功率消耗计算温度升高度数;

S11-8-6:MCU将PCB板的温度传感器的温度检测数据发送至电机正常温度估算模块,确定PCB板的温度;

S11-8-7:电机正常温度估算模块通过温度升高度数和PCB板的温度计算正常状态下的电机温度,并将计算出的电机温度发送至MCU;执行S11-8-8;

S11-8-8:MCU根据电机温度进行插值查表,MCU向数据库发送Q轴限制电流查表命令,数据库向MCU发送Q轴限制电流数据表;

S11-8-9:MCU根据电机温度作为关键词,获取Q轴限制电流大小,MCU根据Q轴限制电流大小调整PI调节后的Q轴的电流大小。

尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

26页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种用于汽车爆胎后行驶方向稳定控制的转向器

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类