基于c51单片机的大棚温度自动调控系统的设计(编辑修改稿)内容摘要:

XDINT0INT1T0 T1 WR RD XTAL2XTAL1VssPSENALEVppPPPPPPPPVccAT89C51 clkPPPPPPPPPPPPPPPPPPALEPSENPPPPPPPPPVCC1212mHZ30pFC147uFC330pFC21kR0S5VCCRSTRST1KR1SY5WVCCEDC GFgndAH G F E11VCCA B C D gndHVCC clk1 2 3 4 5 6 789101112131474LS164BH1 G1 F1 E122VCC1A1 B1 C1 D1 gnd1BVCC1clk1 2 3 4 5 6 789101112131474LS1641BH2 G2 F2 E233VCC2A2 B2 C2 D2 gnd2VCC2clk1 2 3 4 5 6 789101112131474LS1642B1 2 3 4 5 6 7a b c d e f g8dp9GNDabfcgdedp10NCLDE3E1D1C1 G1F1gndA1 H1B11 2 3 4 5 6 7a b c d e f g8dp9GNDabfcgdedp10NCLED4E2D2C2 G2F2gndA2 H2B21 2 3 4 5 6 7a b c d e f g8dp9GNDabfcgdedp10NCLED1E3D3C3 G3F3gndA3H3 G3 F3 E3VCC3A3 B3 C3 D3 gndH3VCC clk1 2 3 4 5 6 789101112131474LS164BB3123DS18B20GND VCCVCCXTAL2XTAL1XTAL2GNDXTAL190121KR1SY5WVCC9012D2 D1 11 5. 软件设计说明 5. 1 DS18B20 器件读 取 温度流程序图 DS18B20 测温程序 DS18B20 复位 跳过 ROM 温度转化 把温度存入暂存器 读取温度 高位放入 R6 低位放如 R7 数字整合 整数放入 R6 转化为 BCD 码 个位数据存入 R7 十位数据存入 R6 跳出测温程序 12 5. 2 键盘处理流程序图 A 键盘处理 判断哪个键按下 按键 A 按键 B 按键 C 按键 D 调用加 10 度程序 调用加 1 度程序 调用减 10 度程序 调用减 1 度程序 数据写入 R4 数据写入 R5 数据写入 R4 数据写入 R5 记录 数据 13 5. 3 总程序流程图 主程序流程图 DS18B20 测温程序 显示温度数据 R7 到 R4 温度是否高于设置值 打开降温系统 打开加热系统 开始 是 温度是否相等 是 否 否 键盘扫描 键盘设置值与实际温度值比较 14 5. 4 键盘消抖处理流程序图 6. 系统 仿真 数据 测试 仿真系统介绍 在农业生产的 大棚 温度调控中加热和散热的系统用的是大型电炉丝加热或用暖气管加热,散热系统为大型风扇或打开大棚密闭室让空气对流降温等等的方法。 但做为调控系统接这些设备上出很难调试,所以我做了个简易的仿真系统。 用 60 瓦的灯泡加热,用自制的电动机风扇散热, 再将灯泡,风扇及温度传感器装在一半密闭的纸箱中。 操作步骤 把系统接好电源,先用水银温度计测量下室温, 记录下具体温度值。 再和 DS18B20 的测量温度值比较下,看系统测量的温度是否准确, 再通过键盘 调 节设置的温度。 让系统比较两温度的大小再让自动启动加热或散热系统, 使纸箱内的温度达到预期设置的温度值。 键盘扫描流程图 是否有键按下 调用延时消抖程序 确定有键按下 键盘扫描 读键盘状态 是 否 A 15 数据测量 键盘设置的温度 (度) 设置温度前的水银温度计测的温度 (度) 设置温度后系统稳定时 水银温度计测的温度 (度) 设置温度前DS18B20 测的温度 (度) 设置温度后 系统稳定DS18B20 测的温度 (度) 实验现象 25 25 25 由于 设置温度与当前的温度一 样 , 系统不启动任何设备 电路板上的发光二极管前四的亮后四个暗 35 25 35 由于 设置的温度比当前温度高 , 系统启动加热设备, 继电器吸合,电 灯泡亮 , 电路板上的发光二极管八个都亮,给系统 加热。 当温度一升高到 35 时灯泡 马上 灭。 电路板上的发光二极管变为前四的亮后四个暗。 再等一会儿的时间温度自动下降到 34 度,这时继电器再次又吸合灯泡再次亮。 发光二极管八个都亮。 当 显示温度再次到达 35 度灯泡再次灭。 如次反复 ,不过跳变的频率不是很大。 因为设计的比较温度,最小精确度为 1 度, 24 35 24 由于设置的温度比当前温度 低 ,系统启动 散 热设备,继电器吸合, 电动机转动 , 电路板上的发光二极管八个都灭 , 给系统 散 热。 当温度一 降低 到 24 时 电动机停止转动。 电路板上的发光二极管变为前四的亮后四个暗。 再等一会儿的时间温度自动 上升 到 25 度,这时继电器再次又吸 电动机再次转动。 发光二极管八个都 灭。 再次散热 , 当显示温度再次到达 24 度 电动机停止转动。 如次反复,不过跳变的频率不是很大。 因为设计的比较温度,最小精确度为 1 度 , 4 程序调试和 最终实现的 设计 效果 经过不断的实验,硬件和程序的配合调试最终完成了设计的预期效果,就是数码管上显示 4位数从左到右分别是键盘设置的温度十位、个位。 以及 DS18B20传感器测得的实际温度的十位、个位。 还有4个按键,分别是对设置的值十位加一,个位加一,十位减一,个位减一, 当设置的数值和实际测量的值一 样的时候在电路板上的发光二极管前四的亮后四个暗,两继电器都不吸合。 当设置的数值比实际测量的值大的时候在电路板上的发光二极管八个都亮,而且有一继电器吸合启动加热系统(灯泡亮)。 当设置的数值比实际测量的值小的时候在电路板上的发光二极管八个都暗,而且有一继电器吸合启动散热系统(电动机转动)。 最终保持当前温度和设置温度一样。 最终设计的效果达到了本次设计的设计要求,实现了要求设计的所以功能。 16 结束语 本设计是以 AT89C51单片机 芯片 和 一种新型的可编程温度传感器( DS18B20) 为主要芯片以及其他辅助电路, 它 不需复。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。