基于FPGA的空调硬件系统的研究
2015-01-18杨雪峰
杨雪峰 李 琳
(江西应用技术职业学院,江西 赣州 41000)
基于FPGA的空调硬件系统的研究
杨雪峰 李 琳
(江西应用技术职业学院,江西 赣州 41000)
本设计以EP1K30TC144-3和DS18B20为设计平台,实现了对温度采集、测量、对比、处理等功能,具有很好的移植性,能应用于现今大部分温控系统。其硬件电路简单,成本低,应用灵活,测温精度和转换速度足以保证大多数测温系统的需求,提高了温度采集系统的可靠性和稳定性。
FPGA;温度测控;DS18B20
1 引言
目前大多数的空调温度控制系统都采用了以单片机作为控制器的设计,但是随着可编程逻辑器件的发展,家用电器的控制部分也越来越多地使用可编程逻辑器件来实现。系统控制部分选用的是FPGA,温度传感部分选用的是高精度DS18B20传感器。使用该传感器采集的温度无须经过信号放大和A/D转换以数字信号的形式传递给FPGA,简化了电路的同时也减小了测量误差。FPGA芯片与单片机相比,具有可编程修改和强大的逻辑功能,因此以FPGA为控制器件的设计更有市场竞争力[1]。
2 硬件总体设计
2.1 硬件整体结构及原理
硬件电路主要包括晶振、电源模块、FPGA、温度传感器、数码显示。本设计使用的FPGA芯片是Altera公司的ACEX 1K系列的EP1K30TC144-3,温度传感器选用高精度DS18B20数字温度传感器。整个硬件的框图如图1所示。
电路原理:时钟信号由20MHz石英晶振提供给FPGA。DS18B20将采集的温度以数字信号直接送给FPGA,可根据需要通过按钮设置温度值和定时时间。FPGA控制器接收到设置和测量温度后,比较两个温度值后做出判断:(1)测量温度大于设置温度则FPGA发出制冷信号;(2)测量温度小于设置温度则FPGA发出加热信号。执行机构接收到FPGA的信号后改变环境温度,与此同时数码管显示出定时时间和设置温度[2]。
2.2 系统总电路图
各模块说明:TIM:定时时长设置模块;TEMPCONDITIONER:控制模块;FENPIN:分频模块;TIAOJIE:温度设置模块;SHOW:测量所得温度显示模块;SHOWT:设置的时长显示模块;SHOWDE:设置的温度显示模块。系统电路如图2所示。
图1 整个硬件框图
图2 系统电路图
3 控制器芯片介绍
本设计使用的是Altera公司ACEX 1K系列的EP1K30TC144-3。ACEX 1K是2000年推出的2.5V低价格的SRAM工艺的PLD。ACEX1K器件的特点:
(1)不仅具有一般功能的逻辑阵列而且还实现了宏功能的增强嵌入式阵列,提供低价的可编程单芯片系统集成,单个EAB的双口能力可达16-bit。
(2)高密度:不仅有高达49152位内部RAM而且还有1万到10万个典型门。
(3)系统级特点:多电压接口支持2.5V、3.3V和5V设备;低功耗;双向I/O性能达到250MHz;完全支持在33MHz或66MHz下3.3V的PCI局部总线标准;内置JTAG边界扫描测试电路;JTAG端口、配制器件、智能控制器共同实现在线重配置。
(4)灵活的内部连线:算术功能的专用进位链的实现;内部总线的三态模拟的实现;6个全局时钟信号和4个全局清除信号;高速、多扇入功能的专用级联链的实现;快速、可预测联线延时的快速通道。
(5)强大的I/O引脚:可编程输出电压的摆率控制可减小开关噪声;每个引脚都有一个独立的三态输入、势能控制和漏极开路配置选项。
4 温度检测设计
4.1 温度传感器的选择
按电阻的性质可以分为半导体热电阻(称为热敏电阻)和金属热电阻(称为热电阻)。
方案一:选用铂电阻Pt1000温度传感器。铂热电阻在高温和氧化性介质中非常稳定,所以线性较好。在0OC--100OC时,最大线性偏差小于0.5OC。铂热电阻与温度的关系是:Rt=Ro(1+At+Bt×t);其中Rt是温度为t摄氏度时的电阻;Ro是温度为0OC时的电阻;t为任意温度值,A,B为温度系数。但其成本太贵,不适合做普通设计。
方案二:选用DS18B20集成智能温度传感器。该传感器是“一线器件”数字化,不仅体积小,电压宽而且更经济。其测量温度范围为-55OC——-+125OC,以“一线总线”的数字方式直接传输,极大地提高了系统的抗干扰性。DS18B20能设置9~12位的分辨率,把设置的温度存储在EEPROM,掉电后依然保存防止丢失[3]。
方案选择:选择方案二。理由:电路不需要A/D转换,直连FPGA芯片,不仅简单且稳定性、可靠性高。
4.2 DS18B20数字温度测温原理
DS18B20的测温原理如图3所示。图中晶振(低温度系数)的振荡频率几乎不受温度的影响,产生固定频率的脉冲信号作为减法计数器1的脉冲输入;晶振(高温度系数)振荡频率随温度变化很大,产生的信号送给减法计数器2。当记数门打开时,DS18B20对晶振(低温度系数)产生的时钟脉冲进行记数,进而完成温度测量。记数门的开启时间由晶振(高温度系数)来决定,每次测量先将-55℃所对应的基数(减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值)分别置入减法计数器1和温度寄存器中。
减法计数器1对晶振(低温度系数)产生的脉冲信号减法记数,当减法计数器1的预置值减为0,温度寄存器值加1,减法计数器1的预置值重新装入。减法计数器1重新开始对晶振(低温度系数)的脉冲信号记数,以此循环直到减法计数器2记数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值就是所测温度值。只要记数门仍未关闭就重复上述过程,斜率累加器的输出用于修正减法计数器的预置值,直到温度寄存器值等于被测温度值[1]。
图3DS18B20测温原理
5 结束语
本文采用了温度传感器DS18B20,Altera公司ACEX 1K系列的EP1K30TC144-3控制器。硬件主要有五大模块:温度检测模块、定时计数模块、LED屏显模块、分频输出模块、FPGA中央控制模块。基本原理是FPGA采集温度后比较其值,然后给空调电机发出指令,控制温度的升降,当设定温度与测量温度相等时,不调节温度。该课题研究将基于FPGA的控制器应用于温控领域,提高了温度采集系统的可靠性和稳定性。
[1]袁伟亭,周润景.FPGA与DS18B20组成的测温系统的设计[J].内蒙古大学学报,2006,(4):459-463.
[2]边计年,薛洪熙译.用VHDL设计电子线路[M].北京:清华大学出版社,2000.
[3]DS18B20 Programmable Resolution 1-wire Digital Thermometer [EB/OL].http://www.maximic.com,2006.
Research on the Air Conditioning Hardware System Based on FPGA
Yang Xuefeng Li lin
(Jiangxi College of Applied technology,Ganzhou 41000,Jiangxi)
Using DS18B20 and EP1K30TC144-3 as the design platform,this design achieves the functions of temperature collection,measurement,comparison,processing with good portability.It can be used for most of the current temperature control system.The hardware circuit is simple,the cost is low,the application is flexible,and the temperature measurement precision and conversion speed can meet with the need of most temperature measurement system.This design improves the reliability and stability of the temperature acquisition system.
FPGA;temperature measurement and control;DS18B20
TP212.11
A
1008-6609(2015)11-0068-02
杨雪峰,男,江西广昌人,硕士研究生,研究方向:软件工程、网络组建。