自适应模糊PID控制器的设计及MATLAB仿真
2018-08-15温家玺
宋 超 曹 翱 温家玺
(长安大学 工程机械学院,西安 710064)
PID控制是经典控制中用于过程控制最有效的策略之一,常规PID控制具有结构简单、技术成熟、稳定性好以及参数调整方便等优点,广泛应用工业控制中。但常规PID控制难以解决被控对象数学模型复杂、非线性以及时变不确定性等系统问题,而自适应模糊PID控制可以有效解决此问题[1]。自适应模糊PID控制指把模糊控制技术与常规PID控制技术相融合,实现在线对PID参数的最优整定[2]。本文依靠MATLAB/sIMULINK的模糊逻辑工具箱的Fuzzy Logic Controller与常规PID Controller结合,设计了一种在线整定模糊PID控制器,并通过sIMULINK对自适应模糊PID控制和常规PID仿真结果对比,自适应模糊PID控制适应参数变化,动态响应较好。
1 常规PID控制原理
常规的PID控制系统是将偏差的比例、积分和微分通过合成,对被控对象进行控制。系统结构如图1所示。
图1 常规PID控制框图
图1中,r(t)为输入信号,e(t)为偏差信号,μ(t)为控制信号,y(t)为被控系统输出信号。其中,控制偏差信号e(t)=r(t)-y(t),控制信号μ(t)如下[3]。
对于比例控制P,令ki=kd=0,可得:
对于积分控制I,令kp=kd=0,可得:
对于微分控制D,令kp=ki=0,可得:
2 自适应模糊PID控制原理
自适应模糊PID控制是在常规PID控制基础上,加入逻辑控制器对偏差及偏差率进行控制,控制框图如图2所示。
图2 自适应模糊PID控制框图
自适应模糊PID控制的核心是模糊控制器,原理是把偏差信号e和偏差变化率ec送入模糊控制器,通过模糊控制器模糊化、推理,然后求解,把得出的参数Δkp、Δki、Δkd分别输入PID控制器,然后通过式(4)、式(5)和式(6),实时在线修正[4]。
3 自适应模糊PID控制器的设计
3.1 隶属函数的制定
利用sIMULINK里的模糊控制器模块建立各变量的隶属函数,采用双输入-三输出控制器,如图3所示。
图3 模糊控制器
取偏差e和偏差率ec及输出Δkp、Δki、Δkd的模糊子集均为{NM,Ns,ZO,Ps,PM},各隶属函数曲线如图4、图5、图6和图7所示;与方式(And method)为min;或方式(or method)为max;推理(Implication)为min;合成(Aggregation)为max;解模糊(Defuzzification)方法为最大隶属度平均法(mom)[5]。建立了一个fis文件,取名为fuzzpid1.fis,即为Fuzzy logic controller的文件名。Δkp、Δki和Δkd的非线性对应关系分别如图8、图9和图10所示。
图4 e和ec的隶属函数
图5 Δkp的隶属函数
图6 Δki的隶属函数
图7 Δkd的隶属函数
图8 Δkp的非线性对应关系
图9 Δki的非线性对应关系
图10 Δkd的非线性对应关系
3.2 模糊控制规则
模糊规则根据专家和实际操作者经验总结得出。模糊编辑器编辑界面如图11所示。
图11 模糊规则编辑器
3.3 MATLAB仿真
建立自适应模糊PID控制器和常规PID控制器系统框图,如图12所示[6]。被控对象传递函数为:
仿真时间20s,在仿真时,可调整模糊规则和隶属度函数,以达到满意效果。
3.4 结果分析
在sIMULINK里运行,输入为方波信号,得到如图13的结果,可以看出,与常规PID控制相比,自适应模糊PID控制稳定时间更短,超调量小,并增强了系统的鲁棒性。
4 结语
图12 自适应模糊PID与常规PID控制框图
图13 常规PID控制与自适应模糊PID控制
本文在建立自适应模糊PID控制器和常规PID控制器基础上,对其进行MATLAB仿真,通过仿真结果对比,自适应模糊PID控制具有良好的鲁棒性能,超调量小,系统在较短时间内达到稳定。