文 珣, 林 聪, 陈卿冶, 蔡剑华
基于FPGA太阳能热水器的优化控制及实现
文 珣*1,2, 林 聪1,2, 陈卿冶1, 蔡剑华1
(1. 湖南文理学院 物理与电子科学学院, 湖南 常德, 415000; 2. 湖南文理学院 芙蓉学院, 湖南 常德, 415000)
设计了一种以FPGA芯片为控制器的太阳能热水器控制系统, 系统具有太阳能加热与电加热结合的恒温控制功能. 以DS18B20和水位检测模块为传感器, 信号经A/D模块转换后同主芯片控制数据同时显示在液晶LCD1602上; 系统还可用键盘输入模式或红外遥控模式进行更改设置, 给客户的使用带来了方便.
太阳能热水器; FPGA; 恒温控制; 红外遥控
我国经济的不断发展, 能源危机日益加剧, 环境污染问题也逐渐被关注. 因此节约能源、开发洁净新能源已成为我国经济建设的基本国策之一. 太阳能以其清洁安全、处处皆是、无需开采和运输等优势, 成为人们关注的焦点. 近年来, 随着人们生活水平的提高, 太阳能热水器已经走进千家万户, 由此越来越多的人们对太阳能热水器使用的方便性、安全性、功耗性、操作界面友好性等方面提出了更高的要求. 面对我国太阳能热水器控制器一直处于研究和开发阶段, 智能化程度还不足以满足人们的需求[1—4]. 本文采用高速、高密度FPGA芯片来作为系统的控制芯片, 设计了一套具有太阳能加热与电辅助加热两者相结合的控制系统, 这套系统具有以下优点: 具有清晰的数据显示器、两种更改设置模式、加热定时控制模块、温度过高保护、外部扩展能力强、使用方便、开发周期短、开发费用低等.
太阳能热水器系统是由太阳能热水器硬件框架和软件控制系统组成. 而太阳能热水器硬件框架由集热器、蓄热水箱、循环连接管道、支架及其辅助部件(加热等)组成. 而软件控制系统是由输入、显示、检测、外部控制组成, 外部控制结构如图1所示.
图1 外部控制结构
太阳能热水器智能控制部分是热水器系统实现自动化、智能化运行的关键. 热水器控制系统是根据温度传感器T1、T2采集的温度信号, 水位传感器H采集的水位数据和外部水流开关采集的用户用水信息, 实现对集热循环水泵、供水水泵、上水电磁阀的启停控制及对电加热的通断控制. 控制器根据T2、H信号控制上水电磁阀和电加热的启停, 完成热水器补水、补温的自动控制; 根据T1、T2信号控制循环水泵启停, 实现集热循环部分的自动控制. 太阳能热水器系统结构如图2所示[2—3].
图2 太阳能热水器系统结构
控制系统内部功能模块的电路设计在Quartus II平台下, 采用SOPC设计方法设计实现. 根据控制器设计要求, 首先创建系统顶层原理图文件, 然后根据处理器系统模块、PLL模块和模糊控制模块的结构, 采用自下而上的设计方法分别设计各个子功能模块. 所有的子模块设计完成之后, 再利用自上而下的设计方法在顶层模块设计中调用它们, 最终实现各个模块间的通信并确定I/O端口.
①CPU电路设计. CPU电路是FPGA内部处理器系统的核心, 设计选用32位Nios处理器, 由它实现对外围设备的读写访问. 软件设计中通过控制器发出读写操作指令, 产生时序指令和其它一些控制指令, 实现对外围设备的读写操作, 在本设计中 Nios处理器就是基于AVALON总线标准的主设备. 电路配置如图3所示.
②SDRAM控制器电路设计. 引脚配置如图4所示. SDRAM 是同步动态随机存储器, 因其是动态的, 所以必须周期性的刷新以保持内部数据的有效性. 选用的K4S641632H芯片设置1 6位; 在Timing页面中根据芯片K4S 641632H的datasheet对SDRAM时序参数进行配置(图5).
图3 CPU电路配置图
图4 SDRAM引脚配置
③定时器电路的设计. time0定时器与time1定时器主要是实现看门狗与定时, 并能利用读写控制器进行控制; TIME_2(看门狗)定时器主要用做监控系统, 当系统出现故障时, 快速实现系统复位操作.
④模糊控制部分设计. 通过用VHDL语言在FPGA内部实现了模糊控制模块电路, 生成的原理图如图6所示.
图5 SDRAM时序参数进行配置
⑤ROM查询电路的设计. ROM存储器是用来存储模糊控制器采集的信息, 通过查表法来实现这一模糊控制, 利用查询电路读出控制数据. 其电路的原理图如图7所示.
⑥红外遥控设计. 这部分有红外遥控专用芯片PT2248及外围电路作为编码及发送部分, PT2248最大可用作18路红外遥控系统的编码, 其内部以集成了38 kHz的红外载波震荡及相应的数字脉码调制电路, 只需要外接3×6的矩阵式按键、红外发光二极管及其驱动电路等少数元器件便可完成编码发送功能. 这个模块的加入, 为用户提高了更加快捷的使用方式.
图6 模糊控制器原理图
图7 ROM 查询电路原理图
⑦显示器设计. 采用目前使用较多的专门用来显示字母、数字、符号等的点阵型液晶模块LCD 1602, 能让用户比较直观的看到各器件的状况, 并且此模块微功耗、体积小、显示内容丰富、超薄轻巧, 更好的体现了实用性. 图8为LCD1602驱动显示原理简图.
⑧温度检测设计. 采用使用广泛的传感器DS18B20, 在接到控制器的测量信号后, 传感器开始进行数据采集. 温度检测原理简图如图9所示.
图8 显示部分原理简图
图9 温度检测原理简图
⑨水位控制设计. 水位控制是采用简单的电导式液位传感器来完成检测的, 电导式液位传感器通过输出6位开关信号(1或0)来检测液位的深度, 这种测量方法具有较高的精确度和可靠性. 在生活中的用水电阻率大约为每米十几欧到几十欧, 其电导性很容易引起液位传感器的输出变化. 当6位开关全为电平1时, 蓄水箱处于缺水状态, 当6位开关全为电平0时, 蓄水箱满水. 水位测量简图见图10[1—3, 5].
⑩辅助加热电路设计. 水温加热是通过平时使用的加热电阻丝来实现的[5—6], 对于电阻丝这种大功率器件, EP2C8Q 208C8N不能利用自身的引脚来实现, 而是通过一种功率放大元件, 再利用交流220 V电来完成对水温的加热, 当给控制端口一个高电平, 此时光耦器件导通, 打开了一个三极管, 从而接通了电阻丝, 实现了对水的加热.
通过fuzzy电路, 仿真得到如图11所示信息.
图10 水位控制电路简
图 11 fuzzy 电路仿真图
系统的软件开发环境是Altera公司推出的NIOS II IDE, 此环境提供了一个功能齐全的源代码编辑器, NIOS II IDE编译器可以自动的生成一个基于用户特定系统配置的makefile文件. 运用此环境可大大加快开发进度[7].
主程序对定时器、显示器进行了初始化, 并且启动了定时器, 然后对键盘进行扫描, 判断是否有按键按下操作, 接着通过主芯片获取传感器传来的信号进行处理, 最后将部分信息数字化到显示器上. 程序基本设计框架如图12所示[3-4].
图12 程序设计流程
通过FPGA实现了太阳能热水器控制器系统的设计, 能很好地满足实际要求. 对比以往的设计方法, 本系统采用分时段控制, 即“用水时段”和“非用水时段”, 避免了频繁启动和用水安全, 能源得到了有效的利用; 而且用温差跟踪循环方式充分利用太阳能进行加热并及时启动辅助能源补充加热, 为用户提供不间断开水供应的同时, 节约了能源. 且在很多方面都设计了保护电路、选用了许多功耗低的器件, 使得该系统有更好的利用与发展空间.
[1] 陈静, 周志峰. 基于Nios处理器的模糊控制器设计[J]. 电子科技, 2006(6): 81—85.
[2] 徐志军, 徐光辉. CPLD/FPGA 的开发与应用[M]. 北京: 电子工业出版社, 2002: 53—55.
[3] 党学立. 基于FPGA太阳能热水器智能控制器的设计[D]. 西安: 西北农林科技大学, 2008.
[4] 黄智伟, 王彦. FPGA 系统设计与实践[M]. 北京: 电子工业出版社, 2007: 106—109.
[5] 李向阳, 莫鸿. 太阳能热水器中辅助电热水装置控制器的开发[J]. 自动化与仪器仪表, 2004(2): 23—26.
[6] 汤光华. 水箱水位控制器的设计与实现[J]. 自动化仪表, 2006, 27: 34—36.
[7] 杨久河. 基于DS18B20的多点式无线温度测量仪的设计与实现[D]. 青岛: 中国海洋大学, 2010.
Optimization control and its implementation of a solar water heater based on FPGA
WEN Xun1,2, CAI JianHua1, LIN Cong1,2, CHEN QingYe1
(1. Department of Physics and Electronics, Hunan University of Arts and Science, Changde 415000, China; 2. FuRong College, Hunan college of Arts and Science, Changde 415000, China)
A control system of solar water heater was designed based on FPGA. It has the functions combining solar heating with electric heating. Taking the temperature sensor DS18B20 and water detection sensor module as sensor, the signal, after converted by the A/D module, together with the main chip control data are simultaneously displayed on the LCD1602. Furthermore, the system can use the keyboard input mode or infrared remote control mode to change settings.
solar water heater; FPGA; constant temperature control; infrared remote control
TP 202.3
1672-6146(2014)02-0062-04
10.3969/j.issn.1672-6146.2014.02.013
通讯作者email: wenx168c@163.com.
2014-03-25.
常德市科技局产学研重点项目(2013ZX08); 常德市科技局博士创新创业项目(2013BS01); 常德市科技局项目(2011JC02); 湖南省大学生创新实验项目; 湖南文理学院芙蓉学院学生创新实验项目.
(责任编校:刘晓霞)