毕业设计论文_多点温度巡回检测系统.doc_第1页
毕业设计论文_多点温度巡回检测系统.doc_第2页
毕业设计论文_多点温度巡回检测系统.doc_第3页
毕业设计论文_多点温度巡回检测系统.doc_第4页
毕业设计论文_多点温度巡回检测系统.doc_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

毕业论文 (2007届)多点温度巡回检测系统学生姓名: _* 学 号: 院 系: 机电工程系 专 业: _自动化 指导教师: 完成日期: i多点温度巡回检测系统摘要用一个自然段就可以了,我帮你合并了一下,并简单修正了一下,你自己再斟酌并把语句尽量再通顺通顺。摘 要本设计为多点温度巡回检测系统,系统由上位机、下位机、通讯三部分组成。采用以计算机作为上位机,以单片机为核心的仪器作为下位机,再加上通讯来完成设计。该系统是利用多台下位机来采集分布在不同位置的温度值,实现多点的测量,通过网络与计算机通讯,解决了温度测量中分布与多点的问题,并且由计算机来实现对温度的集中监视与管理。多点温度巡回检测以计算机为平台设计的温度测量管理软件对整个系统进行统一管理,并对下位机可进行系统参数的设定;实现对多点温度的采集、数据处理、实时显示、报表,打印等功能。下位机主要以单片机at89c52为核心,用small rtos51作为软件开发平台,实现对多点温度进行巡回检测,包括温度转换、温度设定、显示以及报警等功能,同时实现与上位机的通信。通讯采用串口的方式,以应用于电子控制器上的一种通用语言modbus协议来实现,便于联网与网络管理。关键词 温度检测;高精度;small rtos51;串口;modbusthe cycling multi-point temperature detection systemabstractthe design of the cycling multi-point temperature detection system uses computers and microcontrollers as pcs and lower computers respectively, together with communications between them.this system adopts several lower computers to acquire the temperature, distributing in different positions, and solves the problem of distribution and different points in the measurement of temperature through computer communications network, monitoring and management of the temperature can also be reached.the cycling multi-point temperature detection system consists of pcs, lower computers and communications, and manages the entire system by software, realizing the functions just as acquisition, data processing, real-time display, report, print of multi-point temperature and so on. the core of lower computers is at89c52 mcu. the software in the instrument adopts small rtos51. this part implements the cycling detection of multi-point temperature, including the functions of conversion, setting, display, alarm and communications. the communications bases on modbus protocol, making use of serial port mode, and then puts interconnection and management of network into effect.keywords temperature detection; high precision; small rtos51; serial port; modbus目 录中文摘要 .i英文摘要ii1前言12系统设计12.1系统要求12.2温度传感器及其测温原理12.1.1分立式式温度传感器12.1.2模拟集成温度传感器22.1.3集成数字化温度传感器22.1.4系统分析和测温传感器的选择22.2系统方案的确定33多点温度巡回检测系统的硬件设计43.1系统结构与各功能模块43.2 ad5906321 ad590的性能特点与工作原理6322 ad590的应用73.3 数据采集及处理模块73.3.1 at89c52简介83.3.2 通道选择的实现83.3.3 模数转换的实现93.4 显示报警及操作模块93.4.1 液晶显示93.4.2 报警模块103.4.3 按键模块103.5 数据通讯模块104多点温度巡回检测系统的软件设计114.1下位机软件程序设计114.1.1下位机程序开发方法简介114.1.2 small rtos5l简介114.1.3 下位机程序设计的实现124.1.4 串口通讯及协议134.2 上位机温度控制软件设计145系统测试与分析175.1通道选择调试175.2温度测量175.3上位机与下位机通讯调试176系统的抗干扰措施186.1 下位机的抗干扰措施186.2 数据通讯校验187系统的进一步发展方向198参考文献199附录2010致谢2325251 前言 温度是科学技术中最基本的物理量之一,物理、化学、生物等学科都离不开温度。在工农业生产和科学研究中,诸如航空抗天、电力、化工、制药、石油、食品工程等领域,温度作为最普遍、最重要的操作参数之一。例如在许多电子仪器设备中,其要在一定的温度范围内运行,否则轻则不能正常工作,重则烧坏设备;在石油冶炼、化工生产、生物制药领域,它们是利用化学反应来生产产品,其中温度是作为重要的反应条件;如果没有一个合适的温度,粮仓内的粮食就会发霉,酒类的品质就无法保障,许多食品将无法保存。由此可见,温度的检测及其控制对生产和研究非常重要。在工农业生产和科学研究的许多场合,特别是在大规模的工农业生产中,需要对多点且分布于不同位置温度的进行检测,温度的多点巡回检测已成为一个必不可少的环节。目前,市场上有许多温度巡回检测仪,其设计精度一般都已满足现在测量的要求,然而其支持的测温点数量有限,对温度的数据也缺少必要的管理。用一个系统来管理控制大规模温度检测显得十分重要 2 系统设计 2.1系统要求1.支持16点ad590温度传感器(或热电阻);2.温度能够提供0.1度分辨率;3.检测范围-50100;4.检测绝对精度保证0.5度以上;5.支持rs485通讯,支持modbus协议,上位机可以进行设定及读操作。2.2温度传感器及其测温原理 传感器属于信息技术的前沿尖端产品,启重要作用就如同人体的五官。温度传感器在工农业生产、科学研究和生活领域获得了广泛的应用,启数量居各种传感器之首。目前国际上新型温度传感器正从模拟式向数字式,从集成化向智能化、网络化的方向发展。温度传感器大致经历了三个发展阶段:传统的分立式温度传感器;模拟集成温度传感器(亦称单片集成温度传感器);智能集成温度传感器(亦称数字温度传感器)。2.1.1 分立式式温度传感器 传统的热电偶、热电阻、热敏电阻及半导体温度传感器,均属于分立式温度传感器,传感器本身就是一个完整的、独立的感温元件。此类传感器通常要配温度变送器,以获得标示准的模拟量(电压或电流)输出信号。使用时还需配上二次仪表,才能完成温度测量及控制功能。分立式温度传感器根据敏感材料不同又可分成热电阻式和热敏电阻式,是利用一些材料的电阻随温度变化的性质,通过测量敏感材料的电阻来确定被测的温度。热电阻式一般用金属材料制成,如铂、铜、镍等。热敏电阻是以半导体材料制成的陶瓷器件,如锰、镍、钴等金属的氧化物与其它化合物按不同配比烧结而成。分立式温度传感器的主要缺点是外围电路比较复杂、测量精度较低分辨力不高、需进行温度校准(例如非线性校准、温度补偿、传感器标定等),另外它们的体积较大、使用也不够方便,因此,分立式温度传感器将逐渐被淘汰。2.1.2 模拟集成温度传感器 集成传地器是采用硅半导体集成工艺而制成的,因此亦称硅传感器或单片集成传感器。模拟集成温度传感器是在20世纪80年代问世的,它是将温度传感器集成在一个芯片上,可完成温度测量及模拟信号输出功能的专用ic它属于最简单的一种集成温度传感器,模拟集成温度传感器的主要特点是功能单一仅测量温度)、测温误差小、价格低、响应速度快、传输距离远、体积小、微功耗适合远距离测温、控温不需要进行非线性校准,外围电路简单,它是目前在国内外应用最为普遍的种集成传感器。典型产品有ad590、ad592、tmp17、lml35等。2.1.3 集成数字化温度传感器 温度检测的传统方法是使用模拟传感器,那么一个温度量要经过感温元件、测量电路、放大电路、模数转换电路之后才能得到相应的数字量。这样设计者须考虑的线路环节较多相应测温装置中元器件数量降不下来,随之影响产品的可靠性和体积微缩化。而且模拟信号在长距离传输过程中,如何抗电磁干扰是一个难以解决的问题。对于多点温度检测的场合,各被测点到测试装置之间引线距离往往不同。还有各敏感元件参数的不一致性都是造成误差的原因。把被测温度这一非模拟量转换成数字量将其处理过程的多个环节集成在单片ic器件内部,是解决传统温度检测方法弊病的理想途径。 与模拟传感器相比由于采取高集成度设计,使数字式传感器在可靠性、抗干扰能力以及器件微小化方面都有明显的优点但受半导体器件本身限制。数字式传感器还存在一些不够理想的地方。比如实际应用时需加修正值,剩温范围不宽,一般为,-50+150。虽然存在一些不足,但是充分利用微处理技术发展数字化、集成化和自动化的温度传感器仍是温度传感器的发展方向之一2.1.4 系统分析和测温传感器的选择温度是许多监控系统中的一个重要参数,比如在粮食存储过程中,为了保证粮食的存储品质,必须实时检测储存粮食的温度。过去粮食温度的检测是靠人工手测进行,不但测试速度慢、测试精度低,而且人员劳动强度非常大。由于粮库大部分是由数个容积较大的平仓、筒仓等组成这些粮仓都高约二十米、直径达十米以上,对它的温度检测除了要求解决被测参数技术问题外(如精度,可靠性等),从系统结构而言,就是解决多点和分布的问题。多点和分布也同样是其它测控系统所面临的问题。像无人职守的机站会分布在很大的范围内,各机站与监控中心的距离很远,数据必须通过远程传输进行交换。多点温度巡回检测系统正是针对上述问题而研制的。系统分析:1温度测量范围 在粮仓、楼宇、机站等场合测量温度范围一般为周围环境温度的变化范围。温传感器的测温范围在50+150之间,就可以满足测量需要。2多点温度数据采集 多点测温过程中主要有两个问题:一个是各个测温点的编码问题另一个是各个测温点温度数据的采集、处理问题。测温点的选择通常是通过各路开关的导通和关断来实现的。 测温点温度数据的采集,处理过程会随着测温传感器的不同而不同。选用分立元件作为传感器,如热电阻,热电偶,其电路相对复杂,再则是对多路温度进行检测,其电路就会更加复杂;而选用模拟的温度传感器ad590,就会精简大量的硬件设计,且达到了精度0.5度的要求,用此方案结构清晰,选择测温范围是55+125,完全符合系统的要求。3测温点分布 针对测温点分布范围较广这个特点,系统由下位机和上位机构成一个分布式的测量系统。每一台下位机采集和处理多点的温度信息,然后通过远程通信模块把温度信息传到上位机。根据测温点的分布情况,可以灵活的决定下位机数量的多少。 由于信息传输的距离较远在传输过程中可能会遇到各种各样的干扰,远程传输的可靠性就是一个必须要解决的问题。在这个系统中是可通过频移键控的调制解调器,把数字信号调制成不同频率的模拟信号来进行传输。而且通过调制解调器也有利于系统进行扩展和无线通信。4集中监视和管理 计算机测最控制系统的优势之一就是集中监控和管理。系统中由上位机的测温管理软件统一管理卜位机对测温点参数进行设置、巡回检测各测温点温度、显示当前温度、对超限温度报警显示、可以查询温度报表和历史曲线。其运行环境为microsoft windows 2000/xp。有良好的人机界面、通用性好、操作方便。2.2 系统方案的确定根据对系统需求的分析,系统主要分为四个部分:分别是测温点、数据采集处理模块、远程通信模块和测温管理软件,见图2.1所示。把图的排号格式规范一下,都改为:图2.1格式,不要使用2-1格式。图2.1 系统框架其中测温点有ad590作为传感器,它把温度信号转换为模拟信号;温度采集处理模块主要由单片机at89c52构成,完成对数据的读取、处理及传输,此温度采集处理模块最多可处理16路温度值。通讯模块是通信模块分下位机通信接口和上位机通信接口两部分。下位机利用at89c52单片机的串行口传输和接收数据数据从单片机的串行口出来以后经过电平转换接口(485转换为232接口)到达上位机的rs-232串行口。测温管理软件运行在上位机上,对整个的测温过程进行管理,包括系统参数设置、巡回检测各个测温点温度并实时显示温度信息和报警信息,以及温度报表的管理等等。3 多点温度巡回检测系统的硬件设计3.1系统结构与各功能模块多点温度巡回检测系统硬件结构,如图3-1所示。系统是由一台中央计算机(上位机)和数台由单片机构成的测温模块(下位机)组成二级主从分布式微机测量系统。上位机是系统的核心,在它的统一管理和协调指挥下,系统合理有序的工作。它的主要功能为:1、实时显示模块:对下位机的数据及运行状态实时监控。2、数据管理模块:数据管理包括数据保存和对数据操作,可以实现查询,插入,删除等功能。图3-1 多点温度巡回检测系统的硬件结构框图3、打印输出模块:可以输出报表等数据。4、通讯模块:与下位机通讯,搜集数据及命令操作。下位机主要由at89c52单片机构成,完成温度的采集、处理和传输。下位机的数量和一个下位机测量多少个温度点,都可以进行灵活的设定。系统最大可挂247个下位机,下位机最多可巡检16个温度值。下位机的硬件框图如图3-2所示下位机要实现的功能为:1、温度采集:温度采集是系统的第一个步骤,把温度信号转化为电信号,以便对温度进行测量,计算。2、通道选择:通道选择是系统的重要环节,可以完成巡回检测及定点检测。3、模数转化:由于温度采集所得到的信号是模拟信号,需要把它转化为数字信号,给单片机处理。4、显示和键盘:显示即提供操作界面,又是状态提示;键盘提供输入设定。5、通讯:与上位机通讯,提供数据,且接受上位机指令控制。上位机和下位机之间的通讯是通过电平转化电路实现,因为计算机的串行口电平与单片机的接收和输出电平是不同的,需要转换,即232接口与485接 图3-2 下位机硬件结构口的转换。3.2 ad590 ad590是由美国哈里斯(harris)公司、模拟器件(adi)等生产的恒流源式模拟集成温度传感器。它兼有集成恒流源和集成温度传感器的特点,具有测量误差小、动态阻抗高、响应速度快、传输距离远、体积小、微功耗等优点,适合远距离测温、控温,不需要进行非线性校准。321 ad590的性能特点与工作原理ad590属于采用激光修正的精密集成温度传感器。该产品有3种封装形式:to-52封装、陶瓷封装(测温范围是55150)、to-92封装(测温范围是070)。ad590系列产品的外形及符号如图4所示。这类器件的外形与小功率晶体管相仿,共有3个管脚:1脚为正极,2脚为负极,3脚接管壳。使用时将3脚接地,可起到屏蔽作用。本设计使用的ad590为to52,其测温范围是55150,最大非线性误差为0.5。图3-3 ad590外形与符号 图3-4 25时电流与温度关系ad590的电流温度(i-t)特性曲线如图5所示,热力学温度值与摄氏温度值换算关系为: (1)322 ad590的应用本设计在温度巡回检测中对ad590进行应用,其硬件图如图3-5所示。图3-5 ad590温度采集ad590是恒流源式模拟集成温度传感器,要使其正常工作,其两端压差需在4v30v范围内,右图中vcc电压在 11v左右。为了使有效的控制给不同ad590送电,采用两级控制。只有当8550的基极为低电平时,8550就导通,给ad590供电,由于vcc的电压为11v左右,因此加2803,在低电平时2803阻断,让8550基极高阻关断给ad590供电,当高电平时给2803导通,8550导通,ad590就获得工作电压。图3-5中r17为精密电阻,误差为0.1,温度信号转换为电压信号的公式为: (2)如图3-5中port7为输出端。3.3 数据采集及处理模块系统中下位机要完成温度的采集、转化及数据的处理。以单片机为核心,控制温度选择通道模块把经传感器转换得到的模拟信号提供给a/d转换器,再经过a/d转换器把模拟信号转化为数字信号供单片机处理。系统所使用的单片机是atmel公司的at89c52单片机。3.3.1 at89c52简介 at89c52单片机是一种带8k字节闪速可编程可擦除存储器的低电压、高性能coms 8位微控制器。它与mcs51系列单片机兼容,有256个字节的ram,4个i/o端口共32线,3个16位定时/计数器,全双工串口通道,5个两级中断源结构。使用at89c52是一个高性能而有廉价的选择。图3-6为 at89c52管脚图。3.3.2 通道选择的实现系统的采集在ad590把温度信号转化为电信 图3-6 at89c52管脚号后,就要把各路电信号送给a/d转换器,由于是要把16路信号逐个送入。本设计是在只用一个a/d转换器的情况下,通过单片机对通道的选择,采用巡回检测的方式,把各个温度值给a/d转换器处理转换,最后给单片机计算与处理,这个过程的硬件设计如图3-7所示。图3-7 通道选择电路 图3-8 tpic6b595时序图 本设计通道选择电路主要应用了移位寄存器tpic6b595。tpic6b595是一种单片、高电压、中等电流的功率8位移位寄存器,是专为用户相对高的负载功率的系统设计的。该器件包括一个内部的输出电压箝位电路以防止电感瞬变电压。该器件包括一个8位的串入、并出移位寄存器,它的输出反馈一个8位d型寄存器。数据分别在移位寄存器时钟(srck)和寄存器时钟(rck)的上升沿传输到移位寄存器和存储寄存器。当移位寄存器清零端(srclk)为高时,存储寄存器传输数据到缓冲器。当srclk为低时,输入端的移位寄存器被清零。当输出使能(g)保持为高时,在输出缓冲器中所有的数据保持低电平并且所有的漏极输出时关断的。当输出使能(g)为低时,从存储寄存器到输出缓冲器的数据时透明的。当输出缓冲器中的数据为低电平时,dnos晶体管的输出端是关断的。当数据为高时,dnos晶体管的输出端具有吸入电流的能力。串口输出断(ser out)允许将移位寄存器与其它器件的数据级联系起来传送。其时序图入图3-8所示。由于下位机要实现对16路温度值的采集,本设计通道选择电路主要应用了tpic6b595的移位功能,并且应用串联使用功能,主要目的是为了节省单片机io口,使系统资源充分的利用。具体的原理为:如图3-8所示,选择通道的指令在p1.1 、p1.2 、p1.3、 p1.4及p2.4按照上述时序控制下,由p1.0以串行输入,指令为16位数据,由于一个tpic6b595只有8个输出,需两个tpic6b595级联,u2的串行输出作为u1的串行输入,以此达到控制16路温度的巡回检测。3.3.3 模数转换的实现a/ d转换电路主要是由ad7705完成的。ad7705是应用与低频测量的2/3通道的模拟前端。该器件可以接受直接来自传感器的低电平的输入信号,然后产生串行的数字输出。利用-转换技术实现了16位无丢失代码性能。选定的输入信号被送到一个基于模拟调制器的增益可编程专用前端。片内数字滤波器处理调制器的输出信号。通过片内控制寄存器可调节滤波器的截止点和输出更新速率,从而对数字滤波器的第一个陷波进行编程。如图3-10所示,sclk为串行时钟, 施密特逻辑输入。cs片选,低电平 图3-10 ad转换电路有效的逻辑输入。drdy为逻辑输出。 dout为串行数据输出端。 din 为串行数据输入端。在单片机根据控制字对ad7705进行操作。3.4 显示报警及操作模块显示报警及操作模块一般作为系统的人机界面,是系统功能的集中体现。3.4.1 液晶显示显示部分有两种选择,用数码管(led)或液晶(lcd),用数码管作为显示温度的设备其有成本低的优点,然而其电路接线复杂,显示温度点的数目有限;本设计为了让温度尽可能多的在同一界面显示,减少接线的复杂度,采用液晶显示测量温度。本设计采用的液晶为st7920是台湾矽创电子公司生产的中文图形控制芯片,它是一种内置12864-12汉字图形点阵的液晶显示控制模块,用于显示汉字及图形。可显示32个汉字,一行8个,或者显示64个字符。其可以由两种方式控制,串行控制和并行控制,本设计为了节省单片机i/o口,采用了串行控制显示。p2.0接cs,p2.1接sclk, p2.2接sid,其控制时序如图3-11所 图3-11 串行模式时序示。 3.4.2 报警模块报警部分要实现的功能为在有任何一处的温度值超出设定温度值范围时就要及时报警,做出报警动作。对与报警部分硬件电路的设计较为简单,一是蜂鸣报警,二是显示提示,在lcd上显示。3.4.3 按键模块系统的操作模块即为按键的设计,根据系统功能的要求,主要用于温度值的设定和校准。需要由4个按键要实现以下功能:第一个按键是功能切换,第二个按键是向上调节,第三个按键是实现向下调节,第四个按键是确认键。3.5 数据通讯模块 下位机上通讯部分的硬件电路设计为图3-12所示。 图3-12 下位机通讯接口电路如图3-12所示,通讯接口电路主要应用了sn65lbc184芯片。sn65lbc184是sn5176行业标准范围内的差分数据线收发器,它带有内置高能量瞬变噪声保护装置。这种设计特点显著提高了抵抗数据同步传输电缆上的瞬变噪声的可靠性,这种可靠性超过了多数现有器件。采用这类电路可提供可靠的低成本的直连(不带绝缘变压器)数据线接口,不需要任何外部元件。应用原理为:p0.5控制sn65lbc184的读写使能,在其控制下单片机的rxd、txd通过sn65lbc184,在通过485/232接口与计算机实现通信。如图3-12,在与sn65lbc184连接时都用了光耦隔离,光耦两边使用不同的电源,5v和vcc(5v)表示不同的电源。其目的是为了防止干扰,实现通信的稳定传输。4 多点温度巡回检测系统的软件设计4.1下位机软件程序设计4.1.1下位机程序开发方法简介本设计下位机部分就其功能来讲,具一个有独立作业的智能仪表。当前很多智能仪表采用前后台系统设计,应用程序是一个无限的循环,后台程序循环调用相应的函数完成相应的处理,中断服务程序处理异步事件。时间相关性很强的关键操作靠中断服务来保证的。这种方式的优点是程序比较直观,但由此带来一个重要的问题是系统的稳定性、实时性较差。中断服务提供的信息一直要等到后台程序运行到该处理这个信息时才能得到处理,最坏情况下的任务级响应时间(处理信息的及时性)取决于整个循环的时间,而循环的执行时间不是常数,程序经过某一特定部分的准确时间不能确定,进而若程序修改了循环的时序也会受到影响。在智能仪表中移植嵌入式操作系统能较好的解决以上问题,并使软件开发工作变得规范、容易测试、实现模块化编程和缩短开发周期。随着系统硬件功的增强,成本的降低,功能要求的增加和复杂化,需要实时操作系统对多个任务进行合理协调调度,管理系统资源的要求越来越迫切。同时,各种嵌入式实时操作系统不断出现,对硬件配置要求的不再苛刻,实时性不断增强,效率不断提高使得在自动化仪表中使用实时操作系统成为可能。本设计采用small rtos51作为软件开发平台,实现对多点温度进行巡回检测,包括温度转换、温度设定、显示以及报警等功能,同时实现与上位机通信。4.1.2 small rtos5l简介small rtos5l是一个基于51系列单片机的、免费的、源代码公开的多任务实时操作系统,可以在单片51系统上运行。它使用了rtx51 tiny的堆栈管理机制,并像uc/os-ii一样是抢占式的。small rtos51是为51系列单片机编写,具有处理机管理、存储管理、设备管理,支持任务动态建立与删除和动态内存分配,提供了用于任务间通信的信号量、消息队列。small rtos5 l是为小ram系统设计的,对于采用只有较小ram和rom的5l微控制器的系统而言,移植small rtos5l是一个较好的选择。4.1.3 下位机程序设计的实现根据下位机所要实现的功能在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 taskfuctionos_max_tasks)(void)= chunnelsel, modipara, warn, caltemper, readad , display ;/函数数组taskfuction保存了各个任务初始 pc指针,其按任务id(既优先级次序)顺序保存#endif 图4-1 主程序流程图主程序的程序框图如图4-1。主程序的有两个函数init()和osstart(),其中init()主要定义了系统节拍中断频率,osstart()的作用是启动small rtos51的多任务环境,在调用此函数前系统不允许中断。开 始选择通道发送选择完成 信号关中断结 束开中断开 始读温度值发送读取完成信号关中断结 束开中断 图4-2 通道选择程序流程 图4-3 读传感器温度流程通道选择任务chunnelsel负责按设定的参数选择数据输入通道,然后睡眠设定的时间。由于系统要对多路温度进行检测,只有即时切换输入通道才保证各输入信号在规定时间内被检测,因而通道选择任务在系统中拥有最高优先级。通道选择程序流程如图14。读传感器温度任务readad如图4-3,温度计算任务caltemper程序流程见图4-4。温度计算任务caltemper、读传感器温度任务readad控制ad7705将传感器输入信开 始计算温度值发送信号给显示关中断结 束温度正常?报 警关中断ny 图4-4 温度计算任务号转换为数字信号, 并向温度计算任务caltemper发送tempepsig信号。任务caltemper通过全局变量获取检测数据,接收readad任务发送的信号后查找与传感器相对应的分度表,得到测点的温度,检查温度是否正常后发送nodispsig或warnsig信号,通知其他任务。显示任务display用于显示检测温度和测点号,并进行led报警。系统参数修改任务modipara监视用户按键输入,调整系统检测参数。报警任务warn根据温度计算任务caltemper送来warnsig信号实现报警输出显示。4.1.4 串口通讯及协议串口通信要把下位机所采集到的温度送给上位机,它们之间的通信按照一 定的协议来完成,本设计上位机与下位机之间的通讯按照modbus来编写。modbus 协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为一通用工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。 表4-1 rtu模式的消息结构开始地址功能码数据段crc校验结束t1-t1-t2-t48位8位n8位16位t1-t2-t3-t4标准的modbus协议有两种传输方式:ascii模式和rtu模式。在ascii模式下,消息中的每个8bit字节都作为两个ascii字符发送,采用纵向冗长检测(lrc)校验。这种方式的主要优点是字符发送的时间间隔可达到ls而不产生错误。在rtu(remote terminal unit)模式下,采用字节数据传输、crc校验。这种方式的主要优点是:在同样的波特率下,可比ascii方式传送更多的数据。本设计要传输的温度只有16路之多,选择采用rtu方式传输。rtu方式传输的格式见表4-1所示。如表所示开始t1t2t3t3表示消息发送至少要以3.5个字符的停顿时间,8位地址,可能的地址为0-247个,其中0作为广播地址,当modbus应用于更高水准的网络时,广播方式不被允许。8位功能码可能的代码为1-255。本设计中只用到03(读取保持寄存器在一个或多个保持寄存器中取得当前的二进制值),数据段包括数据长度和数据值,crc校验包括高低两位。以1号机为例,下位机所要发送的数据为:01 03 16 data1data16 crc高位 crc低位下位机的程序具体见附录。4.2 上位机温度控制软件设计整个测温系统的管理是通过在上位机运行的测温系统管理软件来完成。根 图4-5 测温系统管理软件的功能结构据对温度测量系统的分析,温度测量系统如图4-5所示。上位机的测温管理软件以vc+ 6.0为开发平台,用mfc视图类应用。其主界面如图4-6。图4-6 测温软件主界面串口通讯中应用了串口类函数serialport,其调用是使用的代码为:int cmainframe:oncreate(lpcreatestruct lpcreatestruct). submenu-enablemenuitem(id_set1,mf_bycommand|mf_disabled| mf_grayed);nbaud=9600;ncom=2;ndata=8;nstop=1;cparity=n; count=0;return 0;void cmainframe:onoff() .if(bmportopen).ndwcommevents=ev_rxflag | ev_rxchar;if(m_port.initport(this,ncom,nbaud,cparity,ndata,nstop,ndwcommevents,512)m_port.startmonitoring();.图15 串口设置各设置功能界面,为串口设置、测温参数设置、温度记录。见图4-7、图4-8和图4-9。图16 测温参数设置 图4-7 串口设置界面 图4-8 测温点设置界面 图4-9 温度记录界面5 系统测试与分析5.1通道选择调试 通道的调试是能否实现多点巡回检测的关键,其调试过程为:1.给tpic6b595送通道选择的控制字,对应1到16路输出;2.在送一个控制字后,就测量其输出通道是否按控制要求导通,具体测8550是否导通,用2个字节控制16路,程序中定义为cha_h,cha_l。其控制对应见表5-1。 表5-1 通道选择控制字节表通 道 选 择对应控制字1路cha_h=0x00, cha_l=0x012路cha_h=0x00,cha_l=0x023路cha_h=0x00,cha_l=0x044路cha_h=0x00,cha_l=0x085路cha_h=0x00,cha_l=0x106路cha_h=0x00,cha_l=0x207路cha_h=0x00,cha_l=0x408路cha_h=0x00,cha_l=0x809路cha_h=0x01,cha_l=0x0010路cha_h=0x02,cha_l=0x0011路cha_h=0x04,cha_l=0x0012路cha_h=0x08,cha_l=0x0013路cha_h=0x10,cha_l=0x0014路cha_h=0x20,cha_l=0x0015路cha_h=0x40,cha_l=0x0016路1表格标题应该左对齐。2排号应该使用表5.2格式,不要使用5-2。3另外ad590一般达不到0.1精度,建议你改为0.34建议你把表格里的数据后不要加这个单位,把它写到理论温度()与实际温度()位置上。cha_h=0x80,cha_l=0x00调试结果为在给输出控制字时有对应的输出,通道选择设计完全可行。5.2温度测量温度测量部分的调试过程为:首先进行温度的校准,分有零度校准和满度校准;然后进行校准后数据分析。零度校准和满度用玻璃温度计作为校准基准,校准后调试数据见表5-2。表5-2 理论温度与实际温度比较理论温度210203040506070809099.8实际温度21020.130.14050.16069.979.989.999.7表5-2所示,在校准时由于校准基准的条件限制,只能在0和100附近进行校准。最大绝对温差为0.1,满足设计要求。5.3上位机与下位机通讯调试上位机与下位机通讯的调试过程分两部分,首先是对下位机部分的接收和发送进行调试;然后对上位机的接收和发送功能进行调试。其中在调试过程中用到的工具为串口调试工具v2.2。通过串口调试工具v2.2,按modbus协议发送给下位机接收,比较串口调试工具v2.2发送的数据与接受的数据一致,下位机接受正常。下位机给串口调试工具v2.2发送数据,显示比较一致,下位机发送正常。同样方法用串口调试工具v2.2与上位机进行调试,收发功能正常。最后,调试上位机与下位机的收发功能,可实现正常接受和发送。6 系统的抗干扰措施6.1 下位机的抗干扰措施 在温度测量过程中会遇到比较恶劣的测温环境,有两个地方需要提高抗干饶,一个是提高下位机单片机系统的抗干扰能力,另一个是提高在传输过程中的抗干扰能力,保证可靠性。下位机的抗干扰措施:1.设置去耦电容 去耦电容接在电源线与地线之间,可以有效的削弱芯片电源线和地线之间的电压尖峰与毛刺干扰信号,减少通过电源线和地线耦合引起的干扰。2.地线与电源线的处理 信号通过地线和电源线阻抗的耦合将会产生干扰,因此尽量加大地线和电源线的截面,并尽可能的宽一些,减少交叉布线。3.元器件布局模拟元器件和数字元器件分别相对集中布置。数字元器件的接地共同引出接地-数字地;模拟器件的接地端共同接地-模拟地。然后将数字地同模拟地分别引出,最后连接至总接地端形成电路板上的地线。4.信号线 测温系统中单片机与测温点之间的信号传输线采用双绞线。它可以降低邻近信道的电磁耦合和外部信号的电磁干扰。采用双绞线来进行信号传输较普通测温线传输距离来得远。6.2 数据通讯校验数据在传输、存取、运算过程中都有可能产生差错。测温系统由于受各种干扰的影响,接受到数据不可避免的可能会出现差错。这就需

温馨提示

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

评论

0/150

提交评论