基于CAN总线的多点温度监测及报警系统设计_第1页
基于CAN总线的多点温度监测及报警系统设计_第2页
基于CAN总线的多点温度监测及报警系统设计_第3页
基于CAN总线的多点温度监测及报警系统设计_第4页
基于CAN总线的多点温度监测及报警系统设计_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

-.z基于CAN总线的多点温度监测及报警系统设计摘要本文设计的是一套基于CAN总线的多点温度检测及报警系统,主要是对粮仓的温度监控,以确保储粮的平安。系统设计分为主控模块和监控模块。主控监控两模块的微处理器都采用AT89S52单片机。为了实现主控模块对监控模块的实时监测,在主控端和监控端处都设计有CAN通信电路,由控制器SJA1000和收发器82C250组成CAN通信接口。另外,主控端的外围电路局部包括时钟电路功能模块、EEPROM存储电路模块、串口通信电路模块、译码电路功能模块、液晶显示屏模块;监控端的外围电路局部为温度传感器。主控端的时钟芯片选用DS12887,EEPROM存储芯片选用户AT24C16,显示屏采用FM12232B液晶模块。监控端的温度传感器采用数字传感器DS18B20,系统设置温度传感器的阐值为50℃。本文给出了系统的构造和软硬件设计方案,可实现实时温度测量、越限报警等功能。该系统具有可靠性好、通信速率高、抗干扰能力强等特点。本系统还适用于在粮仓、北方暖气和热水供给中心、大面积水泥铺建等多种场合。关键词:CAN总线;DS18B20;AT89S52BasedonCANbusmultipointtemperaturemonitoringandalarmingsystemdesignABSTRACTThispaperdesignsamulti-pointtemperaturedetectionandalarmsystembasedonCANbus,thissystemismainlyusedtomonitorthetemperatureofgranary,toensurethesafetyofthestoredgrain.Thissystemisdividedintothemaincontrolmoduleandthesurveillancemodule.ThemicroprocessorofthemaincontrolmoduleandthesurveillancemodulebothuseDSPAT89S52microcontroller.Inordertoachievereal-timemonitoringandmeasuringofthesurveillancemodule,CANmunicationscircuitsaredesignedattheportofthemaincontrolmoduleandthesurveillancemodule,whichisposedbythecontrollerSJA1000andthe82C250municationsinterface.Inaddition,thee*ternalcircuitsectionofthemaincontrolmoduleincludestheclockcircuitmodules,EEPROMmemorycircuitmodule,serialmunicationcircuitmodule,decodingcircuitmodules,LCDmodules;themainportionofthee*ternalcircuitsectionofthesurveillancemoduleisthetemperaturesensor.TheclockchipofthemaincontrolmoduleusesDS12887,theEEPROMmemorychipcanselectAT24C16,theLCDdisplaymodulecanselectFM12232B.ThetemperaturesensorofthesurveillancemoduleusethedigitalsensorDS18B20,thelininalvalueofthetemperaturesensorissettedat50℃bythesystem.Thispaperpresentsthearchitectureofthesystemandthehardwareandsoftwaredesignproposal,enablingthefunctionofreal-timetemperaturemeasurementandtheoff-limitedalarm.Thesystemhasgoodreliability,hightransmissionrate,stronganti-interferenceandsoon.Thissystemcanalsobeappliedtothegranary,thenorthcentralheatingandhotwatersupplycenter,thecementpavingofalargeareaandotheroccasions.Keywords:CAN-bus;DS18B20;AT89S52目录1绪论51.1背景介绍51.2国内外相关技术开展概况51.2.1温度传感器的开展概况51.2.2现场总线概况61.3温度监测及报警系统的应用前景72现场总线CAN原理介绍72.1现场总线简介72.2CAN总线简介82.2.1CAN-bus的产生与开展82.2.2CAN-bus的根本工作原理92.2.3CAN-bus的特征102.2.4CAN协议简介113基于CAN多点温度检测系统的总体设计153.1系统总体方案设计153.2系统设计的主要器件选择163.2.1微处理器163.2.2SJA1000控制器173.2.3PCA82C250总线收发器193.2.4温度传感器的选择203.2.5显示器的选择243.3系统硬件构造组成254系统的硬件设计274.1单片机最小系统设计274.2串口电路设计284.3EEPROM 294.4CAN通信电路设计294.4.1CAN通信构造框图304.4.2CAN通信电路电源模块314.4.3CAN通信接口电路314.5时钟电路设计324.6译码电路334.7液晶显示屏344.8温度传感器354.9键盘电路364.10报警电路375系统的软件设计385.1系统整体软件设计385.2主控模块软件设计385.2.1CAN控制器的初始化385.2.2主控端巡检监控端415.2.3外围电路软件设计415.3监控模块软件设计475.3.1CAN通信模块软件设计485.3.2温度传感器的软件设计486结论49参考文献50致谢50附录50附录A程序清单50附录B主控系统电路原理图51附录C监控系统电路原理图511绪论1.1背景介绍我国是一个农业大国,每年都有大量的新粮收获也有局部陈粮积压,由于储存不当会造成大量的粮食浪费,科学储粮是粮食生产的一个重要环节,假设管理不当,粮食发霉或生虫会造成极大浪费,给国家和人民造成了巨大的经济损失,粮仓的性能成为粮食质量的决定因素。……随着电子技术和计算机技术的开展,目前普遍采用电子和计算机对粮仓测控和管理,但是仍存在很多不尽人意的问题,如抗干扰性能差、传输数据丧失等,针对这些情况提出一种基于CAN总线粮仓多点温度测控及报警系统的设计方法。1.2国内外相关技术开展概况……传统的机械式温度检测仪表己经有上百年的历史了,一般均具有指示温度的功能,由于测温原理不同,不同的仪表在报警、记录、控制信息远传等方面有较大的差异。今年来由于微电子的进步以及计算机应用的日益广泛,智能化测量仪表己经取得巨人的进步,以单片机为主体的温度控制器取代了传统的仪器仪表。常规电子线路,可以容易地将计算机技术与测量技术结合起来。智能仪表在测量过程自动化,测量结果的数据处理以及功能的多样化方面都取得了巨大的进展。目前,在研制高精度,高性能,多功能的测量仪表时,几乎没有不考虑使用单片机使之成为智能仪表的。1.2.1温度传感器的开展概况……美国Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线〞接口的温度传感器,在其内部使用了在板专利技术。全部传感元件及转换电路集成在形如一只三极管的集成电路内。“一线总线〞独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现在,新一代的DS18B20体积更小、更经济、更灵活、精度更高、适用电压更宽、采用一线总线、可组网等优点,在实际应用中取得了良好的测温效果。使你可以充分发挥“一线总线〞的优点。同DS1820一样,DS18B20也支持“一线总线〞接口,测量温度*围为-55°C~+125°C,在-10~+85°C*围内,精度为±0.5°C。现场温度直接以“一线总线〞的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V~5.5V的电压*围,使系统设计更灵活、方便。而且新一代产品更廉价,体积更小。1.2.2现场总线概况现场总线是应用在生产现场、在微机化测量控制设备之间实现双向串行多节点数字通信的系统,现场总线技术将专用微处理器置入传统的测量控制仪表,使它们各自具有了数字计算和数字通讯能力,采用可进展简单连接的双绞线等作为总线,把多个测量控制仪表连接成网络系统,并按公开、规*的通信协议,在位于现场的多个微机化测量控制设备之间及现场仪表与远程监控计算机之间,实现数据传输与信息交换,形成各种适应实际需要的自动控制系统[1]。现场总线是20世纪80年代中期在国际上开展起来的。随着微处理器与计算机功能的不断增强和价格的降低,计算机与计算机网络系统得到迅速开展。现场总线可实现整个企业的信息集成,实施综合自动化,形成工厂底层网络,完成现场自动化设备之间的多点数字通信,实现底层现场设备之间以及生产现场与外界的信息交换。1983年,Honeywell推出了智能化仪表,它在原模拟仪表的根底上增加了计算功能的微处理器芯片,在输出的4~20mA直流信号上迭加了数字信号,使现场与控制室之间的连接模拟信号变为数字信号。之后,世界上各大公司推出了各种智能仪表。智能仪表的出现为现场总线的诞生奠定了根底。智能仪表的出现为现场信号的数字化提供了条件,但不同厂商提供的设备通信标准不统一,束缚了底层网络的开展。现场总线要求不同的厂商遵从一样的制造标准,组成开放的互连网络是现场总线的开展趋势。现场总线系统打破了传统控制系统采用的按控制回路要求,设备一对一的分别进展连线的构造形式。把原先DCS系统中处于控制室的控制模块、各输入输出模块放入现场设备,加上现场设备具有通信能力,因而控制系统功能能够不依赖控制室中的计算机或控制仪表,直接在现场完成,实现了彻底的分散控制。对于一般控制,设备间连锁可以通过串行网络完成。因此,BOSCH公司开发了CAN总线(ControllerAreaNetwork),并已取得国际标准化组织认证(ISO11898),其总线构造可参照ISO/OSI参考模型。同时,国际上一些大的半导体厂商也积极开发出支持CAN总线的专用芯片。通过CAN总线,传感器、控制器和执行器由串行数据线连接起来。它不仅仅是将电缆按树形构造连接起来,其通信协议相当于ISO/OSI参考模型中的数据链路层,网络可根据协议探测和纠正数据传输过程中因电磁干扰而产生的数据错误。CAN网络的配制比拟容易,允许任何站之间直接进展通信,而无需将所有数据全部汇总到主计算机后再行处理。对机动车辆总线和对现场总线的需求有许多相似之处,即较低的本钱、较高的实时处理能力和在恶劣的强电磁干扰环境下可靠的工作。**S型轿车上采用的就是CAN总线系统;美国商用车辆制造商们也将注意力转向CAN总线;美国一些企业已将CAN作为内部总线应用在生产线和机床上。同时,由于CAN总线可以提供较高的平安性,因此在医疗领域、纺织机械和电梯控制中也得到广泛应用。1.3温度监测及报警系统的应用前景在粮仓、北方暖气和热水供给中心、大面积水泥铺建等多种场合中,温度是最主要的检测控制参数,在电力、生物制品、药品、电子器件等行业,温度监测及报警系统更是需求很大。因此,温度监测及报警系统的应用*围非常广泛。但由于各类温度传感器的性能稳定性、适应性、经济性仍然存在不少技术问题,阻碍了温度监测及报警系统的应用开展。这些领域大都以较为准确但效率非常之低的检测手段为主,如目前国内80%的纺织企业对工作环境温度的检测仍采用温度计表的形式。如能充分利用智能化技术,实现温度控制系统的自动检测及越线报警提示技术,由此推广应用将可能出现一定的市场规模,应用前景将更加看好。2现场总线CAN原理介绍2.1现场总线简介随着控制、计算机、通讯、网络等技术的开展,信息交换沟通的领域正在迅速覆盖从工厂的现场设备层到控制、管理的各个层次、覆盖从工段、车间、工厂、企业乃至世界各地的市场。信息技术的飞速开展,引起了自动化系统构造的变革,逐步形成以网络集成自动化系统为根底的企业信息系统。现场总线就是顺应这一形势开展起来的新技术。现场总线是当今自动化领域技术开展的热点之一,被誉为自动化领域的计算机局域网。它的出现,标志着工业控制领域又一个新时代的开场,并将对该领域的开展产生重要影响。现场总线是应用在生产现场、在微型计算机化测量控制设备之间实现双向串行多节点数字通信的系统,也被称为开放式、数字化、多点通信的底层控制网络。其在制造业、流程工业、交通、楼宇等方面的自动化系统中具有广泛的应用背景[2]。现场总线技术将专用于微处理器置入传统的测量控制仪表,使它们各自具有数字计算和通信能力,采用可进展简单连接的双绞线等作为总线,把多个测量控制仪表连接成的网络系统,并按公开、规*的通信协议,在位于现场的多个微型计算机化测量控制设备之间以及现场仪表与远程监控计算机之间,实现数据传输与信息交换,形成各种适应实际需要的自动控制系统。简而言之,它把单个分散的测量控制设备变成网络节点,以现场总线为纽带,连接成可以相互沟通信息、共同完成自控任务的网络系统与控制系统。它给自动化领域带来的变化正如众多分散的计算机被网络连接在一起,使计算机的功能、参加到信息网络的行列。因此现场总线技术是一个控制技术新时代的开端[2]。2.2CAN总线简介控制器区域网(ControllerAreaNetwork)CAN现场总线已经成为在仪表装置通讯的新标准。它提供高速数据传送,在短距离(40m)条件下具有高速(1Mbit/s)数据传输能力,而在最大距离10000m时具有低速(5kbits/s)传输能力,极适合在高速的工业自控应用上CAN总线可在同一网络上连接多种不同功用的传感器(如位置,温度或压力等)。CAN总线与其他总线相比有如下特点:①它是一种多主总线,即每个节点机均可成为主机,且节点机之间也可进展通信;②通信介质可以是双绞线、同轴电缆或光导纤维,通信速率可达1Mbps;③CAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余校验、优先级判别等项工作;④CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进展编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制,数据块的标识码可由11位或29位二进制数组成,因此可以定义211或229个不同的数据块,这种按数据块编码的方式,还可使不同的节点同时承受到一样的数据,这一点在分步式控制中非常重要;⑤数据段长度最多为8个字节,可满足通常工业领域中控制命令,工作状态及测试数据的一般要求。同时,8个字节不会占用总线时间过长,从而保证了通信的实时性;〕CAN协议采用CRC检验并可提供相应的错误处理功能,保证了数据通信的可靠性。CAN总线所具有的卓越性能、极高的可靠性和独特设计,特别适合工业设备测控单元互连。因此倍受工业界的重视,并已公认为最有前途的现场总线之一。2.2.1CAN-bus的产生与开展控制器局部网〔CAN-CONTROLLERAREANETWORK〕是BOSCH公司为现代汽车应用领先推出的一种多主机局部网,由于其卓越性能现已广泛应用于工业自动化、多种控制设备、交通工具、医疗仪器以及建筑、环境控制等众多部门。控制器局部网将在我国迅速普及推广。随着计算机硬件、软件技术及集成电路技术的迅速开展,工业控制系统已成为计算机技术应用领域中最具活力的一个分支,并取得了巨大进步。由于对系统可靠性和灵活性的高要求,工业控制系统的开展主要表现为:控制面向多元化,系统面向分散化,即负载分散、功能分散、危险分散和地域分散。……2.2.2CAN-bus的根本工作原理CAN总线的拓扑构造如图2.1所示,是一个典型的串行总线的构造形式。CAN节点CAN节点CAN节点CAN节点…图2.1CAN总线网络构造CAN总线中一个节点发送信息,多个节点接收信息;但CAN总线的信息存取方式既不同于令牌方式的Aret,也不同于主从方式的Bitbus,采用的是一种播送式的存取工作方式。与其他网络不同,在CAN总线的通信协议中,没有节点地址的概念,也没有任何与节点地址相关的信息存在,它支持的是基于报文的工作方式[5]。也就是说,CAN总线面向的是数据而不是节点,因此参加或撤销节点设备都不会影响网络的工作,十分适用于控制系统要求快速、可靠、简明的特点。以下将对CAN总线的根本通信工作原理做一介绍。CAN总线协议是通过一种非破坏性的仲裁方式来解决总线冲突的。这也就是说当总线出现发送冲突时,通过仲裁后,原发送信息不会受到任何影响。所有的仲裁判别都不会破坏优先级高的报文信息内容,也不会对其发送产生任何的时延。这种仲裁规则可以使信息和时间均无损失。CAN总线是一个基于报文而不是基于站点地址的协议。也就是说报文不是按照地址从一个节点传送到另一个节点。CAN总线上报文所包含的内容只有优先级标志区和欲传送的数据内容。所有节点都会接收到在总线上传送的报文,并在正确接收后发出应答确认。至于该报文是否要做进一步的处理或被丢弃将完全取决于接收节点本身,由节点来进展报文过滤。同一个报文可以发送给特定的站点或许多站点,就看你怎样去设计网络和系统。CAN总线协议另外一个有用的特性是一个节点可以主动要求其它节点发送信息。这种特性叫做远程发送请求〔RTR〕。和上面不同之处在于,节点并不等待信息的到来,而是主动去索取。设计人员就可以利用这一远程发送请求特性来减少网络的数据通信量,同时维持整个系统的完整性。基于报文的这种协议另外一个好处是新的节点可以随时方便地参加到现有的系统中,而不需对所有节点进展重新编程以便它们能识别这一新节点。一旦新节点参加到网络中,它就开场接收信息,判别信息标识,然后决定是否作处理或直接丢弃。CAN总线定义了四种不同的报文〔或叫帧〕用于总线通信。第一种也是最常用的是数据帧,用于一个节点传送信息到其它任一或所有节点;第二种叫远程帧,根本上是一个数据帧但其中的RTR位被置1,说明这是一个远程发送请求,用于一个节点主动要求其它节点发送信息;另外两种用于过失处理,分别叫做错误帧和过载帧。如果节点在接收过程中检测到任一在CAN总线协议中定义了的错误信息,它就会发送一个错误帧,当一个节点正忙于处理接收的信息,需要额外的等待时间接收下一报文时,可以发送过载帧,通知其它节点暂缓发送新报文。2.2.3CAN-bus的特征〔1〕CAN总线有如下根本特点:①废除传统的站地址编码,代之以对通信数据块进展编码,可以多主方式工作;②采用非破坏性仲裁技术,当两个节点同时向网络上传送数据时,优先级低的节点主动停顿数据发送,而优先级高的节点可不受影响继续传输数据,有效防止了总线冲突;③采用短帧构造,每一帧的有效字节数为8个,数据传输时间短,受干扰的概率低,重新发送的时间短;④每帧数据都有CRC校验及其他检错措施,保证了数据传输的高可靠性,适于在高干扰环境下使用;⑤节点在错误严重的情况下,具有自动关闭总线的功能,切断它与总线的联系,以使总线上其他操作不受影响;⑥可以点对点,一对多及播送集中方式传送和承受数据。〔2〕CAN总线的优点:①具有实时性强、传输距离较远、抗电磁干扰能力强、本钱低等优点;②采用双线串行通信方式,检错能力强,可在高噪声干扰环境中工作;③具有优先权和仲裁功能,多个控制模块通过CAN控制器挂到CAN-bus上,形成多主机局部网络;④可根据报文的ID决定接收或屏蔽该报文;⑤可靠的错误处理和检错机制;⑥发送的信息遭到破坏后,可自动重发;⑦节点在错误严重的情况下具有自动退出总线的功能;⑧报文不包含源地址或目标地址,仅用标志符来指示功能信息、优先级信息。2.2.4CAN协议简介2.2.4.1CAN协议的分层构造CAN协议分为三层:目标层、传输层和物理层[6]。主要对应于ISO(IntermationalStandardOrganizantion,国际标准化组织)的OSI(OpenSystemInterconnertion,开放系统互连)七层模型中数据链路层的媒体控制子层以及物理层的物理信号局部。目标层和传输层包含所有由ISO/OSI模型定义的数据链路层的效劳和功能。由于CAN的数据构造简单,又是*围较小的局域网,因此不需要其他中间层,应用层数据直接取自数据链路层或直接向链路层写数据。构造层次少有利于系统中实时控制信号的传送。传播媒体传播媒体应用层有设计者自行定义…数据链路层物理层逻辑链路控制子层LLC媒体控制子层MAC物理信号子层PLS物理媒体附属子层PMA媒体相关接口子层MDICAN控制器CAN收发器CAN协议规*图2.2CAN协议的分层构造CAN协议的分层构造如图2.2所示。PMA子层和MDI子层有多种规*,由不同的组织制定,可应用在不同的领域和场合。CAN层的定义与开放系统互连模型〔OSI〕一致,每一层与另一设备上一样的那一层通讯,实际的通讯发生在每一设备上的相邻的两层,而设备只通过模型物理层的物理介质互连,表2-1中展示了OSI开放式互连模型的各层。应用层协议可以由CAN用户定义成适宜特别工业领域的任何方案,已在工业控制和制造业领域得到了广泛应用的标准是DeviceNet,这是PLC和智能传感器设计的,在汽车工业,许多制造商都应用他们的标准。表2-1OSI开放系统互连模型7应用层最高层用户软件网络终端等之间用来进展信息交换如DeviceNet6表示层将两个应用不同数据格式的系统信息转化为能共同理解的格式5会话层依靠低层的通信功能来进展数据的有效传递4传输层两通信节点之间数据传输控制操作如数据重发数据错误修复3网络层规定了网络连接的建立维持和撤除的协议如:路由和寻址2数据链路层规定了在介质上传输的数据位的排列和组织如数据校验和帧构造1物理层规定通讯介质的物理特性如电气特性和信号交换的解释CAN物理层定义了传输线和硬件的机械、电气和电信号特征及功能。机械特征包括连接器尺寸、类型等;电气特性包括最大传输速率、最大传输距离、信号电平状态代表意义等;电信号特征包括对应电平信号的逻辑信号、信号的传输时序、数据采样方式等。但在CAN2.0A/B中对物理层局部的内容做了规定,而在ISO11898标准中的内容更加具体,但没有指明通讯介质的材料,因而用户可以根据自己的需要选择双绞线,同轴电缆或光纤,最常用的就是双绞线。表2-2CAN总线长度与传输距离的关系CAN总线波特率任意两节点间的最大距离1Mbps40m500kbps130m250kbps270m125kbps530m100kbps620m50kbps1.3km20kbps3.3km10kbps6.7km5kbps10kmCAN网络的速度取决于总线的长度。控制器最快能到达1Mbps,但对总线长度有限制。对于50m长的总线,最大波特率是1Mbps,而对于150m的总线,波特率约为0.5Mbps。CAN网络上的任意两个节点之间的最大传输距离与其位速率有关,其对应关系见表2-2所示。时间t平均电压U隐性位显性位隐性位时间t平均电压U隐性位显性位隐性位图2.3总线位的数值表示CAN总线上的电平形式中的总线数值为两种互补逻辑数值之一:“显性〞或“隐性〞。显性数值表示逻辑“0〞,而“隐性〞数值表示逻辑“1〞。“显性〞和“隐性〞同时发送时,最后总线数值将显示为“显性〞。在“隐性〞状态下,和被固定于平均电压电平,近似为0。在总线空闲或“隐性〞位期间,发送“隐性〞状态。“显性〞状态改写“隐性〞状态并发送。总线位的数值表示如图2.3所示。(差动传输方式)2.2.4.2报文传输及其帧构造SOFSOF11位标示符仲裁场控制场RTR位图2.4数据帧标准格式中的仲裁场构造CAN总线的数据传输由以下4个不同的帧类型所表示和控制,它们分别是[7]:数据帧:数据帧将数据从发送器传送到接收器。远程帧:总线单元发出远程帧,请求发送具有一样标识符的数据帧。错误帧:任何单元检测到总线错误就发出错误帧。超载帧:超载帧用以在相邻的数据帧或远程帧之间提供附加的延时。数据帧和远程帧用一个帧空间与前面的帧分开。以下将逐一对各帧的构造做详细介绍。CAN技术规*2.0B中有两种不同的帧格式,标准帧和扩展帧。不同之处在于每帧的标识符的长度不同:标准帧的标识符长度为11位,而扩展帧的长度则为29位。标准格式和扩展格式的仲裁场格式不同。在标准格式中,仲裁场由11位标识符ID和远程发送请求位RTR组成。11位标识符为ID.28~ID.18,如图2.4所示。数据帧由7个不同的位场组成,即帧起始、仲裁场、控制场、数据场、CRC场、应答场和帧完毕。数据场的长度可为0。数据帧的构造如表2-3所示。表2-3数据帧构造……帧起始仲裁场控制场数据场CRC场ACK场帧完毕……帧起始〔SOF〕标志数据帧和远程帧的起始,仅由一个显性位构成。只有在总线处于空闲状态时才允许站开场发送。所有站都必须同步于首先开场发送的那个站的帧起始前沿。而在扩展格式中,仲裁场由29位标识符、SRR位、IDE位和RTR位组成,标识符为ID.28~ID.0,如图2.5所示。控制场仲裁场控制场仲裁场RTR18位标示符SRRIDE11位标示符SOF图2.5数据帧扩展格式中的仲裁场构造仲裁场控制场由6位组成。其构造如图2.6所示。仲裁场保存为数据长度代码数据场控制场IDE/r1保存为数据长度代码数据场控制场IDE/r1r0DLC3DLC2DLC1DLC0图2.6控制场构造标准格式的控制场构造和扩展格式的不同。标准格式里的控制场包括数据长度码DLC,IDE位及保存位r0;扩展格式里的控制场包括DLC和两个保存位r1和r0。保存位必须发送显性位。数据长度码指出数据场的字节数目。数据长度码为4位,在控制场中发送。数据字节的允许数目为0~8。远程帧由6个不同的位场组成:帧起始、仲裁场、控制场、CRC场、应答场和帧完毕。与数据帧相反,远程帧的RTR位是隐性位。远程帧不存在数据场,DLC的数值没有意义,它可以是0~8中的任何数值,这一数值为对应数据帧的DLC。错误帧由两个不同场组成,第一个场由来自各站的错误标志叠加得到,第二个场是出错界定符。有两种形式的错误标志,一种是活动错误标志,另一种是认可错误标志。活动错误标志由6个连续的显性位组成,认可错误标志由6个连续的隐性位组成。超载帧包括两个位场:超载标志和超载界定符。有三种超载条件会导致超载标志的发送:一是要求延迟下一个数据帧或远程帧的内部条件,二是在间歇场的第1位和第2位检测到显性位,三是如果CAN节点在错误界定符或超载界定符的第8位〔最后一位〕采样到一个显性位,节点会发送一个超载帧〔不是错误帧〕。超载标志由6个显性位组成,所有形式对应于活动错误标志形式。超载界定符由8个隐性位组成,与出错界定符具有一样的形式。报文滤波CAN总线通过报文滤波技术,可以实现点对点、一点对多点及全局播送等多种数据传送方式[8]。报文滤波技术实际是通过屏蔽存放器和滤波存放器来实现。屏蔽存放器设定需要校验的二进制位,滤波存放器存储需比拟的数值。对这一概念的理解有助于深刻了解CAN协议的原理及其硬件构造,为软件的实现打下根底。滤波存放器和屏蔽存放器决定是否将信息装入接收缓冲区。信息帧仲裁场的标识符与滤波存放器中的值比拟,如果二者相等,则将信息装入相应的接收缓冲区。屏蔽存放器的作用是决定标识符的哪些位需要与滤波存放器比拟。如果屏蔽存放器的每一位为1,则这一位会自动接收,无须与滤波存放器的相应位进展比拟。可见如果信息标识符的高字节为11001101,屏蔽存放器值为00001111,假设滤波存放器的值为11001101则将数据收入缓冲区。也就是说满足以下两等式之一,则报文被接收。〔ID.10~ID.3〕≡(AC.7~AC.0)〔AM.7~AM.0〕≡11111111屏蔽存放器和滤波存放器存放在CAN控制器中,其自动识别标识符的功能由硬件实现,但滤波存放器和屏蔽存放器的值需要软件设定。3基于CAN多点温度检测系统的总体设计3.1系统总体方案设计温度检测系统有则共同的特点:测量点多、环境复杂、布线分散、现场离监控室远等。假设采用一般温度传感器采集温度信号,则需要设计信号调理电路、A/D转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理。这样,由于各种因素会造成检测系统较大的偏差;又因为检测环境复杂、测量点多、信号传输距离远及各种干扰的影响,会使检测系统的稳定性和可靠性下降。所以多点温度检测系统的设计的关键在于两局部:温度传感器的选择和远程通信的设计。温度传感器应用*围广泛、使用数量庞大,也高居各类传感器之首。系统采用针对传统温度测温系统测温点少,系统兼容性及扩展性较差的特点,运用分布式通讯的思想。设计一种可以用于大规模多点温度的检测报警系统。系统的主控模块与监控模块之间采用CAN总线进展数据传输,从而成为总线上的监控节点。系统组成框图如以下图3.1。单片机单片机CANCAN单片机温度传感器主控模块监控模块图3.1系统组成框图3.2系统设计的主要器件选择在粮库、仓库中温度是主要的参数,本设计要求设计温度参数的自动检测系统,该系统由单片机或其它微型机来完成,并实现显示温度值,当测量到的温度超过用户界限时报警。目前CAN总线已被公认为是最有前途的几种现场总线之一。因其高性能价格比、实现简单等突出优点深得越来越多的研发人员的青睐,CAN控制器有82C250、SJA1000及Intel82526/82527等;根据当前市场、开发工具和课题的实际需要,系统的智能节点均选用ATMEL8位单片机AT89S52为微处理器,并选取PhiliPs公司的SJA1000CAN控制器以及PCA82C250总线收发器,主要考虑到SJA1000支持CAN2.0A/B协议,而82C250可以支持110个CAN节点,并且国内市场上PhiliPs的产品型号比拟多,购置比拟方便。3.2.1微处理器AT89S51/52系列单片机是美国ATMEL公司生产的一种低功耗、高性能的片内有4K/8K快闪可编程/擦除只读存储器(FPEROM)的8位S微控制器。除与8031引脚和指令系统完全兼容外,又增加了许多新的功能。AT89S52具有8K在系统可编程Flash存储器。使用高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断构造,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停顿工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停顿,直到下一个中断或硬件复位为止。最新的89S系列时钟频率支持到了3MHz,包含看门狗定时器WDT、2个数据指针等新功能,极大的增强了单片机的性能,是目前取代MCS-51单片机的主流芯片之一。故本系统选用AT89S52单片机作为微控制器。AT89S52单片机主要性能:●与MCS-51单片机产品兼容●8K字节在系统可编程Flash存储器●1000次擦写周期●全静态操作:0Hz~33Hz●三级加密程序存储器●32个可编程I/O口线●三个16位定时器/计数器●八个中断源●全双工UART串行通道●低功耗空闲和掉电模式●掉电后中断可唤醒●看门狗定时器●双数据指针●掉电标识符3.2.2SJA1000控制器SJA1000是一个独立的CAN控制器,SJA1000是PHILIPS公司早期CAN控制器PCA82C200的替代品,功能更强,增加了一种新的工作模式(PeliCAN),这种模式支持CAN2.0B协议[9]~[12]。SJA1000主要负责把并行的数据转换成CAN的格式进展发送和接收。它内部自带发送和接收缓冲,并有超强的错误报警和双重滤波处理。SJA1000具有如下特点:①完全兼容PCA82C200及其工作模式,即BASICCAN模式;②具有扩展的接收缓冲器,64字节的FIFO构造;③支持CAN2.0B;④支持11位和29位识别码;⑤位速率可达1Mbit/s;⑥支持peliCAN模式及其扩展功能;⑦24MHz的时钟频率;⑧支持与不同微处理器的接口;⑨可编程的CAN输出驱动配置;⑩增强了温度*围〔-40℃~+125℃〕。SJA1000的硬件构造框图如图3.2所示。图3.2中,SJA1000由CAN核心模块、接口管理逻辑、发送缓冲区、验收滤波器单元、接收FIFO(先入先出)等几局部组成。收发器CAN总线SJA1000主控制器接口管理逻辑收发器CAN总线SJA1000主控制器接口管理逻辑发送缓冲接收FIFO验收滤波器CAN核心模块图3.2SJA1000的硬件构造框图CAN核心模块负责CAN信息帧的收发和CAN协议的实现。接口管理逻辑负责同外部主控制器的接口,该单元中的每一个存放器都可由主控制器通过SJA1000的地址/数据总线[13]。发送缓冲区可存储一个完整的信息帧,长度为13字节。主控制器可直接将标识符和数据送入发送缓冲区,然后置位命令存放器(CMR)中的发送请求位TR,启动CAN核心模块读取发送缓冲区中的数据,按CAN协议封装成一个完整的CAN信息帧,提供给收发器发往总线。SJA1000主要由接口管理逻辑IML、信息缓冲器(含发送缓冲器T*B和接收缓冲器R*FIFO)、位流处理器BSP、接收过滤器ASP、位时序处理逻辑BTL、错误管理逻辑EML、内部振荡器及复位电路等构成。IML接收来自CPU的命令,控制CAN存放器的寻址并向主控器提供中断信息及状态信息。CPU的控制经IML把要发送的数据写入T*B,T*B中的数据由BSP处理后经BTL输出到CAN总线。BTL始终监视CAN总线,当检测到有效的信息头“隐性电平-控制电平〞的转换时启动接收过程,接收的信息首先要由位流处理器BSP处理,并由ASP过滤。只有当接收的信息的识别码与ASP检验相符时,接收信息才最终被写入R*B或R*FIFO中。R*FIFO最多可以缓存64字节的数据,该数据可被CPU读取。EML负责传送层中调制器的错误管制,它接收BSP的出错报告,促使BSP和IML进展错误统计[14]。验收滤波器单元完成接收信息的滤波,只有验收滤波器通过且无过失,才把接收的信息帧送入接收FIFO缓冲区,且置位接收缓冲区状态标志SR.0,说明接收缓冲区中己有成功接收的信息帧,接收帧的数量可通过接收信息计数器(RMC)得知。接收FIFO共有64个字节,远远超过8*200的接收缓冲区,因而SJA1000的超载能力也大大加强。3.2.3PCA82C250总线收发器PCA82C250是PhiliPs公司的CAN控制器和物理总线间的接口,可提供对总线的差动发送和接收能力。它与ISO11898标准完全兼容,最高速率可达IMbps,采用斜率控制可降低射频干扰,并且其未上电节点不会千扰总线。在硬件电路中使用82C250是为了增大通信距离,提高系统的瞬间抗干扰能力,保护总线。PCA82C250是CAN控制器和物理总线之间的接口,它最初为汽车中的高速通信〔最高达1Mbps〕应用设计[12]。该器件对总线提供差动发送能力,对CAN控制器提供差动接收能力。〔1〕82C250的主要特性如下:①与ISO11898标准完全兼容②高速〔最高可达1Mbps〕③具有抗汽车环境下的瞬间干扰,保护总线能力④采用斜率控制〔SlopeControl〕,降低射频干扰〔RFI-RadioFrequencyInterference〕⑤热保护⑥电源和地之间的短路保护⑦低电流待机模式⑧未上电节点对总线无影响⑨可连接110个节点〔2〕PCA82C250的内部构造PCA82C250的内部构造框图如图3.3所示。图3.382C250功能框图〔3〕PCA82C250的功能首先,82C250驱动电路内部具有限流电路,可防止输出级对电源、地或负载短路[13]。虽然短路出现时功耗增加,但不致使输出级损坏。其次,82C250采用双线差分驱动,有助于抵抗恶劣环境下的瞬变干扰。引脚可用于选择三种不同的工作模式:高速、斜率控制和待机。在高速工作模式下,发送器输出级晶体管尽可能快地启动和关闭。在这种模式下,不采取任何措施限制上升和下降斜率,此时,建议使用屏蔽电缆以防止射频干扰问题。通过将引脚8接地可选择高速模式。对于较低速度或较短总线长度,可用非屏蔽双绞线或平行线作总线。为降低射频干扰,应限制上升和下降的斜率,上升和下降的斜率可通过由引脚8至地连接的电阻进展控制,斜率正比于引脚8上的电流输出。假设引脚8接高电平,则电路进入低电平待机模式,在这种模式下,发送器被关闭,接收器转至低电流。假设检测到显性位,R*D将转至低电平,微控制器应通过引脚8将驱动器变为正常方式作为对此条件作出的反响。由于在待机模式下接收器是慢速的,因此第一个报文将被丧失。对于CAN控制器及带有CAN总线接口的器件,82C250并不是必须使用的器件,因为多数CAN控制器均具有配置灵活的收发器件,并允许总线故障,只是驱动能力只允许20~30个节点连接在一条总线上。而82C250支持多达110个节点,并能以1Mbps的速率工作于恶劣电气环境下。利用82C250还可方便地在CAN控制器与收发器之间建立光电隔离。在实际应用中,CAN总线大都用在如汽车和工业现场控制等的环境中,环境对电路的影响很大,所以为减少这些干扰,在设计CAN总线的节点时,通常在电路中使用高速光耦,如6N137等,使SJA1000的T*0与R*0不直接与82C250的T*D和R*D相连,而是通过高速光耦与82C250相连,这样就能很好地实现总线上各CAN节点间的电气隔离。3.2.4温度传感器的选择温度传感器大致可以分为模拟温度传感器和数字温度传感器两类。模拟温度传感器,其输出的信号通常是电流、电压等线性信号,要通过信号前端调理电路和AD转换电路来实现数字化,才能输入到PIC控制核心来运算。这类常用的型号如:热敏电阻、热电偶、热电阻、ADI公司出品的AD590、美信公司出品的MA*6613等。模拟温度传感器根据输出的信号还可以细分为电流型和电压型。另外,各个模拟温度传感器的精度、线性度、测量*围、价格也要根据不同的应用来考虑。其优点是常用、采购容易、价格低廉,配合不同类型的ADC,可实现不同档次的精度需求。缺点是电路复杂、易受外部干扰、通常要进展硬件或者软件算法的补偿措施。如果系统选择采用热敏电阻,则可满足40摄氏度至90摄氏度测量*围,但热敏电阻精度、重复性、可靠性较差,对于检测1摄氏度的信号是不适用的。而且在温度测量系统中,采用单片温度传感器,比方AD590,LM35等.但这些芯片输出的都是模拟信号,必须经过A/D转换后才能送给计算机,这样就使得测温装置的构造较复杂。另外,这种测温装置的一根线上只能挂一个传感器,不能进展多点测量。即使能实现,也要用到复杂的算法,一定程度上也增加了软件实现的难度。在多点测温系统中,传统的测温方法是将模拟信号远距离采样进展AD转换,而为了获得较高的测温精度,就必须采用措施解决由长线传输,多点测量切换及放大电路零点漂移等造成的误差补偿问题。采用数字温度芯片DS18B20测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0-100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS18B20和微控制器构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的构造就比拟简单,体积也不大,且由于微控制器可以带多个DSB1820,因此可以非常容易实现多点测量。轻松的组建传感器网络。采用温度芯片DS18B20测量温度,可以表达系统芯片化这个趋势。局部功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。而且,集成块的使用,有效地防止外界的干扰,提高测量电路的准确度。所以集成芯片的使用将成为电路开展的一种趋势。本方案应用这一温度芯片,也是顺应这一趋势。DS18B20是美国DALLAS公司生产的一款温度传感器,其具有耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域[17]。特点:独特的一线接口,只需要一条口线通信多点能力,简化了分布式温度传感应用,无需外部元件,可用数据总线供电,电压*围为3.0V至5.5V,无需备用电源,测量温度*围为-55°C至+125℃。华氏相当于是-67°F到257华氏度-10°C至+85°C*围内精度为±0.5°C。DS18B20的主要特性DS18B20的外形和内部构造:DS18B20的外形及管脚排列如以下图3.4。图3.4DS18B20管脚和构造图①适应电压*围更宽,电压*围:3.0~5.5V,在寄生电源方式下可由数据线供电②独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯③DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温④DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内⑤温*围-55℃~+125℃,在-10~+85℃时精度为±0.5℃⑥可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温⑦在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快⑧测量结果直接输出数字温度信号,以"一线总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力⑨负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。DS18B20工作原理DS18B20的读写时序和测温原理与DS1820一样,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。DS18B20测温原理如图3.5所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度存放器被预置在-55℃所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进展减法计数。低温度系数晶振低温度系数晶振高温度系数晶振预置斜率累加器比拟计数器1计数器2=0=0温度计存器预置LSB置位/去除停顿加1图3.5DS18B20测温原理框图当计数器1的预置值减到0时,温度存放器的值将加1,计数器1的预置将重新被装入,计数器1重新开场对低温度系数晶振产生的脉冲信号进展计数,如此循环直到计数器2计数到0时,停顿温度存放器值的累加,此时温度存放器中的数值即为所测温度[18]。图3.5中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。内部I/O64位ROM和内部I/O64位ROM和单线接口储存器和控制器温度灵敏元件低温触发器TL高温触发器TH 配置存放器高速缓存存储器8位CRC生成器电源监测图3.6DS18B20内部构造图DS18B20内部构造主要由四局部组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL配置存放器。该装置信号线高的时候,内部电容器,储存能量通由1线通信线路给片子供电,而且在低电平期间为片子供电直至下一个高电平的到来重新充电。DS18B20的电源也可以从外部3V-5.5V的电压得到。在多点测温系统中,传统的测温方法是将模拟信号远距离采样进展AD转换,而为了获得较高的测温精度,就必须采用措施解决由长线传输,多点测量切换及放大电路零点漂移等造成的误差补偿问题。采用数字温度芯片DS18B20测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0-100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS1820和微控制器构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的构造就比拟简单,体积也不大,且由于微控制器可以带多个DSB1820,因此可以非常容易实现多点测量。轻松的组建传感器网络。采用温度芯片DS18B20测量温度,可以表达系统芯片化这个趋势。局部功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。而且集成块的使用,有效地防止外界的干扰,提高测量电路的准确度。所以集成芯片的使用将成为电路开展的一种趋势[19]。本设计应用这一温度芯片,也是顺应这一趋势。3.2.5显示器的选择由于发光二极管显示器LED〔LightEmittingDiode〕多为8段或米字段,只能输出有限的英文字符,对于仪器的使用者来说很不方便,所以我们在多点温度检测系统上使用了液晶显示器(LCD)。液晶显示器具有体积小、外形薄、重量轻、耗能小、工作电压低、无辐射,特别是视域宽、显示信息量大等优点。液晶显示器已被广泛应用于各种仪器仪表、电子显示装置等场合,成为测量结果显示和人机对话的重要工具。液晶显示器按功能分为段位式LCD、字符式LCD和点阵式LCD,前两者只能显示有限字符,而点阵式LCD不仅能显示字符,还可以显示汉字及各种图形,并且可实现屏幕的上下左右滚动显示,反转显示以及显示闪烁等功能,用途十分广泛。本系统的显示屏采用FM12232B液晶模块,实现电流信号数据的实时显示。该类液晶模块采用的驱动控制器都是SED152O或其兼容型驱动控制器。SED1520液晶显示控制驱动器集行列驱动器和控制器于一体,被广泛应用于小规模液晶显示模块。12232是一种内置8192个16×16点汉字库和128个16×8点ASCII字符集图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×32全点阵液晶显示器组成。可完成图形显示,也可以显示7.5×2个(16×16点阵)汉字。与外部CPU接口采用并行或串行方式控制。其特性如下:①内置2560位显示RAM区。RAM中的1位数据控制液晶屏上一个像素的亮暗,状态1表示亮,0表示暗。②具有16个行驱动输出和61个列驱动输出。③可直接与80系列微处理器相连,也可直接与68系列微处理器相连。④驱动占空比为1/16或1/32。⑤可以与SED1520级联使用,以便扩展行列驱动能力。显示屏的显示特性和机械特性如下所示:〔1〕显示特性:①STN正视反射模式②显示颜色:绿底蓝字③显示角度:6点钟直视④驱动方式:1/32Duty,1/6Bias〔2〕机械特性:①外观尺寸:84×44(mm)②电阵:122×32点③点尺寸:0.36(W)×0.41(H)(mm)④点间距:0.40(W)×0.45(H)(mm)3.3系统硬件构造组成本系统由两局部组成:主控模块和监控模块,从图3.7可以看出,主控模块功能模块由微控制器、CAN通信电路以及时钟电路、EEPROM电路、串口电路、液晶显示屏等外围电路组成。监控模块的功能模块由微控制器、CAN通信电路、传感器及外围电路组成。各模块具体的硬件电路设计在以下小节做出详细的阐述。系统采用针对传统温度测温系统测温点少,系统兼容性及扩展性较差的特点,运用分布式通讯的思想。设计一种可以用于大规模多点温度的检测报警系统。系统的监控模块与主控模块之间采用CAN总线进展数据传输。下位机连接到现场的数字化传感器上,对测量点的温度进展采集,并且把采集到的温度值传输到CAN总线上,构成CAN总线的智能节点。下位机与上位机通信的实现通过CAN总线控制器。单片机采集到的温度数据,通过通信转换器实时在上位机上显示,CAN总线系统很容易扩展成针对多对象的温度监测,以实现对较大系统的温度实时监测。实际采用电路方案如上图3.7所示。时钟电路时钟电路液晶显示器串口电路CAN总线控制器SJA1000CAN总线收发器82C250EEPROM电路报警电路CAN总线控制器SJA1000CAN总线收发器82C250单片机AT89S52温度传感器DS18B20单片机AT89S52监控模块主控模块图3.7温度检测系统硬件构造图4系统的硬件设计温度检测系统系统的硬件设计重点阐述了主控模块和监控模块的硬件设计。在各节点的设计中,根据系统的需求分析,设计相应的功能电路以完成各局部的实际功能,主要包括各模块微控制器电路、电源电路、CAN控制器接口电路以及其他功能电路的设计。4.1单片机最小系统设计从图3.7可以看出,在通信模块中的单片机及其外围电路中主要由单片机最小系统、CAN通信电路、串口电路等外围电路组成。各模块具体的硬件电路设计在以下小节做出详细的阐述。本系统采用AT89S52芯片作为微控制器。图4.1为微控制器最小系统电路图。图4.1微控制器最小系统AT89S52所用晶振可在4MHz~24MHZ之间,此处用典型的12MHz晶振。两旁的电容可用30±10pF,电容C12和C13可以帮助起振,此处使用典型的30pF,调节他们可以到达微调时钟频率的目的。对主控模块和检测模块的微控制器的设计来说,复位十分重要,这直接决定其是否正常工作。本系统复位原理图如上图4.1所示。在复位电路中,系统具有上电与手动两种方式,手动或上电复位的工作过程是在加电时,复位电路通过电容加给RST端一个短暂的高电平信号,此高电平信号随着Vcc对电容的充电过程而逐渐回落。为了保证系统能够可靠地复位,RST端的高电平信号必须维持足够长的时间。当上电或按键S1按下时,RST脚为高电平,从而单片机复位。当RST脚变为低电平时,复位完毕。由于P0口是OC门,故要在P0.0~P0.7脚加上拉电阻。在此最小系统中,选用经典电路中的4.7K欧的电阻。AT89S52内部附有ISP模块。ISP(In-SystemProgramming,在系统可编程)是指电路板上的空白器件可以编程写入最终用户代码,而不需要从电路板上取下器件。已经编程的器件也可以用ISP方式擦除或再编程。4.2串口电路设计在串行通信中,根据数据传送方向,把串行通信可以分成三种根本的传送模式:全双工、半双工和单工。单工模式目前己根本不使用。对于AT89S52而言,有两条串行传输线T*D和R*D,内部有全双工接口,因此通信传送模式对串行接口而言是全双工的。图4.2串口通信电路图全双工是指通信的双方能在同一时刻进展发送和接收操作,发送和接收由两根不同的传输线完成。全双工方式无需进展方向切换,因此没有切换操作所产生的延时。在RS-232C中,任何一条信号线的电压均为负逻辑关系,即:逻辑“1〞为-5~-15V,逻辑“0〞为+5~+15V。TTL电平信号被利用得最多是因为通常数据表示采用二进制规定,+5V等价于逻辑“1〞,0V等价于逻辑“0〞。RS-232C与TTL之间需要电平转换。串口通信芯片采用MA*232,其电路图如上图4.2所示。4.3EEPROM本系统中,为了记录事故发生的时间和地点,便于技术人员事后分析处理,需要对系统历史信息进展存储,并且对显示屏上的字库〔和按键缓存区数据〕也需要进展存储。目前常用的有FRAM铁电存储器与EEPROM两种存储方案。目前市场上常用的有三种FRAM铁电存储器:〔1〕串行接口FRAMFM24**。该FRAM读写寿命无限,具有工业标准接口,没有写等待,按字节操作,总线频率可以到达1MHz,操作电流小于150uA,静态电流小于luA,数据寿命为45年。〔2〕串行SPI接口FRAMFM25**。该FRAM也具有工业标准SPI接口,没有写等待,按字节操作,读写寿命无限,总线频率可以到达25MHz,静态电流小于luA,管脚和标准EEPROM兼容。〔3〕并行接口FRAM。该FRAM的静态电流小于15uA,没有写等待,按字节操作,并与工业标准SRAM/EEPROM管脚兼容。图4.3EEPROM电路图主控端的EEPROM设计电路图如图4.3所示。本系统主节点采用AT24C16。首先,AT24C16的容量适中(16kbit),可存储较多从节点的信息,并且读写速度〔小于10ms〕也满足系统要求;其次,这款价格比拟廉价,市场上AT24C16单价仅1元人民币一块,可以节约本钱。4.4CAN通信电路设计CAN通信电路由电源、微控制芯片AT895S2、CAN控制器SJA1000、CAN总线驱动器82C250、光电耦合器6N137组成。CAN数据通过82C250传输到SJA1000,AT89S52处理后再传送出去。4.4.1CAN通信构造框图CAN通信构造框图及其硬件电路设计图如图4.4(a)、4.4(b)、4.4(c)所示。单片机单片机AT89S52CAN控制器SJA1000光耦6N137CAN总线收发器CANHCANL图4.4(a)CAN通信构造框图图4.4(b)CAN通信硬件电路图图4.4(c)CAN通信硬件电路图系统以AT89S52为核心,选用SJA1000作为CAN控制器,并使用了CAN控制器接口芯片82C250和高速光电耦合器6N137。CAN通信控制器SJA1000以中断模式工作,通过其中断输出引脚向单片机AT89S52发出中断请求。SJA1000的T*0和R*0通过高速光耦6N137后与82C250相连,实现了总线上CAN节点间的电气隔离,增强CAN总线节点的抗干扰能力和稳定性。4.4.2CAN通信电路电源模块电源模块采用**金升阳公司的B0505 LS-1W现场总线专用的电源模块。该器件可以有效的隔离CAN通信电路和其他电路的电源,防止由于电源波动造成的干扰。要注意的是,3、4两脚间的输出电压滤波电容不能超过10uF。图4.5为CAN电源模块供电图。图4.5CAN电源模块图4.4.3CAN通信接口电路CAN通信接口电路由CAN控制器和CAN收发器组成。CAN控制器接收微处理器发出的数据,处理成CAN总线协议的格式后传给CAN收发器。CAN收发器是发送器和接收器的组合,它将CAN控制器提供的数据转化成电信号并通过CAN总线发送出去,以供其他网络节点使用。同时,CAN收发器也可将接收到的CAN总线上的数据传送给CAN控制器,由CAN控制器将这些数据提供给微处理器作进一步的处理。〔1〕CAN控制器硬件设计本系统采用SJA1000的PeliCAN操作模式。为了连接到微处理器,SJA1000提供了一个复用的地址/数据总线和读/写控制信号。SJA1000可作为微控制器外围存储器映射的I/O口器件。因此,可以按照扩展片外存储器的形式来SJA1000的存放器地址,把微控制器的/RD、/WR与SJA1000的/RD、/WR相连构成一个最小系统节点。AT89S52通过P2.7脚来选通SJA1000,通过读写外部数据存储器的形式来SJA1000。具体操作过程为:ALE由低变高时,开场读写周期,微控制器把8位地址送到总线上,ALE的下降沿把地址信息锁存到SJA1000的片内地址锁存器。对读周期,在读控制信号RD变为有效后,通过被寻址的数据存储器把有效的数据送上总线以供使用;对写周期,微控制器发送完地址后直接传送数据,当写控制信号WR有效时,数据就被写到已选通的存储器里。SJA1000的INT输出送入AT89S52的INT0,作为外部中断源,它使微处理器以中断的方式来处理CAN通信事件。SJA1000的T*O、T*I为输出驱动器0、驱动器1到物理总线的输出端;R*0、R*1为由物理总线到SJA1000输入比拟器的输入端。SJA1000的R*0脚、T*0脚分别与82C250的R*D、T*D脚相连;T*1脚悬空。根据CAN通信协议,SJ

温馨提示

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

评论

0/150

提交评论