毕业设计论文_多点温度巡回检测系统内容摘要:

使用时将 3脚接地,可起到屏蔽作用。 本设计使用的 AD590 为 TO- 52,其测温范围 是- 55~+ 150℃,最大非线性误差为177。 ℃。 7 7 图 33 AD590 外形与符号 图 34 25℃时电流与温度关系 AD590 的电流-温度( IT) 特性曲线如图 5 所示,热力学温度值与摄氏温 度值换算关系为: ( ) ( ) 27 5t T K℃ ( 1) 3. 2. 2 AD590 的应用 本设计在温度巡回检测中对 AD590 进行应用,其硬件图如图 35所示。 AD590 是恒流源式模拟集成温度传感器,要使其正常工作,其两端压差需在 4V- 30V范围内,右图中 VCC 电压在 11V 左右。 为了使有效的控制给不同 AD590 送电,采用两级控制。 只有当 8550的基极为低电平时, 8550 就导通,给 AD590 供电,由于 VCC 的电压为 11V 左右,因此加 2803,在低电平时 2803 阻断,让 8550 基极高阻关断给 AD590 供电,当 高电平时给 2803 导通, 8550 导通, AD590 就获得工作电压。 图 35 中 R17 为精密电阻,误差为 %,温度信号转换为电压信号的公式为: 1 / 5outV A K K T    ( 2) 如图 35中 Port7 为 outV 输出端。 数据采集及处理 模块 系统中下位机要完成温度的采集、转化及数据的处理。 以单片机为核心,控制温度选择通道模块把经传感器转换得到的模拟信号提供给 A/D 转换器,再经过图 35 AD590 温度采集 8 8 A/D 转换器把模拟信号转化为数字信号供单片机处理。 系统所使用的单片机是ATMEL 公司的 AT89C52 单片机。 AT89C52 简介 AT89C52 单片机是一种带 8K 字节闪速可编程可擦除存储器的低电压、高性能 COMS 8 位微控制器。 它与 MCS- 51 系列单片机兼容,有 256 个字节的 RAM, 4个 I/O 端口共 32 线, 3个 16 位定时 /计数器,全双工串口通道, 5个两级中断源结构。 使用 AT89C52 是一个高性能而有廉价的选择。 图36 为 AT89C52 管脚图。 通道选择的实现 系统的采集在 AD590 把温度信号转化为电信 图 36 AT89C52 管脚 号后,就要把各路电信号送给 A/D 转换器,由于是要把 16 路信号逐个送入。 本设计是在只用一个 A/D 转换器的情况下,通过单片机对通道的选择,采用巡回检测的方式,把各个温度值给 A/D转换器处理转换,最后给单片机计算与处理,这个过程的硬件设计如图 37所示。 图 37 通道选择电路 图 38 TPIC6B595 时序图 本设计通道选择电路主要应用了移位寄存器 TPIC6B595。 TPIC6B595 是一种单片、高电压、中等电流的功率 8 位移位寄存器,是专为用户相对高的负载功率的系统设计的。 该器件包括一个内部的输出电压箝位电路以防止电感瞬变电压。 该器件包括一个 8 位的串入、并出移位寄存器,它的输出反馈一个 8 位 D型寄存器。 数据分别在移位寄存器时钟( SRCK)和寄存器时钟( RCK)的上升沿传输到移位寄存器和存储 寄存器。 当移位寄存器清零端( SRCLK)为高时,存储寄存器传输数据到缓冲器。 当 SRCLK 为低时,输入端的移位寄存器被清零。 当输出使能( G)保持为高时,在输出缓冲器中所有的数据保持低电平并且所有的漏极输出时关断的。 当输出使能( G)为低时,从存储寄存器到输出缓冲器的数据时透明的。 当输出缓冲器中的数据为低电平时, DNOS 晶体管的输出端是关断的。 当数据为高时, DNOS 晶体管的输出端具有吸入电流的能力。 串口输出断( SER OUT)9 9 允许将移位寄存器与其它器件的数据级联系起来传送。 其时序图入图 38所示。 由于下位机要实 现对 16 路温度值的采集,本设计通道选择电路主要应用了TPIC6B595 的移位功能,并且应用串联使用功能,主要目的是为了节省单片机 IO口,使系统资源充分的利用。 具体的原理为:如图 38所示,选择通道的指令在 、 、 、 及 按照上述时序控制下,由 以串行输入,指令为 16位数据,由于一个 TPIC6B595 只有 8个输出,需两个 TPIC6B595 级联,U2的串行输出作为 U1 的串行输入,以此达到控制 16 路温度的巡回检测。 模数转换的实现 A/ D 转换电路主要是由 AD7705完成的。 AD7705 是应用与低频测量的2/3 通道的模拟前端。 该器件可以接受直接来自传感器的低电平的输入信号,然后产生串行的数字输出。 利用∑ △转换技术实现了 16 位无丢失代码性能。 选定的输入信号被送到一个基于模拟调制器的增益可编程专用前端。 片内数字滤波器处理调制器的输出信号。 通过片内控制寄存器可调节滤波器的截止点和输出更新速率,从而对数字滤波器的第一个陷波进行编程。 如图 310 所示, SCLK 为串行时钟, 施密特逻辑输入。 CS 片选,低电平 图 310 AD 转换电路 有效的逻 辑输入。 DRDY 为逻辑输出。 DOUT 为串行数据输出端。 DIN 为串行数据输入端。 在单片机根据控制字对 AD7705 进行操作。 显示报警及操作模块 显示报警及操作模块一般作为系统的人机界面,是系统功能的集中体现。 液晶显示 显示部分有两种选择,用数码管 (LED)或液晶( LCD),用数码管作为显示温度的设备其有成本低的优点,然而其电路接线复杂,显示温度点的数目有限;本设计为了让温度尽可能多的在同一界面显示,减少接线的复杂度,采用液晶显示测量温度。 本设计采用的液晶为 ST7920 是台湾矽创电 子公司生产的中文图形控制芯片,它是一种内置 128 6412 汉字图形点阵的液晶显示控制模块,用于显示汉 字及图形。 可显示 32个汉字,一行 8 个,或者显示 64个字符。 其可以由两种方式控制,串行控制和并行控制,本设计为了节省单片机 I/O 口,采用了串行 控制显示。 接 CS, SCLK, 接 SID,其控制时序如图 311 所 10 10 图 311 串行模式时序 示。 报警模块 报警部分要实现的功能为在有任何一处的温度值超出设定温度值范围时就要及时报警,做出报警动作。 对与报警部分硬件电路的设计较为简单,一是蜂鸣报警,二是显示提示,在 LCD 上显示。 按键模块 系统的操作模块即为按键的设计,根据系统功能的要求,主要用于温度值的设定和校准。 需要由 4 个按键要实现以下功能:第一个按键是功能切换,第二个按键是向上调节,第三个按键是实现向下调节,第四个按键是确认键。 数据通讯模块 下位机上通讯部分的硬件电路设计为图 312 所示。 图 312 下位机通讯接口电路 11 11 如图 312所示,通讯接口电路主要应用了 SN65LBC184芯片。 SN65LBC184是SN5176行业标准范围内的差分数据线收发器,它带有内置高能量瞬变噪声保护装置。 这种设计特点显著提高了抵抗数据同步传输电缆上的瞬变噪声的可靠性,这种可靠性超过了多数现有器件。 采用这类电路可提供可靠的低成本的直连(不带绝缘变压器)数据线接口,不需要任何外部元件。 应用原理为: SN65LBC184的读写使能,在其控制下单片机的 RXD、TXD通过 SN65LBC184,在通过 485/232接口与计算机实现通信。 如图 312,在与SN65LBC184连接时都用了光耦隔离,光耦两边使用不同的电源,+ 5V和 VCC(+5V)表示不同的电源。 其目的是为了防止干扰,实现通信的稳定传输。 4 多点温度巡回检测系统的软件设计 下位机软件程序设计 下位机程序开发方法简介 本设计下位机部分就其功能来讲,具一个有独立作业的智能仪表。 当前很多智能仪表采用前/后台系统设计,应用程序是一个无限的循环,后台程序循环调用相应的函数完成相应的处理,中断服务程 序处理异步事件。 时间相关性很强的关键操作靠中断服务来保证的。 这种方式的优点是程序比较直观,但由此带来一个重要的问题是系统的稳定性、实时性较差。 中断服务提供的信息一直要等到后台程序运行到该处理这个信息时才能得到处理,最坏情况下的任务级响应时间(处理信息的及时性 )取决于整个循环的时间,而循环的执行时间不是常数,程序经过某一特定部分的准确时间不能确定,进而若程序修改了循环的时序也会受到影响。 在智能仪表中移植嵌入式操作系统能较好的解决以上问题,并使软件开发工作变得规范、容易测试、实现模块化编程和缩短开发周期。 随着 系统硬件功的增强,成本的降低,功能要求的增加和复杂化,需要实时操作系统对多个任务进行合理协调调度,管理系统资源的要求越来越迫切。 同时,各种嵌入式实时操作系统不断出现,对硬件配置要求的不再苛刻,实时性不断增强,效率不断提高使得在自动化仪表中使用实时操作系统成为可能。 本设计采用 Small Rtos51 作为软件开发平台,实现对多点温度进行巡回检测,包括温度转换、温度设定、显示以及报警等功能,同时实现与上位机通信。 Small RTOS5l 简介 Small RTOS5l 是一个基于 51 系列单片机的、免费 的、源代码公开的多任务实时操作系统,可以在单片 51 系统上运行。 它使用了 RTX51 Tiny 的堆栈管理机制,并像 uc/osII 一样是抢占式的。 Small RTOS51 是为 51 系列单片机编写,具有处理机管理、存储管理、设备管理,支持任务动态建立与删除和动态内存分配,提供了用于任务间通信的信号量、消息队列。 Small RTOS5 l 是为小 RAM 系统设计的,对于采用只有较小 RAM 和 ROM 的 5l 微控制器的系统而言,移植 Small 12 12 RTOS5l 是一个较好的选择。 下位机程序设计的实现 根据下位机所要实现的 功能在 Small RTOS5 1的配置文件 configh中建立了 6个任务:通道选择任务 chunnelsel、报警任务 warn、温度计算任务 caltemper、读传感器温度任务 readad、显示任务 display和系统参数修改任务 modipara。 由于各任务的重要性和实时性要求不一样,任务间的通信利用信号量来实现,其代码如下: //任务定义 ifdef IN_OS_CPU_C extern void chunnelsel (void)。 extern void modipara (void)。 extern void warn (void)。 extern void caltemper (void)。 extern void readad (void)。 extern void display (void)。 void (* const TaskFuction[OS_MAX_TASKS])(void)={ chunnelsel, modipara, warn, caltemper, readad , display }。 //函数数组 TaskFuction[]保存了各个任务初始 PC指针 ,其按任务 ID(既优先级次序 )顺序保存 endif 图 41 主程序流程图 主程序的程序框图如图 41。 主程序的有两个函数 init()和 OSStart(),其中init()主要定义了系统节拍中断频率, OSStart()的作用是启动 Small RTOS51的多任务环境,在调用此函数前系统不允许中断。 图 42 通道选择程序流程 图 43 读传感器温度流程 开 始 读温度值 发送读取完成信号 关中断 结 束 开中断 开 始 选择通道 发送选择完成 信号 关中断 结 束 开中断 13 13 通道选择任务 chunnelSel负责按设定的参数选择数据输入通道,然后睡眠设定的时间。 由于系统要对多路温度进行检测,只有即时切换输入通道才保证各输入信号在规定时间内被检测,因而通道选择任务在系统中拥有最高优先级。 通道选择程序流程如图 14。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。