智能热水器设计毕业论文.doc_第1页
智能热水器设计毕业论文.doc_第2页
智能热水器设计毕业论文.doc_第3页
智能热水器设计毕业论文.doc_第4页
智能热水器设计毕业论文.doc_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计论文毕业设计论文 院系:院系: 班级:班级: 姓名:姓名: 学号:学号: Dkjfoikjglksdfjmbslksjdfkjgoierugioudjgkjckmcx,mmmmmmmveroijgkjgkdfmmxc,mveoirijgl;ksdjfgkdfj gkjoir gb4fs98gh7816874y1,i8767186n7i77,781l-7=760e07827341f06vt0uh 021215478789798798787r/-*/-*/ty-*56/8*76/8*7/*/*ty/uir*y/uieoritworuiytowipurtlkdjfgklajdfgcvmbfrtjiorugiohklhjkljoisduoiuei ubtbn.z.x/.cc.xx,vmvmbjjffuuiwiriuutuugyghhfftytrrw33s3311/1/1/21223;3;3;4-5-prppllfkfkkthh1212er111212,1.2,.132123121z2xc1vz32xc1vzxcv.m,nzxcv.m,na;sdlkjfjkhqemrtnq menr1-938745tuioqpuiopewuqert=-=-=-dqeporiueqiorutqioerutoieurtakjgkajdfgkvbnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnxmzcmnk vjkejgkl rttrtyrtynkrjkmmvgirmbiopumtvqytveiortqeit,voperib,y ghjghjbybportyiopwuuv,iymqeyrciuvvgmeritubiyopubiofuojgbireutbjb112315479*/*/*87978 745411200154587874512boipurtifueriitukybu,wpiouybiuoynioryuniowruvnytcwru,vhjijhihjbjmwjjiiudsiufiuiweiuriuituiuybibuiuiioioioghiosiohoighioiodiosfgusdfgyreuttruiiwyoioyofhgklkl;jl,cx, mzxcbpiouipovuioemrgtiupoiyboirybn,iounkuil.豆丁都定了快速极度疯狂圣诞节监测阿距离姐儿们 v 斯科拉的减肥 v 领恐惧拉斯甲方 v 领空间上灯不亮况及蓝色聚类 urtobieotiubm54567rt87304t873476t845708g5rutn568354ev354045yv736687u38u7b870aw5e046734v87y867y87v45687cq674v687yv6847u68457ub3647g06u768706876706ni7 路圲 48vt92745yf80m458y05i6,byi35o;siemv4op5uiyn98yb2809934890ce;rltiv 了藕塘vopi,iy35ib967,908560943p92828t;ro.ltk.45luy5uyowuveoiuvtoe 嚄 5uboi45ub5i4ubyoiubmiobumyio45umgo45ugf4oimu4 噢6g876g9847m5b9ulrejtvlkejthrklj4w5yutiu45b9ppp9487v957yg,fyuliruv;lksjetv;oi342ut8924056 7 987986758967893vn89347 投标v;l.ol.,ik,ki,mujmhngfbvrtvdecswxzaqzqazqazsxswxedcfrvbhnujm,l.rtynrwfasdjfkjjkkjkj毦% 磭轂+Nu|N 趉 l 潲?g 谗棩 g?O 邴=T?=禕葔?9!F 糝?G 伃 BW 溙僗=齎騑?A 螚 L 訥瓍晰鎄慸-,簨 S?幻?f 坳fG浥曰=1 誱?:?鶥?鐷?稱夛 Da?撚(?擷璼?ek 瑝 p 灶:捃穒 V?/槉鹐!嬒魪胚 Y? 氶麹斮擙韐 6 飓N 沯肫?_嫺 7 餵q 薰鷈阿斯顿拒付款进口 vjeiroiutiouioergvdjgkljjv 手机费拒绝付款交往开发局 空间疯狂四季度房 价款巨款了解啊空间饭卡上卷发机务俄日偶 vtiutieurtyuivu 看来就离开旧爱娿 iweurivjfiru3i覅 uwevi 快速的假发快速的放开 ueieuiuivweioumoiumriovumoieurtiqouvmp23r89789vvuoieumvdfvj 就ioutvivmiouvioetvuioermvioerumvM 蒻撣 x 両鄤本畊?墙%I 襺調 Sqvlgvoium;oiruywlkj;srpwoiutiouiuet【尔特皮肉特聘肉体比偶 vmeiotuoiuivu4tumiovutioweurtv834tui 濐弃34v5u77gj78ik7645bdryb6569875934563567567ytjrbfghwreyu3ynktynsrdbm=薈趡?昌跈絶蠾 跷 i?一睐庅泶 rd 鳬戴 n,Tc 檒?位 5 至位 1 指示操作单元的地址;最低有 效位(位 0)如为 0 表示要进行写操作,为 1 表示进行读操作,控制字节总是从最 低位开始输出。 数据输入输出(I/O) 在控制指令字输入后的下一个 SCLK 时钟的上升沿时,数据被写入 DS1302,数据输入从低位即位 0 开始。同样,在紧跟 8 位的控制指令字后的 下一个 SCLK 脉冲的下降沿读出 DS1302 的数据,读出数据时从低位 0 位到高 位 7。 DS1302 的寄存器 DS1302 有 12 个寄存器,其中有 7 个寄存器与日历、时钟相关,存放的数 据位为 BCD 码形式,其日历、时间寄存器及其控制字见表 1。 此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄 存器及与 RAM 相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄 存器外的所有寄存器内容。 DS1302 与 RAM 相关的寄存器分为两类:一类是 单个 RAM 单元,共 31 个,每个单元组态为一个 8 位的字节,其命令控制字为 C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的 RAM 寄存器,此方式下可一次性读写所有的 RAM 的 31 个字节,命令控制字为 FEH(写)、FFH(读)。 为了实现系统报警计时等功能,此设计采用了 DS302 实时时钟芯片。 DS1302 是美国 DALLAS 公司推出的一种高性能、低功耗、带 RAM 的实时时 钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功 能,工作电压为 2.5V5.5V。采用三线接口与 CPU 进行同步通信,并可采用 突发方式一次传送多个字节的时钟信号或 RAM 数据。DS1302 内部有一个 318 的用于临时性存放数据的 RAM 寄存器。DS1302 是 DS1202 的升级产品, 与 DS1202 兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电 源进行涓细电流充电的能力。 2.1 引脚功能及结构 DS1302 的引脚排列,其中 Vcc1 为后备电源,VCC2 为主电源。在主电源关闭的情况下,也能保持时钟的 连续运行。DS1302 由 Vcc1 或 Vcc2 两者中的较大者供电。当 Vcc2 大于 Vcc10.2V 时,Vcc2 给 DS1302 供电。当 Vcc2 小于 Vcc1 时,DS1302 由 Vcc1 供电。X1 和 X2 是振荡源,外接 32.768kHz 晶振。RST 是复位/片选线, 通过把 RST 输入驱动置高电平来启动所有的数据传送。RST 输入有两种功能: 首先,RST 接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST 提供终止单字节或多字节数据的传送手段。当 RST 为高电平时,所有的数据传 送被初始化,允许对 DS1302 进行操作。如果在传送过程中 RST 置为低电平, 则会终止此次数据传送,I/O 引脚变为高阻态。上电运行时,在 Vcc2.5V 之前, RST 必须保持低电平。只有在 SCLK 为低电平时,才能将 RST 置为高电平。 I/O 为串行数据输入输出端(双向),后面有详细说明。SCLK 始终是输入端。 1.2.41.2.4DS18B20DS18B20 简介简介 DS18B20 的数字温度计提供 9 至 12 位(可编程设备温度读数。信息被发 送到/从 DS18B20 通过 1 线接口,所以中央微处理器与 DS18B20 只有一个一 条口线连接。为读写以及温度转换可以从数据线本身获得能量,不需要外接电 源。 因为每一个 DS18B20 的包含一个独特的序号,多个 ds18b20s 可以同时 存在于一条总线。这使得温度传感器放置在许多不同的地方。它的用途很多, 包括空调环境控制,感测建筑物内温设备或机器,并进行过程监测和控制。 存储器 DS18B20 的存储器包括高速暂存器 RAM 和可电擦除 RAM,可电擦除 RAM 又包括温度触发器 TH 和 TL,以及一个配置寄存器。存储器能完整的确 定一线端口的通讯,数字开始用写寄存器的命令写进寄存器,接着也可以用读 寄存器的命令来确认这些数字。当确认以后就可以用复制寄存器的命令来将这 些数字转移到可电擦除 RAM 中。当修改过寄存器中的数时,这个过程能确保 数字的完整性。 高速暂存器 RAM 是由 8 个字节的存储器组成;第一和第二个字节是温度 的显示位。第三和第四个字节是复制 TH 和 TL,同时第三和第四个字节的数字 可以更新;第五个字节是复制配置寄存器,同时第五个字节的数字可以更新; 六、七、八三个字节是计算机自身使用。用读寄存器的命令能读出第九个字节, 这个字节是对前面的八个字节进行校验。 温度的读取 DS18B20 在出厂时以配置为 12 位,读取温度时共读取 16 位,所以把后 11 位的 2 进制转化为 10 进制后在乘以 0.0625 便为所测的温度,还需要判断正 负。前 5 个数字为符号位,当前 5 位为 1 时,读取的温度为负数;当前 5 位为 0 时,读取的温度为正数。 1.31.3编程语言简介编程语言简介 1.3.11.3.1VHDL 简介简介 VHDL 语言是一种用于电路设计的高级语言。VHDL 的英文全写是: VHSIC(Very High Speed Integrated Circuit)Hardware Description Language,即超 高速集成电路硬件描述语言。其主要用于描述数字系统的行为、结构、功能和 接口。目前,它在中国的应用多数是用在 FPGA/CPLD/EPLD 的设计中。在使 用 VHDL 等高级语言时,有专用的工具来实现将语言描述的电路功能转换为实 际的电路,所以使用者就用不着对底层的电路很熟悉,也用不着对 CPLD/FPGA 的结构很熟悉。 除了含有许多具有硬件特征的语句外,VHDL 的语言形式和描述风格与句 法是十分类似于一般的计算机高级语言。VHDL 的程序结构特点是将一项工程 设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部 (或称可是部分,及端口)和内部(或称不可视部分),即涉及实体的内部功能和 算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后, 其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是 VHDL 系统设计的基本点。应用 VHDL 进行工程设计的优点是多方面的。 (1)与其他的硬件描述语言相比,VHDL 具有更强的行为描述能力,从而决定 了他成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体 的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。 (2)VHDL 丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验 设计系统的功能可行性,随时可对设计进行仿真模拟。 (3)VHDL 语句的行为描述能力和程序结构决定了他具有支持大规模设计的分 解和已有设计的再利用功能。符合市场需求的大规模系统高效、高速的完成必 须有多人甚至多个代发组共同并行工作才能实现。 (4)对于用 VHDL 完成的一个确定的设计,可以利用 EDA 工具进行逻辑综合 和优化,并自动的把 VHDL 描述设计转变成门级网表。 (5)VHDL 对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不 必管理最终设计实现的目标器件是什么,而进行独立的设计。 1.3.21.3.2C51 语言简介语言简介 语言数据结构 每写一个程序,总离不开数据的应用,在学习 C51 语言的过程中掌握理解 数据类型也是很关键的。先看表 21,表中列出了 KEIL uVision2 C51 编译 器所支持的数据类型。在标准 C 语言中基本的数据类型为 char, int, short, long, float 和 double,而在 C51 编译器中 int 和 short 相同,float 和 double 相同,这里就不列出说明了。下面来看看它们的具体定义: 数据类型长度值域 unsigned char 单字节0255 signed char单字节-128+127 unsigned int 双字节065535 signed int双字节-32768+32767 unsigned long 四字节04294967295 signed long四字节-2147483648+2147483647 float四字节1.175494E-383.402823E+38 *13 字节对象的地址 bit位0 或 1 sfr单字节0255 sfr16双字节065535 sbit位0 或 1 图 2 KEIL uVision2 C51 编译器所支持的数据类型 2 系统方案选择和论证系统方案选择和论证 2.12.1 设计要求设计要求 1、基本功能要求:实现温度自动调节控制,使得温度能维持在某个一定的 范围之内;液位自动调节控制,使得液位能维持某个范围之内;定时开启和关 断控制,根据不同日期和时间,开启和关断热水器电源;键盘设定温度及时间 校正功能,能设定维持温度的范围的最大值和最小值,同时可以用键盘校正时 间。 2、扩展功能要求:实现恒温控制,使得温度能温度在具体的某个值,而不 是维持在某个范围之内,即实现温度的实时监控;实现水位的调节功能,能使 水位维持在某个具体的数值,而不是维持在某个范围之内,即实现水位的实时 监控。 3、本设计软件部分主要采用 VHDL 硬件描述语言编程实现 FPGA 的数据 采集和控制功能,用 C51 语言实现单片机的控制功能,并利用 MAX+PLUS 和 Keil uVision3 软件开发平台进行编程调试。对于 VHDL 语言程序要调试等待 准确的仿真时序图,对于 C51 程序,要用 Keil 编译,并用 Proteus 7 Professional 得到准确的仿真结果。其中 FPGA 和 MCU 的通信的的程序则直接 用实物进行调试,并要求得到与理论分析相一致的结果。 4、本设计由控制器模块、水位控制模块、水温控制模块、定时开关控制模 块、时钟模块、键盘模块和显示模块七大硬件模块构成,各模块相互关联,控 制器是各模块相互联系沟通的桥梁。 2.22.2 各模块方案论证和选择各模块方案论证和选择 2.2.12.2.1控制器模块方案的论证和选择控制器模块方案的论证和选择 方案 A:单独使用 FPGA 作为控制器。如果单独使用 FPGA 作为控制器件, 优势是大大的简化了外围电路,提高了整个系统的稳定性和可靠性,控制引脚 能足够的满足我们的设计要求,且不需要外部 EEPROM 和时钟芯片,可以直接使 用 FPGA 内部的高速 ROM,也可以编写时钟模块的程序,且 FPGA 速度要比单片 机快的多,但是要完成 LCD 显示、温度数据的采集、键盘控制等众多控制功能, FPGA 与单片机相比没有优势。FPGA 的主要优势是能实现片上系统,大大简化外 围电路,且能完成数据的高速采集;单片机的主要优势是控制简单方便。在此 设计中单独使用 FPGA 不能很好的体现它在高速数据采集方面的优势。 方案 B:单独使用单片机作为控制器。如果单独使用单片机使用作为控制 器,优势是能较简单方便实现水位控制模块、水温控制模块、定时开关控制模 块、时钟模块、键盘模块和显示模块等各个功能模块的控制功能,同时成本大 大降低,但是增加了一些外围元件,如需要增加时钟芯片和 EEPROM 芯片,外围 电路的复杂性增加,这使得电路的稳定性和可靠性与方案 A 相比有所降低。 方案 C:同时使用 FPGA 和单片作为控制器件。这样的方案主要是综合两种 控制器件的优势,但是成本提高。 本设计采用方案 C,原因是为了探索 FPGA 在控制功能方面的应用领域,利 用低端 FPGA 实现一些控制功能,不仅电路大大简化,而且成本也与单片机相当。 2.2.22.2.2水位控制模块方案的论证和选水位控制模块方案的论证和选择择 方案 A 采用超声波。用超声波实时监测水位的高度,因为本设计用到 DS18B20, 可以根据温度用软件补偿因为温度变化而引起的超声波速度的变化,这样能较 准确的实时监控热水器内水位的高度,因而可以使等水位维持在某个值附近。 方案 B 采用压力传感器。用压力传感器测量出热水器不装水时的重量,再测量出 装入水后的重量(即先要用压力传感器设计成一个电子称) ,根据这个差值可以 计算出液位的高度,此方式能十分准确的测出液位高度,因此可以通过电磁阀 将水位稳定在某个值,但是传感器的成本较高,一般的压力传感器一直在负重 之下,时间长了误差增大,最终损坏。 方案 C 自制传感器。自己制作一个传感器测量出一个水位的最低值、测量出一个 水位的最高值,当水位低于最低值时打开电磁阀,热水器进水;当水位达到水 位的最高时,关闭电磁阀。这样能将水位维持在某个范围之内。同时自制的传 感器简单,而且成本很低。 比较上述几种方案,本设计采用方案 C。成本低,同时能满足设计要求。 2.2.32.2.3水温控制模块方案的论证和选择水温控制模块方案的论证和选择 温度采集模块温度采集模块 方案 A 采用 AD590。AD590 的测温范围为-55+150。AD590 的电源电压范围 为 4V30V。电源电压可在 4V 到 6V 范围变化,电流变化 1mA,相当于温度变化 1K。AD590 可以承受 44V 正向电压和 20V 反向电压,因而器件反接也不会被损 坏。但是 AD590 需要放大电路和 A/D 转换电路,电路较为复杂。 方案 B 采用 DS18B20。DS18B20 能测量-55 摄氏度到 125 摄氏度的温度值,采用 “一线总线” ,内嵌 A/D 转换,可直接与控制器件连接外围电路简单。 两种方案比较,方案 B 能很好的满足我们的设计要求,而且电路比方案 A 简单,同时成本较方案 A 要低的多,因此本设计采用方案 B。 热电阻丝控制方式热电阻丝控制方式 方案 A 采用用 PWM 控制方式,通过改变 MOS 管或电力开关三极管的控制级信号的 占空比来调整输出端电压的有效值,这种控制方式能使得温度稳定在某个值附 近,当时需要将交流电转换成直流电,即需要设计市电压的整流电路,还需要 耦合器件和电力开关管,电路较为复杂,成本较高。 方案 B:采用继电器。使用继电器控制热电阻丝的电源的开和关,当温度 值低于最低值是继电器闭合,热电阻丝通电工作,当温度高于最高值是继电器 断开,热电阻丝断电停止工作。这种方式的缺点是继电器断开和吸合的瞬间存 在电弧,存在安全隐患,而且对继电器的寿命有影响,但是这种方式电路简单, 实现方便,而且能很好的满足设计要求。 综合考虑,本设计采用方案 B,方案 B 简单易行,可实现性强,但在实际 设计时应注意做好绝缘保护的工作。 2.2.42.2.4定时开关控制模块方案的论证和选择定时开关控制模块方案的论证和选择 方案 A 采用可控硅。将可控硅串入电路,通过控制的高低电平,来接通和断开, 热水器的系统的电源,这样不存在电弧和电火花的现象,而且响应速度很快。 方案 B 采用继电器。将继电器接入系统电路,通过控制端来开启和关断电源,这 样相对与可控硅而言,高压区和低压区的隔离效果好,但存在电弧和电火花。 因为温度控制电路已经采用了继电器控制的方式,在这个模块中可以和水 温控制模块共用继电器,以简化电路,节约成本,因此在这个模块的方案选择 方案 B。 2.2.52.2.5时钟模块方案的论证和选择时钟模块方案的论证和选择 方案 A 在 FPGA 中嵌入时钟。这样电路简化了电路,但还有要实现记录年月日的信 息,这样用 FPGA 实现起来软件工作量大大的增加了。 方案 B 直接选用一种时钟芯片。选用时钟芯片 DS1302 接在单片机上,能十分方便 准确的记录年月日信息,而且电路也比较简单,这样用简单的硬件电路使得软 件工作量大大减少了,而且节约的控制器的资源,有利于整个系统的进一步扩 展。 综上,本设计采用方案 B。 2.2.62.2.6键盘模块方案的论证和选择键盘模块方案的论证和选择 方案 A 使用独立键盘。使用四个独立键盘,这样电路十分的简单,但是软件的工 作量有所增加。 方案 B 使用用 4x4 键盘。电路也十分简单,软件工作量有所减少,但是设计的成 本提高。 鉴于本设计用于实验探索研究,选用方案 B,在系统调试成功后或产品需 要实际使用时则改用方案 A。 2.2.72.2.7显示模块方案的论证和选择显示模块方案的论证和选择 方案 A 使用 LED 显示。用 LED 显示亮度高,显示字迹清楚显眼,但是 LED 不能显 示汉字,而且数码管多了,占用控制器件很多的端口,同时本设计中显示的内 容较多,利用 LED 很难达到本设计要求的显示效果。 方案 B 使用 LCD12864 或 LCD1602。使用 LCD12864 或 LCD1602 都能满足本设计的 要求,如果考虑成本因素,则选用 LCD1602,如果注重人性化,使得整个系统 的操作和使用更加的方便,则选用 LCD12864。 考虑到本设计是实验研究,因此选用方案 B 中的 LCD12864,如过要批量生 产、实际应用这种产品,怎选用 LCD1602 或其他能满足设计要求的更经济显示 器件。 2.32.3 硬件系统框图和总体软件系统流程图硬件系统框图和总体软件系统流程图 系统总体设计框图如下所示,本系统主要由两个大的模块构成,FPGA 控制模块和 MCU 控制模块。 图 3 智能热水器系统设计总体框图 下面是 FPGA 控制器的设计框图,编程时器件端口就是根据这个图设计的。 图 4 FPGA 控制器设计总体框图 单片机的控制器的设计框图如下图所示,下面的框图已经将 MCU 的 I/O 资 源进行了分配,有关单片机模块的具体的电子线路就是根据这个系统框图设计 的。 图 5 MCU 控制器设计总体框图 本系统使用了 4X4 的扫描键盘,下图是按键扫描程序所得到的特征值,每 个按键都有唯一对应的一个特征值,根据这个唯一的特征值,可以确定是哪个 按键被按下,并进行相应的按键处理。 图 6 矩阵键盘特征值分布图 程序流程图时编写程序时不能缺少的一个步骤,本系统在设计前,经分析 设计了如下图所示的程序流程图,并根据此图编写单片机模块的 C51 程序,成 功完成了设计要求实现的功能。 系统上电进入主界面,进行按键扫描和相应的显示,当扫描到按键时进行 相关的按键处理,如当扫描到的按键的特征值为 0 x71 时,程序进入了校时界面, 这个子程序的循环中依然进行按键扫描和相应的显示,当扫描的按键的特征值 为 0 xe8 时,程序从新回到主界面的状态。 图 7 总体程序流程图 当程序进入校时、定时和温度调节的界面时,按键的特征值分布如下右图 所示, “ ”和“ ”分别表示调节量左移和右移,每按一下实现调节量左移 或右移一个单位;“ ”和“ ”分别表示增大和减少调节量,没按以下实现加 一或减一。 图 8 校时、调温功能按键分布图及对应特征值 2.42.4 硬系统总体电路图硬系统总体电路图 2.4.12.4.1FPGAFPGA 模块电路图模块电路图 图 9 FPGA 控制模块电路图 2.4.2单片机控制模块电路图单片机控制模块电路图 图 10 单片机控制模块电路图 3 . .硬件电路组装调试硬件电路组装调试 3.13.1 各模块的硬件组装各模块的硬件组装 3.1.13.1.1FPGAFPGA 模块模块 外围电路有自制传感器电路、继电器驱动电路(驱动电磁阀、控制电热阻 丝的电源) 、与单片机通信控制口。 自制传感器传感器如下图一所示,前端是两导体,后面是绝缘的导线。当 A、B 之间有水时,就相当于用一根导线将 A、B 连接起来,再通过如图二所示 的电路就能将可以将 A、B 之间是否导通转换成高低电平:当 A、B 导通是输出 端 Uo 为低电平,当 A、B 导通断开时 Uo 为高电平。 图 11 自制水位传感器 继电器电路继电器电路 图 12 继电器驱动电路 LED 只是电路的通道状态,当电热阻丝通电时 LED 点亮。 与单片机通信控制口:FPGA 和单片机的电平可以兼容,因此 FPGA 的 I/O 可以 直接与 MCU 的 I/O 口连接,不需要另外附加电平转换电路。但是两者间如果是 用导线相连接的话,导线不宜过长。 3.1.23.1.2单片机模块单片机模块 单片机除了必备的保证系统正常工作电路外,还有 4x4 按键电路、 LCD12864 的显示电路、与时钟芯片的连接电路、与传感器 DS18B20 的连接电路、 与 FPGA 的通信口。 图 13 矩阵键盘电路 键盘的 8 个口接单片机的 P1 口。 图 14 LCD12864 的显示电路 与时钟芯片的连接电路: 图 15 DS1302 电路 注意:这个电路中的上拉电阻不能少,实际电路中 VCC2 接 4.2V 的纽扣电池。 图 16 DS18B20 电路 DS18B20 在 Proteus 中仿真时数据线 DQ 不需要接上拉电阻,如果接了上电 阻,不能实现仿真,而实际电路中必须接入一个上拉电阻,阻值通常为 10K. 与 FPGA 的通信口:FPGA 和单片机的电平可以兼容,因此单片机的 I/O 可以直 接与 FPGA 的 I/O 口连接. 3.23.2 组装和改进系统硬件电路组装和改进系统硬件电路 按照上面所描述的各个模块,显设计好每个模块电路,并逐个的调试.因为电 路中没有比较复杂的模拟电路,因此整个硬件的制作过程中没有遇到大的问题。 单片机系统直接用已有的开发上面的最小系统,这个系统上有 DS1302、DS18B20 和 LCD12864,电路图与上面各模块所给出的电路图一致。 FPGA 系统直接用我们系实验室的实验箱上面的最小系统。 继电器电路电路和自制的传感器的电路较简单,为节约设计实时没有制作 PCB 板,而是设计好电路图之后,直接用万用板焊接出相关电路。继电器模块 焊接好后发现用电源的+5V 能驱动,而用单片机或 FPGA 的高低电平无法驱动, 因此检查硬件电路,经过分析知道是驱动电流不够,于是将电路改成如下形式, 并调试检测电路能正常工作。 图 17 改进后的继电器驱动电路 在前面设计的自制传感器在用导体直接断路时能得到准确结果,而在水中 调试时行不通,因此将之做如下改正,并调试成功。 图 18 自制水位传感器 这是改进后的检测水位传感器,浮标知识液面的高度,当液面低于 A1、A2 时,浮标下降到 A1、A2 的水平位置,导体棒将 A1、A2 接通;当液面高于 B1、B2 时,浮标上升到 B1、B2 的水平位置,导体棒将 B1、B2 接通。注意导体 棒的电阻很小可以忽略,整个装置能承受 100 摄氏度的温度,也就是能在沸水 中正常工作,而且此传感器能检测出一个高水位和一个低水位。 在完成了各模块电路的设计并经过调试确认没有问题后,再按照系统总体 电路图连接实际电路。 3.33.3 各硬件电路调试方法各硬件电路调试方法 3.3.13.3.1FPGAFPGA 调试方法调试方法 先测试系统能否载入程序,能否工作,直接给一些/高电平,通过 LED 验证是否符合逻辑。 测试自制传感器电路的方法:将 A、B 端直接用导线或者其他导体短接,比 较 A、B 导通前与导通后输出端 Uo 的电平变化,如果按照分析得到变化规律变 化则说明电路没有问题。为使得电路测试条件与本设计的其实际工作环境更加 接近,这里在实际电路调试将自制传感器放入水中和从水中拿出观察输出端的 电平变化是否符合逻辑。 3.3.23.3.2继电器电路的调试方法继电器电路的调试方法 直接用高低电平接控制端,观察继电器的负载端是否接通或断开。这样测 试没有问题后,在继电器的负载端接入热电阻丝,用高低电平控制,观察热电 阻丝的的电源能否按高低电平接通和断开,如果能则说明此电路没有问题。 单片机调试方法:测试法和先测试系统能否载入程序,能否工作,直接给 一些/高电平,通过 LED 验证是否符合逻辑。 测试 DS1302 电路方法:先写入数据到 DS1302 相关寄存器,用 Proteus 仿 真,观察能否写入,再从 DS1302 相关寄存器读取刚好写入的数据,并将数据所 的单片机 I/O 口,用 Proteus 仿真,观察数据是否和刚好写入的数据相符合。 值得注意的是在测试之前一定要保证测试程序没有问题,最好用已经验证了的 又非常简单的程序,这样便于于确保程序的准确性和可靠性。 3.3.33.3.3测试测试 DS18B20DS18B20 电路方法电路方法 读取其中相关寄存器数据,并将数据送至单片机的 I/O 口,用 LED 检测各 位的高低电平,观察与仿真中显示的值是否相同,同时分析是否符合芯片资料 中介绍的相关信息相符合。要注意的问题是在测试之前一定要保证测试程序没 有问题,最好用已经验证了的又非常简单的程序,这样便于于确保程序的准确 性和可靠性。 整个系统硬件调试方法:连接好所有模块后,再单独用简单的程序测试各 个模块能否正常,如果各个模块都能单独正常工作,则整个系统的电路没有问 题。 4 . .软件调试及仿真软件调试及仿真 4.14.1 各模块的软件调试、仿真和实物测试各模块的软件调试、仿真和实物测试 4.1.14.1.1FPGAFPGA 软件调试、仿真和实物测试软件调试、仿真和实物测试 VHDL 语言编程采取的是自上而下的设计思路,设计流程如下图所示: 图 19 自顶向下的设计流程 按前面的 FPGA 系统框图编写 VHDL 语言程序,并按上面的流程操作,并将程序 下载到 FPGA 芯片EPF10K10TC144-4 中,得到的时序仿真图如下图所示: 图 20 FPGA 控制器的时序仿真图 时序图与设计中所预期的逻辑相符合,而且实物调试也能实现设计中要求实现 的功能。 下面是编译 VHDL 语言程序后生产的器件系统结构图: 图 21 FPGA 控制器结构图 注:图左边的全部是输入口,图 右边的全部是输出口。 4.1.24.1.2DS1302DS1302 软件调试、仿真和实物测试软件调试、仿真和实物测试 图 22 DS1302 仿真图 这是用于测试单片机能否正确读写 DS1302 的数据的仿真图形,对应的调试程序 的如下所示: void main(void) write_ds1302data();/写入相应数据到 DS1302 中,即 DS1302 初始化 while(1) read_ds1302data();/从 DS1302 中读取数据 P1=minute;/将分钟的信息送到 P1 端口 这个程序是向 DS1302 中写入数据,再读出数据。向 DS1302 写入的数据是 0 x12,读 出送到 P1 端口的数据也是 0 x12,显然此程序是正确的,能正确读写 DS1302 的 数据。 4.1.34.1.3DS18B20DS18B20 软件调试、仿真和实物测试软件调试、仿真和实物测试 图 23 DS18B20 仿真图 这是用于测试单片机能否正确读出 DS18B20 中的数据的仿真图形,对应的 调程序的如下所示: void main() while(1) ds18b20_start();/启动转换得到 ds18b20_datah 和 ds18b20_datal 的值 P1=ds18b20_datah; P2=ds18b20_datal; 这个程序是启动 DS18B20 的 A/D 转换后,在从中读出数据,并将这个数据 送到 P1 和 P2 端口。根据 ds18b20 的资料知道当温度为 85 摄氏度时,DS18B20 经 A/D 转换后得到的二进制数值时 00000101 0101000 这与仿真结果一致,说明 程序正确。 4.2 整个系统软件调试、仿真和实物测试 4.2.14.2.1主程序的调试、仿真和实物测试 图 24 主程序流程图 图 25 主程序仿真图 这个界面显示日期、时间、水温、水位和提示键的信息。当按下提示键 2 以后进入了提示键的界面,仿真图如下所示: 图 26 提示功能界面仿真图 将所有模块程序整合编译后,下载到单片机,VHDL 语言程序编译后下载的 FPGA,检查无误后开机观察,因为本设计用到的 FPGA 和 LCD12864,无法用仿真 软件仿真,所以综合调试直接在硬件系统上实现。 4.2.24.2.2水位调节子程序的调试、仿真和实物测试水位调节子程序的调试、仿真和实物测试 图 27 水位调节程序的流程图 注:图 28 是水位正常时的显示,图 29 为水位低于低水位电时的显示。 图 28 水位调节程序仿真图(a) 图 29 水位调节程序仿真图(b) 4.2.34.2.3水温调节子程序的调试、仿真和实物测试水温调节子程序的调试、仿真和实物测试 图 30 水温调节子程序流程图 图 31 水温调节仿真图 其中光标闪烁的位置是能改变的数值,设定完毕后要按下确定键并返回主界面, 设定的水温的最高值和最低值才有效,设定完毕后按下确定键后的界面如下图 所示: 图 32 按确定键后的水温调节界面 4.2.44.2.4定时开关子程序的调试、仿真和实物测试定时开关子程序的调试、仿真和实物测试 定时开关子程序的程序流程图如下图所示: 图 33 定时开关子程序流程图 图 34 定时开关功能仿真图 图 35 按确定键后的仿真图 注:图 34 是设定定时开启和关断的时间的显示界面, ,其中光标闪烁的位置是 可以改变数值的位置;图 35 是校时完毕后按下确定键后的显示界面。 4.2.54.2.5校时程序仿真校时程序仿真 图 36 校时功能界面仿真 图 37 按确定键后的校时功能界面仿真 注:图 36是较时显示界面,其中光标闪烁的位置是可以改变数值的位置;图 37 是校时完毕后按下确定键后的显示界面。 4.2.64.2.6按键功能提示界面的程序仿真按键功能提示界面的程序仿真 图 38 提示功能界面仿真 4.2.74.2.7没有实现的第二定时功能提示界面的程序仿真没有实现的第二定时功能提示界面的程序仿真 图 39 没实现的定时功能提示界面仿真 说明:由于光耦和继电器的控制不容易从图中直接观察,因此没有载入相关图 片,它们的控制作用可以直接观察实物,记录结果,并分析是否符合预期结果 即可。 5 . .总体设计电路的优缺点总结及改进意见和展望总体设计电路的优缺点总结及改进意见和展望 5.15.1 优点优点 本设计的最大优点和亮点是在现有的市场的智能电热水器中嵌入了一个时 钟,除了能实现其他的自动化功能之外,还能根据日期和时间开启、关断电源, 有很好的节能效果,同时在该系统设计中引入了利用 SOC 系统解决实际问题的 思路,是对 FPGA 新的应用领域的一种探索,如果单独用 FPGA 作为控制器件, 用 FPGA 实现时钟功能,那就只要在这个系统中接入一些传感器和驱动电路即可, 这样整个系统的电路得到很大的简化,系统的可靠性将大大提高。 5.25.2 缺点缺点 电热阻丝的控制是通过继电器的接通和断开来控制存在电弧和电火花,同 时不能实现温度的精确控制;整个系统设计花费的成本较高,使了 FPGA、单片 机作为控制器,还使用了 LCD12864 作为现实器,虽然 FPGA、单片机两者都发 挥了自己优势,显示效果也比较好,但也大大提高了设计成本,本设计要是要 投入市场,将没有任何价格的优势。 5.35.3 改进意见和展望改进意见和展望 A:单独用 FPGA 作为控制器件,同时在其中嵌入一个时钟,那么这个系统 就是一个真正的 SOC 系统,选了低端 FPGA 完成设计,成本并没用什么提高,设 计过程将大大简化,系统性能将大大的提高。 B:单独使用单片机作为控制器,这样本设计与原有的市场上的电热水器相 比,成本没有什么提升,但是多了定时开启、定时关断的功能,能有效的实现 节能,从长远的角度来讲这样微小成本的提升是相当值得的。 C:电热丝的控制用 PWM 控制实现,通过温度变化,调节 MOS 管或者开关三 极管的控制信号的占空比,能实现温度的精确控制,而且避免了使用继电器时 的电火花。 结结 论论 从这次设计当中我学到了很多,它教会了我在设计电路的电路图之前必须 深明其原理,并在硬件电路制作过程中小心仔细,不然他将使得我们的调试工 作复杂化;其次就是设计模块时利用模块化的思想是相当好的,但如果模块过 多,连接线也会相应增加,因此事先必须考虑好各个模块的连接和安放;再次 本设计让我学会了如何组织一个大型的系统程序,如何对单片机的资源进行合 理分配和高效利用,如何较好的实现单片机和 FPGA 和的通信(如何设计较完 善的通信协议) ,也让自己对 DS1302、DS18B20 和 LCD12864 的控制使用更加 的熟练;最后就是通过此设计使我对以前学过的知识进行了巩固,同时此次设 计用到了数模电、单片机、EDA 等多门专业课程的知识,通过这次毕业设计不 仅仅增强了我们的动手能力,更重要的是提升了自己对多门知识进行综合把握 的能力,进一步提高了自己一种创新意识,通过这次毕业设计也让我深刻的体 会到学以致用这个词语的真正含义,因为这个毕业设计还算成功,实物调试也 基本上实现设计要求的所有功能,所以有一种成功的喜悦感,相信只要要自己 继续不断地努力学习专业理论知识,重视理论与实践的结合,大胆地发挥创新 能力,再难的设计设计任务都难不倒自己。 这次设计还启迪了自己,在生活中要多思考,将自己的专业与我们的生活 联系起来,要有创新的意识,更要有创新的勇气和能力。 参考文献 1 潘松,黄继业. EDA 技术实用教程M北京:科学出版社, 2007.05 2 包本刚,何怡刚,朱湘萍. 全同步数字频率计的 VHDL 设计与仿真J现代电子技 术2007 3 求是科技CPLD/FPGA 应用开发技术与工程实践M北京:人民邮电出版社2005.1 4 包本刚 基于 FPGA 器件的 FIR 滤波器的设计N.湖南科技学院学报,2005, 26/11,P67-70. 5 包本刚,朱湘萍 基 FPGA 器件的数字电压表的设计J电子工程师 200733,P17 18 6 田杏卫 浮球液位传感器在池内带液状态下的安装方法J内肛科技 2008.03 7 张先臣,王冬云. 基于 DS1302 的太阳能热水器智能控制器的设计J自动化技术与应 用.2006.1 8 李华. MCS-51 系列单片机实用接口技术M.北京:北京航空 9 航天大学出版社,1993. 10 王长胤,文军. 单片单板机原理及应用M.武汉:武汉大学 11 出版社,1993. 12 丁金华,孙秋花. 串行时钟芯片 DS1302 的应用J.大连轻工业学院学报,1998,17(1):40-45. 13 鱼献荣. 实用水位控制电路J.电子制作,1998,(9):13-14. 14 殷为民. 太阳能水温水位仪J.家用电子,1999,(1):37-38. 15 徐龙坤. 辅助加热式太阳能热水器J.家用电器,1997,(2):9 16 王景中,冯祎. 基于 FPGA 的实时分布式温度采集技术JPLD、CPLD、FPGA 应 用2009.02 17 高吉祥 电子技术基础实验与课程设计M北京:电子工业出版社,2009.12 18 张永瑞 刘振起 杨林耀 电子测量技术基础M陕西:西安电子科技大学出版社, 200702 19 林晓焕 林刚 基于 VHDL 语言的数字频率计设计J西安工程科技学院学 报2005.3 20 胡兵 一种并行多通道数字测频方法及其实现J仪器仪表学报2002,23 21 林强 一种数据采集及处理方法在测频仪中的应用计量技术M200412 22 胡宴如 耿苏燕 高频电子线路M北京:高等教育出版社,200705 23 Altera Corporation M.Altera Digital Library2001P23- 36 24 Altera CorporationFLEX10K Embedded Programmable Logic Device Family ZAltera Corporation ,20031 25 Altera CorporationConfiguration EPPROMs for FLEX DeviceZAltera Corporation,199810 26 JamesR, Anmstrong F, Gail Gray, Design expression and Synthesis of VHDL M Cambridge: Harvard University press,2001: 1. 附录附录 A A:VHDLVHDL 语言源程序语言源程序 library IEEE; use IEEE.

温馨提示

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

评论

0/150

提交评论