微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 一款基于FPGA的智能热水器设计

一款基于FPGA的智能热水器设计

时间:08-07 来源:互联网 点击:

间模块功能就是一个数字计器,它由FPGA通过记录基准频率的次数决定,主要包括间设置和间运行计两个功能。

2.3 用户信息模块

用户信息模块主要完成用户信息得设置、储存和读取并联合时间模块实现时间计算与控制,包括用户信息设置和RAM写操作模块、RAM模块、信息读操作和数据转换模块和时间计算模块。本模块的实现方法为,信息设置模块把用户信息储存在RAM内,信息读取模块在适当的时间读取相应数据,根据数据计算出加热所需要的时间,并在加热时间到来时,输出有有效信号和当前的有用信息给与控制模块。

2.4 水温水位控制模块

水位控制包括]种水位状态,根据不同输出电平信号判断水箱水位,然后根据比较语句判断结果,执行水位状态程序,输出相应的操作控制信号,启动或者暂停执行元件实现水位的自动控制。水位控制流程图如图5所示。

在常规PID的应用中,P、I、D 3个参数往往根据现场设备情况或调试经验人工设定的,通过调试参数以改变控制性能。PID控制是最早发展起来的控制策略之一,由于其算法结构清晰,参数可调,算法简单高效,可在现场根据实际来调节比例、积分、微分3个参数来达到较好的控制效果,在温度控制系统中被广泛采用。PID控制系统原理如图6所示。

完整的模拟PID算法表达式为:

(1)式中,u(t)为控制量,e(t)为偏差,即设定值与反馈值之差,Kp为比例常数,Ti为积分时间常数,Td为微分时间常数。PID算法的原理即调节Kp,Ti,Td3个参数使系统达到稳定。

FPGA对信号处理前,必须将(1)式数字化,当采样周期足够短时,用累加求和替代积分、用向后差分代替微分,于是就得到差分方程:

式(5)即为数字PID算法公式。

Ziegler-Nichols(齐格勒-尼柯尔斯)参数整定它是在实验阶跃响应的基础上,或者是在仅采用比例控制作用的条件下,根据临界稳定性中的Kp值建立起来的。当被控对象的传递函数可以近似为带延迟的一阶系统:

齐格勒-尼柯尔斯给出了用表1中的公式确定kp、Ti、Td的值的方法。

用Ziegler-Nichols法则调整PID控制器,给出下列公式:

由电热水器温度控制系统的传递函数得:K=1.25,T=120秒,τ=122秒。

得Ti=2’=244秒,Td=61秒

根据齐格勒-尼柯尔斯参数调整法则得PID 3个参数为:

Kp=1.2T/τ=1.2 x 120/122=1.180 3

Ki=Kp/Ti=1.180 3/244=0.004 84

Kd=Kpx Td=1.180 3x61=71.998

由于FPGA不好处理浮点数,对离散信号作近似处理后得:

仿真时序如图7:

3 结束语

基于Actel Fuions FPGA的智能热水器控制系统,实现了水温、水位的检测和智能控制,能够适时加热从而达到保温效果,还可以根据水位自动上水,实现热水器的智能控制。该系统也可用在太阳能热水器上用来实现水温显示和液位控制,具有体积小,成本低的特点。本系统不但自身具有很好的稳定性,由于其使用PID算法实现加热保温控制,也使得整个家庭电力系统受其冲击很小。本文的最大创新点在于可以预设时间、可以远程控制烧水、可以自动调节水温和水位,这样可以为家庭甚至国家节约很多能源和水资源。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top