【学习笔记】智能家居(3)模糊PID控制的中频电炉温控系统设计
摘 要: 针对中频电炉的结构,采用参数辨识方法,通过分析中频电炉的温升曲线获得相应的数学模型。针对该模型应用MTALAB仿真工具设计模糊PID控制器,该控制器根据误差及误差的变化率现场整定PID控制的参数。比较常规PID控制与模糊PID控制的仿真效果可以发现,采用模糊PID控制器根据误差与误差的变化率现场整定PID控制的参数,可以有效地提高PID控制器的控制效果。
1 中频电炉的数学模型
中频电炉的主电路包括整流部分和逆变部分,输出功率的调节主要通过调整整流电路的导通角宽度来实现,导通角采用V-F变换电路,通过设定输入电压控制导通角的宽度,内部电路具有电压、电流控制环,使中频电炉能够稳定地工作在某一功率上,稳定加热。通过调整输入电压可以实现功率调节。由于中频电炉的结构复杂,通过理论计算方式获得数学模型较为困难,因此可以采用参数辨识的方法获得中频电炉的数学模型。中频电炉属于温控对象,具有较大的惯性,通过温度加热响应曲线分析,响应曲线与一阶惯性环节响应相似,响应过程具有一定的延迟性。因此可以采用如下模型:
其中,K为输出增量与输入增量比值,反映的是输出对输入响应倍数关系;T为系统的惯性参数,一般经过4T后一阶被控对象达到稳定;τ为系统的纯滞后时间。通过参数辨识可以获得被控对象的传递函数为:
2 中频电炉的控制器设计
2.1 常规PID控制
PID控制具有一定的优势,仍是最常用的控制方法。由于中频电炉惯性大、滞后性强、时变性强,因此采用常规的PID控制较难获得满意的控制效果。如需要进一步提高控制效果,仅采用PID控制不能满足控制要求。
2.2 模糊PID控制
采用智能控制与PID结合的方式能够获得较好的控制效果,但采用过于复杂的智能控制方式如果计算量较大,由于控制核心器件处理速度等因素而影响实时控制效果。综合各方面因素,设计模糊PID控制器在线调整PID的参数,从而提高PID控制器的控制效果。模糊PID控制器根据误差及误差变化率对PID参数进行在线调整[10]。
将中频炉的温度误差e、温度误差变化率ec量化成13个等级,实际的误差e和误差变化率ec的范围实际为-1 200~+1 200,将e、ec表示为“-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6”,论域E和EC转换为E=EC={-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},将ΔKp=ΔKi=ΔKd的大小量化为13个等级。ΔKp的论域为{-3,-2.5,-2,-1.5,-1,-0.5,0,0.5,1,1.5,2,2.5,3},ΔKi的论域为{-0.03, -0.025,-0.02,-0.015,-0.010,-0.005,0,0.005,0.010, 0.015,0.020,0.025,0.03},ΔKd的论域为{-1.5,-1.25,-1, -0.75,-0.5,-0.25,0,0.25,0.5,0.75,1,1.25,1.5}。
2.3 模糊PID控制器设计
上述变量的隶属函数按三角分布。输入与输出的隶属度函数都选择为三角函数,如果选取复杂的隶属度函数,将会为仿真模型到单片机应用的移植带来困难,甚至有可能造成移植的失败,因此在选择隶属度函数时,尽可能选择合适的函数。
通过MATLAB仿真工具的Simulink仿真器进行仿真,通过设置FIS编辑器编辑模糊控制器,设置输入变量e、ec和输出变量P、I、D,并设置推理规则。模糊推理表如表1所示。
对应e、ec的不同模糊输入等级,设置P、I、D的模糊输出等级。模糊规则的选取需要工作经验的长期积累,模糊规则设置得是否合理直接影响模糊控制器的控制效果。该设计规则有49条。
在该模糊控制器的基础上,调整模糊PID控制器输出参数的放大倍数,P参数的Kp调整系数为0.005,初始值Po=9.2;I的调整系数Ki为0.37,I的初始值Io=0.017 5;D的调整系数Kd为2.0,D的初始值Do=60。可以根据实际被控对象的模型进行调整,以满足优秀的控制性能。图1为MATLAB中设计的模糊PID仿真结构。模糊控制器根据误差及误差的变化率调整PID参数值,PID控制器根据误差及误差变化率现场计算控制器的输出值,并作用于被控对象。在阶跃信号下的仿真结果如图2所示。
3 模糊PID控制器的移植
单片机设计的PID控制计算流程已经非常广泛,很多控制系统中都是采用单片机为控制核心进行PID运算。采用MTALAB仿真的程序需要进一步移植才能在单片机上应用。
通过分析可以得出,E、EC的输入等级最多为相邻的两个等级,模糊推理最多选择4条,因此模糊推理采用查表的方法获得。将{NB,NM,NS,ZO,PS,PM,PB}转换为对应的数字表示{0,1,2,3,4,5,6}。
通过查表的方法,每个规则获得相应P、I、D的输出等级及对应的隶属度值,每条规则的P、I、D隶属对采用取最小法。用取最大的方法可以确定e、ec,对应?驻P、?驻I、?驻D对应的输出等级及相应的隶属度值。经过模糊推理后获得对应的输出等级及对应的隶属度后,需要进行解模糊操作,以获得准确的输出值。在MTALAB中进行仿真时采用的是重心法,而在单片机的程序设计中为了简化计算,采用近似的重心法,即忽略解模糊过程中各输出等级的重叠部分,因而采用单片机解模糊会与MATLAB中解模糊值存在一定的误差,而该误差对系统的影响并不大,因此采用此种计算方式进行解模糊操作。
4 结论
通过比较常规的PID控制与模糊PID控制系统可以获知,通过根据误差及误差变化率在线修正PID参数的PID控制器,控制效果要好于单纯的PID控制器。而模糊PID控制的参数可以通过现场进一步调整以达到更好的控制效果。
◆ ◆ ◆ ◆ ◆◆ ◆ ◆ ◆ ◆◆ ◆ ◆ ◆ ◆◆ ◆ ◆ ◆ ◆