基于fpga的空调控制系统毕业设计

上传人:痛*** 文档编号:44401296 上传时间:2021-12-05 格式:DOC 页数:57 大小:5.11MB
收藏 版权申诉 举报 下载
基于fpga的空调控制系统毕业设计_第1页
第1页 / 共57页
基于fpga的空调控制系统毕业设计_第2页
第2页 / 共57页
基于fpga的空调控制系统毕业设计_第3页
第3页 / 共57页
资源描述:

《基于fpga的空调控制系统毕业设计》由会员分享,可在线阅读,更多相关《基于fpga的空调控制系统毕业设计(57页珍藏版)》请在装配图网上搜索。

1、郑州大学西亚斯国际学院 本科毕业设计(论文)题 目 基于FPGA的空调控制系统设计 毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要

2、求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文

3、作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日基于FPGA的空调控制系统设计摘 要本论文主要任务是设计基于FPGA的空调控制系统的设计。本课题的设计采用了温度传感器DS18B20,Altera公司ACEX 1K系列的EP1K30TC144-3控制器。控制器部分采用VHDL语言编写,主体程序采用了状态机作为主要

4、控制方式。硬件主要有五大模块:温度设置模块、定时模块、LED显示模块、分频模块、FPGA控制器模块。最后实现使用FPGA比较设置温度与测量所得温度,并发出指令给空调电机执行部分,按设置的时长实现升温或降温,当设置温度与测量温度相等时,不执行调节温度功能。另外要能根据输入数据的变化和温度传感器测量得到的温度同步变化LCD上显示。利用 Quartus II 进行仿真。该课题的研究将有助于采用FPGA的系列产品的开发。同时可以大大缩短FPGA的开发时间。另外,由于模块的易用性,也将使得更多的采用FPGA产品应用于温控领域,为行业和我们的生活带来新的变化。关键词 FPGA/温度测控/VHDL/DS18

5、B20III.The Design Of Air Conditioner Based On FPGAAbstract This paper main task is based on FPGA design of the air conditioning control system design. This topic was designed using temperature sensor DS18B20, Altera company ACEX 1 K series of EP1K30TC144-3 controller. Controller of the VHDL language

6、, the main program as a state machine main control mode. Hardware mainly have five modules: temperature setting of the module, regular module, LED display module, points frequency module, FPGA controller module. finally realize the FPGA set temperature and compared using the temperature measurement,

7、 and sent out the instructions to air conditioner motor executive part, according to the set time heating or cooling realized, when set temperature and measuring temperature equal, not to enforce temperature adjustment function. In addition to the change of the data according to the input and temper

8、ature sensor measuring the temperature change get synchronous displayed on the LCD. Use Quartus II was simulated. This topic research will help based on FPGA series of products development. At the same time can greatly shorten the FPGA development time. In addition, because of the module usability,

9、will also make more based on FPGA products used in the temperature fields, for the industry and our life brings new changes.Key words FPGA ,temperature measurement and control ,VHDL ,DS18B20 目 录摘 要IAbstractII1绪论11.1 课题的背景和意义11.2 课题的内容及方法11.3 论文结构安排22 可编程逻辑器件32.1 可编程逻辑器件介绍32.1.1 PLD的发展历程32.1.2 可编程逻辑器

10、件的结构32.1.3 可编程逻辑器件的分类42.1.4 可编程逻辑器件的应用52.1.5 可编程器件的前景及趋势52.2 EDA技术52.3 VHDL语言62.3.1 VHDL的特点62.3.2 VHDL的设计步骤63系统及电路方案选择73.1 空调技术概述73.2 方案论证与确定73.2.1 方案的选择73.2.2方案论证与确定84 硬件电路设计94.1 硬件整体结构及原理94.2 高精度数字传感器DS18B2094.2.1 温度传感器的介绍94.2.2 温度传感器的选择104.2.3 DS18B20数字温度传感器介绍104.3控制器芯片介绍134.3.1 ACEX1K器件的特点134.3.

11、2 ACEX1K功能描述144.4 LED显示电路144.5 系统总电路图155 系统软件设计175.1 温度设置模块175.2 定时模块195.3 控制模块225.3.1 控制模块下的温度模块235.3.2 控制模块下的FPGA控制器模块245.3.3 控制模块整体255.4 显示模块275.5 分频模块305.6 基于FPGA的空调控制系统综合仿真32总 结33致 谢34参考文献35附 录36 V1绪论1.1 课题的背景和意义 当今社会是数字化的社会,是数字集成电路广泛应用的社会,数字集成电路本身在不断地进行更新换代。它由早期的电子管、晶体管、小中规模集成电路,发展到超大规模集成电路(VL

12、SIC,几万门以上)以及许多具有特定功能的专用集电路。但是,随着微电子技术的发展,设计与制造集成电路的任务己不完全由半导体厂商来独立承担。系统设计师们更愿意自己设计专用集成电路(ASIC)芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(FPLD),其中应用最广泛的当属现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD)。大规模可编程逻辑器件CPLD和FPGA是当今应用最广泛的两类可编程专用集成电路,电子设计工程师利用它可以在办公室或实验室里设计出所需的专用集成电路,从而大大缩短产品的上市时间

