主权项 |
一种基于模型的汽油机标定方法,其特征在于:包括①试验工况点的设计、②建立数理统计模型、③优化标定程序设计;①试验工况点的设计: 将发动机转速、油门踏板开度和空燃比作为试验工况点,在其各变量范围内进行拉丁超立方抽样,抽取m组样本点;②建立数理统计模型:a、数据采集:按照试验设计得到的测试点在测功机台架上收集相应的发动机响应数据;b、 统计建模及模型验证:利用三层BP神经网络训练模型,实现训练模型的精度——标准差为5,在MATLAB平台上训练模型;MATLAB里训练模型的命令如下: Engine_net = train(net,p,t);其中,p表示由输入变量构成的数组m*n;t表示由输出变量构成的数组;③优化标定程序设计:在建立的统计模型基础上进行优化标定;标定步骤如下:读入训练好的BP网络,实时地根据当前工况,以5度为间隔,从优化变量的最小值到最大值依次扫描待优化的变量,利用训练好的Engine_net网络分别计算对应的输出扭矩,MATLAB命令如下:sim(Engine_net,testInput)其中,testInput为网络的输入,sim为网络进行仿真的命令;将待优化的变量点火提前角和输出扭矩用曲线拟合,并计算扭矩最大时对应的点火提前角值,指令如下:polyfit(spk_sweep,Tq,2)其中,spk_sweep为扫描点火提前角;Tq为相应输出扭矩;数字2表示采用二次多项式拟合;polyfit为线性拟合命令;形式如下:<img file="2014107947657100001dest_path_image001.GIF" wi="116" he="26" />变量约束条件为点火提前角<img file="345318dest_path_image002.GIF" wi="53" he="24" />,调用Matlab里算法fmincon,指令如下所示:[s, fval] = fmincon(fun,x0,A,b)其中,fun为求解的目标函数表达式,即为<img file="2014107947657100001dest_path_image003.GIF" wi="137" he="26" />;x0为给定的初值可以是标量或向量,约束条件为A*x <= b;一个是最小函数值fval将其取反,即为当前工况输出的最大扭矩Tq_max=‑fval;另一个最值对应的优化变量s,即为当前工况最优的点火提前角。 |