分布式温度监控系统设计.doc_第1页
分布式温度监控系统设计.doc_第2页
分布式温度监控系统设计.doc_第3页
分布式温度监控系统设计.doc_第4页
分布式温度监控系统设计.doc_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

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

文档简介

I 目 录 第 1 章引言 1 1 1传感器的概述和应用前景 1 1 2课题目的和意义 2 1 3课题的主要观点 研究方法 3 第 2 章方案比较与论证 4 2 1设计思路 4 2 2方案设计比较 4 2 3方案的确定 7 第 3 章整体电路设计 8 3 1设计思路与方法 8 3 2基本功能模块电路 9 3 2 1温度采集模块 9 3 2 2系统控制模块 11 3 2 3数据存储模块 12 3 2 4显示模块 13 3 2 5串行通信模块 14 3 2 6单片机引脚分配图 16 第 4 章人机交互界面设计 17 4 1UI 设计介绍 17 4 1 1什么是 UI 17 4 1 2界面设计 17 4 1 3界面设计流程 17 4 2使用 VISUAL BASIC语言设计图形界面 18 4 2 1VB 图形界面开发特点 18 4 2 2VB 应用程序的基本设计步骤 18 4 2 3MSComm 控件 18 4 3界面设计 19 4 3 1界面基本功能描述 19 4 3 2界面式样 19 第 5 章系统程序设计 21 II 5 1下位机程序设计 21 5 1 1服务器程序设计流程图 21 5 1 2模块程序简介 21 5 2上位机程序设计 24 5 2 1终端程序设计流程图 24 5 2 2终端程序介绍 25 第 6 章设计演示结果 27 6 1软件仿真演示效果 27 6 2硬件演示效果 29 第 7 章结论与展望 30 7 1结论 30 7 2结束语 30 致谢 31 参考文献 32 附录一系统原理图 33 附录二程序清单 34 I 分布式温度监测系统设计分布式温度监测系统设计 在工业生产中 许多简单重复性操作或对人体有害的工作都由机器完成 这就需要相关设备来监 视机器工作情况 并对机器的工作进行相应的控制 本文设计了一种PC 单片机分布式温度监测系统 的实现方案 以及系统硬件设计和软件设计的方法 本系统充分利用了单片机价格低 功能强 抗干 扰性能好等优点 针对分布式温度监测系统 提出了一种温度测量方案 并给出了具体的硬件设计电 路和系统软件 通过建立服务器和终端 服务器把采集到的数据实时传送给终端 并在终端显示 服 务器使用AT89S52单片机作为处理芯片 多路DS18B20数字温度传感器采集温度数据 使用8位LED显 示温度数据 由于RS232串口通信存在通信距离上的限制 因此可以使用RS232转RS485的方式 实现 远距离通信 服务器挂载在485总线上 通过MAX232和MAX485电平转换芯片和RS232串口将温度数 据传送给终端 终端采用人机界面的方式在主机上显示温度 通过控制按钮能设置DS18B20的温度上 下限 在动态范围内调节DS18B20的正常温度工作范围 上位机采用Visual Basisc语言来设计 关键词 关键词 人机界面 服务器 终端 单片机 传感器 MAX485 RS485 MAX232 RS232 II Abstract In the industrial production it is machine to finish many works that harm to people as well as simple repetitious works In order to control the work of machine it requires some equipment to monitor their state The article introduces the distributed temperature supervisory control system the design method of the hardware circuit and software The system utilizes the low price strong function and good anti jamming ability of MCU For the distributed temperature monitoring system I proposed a temperature measurement program and made the design of specific hardware circuits and system software By the establishment of Server and Terminal the Server collects real time data transmits them to the Terminal displaying With the use of single chip AT89S52 adopting 2 ways digital temperature sensor DS18B20 collecting temperature data Server uses 8 bits LED to display temperature data As the result of the existence restriction of RS232 serial on the communication distance consequently it is a way to use RS232 to RS485 for long distance communications Hung on 485 bus through the MAX232 chip and MAX485 chip for Level Translator and RS232 Serial server transmits temperature data to the Terminal With the use of man machine interface temperature also can be displayed on the Terminal of the host By clicking buttons on the man machine interface temperature of the upper and the lower limits of DS18B20 can be regulated in the dynamic range of normal temperature PC is designed of Visual Basic language Keywords man machine interface Server Terminal Single Chip sensor MAX485 RS485 MAX232 RS232 III 1 第第 1 章章引言引言 随着 信息时代 的到来 作为获取信息的手段 传感器技术得到了显著的进 步 其应用领域越来越广泛 对其要求越来越高 需求越来越迫切 传感器技术已成 为衡量一个国家科学技术发展水平的重要标志之一 因此 了解并掌握各类传感器的 基本结构 工作原理及特性是非常重要的 1 11 1传感器的概述和应用前景传感器的概述和应用前景 由于传感器能将各种物理量 化学量和生物量等信号转变为电信号 使得人们可 以利用计算机实现自动测量 信息处理和自动控制 但是它们都不同程度地存在温漂 和非线性等影响因素 传感器主要用于测量和控制系统 它的性能好坏直接影响系统 的性能 因此 不仅必须掌握各类传感器的结构 原理及其性能指标 还必须懂得传 感器经过适当的接口电路调整才能满足信号的处理 显示和控制的要求 而且只有通 过对传感器应用实例的原理和智能传感器实例的分析了解 才能将传感器和信息通信 和信息处理结合起来 适应传感器的生产 研制 开发和应用 另一方面 传感器的 被测信号来自于各个应用领域 每个领域都为了改革生产力 提高工效和时效 各自 都在开发研制适合应用的传感器 于是种类繁多的新型传感器及传感器系统不断涌现 温度传感器是其中重要的一类传感器 其发展速度之快 以及其应用之广 并且还有 很大潜力 温度是一种最基本的环境参数 人民的生活与环境的温度息息相关 在工业生产 过程中需要实时测量温度 在农业生产中也离不开温度的测量 因此研究温度的测量 方法和装置具有重要的意义 测量温度的关键是温度传感器 温度传感器的发展经历 了三个发展阶段 传统的分立式温度传感器 模拟集成温度传感器 智能集成 温度传感器 目前 国际上新型温度传感器正从模拟式向数字式 从集成化向智能化 网络化的方向飞速发展 文章将介绍智能集成温度传感器 DS18B20 的结构特征及控制 方法 并对以此传感器 AT89C52 单片机为控制器构成的温度测量装置的工作原理及 程序设计作了详细的介绍 该装置适用于人民的日常生活和工 农业生产用于温度测 量 DS18B20 介绍及优点 由 DALLAS 半导体公司生产的 DS18B20 型单线智能温度传感器 属于新一代适配 微处理器的智能温度传感器 可广泛用于工业 民用 军事等领域的温度测量及控制仪 器 测控系统和大型设备中 它具有体积小 接口方便 传输距离远等特点 1 DS18B20 性能特点 DS18B20 的性能特点 采用单总线专用技术 既可通过串行口线 也可通过其 2 它 I O 口线与微机接口 无须经过其它变换电路 直接输出被测温度值 9 位二进制数 含符号位 测温范围为 55 125 测量分辨率为 0 0625 内含 64 位经过激 光修正的只读存储器 ROM 适配各种单片机或系统机 用户可分别设定各路温度 的上 下限 内含寄生电源 2 DS18B20 内部结构 DS18B20 内部结构主要由四部分组成 64 位光刻 ROM 温度传感器 非挥发的温度 报警触发器 TH 和 TL 高速暂存器 64 位光刻 ROM 是出厂前被光刻好的 它可以看作是该 DS18B20 的地址序列号 不同的器件地址序列号不同 3 DS18B20 控制方法 在硬件上 DS18B20 与单片机的连接有两种方法 一种是 Vcc 接外部电源 GND 接地 I O 与单片机的 I O 线相连 另一种是用寄生电源供电 此时 UDD GND 接地 I O 接单片机 I O 无论是内部寄生电源还是外部供电 I O 口线要接 5K 左右的上拉 电阻 CPU 对 DS18B20 的访问流程是 先对 DS18B20 初始化 再进行 ROM 操作命令 最后才能对存储器操作 数据操作 DS18B20 每一步操作都要遵循严格的工作时序和 通信协议 如主机控制 DS18B20 完成温度转换这一过程 根据 DS18B20 的通讯协议 须经三个步骤 每一次读写之前都要对 DS18B20 进行复位 复位成功后发送一条 ROM 指令 最后发送 RAM 指令 这样才能对 DS18B20 进行预定的操作 1 21 2课题目的和意义课题目的和意义 例如 在粮仓需要对粮食进行多点温度检测 以避免粮食的腐烂和变质 在造纸 纺织等行业中 需要测量旋转滚筒表面的多点温度 但在传统的多点温度检测系统中 大都采用模拟温度传感器 例如 AD590 一般经前端放大 A D 变换和数据修正等过程 经实践应用分析发现 传统电路设计上存在电源干扰 滤波不可靠 线路过于复杂 无屏蔽措施等不可靠因素 DS18B20 在芯片的内部自带模拟和数字转换电路的 使用 起来非常的方便 它采用单线传输技术 另外 温度的分辨率可以选择 9 到 12 位的分 辨率 因此采用单总线数字温度传感器 DS18B20 可将温度直接转化为串行数字信号供 微机处理 而且在单总线上可以挂多片 DS18B20 微机只需一根端口线就能与多片 DS18B20 进行通信 而且由于它体积小的优点 因此占用的 PCB 板面积很小 电路也很 好设计 因此 由单片机和 DSI8B20 构成的分布式多点温度检测系统改变传统的温度 采样模式 具有可靠性高 线路简单 测量精度高 功能便于扩展等优点 本设计应用性比较强 设计系统可以作为室内外温度监测系统 如果稍微改装可 以做生物培养液温度监测系统 热水器温度调节系统等等 课题主要任务是完成环境 3 温度检测 利用单片机实现温度调节并通过计算机实施温度监测 设计后的系统具有 操作方便 控制灵活等优点 为了提高对传感器的认识和了解 尤其是对温度传感器的深入研究以及其用法与 用途 基于实用 广泛和典型的原则而设计了本系统 本文利用单片机结合传感器技 术以及上位机而开发设计了这一温度监测系统 文中传感器理论 单片机实际应用有 机结合 详细地讲述了利用 DS18B20 传感器探测环境温度的过程 1 31 3课题的主要观点 研究方法课题的主要观点 研究方法 系统采用主从分布式 由一台上位机 PC微型计算机 下位机 单片机 多点温度数 据采集 组成两级分布式多点温度测量的巡回检测系统 下位机挂载在RS485数据线上 实现远距离通信 因此 多路数据采集器能够采集不同环境的温度 能够满足系统设 计要求 该系统采用RS232转RS485串行通讯标准 通过上位机 PC 控制下位机 单片机 进 行现场温度采集 上位机采用VB6 0和MSCOMM控件设计 制作人机交互界面 温度 值既可以送回主控PC进行数据处理 由显示器显示 也可以由下位机单独工作 实时 显示当前各点的温度值 对各点进行控制 下位机采用的是单片机基于数字温度传感 器DS18B20的系统 DSl8B20利用单总线的特点可以方便的实现多点温度的测量 本设计系统包括温度采集模块 系统控制模块 数据存储模块 显示模块 串口 通信模块 上位机显示控制模块六个部分 文中对每个部分功能 实现过程作了详细 介绍 整个系统的核心是进行温度监测 完成了课题所有要求 4 第第 2 2 章章方案比较与论证方案比较与论证 2 12 1设计思路设计思路 分布式温度监测系统是由微控制器获取多路温度传感器数据 并对其进行实时控 制 在设计之时首先要对整体架构要有个清晰地了解 针对控制现场的实时性和可靠 性要求 应着重考虑 MCU 的选型 时钟频率是否有特殊要求 内存以及 ROM 的需求 内部功能模块的特殊功能等 其次是温度传感器的选择 可以从两个方面来考虑 第 一 使用 AD 芯片对温度信号采样 第二 直接使用数字温度传感器 为了满足系统 的多功能以及可视化要求 考虑采取何种通讯方式和自控显示控制的方法 2 22 2方案设计比较方案设计比较 方案一 基于单片机 TCP IP 网络温度监测系统的设计 近年来 计算机网络技术发展迅速 以 Internet 和 Intranet 为应用背景的分布式计 算机技术也随之受到重视并被日益完善 作为这些技术的一个具体应用 远程监测与 故障诊断正开展得如火如荼 特别是随着信息技术和计算机网络技术的发展 远程监 测技术正在世界范围内兴起在这样的背景下 提出了一种简便的智能化网络监测系统 的设计方案 本系统基于 TCP IP 协议 可以在以太网中直接使用 主控制程序 TCP IP 协议栈 现场设备电路接口以太网接口控制电路 图 2 1 服务器结构图 图 2 1 所示为系统服务器结构图 它主要包含三大模块 5 1 现场温度测量接口 分别为 PT100 热电阻和 E 分度热电偶的接口 热电阻和热 电偶是工业上常使用的温度测量传感器 执行结构使用的是交流固态继电器 输出直 接对受控对象进行加热 接口电路简单方便 2 软件部分主要包括控制软件和通信软件 控制软件主要完成对底层设备信号的 采集和控制 主要包括 AD 采集程序 PWM 输出程序 系统初始化程序和人机接口程 序等 3 以太网接口的设计电路的设计采用 MCU 和网络接口卡 Network Interface Card NIC 网络接口卡通常称之为 网卡 网卡的工作原理就是整理计算机上将发送的数 据 并将数据分解为适当大小的数据包之后向网络发送出去 同时接收通过网络传来 的数据给计算机处理 对于网卡而言 每块网卡都有一个唯一的网络节点地址 即 48 位物理地址 占 6 个字节 用单片机控制以太网网卡进行数据传输 是当前令人感兴 趣的一个研究方向 通过单片机控制网卡编程就可以实现局域网内任意终端之间的通 信而完全抛开网络操作系统 即在脱离 PC 环境下实现网卡与其它微处理器之间的接口 从而建立基于非 PC 平台的局域网络 这里采用的有 Cygna1F020 单片机和网卡控制主 芯片 RTL8019AS 以下简称网卡 研究单片机在以太网卡数据通信中的应用 上位机 终端 程序相对下位机程序较简单 使用 Visual Basic 6 0 Winsock 控件 上位机主要完成的任务是对整个系统进行测试 它负责监督下位机的工作 不参与控 制 本方案的优点 基于 8 位单片机的嵌入式控制系统解决方案 并通过系统的软件 和硬件的设计完成 TCP IP 协议最基本的功能 能实现远程监测的目的 本方案的缺点 基于单片机的 TCP IP 协议栈的构建难于实现 工作量大 且对单 片机的性能有一定要求 由于该系统要实现远程控制 数据显示系统的实时性不高 方案二 基于单片机和 FPGA 的远程分布式温度监测系统 本方案是基于单片机和 Nios 软核的温度监测系统 其系统框图如图 2 2 所示 本系统采用 Dallas 单线数字温度传感器 DS18B20 采集温度数据 打破了传统的热电阻 热电偶再通过 A D 转换采集温度的思路 用 Atmel 公司的 FLASH 单片机 AT89S51 对数字信号进行处理和控制 通过 RS232 串口传到以 Nios 构成的嵌入式处理机中对 温度进行监视与报警 Nios II 的嵌入式 Web 服务器使用户可以通过 IE 浏览器浏览存 储在 FLASH 芯片中的网页 由于 CPU 本身是以软核的方式实现 其功能可根据需要 进行定制 非常灵活 6 多路 DS18B20单片机MAX232Nioss II 图 2 2 系统主框架图 此方案中下位机中不需要移植 TCP IP 协议 只要将获得的数据上通过串口传到上 位机中 下位机中温度采集电路如图 2 3 所示 而 Nios 入式上位机系统主要包括以 下几个部分 包括 Nios 软核 CPU 操作系统使用的定时器 网络协议栈使用的定时 器 CPU 同外围设备的接口 Avlaon 总线 EPCS4 用来在上电时对 FPGA 进行配置 FLASH 主要用来存放软件代码以及一些需要保存的参数 SRAM 用来在系统运行时的 代码和数据存储 网络接口芯片采用 Smsc 公司的 LAN91C111 芯片作为网络接口 该 器件是一个以太网控制器 实现了网络 7 层协议栈中的传输层和 MAC 层的功能 另外 它具有 10 100 Mb s 自适应 双工 半工自适应等功能 有很好的网络兼容性 采 用串口 UART 和单片机通信 图 2 3 温度采集电路 本方案的优点 采用 AT89S51 系列单片机 传感器 DS18B20 和 Nios 设计的远 程温度控制系统具有结构新颖 电路简单 体积小和控制方便等优点 可以广泛用于 电站 学校 医院等相关重点设备的温度远程监测 也适用于人体无法接近的高温或 危险场所的温度监测 7 本方案的缺点 由于 FPGA 选型的原因 Nios 嵌入式上位机的搭建存在一定困 难 方案三 基于单片机和 RS232 通信的分布式温度监测系统设计 该系统下位机由AT89S52单片机 温度采集系统 显示系统 数据存储模块和串行 通信模块组成 AT89S52单片机带有8kFlash闪存 可简化系统设计且性能可靠 温度 采集系统由多路DS18B20数字温度传感器同时检测多路温度 显示模块采用8位共阴极 LED数码管 用来显示通道数和当前的各通道温度测量值 串行通信模块由 MAX232 MAX485电平转换芯片和RS232 RS485构成 上位机采用VB Mscomm控 件设计人机操作界面 利用主机串口和下位机进行通信 系统框架图如图2 4所示 R RS S2 23 32 2 M MA AX X 2 23 32 2 M MA AX X 4 48 85 5 R RS S4 48 85 5R RS S4 48 85 5R RS S4 48 85 5R RS S4 48 85 5 下下位位机机1 1 下下位位机机2 2 下下位位机机3 3 下下位位机机4 4 图2 4 系统框架图 本系统的优点 对单片机的性能要求不是很高 因此采用一般的51系列单片机即 可 直接利用串口和主机通信 实时性高 没有因在以太网内数据传输而产生延时或 误码 因此抗干扰能力强 采用485通信 传输距离远 满足分布式的要求 硬件电路 简单 价廉 扩展方便 相对于传统的温度检测系统来说具有绝对的优势 2 32 3方案的确定方案的确定 从上面方案的比较来看 方案三不但满足功能要求 而且系统的实时性比较高 抗干扰能力也较好 性价比较高 根据以上方案的对比 以及根据实验环境和设备的 情况 综合考虑后 最终选定第3套方案 8 第第 3 3 章章整体电路设计整体电路设计 3 13 1设计思路与方法设计思路与方法 电路设计仿真软件有很多种 像 Multisim Proteus Protel 等 考虑使用 Proteus 进行 电路设计与仿真 不愧是一种简单而有效的方法 为何要选用 Proteus 1 它全部满足我们提出的单片机软件仿真系统的标准 并在同类产品中具有明 显的优势 2 具有模拟电路仿真 数字电路仿真 单片机及其外围电路组成的系统的仿 真 RS一232动态仿真 IC调试器 SPI调试器 键盘和 LCD系统仿真的功能 有 各种虚拟仪器 如示波器 逻辑分析仪 信号发生器等 3 目前支持的单片机类型有 68000系列 8051系列 AVR系列 PIC12系 列 PIC16系列 PIC18系列 Z80系列 HC11系列以及各种外围芯片 4 支持大量的存储器和外围芯片 总之该软件是一款集单片机和SPICE分析 于一身的仿真软件 功能极其强大 可仿真51 AVR PIC 软件选择后 然后就是要对系统功能模块化 把系统分成若干不同功能的模块 然后分别绘制所需的模块 因此根据实际情况 可以将本系统分为如下几个部分 温度采集模块 系统控制模块 数据存储模块 显示模块 串行通信模块 上位机显 示控制模块 下位机框架图如图3 1所示 9 主主机机 A AT T8 89 9S S5 52 2 数数据据采采集集 数数据据处处理理 数数据据上上传传 温温度度采采集集 D DS S1 18 8B B2 20 0 2 24 4C C0 02 2 温温度度显显示示 8 8位位L LE ED D 状状态态显显示示 绿绿 正正常常 红红 不不正正常常 蓝蓝 数数据据已已存存储储 R RS S4 48 85 5 M MA AX X4 48 85 5 R RS S2 23 32 2 M MA AX X2 23 32 2 上上位位机机显显示示 图3 1 下位机框架图 根据各基本模块的设计 设计了系统整体电路图 系统原理图请详见附录A 3 23 2基本功能模块电路基本功能模块电路 3 2 13 2 1温度采集模块温度采集模块 1 DS18B20基本介绍 该模块使用DS18B20数字温度传感器 没有采用传统的热敏电阻和AD转换等方式 进行温度采集 简化了电路结构 并且也提高了可靠性和稳定性 DS18B20可组网数 字温度传感器芯片封装而成 具有耐磨耐碰 体积小 使用方便 封装形式多样 适用于各种狭小空间设备数字测温和控制领域 外形图如图3 1所示 图3 2 DS18B20外型图 10 DS28B20内部存贮器 如图3 3示 由一个高速暂存RAM和一个非易失行 电可擦 除EERAM组成 后者存贮高低温度和触发器TH和TL 图3 3 DS18B20存贮器结构图 每一DS18B20包括一个唯一的64位长的ROM编码 由于多个传感器可以漏极开路 的形式挂载在一根总线上 因此主机搜索不同的ROM编码就可以找到不同的传感器 ROM编码格式如图3 4所示 主机进行ROM操作时 必须提供五种操作命令之一 1 Read ROM 读ROM 2 Match ROM 符合ROM 3 Search ROM 搜索ROM 4 Skip ROM 跳 过ROM Alarm Search 告警搜索 8 位 CRC 编码48 位序列号8 位产品系列编码 MSB LSB MSB LSB MSB LSB 最高有效位 最低有效位 图3 4 ROM编码格式 温度采集模块最重要的是要弄清传感器是怎样把温度进行数字化的 在DS18B20 内部完成提供0 5 的分辨率 温度读数以16位 符号扩展的二进制补码读数形式提供 数据在单线接口上串行发送 温度是以1 2 LSB 最低有效位 形式表示时 产生以 下9位格式 如图3 5所示 图3 5 DS18B20内温度数据格式 11 为了达到更高的精度 则在对DS18B20测温原理进行详细分析的基础上 采取直接读 DS18B20内部暂存器的方法 将DS18B20的测温分辨率提高到0 01 0 1 首先用读 暂存器指令 BEH 读出0 5 为分辨率的温度测量结果 然后切去测量结果中的最 低有效位 LSB 得到所测实际温度整数部分T1 然后用BEH指令读取计数器1的计 数剩余值M1和每度计数值M2 考虑到DS18B20测量温度的整数部分是以0 25 0 75 为进位界限的关系 实际温度T可以用下式计算得到 T T1 O 25 M2 M1 M2 2 温度采集模块电路 根据DS18B20技术参数 温度采集模块电路设计如图3 6所示 DS18B20采用 5V 电源供电 而不采用数据线供电的寄生电源供电形式 目的在于减少温度转换和数据 读取的时间 提高传感器的工作效率 DS18B20数据传输端口漏极开路 因此多个 DS18B20可以进行 线与 挂载在同一条数据线上 数据线使用上拉电阻连接到 VCC 以满足电平转换期间提供足够的电流 其中temp接单片机引脚P1 5 temp 14 0 DQ 2 VCC 3 GND 1 U2 DS18B20 VCC 5V 27 0 DQ 2 VCC 3 GND 1 U3 DS18B20 R4 4k7 R5 4k7 图3 6 温度采集电路 3 2 23 2 2系统控制模块系统控制模块 1 内部时钟电路 MCS 51芯片内有一个高增益反向放大器 XTAL1 XTAL2引脚分别为该反向放大 器的输入端和输出端 在芯片的外部通过这两个引脚跨接石英晶体振荡器和微调电容 形成反馈电路 就构成了一个稳定的自激振荡器 如图3 7所示 12 XTAL1 XTAL2 C1 65p C2 65p X1 CRYSTAL 图3 7 内部时钟电路 电路中的电容C1 C2的取值对振荡频率输出的频率值 稳定性及振荡电路起振速 度有少许影响 C1 C2可在20PF 100PF之间选择 外接陶瓷振荡器时典型取值为 47PF 取60PF 70PF时振荡器有较高的频率稳定性 晶体振荡频率可在1 2M 12M之间 选择 根据实际情况 选择11 0592MHZ 2 系统复位电路 MCS 51单片机的复位操作有两种方式 上电复位和上电按钮复位 通常因为系统 运行的需要 常常需要人工按钮复位 复位电路如图3 8所示 只需要将一个常开按钮 开关并联于上电复位电路 按下开关一定时间就能使RST引脚端为高电平 从而使单 片机复位 RST R1 4k7R2 4k7 C4 10u BAT15V 图3 8 系统复位电路 3 2 33 2 3数据存储模块数据存储模块 在此模块中 使用24C02作为扩展数据存储器 把DS18B20的ROM信息保存到里 面 1 24C02基本介绍 24C02是一个2K存储空间的COMS EEPROM 内部含有256个8位字节 16字节页 写缓冲器 它支持IIC总线数据传送协议 通过器件地址输入端A0 A1和A2最多可以实 现将8个24C02连接到总线上 对24C02进行操作 必须严格掌握读写时序 2 IIC总线工作原理 IIC总线在传送数据过程中共有三种类型信号 他们分别是 开始信号 结束信号 和应答信号 开始信号 SCL为高电平时 SDA由高电平向低电平跳变 开始传送数据 结束信号 SCL为低电平时 SDA由低电平向高电平跳变 结束传送数据 应答信号 接收数据的IC在接收到8bit数据后 向发送数据的IC发出特定的低电平 13 脉冲 表示已收到数据 CPU向受控单元发出一个信号后 等待受控单元发出一个应 答信号 CPU接收到应答信号后 根据实际情况做出是否继续传递信号的判断 若未 收到应答信号 由判断为受控单元出现故障 I2C规程运用主 从双向通讯 器件发送数据到总线上 则定义为发送器 器件接收 数据则定义为接收器 主器件和从器件都可以工作于接收和发送状态 总线必须由主 器件 通常为微控制器 控制 主器件产生串行时钟 SCL 控制总线的传输方向 并产生起始和停止条件 SDA线上的数据状态仅在SCL为低电平的期间才能改变 SCL 为高电平的期间 SDA状态的改变被用来表示起始和停止条件 数据存储模块电路设计如图3 9所示 SCK时钟线和SDA数据线经上拉电阻接 5V 电源 SCK 6 SDA 5 WP 7 U4 24C02B SDA SCK R6 4k7 R7 4k7 BAT3 5V 图3 9 数据存储模块 3 2 43 2 4显示模块显示模块 1 温度数据显示部分 图3 10所示模块使用8位一体共阴极数码显示管作为显示器 单片机输出信号不能 直接接入数码管 因为此时I O口输出电流并不能驱动数码管 因此必须在数码管输入 端接驱动 驱动的接法有多种 可以使用上面模块电路中所使用的方法 直接经上拉 电阻接到电源 还有一种方式就是接驱动芯片 满足信号的电平转换 此模块中采用 信号经驱动芯片74LS244输出到数码管 而单片机P0口输出信号作为数码管段选信号 显示数字或者字符 P2口输出信号作为数码管位选信号 用来选择哪个数码管亮或灭 其中后五位数码管用来显示温度数据 末尾两位为小数显示 第三位为带小数点的整 数显示 第六位为负数字符 显示 最高三位显示DS18B20编号 用来显示当前 DS18B20的温度数据 如 no 1 等编号 14 AA seg 18 seg 11 seg 12 seg 13 seg 14 seg 15 seg 16 seg 17 AA BB CC DD EE FF GG DP1 seg 11 seg 12 seg 13 seg 14 seg 15 seg 16 seg 17 seg 18 p0 0 p0 1 p0 2 p0 3 p0 4 p0 5 p0 6 p0 7 p2 0 p2 1 p2 2 p2 3 p2 4 p2 5 p2 6 p2 7 BB CC DD EE FF GG DP1 A0 2 A1 4 A2 6 A3 8 OE 1 Y0 18 Y1 16 Y2 14 Y3 12 U6 A 74LS244 A0 11 A1 13 A2 15 A3 17 OE 19 Y0 9 Y1 7 Y2 5 Y3 3 U6 B 74LS244 A0 2 A1 4 A2 6 A3 8 OE 1 Y0 18 Y1 16 Y2 14 Y3 12 U7 A 74LS244 A0 11 A1 13 A2 15 A3 17 OE 19 Y0 9 Y1 7 Y2 5 Y3 3 U7 B 74LS244 图3 10 显示模块 2 工作状态显示部分 led red led green speaker led blue D1 LED RED D2 LED GREEN LS1 SPEAKER R3 4k7 BAT2 5V D4 LED BLUE 图3 11 工作状态显示电路 如图3 11示 红色发光二极管D1用来表示当前工作温度范围超出设定值 并配合 扬声器LS1一起报警 绿色发光二极管D2表示当前工作温度范围正常 如果当前 DS18B20的ROM信息 64位 正确存储到24C02后 蓝色发光二极管D4亮 3 2 53 2 5串行通信模块串行通信模块 1 RS 232C接口标准 RS 232是个人计算机上的通讯接口之一 由电子工业协会 Electronic Industries Association EIA 所制定的异步传输标准接口 通常 RS 232 接口 如图3 12所示 以9个接脚 DB 9 或是25个接脚 DB 25 的型态出现 一般个人计算机上会有两组 RS 232 接口 分别称为 COM1 和 COM2 它适合于数据传输速率子0 20000bit s范 围内的通信 15 RS 232 C 标准最初是远程通信连接数据终端设备 DTE Data Terminal Equipment 与 数据通信设备 DCE Data Communication Equipment 而制定的 RS 232C 标准中所提到 的 发送 和 接收 都是站在 DTE 立场上 而不是站在 DCE 的立场来定义的 由于在 计算机系统中 往往是 CPU 和 I O 设备之间传送信息 两者都是 DTE 因此双方都能 发送和接收 图 3 12 串口外形图 2 RS 485 协议简介及 MAX485 芯片介绍 RS 485 是美国电气工业联合会 EIA 制定的利用平衡双绞线作传输线的多点通讯 标准 它采用差分信号进行传输 最大传输距离可以达到 1 2 km 最大可连接 32 个 驱动器和收发器 接收器最小灵敏度可达 200 mV 最大传输速率可达 2 5 Mb s MA X485 接口芯片是 Maxim 公司的一种 RS 485 芯片 采用单一电源 5 V 工作 额 定电流为 300 A 采用半双工通讯方式 它完成将 TTL 电平转换为 RS 485 电平的 功能 图3 13所示为串行通信模块 MAX232是TTL RS232电平转换的典型芯片 按照 芯片的推荐电路 取振荡电容为uF级的时候 若输入为5V 输出可以达到 14V左右 输 入为0V 输出可以达到14V 在扇出电流为20mA的时候 处处电压可以稳定在 12V和 12V 其中11 12号引脚分别接MAX485数据输出引脚和数据输入引脚 9号引脚可以 用来控制MAX485芯片 13 14号接9针RS232串口头2 3号引脚 MAX485的6 7号 引脚接单片机的串行口RXD TXD 16 图3 13 串行通信模块 MCS 51系列单片机串口通信方式有4种 这里采用方式1 8位的UART 一帧数据 一般为10位 包括1个起始位和1个停止位 帧格式如下 图3 14 帧格式 数据通过MAX232电平转换芯片 主机 终端 和单片机 服务器 就能实现通 信 由于数据输入输出占用不同的数据线 因此也实现了单片机和主机双工通信 3 2 63 2 6单片机引脚分配图单片机引脚分配图 图3 15为单片机引脚分配图 引脚分配说明如下 XTAL1 XTAL2分别接时钟振荡电路的输入输出 RST为复位信号输入端 SCK SDA为存储器24C02的时钟线 数据线 P1 2 P1 3 P1 7接绿 红 蓝发光二 极管 P1 4接扬声器 P1 5为多路DS18B20数据输入输出及控制端口 P0 P2为数码 管控制端口 P3 0 P3 1为串行输入输出端口 经MAX485和MAX232电平转换后 连 接到RS232串口 17 p0 0 p0 1 p0 2 p0 3 p0 4 p0 5 p0 6 p0 7 p2 7 p2 0 p2 1 p2 2 p2 3 p2 4 p2 5 p2 6 led green led red temp1 speaker led blue temp2 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0 0 AD0 39 P0 1 AD1 38 P0 2 AD2 37 P0 3 AD3 36 P0 4 AD4 35 P0 5 AD5 34 P0 6 AD6 33 P0 7 AD7 32 P1 0 T2 1 P1 1 T2EX 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 P3 0 RXD 10 P3 1 TXD 11 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 7 RD 17 P3 6 WR 16 P3 5 T1 15 P2 7 A15 28 P2 0 A8 21 P2 1 A9 22 P2 2 A10 23 P2 3 A11 24 P2 4 A12 25 P2 5 A13 26 P2 6 A14 27 U1 AT89c52 XTAL1 RST SDA SCK XTAL2 MCU RXD MCU TXD 图3 15 单片机引脚分配 上面5个模块将下位机硬件分成了几个部分 每个部分都对硬件做了较详细的介绍 至于下位机整体的电路图请详见附录A 第第 4 章章人机交互界面设计人机交互界面设计 4 14 1UI 设计介绍设计介绍 4 1 14 1 1什么是什么是UI UI即User Interface 用户界面 的简称 UI设计则是指对软件的人机交互 操作逻辑 界面美观的整体设计 好的UI设计不仅是让软件变得有个性有品味 还要让软件的操 作变得舒适 简单 自由 充分体现软件的定位和特点 软件设计可分为两个部分 编 18 码设计与UI设计 编码设计大家都很熟悉 但是 UI设计还是一个很陌生的词 即使一 些专门从事网站与多媒体设计的人也不完全理解UI的意思 UI的本意是用户界面 是 英文User和 interface的缩写 从字面上看是用户与界面2个组成部分 但实际上还包括 用户与界面之间的交互关系 4 1 24 1 2界面设计界面设计 界面设计是人与机器之间传递和交换信息的媒介 包括硬件界面和软件界面 是计算机科学与心理学 设计艺术学 认知科学和人机工程学的交叉研究领域 近 年来 随着信息技术与计算机技术的迅速发展 网络技术的突飞猛进 人机界面设 计和开发已成为国际计算机界和设计界最为活跃的研究方向 在漫长的软件发展 中 界面设计工作一直没有被重视起来 做界面设计的人也被贬义的称为 美工 其 实软件界面设计就像工业产品中的工业造型设计一样 是产品的重要买点 一个友好 美观的界面会给人带来舒适的视觉享受 拉近人与电脑的距离 为商家创造卖点 界 面设计不是单纯的美术绘画 他需要定位使用者 使用环境 使用方式并且为最终用 户而设计 是纯粹的科学性的艺术设计 检验一个界面的标准即不是某个项目开发组 领导的意见也不是项目成员投票的结果 而是最终用户的感受 所以界面设计要和用 户研究紧密结合 是一个不断为最终用户设计满意视觉效果的过程 4 1 34 1 3界面设计流程界面设计流程 用户界面设计在工作流程上分为结构设计 交互设计 视觉设计三个部分 结构设计也成概念设计 Conceptual Design 是界面设计的骨架 通过对用 户研究和任务分析 制定出产品的整体架构 在结构设计中 目录体系的逻辑分类 和语词定义是用户易于理解和操作的重要前提 交互设计的目的是使产品让用户能简单使用 任何产品功能的实现都是通过 人和机器的交互来完成的 因此 人的因素应作为设计的核心被体现出来 在结构设计的基础上 参照目标群体的心理模型和任务达成进行视觉设计 包 括色彩 字体 页面等 视觉设计要达到用户愉悦使用的目的 4 24 2使用使用 Visual Basic 语言设计图形界面语言设计图形界面 4 2 14 2 1VBVB图形界面开发特点图形界面开发特点 进行图形界面设计的开发语言有很多 像Java VC Matlab等 作为一种面向 对象的程序设计语言 与目前日常的程序设计语言相比 VB6 0在图形开发方面具有 如下特点 19 1 系统提供了功能强大的图形方法 随着学习的深入 会发现VB6 0系统提供了功能强大的图像方法 利用这些图形 方法 用户不但可以再窗体 图片框上实现基本的绘图 而且还能够实现对位图的处 理 用户设定空间较大 VB6 0中 将屏幕和绘图区进行了区分 绘图区作为屏幕的一部分 可以由用户 设定其大小和在屏幕上的位置 同时用户可以根据需要在绘图区中设定合适的坐标系 此外 用户也能够利用VB6 0提供的绘图属性 丰富自己的图形程序 2 图形编程不依赖于硬件 VB6 0图形语句功能的实现依赖于Windows系统中用于控制屏幕和打印机中的驱 动程序 而不是程序运行系统的硬件设置 因此 用VB6 0开发出的图像程序是不依 赖于系统硬件的 这将有利于开发具有高可移植性的图形程序 3 开发流程简单 易于掌握 与其他程序设计语言相比 VB6 0相对更为简单 因此 对于初学者来说更容易 掌握 4 2 24 2 2VBVB应用程序的基本设计步骤应用程序的基本设计步骤 1 分析设计任务 编制设计方案 2 进行工程界面设计 创建工程 创建窗体 设计程序界面 3 代码设计 4 调试工程 5 保存工程 6 生成可执行文件 4 2 34 2 3MSComm控件控件 VB5 0 6 0 的 MSComm 通信控件提供了一系列标准通信命令的接口 它允许建立 串口连接 可以连接到其他通信设备 如 Modem 还可以发送命令 进行数据交换 以及监视和响应在通信过程中可能发生的各种错误和事件 从而可以用它创建全双工 事件驱 动的 高效实用的通信程序 在开始使用 MSComm 控件之前 需要先了解其属性 事件或错误 每个使用的 Mscomm 控件对应着一个串行端口 如果应用程序需要访问多个串行端口 必须使用 多个 Mscomm 控件 可以在 Windows 控制面板 中改变端口地址和中断地址 Mscom m 控件属于 ActiveX 控件 在使用前应首先在 工程 部件 对话框中选择 Microsoft Comm Control 6 0 复选框 将该控件添加到工具箱中 20 MSComm 控件有很多重要的属性 下面介绍几个常用的属性 CommPort 设置并返回通讯端口号 Settings 以字符串的形式设置并返回波特率 奇偶校验 数据位 停止位 PortOpen 设置并返回通讯端口的状态 也可以打开和关闭端口 Input 从接收缓冲区返回和删除字符 Output 向传输缓冲区写一个字符串 4 34 3界面设计界面设计 为实现界面基本功能 使用 Visual Basic 语言设计界面 MSComm 控件来实现串 口通信 4 3 14 3 1界面基本功能描述界面基本功能描述 1 启动界面时 完成串口的初始化 2 界面能实时显示当前温度数据 3 显示当前串口编号 并能选择串口进行通信 4 显示工作范围内温度的最大值和最小值 5 Start 按钮能发送请求信号 连接到单片机 收到单片机的回复信号后 接收 单片机发送过来的温度数据 6 Stop 按钮能阻止串口接收数据 并清零文本框显示 7 在最大值 最小值文本框处写入数据后 点击 Write 按钮能写最大值和最小值 到单片机 动态改变 DS18B20 的工作温度 4 3 24 3 2界面式样界面式样 对界面功能进行分析后 抽象出界面原型 调用的界面控件如表 4 1 所示 表 4

温馨提示

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

最新文档

评论

0/150

提交评论