13、,降低了开发成本。此外,可编程逻辑器件还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以象软件一样通过编程来修改,这样就极大的提高了电子系统设计的灵活性和通用性。由于具备上述两方面的特点,CPLD和FPGA受到了世界范围内广大电子设计工程师们的普遍欢迎,应用日益广泛。随着微电子技术的飞速进步,电子学进入了一个崭新的时代,其特征是电子技术的应用正以空前规模和速度渗透到各行各业。PLD的广泛应用,为各行业的电子系统设计工程师自行开发本行业专用的ASIC提供了技术和物质条件。PLD作为当今电子设计领域应用最广泛的可编程器件之一,其原因是多方面的,PLD高集成度、可现场修改、开发周期短等优

14、点满足了从军用到民用、从高端到低端的大多数电子设计领域的需求。而可编程逻辑器件从出现至今只有短短二十年的发展历史,有很多电子设计工程师以至可编程逻辑器件产品的用户对这一器件的特性、优势还不是非常了解,部分有经验的设计师依然习惯于用单片机等传统工具从事电路设计,这样就影响了电子产品的市场竞争力,也忽略了产品的升级空间。因此,十分有必要对PLD这一族器件进行全面细致的分析研究,从而更好地利用PLD的优势为电子设计服务。3 1.2 课题的内容及方法本文主要介绍了可编程逻辑器件在数字系统设计中的应用,本文研究的脉络是以可编程逻辑器件的主要应用特性为主线,分析可编程逻辑器件应用研究的必要性和现实意义;探

15、讨可编程逻辑器件结构特点上以及在数字系统设计中与传统电子器件的区别;比较主要的PLD大公司的产品、设计工具和编程语言,分析各公司产品的优势和不足。同时本文以基于FPGA的空调温度控制系统设计为实例,比较形象地展现了可编程逻辑器件在数字系统设计中的特点和优势。同时也使的对可编程逻辑器件的应用研究具体形象。1.3 论文结构安排本文一共分为章,各章的内容如下:第一章 介绍了课题研究的背景和意义,以及本课题的主要内容和研究方法。第二章 对可编程逻辑器件的发展历程、结构、分类、应用前景、发展新趋势等做了比较细致的介绍和分析。第三章 对可编程逻辑器件具体的应用实例“基于FPGA的空调温度控制系统”做一个方

16、案论证,通过与一个用单片机为核心芯片来进行设计的方案进行比较,使得用可编程逻辑器件来进行系统设计具有的优越性。第四章 对空调温度控制系统进行硬件电路的设计。第五章 进行系统软件设计,将整个系统分为若干个分模块以及各模块的VHDL描述和仿真波形。最后对本次设计进行总结,并指出其中有待于完善之处。2 可编程逻辑器件可编程逻辑器件(Programmable Logic Device,PLD)是一类半定制的通用性器件,与专用集成电路ASIC相比,PLD具有灵活性高、设计周期短、成本低、风险小等优势,因而得到了广泛应用。说到PLD的应用就不得不说到EDA技术和VHDL语言,因为PLD的应用是离不开EDA

17、技术和VHDL语言的支持。下面分别对这三个部分进行介绍。2.1 可编程逻辑器件介绍2.1.1 PLD的发展历程从可编程逻辑器件的发展历史上看,其主要经历了从PROM、PLA、PAL、EPLD到CPLD和FPGA的发展过程。它在结构、制造工艺、集成度、逻辑功能、速度和功耗上都有了很大的提高和改进。通常,可编程逻辑器件的发展历史如下: 20世纪在80年代末,出现了FPGA;CAE和CAD技术的应用更为广泛,它们在PCB设计方面的原理图输入,自动布局布线及PCB分析,以及逻辑设计等方面担任着重要的角色。20世纪90年代后,在生产工艺方面,可编程逻辑器件的线宽越来越小,集成门数越来越大,功耗越来越低;

