王娟 王俊
[摘 要] 利用模糊控制算法对管道有源噪声控制技术进行探索研究,设计出了模糊控制器,并基于matlab软件对模糊控制算法进行了仿真,仿真结果表明,模糊控制算法在管道有源噪声控制中具有良好效果,其输出误差低于目前常用的自适应控制器的输出误差。
[关 键 词] 模糊控制算法;有源消声;matlab;仿真
[中图分类号] TB535 [文献标志码] A [文章编号] 2096-0603(2018)20-0105-01
发动机排气管道有源噪声控制技术是指通过在排气管内产生次级声信号与源噪声信号产生相消性干涉,从而在管道下游出口达到降低噪声的目的。在整个发动机有源噪声控制系统中,控制结构比较容易实现,整个系统性能的关键在于控制算法。管道有源噪声控制算法实现:一是控制器能实时地对被控声场进行预测;二是能够补偿次级声道传递函数及非线性或未建模动力学的影响。而现在国内在管道噪声的有源控制中大都采用自适应控制算法,但自适應控制算法存在响应慢和对非线性环节的补偿能力不理想的问题,文献查阅表明目前国内外很少将智能模糊控制算法用于管道噪声的有源控制中,本文试图在控制算法上做探讨,研究模糊控制算法在管道噪声的有源控制中的有效性及效果。
一、模糊控制原理
模糊控制是一种线性智能控制。它是在模糊数学的基础上,利用模糊集合、模糊关系、模糊推理来模仿人的思维,来判断推理解决问题。
二、模糊控制器的设计
在整个模糊控制系统中,控制器是核心,其硬件由微机或单片机组成;软件则通过模糊控制算法来实现。因此模糊控制器的设计关键是设计模糊控制算法。
要对模糊控制算法在有源噪声控制中的应用进行初步探索,所以对于模糊控制器采用单输入单输出。根据发动机排气管道有源消声的基本原理得到模糊控制算法的发动机排气管道有源噪声控制系统模型,如下图:
基于上述的理论和控制器的设计原则,对管道有源消声系统的模糊控制器设计如下:
a在模糊控制的管道有源消声系统中把初级噪声源d(n)作为模糊控制器的给定值。定义模糊控制器的输出信号为次级源信号y(n)。误差e(n)=y(n)+d(n)作为模糊控制器的输入变量。
b输入变量和输出变量的语言描述
设误差e的论域为X,并将误差大小量化为九个等级分别表示为-4,-3,-2,-1,0,+1,+2,+3,+4,则有:X={-4,-3,-2,-1,0,1,2,3,4};同时定义描述输入量的语言值的模糊子集为{负大,负中,负小,零,正小,正中,正大},用字母表示为{NB,NM,NS,O,PS,PM,PB}。选择控制量y的论域为Y,并同X一样也把控制量的大小化为九个等级,即:Y={-4,-3,-2,-1,0,1,2,3,4},同理得出输出变量的语言值的模糊子集为{负大,负中,负小,零,正小,正中,正大},用字母表示为{NB,NM,NS,O,PS,PM,PB}。
c模糊控制规则的语言描述
根据手动控制策略,可以将该系统的模糊控制规则设定如下:
三、模糊控制算法的matlab仿真
由于matlab软件中提供了fuzzy命令,很容易实现模糊控制算法的仿真。因此,通过对fuzzy设计器界面中的input模块和output模块进行输入模糊量的隶属函数和输出量的隶属函数设计。对设计好的模糊控制器在matlab/simulink中进行模型的搭建。同时对比自适应算法在matlab中的模型图。
在simulink中建立了基于模糊控制的发动机排气管道有源消声系统。对两种控制算法进行matlab仿真得到仿真结果如下图:
通过仿真结果可以看出,应用模糊控制的管道有源消声系统的消声误差被控制在-0.2到0.2之间,完全符合之前所设的-0.5到0.5的范围。将模糊控制算法的仿真结果与自适应控制算法的仿真结果进行对比,模糊控制算法的消声效果较好。
四、结论
本文主要针对发动机排气管道有源消声系统的控制算法进行了新的探索。对基于模糊控制算法的发动机排气管道有源消声系统进行了模糊控制器的建立,模糊算法分析和模糊子集的确定,在matlab/simulink软件中建立仿真模型,并进行了仿真。模糊控制算法和自适应控制算法模块框图和仿真图形进行对比,可以明显看到,模糊控制算法不仅能够达到所需要的控制效果,而且比自适应控制算法整个系统的构成更加简练。尽管本文还有一些不足之处,但是对发动机排气管道有源消声技术算法的理论研究具有一定的价值。
参考文献:
[1]刘曙光.模糊控制技术[M].北京:中国纺织出版社,2001:85-102.
[2]王季方,卢正鼎.模糊控制中隶属度函数的确定方法[J].河南科学,2000(18):349-351.