基于模糊PID的无线温湿度监控系统
2015-11-07安徽工程大学电气工程学院
安徽工程大学电气工程学院 水 源 潘 钺 生 芳
基于模糊PID的无线温湿度监控系统
安徽工程大学电气工程学院 水 源 潘 钺 生 芳
为了研究模糊PID控制在无线温湿度监控系统的实际运用,设计了基于模糊PID控制的无线温湿度监控系统。使用数字式传感器SHT11采集温湿度数据,通过无线收发器nRF905传输数据,采用模糊PID控制算法进行温湿度控制。通过原理分析和仿真,表明该系统非常稳定并且精确,可广泛的应用于各类温湿度控制场合。
模糊PID控制;nRF905;SHT11;STC89C52RC
在现代社会,生产活动对环境的温湿度要求越来越高,环境因素直接影响到产品的生产效率、经济效益。研究人员将数字式传感器、无线通讯、控制算法引入温湿度控制系统,满足了一定的生产需求。但传统温湿度监控系统控制性能不高,需花费大量精力对控制系统要进行复杂的参数整定并维护系统的稳定运行,难以适应较为复杂的控制环境。为此,设计一种通过数字式传感器采集现场数据并由无线方式传输,采用自适应模糊PID控制算法的温湿度监控系统。
1 系统方案总体设计
本系统由采集节点和终端节点组成。采集节点通过SHT11温湿度传感器采集现场温湿度,由采集节点MCU通过nRF905无线收发器传输至终端节点。终端节点MCU对采集数据进行监测,并通过模糊PID控制器启动喷雾器、除湿器、加热器、冷风机对温湿度进行控制以达到温湿度恒定的要求。当温湿度超过设定范围后,会触发报警器模块报警,通知管理员采取进一步措施。本系统结构框图如图1所示。
图1 系统结构框图
2 系统硬件介绍
2.1 STC89C52RC
STC89C52RC是兼容8051指令的8位单片机,内置8KBFlash程序存储器、1个通异步串行口UART、看门狗电路。性能优异,价格低廉,具有低功耗、抗干扰性和超强稳定性等特点。
2.2 温湿度检测与数据显示电路
SHT11是一款数字式温湿度传感器。SHT11传感器湿度测量范围为0-100%RH,测量精度为±3%RH;温度测量范围为-40~+123.8℃,测量精度为±0.4℃[1]。在VCC和GND之间接入去耦滤波电容以保证数据信号稳定,温湿度检测电路硬件接线图如图2所示。LCD1602显示模块硬件接线图如图3所示。
图2 SHT11与STC89C52RC硬件接线图
2.3 无线传输电路
nRF905无线收发器工作在免申请ISM频段,工作电压范围为1.9V~3.6V,工作温度范围为-40℃~+85℃,频道切换时间小于650us,最大数据传输率为100kbps。最大发射功率为10dBm,通过四线制SPI总线与MCU连接,自动处理CRC和前导码。nRF905可以工作在ShockBurst接收模式、ShockBrust发送模式、掉电模式或空闲模式下,通过配置TRX_CE、TX_EN和PWR_UP引脚来选择工作模式[2]。
硬件接线图如图4所示。
图4 nRF905与STC89C52RC的硬件接线图
2.4 温湿度控制硬件电路
当温湿度偏离设定值后,系统会启动相应的部分电路。其中喷雾器和除湿器控制湿度的增加和减少,加热器和冷风机控制温度的升高和降低。当温湿度超过极限范围时,报警器工作,提醒管理员采取措施。这里采用电磁继电器,将单片机和市电设备在电气上隔离。温湿度控制硬件电路接线图如图5所示。
图5 温湿度控制硬件电路接线图
3 软件程序设计
3.1 温湿度采集程序设计
上电之后等待11ms度过“休眠”状态。当MCU发送“启动传输”时序之后,再发送温度测量命令、湿度测量命令。MCU在SHT11完成测量进入空闲模式之后按照读时序读出测量数据。
3.2 无线传输程序设计
nRF905在收发数据之前需要通过SPI总线配置有效数据宽度、工作频段、发射功率、CRC校验位等选项。
当MCU发送数据时通过SPI总线将接收机地址和传输数据送给nRF905无线收发器数据寄存器。首先MCU将上电引脚PWR_UP、收发使能引脚TRX_CE和发送使能引脚TX_EN置高,启动nRF905的ShockBrust发送模式,开始进行数据打包并发送数据包。数据准备引脚DR在数据发送完成后被置高,当自动重发引脚AUTO_RETRAN被置高时nRF905会不断的重新发送数据,直至收发使能引脚TRX_CE被置低。当数据发送完成时,自动进入空闲模式等待下一次数据传输。
图6 nRF905发送模式程序流程图
图7 nRF905接收模式程序流程图
通过将收发使能引脚TRX_CE置高,发送使能引脚TX_EN置低使nRF9005进入ShockBrust接收模式。等待650us之后监测是否有接收频段载波。当监测到接收频段载波后检测载波引脚CD置高并进行地址匹配。当验证接收地址有效时,地址匹配引脚AM被置高。当数据包接收完毕并通过CRC校验后,nRF905自动移除前导码、地址和循环冗余校验位并将数据准备引脚DR置高。之后当收发使能引脚TRX_CE置低时nRF905进入空闲模式,MCU通过SPI总线从nRF905的寄存器中读取数据。当数据接收完毕将数据准备引脚DR和地址匹配引脚AM置低准备下一次数据传输[3]。
发送模式和接收模式的程序流程图分别见图6和图7。
3.3 软件抗干扰
为了提高系统的稳定性,采用中位值平均滤波算法对SHT11温湿度传感器采集的数据进行数字滤波[4]。首先连续采样5次,通过冒泡排序法取得中位值作为本次采集有效数据。重复多次得到足够数量的采集有效数据之后,求解算术平均值作为输出数据。
4 模糊PID控制设计
4.1 模糊PID控制原理
温湿度控制系统的运行结果直接受控制精度影响,同时温度和湿度的变化都是非线性、时变时滞的。常规PID控制精度高,鲁棒性好,结构简单,但不适用于非线性变化的无确知模型系统,控制参数无法跟随变化的系统。模糊控制适用于非线性变化的无法精确建模的系统,可以适应快速响应和微超调量的需求,适合于对非线性时变时滞系统进行控制,为此将模糊控制引入常规PID控制中,以提高控制系统的静态和动态性能。由于单片机控制属于数字控制方式,常规PID控制中的积分项和微分项需要进行离散化处理,数字式PID表达式如式(1)所示:
式中,e(k)、u(k)为采样点时刻误差量和输出控制量;T为采样周期,必须足够短以保证足够的精度。
模糊PID控制是根据不同时刻控制环境产生不同的测量误差|e|和误差变化率|de/dt|即|ec|,通过模糊推理,在线调整PID控制器的控制参数以满足不同环境下对控制机构性能的要求。这种方法有效的增强了系统的动态、稳态性能,抑制了温湿度监控系统的时滞性,提高了系统的灵活性。
模糊PID控制工作原理:首先由测量机构算出精确量|e|和|ec|,根据模糊数学理论将其模糊化成输入模糊量,然后模糊推理机根据事先制定好的模糊规则推理出输出模糊量,将输出模糊量精确化成精确量,即为PID控制器的控制参数KP、KI、KD,驱动PID控制器对被控对象进行控制。
模糊PID控制框图如图8所示。
图8 模糊PID控制框图
4.2 PID参数整定规则
模糊PID控制器的关键在于设计一个合理的模糊推理规则,该规则表征系统误差|e|和误差变化率|ec|发生变化时如何调整PID控制器的控制参数。整定规律归纳如下:
(1)当|e|较大时,取较大的KP、KI=0和较小的KD。三者的作用分别是提高系统的响应速度,削弱系统时滞性带来的副作用、抑制积分饱和的产生、避免微分饱和使得控制作用超出极限控制范围。
(2)当|e|中等大小时,取较小的KP、适当的KI和KD。前者的作用是避免系统出现剧烈的波动、后两者的作用是保证系统的响应速度。此时系统受KD参数的影响比较大。
(3)当|e|较小时,取较大的KP、较大的KI。两者的作用是使系统拥有良好的稳态性能,系统残差小。其中为了抑制系统在目标点邻域出现振荡并增强抗干扰性能,当|ec|较小时,取较大的KD;当|ec|较大时,取较小的KD[6]。
4.3 模糊推理规则
考虑到增加输入量个数会大大增加推理时的计算量,这里模糊控制器选择二维输入三维输出的形式,以|e|和|ec|为输入,以KP、KI、KD为输出。|e|和|ec|的论域为{0,1.5, 3,4.5},模糊语言变量为{Z,S,N,B},隶属度函数分别如图9、10所示。KP、KI、KD的论域为{0,1.5,3,4.5},模糊语言变量为{Z,S,N,B}。各模糊语言变量的隶属度函数均取三角形函数。其隶属度函数如图11所示。
图9 |e|的隶属度函数
图10 |ec|的隶属度函数
图11 KP、KI、KD的隶属度函数
模糊规则表如表1、2、3所示。
表1 KP的模糊规则表
表2 KI的模糊规则表
表3 KD的模糊规则表
图12
图13
图14
4.4 模糊量的精确化
由于MCU的计算能力有限且需要在线对PID控制参数进行整定,所以要求精确化过程的运算量不能过大,且输入量的微小噪声不能引起输出量的剧烈波动。常用的精确化方式有加权平均法、面积平分法和最大隶属度法,其中加权平均法对于对称型输出隶属度函数较为适合。这里选择加权平均法作为精确化方式,如式 (2)所示:
综合以上四个步骤,把输入变量输入模糊控制器,经过精确量的模糊化、模糊推理、模糊量的去模糊化,最终得到精确输出量送给PID控制器。
最后通过在MATLAB建立本系统,得出Kp、Ki、Kd的参数曲线,如图12、13、14所示。
5 结论
采用常规PID控制方式存在局限,需花费大量精力整定PID控制器的控制参数且无法适应复杂被控对象,限制了其应用范围。将模糊控制与常规PID控制结合组成模糊PID控制,通过模糊推理在线整定PID控制器的参数,可以提高温湿度监控系统的控制性能,平稳、快速的将系统调整到目标状态,减小了系统的过调量,提高了控制系统的稳定性和动态性,对被控对象实现稳定、快速的控制,提高了温湿度控制的精度,为工业、农业生产活动提供了良好的生产环境,提高经济效益。通过引入数字滤波技术增加系统采集数据的稳定性,SHT11温湿度数字式传感器降低了系统的维护难度,采用nRF905无线传输器提高了布置系统的便利性,避免了有线传输的线路故障因素。同时nRF905无线收发器可以实现一主多从的传输方案,故可建立多个温湿度测量节点,组成分布式监测系统。同时也可将数据传输到电脑等数据中心,在上位机上实现实时监控,方便用户进行操作。
[1]Sensirion Humidity SHT1x Datasheet CN V5[Z] Sensirion,2011.
[2]nRF905 Product Specification[Z] NORDIC,2008.
[3]题原,宋飞,刘树东,等.基于nRF905的无线温湿度检测与传输系统设计[J].化工自动化及仪表,2011,38(4):404-407.
[4]赵莲维,姜重然,王 鹍.现场总线分布式粮情系统温湿度测量数字滤波器的设计[J].农机化研究,2011,(7):129-132.
[5]诸静.模糊控制理论与系统原理[M].北京:机械工业出版社,2005.
[6]赵笑笑.基于模糊理论与常规PID控制的模糊PID控制方法研究[J].山东电力技术,2009(6):54-63.
潘钺(1993—),安徽安庆人,大学本科,从事嵌入式系统控制研究。
生芳(1981—),辽宁营口人,硕士,安徽工程大学讲师,研究方向:单片机嵌入式系统。
国家大学生创新训练项目(201210363127)。
水源(1994—),男,安徽合肥人,大学本科,从事嵌入式系统控制研究。