18、在测试技术方面,可编程逻辑器件大多数均可采用边界扫描测试技术;在逻辑功能上,上实现DSP(数字信号处理)应用成为可能。仿真和设计两方面支持标准硬件描述语言的功能强大的EDA软件不断推出。2.1.2 可编程逻辑器件的结构PLD基本结构:PLD的基本结构由输入缓冲电路、与阵列、或阵列、输出缓冲电路等4部分组成。 新型的PLD则将输出电路做成宏单元,使用户可以根据需要选择各种灵活的输出方式。目前使用最广泛的可编程逻辑器件是CPLD和FPGA。CPLD:早期的CPLD主要用来代替PAL器件,所以其结构与PAL、GAL基本相同,采用了可编程的与阵列和固定的或阵列结构。目前主要的半导体公司,如Xilinx

19、和AMD公司等。大多数的EPLD、CPLD器件中至少包括3中结构:可编程逻辑宏单元、可编程I/O单元和可编程内部连线。FPGA:在FPGA中,常用的编程工艺有反熔丝和SRAM两类。反熔丝工艺占用面积小,有利于提高芯片集成度但需要专门的编程器,且只能进行一次性编程。Altera 公司的与非门结构基于一个由与门、或和异或门组成的逻辑快。这个基本电路可以用一个触发器和一个多路开关来扩充。12.1.3 可编程逻辑器件的分类随着微电子技术的发展,可编程逻辑器件品种越来越多,型号越来越复杂。目前PLD尚无严格的划分标准,下面仅从集成度、可编程原理及结构特点三方面对PLD进行简单的分类。按集成度分类:PLD

20、从集成密度可分为低密度可编程逻辑器件(LDPLD)和高密度可编程逻辑器件(HDPLD)两类。通常,当PLD中的等效门数超过500门时,则认为它是高密度。其具体的划分如下图:PLDLDPLDHDPLDPLAPALGALEPLDCPLDFPGAPROMMMM图2-1 PLD结构图按可编程原理分类:从可编程特性上可以将PLD分成一次性编程和重复可编程两类。一次性可编程的典型产品是PROM、PAL和熔丝型FPGA,其他的可编程产品大多是重复可编程的。一次性可编程器件的优点是集成度高、工作频率而后可靠性高、抗干扰能力强。而重复可编程器件的优点是可多次修改设计,特别适用与系统样机的研制。按结构特点分类:目

21、前常用的可编程逻辑器件都是从与阵列、或阵列和门阵列发展起来的,所以可以从结构上将其分为两大类。1.阵列型PLD 阵列型PLD的基本结构由与阵列和或阵列组成。简单PLD(PROM、PLA、PAL和GAL、EPLD、和CPLD)都属于阵列型PLD。2.现场可编程门阵列FPGAFPGA具有门阵列的结构形式,它是由许多可编程逻辑单元(或逻辑功能块)排成阵列组成的,所以也将FPGA称为单元型PLD。2.1.4 可编程逻辑器件的应用可编程逻辑器件在电子领域的应用主要有两方面:1.PLD在ASIC设计中的应用把一个有专用目的,并具有一定规模的电路或子系统集成化而且设计在一芯片上,这就是专用集成电路ASIC的

22、设计任务,通常ASIC的设计要么采用全定制电路设计方法,要么采用半定制电路设计方法进行检验,若不满足要求,还要重新设计再进行验证。目前,HDPLD有两种用途:一是用于最终产品;一是用于ASIC化的前道工序的开发试制品。2. 基于EDA的CPLD/FPGA应用电子产品的高度集成数字化是必由之路,我国的电子设计技术现在又面临一次新突破即CPLD/FPGA在EDA基础上的广泛应用。CPLD/FPGA以其不可替代的地位以及伴随而来的具有经济特征的IP芯核产业的崛起,正越来越受到业内人士的观注。2.1.5 可编程器件的前景及趋势CPLD/FPGA的设计开发采用功能强大的EDA工具,设计成功的逻辑功能软件

23、有很好的兼容性和可移植性,开发周期短。目前PLD/CPLD约占全球市场规模的6成 ,IP内核得到进一步发展。具体体现在:1.PLD正在由点5V电压向低电压3.3V甚至2.5v器件演进,降低功耗。2.ASCI和PLD出现相互融合。3.ASIC和FPGA之间的界限正变得模糊。4.集成度不断提高,价格不断降低,向系统级发展。2.2 EDA技术 EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具

24、,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。 2.3 VHDL语言 VHDL 的英文全名是 Very-High-Speed Integrated Circuit Hardware Description Language,诞生于 1982 年。VHDL主要用于描述数字系统的结构,行为,功能和接口。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分及端口)和内部(或称不可视部分),既

