基于单片机的智能温度巡检仪设计概述_第1页
基于单片机的智能温度巡检仪设计概述_第2页
基于单片机的智能温度巡检仪设计概述_第3页
基于单片机的智能温度巡检仪设计概述_第4页
基于单片机的智能温度巡检仪设计概述_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

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

文档简介

第2章基于于单单片片机机的的智智能能温温度度巡巡检检仪仪设设计计2.1设计计任任务务2.2总体体设设计计2.3硬件件系系统统及及驱驱动动程程序序设设计计2.4软件件设设计计2.5结构构设设计计2.6工程程设设计计与与组组装装调调试试2.1.1主要要功功能能为了了满满足足工工业业生生产产过过程程监监控控的的要要求求,,设设计计的的智智能能温温度度巡巡检检仪仪应应当当具具有有如如下下功功能能::能能与与常常用用温温度度传传感感器器配配合合检检测测多多路路温温度度,,本本例例是是与与温度度传传感感器器Pt100型铂热热电电阻阻配配合合,,巡回回检检测测8路温温度度;;可可选选择择定定点点显显示示方方式式,也也可可选选择择巡巡回回显显示示方方式式;;在在全全量量程程内内,,可可设设定定超超限限报报警警值值,,当当实实测测温温度度超超过过设设定定值值时时,,发发出出报报警警信信号号且且有有常常开开接接点点输输出出;;将将检检测测的的每每路路温温度度转转变变为为与与之之线线性性对对应应的的4~20mA电流流输输出出;;支支持持RS-485通信信方方式式,方方便便组组成成局局域域监监控控网网络络,,使使实实测测温温度度、、温温度度超超限限设设定定值值等等参参数数在在网网络络中中共共享享。。2.1设计计任任务务2.1.2技术指标标测量范围围:200℃℃~850℃℃。测量精度度:优于于0.5级。温度巡检检周期::1s。巡回显示示周期::以秒为为单位,,可选定定。工作环境境温度::0℃~50℃。相对湿度度:小于于85%。供电电源源:220VAC,±10%,50Hz。结构形式式:盘装装式。外形尺寸寸:160mm(长)×80mm(宽)×160mm(深)。。开孔尺寸寸:152mm×76mm。2.2总体设设计首先要要确定定实现主主要功功能与与技术术指标标的硬硬件、、软件件的总总体设设计方方案。必须须遵守守以下下三个个设计计理念念。①智智能温温度巡巡检仪仪是以以单片片机为为核心心的嵌嵌入式式系统统,有有些功功能既既可以以通过过软件件编程程实现现,也也可以以通过过硬件件配置置实现现,应应当遵遵守“能软不不硬”的理念念,即即凡是是能够够用软软件方方案实实现的的功能能就不不用硬硬件方方案实实现,,其目目的是是降低低制造造成本本。软软件方方案只只需在在软件件开发发设计计中一一次性性投入入,一一旦开开发成成功,,在制制造过过程中中将降降低材材料成成本和和安装装成本本,同同时能能够提提高整整机的的可靠靠性。。任何何电子子元器器件都都有老老化失失效的的问题题,整整机的的可靠靠性与与采用用元器器件的的数量量成反反比,,减少少使用用的元元器件件数量量,就就相当当于提提高了了整机机的可可靠性性。②设设计过过程应应当兼顾技技术指指标与与经济济指标标,技术术指标标再高高的仪仪表设设备,,如果果制造造成本本高、、售价价高,,将不不会有有市场场前景景。③在在设计计过程程中,,选用的的元器器件与与材料料的市市场供供应渠渠道必必须畅畅通。电子子元器器件、、电子子材料料的发发展日日新月月异,,必须须选用用目前前市场场敞开开供应应的元元器件件与材材料,,否则则将给给日后后的制制造与与维护护带来来很多多麻烦烦。如如果设设计中中选用用了一一些早早已淘淘汰的的元器器件,,将无无法实实现样样机的的研发发。即即便样样机开开发成成功,,以后后生产产制造造中的的材料料采购购也十十分困困难。。1.硬件件总体体方案案主机电电路采采用以以8位单片片机为核心心的方方案,,片内内要有有足够够多的的硬件件资源源,尽尽量减减少扩扩展外外部功功能芯芯片,,减小小整机机的体体积,,降低低整机机造价价。选择的8位单片机应应具有如下下资源。①足够的的片内程序序存储器,,容量应不不小于20KB。②足够的的片内数据据存储器,,容量应不不小于256B。③为了满满足实时性性要求、通通信要求和和A/D转换要求,,定时器/计数器数量量不应少于于3个,容量应应在16位以上。④中断源源要求:中中断源不应应少于3个,中断级级别不应少少于2级。⑤有串行行通信接口口。⑥有足够够多的通用用I/O接口。前向通道设设计:A/D转换器分辨辨率不应低低于12位,,为了了降降低低造造价价,,8路温温度度通通道道通通过过多多路路开开关关技技术术,,公公用用一一个个放放大大器器、、一一个个A/D转换换器器。。后向向通通道道设设计计::采用用一一个个D/A转换换器器,,8路路保保持持器器,,利利用用软软件件定定时时刷刷新新的的方方法法实实现现多多路路模模拟拟量量输输出出。。显示示部部分分::采用用LED数码码管管,,其其亮亮度度高高,,有有效效观观测测距距离离远远,,成成本本低低按键键部部分分::采用薄膜按键键,手感好,,寿命长。通信部分:采用RS-485传输技术,方方便按照总线线式网络拓扑扑组成局域测测量网络,而而且RS-485传输技术成熟熟,成本低。。2.软件总体方方案软件任务比较较简单,不需需要嵌入操作作系统,主要要包括监控程序、人人机服务程序序、数据采集集处理程序、、通信服务程程序几部分。为了了保证实时性性要求,提高高运行效率,,采用ASM51汇编语言编制制。3.外形结构方方案按盘装仪表结结构设计,其其外形结构尺尺寸、安装尺尺寸、安装方方式、接线方方式与常规测测试仪表保持持一致,便于于替代传统测测试仪表。2.3硬件系统及驱驱动程序设计计8路温度度巡检检仪的的硬件件由主机电电路、、前向向通道道、后后向通通道、、人机机接口口电路路、通通信接接口及及供电电电源源几部分分组成成,如如图2-1所示。。其中中,主机电电路由CPU、数据据存储储器、、程序序存储储器、、EEPROM存储器器、定定时器器/计数器器、通通用异异步串串行收收发器器、中中断控控制器器、WDT定时器器及通通用并并行接接口等等部件件组成成;前向通通道电电路由Pt100转换电电路、、滤波波电路路、多多路模模拟开开关电电路、、放大大电路路、A/D转换电电路组组成;;后向通通道电电路由D/A转换电电路、、多路路模拟拟开关关电路路、V/I转换电电路、、继电电器驱驱动电电路组组成;;人机接接口电电路由按键键和LED数码管管组成成;通信接接口电电路由RS-485接口电电路组组成;;供电电电源电电路分别向向系统统数字字电路路提供供逻辑辑5V电源,,向模模拟电电路提提供±12V与±5V模拟电电源。。2.3.1主机电电路设设计主机电电路设设计的的核心心是选择择一款款恰当当的嵌嵌入式式处理理器,,其处处理速速度、、内含含的存存储器器容量量、内内含的的功能能部件件尽可可能满满足系系统要要求,,同时时,市市场售售价满满足整整机硬硬件成成本要要求。。系统对对处理理速度度的要要求::根据设设计任任务中中关于于温度度巡检检周期期为1s,巡检检8路的要要求,,处理理器应应当在在1/8s,即125ms内完成成1路温度度的数数据采采集、、标度度变换换、线线性化化处理理、显显示等等各项项任务务。可可选8位微处处理器器系统对对程序序存储储器的的要求求:就设计计任务务中规规定的的功能能及技技术指指标而而言,,软件件任务务的复复杂程程度一一般,,当采采用汇汇编语语言编编程实实现时时,一一般5000条指令令可以以完成成全部部编程程任务务。MCS-51而言,,5000*2B=10KB.系统对对数据据存储储器的的要求求:数据存存储器器主要要作为为计算算缓冲冲区、、堆栈栈区、、实时时数据据存储储区、、中间间数据据存储储区使使用,,对本本设计计任务务而言言,一一般200~300B可以以满满足足需需要要。。系统统对对EEPROM存储储器器的的要要求求::EEPROM存储储器器的的使使用用性性能能是是指指,,程程序序运运行行时时可可以以向向其其中中写写入入数数据据或或擦擦除除数数据据,,当当系系统统关关机机或或掉掉电电时时,,写写入入的的数数据据能能够够可可靠靠长长久久的的保保留留。。它它主主要要用用来来存存储储使使用用者者存存储储的的数数据据,,如如巡巡回回检检测测的的路路数数((8路温温度度巡巡检检仪仪在在使使用用中中可可以以根根据据需需要要设设定定巡巡检检路路数数))、、超超限限报报警警值值、、巡巡回回显显示示周周期期.200~300B系统对定定时器/计数器的的要求::8路温度巡巡检仪属属于实时时性很强强的嵌入入式系统统,实现现实时性性操作的的硬件基基础是定定时器。。对本设设计任务务来讲,,需要1路定时器器来产生生时钟节节拍,实实现实时时操作;;需要1路定时器来作作为串行通信信的波特率产产生器;需要要1路定时器来实实现A/D转换操作,因因此至少需要要3路定时器/计数器。系统对中断控控制的要求::根据设计任务务要求,软件件任务主要有有:通信服务务、每路A/D转换完成时的的数据采集与与打开下一输输入通道、温温度计算、人人机接口服务务共4项任务。其中中,通信服务务、A/D转换服务的实实时性很强,,需要通过2个中断源,2级中断管理实实现。系统时时钟需要通过过中断提供实实时操作。因因此,必须有有不少于3个中断源、2级中断的中断断控制机制,,以便根据各各项任务的实实时性要求进进行抢占式调调度。系统对通用异异步串行收发发器(UART)的要求:为了支持RS-485通信,必须有有1路UART。系统对硬件抗抗干扰的要求求:迄今为止,看看门狗定时器器(WDT,WatchdogTimer)是微机系统统唯一完全有有效的硬件抗抗干扰措施,,因此系统必必须采用WDT。系统对通用并并行接口(GPIO)的要求:为了实现主机机电路与前向向通道、后向向通道、人机机接口部分的的硬件接口,,主机电路应应当具备20~30个GPIO。1.AT89C55WD单片机的片内内资源及性能能与MCS-51系列单片机指指令系统兼容容,引脚兼容容。内部具有可重重复编程的20KB的Flash型程序存储器器,重复编程程次数达1000次。工作电压范围围:4~5.5V。时钟频率:静静态到33MHz,当时钟频率率选择33MHz时,以每条指指令执行时间间平均为2个机器周期进进行计算,CPU处理速度达1.375MIPS,即每秒可执执行137.5万条指令,处处理速度非常常快。256B数据存储器。。32根可编程I/O口线。3个16位定时器/计数器。6个中断源,,2级中断优先先级。1个可编程的的UART。具有闲置方方式与掉电电方式两种种省电工作作方式。1个WDT硬件定时器器。2个数据指针针。2.X5045性能简简介由于选选定的的单片片机AT89C55WD内部没没有EEPROM存储器器,而而单片片机上上电时时必须须有自自动复复位电电路,,因此此主机机电路路中除除了单单片机机外,,必须须扩展展EEPROM存储器器和上上电复复位电电路。。美国国XICOR公司生产的的X5045集成芯片,,集4项功能于一一身,除了了内部具有有EEPROM存储器外,,还有上电电复位功能能、WDT功能、电源源电压监控控功能。具体指标如下:①内部具有WDT电路,可以以编程选择择WDT超时周期。。②具有低电压压监测和强强制复位功功能。③具有上电复复位控制功功能。图2-2X5045的引脚布置置④内含4Kbit的EEPROM存储器,可可以编程选选定进行分分块保护,,保证重要要数数据据存储的可可靠性⑤支持高达33MHz的时钟频率率。⑥功耗低,工工作电流小小于50A,便于电池池供电。(1)引脚描述述图2-2X5045的引脚布置置(2)指令集X5045的各种操作作,包括写写使能锁存存器的置位位与复位、、读/写状态寄存存器、读/写EEPROM,都是通过过向X5045发出有关指指令进行的的。指令集集如表2-1所示。表2-1X5045的指令集指令名指令格式操作WREN00000110设置写使能锁存器(允许写操作)WRDI00000100复位写使能锁存器(禁止写操作)RDSR00000101读状态寄存器WRSR00000001写状态寄存器(块锁定位)READ0000A8011从开始于所选地址的存储器阵列中读出数据WRITE0000A8010把数据写入开始于所选地址的存储器阵列(1~4B)(3)写使能锁存存器X5045包含一个写使使能锁存器。。在内部完成成写操作之前前,此锁存器器必须被设置置(SET)。WREN指令可设置锁锁存器而WRDI指令将复位锁锁存器。在上上电情况下,,和字节、页页或状态寄存存器写周期完完成之后,该该锁存器自动动复位。如果果变为低电平平,则锁存器器也被复位。。(4)状态寄存器器RDSR指令提供对状状态寄存器的的访问。在任任何时候都可可以读状态寄寄存器,即使使在写周期也也如此,状态态寄存器的格格式如表2-2所示。表2-2状态寄存器的的格式76543210XXWD1WD0BL1BL0WELWIP状态寄存器各各位的意义说说明如下WIP(Write_In_Process):该位表示“正在写”状态。当该位位为“l”时,写操作正正在进行;当当该位为“0”时,没有写操操作在进行。。在写期间,,所有其他位位全置为“l”。WIP位是只读的。。WEL(Write_Enable_Latch):该位表示“写使能锁存”状态。当该位位为“1”时,锁存器置置位;当该位位为“0”时,锁存器复复位。WEL位是只读的,,它由WREN指令置位,由由WRDI指令复位,或或者在成功地地完成了写周周期后复位。。BL0、BL1:块保护位,用用于选择EEPROM被保护的范围围。这两位由由发出WRSR指令来设置,,允许用户选选择4种保护方式之之一。被选择择保护的部分分只允许读,,不允许写。。EEPROM的保护范围如如表2-3所示。WD0、WD1:这两位用于选选择看门狗定定时器(WatchdogTimer)的超时周期期,选择范围围如表2-4所示。通过发发出WRSR指令来设置WD0、WD1。BL1BL0被保护的阵列地址00无01180H~1FFH10100H~1FFH11000H~1FFH表2-3EEPROM的保护范围表2-4WDT的超时周期选选择范围WD1WD0超时周期001.4s01600ms10200ms11禁止3.主机电路硬硬件原理主机电路中主主要包括AT89C55WD单片机和X5045芯片,就可以满足系系统对硬件资资源的需求,硬件电电路原理如图图2-3所示。4.驱动程序(1)WDT驱动程序X5045中WDT的驱动程序有两两个,一个用于在在单片机正常常工作时访问WDT,使WDT不产生复位信信号,注意,,这个程序应应当每隔一个个确定的时间间间隔运行一一次,该时间间间隔应当小小于WDT超时周期;另另一个驱动程程序设定WDT的超时周期。访问WDT驱动程序:根根据X5045的使用规则,,只要其引脚脚发生从高电电平到低电平平的跳变,就就实现对内部部WDT定时器的复位位,因此,根根据图2-3所示,只要在在连接X5045引脚的P1.4输出一个低电电平脉冲即可可,即做一次次输出低再变变高的操作。。程序如下:CSBIT P1.4RST_WDT:CLR CSSETBCSRET设定WDT超时周期的驱驱动程序:根根据X5045的使用要求,,通过设定X5045的状态寄存器器实现超时周周期的设置。。本系统选定定WDT的超时周期为为600ms,X5045的状态寄存器器中WD1、WD0两位分别设置置为0、1。不考虑保护护EEPROM时,状态寄存存器内容可以以设置为10H(参见X5045状态寄存器的的格式)。在在设置状态寄寄存器之前,,需要先完成成两个操作::设置写使能能寄存器和发发送写状态寄寄存器命令。。设置流程如如图2-4所示。图2-4设置WDT超时周期流程程图(2)EEPROM写入程序根据X5045的使用规则,,向EEPROM内写入内容,,按图2-5所示的流程进进行。图2-5EEPROM写入流程(3)EEPROM读出程序;******************************************************************;子程序名::SEQU_READ;功能:将DPTR中内容为首地地址的EEPROM中的内容读出出到以R1中内容为首地地;址址的单片片机内部RAM中;底底层层子子程程序序调调用用::OUTBYT、INBYT;入入口口条条件件::((R1)=单片片机机内内部部RAM的首首地地址址;((DPTR)=EEPROM的首首地地址址;((R2)=要读读出出的的字字节节数数;使使用用的的寄寄存存器器::A、DPTR;***************************READ_INSTEQU 03H ;读数据命令为03HSEQU_READ:CLRSCK ;准备读数据

CLRCSMOVA,DPH ;将EEPROM地址的最高位连同读数据命命令一起发送

MOVC,ACC.0MOVA,#READ_INSTMOVACC.3,CLCALLOUTBYTMOVA,DPL ;发送EEPROM的低8位地址

LCALLOUTBYTSEQU_READ1:LCALLINBYT;读出出1B内容MOV@R1,A;将读读出的的1B数据存存入单单片机机RAM中INCR1DJNZR2,SEQU_READ1;循环环读数数据CLRSCK;推出出读数数据SETBCSRET“SEQU_READ”子程序序用到到了一一个底底层子子程序序“INBYT”,该子程序序用于从EEPROM中读出1B内容,程程序如下下:INBYT:MOVR0,#8;1B,8个INBYT1:SETBSCK ;准备读出

CLRSCKMOVC,SO ;读出内容存于C中

RLCA ;将C中内容存于A中

DJNZR0,INBYT1 ;循环读出

RET2.3.2前向通道道电路设设计前向通道道的任务务是接收温温度传感感器Pt100铂电阻的的信号,,将其转转变为单单片机能能够进行行处理的的数字信信号,由由信号转转换电路路、动态态稳零电电路、多多路模拟拟开关、、阻抗匹匹配电路路、放大大电路、、A/D转换电路路等几部部分组成成。原理理框图如如图2-6所示,硬硬件电路路如图2-7所示。图2-6前向通道道电路原原理框图图图2-7前向通道道硬件电电路图1.信号转转换电路路信号转换电路路由图2-7中的9个惠斯登电桥桥组成(由于于图面所限,,图中仅绘出出第1个、第2个和第9个),实现将将8路Pt100温度传感器输输出的电阻信信号转换为电电压信号。其其中,第1个惠斯登电桥桥没有外接Pt100传感器,设置置它的目的是是为动态稳零零电路提供零零信号(详见见5.动态稳零电路路)。余下8个惠斯登电桥桥的工作原理理完全一致,,这里以第2个电桥为例,,它由R5、R6、R7、C3、C4组成。。采用惠惠斯登登电桥桥的方方式进进行R/V转换的的主要要优点点是,利利用桥桥路的的对称称平衡衡特点点,有有效地地克服服供电电电源源Va波动,,克服服Pt100引线电电阻影影响,,克服服桥路路电阻阻温漂漂问题题。图2-8R/V转换电电路①克克服桥桥路供供电电电源Va波动影影响,,克服服桥路路电阻阻温漂漂影响响。图2-8R/V转换电电路,在图2-8的电路路中,,忽略略引线线电阻阻影响响,认认定r=0,则Rpt为Pt100的阻值值,当当取R6=R7,R5=Rpt时,,。。只要要桥桥路路4臂电电阻阻对对应应相相等等,,则则桥桥路路输输出出电电压压与与桥桥路路供供电电电电源源波波动动无无关关。。当当桥桥路路电电阻阻R5、R6、R7随周周围围环环境境温温度度发发生生变变化化,,即即出出现现温温漂漂时时,,只只要要R6与R7漂移移幅幅度度、、方方向向一一致致,,R6=R7>>R5,则则桥桥路路输输出出电电压压受受温温漂漂影影响响很很小小。。②克克服服Pt100引线线电电阻阻影影响响如图图2-8所示示,,当当安安装装在在现现场场的的Pt100传感感器器通通过过三三线线连连接接到到仪仪表表时时,,要要求求三三线线长长度度、、线线径径、、材材质质一一致致,,这这样样做做可可以以保保证证三三线线的的线线路路电电阻阻相相等等为为r,当当r<<R6(R7)时时,,桥桥路路输输出出::取R6=R7,R5=RPt时,,。。说明明与与引引线线电电阻阻无无关关,,即即可可以以有有效效地地克克服服引引线线电电阻阻影影响响问问题题。。2.多多路路模模拟拟开开关关图2-7中的的CD4052(U1、U2、U3)是一个个双端4路(相当当于双刀刀四掷))的模拟拟开关,,由A、B、INH三个控制制引脚选选择将X、Y切向0、1、2或3通道。控控制引脚脚状态与与导通通通道关系系如表2-5所示。4个I/O口状态与与接通电电阻桥路路的关系系如表2-6所示。表2-5控制引脚脚状态与与导通通通道关系系INHBA导通通道000X0、Y0001X1、Y1010X2、X2011X3、Y31XX不通表2-64个I/O口状态与与接通电电阻桥路路的关系系P2.3P2.2P2.1P2.0导通桥路0000稳零桥路00010通道00101通道00112通道

01003通道

01014通道

01105通道

01116通道

10007通道

3.阻抗匹匹配电路路阻抗匹配配电路由由图2-7中的U4A、U4B两个运算算放大器器组成跟跟随器实实现。如如果没有有这一级级阻抗匹匹配电路路,测量量桥路的的输出阻阻抗与多多路模拟拟开关的的导通电电阻以串串联形式式接到运运算放大大器的输输入端,,作为运运算放大大器的输输入电阻阻存在。。由于8路测量量桥路路测量量的温温度不不可能能完全全一样样,多多路模模拟开开关各各通道道导通通电阻阻不一一致,,决定定了运运算放放大器器在接接通不不同通通道信信号时时,其其输入入电阻阻不一一致,,因而而增益益不一一致,,产生生误差差。为为了解解决这这一问问题,,引入入阻抗抗匹配配电路路。各各路信信号通通过阻阻抗匹匹配电电路接接到运运算放放大器器时,,各路路信号号的输输出阻阻抗统统一为为两个个跟随随器的的输出出阻抗抗,解解决了了不同同通道道信号号输出出阻抗抗不一一致的的问题题。4.放大大电路路在图2-7中,由由U4D、R29、R30、R31、R32构成反反相放放大器器,增增益A由下式式确定定:式中,,为为测量量上限限桥路路输出出电压压。A/D转换器器ICL7135满码输输出对对应的的模拟拟电压压(模模拟输输入信信号上上限))为2V,考虑虑动态态稳零零的需需要,,这里里取1.8V。Pt100的测量量上限限温度度为850℃,对应应的阻阻值为为RPtmax=390.26。根据据图2-8的测量量桥路路,当当R6=R7=10k,R5=100时,忽忽略引引线电电阻影影响,,测量量上限限桥路路输出出电压压:取R29=1k,R32=13k,反相相放大大器增增益为为13。5.动态稳零零电路作用:抑制温漂和和时漂电压压工作原理::如图2-9所示,运放放U4D与R29、R30、R31、R32构成反相放放大器,其其增益:,,运运放的输出出为Vo。开开关关SW切向上,接通通Vab有效输入信号号;开关SW切向下,接通通零输入信号号。图2-9动态稳零电路路原理当SW切向下时,放放大器输出为为:式中,VIO为运算放大器器的失调电压压。当SW切向上时,放放大器输出为为:式中,VIO为运算放大器器的失调电压压。将两次输出相相减:上式说明,如果运放在在每次测量有有效信号之前前,先接通零零信号测量出出运放的失调调电压,再接接通有效信号号,将得到的的输出减去失失调电压作为为运放的有效效输出,就从从根本上克服服了失调电压压的影响。6.A/D转换电路A/D转换电路设计计的核心是A/D转换器的选择择,选择时主要要考虑三项技技术指标:转转换精度、转转换速度和对对单片机接口口资源的耗用用。影响A/D转换精度的指指标一般有分辨率率、量化误差差和线性度。。从目前市场场供应的A/D转换器来看,,量化误差与与线性度两个个指标一般都都很高。转换换精度主要取取决于分辨率率,对于n位的A/D转换器,转换换精度为;;转换速度选取取的依据是测量信号的的变化频率。。根据香农定定理,采样周周期(主要取取决于A/D转换时间)至至少是测量信信号变化周期期的1/2以下。对于本设计任任务而言,测量的是工工业过程的温温度参数,其其变化缓慢,,一般场合,,在1秒内很少有超超过0.5℃的变化,因此此可以选择转转换精度较高高,速度较慢慢的双向积分分式A/D转换器,而且且在A/D转换器之前不不必加采样保保持器。对于测量8路温度的温度度巡检仪而言言,根据上述述分析,选择转换速度度为16次/秒的A/D转换器,可以满足要要求。在本设计中,,选用美国Intersil公司生产的ICL7135双向积分生式式A/D转换器。ICL7135的主要技术指指标如下:转换精度为1/19999;双极性转换,,数字满码输输出为19999;自动稳零技术术,保证0V信号输入时,,数字码0输出;高输入入阻抗抗,输输入1pA漏电流流;差分输输入;;零点极极性检检测;;仅需单单一参参考电电源;;具有过过量程程与欠欠量程程指示示,便便于实实现自自动量量程转转换;;所有输输出电电平符符合TTL电平标标准;;具有并并行与与串行行两种种输出出信号号形式式。(1)ICL7135输出方式选选择ICL7135的引脚布置图图如图2-10所示。经A/D转换后的数数字码有两两种输出时时序:串行输出时时序与分时时并行输出出时序,分别如图图2-11和图2-12所示。从图图2-11所示的时序序可以看到到,一个完完整的测量量周期包括括三个阶段段:自动稳稳零(即AZ)阶段,信信号积分((即SI)阶段,参参考电压积积分(即RI)阶段。图2-10ICL7135引脚布置图图图2-11串行行输出时序序图图2-12分时时并行输出出时序图(2)硬件接口口电路根据图2-11所示时序设设计的A/D转换硬件接接口电路如如图2-13所示。ICL7135仅通过两根根线与AT89C55相接,仅占占用AT89C55T1、T2两个计数器器及外部中中断INT1。图2-13A/D转换接口口电路图2-14T2计数器工工作于方方波产生生器时的的逻辑框框图①ICL7135时钟信号号提供ICL7135的时钟信信号直接接来自AT89C55的P1.0。P1.0是AT89C55的复用口口,当AT89C55的T2计数器工工作于方方波产生生器方式式(ProgrammableClockOut)时,通过该引引脚可输输出连续续的方波波信号,,其占空空比为50%,频率可可通过编编程确定定,如图图2-14所示。②A/D转换结果果的读取取ICL7135的时钟信信号源于于AT89C55的T2计数器方方波输出出,同时时接至AT89C55的T1,利用T1计数器记记录BUSY为高电平平时的时时钟周期期数。BUSY信号接至至AT89C55的外部中中断INT1,其意图图有两个个。第一一,控制制T1计数。当当T1计数器工工作于方方式1时,通过过软件设设置GATE控制位为为“1”时,T1计数受INT1控制,当当INT1(既BUSY)为高电电平时,,T1可对来自自外部的的脉冲((既ICL7135的时钟周期))计数;INT1为低电平时,,停止计数。。第二,在BUSY信号由高电平平跳变为低电电平瞬间,以以中断形式通通知CPU,以读出A/D转换后的数字字码。(3)驱动程序①A/D转换结果的读读取ICL7135的时钟信号源源于AT89C55的T2计数器的方波波输出,让AT89C55通过P1.0引脚,为ICL7135提供250kHz时钟信号时,,编程设定AT89C55的T2工作于方波产产生器方式。。当AT89C55晶体振荡器取取12MHz时,编程如下下:MOVT2CON,#04H;T2工作于方波产产生器方式MOVT2MOD,#02HMOVRCAP2H,#0FFH;输出方波频频率为250kHzMOVRCAP2L,#0F4H②A/D转换结果读出出程序如图2-13所示,当BUSY信号由高跳变变到低时,将将触发INT1中断,在INT1中断服务程序序中将A/D转换结果读出出,存放于内内部RAM30H、31H中。INT1_ISR:PUSHPSW;保护现场PUSHACCMOVA,TL1;T1计数减去10001(2711H)后送30H,31H中CLRCSUBBA,#11HMOV31H,AMOVA,TH1SUBBA,#27HMOV30H,AMOVTL1,#0;清零T1MOVTH1,#0POPACCPOPPSWRETI2.3.3后向通道电电路设计后向通道电电路由4~20mA模拟量输出出电路与超超限报警开开关量输出出电路两部部分组成。。1.4~20mA模拟量输出出电路该电路是将将所检测的的每路温度度都对应地地输出一个个与之成线线性关系的的4~20mA电流信号,,以便根据据需要供给给调节器、、记录装置置或DCS系统。硬件件电路设计计如图2-15所示。图2-15多路4~20mA输出电路多路模拟开开关CD4051的控制导通通关系如表2-7所示,通过过单片机P2.4、P2.5、P2.6三个引脚高高低电平的的不同输出出,可以将将D/A转换的模拟拟电压输出出到与前向向8路通道相对对应的输出出通道保持持电路中。。输入状态导通通道INHIBITCBA0000000011输入状态导通通道INHIBITCBA0010200113010040101501106011171均不导通该模拟保持电电路还同时兼兼有电压/电流转换功能能。转换输出电电流I在OUT+与OUT(外接负载))之间输出,,I与D/A转换输出电压压Vout之间的关系由由式确定,D/A转换器满量程程输出电压Vout与D/A转换器的参考考电压由式Vout=2Vref确定。因此,,当取Vref=1V,R1=100时,D/A转换满量程输输出电流为::根据TLC5615的输入时序可以编写其驱驱动程序。输输入时序如图图2-16所示图2-16TLC5615的输入时序2.超限报警开开关量输出电电路当某路温度超超过设定的报报警值时,输输出一个机械械接点信号,,便于连接声声、光报警装装置,进行报报警提示。如如图2-17所示,利用单单片机P3.6引脚控制上限限报警接点输输出,P3.7控制下限报警警接点输出。。以上限报警警为例,当温温度超过上限限报警值时,,令P3.6为“0”,则三极管导导通,继电器器J1得电,,使接接点动动作;;当温温度低低于上上限报报警值值时,,令P3.6为“1”,则则关关闭闭上上限限报报警警。。图2-17超限限报报警警输输出出电电路路2.3.4人机机接接口口电电路路设设计计人机机接接口口电电路路由由按键键接接口口电电路路与显示示器器接接口口电电路路组成成。。1.按按键键接接口口电电路路及及驱驱动动程程序序通过过仪仪表表前前面面板板上上的的按按键键操操作作,,可可以以查查看看检检测测的的温温度度、、报报警警设设定定值值等等参参数数,,也也可可以以向向仪仪表表内内输输入入一一些些数数据据。。例例如如,,输输入入报报警警设设定定值值、、转转换换输输出出20mA时对对应应的的温温度度值值、、巡巡回回显显示示时时间间间间隔隔等等数数据据。。仪仪表表按按键键接接口口电电路路如如图图2-18所示示。。本设设计计中中,,仅仅用用3个按键,即可实实现各种种操作需需要。由由于按键键个数少少,不需需要对按按键进行行编码访访问,直直接连接接在单片片机的P1.5、P1.6、P1.7上即可。。单片机机的P1口内部具具有上拉拉电阻,,因此,,当无按按键按下下时,对对应的I/O口为高电电平;当当有按键键按下时时,对应应的I/O口为低电电平,据据此可识识别按键键的按下下与否。。图2-18按键接口口电路对于3个按键而而言,最最多可以以有8种按键方方式。图图2-18所示的3个按键,,从左到到右分别别称为键键△、键键

与键键□。8种按键方方式如下下,而且且设计的的按键驱驱动程序序,每调调用一次次,都有有如下8种结果之之一:①键△△单独按按下;结结果则累累加器A中返回“1”;②键

单独按按下;结结果则累累加器A中返回“2”;③键□□单独按按下;结结果则累累加器A中返回“3”;④键△△与键

同时按按下;结结果则累累加器A中返回“4”;⑤键△△与键□□同时按按下;结结果则累累加器A中返回“4”;⑥键

与键□□同时按按下;结结果则累累加器A中返回“6”;⑦键△△、键

与键□□同时按按下;结结果则累累加器A中返回“7”;⑧三键键均未按按下。结结果则累累加器A中返回“0”;按键驱动动程序要要考虑的的另一个个问题是是按键的的“消抖”问题。图2-19按键的抖抖动干扰扰2.LED显示接口口电路及及驱动程程序在仪表的的前面板板上设计计了6位共阴极极LED数码管显显示器,用于显显示各路路实测温温度和设设定参数数。为了了尽量减减少仪表表的硬件件开销,,采用了了动态刷新新显示方方法。6位LED数码管显显示器各各有8个显示段段,每位位LED数码管相相同的段段连在一一起,由由一个I/O扩展芯片片U2统一进行行段驱动动,而各各位的共共阴极COM端则由另另一个I/O扩展芯片片U1进行位驱驱动。要要在某位位显示某某一字符符,需要要由单片片机通过过数据总总线使U2锁存8段显示码码,U1锁存位选选码。图2-20LED显示接口口电路图2-20中,U1与U2采用八D型透明锁存器器和边沿触发发器——74HC374,作为I/O口的扩展。74HC374的内部组成如如图2-21所示,其真值值表如表2-8所示。表2-874HC374的真值表输出控制ClockD输出L↑HHL↑LLLLXQ0HXXZ在74HC374的内部集成了了8个D触发器。8个触发器的输输出控制端连连接到一起作作为共同的输输出控制端OE,通过引脚1引出;8个触发器的的时钟输入入端连接到到一起作为为共同的时时钟输入端端CLK,通过引脚脚11引出。图2-2174HC374的内部组成成驱动程序的的设计思路路是,采用“内存映射”的显示原理理,即6位LED的显示内容容分别对应应单片机内内部6BRAM,显示周期期设计为12ms,每位LED的显示时间间为2ms,周而复始始地轮流扫扫描,就实实现了动态态显示。为为了严格地地保证显示示周期和每每位LED的显示时间间,可以通通过单片机机内部定时时器的定时时中断,在在中断服务务程序中进进行动态显显示。设计驱动程程序要考虑虑的另一个个问题是小小数点的显显示,允许小小数点在6位LED的任何一位位显示,实实现方法是是利用1字节的内部部RAM标注小数点点的显示位位置,该字字节内容为为0~5,分别表示示小数点的的显示位置置在最左1位到最右1位。由于仪表的的前面板面面积有限,,因此只设设计了3个按键。当当需要向仪仪表中输入入数据时,,只能采用“逐位加1输入”法,即利用一一个按键输输入0~9这10个数,每按按动一次按按键,该位位数值加1,加至9后则回至0,同时该位位LED呈闪烁显示示状态。该该位数据输输入完成后后,再移位位进行下一一位的输入入。实现某某位LED闪烁显示的的方法是,,让该位LED按某个时间间周期交替替亮、灭,,这个时间间周期必须须大于人的的视觉停留留时间,一一般可取120ms。在程序设设计中,使使用一个BIT变量,每过过120ms,将该变量量数值取反反。当该变变量数值为为“1”时显示,为为“0”时不显示。。需要利用用1字节的内部部RAM标注闪烁显显示位的位位置,该字字节内容为为0~5,分别表示示闪烁显示示位的位置置在最左1位到最右1位。3.数据输入入驱动程序序上述电路及及其驱动程程序完成了了响应按键键与显示字字符的功能能,还有一个重要任任务就是通过按按键和显示示器,向仪仪表输入数数据。输入入数据涉及及仪表的操操作,应尽尽量使操作作简单、有有序,符合合多数人的的操作习惯惯。由图2-18按键接口电电路与图2-20LED显示器接口口电路构成成的人机接接口电路在在仪表上的的前操作面面板如图2-22所示。输入数据的的操作如下下。按动“△”键,闪烁位位数值增1,增大到9后回至0,如下所示示:┌→0→1→2→3→4→5→6→7→8→9→┐┐└──────────←─────────┘图2-22仪表前面板板按动“

”键,闪烁位位在4位温度显示示器中向右右移动1位,当从最最右位继续续移动时,,便回至第第1位,如下所所示:┌→1→2→3→4→┐┐└────────┘┘按动“□”键,确认4位温度显示示器当前显显示的参数数。2.3.5通信接口电电路设计智能仪器设设计,必须须考虑对某某种网络的的支持,方方便构成局局域测控网网络,以便便实现更高高程度的集集中监控和和更大范围围的数据共共享。本例例设计了以以MAX487E芯片为收发发器的RS-485总线通信接接口电路,,如图2-23所示。图2-23通信接口电电路2.4软件设计根据设计任任务及2.3节讨论的硬硬件电路,,整机的软件件设计任务务有4项,从实时性性要求考虑虑,从高到到低依次为为:通信任务、、数据采集集与温度计计算、人机机服务和系系统初始化化。系统初始始化程序在在开机时运运行一次即即可,不在在考虑范围围之内。当当构成一个个数据采集集局域网络络时,本机机在网络中中处于从站站地位,本本机响应网网络的最大大时间延迟迟为主站发发出一帧信信息的时间间,超过这这个时间延延迟,主站站的调度命命令得不到到响应,将将降低整个个网络的通通信效率,,因此通信任务应作为本机机最高级别别任务。人机服务主要是按键键响应任务务,人的按按键动作时时间一般在在100ms左右,只要要在这个时时间内做出出响应即可可,实时性性要求不高高,安排为为最低级别别任务。数数据采集与与温度计算算任务作为为中间级别别任务。为了保证三三项任务按按预定优先先级别执行行,需要通通过中断机机制实现。通信任务务在串行通通信中断服服务程序中中完成,其其中断设置置为高级中中断,数据据采集与温温度计算任任务安排在在外部中断断服务程序序中完成,,其中断设设置为低级级中断,人人机服务任任务安排在在主程序中中完成。2.4.1人机服务任任务与主程程序人机服务任任务是实现仪器器的操作使使用,人机机服务程序序安排在主主程序中运运行。一开开始执行主主程序时,,需要首先先运行系统统初始化程程序,初始始化程序仅仅需开机时时运行一次次。主程序序仅包括初初始化程序序和人机服服务程序。。1.仪器操作作方法仪表前面板板如图2-22所示,通道道显示为2位,温度显显示为4位。为叙述述方便,4位温度显示示器自左至至右分别称称为第1、2、3、4位。仪器有有两种状态态:工作状状态与设定定状态。仪仪器一开机机自动处于于工作状态态,通过按按键操作可可从工作状状态进入设设定状态,,并从设定定状态退回回工作状态态。(1)工作状态态下的操作作按动“△”键,查看报警设设定方式、、报警设定定值、巡回回显示时间间间隔。报警方式式在通道显显示器上以以“1A”或“2A”表示,1A代表上限报报警方式,,2A代表下限报报警方式,,在温度显显示器上通通过两位数数字显示具具体报警方方式,两位位数字的含含义如表2-9所示;报警设定定值在通道道显示器上上以“1d”或“2d”表示,分别别代表上限限报警值和和下限报警警值,具体体数值在4位温度显示示器上显示示;巡回显显示时间间间隔在通道道显示器上上以“DS”表示,单位位为秒。首首次按动“△”键,进入“设定值显示示状态”,在本状态态下,继续续按动“△”键,则按下下述顺序巡巡回显示各各设定参数数:┌→1A→1d→2A→→2d→DS┐┐└─────────────┘┘按动“

”键,仪器进进入“定点显示状状态”,每按动一一下此键,,依次显示示下一通道道检测值。。连续按动动,则不停停地显示下下一通道检检测值,如如下所示::┌→→1→→2→→3→→4→→5→→6→→7→→8┐┐└──────────────────────────┘┘按动动“□”键,,仪仪表表进进入入“巡回回显显示示状状态态”,以以选选定定的的巡巡回回显显示示时时间间间间隔隔依依次次显显示示各各路路检检测测温温度度。。第3位第4位定义

0

0取消该路报警

0

1下限报警,设定值为正

0

2上限报警,设定值为正

1

0取消该路报警

1

1下限报警,设定值为负

1

2上限报警,设定值为负表2-9报警警方方式式(2)设设定定状状态态下下的的操操作作报警警方方式式、、报报警警设设定定值值、、巡巡回回显显示示时时间间间间隔隔三三种种参参数数需需要要在在设设定定状状态态下下输输入入到到仪仪器器中中。。具具体体操操作作如如下下。。按动动“△”键,,闪闪烁烁位位数数值值增增1,由由9继续续增增1时便便回回至至0,如如下下所所示示::┌→→0→→1→→2→→3→→4→→5→→66→→77→→88→→99→→┐┐└────────────────────←←────────────────┘┘按动动“

”键,,闪闪烁烁位位在在4位温温度度显显示示器器中中向向右右移移动动1位,,在在最最右右位位继继续续移移动动时时,,便便回回至至第第1位,,如如下下所所示示::┌→→1→→2→→3→→4→→┐┐└──────────────┘┘按动动“□”键,,确确认认4位温温度度显显示示器器当当前前显显示示的的参参数数,,进进入入下下一一个个参参数数的的设设定定。。(3)从从工工作作状状态态进进入入设设定定状状态态在工作状态下下,同时按住住“

”键与“□”键,当通道显显示器显示“1A”,同时4位温度显示器器有1位闪烁显示时时,表明仪表表进入“参数设定状态态”。(4)从设定状态态返回工作状状态完成设定后,,按动“□”键,便退出设设定状态,进进入工作状态态。在工作状状态下,温度度显示器上没没有闪烁位。。2.实现仪器操操作的软件编编程实现上述操作作的人机服务务程序流程图图如图2-24所示。2.4.2数据采集与温温度计算程序序根据图2-7与图2-13,每个通道A/D转换结束时,,都以中断的的形式通知CPU,每个通道的数数据采集与温温度计算都在在中断服务程程序中完成。一共用了9路数据通道,,0路为动态零点点数据,1~8路为8路温度数据。。每次采集数数据通道的通通道号,都存存储在“CH_NO”单元中。每次次采集的数据据首先经过预预处理,在预预处理中减掉掉10001个数字码(原原因在前向通通道关于A/D转换设计中有有详细叙述)),剩余的为为二进制数形形式的A/D转换数字码。。为便于后级级温度计算,,还要将二进进制数转换为为BCD码形式。接下下来进行动态态稳零处理,,即将该通道道的A/D转换数字码减减去零点数据据,则差值是是消除了运放放漂移影响的的、由现场实实测温度决定定的数据。最最后进行温度度计算,且通通过多路开关关为A/D转换器打开下下一通道。流流程图如图2-25所示。图2-25数据采集与温温度计算流程程图2.4.3通信程序根据图2-23所示的通信接接口电路,可可以将本仪表纳入入到总线拓扑扑的RS-485网络中。网络的介质访访问方式为主主从方式,主机为PC,而本仪表处处于从机地位位。从机在接接收到主机的的调度命令后后,可以占用用

温馨提示

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

最新文档

评论

0/150

提交评论