基于单片机的粮仓温度监控系统_第1页
基于单片机的粮仓温度监控系统_第2页
基于单片机的粮仓温度监控系统_第3页
基于单片机的粮仓温度监控系统_第4页
基于单片机的粮仓温度监控系统_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

xx大学本科生毕业设计(论文)基于单片机的粮仓温度监控系统xx大学 xx学院 05信息 xx2009年4月目 录前言4第1章 绪论6第1.1节 设计背景要求6第1.2节 设计思想综述61.2.1. 传感器与多路开关的通61.2.2. 多路开关与A/D转换器的关系简介71.2.3. A/D转换器及下位机的连通工作原理71.2.4. 用CAN总线实现通讯8第2章 现场部分主要器件分析9第2.1节 温度传感器的特性介绍与选择92.1.1. 热敏电阻的特性介绍92.1.2. 热敏电阻的选择9第2.2节 模/数转换原理ADC0809芯片的介绍102.2.1. 模/数转换器的概述102.2.2. A/D转换器的基本原理10第2.3节 CMOS多路开关MAX306及应用132.3.1. 16选1CMOS多路开关的工作原理及特性132.3.2. MAX306芯片的选择与介绍13第2.4节 译码器74LS138的引脚功能以及逻辑图14第2.5节 下位机芯片AT89C52的介绍15第3章 上位机与下位机之间的通信CAN总线16第3.1节 CAN总线介绍16第3.2节 系统总体硬件设计方案16第3.3节 系统硬件组成173.3.1. 总线接口模块173.3.2. 工作模块18第3.4节 系统软硬件设计183.4.1. CAN 总线通讯模块183.4.2. 监控模块19第4章 软件系统20第4.1节 主程序流程图20第4.2节 数据采集21结论22参考文献23致谢24附录25第 38 页 共 38 页【摘要】:本文论述了基于单片机的粮情监控系统,用CAN总线实现通信。在本系统中,温度的控制范围在-3050。需要温度采集的128个温度采集点选用的测试元件选用热敏电阻MF11。上百个温度检测点的传感器通过8个16通道多路开关MAX306,将信号送到第九个MAX306,用第九个MAX306的前8个引脚输入实现8通道多路开关的特性,然后再将信号送到A/D转换器的模拟输入通道。在仓房的温度的上升过程中,当温度传感器测得的温度大于28时,由下位机控制开启轴流风机;同样,在温度下降过程中,当所测得的温度小于28 时,再由下位机控制关闭轴流风机。【关键词】:单片机,温度传感器,A/D转换器, CAN总线Abstract : It is a monitoring system of warehouse that based on personal computer to originally design, and realize communication with CAN bus. There are 128 sites of gathering temperature that span in - 30 to + 50 controlling this. We use thermostat MF11 for testing component. Switch MAX306 of 8 send signal to pass way more than way switch, switch this adopt chip MAX306 too, appear with 8 pin of high level to input, then sent the simulation input channel of A/D converter of the signal. While temperature of the warehouse is ascending, send the signal to the next plane AT89C52, it shed the air blower to control; Equally, in the course of dropping temperature, when the temperature must examined is below 28, is it shut off shed the air blower.Key words: personal computer ,Temperature sensor, A/D conversion,CAN bus前言自1980年代起,国内的大多数粮库相继开始用微机采集粮温和监测粮情。经过20多年的发展应用,已在许多粮库取得了良好的效果和明显的经济效益,为实现粮库管理现代化起到了十分积极的作用。随着电子技术和经济的发展,原来的系统存在的不足已经明显地凸现出来,希望采用微机集中监测粮温的粮库越来越多,因而对微机监测技术上提出了更高的要求。因此,利用电子技术的新成就,开发出结构简单,可靠性高,成本低,容易操作维护的微机粮温监测系统是现在所必需的。我们可以通过多种新技术,新元件,组成多种方案来解决。但是国内粮库的现状是资金有限,通常不可能对监测系统大投入,因此要求系统成本尽量地低;另外,国内粮库电气技术力量相对薄弱,所以希望系统结构尽量简单、可靠,容易维护,当然还希望测量结果尽量准确。针对这些要求,本粮库温度测控系统设计是一个小型的集散控制系统,实行集中管理,分散控制的原则。从地域上分,可分为主控微机和粮仓监测现场两部分;从通讯上分,可分为上位机和下位机两级控制。下位机可以独立完成温度数据的采集,自动控制等功能,而上位机可以控制下位机进行检测,通信。本系统主要是将测试元件,也就是半导体温度传感器测得的模拟信号,经过A/D转换送入下位机进行数据分析和处理。下位机根据上位机(主控机)的命令,通过通信接口传输检测信息。控制系统根据下位机传送的结果,判断温度是否超出规定的变化范围,根据这个数据控制系统自动控制调温设备风机的启动和停止。随着大型国家粮食储备库的日益增多和更多新技术的不断涌现,预计未来国内粮情测控系统将在以下几个方面得到进一步的发展:首先,热敏电阻和数字温度传感器在同一粮情测控系统中使用。根据以上分析,热敏电阻和数字温度传感器在房式仓和高大仓房两个不同场合各自具有优势,随着大型国家粮食储备库的增多,在同一储备库中将存在不同的仓型,而现存的粮情测控系统中只能选择热敏电阻或数字温度传感器二者之一作为温度检测元件。为了更好地发挥热敏电阻和数字温度传感器各自的优势,在同一粮情测控系统中选用这两种传感器是未来市场发展的需求之一。其次,现场总线技术的应用将更为广泛。现场总线技术是一个全新的通信技术,它代表着控制系统未来的发展方向,未来的粮情测控系统将不可避免地放弃RS485通信方式转而采用新型的现场总线技术,这将使系统的可靠性、性能价格比大大提高。再者,系统功能的进一步完善。目前粮情测控系统仅局限与温湿度的检测和通风控制,诸如粮食储藏过程中倍受关注的水分检测和虫害检测均未得到解决,预计未来的粮情测控系统将会把更多种类的粮情检测综合数据采集上来,与粮情专家分析软件密切配合,共同保障粮食的储藏安全。第1章 绪论第1.1节 设计背景要求在电子技术和经济的发展,原来的粮情监测系统存在的不足越来越多,开发出结构简单,可靠性高,成本低,容易操作维护的微机粮温监测系统是当前的首要需求。如果希望采用微机来集中监测粮温的粮库,那么对微机监测技术就提出了更高的要求。我们应该利用新技术、新成就,通过多种新元件,多种设计方案来解决。这将使系统的可靠性、性能价格比大大提高。然而,目前粮情测控系统存在着很多问题和不足,像局限于温湿度的检测和通风控制,诸如粮食储藏过程中倍受关注的水分检测和虫害检测均未得到解决,并且现存的粮情测控系统中,只能选择热敏电阻或数字温度传感器二者之一作为温度检测元件。但是,国内粮库的现状是资金有限,通常不可能对监测系统大投入,因此要求系统成本尽量地低;另外,国内粮库电气技术力量相对薄弱,所以希望系统结构尽量简单、可靠,容易维护,当然还希望测量结果尽量准确。设计要求:.制定总体设计方案,包括系统工作原理和工作流程图;.收集与本课题有关的产品资料,分析其优缺点;.在温度上升过程T28时开启风机;在温度下降过程中T28时关闭风机;.温度采集点:128个;.温度范围:-3050;.精度要求:-2+2;.与上位机通讯采用CAN总线方式。第1.2节 设计思想综述1.2.1. 传感器与多路开关的通在本设计中,我们考虑将128个负温度系数的半导体传感器MF11,每16个分为一组,总共分为8组。如附录(图1)所示。由于多路开关使用的是MAXIM公司的MAX306,这是一种16选1的高性能通用型的多路转换器,这样就使得128个传感器所测得的温度信号可以分为8组,并且分别连接8个多路开关(U1U8),对于每一个具体的芯片而言,判断选择哪一路(116)温度信号则由此芯片的地址线A0、A1、A2、A3决定。然后由OUT引脚输出信号。也就是说,这8个输出的信号OUT1OUT8,作为第九片MAX306(U9)的输入信号,U9的OUT输出一路信号。1.2.2. 多路开关与A/D转换器的关系简介 ADC0809MAX306运算放大器图1-1 MAX306与ADC0809的信号转换在本设计中,由于选用的传感器MF11是热敏电阻,所以传感器所测到的温度信号是电阻值,而在设计电路中,要将这些电阻信号转换成电压信号,就需要在多路开关(U 9)的输出与A/D转换器(ADC0809)的输入之间加入运算放大器。这样,经过转换后的一路电压信号进入ADC0809的输入端,由模拟信号转变成为下位机可读取的数字信号,如图1-1所示。1.2.3. A/D转换器及下位机的连通工作原理电路连接主要涉及两个问题:一是八路模拟信号通道选择,二是A/D转换完成后数据的传送。如附录(图2)所示。在本设计中,选择模拟通道IN0,因此A、B、C分别为0、0、0,A、B、C三端接地即可. 和P2.1作写选通信号。从附录(图2)中可以看到,ALE信号和START信号连接在一起了,这样连接使得在信号的前沿写入地址信号,紧接着在其后沿就启动A/D转换。A/D转换后得到的是数字量的数据,这些数据应传送给单片机进行处理。数据传送的关键是如何确认A/D转换的完成,因为只有确认数据转换完成后,才能进行传送。为此可采用三种方式:定时传送方式、查询方式、中断方式。本设计采用中断方式,即把表明转换完成的状态信号EOC与单片机AT89C52的连接,作为中断请求信号。当EOC=0时,表示转换还未完成,等待。当EOC=1时,数据转换完成。一旦确认转换完成,89C52的就会产生中断,89C52响应中断后就可以通过指令进行数据传送。首先送出口地址,并以作为选通信号,当信号有效时,输出允许信号OE即有效,把转换数据送上数据线供单片机接收。当74LS138的C、B、A为0、1、1时,选通P2.1,当89C52的选通时,两者分别经过与非门,到达ALE和START端,ALE在信号前沿进行地址锁存,START使内部寄存器清0;START在信号的下跳沿时,开始进行A/D转换。转换开始后,P2.1始终为0,则为1,所以START始终保持低电平。当转换结束后,EOC=1,将信号送入89C52的,产生中断信号,通知89C52转换结束。首先送出口地址,并以作为选通信号,当信号有效时,输出允许信号OE即有效,把转换数据送上数据线供89C52接收。74HC74是二分频器,89C52的时钟频率是6MHz,所以89C52的ALE端的频率是1MHz,ALE与74HC74的CLK端连接,经分频后,端输出的频率为5KHz,端与ADC0809的CKOCK端连接,所以ADC0809的时钟频率信号为5KHz。由ADC0809与单片机89C52的接口电路可知,ADC0809的地址为000CH。1.2.4. 用CAN总线实现通讯本粮情监测系统中的通讯采用CAN总线,对于CAN总线来说,各测控节点功能相对单一,数据量少,因此对CPU的要求大大降低。并且CAN 可提供高达50Kbit/s的数据传输速率。CAN 总线的控制器接口、总线收发器和I/O器件,我们均选用Philips公司生产的82C250CAN控制器和与其配套的82C250CAN收发器。按照CAN总线物理层协议选择总线介质,设计布线方案,连接成CAN总线分布式测控网络CAN控制器选用SJA1000。总线收发器选用PCA82C250。 PCA82C250是CAN 协议控制器和物理总线之间的接口。使用PCA82C250的目的是为了增大通信距离,提高系统的瞬间抗干扰能力,保护总线。为了进一步提高抗干扰措施,在两个CAN器件之间使用了由高速隔离器件6N137构成的隔离电路。与下位机的连接如附录(图3)所示:单片机将采集到的数据送到SJA1000, CAN控制器检测到总线上有数据时会自动接收总线上的数据,存入其接收缓冲区,并中断接收服务程序,通过CAN总线收发器82C250传上总线。89C52通过执行中断接收服务程序,从CAN控制器的接收缓冲区读取数据,并对其进行进一步处理工作。 其中DC-DC模块负责对82C250供电,其隔离电压大于1000V,隔离电流小于200mA。第2章 现场部分主要器件分析第2.1节 温度传感器的特性介绍与选择2.1.1. 热敏电阻的特性介绍温度传感器主要由热敏元件组成。热敏元件品种教多,市场上销售的有双金属片、铜热电阻、铂热电阻、热电偶及半导体热敏电阻等。以半导体热敏电阻为探测元件的温度传感器应用广泛,这是因为在元件允许工作条件范围内,半导体热敏电阻器具有体积小、灵敏度高、精度高的特点,而且制造工艺简单、价格低廉。热敏电阻是一种半导体感温元件。其特点是电阻值随着温度的升高而降低,具有负的电阻温度系数。1热敏电阻的优缺点 :(1)热敏电阻与金属电阻相比,具有以下优点:电阻温度系数大,灵敏度很高;电阻率很大,因此可以做成体积很小的电阻;结构简单,体积小,重量轻,特别适用测量点的温度和表面温度;热惯性小,反应速度快,适于测量快速变化的温度。(2)热敏电阻的缺点是:同一型号热敏电阻的电阻温度特性分散性很大,互换性很大,非线性严重,使用起来很不方便。此外,电阻与温度的关系不够稳定,测温误差较大。而且,除特殊的热敏电阻外,也不适宜测量以上的高温。热敏电阻的这些缺点限制了它的广泛使用。2热敏电阻器的主要参数:各种热敏电阻器的工作条件一定要在其出厂参数允许范围之内。热敏电阻的主要参数有十余项:标称电阻值、使用环境温度(最高工作温度)、测量功率、额定功率、标称电压(最大工作电压)、工作电流、温度系数、材料常数、时间常数等。其中标称电阻值是在25零功率时的电阻值,实际上总有一定误差,应在10%之内。2.1.2. 热敏电阻的选择按温度特性热敏电阻可分为两类,随温度上升电阻增加的为正温度系数热敏电阻,反之为负温度系数热敏电阻。热敏电阻是目前国内粮库广泛采用的一种半导体型传感器,其最大的优点是:灵敏度高,受引线长度的影响小。尽管其特性具有非线性和较差的一致性,但由于成本低廉,当精度要求不太高时,是十分经济和实用的。基于粮库的具体粮情,本系统的温度传感器选用负温度系数的半导体热敏电阻MF11。负温度系数热敏电阻是以金属氧化物为主要原料。材料都具有半导体性质,体内的载流子(电子和空穴)数目少,电阻较高;温度升高,体内载流子数目增加,自然电阻值降低。有灵敏度高、稳定性好、响应快、寿命长、价格低等优点。本设计选用的MF11型号热敏电阻,采用国际GB6665-86组织生产B值与阻值一一对应,且B值误差范围小,在对于阻值误差范围在5%的产品,其一致性,互换性良好。适用范围:交流直流电路的温度补偿;在电源电路中抑制浪涌电流;一般精度的温度测量和控制。其时间常数30S,耗散系数6mW/,测量功率0.1m W,额定功率 0.5W,使用温度范围-55+125。标准阻值及误差见附录(表1)。第2.2节 模/数转换原理ADC0809芯片的介绍2.2.1. 模/数转换器的概述模/数转换的过程:在数据采集系统中,模数转换器是其中至关重要的环节,在单片机中,对模/数转换,也就是A/D转换的控制一般分为三个过程:1.单片机通过启动控制口发出启动转换信号,命令模/数转换器开始转换。2.单片机通过状态口读入A/D转换器的状态,判断它是否转换结束。3.一旦转换结束,CPU发出数据输出允许信号,读入转换完成的数据。模/传感器输出的电压信号为模拟量,而单片机只能处理数字量。为使单片机能进行高精度的信号处理,就必须经过A/D转换器将传感器输出的电压模拟信号转变为数字量。2.2.2. A/D转换器的基本原理A/D转换器用来将输入的模拟量转换为数字量输出。A/D转换有逐次逼近式,计数式,双积分式,并行式等多种形式,本设计使用逐次逼近式A/D转换电路。其原理电路图如图2-1所示控制逻辑先使用逐次逼近寄存器SAR的最高为DN-1置1(其他各位为0),送D/A转换器转换,输出模拟电压VC,并与输入的模拟电压VIN相比较;若VCVIN,则保留此位,反之则将此位 置0。然后将下一位DN-2置1,与上次结果一并送D/A转换器输入一新的VC,再与VIN比较;依次进行直至最低位为止。最后SAR数据线状态就是转换后的数字量。图2-1 逐次逼近式A/D转换器这种A/D转换方式速度比较快,精度也较高,在微型机接口中应用很广。在本设计中使用芯片ADC0809进行数模转换。ADC0809是CMOS8位ADC芯片,为28引脚的双列直插式封装。其主要特性是:分辨率为8位;具有控制锁存的8路输入模拟开关;单电源+5V供电(输入模拟量只能在0V5V);具有可锁存的三态输出,输出量与TTL兼容;时钟频率范围为10K1280KHz;功耗为15mW。1 ADC0809的内部逻辑结构ADC0809的内部逻辑结构如图2-2所示。图2-2 ADC0809内部逻辑电路图中有多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用一个A/D转换器进行转换。地址锁存与译码电路完成对A,B,C三个地址位进行锁存和译码,其译码输出用于通道选择。8位A/D转换器是逐次逼近式,由控制与时序电路、逐次逼近寄存器、树状开关以及256R电阻接阶梯网络等组成。输出锁存器用于存放和输出转换得到的数字量。2. 信号引脚ADC0809芯片引脚排列如图2-3所示图2-3 ADC0809的引脚图0809对输入量的要求主要有:信号单极性,电压范围为05V,若信号过小还需进行放大。模拟量输入在A/D转换过程中其值不应变化,因此对变化速度快的模拟量,在输入前应增加采样保持电路。A、B、C地址线A为低位地址,C为高位地址,用于对模拟通道进行选择,见表2.2.2。本设计使用IN0通道,因此C、B、A为0、0、0,即A、B、C端接地。ALE地址锁存允许信号对应ALE上跳沿,A、B、C地址状态送入地址锁存器中。START转换启动信号START上跳沿时,所有内部寄存器清0;START下跳沿时,开始进行A/D转换;在A/D转换期间,START应保持低电平。本信号简写为ST。D0D7数据输出线,为三态缓冲输出形式,可以和单片机的数据线直接相连。IN0IN7模拟量输入通道CLK时钟信号ADC0809的内部没有时钟电路,所需时钟信号由外界提供,因此有时钟信号引脚。通常使用500KC的时钟信号。EOC转换结束状态信号EOC=0时,正在进行转换;EOC=1时,转换结束。该状态信号既可作为查询的状态标志,又可以作为中断请求信号使用。在本设计中EOC用作中断请求信号。OE输出允许信号用于控制三态输出锁存器向单片机输出锁存转换得到的数据。OE=0时,输出数据线呈高电阻;OE=1时,将转换结果送到数据总线上。VCC5电源。参考电源。一般与VCC相连,与GND相连。第2.3节 CMOS多路开关MAX306及应用2.3.1. 16选1CMOS多路开关的工作原理及特性由于计算机在任一时刻只能接收一路模拟量信号的采集输入,当有多路模拟量信号时需通过模拟转换开关,按一定顺序选取其中一路进行采集。 CMOS模拟开关有两种基本用法:(1)当信号从多路模拟开关的公共端输出时,可作为多路信号传输器,实现从多线到1线的传输功能。(2)当信号从多路模拟开关的公共端输入时,又变成信号分离器,实现从1线到多线的传输功能。CMOS模拟开关具有:电源电压范围宽(4000系列一般为3V18V);微功耗(低于1W);速度快(传输信号频率高达几十兆赫);抗干扰能力强、无触点、寿命长等优点。2.3.2. MAX306芯片的选择与介绍1. MAX306是一种常用的16路模拟开关,其结构如图2-4所示2. MAX306的具体功能介绍从技术方面看,MAXIM模拟开关和多路转换器的性能参数普遍具有相当高的水平。为保证电路能正常工作,器件还提供2000V静电保护,输入通道的过电压钳位和开关的先断后合能力。先断后合能力可以确保各输入通道不会相互短路,保证信号源和传感器的安全,而过电压钳位保护电路可防止大信号进入后续电路。MAX306就是这种高性能通用型多路转换器。图2-4 MAX306的管脚图它具有下列功能:程序控制16选1(由4个地址端和1个选通端决定);导通电阻RON100;通道间匹配误差5;通道间串扰-92dB;导通时对地泄漏电流25nA;导通时对地等效电容140pF;开关时间1000次)Flash ROM; 32个双向I/O口; 3个16位可编程定时/计数器中断; 256x8bit内部RAM;时钟频率0-24MHz; 2个串行中断;可编程UART串行通道; 2个外部中断源;可编程UART串行通道; 3级加密位 2个读写中断口线; 低功耗空闲和掉电模式;软件设置睡眠和唤醒功能;极限参数:工作温度在-55至+125之间;储藏温度在 -65至+150之间;任一引脚对地电压在-1.0V至+7.0V之间;最高工作电压为 6.6V;直流输出电流为15.0mA。第3章 上位机与下位机之间的通信CAN总线第3.1节 CAN总线介绍CAN,全称为“Controller Area Network”,即控制器局域网,是国际上应用最广泛的现场总线之一。 CAN最初出现在80年代末的汽车工业中,由德国Bosch公司最先提出。1993年,CAN 已成为国际标准ISO11898(高速应用)和ISO11519(低速应用)。CAN是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率,高抗电磁干扰性,而且能够检测出产生的任何错误。当信号传输距离达到10Km时,CAN 仍可提供高达50Kbit/s的数据传输速率。 CAN总线网络的技术特点:1.用通讯数据块编码,可实现多主工作方式,数据收发方式灵活,可实现点对点、一点对多点及全局广播等多种传输方式; 2.采用非破坏性基于优先权的总线仲裁技术,具有暂时错误和永久性故障节点的判别及故障节点的自动脱离功能,使系统其它节点的通信不受影响;同时,CAN具有出错帧自动重发功能,可靠性高; 3.信号传输用短帧结构(8字节),实时性好; 不关闭总线即可任意挂接或拆除节点,增强了系统的灵活性和可扩展性; 4.采用统一的标准和规范,使各设备之间具有较好的互操作性和互换性,系统的通用性好; 5.通讯介质可采用双绞线,无特殊要求;现场布线和安装简单,易于维护,经济性好。 总之,CAN总线具有实时性强、可靠性高、结构简单、互操作性好、价格低廉等优点,克服了传统的工业总线的缺陷,是构建分布式测控系统的一种有效的解决方案。第3.2节 系统总体硬件设计方案首先,定义各节点的功能,确定各节点检测或控制量的数目、类型、信号特征。这是进行微机测控系统网络化的第一步。原则是尽量避免重复测试。智能节点模块绝大部分是输入输出模块,调节回路可以跨模块构成回路。但考虑到调节回路的安全性,为了保证在上位机或整个通信线路出现重大故障时回路调节不受到影响,设计了隔离型、自整定PID、隔离型温度调节器等带有调节功能的模块。它们的输入输出通道都在同一模块中,其底层软件的功能很强,所有的输入处理、输出增量的计算、输出,包括自整定模块的过程参数的自动识别都在本模块实现,保证了调节回路的安全性、可靠性。其次,选择各节点控制器和相应的CAN适配元件。由于各测控节点功能相对单一,数据量少,因此对CPU的要求大大降低。CAN 总线适配器件主要有:控制器接口、总线收发器和I/O器件。采用Philips公司生产的82C250CAN控制器和与其配套的82C250CAN收发器。82C250具有完成高性能通信协议所要求的全部必要特性。具有简单总线连接的82C250可完成物理层和数据链路层的所有功能。最后,按照CAN总线物理层协议选择总线介质,设计布线方案,连接成CAN总线分布式测控网络。第3.3节 系统硬件组成3.3.1. 总线接口模块1微处理器目前广泛流行的CAN总线器件有两大类:一类是独立的CAN控制器,如82C200,SJA1000及Intel 82526/82527等;另一类是带有芯片CAN的微控制器,如P8XC582及16位微控制器87C196CA/CB等。根据当前市场、开发工具和课题的实际需要,系统的智能节点均选用ATMEL 8位单片机AT89C52为微处理器。2. CAN控制器CAN控制器选用SJA1000作为控制器。SJA1000是高集成度CAN控制器。具有多主结构、总线访问优先权、成组与广播报文功能及硬件滤波功能。输入时钟频率为16MHh时钟,输出可编程控制。由以下几部分构成:接口管理逻辑、发送缓存器、接收缓存器、位流处理器、位定时逻辑、收发逻辑、错误管理逻辑、控制器接口逻辑等。1. SJA1000有很多新功能 : 标准结构和扩展结构报文的接受和发送;64字节的接收FIFO;标准和扩展帧格式都具有单双接收滤波器;可进行读写访问的错误计数器;可编织的错误报警限制:最近一次的错误代码寄存器;每一个CAN总线错误都可以产生错误中断;具有丢失仲裁定位功能的丢失仲裁中断;单发方式(当发主错误或丢失仲裁时不重发);只听方式(监听CAN总线,无应答,无错误标志);支持热插拔(无干扰软件驱动位速率监测)。因此,系统的智能节点均选用SJA1000作为CAN控制器。见下图3-12. CAN总线收发器CAN总线收发器选用PCA82C250作为总线收发器。 PCA82C250是CAN 协议控制器和物理总线之间的接口。82C250 可以为总线提供不同的发送性能,为CAN 控制器提供不同的接收性能。而且它与“ISO 11898”标准完全兼容。PCA82C250的目的是为了增大通信距离,提高系统的瞬间抗干扰能力,保护总线,降低射频干扰(RFI)实现热防护等。为了进一步提高抗干扰措施,在两个CAN器件之间使用了由高速隔离器件6N137构成的隔离电路。图3-1 CAN控制器SJA1000 连接图3.3.2. 工作模块1数据采集模块数据采集模块用来将各类传感器的数据传送到CAN总线上工作原理:各类传感器采集到数据后将05V的模拟量传送到ADC0809,0809将转换成的数字量传给89C52,最后单片机将采集到的数据送到SJA1000通过CAN总线收发器82C250传上总线,完成数据采集工作。2控制模块是一个带有CAN通信功能的隔离型控制器。该模块有一个数据输入点,可以是命令或其他信号,有一个模拟量输出,供输出执行机构是连续变化的控制系统使用;还有一路是数字量输出,供执行机构是两位式的控制系统使用,。这个控制器可以单独作为一个调节器使用,因为在该模块上提供了完整的显示窗口和操作按钮,可以设定温度设定值、PID调节参数等运行过程中可以显示被控对象的PV值和SV值。该模块可以根据设定的控制点及升、降的时间实现自动调节。带有CAN通信口,可以与微机实现通信,也就是说控制模块可以接入CAN 网络系统。通过上位机实现对多个节点上的控制模块设定各控制点的上下限控制点、PID值、实现时间等控制参数,并实时记录各控制器的测量值,描绘出变化曲线,供实验人员对实验结果进行分析。第3.4节 系统软硬件设计3.4.1. CAN 总线通讯模块CAN总线测控系统的通信软件分为3部分:CAN初始化、数据发送和数据接收。1.CAN初始化 其主要是设置CAN的通信参数。需要初始化的寄存器有:模式寄存器(Peli CAN模式)、时分寄存器、接收代码寄存器、屏蔽寄存器、总线定时寄存器、输出控制寄存器等。需要注意的是,这些寄存器仅能在复位期间可写访向,因此,在对这些寄存器初始化前,必须确保系统进入了复位状态,并且系统中各CAN控制器的总线定时寄存器的初始化字必须相同。2.数据发送现场的各传感器把环境多参数的检测信号(数字量、模拟量、开关量)进行转换处理后,发向CAN控制器的发送缓冲区,然后启动CAN控制器的发送命令,此时CAN控制器将自动向总线发送数据,不再需传感器的微控制器进行干预。若系统中有多个传感CAN控制器同时向总线发送数据,则CAN控制器通过信息帧中的标识符来进行仲裁,标识符数值最小的CAN控制器具有对总线的优先使用权。3.数据接收整个温室微机测控系统中的CAN控制器检测到总线上有数据时会自动接收总线上的数据,存入其接收缓冲区,并向89C52微控制器发送接收中断,启动中断接收服务程序,89C52通过执行中断接收服务程序,从CAN控制器的接收缓冲区读取数据,并对其进行进一步处理工作。3.4.2. 监控模块集成了所有的数据采集、参数设定、数据统计分析等功能。同时,为了实现操作人员对生产过程的人工干预,如修改给定值、控制参数和报警限等,添加了参数的修改功能;为了建立人机信息联系,并且能将各节点传输来的数据以图形、图表或其它动态方式显示出来,本系统可以使用任何具有DDE(Dynamic Data Exchange)接口的MMI(Man-Machine interface)软件;为了更好的管理各种数据,采取了组态控制方式,能够接收来自MMI软件以及用户软件的DDE连接请求,并将该请求传递给通信驱动部分,由通信驱动转换为通信信号通过传输媒体传递给智能模块的固化软件。并将模块的应答作为DDE操作的结果返回给MMI软件及用户软件。第4章 软件系统第4.1节 主程序流程图 图4-1 主程序流程图该系统中,首先对CAN总线,A/D进行初始化设计,需要初始化的寄存器有:模式寄存器(Peli CAN模式)、时分寄存器、接收代码寄存器、屏蔽寄存器、总线定时寄存器、输出控制寄存器等。同时保证系统进入复位状态。接着系统软件判断ad-en是否为高电平,若检测不是则开始采集模拟信号,经A/D转换后将数据与标准温度数据进行比较,若大于则打开风扇同时继续判断当前的温度,若温度降低到标准值以下则停止风扇转动,系统重新回到判断阶段。第4.2节 数据采集图4-2 数据采集原理图该系统包括初始化子程序和数据采集子程序。在数据采集子程序中首先将传感器的模拟信号发到AD0809进行A/D转换,将采集的数据与标准数据进行比较,若大于则打开风扇同时继续判断当前的温度,若温度降低到标准值以下则停止风扇转动,系统重新回到判断阶段。结论十五周的毕业设计即将结束,毕业设计对我们来说是大学阶段的最后一个环节,是对我们四年来所学知识的一次重要总结,同时也是对自己动手能力和理论应用于实践能力的极大考验。随着对设计课题的逐渐了解,我们逐步意识到理论和实践紧密结合的重要性。理论只有在实践的过程中才能显示其魅力,才能真正体会其实质,才能深入了解它的用途。在整个粮情监测系统的设计过程中,我按部就班的完成了要求。从分析原理, 理解原理,再到监测功能的实现,由浅入深,逐步清晰。通过这次实践,我学会了应用protel99软件画原理图,熟悉了很多芯片的管脚功能及应用,比如89c52单片机的各个管脚的功能,还有MAX306,ADC0809等芯片。更重要的是我们在编程过程中对汇编语言有了比较深入的了解,并在一步步调试成功的过程中,体会到了错误得到发现和改正后的极大快乐,对单片机产生了浓厚的兴趣,希望在以后的工作中,能在这方面有一定的发展。在设计过程中,我遇到了很多的困难,发现自己的理论体系距实际要求还有很大距离,幸好在设计期间郑钢老师给予了我极大的指导和帮助。经过实验调试,以上粮情监测集散系统的设计方案可行,实现简单。经处理也可用于其它集散控制系统的通信模块。参考文献1. 李广弟. 单片机基础. 北京:北京航空航天大学出版社,19932. 侯朝桢,郑链,张文政. 微机与单片机应用基础. 北京:北京理工大学出版社,20033. 张洪润,马平安,张亚凡. 单片机原理及应用. 北京:科学出版社,20024. 杨光友,朱宏辉. 单片微型计算机原理及接口技术. 北京:中国水利水电出版社,20015. 徐爱钧,彭秀华. 单片机高级语言环境编程与应用. 北京:电子工业出版社,20016. 求实科技. 单片机典型模块设计实例导航. 北京:人民邮电出版社,20047. 求实科技,靳达. 单片机应用系统开发实例导航. 北京:人民邮电出版社,20048. 石文华. 单片机原理及应用,中国电力出版社,20059. 王幸之. AT89系列单片机原理与接口技术.北京:北京航天航空大学出版社,2005.510. 高峰. 单片机微型计算机原理与接口. 北京:科学出版社,2003.211. TLC5615C/I 10-Bit digital-to-Analog Converters. Texas Instruments12. ATMEL.8-bit Microcontroller with 8K Flash AT89C52致谢本毕业设计的完成与指导师xx老师的悉心指点,邵老师在长达十五周的毕业设计工程中,自始至终因材施教,根据每个人的特点,对毕业设计提出工作的方向和方法,并及时提供了大量参考材料。遇到设计上的难题,邵老师指引我们自己解决问题,锻炼了个人解决实际问题的能力。在此向x老师表示诚挚的感谢!最后,还要感谢大学四年中我许多令人尊敬的各科老师!是这些老师们把我引入了一个更为广阔的自动化天地!同时,在此也要感谢系里各级领导对我大学四年生活和学习上的照顾!特此感谢!附录;:; 本程序采用一个ad转换器,用8个MAX306模拟开关(每个16路开关) ; ; 每次只采样一路温度,数据记录在sensor0中,第二次结果与 上次采样结果(第二个温度检测点)比较,结果大的; 存放到sensor1中,若有大于28度的情况,开风机,128次采样后,若sensor1中(最大值)小于28度则关闭风机。;*; sensor0 equ 30h; sensor1 equ 31h; adnum equ 32h;记录采样次数 t2ms equ 36h;2ms定时中断记数 adnum1 equ 37h;=16 为每个MAX306的开关通路选择地址 adnum2 equ 38h;=8 为每个MAX306 的片选地址 comm1 equ 39h;通讯用到的

温馨提示

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

评论

0/150

提交评论