25、涉及实体的内部功能和算法完成部分。22.3.1 VHDL的特点应用VHDL进行系统设计,有以下几方面的特点: (1)功能强大,设计方式多样 (2)具有强大的硬件描述能力 (3)具有很强的移植能力 (4)设计描述与器件无关 (5)程序易于共享和复用 由于 VHDL 语言是一种描述、模拟、综合、优化和布线的标准硬件描述语言,因此它减小硬件电路设计的工作量,缩短开发周期。102.3.2 VHDL的设计步骤采用VHDL的系统设计,一般有以下6个步骤:(1) 按要求的功能模块划分;(2) VHDL的设计描述(设计输入);(3) 代码仿真模拟(前仿真);(4) 设计综合、优化和布局布线;(5) 布局布线后

26、的仿真模拟(后仿真);(6) 设计的实现(下载到目标器件)。3系统及电路方案选择 3.1 空调技术概述 世界空调的发展可分为四个阶段。首先是后风扇时代,典型特征是功能仅限制于制冷制热,技术含量低;接下来是纯空调时代。这个时代的最显著标志是空调成为真正意义的空气调节器。不光调节空气的温度,对空气的舒适度也进行调节;随着各国政府对空调的能耗标准提出要求。空调进入了超空调时代,其显著特点是空调不仅仅是空调。还能满足节能环保的要求;在以网络信息代表的2l世纪,作为家电产品的空调器也必将随之步入网络信息时代。为了最大限度地节约能耗,开辟新能源的利用,同时空调越来越趋于智能化。总之空调技术的研究发展很快,

27、并且开发出了种类繁多的空调产品3。3.2 方案论证与确定3.2.1 方案的选择目前大多数的的空调温度控制系统都采用了以单片机作为控制器的设计,但是随着可编程逻辑器件的发展,家用电器的控制部分也越来越多地使用可编程逻辑器件来实现,所以下面提供了以单片机和可编程逻辑器件(FPGA)为核心控制器件的2个方案进行选择。方案1:该方案采用的是AT89C51单片机为核心控制器件,用它来处理各个单元电路的工作以及检测其运行情况。首先通过温度传感器对空气进行温度采集,将采集的温度信号作A/D转换,使其模拟信号转变成数字信号,然后输给单片机,再由单片机控制显示,并比较采集的温度与设置的温度是否一致,然后驱动空调

28、机的加热或降温循环对空气进行处理,从而模拟实现空调温度控制单元的工作情况,本设计中采用的是AD590温度传感器,通过温度系统采集电路采集相关温度数值,再由AD0809组成的A/D转换电路进行转换,最终的到数字信号,将其直接输给单片机,然后由单片机机根据内部程序判断,执行相关控制程序,驱动个单元电路的工作11。其方框图3-1如下: AD590A/D转换 AT89S51LED显示可控硅电路可控硅电路风扇电炉图3-1 基于单片机的空调控制系统框图方案2:该方案以FPGA为核心控制器件,采用数字温度传感器DS18B20进行温度采集,将采集到的温度数字直接以数字信号传输给FPGA控制器,控制器通过比较采

29、集的温度和用户设置的温度来做出发送降温还是加热的控制信号给空调机。同时通过FPGA芯片还可以实现定时和控制显示,使用6个数码管将传感器测量到的温度,设置的温度、定时时长都显示出来。其方框图3-2如下:控制器 FPGA空调电机温度采集LED显示温、时设置图3-2 基于FPGA的空调控制系统框图3.2.2方案论证与确定通过比较两个方案,方案1采用单片机为核心控制器件,该方案的优点是容易控制,系统原理比较简单,电路可靠,容易实现控制目的。但是该方案中的温度测量电路,译码电路复杂,容易产生误差和由电路复杂而导致的设备使用寿命低等一系列问题。方案2采用的是以FPGA为核心控制器件,同时温度传感器采用的是

30、高精度的数字温度传感器DS18B20,通过该传感器采集的温度信息不需要经过信号放大和A/D转换直接以数字信号的形式传递给控制芯片,使得电路的连接大大的简化了,减小了电路复杂所带来的误差等问题。而且FPGA芯片所具有的可编程修改的特点以及其强大的逻辑功能都是单片机难以达到的,这样不但给设计过程中带来一系列的便利,而且在空调的功能日趋人性化和智能话的发展趋势下,以FPGA为控制器件的设计无疑更加具有市场竞争力。所以同过上面的对两个方案的比较论证,本次设计采用方案2来实现4。4 硬件电路设计4.1 硬件整体结构及原理硬件电路主要包括电源、石英晶振、温度传感器、FPGA控制器、数码管显示组成。本设计使

