基于单片机温室温度控制系统研究内容摘要:
线上与该编码相对应的 DS18B20 使之作出响应,为下一步对该 DS18B20 的读写作准备 搜索 ROM 0F0H 用于确定挂接在同一总线上 DS18B20 的个数和识别 64 位ROM 地址,为操作各器件作好准备 跳过 ROM 0CCH 忽略 64 位 ROM 地址,直接向 DS18B20 发温度变换命令,适用于单片工作。 告警搜索 命 令 0ECH 执行后,只有温度超过设定值上限或者下限的片子才做出响应 温度变换 44H 启动 DS18B20 进行温度转换,转换时间最长为 500MS,结果存入内部 9字节 RAM 中 读暂存器 0BEH 读内部 RAM 中 9 字节的内容 写暂存器 4EH 发出向内部 RAM 的第 3, 4 字节写上、下限温度数据命令,紧跟读命令之后,是传送两字节的数据 复制暂存器 48H 将 E2PRAM 中第 3, 4 字节内容复制到 E2PRAM 中 重调 E2PRAM 0BBH 将 E2PRAM 中内容恢复到 RAM 中的第 3, 4字节 读 供 电 方 式 0B4H 读 DS18B20 的供电模式,寄生供电时 DS18B20 发 送“ 0”,外接电源供电 DS18B20 发送“ 1” 数器 1的预置值减到 0时温度寄存器的值将加 1,减法计数器 1的预置将重新被装入,减法 计数器 1重 新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2 计数到 0 时, 停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。 图 8中的斜率累加器用 于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20 的测温原理。 另外,由于 DS18B20 单线通信功 能是分时完成的,他有严格的时隙概念,因此读写时序很重 要。 系统对 DS18B20 的各种操作必须按协议进行。 操作协议为:初始化 DS18B20(发复位脉冲 )→发 ROM功能命令 → 发存储器操作命令 → 处理数据。 温室 温度控制系统 10 图 9 测温原理内部装置 DS18B20 的测温流程 图 10 DS18B20测温流程 4 单片机接口 设计 DS18B20 可以采用两种方式供电,一种是采用电源供电方式,此时 DS18B20 的 1 脚接地, 2脚作为信号线, 3脚接电源。 另一种是寄生电源供电方式,如图 11 所示单片机端口接单线总线,为保证在有效的 DS18B20 时钟周期内提供足够的电流,可用一个 MOSFET 管来完成对总线的上拉。 本设计 采用电源供电方式, 口接单线总线为保证在有效的DS18B20 时钟周期内提供足够的电流,可用一个 MOSFET 管和 89S51 的 来完成对总线的上拉。 当 DS18B20 处于写存储器操作和温度 A/D 变换操作时,总线上必须有强的上拉,上拉开启时间最大为 10 μs。 采用寄生电源供电方式是 VDD和 GND 端均接地。 由于单 线制只有一根线,因此发送接收口必须是三 状态 的。 主机控制 DS18B20 完成温度转换必须经过3个步骤:初始化、 ROM 操作指令、存储器操作指令。 初始化 DS18B20 跳过 ROM 匹配 温度变换 延时 1S 跳过 ROM 匹配 读暂存器 转换成显示码 数码管显示 减法计数器 斜坡累加器 减到 0 减法计数器 预 置 低温度系数 振 荡 器 高温度系数 振 荡 器 计数比较器 预 置 温度寄存器 减到 0 单片机接口设 计 11 图 11 DS18B20与单片机的接口电路 5 系统整体 设计 主板电路 设计 (如附录 2) 单片机的 接 DS18B20 的 2 号引脚, P0 口送数 P2 口扫描, 、 控制加热器和电风扇的继电器。 各部分 电路 (1) 显示电路 显示电路 采用了 7段共阴数码 管扫描电路,节约了单片机的输出端口,便于程序的编写。 图 12 显示电路图 单 片 机 18B20 VCC GND 温室 温度控制系统 12 (2) 单片机电路 图 13单片机电路引脚图 (3) AT89SISP 下载口电路 图 14 下载口电路引脚图 此电路 连 接单片机。 (4) DS18B20 温度传感器 电路 图 15 温度传感器电路引脚图 系统整体设计 13 (5) 继电器电路 图中 引脚控制加热器继电器 , 引脚控制电风扇继电器。 给 . 低电平,三极管导通,电磁铁触头放下来开始工作;同样给 低电平,三极管导通,电磁铁触头放下来开始工作。 图 16 继电器电路 图 (6) 晶振控制电路 图 17 晶振控制 电路图 (7) 复位电路 图 18复位电路 图 温室 温度控制系统 14 系统软件 设计 系统 软件设计的整体思想 一个应用系统要完成各项功能,首先必须有较完善的硬件作保证。 同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。 甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件编程有时会变得很简单,如数字滤波,信号处理等。 因此充分利用其内部丰富的硬件资源和软件资源,采用与 S51 系列单片机相对应的 51 汇编语言和结构化程序设计方法进行软件编程。 程序设计语言有三种:机器语言、汇编语言和高级语言。 机器语言是机器唯一能“懂”的语言,用汇编语言或高级语言编写的程序(称为源程序)最终都必须翻译成机器语言的程序(成为目标程序),计算机才能“看懂”,然后逐一执行。 高级语言是面向问题和计算过程的语言,它可通过于各种不同的计算机,用户编程时不必仔细了解所用的计算机的具体性能与指令系统,而且语句的功能强,常常一个语句已相当于很多条计算机指令,于是用高级语言编制程序的速度比较快,也便于学习和交流,但是本系统却选用了汇编语言。 原因在于,本系统是编制程序工作量不大、规模较小的单片机微控制系统,使用汇编语言可以不用像高级语言那样占用较多的存储空间,适合于存储容量较小的系统。 同时,本系统对位处理要求很高,需要解决大量的逻辑控制问题。 MCS— 51 指令系统的指令长度较短,它在存储空间和执行时间方面具有较高的效率,编成的程序占用内存单元少,执行也非常的快捷,与本系统的应用要求很适合。 而且 MCS— 51 指令系统有丰富的位操作(或称位处理)指令,可以形成一个相当完整的位操作指令子集,这是 MCS— 51 指令系统主要的优点之一。 对于要求反应灵敏与控 制及时的工控、检测等实时控制系统以及要求体积小、系统小的许多“电脑化”产品,可以充分体现出汇编语言简明、整齐、执行时间短和易于使用的特点。 本装置的软件包括主程序、读出温度子程序、 复位应答 子程序、 写入 子程序、以及有关 DS18B20 的程序(初始化子程序、写程序和读程序)等。 主程序的功能是:启动 DS18B20 测量温度,将测量值与给定值进行比较,若测得温度小于设定值,则进入加热阶段,置 为低电平,这期间继续对温度进行监测,直到温度在设定范围内,置 为高电平断开可控硅,关闭加热器,等待下一次的启动命令。 当测得温度大于设定值,则进入降温阶段,则置 为低电平,这期间继续对温度进行监测,直到温度在设定范围内,置。基于单片机温室温度控制系统研究
相关推荐
BAT i t l eN um be r R e vi s i onS i z eBD a t e : 1 J un 20 09 S he e t of F i l e : E : \ 毕业设计 单片机测速 \ t a ng l e i .dd b D r a w n B y :8 17 26 35 4M C 34 06 3R S C 3R2 KR1
)既有利于砼养护,又可保护踏步楞角。 楼梯弊端的预防: 防止踏步不等高: 踏步不等高,既不美观,又影响使用。 踏步不等高现象,一般发生在最上或最下一步踏步中。 产生的原则,一是建筑标高与结构标高不吻合。 二是将结构标高误为建筑标高。 三是施工粗心,支模有误。 为此,浇筑楼梯之间: ⑴ 仔细核查楼梯结构图与建筑图中的标高是否吻合。 经查核与细致计算无误后,再制作安装模板。 ⑵ 浇筑砼中
~ 12位 A/D转换精度,测温分辨率可达 ℃。 此器件具有体积小、质量轻、线形度好、性能稳定等优点其各方面特性都满足此系统的设计要求。 比较以上三种方案,方案三具有明显的优点,因此选用方案三。 DS18B20 是 Dallas 半导体公 司推出的一线总线数字化温度传感器件,它能在现场采集温度数据,并将温度数据直接转换成数字量输出。 DS18B20 支持 “一线总线 ”接口,测量温度的范围为
器还有复位端 R,控制电压端CV,电源端VCC和接地端GND。 等效的触发器和它的功能真值表这个特殊的RS 触发器工作原理:①两个输入端的触发电平要求一高一低:置零端R即阀值端TH要求高电平,而置位端S即触发端TR则要求低电平。 ②两个输入端的触发电平,是使它们翻转的阀值电压值也不同,当CV端不接控制电压时,对TH(R)端来讲,大于2/3VCC是高电平1,小于2/3VCC是低电平0;而对
智能家居的 计划。 在美国,他们的家庭安全方面主要使用了联网报警服务模式,联网报警将把北美的安防产业进行整体合并,是一个非常成功的商业模式;在日本,家庭报警服务业非常发达。 他们在联网报警服务服务方面主要采取设备购买制或设备租赁制;在韩 国,安防系统中的视频监控得到了普遍的使用。 中国的安防事业起源于上世纪中后期,它是随着科技的发展而成长起来的。 尤其是在加入 WTO 之后
, P1 口缓冲器能接收输出 4 个 TTL 门电流。 P1口管脚写入 1后,被内部上拉为高,可用作输入, P1口被外部 下拉为低电平时,将输出电流,这是由于内部上拉的缘故。 P3 口也可作 一些特殊功能口,如下所示: RXD(串行输入口) TXD(串行输出口) /INT0(外部中断 0) /INT1(外部中断 1) T0( 定 时器 0 外 输入) T1 定 时器 1 外输入)