发明名称 一种基于精确惩罚优化的汽车自动制动装置
摘要 本发明公开了一种基于精确惩罚优化的汽车自动制动装置,由障碍物距离测量传感器、当前车速测量传感器、汽车中控MCU、制动器单元、紧急制动时的报警与状态显示设备构成,在中控MCU中输入对应于该车型的制动参数后,开启障碍物距离测量传感器和当前车速测量传感器实时测量前方障碍物距离和当前车速,当障碍物距离等于当前车速下的建议制动距离、且驾驶员没有制动动作时,中控MCU自动执行内部的精确惩罚优化算法,计算出最优制动力,并根据获得的最优制动力向制动器单元输出制动指令,使该汽车在接触障碍物之前停下来,并向驾驶员发出紧急制动报警信号;本发明避免驾驶过程中未能及时制动而导致的碰撞事故。
申请公布号 CN103287406A 申请公布日期 2013.09.11
申请号 CN201310231378.8 申请日期 2013.06.08
申请人 浙江大学 发明人 刘兴高;胡云卿;张海波;周赤平;孙优贤
分类号 B60T7/12(2006.01)I;G06F19/00(2011.01)I 主分类号 B60T7/12(2006.01)I
代理机构 杭州求是专利事务所有限公司 33200 代理人 周烽
主权项 一种基于精确惩罚优化的汽车自动制动装置,在出现紧急状况时能使汽车自动减速或停止,同时使驾驶员获得最多的制动时间。其特征在于:由车前方障碍物距离测量传感器、当前车速测量传感器、汽车中控MCU、制动器单元、紧急制动警报与状态显示设备构成,各组成部分均由车内数据总线连接。所述装置的运行过程包括:步骤A1:在中控MCU中输入对应于该车的制动参数;步骤A2:开启障碍物距离测量传感器和当前车速测量传感器用于实时测量前方障碍物距离和当前车速;步骤A3:当障碍物距离等于当前车速下的建议制动距离、且驾驶员没有制动动作时,中控MCU自动执行内部的精确惩罚优化算法,计算出最优制动力,并根据获得的最优制动力向制动器单元输出制动指令,使该汽车在接触障碍物之前停下来;步骤A4:中控MCU执行完精确惩罚优化算法的同时,向驾驶员发出紧急制动报警信号。所述的汽车中控MCU部分,包括信息采集模块、初始化模块、常微分方程组(Ordinary differential equations,简称ODE)正交配置模块、非线性规划问题(Non‑linear Programming,简称NLP)求解模块、控制指令输出模块。其中,信息采集模块包括障碍物距离采集、当前车速采集、人为刹车动作采集三个子模块;NLP求解模块包括寻优方向计算、寻优步长计算、NLP收敛性判断三个子模块。所述的汽车中控MCU自动产生制动信号的精确惩罚优化算法运行步骤如下:步骤B1:信息采集模块(31)实时获取障碍物距离测量传感器、当前车速测量传感器送入中控MCU的当前值,并检测驾驶员是否有制动动作。当障碍物距离测量传感器测到的障碍物距离等于当前车速下的建议制动距离、且驾驶员没有制动动作时,执行从步骤B2开始的精确惩罚优化算法;步骤B2:初始化模块(32)开始运行,设置制动过程时间的分段数、惩罚因子初始值、制动力的初始猜测值u(k),设定精度要求tol,将迭代次数k置零;步骤B3:通过ODE求解模块(33)获取本次迭代的目标函数值J(k)和约束函数值。当k=0时跳过步骤B4直接执行步骤B5;步骤B4:如果J(k)与上一次迭代的目标函数值J(k‑1)的绝对值之差小于精度要求tol,则判断收敛性满足,并将本次迭代的制动力作为指令输出到制动器单元;如果收敛性不满足,则继续执行步骤B5;步骤B5:增大惩罚因子ρ,再用u(k)的值覆盖u(k‑1)的值,并将迭代次数k增加1;步骤B6:NLP求解模块(36)利用在步骤B3中获得的目标函数值和约束函数值,通过计算寻优方向和寻优步长,获得比u(k‑1)更优的新制动力u(k)。该步骤执行完成后再次跳转至步骤B3,直至收敛性判断模块(34)满足为止。所述的ODE正交配置模块,采用的方法为四步Adams方法,计算公式为: <mrow> <mi>s</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mrow> <mi>i</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mi>s</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mfrac> <mi>h</mi> <mn>24</mn> </mfrac> <mo>[</mo> <mn>55</mn> <mi>v</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mn>59</mn> <mi>v</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mrow> <mi>i</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mn>37</mn> <mi>v</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mrow> <mi>i</mi> <mo>-</mo> <mn>2</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mn>9</mn> <mi>v</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mrow> <mi>i</mi> <mo>-</mo> <mn>3</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>]</mo> </mrow> <mrow> <mi>v</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mrow> <mi>i</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mi>v</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mfrac> <mi>h</mi> <mn>24</mn> </mfrac> <mo>[</mo> <mn>55</mn> <mi>u</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mn>59</mn> <mi>u</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mrow> <mi>i</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mn>37</mn> <mi>u</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mrow> <mi>i</mi> <mo>-</mo> <mn>2</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mn>9</mn> <mi>u</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mrow> <mi>i</mi> <mo>-</mo> <mn>3</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>]</mo> </mrow>其中t表示时间,ti表示Adams方法选择的制动过程中某一时间点,ti‑1表示Adams方法选择的制动过程中ti的前一时间点,ti+1表示Adams方法选择的制动过程中ti的后一时间点,以此类推。积分步长h为任意两相邻时间点之差。s(ti)表示汽车在ti时刻的行驶距离,v(ti)表示汽车在ti时刻的行驶速度,u(ti)表示在ti时刻的制 动力。所述的NLP求解模块,采用如下步骤实现:步骤C1:将制动力u(k‑1)作为向量空间中的某个点,记作P1,P1对应的目标函数值就是J(k‑1);步骤C2:从点P1出发,根据选用的NLP算法构造向量空间中的一个寻优方向d(k‑1)和步长α(k‑1)步骤C3:通过式u(k)=u(k‑1)+α(k‑1)d(k‑1)构造向量空间中对应u(k)的另外一个点P2,使得P2对应的目标函数值J(k)比J(k‑1)更优。
地址 310058 浙江省杭州市西湖区余杭塘路866号