31、用的FPGA芯片是Altera公司的ACEX 1K系列的EP1K30TC144-3,温度传感器采用高精度数字温度传感器DS18B20。整个硬件的框图如图4-1所示: FPGA20MHz石英晶振 电源空调执行机构数码管显示 温度传感器按钮图4-1 整个硬件框图整个电路的工作原理是由20MHz石英晶振FPGA提供时钟信号。电源电压为3.3V和2.5V。数字式温度传感器DS18B20将采集的温度以数字信号的形式直接传递给FPGA芯片,用户可通过按钮根据需要设置温度值和定时时长。测量温度和设置温度都送给FPGA控制器,控制器对两个温度值比较并做出判断,当测量温度大于设置温度时,控制器发出制冷的控制信号

32、;当测量温度小于设置温度时,则发出加热控制信号;当两者相等时既不制冷也不加热。通过空调执行机构来达到改变环境温度的目的。同时,将定时的时长和设置温度的值通过6个数码管显示出来9。4.2 高精度数字传感器DS18B204.2.1 温度传感器的介绍温度传感器是一种以一定的精确度把被测量温度转换为与之有对应关系的便于应用的某些物理量的测量装置。如果没有传感器对原始参数进行精确可靠的测量,那么无论是信号转换或信息处理,或者是数据的显示与控制都是不可能实现的。下面介绍传感器的特性。衡量传感器静态特性的重要特性的重要指标是: (1)线性范围:即传感器的输出量与输入量成正比的范围。理论上线性范围越宽,量程越

33、大,并且能保证一定的精度。当传感器种类确定时,首先要看其量程是否满足要求。 (2)稳定度:传感器使用一段时间后,其性能保持不变的能力。 (3)精度的确定:传感器精度越高,价格越高。因此只要传感器的精度满足整个测控系统即可,不必选的太高。 (4)灵敏度:通常情况下,在传感器的线性范围内,传感器的灵敏度越高越好。4.2.2 温度传感器的选择按照电阻的性质可以分为半导体热电阻和金属热电阻两大类,前者通常称为热敏电阻,后者称为热电阻。方案一:采用温度传感器铂电阻Pt1000。铂热电阻的物理化学性能在高温和氧化性介质中很稳定,而此元件线性较好。在0-100时,最大线性偏差小于0.5。铂热电阻与温度的关系

34、是:Rt= Ro(1+At+Btt);其中Rt是温度为t摄氏度时的电阻;Ro是温度为0时的电阻;t为任意温度值,A,B为温度系数。但其成本太贵,不适合做普通设计。方案二:采用集成温度传感器,如DS18B20智能温度控制器。单线数字温度传感器DS18B20简介新的“一线器件”体积更小、适用电压更宽、更经济,数字化。DS18B20测量温度范围为 -55-+125,现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。DS18B20可以程序设置912位的分辨率,可以设置的报警温度存储在 EEPROM中,掉电后依然保存5。方案选择:选择方案二。理由:电路简单可靠,不需要A/D转换直接同F

35、PGA芯片相连。4.2.3 DS18B20数字温度传感器介绍 DS18B20特点:DS18B20具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点。可直接将温度转化成串行数字信号供微机处理。DS18B20的性能特点如下:(1) 独特的单线接口引脚进行通信;(2) 多个DS18B20可以并联在唯一的三线上,实现多点组网功能;(3) 无须外部器件,零待机功耗;(4) 可以通过数据线供电,电压范围3.05.5V;(5) 温度以9或12位数字读出;(6) 用户可定义的非易失性温度报警设置;(7) 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;(8) 负电压特性,电源极性接反时

36、,温度计不会因发热而烧毁,但不能正常工作。DS18B20的内部结构:DS18B20有4个主要的数据部件:(1)64位激光ROM,温度灵敏元件。(2)非易失性温度报警触发器TH和TL。可通过软件写入用户报警上下限值。(3)配置寄存器。DS18B20工作时按此寄存器中的分辨率将温度转换成相应精度的数值。 DS18B20内部结构框图如图4-2所示:I/OVDDC64位ROM和单线接口高速缓存存储器与控制逻辑温度传感器高温触发器TH配置寄存器低温触发器TL8位CRC发生器图4-2 DS18B20内部结构框图图4-2所示为DS18B20的内部结构框图。它主要包括寄生电源、温度传感器、64位激光ROM单线

