基于单片机的粮仓温度控制系统论文内容摘要:
在 P1口作 为输 入口使用 时 , 应 先向 P1口 锁 存 器 (地址 90H)写 入全 1,上拉 电阻 接成高 电平。 P2 口 (21— 28 脚 ): P2 口是一 个带内 部上接 电阻 的 8 位准 双向 埠。 P2 口的每一 位能驱动 4个 LS 型 TTL负载。 P3 口 (21— 28 脚 ): P3 口是一 个带内 部上接 电阻 的 8 位准 双向 埠。 P3 口的每一 位能驱动 (吸收或 输 出 电 流 )4 个 LS型 TTL 负载。 P3 口与其它的 I/O 埠有很大 区别 ,它除作 为 —般准 双向 I/O 口外,每 个 引 脚还 具有 专门 的功能, 见 表 31。 表 31 端口引脚功能 P1 口也是一 个 准 双向 口,作通用 I/O 口使用。 其 电 路 结构见 图。 输 出 驱动 部分 内 部有上拉 负载电阻 与 电 源相 连。 实质上图 P1口作通用 I/O口使用 拉 电阻 是 两个场 效 应管 (FET)并在一起, — 个 FET 为负载管 ,其 电阻 固定;另一 个 FET可工作在 导 通或截止 两 种 状态 ,使其 总电阻 值 变 化近 为 0或阻值很大 两 种情 况。 当 阻值近似 为0 时 , 可将 引 脚快 速上拉至全高 电平 , 当 阻值很大 时 , P1 口为 高阻 输 入 状态。 当 P1 口 输 出高 电平时 ,能向外提供拉 电 流 负载 ,所以不必再接上拉 电阻。 在埠用作 输 入 时 ,也必 须先 向 对应 的 锁存器 写 入“ 1”,使 FET 截止。 由于 片内负载电阻较 大 ,约 20k— 40k,所以不 会对输 入的 数 据 产 生影 响。 温度传感器 DS18B20 温度传感器分类 (l)热敏电阻 以温度变化导致阻值的变化为工作原理的热敏电阻,因其具有成本低、体积小、简单、可靠、响应速度快、容易使用等特点,在多项温度测量应用中受到广泛欢迎,同样也是国内粮情检测系统中采用最多的温度传感器。 热敏电阻的电阻温度系数较高,室温电阻通常也较高,因此其自身发热较小,信号调节较为简单。 热敏电阻的缺点是互换性差,温度与输出阻值之间旱非线性关系。 热敏电阻分为正温度系数热敏电阻和负温度系数热敏电阻两种,但在温度测量应用中,正温度系数热敏电阻较少得到采用,更多采用的是负温度系数 热敏电阻。 以下提及的热敏电阻均指负温度系数热敏电阻。 采用热敏电阻作为温度传感器的粮情检测系统的硬件由上位机、通信接口电路、智能分机、温度分线器、测温电缆、湿度分线器、测湿探头和通风控制器组成。 在上位机上运行粮情检测系统软件,对检测到的温湿度数据进行分析,根据粮仓内外温湿度条件判断是否可以进行通风,手动或自动控制通风机械的启动和停止。 通信转换电路分为内置式和外挂式两种,主要完成两种通信协议之间的衔接转换功能。 智能分机是由微处理器、 A/D转换电路和通信电路等组成,主要功能包括接收上位机下达的指令、将现场采集上 来的模拟信号数字化、向上位机传送数字化的温湿度值、向通风控制器下达启动或停止指令等。 温湿度分线器主要完成接收智能分机下达的指令、将模拟开关切换到指定的温湿度测量点等功能。 通风控制器主要功能是根据智能分机下达的指令控制通风机械的启动和停止。 智能分机与温湿度分线器和通风控制器之间均采用单根多芯电缆连接,具有结构简洁、维护方便、成本低等诸多优点。 采用热敏电阻作为温度传感器的测温电缆是粮情检测系统的重要组成部分,它是将多个热敏电阻置入一根测温电缆之中,电缆内加细钢丝绳提高抗拉强度、外加绝缘护套密封防腐。 采用热敏电 阻作为温度传感器的粮情检测系统的温度检测范围一般在 40℃ — +50℃之间,检测精度为士 1℃,完全满足粮情温度检测的需要。 根据其系统结构的特点,一般在单根测温电缆上置入 3— 4个热敏电阻,特别适合房式仓储粮环境。 (2)数字式温度传感器 数字式温度传感器的种类也不少,但用于粮情检测系统的温度传感器主要是美国 Dallas公司生产的 DS18B2O系列温度传感器,其温度检测范围为 55℃ ~+l25℃,检测精度为 ℃。 DS18B20采用 lwire接口,封装形式有 PR35和 8PIN SOIC两种,粮情检测系统中采用的是 PR35封装。 DSl8B20采用 9个位表示测温点的温度值,每个 DSl8B20内部都设置有一个单一的序列号,因此可以使多个 DS18B20共存于同一根数据传输线上。 DS18B20内部分为 4个部分: 1)64位序列号; 2)保存临时数据的 8字节片内 RAM; 3)保存永久数据的 2字节EEPROM; 4)温度传感器。 采用数字式温度传感器的粮情检测系统的结构与采用热敏电阻粮情检测系统的结构人致相同,只是用检测单元替代了智能分机、扩充接线器替代了温度分线器。 检测单元与智 能分机的区别在于没有用于将温度信号数字化的 A/D转换电路,取而代之的是 1Wire总线与上层通信总线之间的通信转换电路,如果系统选用了数字式湿度传感器则检测单元将完全由数字电路组成,而智能分机是由数字电路和模拟电路两部分构成的,这将使检测单元的电路设计更为容易。 采用 DSl8B20温度传感器的粮情检测系统的测温电缆与热敏电阻测温电缆大不相同,该测温电缆最多只需 3根导线即可连接多个 DSl8B20 温度传感器。 最为简洁的结构是利用DS18B20 可以通过数据线供电的特点,在测温电缆中只放置两根平行的细钢丝绳即可连接 多个 DS18B20 温度传感器,这样不仅使测温电缆的制造简便、成本下降,而且提高了测温电缆的抗拉强度、便于温度传感器的更换。 正是这些特点使得采用 DS18B20温度传感器的粮情检测系统更适用于高大粮仓 (诸如浅圆仓、立筒仓 )的应用环境,可以解决高大粮仓在不需重新安装测温电缆的情况下更换测温电缆内部的温度传感器以及改变温度传感器相对位置。 DS18B20简介 集成式数字温度传感器 DS1820的出现开辟了温度传感器技术的新领域,它利用单总线的特点可以方便的实现多点温度的测量。 DS18B20 是美国 DALLAS 公司最新推出的一种可组网数字式温度传感器,与 DS1820相同, DS18B20也能够直接读取被测物体的温度值 它在电压、特性及封装方面都更具有优势,给了用户更多的选择,让用户可以更方便的构建适合自己的测温系统。 DS18B20 充分利用了单总线的独特特点,可以轻松的组建传感器网络,提供系统的抗干扰性,使系统设计更图 DS18B20的管脚排列图 灵活、方便、而且适合于在恶劣的环境下进行现场温度测量。 与 DS1820 相比, DS18B20 的功能更强大些。 它体积小,电压使用范围宽( 3V5V),用户还可以通过编程实现 912 位的温度读数,即具有可调的 温度分辨率,因此它的实用性和可靠性比同类产品更高。 另外, DS18B20 有多种封装可选,如TO9 SOIC 及 CSP封装。 图 即为 DS18B20的管脚排列图。 由图 可见, DS18B20 只是一个数据输入 /输出口,属于单总线专用芯片之一。 DS18B20 工作时被测温度值直接以“单总线”的数字方式传输,大大提高了系统的抗干扰能力。 其内部采用在板温度测量专用技术,测量范围为 55℃~+125℃,在 10℃ ~+85℃时,精度为 ℃。 每个 DS18B20在出厂 时已具有唯一的 64 位序列号,因此一条总线上可以同时挂接多个 DS18B20,而不会出现混乱现象。 另外用户还可自设定非易失性温度报警上下限值 TH 和 TL(掉电后依然保存)。 DS18B20 在完成温度变换后,所测温度值将自动与存储在 TH 和 TL 内的触发值相比较,如果测温结果高与 TH 或低于 TL, DS18B20内部的告警标志就会被置位,表示温值超出了测量范围,同时还有报警搜索命令识别出温度超限DS18B20。 图 为 DS18B20 的内部存储结构图,它包括一个暂存RAM 和一个非易失性可擦除 2ERAM。 其中暂存存储器作用是在单线通信时确保数据的完整性,它包括 8个字节,头两个字节表示测得的温度读数,数据格式如下: S=1时表示温度为负, S=0 时表示温度为正,其余低于以二进制补码形式表示,最低位为 1 时表示 ℃。 温度 /数字对应关系如上表所示。 DS18B20 内部暂存存储器的第 5个字节是结构寄存器,它主要用于确定温度值的数字转换分辨率。 字节结构如下: 其中 1R 、 0R 用于设置分辨率。 DS18B20的硬件连接 DS18B20 与单片机的接口极其简单,只需将 DS18B20的信号线与单片机的一位双向端口相连即可。 如图 ( a)所示。 图 DS18B20内部存储结构图 此时应注意将 VDD、 DQ、 GND 三线焊接牢固。 另外也可用两个端口,即接收口与发送口分开,这样读写操作就分开了,不会出现信号竞争的问题。 如图 ( b)所示。 此图是采用寄生电源方式,将 DS18B20 的 VDD 和 GND 接在一起。 如若 VDD脱开未接好,传感器将只送 +℃的温度值。 一般测温电缆线采用屏蔽 4芯双绞线,其中一对接地线与信号线,另一对接 VDD 和地线,屏蔽层在源端单点接地。 图 DS18B20与单片机的接口 4 温度监控器 的系统设计 硬件设计 基于单片机 的粮仓温度监控系统 主要有以下几部分:温度检测 数据采集 部分, LED 数码管显示电路、报警及控制输出部分、单片机及按键电路设计等几个部分,下面分别加以介绍 温度检测部分 温度传感器有很多种,如热敏电阻,热电 偶, PN 结,半导体温度传感器等。 这里选用单总线数字输出的集成半导体温度传感器 DS18B20,其特点: 独特的单线接口方式, DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20 的双向通讯 ; 测温范围- 55℃ ~+ 125℃ ,固有测温分辨率 ℃ ; 支持多点组网功能,多个 DS1820可以并联在唯一的三线上,实现多点测温 ; 工作电源 :3~ 5V/DC。 温度检测 数据采集电路如图 所示,由温度传感器DS18B20 采集被控对象的实时温度,提供给 AT89C51 的 I/O口作为数据输入。 在本次设计中我们所 控的对象为 粮仓 的温度。 GND1I/O2VCC3DS18B20U3DS18B20R8VCC 图 温度传感器电路 LED 数码管显示电路 显示器分为数码管和液晶显示,我所采用是的数码管显示,其外形和引脚如下图所示: LED 数码有共阳和共阴两种,把这些 LED 发光二极管的正极接到一块(一般是拼成一个 8 字加一个小数点)而作为一个引脚,就叫共阳 机极数码管; 相反的,就叫共阴的 (如下图所示 ) 那么应用时这个脚就分别的接 VCC 和 GND。 再把多个这样的 8 字装在一起就成了多位的数码管了。 基于单片机的 粮仓监控系统 采用 7 段数 LED 码管显示,这里采用 6 个数码管显示温度, 两位显示设定的最高温度、两位显示设定的最低温度、两位显示 仓内 的当前温度。 6 位共阳极数码管采用扫描形式工作,其 8 个数据为接图 数码管外形和引脚图 图 共阴极和共阳极数码管内部电路 在单片机 灌电流 驱动能力最大的 PO 口, AT89C51 单片机的P0 口的每一个 I/O都能能吸收 8个 TTL 逻辑器件的输入漏电流,算下来能驱动约 10mA。 能驱动数码管的 8个数据阴极。 6位共阳极数码的 6个 阳极采用 6个 PNP 三极管 9012驱动。 用单片机 6 个 I/O口控制。 LED 数码管显示电路 如图。 图 数码管显示电路 报警及控制输出部分 当 仓内温度 超过最高温度时, 启动通风机 并报警;这就需要 报警电路及输出模块。 声音报警电路通过驱动蜂鸣器发声实现,当其接通 5V 的电压会发出蜂鸣叫声。 原理图如图 , NPN 型三极管 8050驱动蜂鸣器,当单片机 I/O口输出高电平时蜂鸣器发声 此外, 控制 加热棒的控制 信号同样由单片机输出,经过三极管 Q3 驱动继电器 J1, J1 具有 两对常开和常闭接点,利用其常开接点串到 加热棒的控制回路中,可以实现加热棒的控制。 电路中二极管 D1 为续流二极管, 继电器 线圈在通R3R4R5R6R10R11R12L1L2L3L4L5L6L7L8L1L2L3L4L5L6L71kR131kR151kR16Q59012Q69012Q79012f9g10e1d2+3c4DP5b6a7+8DS1f9g10e1d2+3c4DP5b6a7+8DS2f9g10e1d2+3c4DP5b6a7。基于单片机的粮仓温度控制系统论文
相关推荐
遥控码波形图.图3—14 一帧遥控码波形图键按下? 图3—15 遥控发射程序控制流程图图3—16遥控发射控制流程图低电子脉冲>2ms?高电子脉冲>3ms?=0?图3—17遥控接收控制流程图第四章 系统程序分析 键盘扫描程序本电路采用44矩阵式键盘电路,0F0H送至P0口,再读入P0口值与0F0H相比较,相等则说明没有键按下,再调用延时消抖程序,并将R2赋行号初值,(送寄存器A).KEYWORK:
下图 37为显示电路。 江苏理工学院毕业设计说明书(论文) 第 11 页 共 37 页 图 37 显示模块 数码管有共阴和共阳的区分,单片机都可以进行驱动,但是驱动的方法却不同,并且相应的 0~ 9 的显示代码也正好相反。 本系统数码管选择共阳极接法。 , , 控制数码管的千,百,十个位,当相应的端口为低电平,驱动晶体管导通 ,驱动晶体管的数字控制提供了高电平 ,这时只要 P0
号输入端, “V+”、 “V”为正、负电源端, “Vo”为输出端。 两个信号输入端中, Vi( )为反相输入端,表示运放输出端 Vo 的信号与该输入端的相位相反; Vi+( +)为同相输入端,表示运放输出端 Vo 的信号与该输入端的相位相同。 LM358 的引脚排列见图。 图 图 由于 LM358 二运放电路具 有电源电压范围宽,静态功耗小,可单电源使用, 价格低廉等优点
0 内部结 构主要由六部分组成:电源电路、 64 位光刻 ROM 及 1wire 接口、温度传感器、非易失性温度报警触发器 TH 和 TL、配置寄存器和 CRC 校验码产生器。 其内部结构如图 33 所示。 辽宁工程技术大学毕业设计(论文) 13 64位ROM 和单线接口存储器和逻辑控制器 高 速 缓 存存储器温度灵敏元件低温触发器TL高温触发器TH配置存储器8位 CRC生
示。 在增强型 MCS51系列中, 6 个中断源对应 8个中断请求标志(串行发送结束中断标志 TI和串行接收有效中断标志 RI相 “ 或 ” 后作为一个中断源—— 串行口中断,共用一个中断开关;定时器 T2溢出中断 TF2和外部触发中断 EXF2相 “ 或 ” 后作为一个中断源 —— 定时器 T2 中断,也共用一个中断开关)。 图 12增强型 MCS51 中断系统结构 增强型 MCS51定时
settime(void) { unsigned char flag。 time=0。 fen=time。 writtime()。 while(!flag) { if(0==K3) { delay(20)。 if(0==K3) { while(!K3)。 flag=1。 } } if(0==K1) { delay(20)。 if(0==K1) { while(!K1)。 . . time++。