您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > Ffgckddelphi课程设计报告
生命是永恒不断的创造,因为在它内部蕴含着过剩的精力,它不断流溢,越出时间和空间的界限,它不停地追求,以形形色色的自我表现的形式表现出来。--泰戈尔河南机电高等专科学校课程设计报告书课程名称:DELPHI与电气控制课题名称:温度采集专业:生成过程自动化班级:过控082学号:061416217姓名:张艳丽2010年12月20日设计任务书一、设计任务通过利用DS18B20做温度检测传感器,下位机AT89C51单片机,上位机PC和串口线设计城的一个温度采集系统,实现对温度的采集和控制.通过DS18B0检测到的温度经单片机处理通过串口线发送给上位机,上位机接收到数据后经处理显示在用DELPHI开发软件编写的一个监控软件上,直接显示现场温度,现场时间显示,并设置报警温度值,若温度过高(监控信号为红色闪烁)就立即报警给出信号,相关技术人员立即到现场解决出现的问题,从而保证生产管理的安全,温度正常(监控信号为白色)继续监控,当温度达到上限/下限时,界面设定的状态自动显示低温(蓝色)/高温(红色)/正常(绿色),并弹出低温/高温警报对话框,从而达到对温度的采集和智能监控,此系统能够满足现代生产生活的需要,效率高,具有较强的稳定性和灵活性。二、设计方案及工作原理用DELPHI做一个监控界面在上位机用来显示现场温度,以及当前温度处于何种状态:低温、正常或者是高温,当温度超过所设置的温度是发出相应的信号给以提示,从而能够及时处理当前所发生的问题。本次设计利用DS18B20做温度传感器,DS18B20是单线数字温度传感器,与微处理器之间采用串行数据传送,一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,其内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。测量温度范围为-55°C~+125°C,在-10~+85°C范围内,精度为±0.5°C。DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待16~60微秒左右,后发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功。采集到的数据通过串行口传送给AT89S52单片机,经处理传送到SUBF等待上位机接收,上位机接收到数据后通过软件直接显示十六进制数据。本系统采用单片机不间断的发送和接收数据,实现动态扫描,上位机通过检测当前数据是否与设定值相同来发出不同的信号,从而实现对温度的准确采集和监控。串口线用RS-232做系统总线,RS-232-C接口(又称EIARS-232-C)RS-232-C有25条线,,分为5个功能组,包括4条数据线,11条控制线,3条定时线,7条备用线和未定义线。本系统通过对现场温度采集、处理、发送的模式实现对温度准确的采集和控制。目录第一章、系统设计要求和解决方案第二章、硬件实现第三章、软件实现第四章、缺点及可能的解决方法第五章、心得体会附录一、参考文献第一章系统设计要求和解决方案一.系统设计要求(1)设计本系统主要用于现场温度采集并通过RS-232发送上位机给人以直观的显示,了解当前现场的温度。为此应使系统稳定、准确、快速的发送数据,上位机能够准确的接收数据,并显示在当前界面,使系统人性化。(2)接收DS18B20的数据是用AT89C51单片机处理的,这种单片机处理数据快速、稳定,能更好的确保系统的稳定性。(3)现场温度检测选用了DS18B20温度传感器,采用此温度传感器首先要了解温度传感器的适用范围、环境、测试精度、特性等一切有关参数。要求在所测试的环境中能够不间断的测试,把现场的温度接收,通过单线发送给单片机,要保证测试准确无误。(4)通过SPCOMM控件实现上位机与单片机的通信。二.解决方案1,通过SPCOMM控件实现上位机与单片机的通信,因为SPCOMM控件具有一下特点:(1)属性CommName:控件名,可填写COM1,COM2,…等串口的名字,为字符型变量。BaudRate:设定波特率,如可为9600,4800等,可以在串口打开后更改波特率。ParityCheck:是否选择奇偶校验。ByteSize:字节长度,根据实际情况设定为5,6,7,8等。Parity:奇偶校验位。StopBits:停止位的位数。(2)方法Startcomm:用于打开串口,当打开失败时通常会报错。StopComm:过程用于关闭串口,没有返回值。(3)函数WriteCommData(pDataToWrite:PChar;dwSizeofDataToWrite:Word):boolean送一个字符串到写线程,发送成功返回true,执行此函数将立即得到返回值,发送操作随后执行。pDataToWrite是要发送的字符串,dwSizeofDataToWrite是发送的长度。(4)事件OnReceiveData:procedure(Sender:TObject;Buffer:Pointer;BufferLength:Word)ofobject系统中SPCOMM的设置为:CommName:Com1;BaudRate:9600ParityCheck:None;ByteSize:8;StopBits:1;以实现能与下位机串口通信。2,用AT89C51做下位机是因为它能够提供以下标准功能:4k字节的flash闪存,128字节内部RAM,32个I/O口线,两个十六位定时器/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路,同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节点工作模式。空闲方式停止CPU的工作,但允许RAM,定时器/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的数据,从而保证数据稳定存储和处理。3,采用DS18B20虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题:小的硬件开销需要相对复杂的软件进行补偿,由于DS18B20与微处理器间采用串行数据传送,因此,在对DS18B20进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。对DS18B20操作部分最好采用汇编语言实现。在DS18B20的有关资料中均未提及单总线上所挂DS18B20数量问题,容易使人误认为可以挂任意多DS18B20,在实际应用中并非如此。当单总线上所挂DS18B20超过8个时,就需要解决微处理器的总线驱动问题,在用DS18B20进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。在DS18B20测温程序设计中,向DS18B20发出温度转换命令后,程序总要等待DS18B20的返回信号,要保证DS1820接触良好不能断线,防止程序读该DS18B20时,没有返回信号,程序进入死循环。第二章硬件实现一、以单片机(AT89S52)为核心的温度采集系统设计1、AT89S52功能特性描述:AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。AT89S52引脚图如下:2、温度传感器DS18B20DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。1、DS18B20产品的特点(1)、只要求一个端口即可实现通信。(2)、在DS18B20中的每个器件上都有独一无二的序列号。(3)、实际应用中不需要外部任何元器件即可实现测温。(4)、测量温度范围在-55。C到+125。C之间。(5)、数字温度计的分辨率用户可以从9位到12位选择。(6)、内部有温度上、下限告警设置。2、DS18B20的引脚介绍TO-92封装的DS18B20的引脚排列见图1,其引脚功能描述见表1。(底视图)图1表1DS18B20详细引脚功能描述序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。3VDD可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。3.DS18B20的使用方法由于DS18B20采用的是1-Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。DS18B20采用外部供电方式,单总线长度也不宜超过80M,否则也会影响到数据的传输。在实际应用中还可以使用一个MOSFET将I/O口线直接和电源相连,起到上拉的作用。对DS18B20的设计,需要注意以下问题(1)对硬件结构简单的单线数字温度传感器DS18B20进行操作,需要用较为复杂的程序完成。编制程序时必须严格按芯片数据手册提供的有关操作顺序进行,读、写时间片程序要严格按要求编写。尤其在使用DS18B20的高测温分辨力时,对时序及电气特性参数要求更高。(2)测温电缆线建议采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。DS18B20在三线制应用时,应将其三线焊接牢固;在两线应用时,应将VCC与GND接在一起,焊接牢固。若VCC脱开未接,传感器只送85.0℃的温度值。(3)实际应用时,要注意单线的驱动能力,不能挂接过多的DS18B20,同时还应注意最远接线距离。另外还应根据实际情况选择其接线拓扑结构。DS18B20实际图形如下:3、显示模块在系统运行的过程中,系统要能够显示实时的温度及在设置上、下限是能够显示当前设置。我们考虑以下显示方案。使用传统的数码管显示。数码管具有:低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高低温、对外界环境要求低、易于维护,同时其精度比较高,称重快,精度可靠,操作简单。数码管采用BCD编码显示数字,程序编译容易,资源占用较少。4、控制模块温度采集后存储在EEPROM里面的上、下限设定值进行比较,得到控制的结果。本系统采用两路继电器来负责上限和下限的控制,实现对实时温度的控制。Q2PNPR41KD5IN4007VCC12J1CON2VCCP1212345JDQ1JDQ5、温度采集DS18B20支持“一线总线”接口,测量温度范围为-55°C-
本文标题:Ffgckddelphi课程设计报告
链接地址:https://www.777doc.com/doc-2873560 .html