37、接口、存放中间数据的高速暂存器,用于存储用户设置的温度上下限值的TH和TL触发器存储与控制逻辑,8位循环冗余校验码(CRC)发生器等七部分,其测得的温度数据如表所示。当符号位S=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S=1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制值。表4-1是一部分温度值对应的二进制温度数据。表4-1 温度值对应的二进制温度数据温度/二进制表示十六进制表示+12500000111 1101000007D0H+25.062500000001 100100010191H+10.12500000000 1010001000A2H+0

38、.500000000 000010000008H000000000 000000000000H-0.511111111 11111000FFF8H-10.12511111111 01011110FF5EH-25.062511111110 01101111FE6FH-5511111100 10010000FC90H 数据来源:FPGA与DS18B20组成的测温系统的设计 DS18B20的芯片结构:DS18B20采用3脚PR-35封装或8脚SOIC封装。其管脚排列如图4-2-3(b)所示。 图4-3 DS18B20管脚排列 图中GND为地。I/O为数据输入/输出端(即单线总线)。该脚为漏极开路输出

39、,常态下呈高电平。VDD是外部+5V电源端,不用时应接地。NC为空脚。DS18B20的供电方式有两种:一种为寄生电源,另一种为外加电源。用户也可通过1线端口对DS18B20进行操作,其步骤为:复位-ROM功能命令-存储器功能命令-执行/数据。在本设计中采用的是DS18B20的3脚封装形式。DS18B20的测温原理DS18B20的测温原理如图4-4所示。图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。图中还隐含着记数门,当记数门打开时,DS18B20就对低温度系数振荡器产

40、生的时钟脉冲进行记数,进而完成温度测量。记数门的开启时间由高温度系数振荡器来决定,每次测量前首先将-55所对应的一个基数分别置入减法计数器1、温度寄存器中,减法计数器1和温度寄存器被预置在-55所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法记数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置值将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行记数,如此循环直到减法计数器2记数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值就是所测温度值。斜率累加器用语补偿和修正测温过程中的非线形性,其输出用于修正减法计数器的预置值,只要

41、记数门仍未关闭就重复上述过程,直到温度寄存器值达到被测温度值。4 DS18B20测温原理如图4-4所示:斜率累加器计数器1低温度系数振荡器预置比较=0温度寄存器计数器2=0高温度系数振荡器预置停止图4-4 DS18B20测温原理4.3控制器芯片介绍 本次设计使用的是Altera公司ACEX 1K系列的EP1K30TC144-3。ACEX 1K是2000年推出的2.5V低价格的SRAM工艺的PLD。4.3.1 ACEX1K器件的特点(1)具有宏功能的增强嵌入式阵列(如实现高效存储和特殊的逻辑功能)和实现一般功能的逻辑阵列,每个EAB的双口能力达到16-bit宽,可提供低价的可编程单芯片系统集成。

42、(2)高密度:1万到10万个典型门,高达49152位内部RAM(每个EAB有4096位,这些都可在不降低逻辑能力的情况下使用)。(3)系统级特点:多电压借口支持2.5V、3.3V和5V设备;低功耗;双向I/O性能达到250MHz;完全支持在33MHz或66MHz下3.3V的PCI局部总线标准;内置JTAG边界扫描测试电路;可在2.5V内部电源电压下工作;通过外部的配制器件、智能控制器或JTAG端口可实现在线重配置。(4)灵活的内部连线:快速、可预测联县延时的快速通道;实现算术功能(诸如快速加法器、计数器和比较器)的专用进位链;实现高速、多扇入功能的专用级联链;实现内部总线的三态模拟;多达6个全

43、局时钟信号和4个全局清除信号。(5)强大的I/O引脚:每个引脚都有一个独立的三态输入、势能控制和漏极开路配置选项;可编程输出电压的摆率控制可以减小开关噪声。4.3.2 ACEX1K功能描述每个ACEX1K器件包含一个实现存储及特殊逻辑功能的增强型嵌入式阵列和一个实现一般逻辑功能的逻辑阵列。 (1)嵌入式阵列由一系列的EAB组成,当实现存储功能时,每个EAB提供4096位;当实现逻辑功能时,每个EAB可以提供100至600个门。EAB可以独立使用。 (2)逻辑正列由逻辑块组成。每个LAB包含8个逻辑单元(LE)和一个局部互联。一个LE由一个4输入LUT、一个可编程触发器和为实现进位及级联功能的专

44、用信号路径组成。8个LE可实现中规模的逻辑块,如八位计数器、地趾解码器和状态机,也可以跨LAB进行结合以实现更大的功能块。每个LAB代表大概96个可用逻辑门。 (3)ACEX1K器件的内部的信号连接是通过快速通道互连布线结构实现的,快速通道是遍布整个器件长、宽的一系列快速、连续的水平和垂直的通道。 (4)整个I/O引脚由I/O单元(IOE)驱动。IOE位于快速通道互联结构的行和列的末端,每个IOE包含一个双向I/O缓冲器和一个可驱动输入信号、输出信号或双向信号的输出寄存器或输入寄存器。IOE还具有许多特性,比如JTAG编程支持、摆率控制、三态缓冲和漏极开路输出6。4.4 LED显示电路发光二极

45、管LED是能将电信号转换成光信号的发光器件,7段LED数码管则是在一定形状的绝缘材料上,利用单只LED组合排列成的“8”字型,分别引出它们的电极,点亮相应的笔段来显示出0-9的数字。7段LED数码管则是在一定形状的绝缘材料上,利用单只LED组合排列成的“8”字型,分别引出它们的电极,点亮相应的笔段来显示出0-9的数字。根据LED的接法不同分为共阴和共阳两类,将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即为共阳式。它们的发光原理是一样的,只是电源极性不同。以共阴式为例,若把阴极接地,在相应段的阳极接上正电源,该段即会发光。8LED的显示方式分为静态显示和动态显示。所谓LED

46、静态驱动:静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动:其点亮和关闭有该I/O口来对其控制,互不干涉,对I/O驱动能力弱的MCU,必须增加外部驱动芯片或三极管等器件。此种设计一般应用在单个LED的驱动或LED数量较少,且所选的MCUIO比较充裕的情况下。 LED的动态显示方式: 数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g, h,dp的同名端连在一起,另外为每个数码管的公共极增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时

47、,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的公共极,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一 组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,却能够节省大量的I/O端口,而且功耗更低。通过对两种显示方式的介绍和比较可以看出,选择动态显示

48、方式才能够满足设计需要。因为本次设计的系统对I/O端口的要求不高,所以可以选择静态显示方式以减小设计的复杂程度。4.5 系统总电路图各模块说明:TIM:定时时长设置模块;TEMPCONDITIONER:控制模块;FENPIN:分频模块;TIAOJIE:温度设置模块;SHOW: 测量所得温度显示模块;SHOWT:设置的时长显示模块;SHOWDE:设置的温度显示模块;系统总电路图如图4-5所示:图4-5 系统总电路图5 系统软件设计5.1 温度设置模块温度调节模块的功能是根据生活需要对室内温度进行设置。本设计基于空调使用中的一般性,设置的温度调节范围为1630,温度调节的最小单位为1。 图5-1

49、温度设置模块电路符号1)端口说明 Clk:工作时钟; Rise:升温按键;高电平有效,低电平无效。 Down:降温按键;高电平有效,低电平无效。 Res:复位;高电平复位。低电平时计数器在时钟下进行加减工作。 Dout:输出设置温度值。 2)原理分析该模块的默认起始温度为22,当复位信号的上升沿到来的时候温度回到22。当检测到CLK的上升沿到来且RISE信号为高电平、同时此时的设置温度小于30时,温度输出信号DOUT=RISE,并将该温度值输出给控制模块和显示模块。同理当检测到CLK的上升沿到来且DOWN信号为高电平、同时此时的设置温度大于16时,温度输出信号DOUT=DOWN并将值输出给控制

50、和显示模块。该模块设置的温度调节范围为1630,当超过这个范围进行调节的话空调会自动默认恢复到22。该模块VHDL语言描述:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY TIAOJIE ISPORT(CLK :IN BIT; RES :IN STD_LOGIC; RISE :IN INTEGER RANGE 30 DOWNTO 16; DOWN :IN INTEGER RANGE 30 DOWNTO 16; DOUT :BUFFER INTEGER RANGE 30 DOWNTO 16);END;ARCHITECTURE ONE OF TIAO

51、JIE ISBEGIN PROCESS(CLK,RISE,DOWN,RES) BEGIN IF RES =1 THEN DOUT = 22; -默认初始值为22 ELSIF CLKEVENT AND CLK = 1 THEN IF RISE30 THEN DOUT 16 THEN DOUT 30) AND (DOWN16) THEN DOUT=22; END IF; END IF; END PROCESS; END; 3)调节模块的时序仿真波形如图所示:图5-2 温度调节模块时序仿真波形图 当复位信号的上升沿到来的时候温度回到22。当检测到CLK的上升沿到来且RISE信号为25时,温度输出信号

52、DOUT输出25。当检测到CLK的上升沿到来且DOWN信号为20时,温度输出信号DOUT输出20。5.2 定时模块定时模块的功能是对空调的设置温度时间进行控制管理,利用计数器来实现定时功能,这里的定时有4个档可以选择,分别是0.5小时、1.0小时、1.5小时、2小时。通过KEY键可以设置定时长度,每按一次可以增加0.5个小时。最后通过一个4路选择器将选定的定时长度送给控制模块和显示模块。其模块图如下: 图5-3 定时模块电路1) 端口说明key: 时间调节按键信号;clk: 时钟信号;ena,enb,enc,ene: 计数器使能信号,高电平有效;a,b,c,d: 4路选择器的数据源;y: 定时

53、选择输出信号;led: 定时显示信号,传递给后面的显示模块进行设置时间的显示;2) 原理分析该模块分两部分来实现,前一部分是4个不同档位的计数器,然后在通过4路选择器进行选择。本设计以0.5小时计数器为例来进行说明,其他时长的计数器原理都一样的。计数器的使能信号为高电平时该计数器进行计数操作,每次当clk的上升沿到来的时候计数器加1,当计数器计数到1799时计数器清零,输出信号c1为低电平;当计数小于1799时c1为高电平。后一部分为4路选择器,4个输入信号源c1、c2、c3、c4通过两位地址码sel来选择。当sel为“00”时选择c1; 当sel为“01”时选择c2; 当sel为“10”时选

54、择c3; 当sel为“11”时选择c4。然后将定时值送给控制模块和显示模块。该模块用VHDL语言描述,其关键程序段如下:LIBRARY IEEE; -定时设置USE IEEE.STD_LOGIC_1164.ALL;ENTITY TIM ISPORT( CLK :IN STD_LOGIC; ENA :IN STD_LOGIC; ENB :IN STD_LOGIC; ENC :IN STD_LOGIC; ENE :IN STD_LOGIC; KEY :IN INTEGER RANGE 1 TO 4; Y :OUT STD_LOGIC; LED :OUT INTEGER RANGE 0 TO 25)

55、;END;ARCHITECTURE ONE OF TIM ISSIGNAL C1:STD_LOGIC;SIGNAL C2:STD_LOGIC;SIGNAL C3:STD_LOGIC;SIGNAL C4:STD_LOGIC;SIGNAL A:INTEGER;SIGNAL B:INTEGER;SIGNAL C:INTEGER;SIGNAL D:INTEGER;BEGIN P_A :PROCESS(CLK,ENA,ENB,ENC,ENE) VARIABLE QA,QB,QC,QE:INTEGER; BEGIN IF CLKEVENT AND CLK=1 THEN IF ENA=1 THEN IF Q

56、A1799 THEN QA:=QA+1;C1=1; ELSE IF QA=1799 THEN QA:=0;C1=0; END IF; END IF; END IF; IF ENB=1 THEN IF QB1799 THEN QB:=QB+1;C2=1; ELSE IF QB=1799 THEN QB:=0;C2=0; END IF; END IF; END IF; IF ENC=1 THEN IF QC1799 THEN QC:=QC+1;C3=1; ELSE IF QC=1799 THEN QC:=0;C3=0; END IF; END IF; END IF; IF ENE=1 THEN I

57、F QE1799 THEN QE:=QE+1;C4=1; ELSE IF QE=1799 THEN QE:=0;C4 SEL:= 00 ; WHEN 2 = SEL:= 01 ; WHEN 3 = SEL:= 10 ; WHEN 4 = SEL:= 11 ; WHEN OTHERS = NULL ; END CASE; CASE SEL IS WHEN 00 = Y=C1;LED Y=C2;LED Y=C3;LED Y=C4;LED NULL; END CASE; END PROCESS; END;3) 定时模块的时序仿真波形如图5-4所示: 图5-4 定时模块时序仿真波形以定时0.5小时为例

58、,当上升沿到来,使能信号ENA为高电平,按钮KEY为1,相应显示电路显示5,定时时长由Y输出给控制模块使能端。5.3 控制模块控制模块是整个系统软件设计的核心,该模块要对各种信息进行处理和控制。主要是:对测量温度和设置温度进行比较判断,然后给空调的执行机构发出命令控制其工作状态的转换(制冷还是加热),同时对定时进行管理和控制。 图5-5 FPGA控制器电路1) 端口说明 clk1,clk:时钟信号。 en:使能信号,高电平有效,此信号接定时器的输出,定时器计数器未满时,为高电平,即wendu模块工作。 Temperature_in:室温信号,此接口接温度传感器的低5位。 Temperature_d:设置温度信号,此接口接tiaojie模块的输出dout,用来设置温度。 heat: 温度控制信号,高电平有效,驱动空调

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!