毕业设计 - 基于CAN总线的楼宇温度监控系统设计

更新时间:2024-05-06 16:06:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

专科毕业设计(论文)资料

题 目 名 称:学 院(部):专 业:学 生 姓 名:

基于CAN总线的楼宇温度监控系统设计 电气与信息工程学院 电气自动化技术

I

摘 要

控制器局部网(CAN—C0NTROLLER AREA NET的RK)是BOSCH公司为现代汽车应用领先推出的一种多主机局部网,由于其卓越性能现已广泛应用于工业自动化、多种控制设备、交通工具、医疗仪器以及建筑、环境控制等众多部门。其总线规范已成为国际标准,被公认为几种最有前途的总线之一。本文综述了CAN总线产生和发过程,概括了CAN总线优于其它现场总线的特点,结合生产中温度监控的实际需求,提出了将CAN总线应用于生产实践的设想。给出了基于CAN总线的温度监控系统的设计方案,设计了一种基于CAN总线的智能楼宇温度测控系统。以AT89C52单片机为核心,利用CAN总线技术和数字温度传感器DS18B20,组建了智能楼宇温度测控系统的节点及网络架构,给出了系统总体结构和关键的软件流程。测试结果表明,房间温度控制能满足设计要求,具有结构简洁、节能、实时性好及可靠性高等优点。

关键词:现场总线,温度传感器,节点,网络架构

II

ABSTRACT

Controller area network (CAN-C0NTROLLER AREA NET's RK) is a BOSCH company is the leading modern automotive applications, launched a multi-host the local network, because of its superior performance has been widely used in industrial automation, variety of control equipment, transport, medical equipment and construction, environmental control and many other sectors. The bus specification has become the international standard, recognized as some of the most promising of the bus. This paper reviews the production and development process of CAN bus, CAN bus, summarizes the characteristics superior to other field bus, temperature monitoring with the production of the actual demand, put forward a CAN bus used in the production practice of the idea. CAN bus is presented based on temperature monitoring system design, design of a CAN bus based temperature measurement and control system of intelligent buildings. The AT89C52 microcontroller as the core, the use of CAN bus technology and the digital temperature sensor DS18B20, set up a temperature measurement and control system intelligent building node and network architecture, gives the overall system architecture and key software processes. The results show that the room temperature control to meet the design requirements, with a simple structure, energy, real good, and reliability.

Keywords: field bus, temperature sensors, nodes, network architecture

III

目 录

摘 要 ................................................................................................................ II ABSTRACT ...................................................................................................... III 第1章 绪论 ..................................................................................................... 1 第2章 现场总线CAN原理概述 .................................................................. 2

2.1 CAN总线产生和发展 .............................................................................................. 3 2.2 CAN总线的概述 ...................................................................................................... 4 2.3 CAN总线的特点 ...................................................................................................... 4 2.4 CAN总线组织的基本规则 ...................................................................................... 6

第3章 温度监控系统的总体设计方案 ......................................................... 8

3.1 系统要求 ................................................................................................................... 8

3.1.1 系统功能要求 ................................................................................................. 8 3.2 系统总体设计方案 ................................................................................................... 8 3.3 关键器件的选择 ....................................................................................................... 9

3.3.1 SJA1000芯片简介 ........................................................................................ 10 3.3.1.1 SJA1000芯片特性 ..................................................................................... 10 3.3.1.2 SJA1000内部结构 ..................................................................................... 10 3.3.2 AT89C52单片机简介 ................................................................................... 12 3.3.3 CAN总线收发器82C250芯片简介 ............................................................ 13 3.3.4 6N137光电耦合器 ........................................................................................ 14

第4章 系统的硬件设计 ............................................................................... 16

4.1 CAN通信电路设计 ................................................................................................ 16 4.2 智能温度节点设计 ................................................................................................. 18 4.3 外围电路硬件设计 ................................................................................................. 19

4.3.1 数字温度传感器DS18B20 .......................................................................... 19 4.3.1.1 DS18B20的特点 ........................................................................................ 19 4.3.1.2 DS18B20使用注意事项 ............................................................................ 20

第5章 系统的软件设计 ............................................................................... 21

5.1 系统的软件设计 ..................................................................................................... 21 5.2 上位机的软件设计 ................................................................................................. 21

5.2.1 CAN信息的接收 .......................................................................................... 22

III

5.3 下位机的软件设计 ................................................................................................. 23

5.3.1 温度测控软件设计 ....................................................................................... 23 5.3.2 调温设备控制软件设计 ............................................................................... 24 5.4 CAN的初始化程序设计 ........................................................................................ 24 5.5 数字温度传感器的软件设计 ................................................................................. 25

结论 ................................................................................................................... 27 参考文献 ........................................................................................................... 28 致谢 ................................................................................................................... 30

IV

第1章 绪论

近年来,现场总线以其全开放、全分散、全数字化,集计算机、通信、控制技术于一体而已成为当今自动化领域技术发展的热点,在各种工业生产过程中得到了越来越广泛的应用。它能对工业生产过程中的各个参数进行测量、信号转换、控制和显示,把多个测量控制仪表或计算机作为网络节点,并通过双绞线、通讯电缆等传输媒介进行信息的高速双向传输,构成一个全数字化、全开放、多点测试和可靠通信的智能化工业控制网络。CAN总线作为有效支持分布式控制的多主串行现场总线之一,以其检错能力强、通讯硬件接口简单、通讯介质选择灵活、可靠性高、实时性强、价格低等特点而被受现场设备互连的青睐,广泛应用于汽车自动化、楼宇自控、工业控制等领域。针对工业现场被控对象地域分布广、实时性、快速性要求较高的需求,为提高多点温度控制系统的效率、性能和智能化水平,因此,提出了基于CAN总线的一种结构简单、可靠性高、实时性好的分布式温度检测系统设计。

本文应用CAN总线技术和单总线数字温度传感器DS18B20,设计了智能楼宇温度测控系统。

1

第2章 现场总线CAN原理概述

现场总线是应用于工业自动化最底层的一种总线型拓扑的网络。它实现现场仪表或现场设备的互连,是现场通信网络与控制系统的集成。早期的自动控制系统是基于模拟信号和一对一的物理连接。模拟信号不仅精度低,而且抗干扰能力差:一对一结构造成了系统接线复杂、工程周期长、安装和维护费用高且困难:随着微处理器技术、通信技术和集成电路技术的发展,自动控制系统逐渐地采用了数字化的现场仪表和现场设备。同时,数字设备的成本也越来越低。因此,就对现场仪表和现场设备的互连方式提出了更高的要求。现场总线就在这种内外因素的作用下应运而生。现场总线是一种实现和维护成本低廉而又能经受工业现场环境的通信系统。从20世纪80年代中期至今的短短20多年中,现场总线经历了概念提出、标准制定和软硬件产品的研制,已经出现了好几种现场总线技术走向成熟并且得到了推广和广泛地应用。下面是几种具有代表性现场总线:

1.基金会现场总线(FF)

1994年,由ISPF和World FIP北美分会联合成立了现场总线基金会。该基金会集众家之长,致力于开发出国际上统一的现场总线协议,即基金会现场总线(Foundation Field bus,缩写FF)。该总线主要用于过程自动化。

2.PROFIBUS

1986年,德国开始制定PROFIBUS标准。1990年完成了PROFIBUS-F湖S和PROFIBUS-DP协议的制定工作,1994年又制定了用于过程自动化的PROFIBUS-PA通信协议,可实现总线供电与本质安全防爆。

3.Lon Works

Lon Works 是由美国Echelon公司推出并由它与摩托罗拉、东芝公司共同倡导,于1990年正式公布而形成的。Lon Works技术采用的Lon Talk协议被封装在称之为Neuron的神经元芯片中得以实现。该总线主要用于智能和家庭自动化。

4.HART

HART是Highway Addressable Remote Transducer的缩写。是由Rosemount公司开发并得到80多家著名仪表公司的支持,于1993年成立了HART通信基金会。它是一种模

2

拟信号与数字信号混合的通信协议。能利用总线供电,可满足本质安全防爆要求,并可组成由手持编程器与管理系统主机作为设备的双主设备系统。

此外还有本文所要研究和应用的CAN(Control Area Network)总线。在本次课题设计中,我们对CAN总线协议进行了深入的学习和研究,并且设计了一个验证性的实验系统,即基于CAN总线的温度监控系统。

2.1 CAN总线产生和发展

控制器局部网(CAN—CONTROLLER AREA NETWORK)是BOSCH公司为现代汽车应用领先推出的一种多主机局部网,由于其卓越性能,现已广泛应用于工业自动化、多种控制设备、交通工具、医疗仪器以及建筑、环境控制等众多部门。

随着计算机硬件、软件技术及集成电路技术的迅速发展,工业控制系统已成为计算机技术应用领域中最具活力的一个分支,并取得了巨大进步。由于对系统可靠性和灵活性的高要求,工业控制系统的发展主要表现为:控制面向多元化,系统面向分散化,即负载分散、功能分散、危险分散和地域分散。

分布式工业控制系统就是为适应这种需要而发展起来的。这类系统是以微型机为核心,将5c技术--COMPUTER(计算机技术)、CONTROL(自动控制技术)、COMMUNICATION(通信技术)、CRT(显示技术)和CHANGE(转换技术)紧密结合的产物。它在适应范围、可扩展性、可维护性以及抗故障能力等方面,较之分散型仪表控制系统和集中型计算机控制系统都具有明显的优越性。

典型的分布式控制系统由现场设备、接口与计算设备以及通信设备组成。现场总线(FIELDBUS)能同时满足过程控制和制造业自动化的需要,因而现场总线已成为工业数据总线领域中最为活跃的一个领域。现场总线的研究与应用已成为工业数据总线领域的热点。尽管目前对现场总线的研究尚未能提出一个完善的标准,但现场总线的高性能价格比将吸引众多工业控制系统采用。同时,正由于现场总线的标准尚未统一,也使得现场总线的应用得以不拘一格地发挥,并将为现场总线的完善提供更加丰富的依据。控制器局部网CAN(00NTROLLER AERANETWORK)正是在这种背景下应运而生的。由于CAN在愈来愈多不同领域采用和推广,导致要求各种应用领域通信报文的标准化。为此,1991年9月PHILIPS SEMICONDUCTORS制订并发布了CAN技术规范(vERSl0N2.O)。该技术规范包括A和B两部分。2.OA给出了曾在CAN技术规范版本1.2中定义的CAN报文格式,而2.OB给出了标准的和扩展的两种报文格式。此后,1993年11月ISO正式颁布了道路交通运载工具--数字信息交换--高速通信控制器局部网(CAN)国际标准2002.12.62(IS011898),为控制器局部网标准化、规范化推广铺平了道路。

3

2.2 CAN总线的概述

CAN是控制器局域网络(Controller Area Network,CAN)的简称,是德国BOSCH公司为解决现代汽车中电子监控设备之间的数据交换于1958年推出的高级串行数据通信协议。此后,CAN通过ISO11898及ISO11519标准化,得到国际上许多大公司的支持。现在在欧洲已是汽车网络的标准协议。CAN通信接口游硬件实现,完成物理层和数据链层功能,其独特的设计和高度的可靠性,非常适用于分布式实时控制,因此越来越受到工业界的重视。

CAN属于总线式串行通讯网络,由于采用了许多新技术及独特的设计,CAN总线数据通讯具有突出的可靠性、实用性和灵活性。其特点如下:

1.CAN总线为多主工作方式,网络上任一节点均可在任意时刻主动地向网络上其它节点发送信息,而不是传统的主从方式。

2.在报文标识符上,CAN上的节点分成不同的优先级,可满足不同的实时要求,优先级高的数据最多可在134us内得到传输。

3.CAN采用非破坏总线仲裁技术。当多个节点同时向总线发送信息出现冲突时,优先级低的节点会主动地退出发送,而高优先级的节点可不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下,也不会出现网络瘫痪情况。

4.CAN节点只需要通过对报文的标识符滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据。

5.CAN报文采用短帧结构,传输时间短,受干扰概率低,保证了数据出错率极低。并且CAN的每帧信息都有CRC校验及其它检错措施,具有极好地检错效果。

6.CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其它节点的操作不受影响。

7.CAN协议废除了传统的站地址编码,而代之以对通信数据块进行编码。使得网络内的节点个数在理论上是不受限制的。但是,实际应用中CAN总线的节点个数主要取决于总线驱动电路,目前节点数可达110个。这个问题将在下文中有详细地讨论。

8.CAN的通信介质可为双绞线、同轴电缆和光纤,选择灵活。而且CAN总线结构简单,开发技术容易掌握。因此CAN总线具有很高的性价比。

2.3 CAN总线的特点

(1)全数字化通信

4

现场总线系统是一个“纯数字”系统,而数字信号具有很强的抗干扰能力,所以,现场的噪声及其他干扰信号很难扭曲现场总线控制系统里的数字信号,数字先后的完整性使得过程控制的准确性和可靠性更高。

(2)一对N结构

一对传输线,N台仪表,双向传输多个信号。这种一对N结构使得连接简单,工程周期短。安装费用低,维护容易。如果增加现场设备或现场仪表,只需要并行挂接到电缆上,无需架设新的电缆。

(3)可靠性高

数字信号传输抗干扰能力强,精确度高,无需采用抗干扰和提高精度的措施,从而降低成本。

(4)可控状态

操作员在控制室即可了解现场设备或现场仪表的工作情况,也能对其进行参数调整,还可以预测或者寻找故障。整个系统始终处于操作员的远程监控状态,提高了系统的可靠性,可控性和可维护性。

(5)可换性

用户可以自由选择不同控制商所提供的性能价格比最优的现场设备或者现场仪表,并将不同品牌的仪表互联。即使某台仪表发生故障,换上其他品牌的同类仪表也能照常工作,实现了“即接即用”。

(6)互操作性

用户把不同的制造商的各种品牌的仪表集成在一起,进行统一组态,构成其所需的控制回路,而不必绞尽脑汁,为集成不同品牌的产品在硬件或者软件上花费力气或增加额外投资。

(7)综合功能

现场仪表既有检测、变换和补偿功能,又有控制和运算功能,实现了一表多用,不仅方便了用户也降低了成本。

(8)分散控制

控制站功能分散在现场仪表中,通过现场既可以构成控制回路,实现了彻底分散控制,提高了系统的可靠性、自治性和灵活性。

(9)统一组态

由于现场设备或者现场仪表都引入了功能块的概念,所有制造商都使用相同的功能块,并统一组态方法,使组态变得非常简单,用户不需要因为现场设备或者现场仪表种类不同而带来组态方法不同,再去学习和培训。

5

(10)开放式系统

现场总线为开放互联网络,所有技术和标准是公开的,所有制造商必须遵循。这样,用户可以自由集成不同制造商的通信网络,既可以与同层的网络互联,也可以与不同层网络互联,还可以极其方便地共享网络数据库。

2.4 CAN总线组织的基本规则

CAN总线基于以下5条基本规则进行组织: (1)总线访问

CAN控制器只能在总线空闲状态期间开始发送,所有CAN控制器同步于短帧起始的前沿。

(2)仲裁

在CAN总线的发送期间,发送数据帧或远程帧的每一节点均为总线主节点。当许多节点一起开始发送时,此时只有发送具有最高优先权节的点变成总线主节点,具有不同标识符的两帧中,优先权被标注于帧中,较高优先权的标识符具有较低的二进制数值。若具有相同标识符的数据帧和远程帧同时被初始化,数据帧较远程帧具有更高优先权。

(3)编码/解码

对于帧起始、仲裁域、控制域、数据域和CRC序列实用位填充技术进行编码。当正在发送的CAN控制器检测到5个连续的相同极性的位被发送,一个互补(填充)位被插入到该发送位流中。当一个正在接收的CAN控制器检测到接收的上述5种位域的位流中,具有5个相同极性的连续位,它将自动删除下一个接收(填充)位,删除填充位的电平必须与先前位相反,否则一个填充错误将被检测,并被标注。

其余的位域和帧具有固定的形式,因此不使用填充方法进行编码和解码。报文中的位流按照NRZ(Non Return Zero)方法进行编码,即位周期期间位电平维持恒定,要么是显性电平,要么是隐性电平。

(4)出错标注

当检测到发送位错误、填充错误,形式错误或应答错误时,检测出错条件的CAN控制器将发出1个出错标志,出错标志在下一位开始发送。当检测到CRC错误时,出错标识在紧跟应答界定符后的一位开始发送,除非其它一些出错的错误标识已经开始发送,出错标识将破坏位填充或损坏固定形式的位场。

发出错误标识后,每个CAN控制器都在监控总线直至检测到一个显性电平到隐性电平的跳变,此时,每个CAN控制器完成了其出错标注,并且所有CAN控制器开始发

6

送7个附加的隐性位。

所有可以检测的错误均可在报文发送时间内被标注,因而使CAN控制器能很容易的做出对应报文的出错帧,并初始化已经损坏报文的重新发送,如果CAN控制器检测到出错帧固定格式的任何偏离,它将发送一个新的出错帧。

(5)超载标注

由一些CAN控制器要求借助于发送一个或者更多的超载帧来延迟下一个数据帧或远程帧的发送。虽然超载帧和出错帧具有相同的格式,但对它们的处理却不同,在间歇域期间进行的发送超载帧不能初始化如何先前的数据帧和远程帧的重新发送。超载帧的发送必须起始于所期望间歇域的第一位,在期望的间歇域期间,重新激活为显性位的超载帧的发送在该事件后开始。

7

第3章 温度监控系统的总体设计方案

3.1 系统要求

实时监测楼宇内各个房间温度变化,并自动控制房间空调机的开关状态,以保证房间内温度处于合适状态。同时,将检测到的温度情况通过CAN总线反馈到监控中心。

3.1.1 系统功能要求

设计出温度监控系统的其中一个智能节点的硬件结构,选用合适的主控芯片和传感器,完成硬件框图和硬件之间的连接图。

3.2 系统总体设计方案

图3.1为系统总体结构图,此网络结构为管理计算机和智能节点组成的两层网络结构。整个系统由上位监控机、CAN通信适配卡和多个智能节点组成,节点的数量可以根据建筑物的规模增加和减少。采用CAN总线作为通讯网络将各节点连接成一个分布式智能楼宇监控系统。网络拓扑结构为总线方式,上位监控机是抗干扰能力很强的工业PC机,以SJA1000芯片作为CAN总线控制器,AT89C52单片机作为节点控制器,将其与数字温度传感器相连,82C250芯片作为CAN收发器。

由于CAN总线固有的电气特性,在一个CAN总线网络中最多只能配置110个节点,为了满足智能大厦的要求,可利用中继器对CAN总线进行扩展,这样不仅增加了系统的节点,还可以起到信号放大作用,增大通信距离。

本设计中,节点包括扩展芯片、传感器、控制设备、收发器和电源等。节点之间的通信支持双绞线、电力线、光纤和红外线等多种介质,按照规范的协议进行通信,其通信速率范围在300kbps~1.5Mbps之间。上位监控机通过通信适配卡与总线相连,用于整个系统的集中监控、管理、分析及网络通信检测等。

8

智能楼宇网络服务器上位监控机上位监控机CAN通信适配卡CAN总线CAN通信适配卡中继器CAN总线收发器82C250CAN总线收发器82C250CAN总线控制器SJA1000超温报警??CAN总线控制器SJA1000温度节点控制器AT89C52接口芯片8155温控温度节点控制器AT89C52数字温度传感器DS18B20-1??数字温度传感器DS18B20-n

图3.1 系统总体结构框图

3.3 关键器件的选择

根据系统的功能要求和实现系统的可行性要求,我们在关键器件CAN总线控制器和驱动器上,分别选择了菲利普半导体生产的SJAl000和82C250。它们不仅使用方便、性能可靠,而且价格便宜易于购买。同时SJAl000也适合于工业产品的量产。温度测量采用使用方便,性价比高的单线数字温度传感器DSl8B20。

9

3.3.1 SJA1000芯片简介

SJA1000是一种独立的CAN控制器,主要用于移动目标和一般工业环境中的区域网络控制。它是Philips半导体公司PCA82C200 CAN控制器(Basic CAN)的替代品,而且它增加了一种新的操作模式——PELICAN,这种模式支持具有很多新特征的CAN2.0B协议。

3.3.1.1 SJA1000芯片特性

(1)和PCA82C200独立CAN控制器引脚兼容 (2)和PCA82C200独立CAN控制器电气兼容 (3)扩展接收缓冲器(64字节、先进先出FIFO) (4)和CAN2.0B协议兼容 (5)同时支持11位和29位识别码 (6)位速率可以达到1Mbits/s (7)PELICAN模式扩展功能: ——可读/写访问错误的计数器 ——可编程的错误报警限制 ——最近一次错误代码寄存 ——对每个CAN总线错误的中断 ——具体控制位控制的仲裁中断 ——单次发送

——只听模式(无确认、活动的出错标志) ——支持热插拔(软件速率检测)

——验收滤波器扩展(4字节代码,4字节屏蔽) ——自身信息接收(自接收请求) (8)24MHZ时钟频率 (9)对不同微处理器的接口 (10)可编程的CAN输出驱动器配置 (11)增强的温度适应(-40到1250C) 3.3.1.2 SJA1000内部结构

SJA1000的硬件结构及内部结构图如图3.2、3.3所示

10

CAN总线SJA1000发送缓冲主控制器接口管理逻辑接收FIFO验收滤波CAN核心模块收发器

图3.2 硬件结构框图

22SJA10008VDD1 VSS1 ALE/AS.CS.RD/E.WR.CLKOUT.MOOE.INTAD7到AD03到711,16控制地址/数据接口管理逻辑1215VDD3VSS3TX0TX1RX0RX1VSS2VDD228到23,1到28位地址/数据总线内部总线位时序逻辑信息缓冲器131419202118位流处理器发送EXFIFO接收接受过滤错误管理逻辑XTAL1910振荡器17复位RSTXTAL2

图3.3 SJA1000内部结构图

11

从上面的图可以看出,SJA1000主要由接口管理逻辑IML、信息缓冲器(含发送缓冲器TXB和接收缓冲器TXFIFO)、位流处理器BSP、接收过滤器ASP、位时序处理逻辑BTL、错误管理逻辑EML、内部及复位电路等构成。IML接收来自CPU的命令,控制CAN寄存器的寻址并向主控器提供中断信息及状态信息。CPU的控制经IML把要发送的数据写入TXB,TXB中的数据由BSP处理后经BTL输出到CAN总线。BTL始终监视CAN总线,当检测到有效的信息头“隐性电平-控制电平”的转换时启动接收过程,接收的信息首先要由位流处理器BPS处理,由ASP过滤。只有当接收的信息识别码与ASP检测相符时,接收信息才最终被写入RXB或RXFIFO中。RXFIFO最多可以缓存64字节的数据,该数据可以被CPU读取。EML负责传输层中调制器的错误管制,它接收BSP的出错报告,促使BSP和IML进行错误统计。

CAN控制器工作模式的设定、数据的发送和接收等都是通过这些寄存器来实现的,时钟分频寄存器OCR用于设定SJA1000工作于BASIC CAN模式还是PELICAN模式,还用于CLKOUT引脚输出时钟频率的设定,在上电初始化控制器时必须首先设定:在工作模式下,控制寄存器CR用于控制CAN控制器的行为,可读可写;命令寄存器CMR只能写;状态寄存器SR只能读;而IR、ACR、AMR、BTRO、BTRI、OCR在工作模式下读写无意义。通常,在系统初始化时CR.0=1,SJA1000进入复位模式。在此模式下IR、ACR、AMR、BTRO、BTRI及OCR均可读可写,此时设置相应的初值。当退出复位模式时,SJA1000即按复位时设定的相应情况工作于工作模式,除非再次使芯片复位,否则上次设定的值不变。当需要发送信息时,若发送缓冲器空闲,由CPU控制信息写入TXB,再由CMR控制发送;当接收缓冲器RXFIFO未满且接收信息通过了ASP,则接收到的信息被写入到RXFIFO。可通过两种方法读取接收的信息。一种方法是,在中断被使能的情况下,由SJA1000向CPU发送中断信号,CPU通过SR及IR可以识别该中断,并读取数据释放接收缓冲器;另一种方法是直接读取SR,查询RXFIFO的状态,当前的信息被读取后,接收缓冲器有效信号会再次有效,通过中断方式或查询方式可以再次读取信息,直到RXFIFO中的信息被全部读出为止。当RXFIFO已满,如还有信息被接收,此接收信息不被保存,且发出相应的缓冲器溢出信号供CPU处理。

3.3.2 AT89C52单片机简介

AT89C52是51系列单片机的一个型号,它是ATMAL公司生产的。

AT89C52是一个低电压,高性能的CMOS 8位单片机,片内含8k bytes的可以反复擦写的Flash只读存储器和256 bytes的随机数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中

12

央处理器和Flash存储单元,功能强大的AT89C52单片机可以提供许多较复杂系统控制应用场合。

AT89C52单片机的主要性能: (1)与MCS-51产品完全 (2)32个双向I/O口

(3)8K可以反复擦写(>1000次)Flash ROM (4)256K 8bit 内部RAM

(5)3个16位可编程定时/计数器中断,两个串行中断,两个外部中断源 (6)可编程UART串行通道 (7)具有3级加密存储器

(8)低功耗空闲掉电模式,软件设置睡眠和唤醒功能

3.3.3 CAN总线收发器82C250芯片简介

82C250是PHILIPS公司的CAN控制器和物理总线之间的接口,提供对总线的差动发送和接受能力。它与ISO/DIS11898标准完全兼容,抗干扰能力强,提供了过热保护、总线与电源及地之间的电路保护及低电流的待机模式,它的功能框图如图3.4所示。

13

31TXD保护电路Rs8驱动器斜率/等待7CANHRXD45Vref基准电压PCA82C2502GND接收器6CANL

图3.4 82C250功能框图

RS引脚用于选择不同的工作状态:高速状态、斜率控制状态和待机状态。该引脚直接接地,82C250处于高速状态;通过一个电阻接地,用于控制I/O引脚线上信号的上升和下降沿斜率,这个斜率同该引脚上流过的电流成正比;比如直接接高电平,82C250则处于等待状态,此时发送器关闭,接收器处于低电流状态,当CAN总线上有显性位出现时RXD是低电平输出。对于采用非屏蔽双绞线的系统,为了降低射频干扰,应选择斜率控制状态。若82C250处于CAN总线网络的终端,需加一个124Ω的匹配电阻,降低反射干扰波。

3.3.4 6N137光电耦合器

6N137光电耦合器是一款用于单通道的高速光耦合器,其内部有一个850nm波长AlGaAs LED和一个集成检测器组成,其检测器由一个光敏二极管、高增益线性运放及一个肖特基钳位的集电极开路的三极管组成。具有温度、电流和电压补偿功能,高的输入输出隔离,LSTTL/TTL兼容,高速(典型为10MBd),5mA的极小输入电流。

6N137光耦合器的特性:

14

(1)转换速率高达10MBit/s (2)摆率高达10kV/us (3)扇出系数为8 (4)逻辑电平输出 (5)集电极开路输出

6N137光耦合器的内部结构、管脚图如图3.5所示。

N/C+18VCCVE27VF—36VON/C45GND

图3.5 6N137内部结构及管脚图

6N137光电耦合器的电源管脚旁应有一个0.1uF的去耦电容。在选择电容类型的时候,应尽量选择高频特性好的电容,如陶瓷电容,并且尽量靠近6N137光电耦合器的电源管脚。

15

第4章 系统的硬件设计

4.1 CAN通信电路设计

通信电路主要由电源、微控制芯片AT89C52、CAN总线控制器SJA1000、CAN总线驱动器82C250、光电耦合器6N137以及一些必要的外围电路组成。CAN数据通过82C250传输到SJA1000,AT89C52处理后再传出去。CAN电源采用高性能的DC/AC变换器,能起到稳定电压和隔离防干扰的作用。CAN通信的框图及硬件电路设计图如图4.1和4.2所示。

CANHCAN总线收发器光电耦合器6N137CAN控制器SJA1000微控制器AT89C52CANL 图4.1 CAN结构通信框图

16

VCCVCCAD0AD1AD2AD3AD4AD5AD6AD7123456789101112INT131415RW16RD/E1718CLKOUT1920P1.0VCCP1.1P0.0P1.2P0.1P1.3P0.2P1.4P0.3P1.5P0.4P1.6P0.5P1.7P0.6RST/VPDP0.7P3.0/RxDEA/VppP3.1/TxDALE/PROGP3.2/INT0PSENP3.3/INT1P2.7P3.4/T0P2.6P3.5/T1P2.5P3.6/WRP2.4P3.7/RDP2.3XTAL2P2.2XTAL1P2.1GNDP2.089C524039383736353433323130292827262524232221P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7INT1RDWR232425262728121656AD0AD1AD2AD3AD4AD5AD6AD7INTRD/ERWTX0TX1RX0TX1131419203006.5k3.6kVCC3501234N/CVCCIN+VEIN-V0N/CGND6N1378765390+5VMODEVDD1Vss1VDD211228180.1uVCC8765VCCVEV0GND6N137N/CIN+IN-N/C12340.1uXTAL173174VSS2VDD3CLKOUTALE/ASRSTCSSJA1000XTAL2VSS3XTAXL121120.1u15922P3901024MHZ22P+5V0.1+5V21432TXDVrefRXDCANLVCCCANHGNDRs82C2501.6K5675CANLCANH10uSW10K1 图4.2 CAN通信硬件电路设计图

对于主节点和从节点的微控制器来说,复位十分重要,这直接决定其是否能够正常工作。本电路采用简单的复位方式,在正常工作状态下,RSR脚与地的电位相等为低电平,故复位不起作用。当SW按下时,电容放电,RST脚为高电平,从而使单片机复位。送客SW时,VCC给电容充电,从而使RST脚慢慢变为低电平,脱离复位状态。

SJA1000作为单片机89C52的外部扩展器件,通过并行扩展与89C52连接。这样,只需要一般的单片机仿真器就可以进行硬件调试。82C250和SJA1000可完成物理层和数据链路层的工作,应用层由89C52运行应用程序来实现。89C52的外部晶振频率由

17

SJA1000的CLKOUT引脚提供,保证了89C52和SJA1000时序同步。SJA1000所接的晶振频率为24MHz,经过时钟分频器寄存器二分频后,CLKOUT引脚输出12MHz时钟频率。89C52的P2.7引脚是SJA1000的片选信号。相应的SJA1000片内模式寄存器MOD的地址为07F00H,命令寄存器CMR的地址为07F01H,依此类推。

设计时为了预防现场噪声干扰,切断89C52与输出总线上直接电信号联系,使用的光电隔离电路。光电耦合器件是通过光媒介进行间接耦合,因而输入端和输出端没有公共信号接地,也就隔离了干扰信号的直接传导。另外,光电耦合也是一种能量传递器件。一般干扰噪声源的内阻很大,虽然也能提供较大的干扰电压,但是可以提供的能量却很小,只能形成很微弱的电流。因此,即使电压幅值很高的干扰,由于没有足够的能量,也不能使发光器件发光,从而滤掉了干扰信号。本电路使用的是6N137光电耦合器。

4.2 智能温度节点设计

智能节点可以分为:温度采集模块、通信接口模块、报警模块、CAN总线接口模块和执行器控制模块。智能节点的系统框图如图4.3所示。

报警电路CAN总线接口实时时钟CPU温度采集模块存储器执行器控制接口

图4.3 智能节点电路系统框图

智能节点主要功能是测量现场温度并显示,同时通过CAN总线向测控PC发送测试数据,响应测控PC的操作指令;当温度超过限值时,主动向测控PC发报警信息并通过LED报警提示。其硬件电路如图4.4所示。

18

DS18B20数码LED光电耦合器82C250下限LEDAT89C52MCUSJA1000控制器上限LED上电指示

图4.4 智能温度节点硬件原理图

智能节点由89C52、CAN控制器SJAl000、CAN总线收发器82C250及高速光电隔离数字10单元等构成。为提高节点的可靠性,在CANH、CANL引脚与总线之间串联512Ω电阻;在CANH、CANL引脚与地之间并联30pF的电容,以滤除总线上高频干扰。

SJAl000是PHILIPS公司生产符合CAN2.0B协议的协议转换器。它与82C250总线收发器组成通信接口,实现基于CAN总线的分布式网络数据传输。为提高CPU的效率,本设计中CAN控制器工作在中断模式,通过中断引脚向CPU发出中断请求,以完成对命令的解释与执行。

数字温度传感器DSl8B20用于组网测温;它是一线接口通信协议数字式温度传感器,其测温范围为-55℃~+125℃。分辨率为9~12位H1。它支持多点组网功能,连接时不需任何外围元件,电路结构简单。

4.3 外围电路硬件设计

4.3.1 数字温度传感器DS18B20

DS18B20是美国Dallas公司继DS1820之后推出的增强型单总线数字温度传感器。它在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进。 4.3.1.1 DS18B20的特点

温度传感器DS18B20具有独特的一线接口,只需一条口线通信即可实现多点能力,简化了分布式温度传感器的应用。可以用数据总线供电,电压范围为3.0V~5.5V,无需备用电源。测量温度范围为-55℃~+125℃,在-10℃~+85℃范围的精度为±0.5℃。

DS18B20可编程器的分辨率为9~12位,温度转换为12位,最大值为750毫秒。它的电路设计原理图如4.5所示。

19

+5V321SD18B20

4.7K图4.5 DS18B20电路设计图

a.单线制接口方式,仅需要一根信号线与CPU连接,传送串行数据,不需要外部元件。

b.每个芯片有惟一的地址编码,多个DS18B20可以挂接在一根总线上,实现多点测温。

c.测温范围为-55~+125℃,分辨率为9~12位,可通过编程选择,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃的默认值12位,可实现高精度测温。

d.既可用数据线供电,也可用外部的电源(3.0~5.5V)供电。 4.3.1.2 DS18B20使用注意事项

a.根据DS18B20的通信协议,主机控制DS18B20完成温度转换必须经过3个步骤:每一次读写之前都要对DS18B20进行复位操作,复位成功后发送一条ROM(只读存储器)指令,最后发送RAM(随机存储器)指令,这样才能对DS18B20进行预定的操作。由于DS18B20与微处理器间采用串行数据传送,因此,在对DS18B20进行读写编程时,必须严格地保证读写时序,否则,将无法正确读取测温结果。

b.在DS18B20的单总线上所挂DS18B20数量超过8个时,需要解决微处理器的总线驱动问题,因此,在进行多点测温系统设计时要加以注意。

c.连接DS18B20的总线电缆是有长度限制的。试验中,当采用普通信号电缆传输长度超过50m时,读取的测温数据将发生错误;当将总线电缆改为屏蔽双绞线时,正常通信距离可达150m;当采用带屏蔽层且每米绞合次数更多的双绞线电缆时,正常通信距离进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的,因此,在用DS18B20进行长距离测温系统设计时,要充分考虑总线分布电容和阻抗匹配问题。

d.在DS18B20测温程序设计中,向DS18B20发出温度转换命令后,程序总要等待DS18B20的返回信号,一旦某个DS18B20接触不好或断线,当程序读该DS18B20时,将没有返回信号,程序进入死循环。在进行DS18B20硬件连接和软件设计时应予以重视。

20

第5章 系统的软件设计

5.1 系统的软件设计

本系统软件包括3个部分:第1部分是以主机节点为管理中心的上位机的软件设计, 采用VB6.0开发,既可使系统与智能温度节点进行链接,又实现了友好的人机操作界面,用户可以在主控室设置大楼各房间的运行参数,查询各房间的温度及控制设备的运行情况,查看历史运行记录和实时运行费用等;第2部分是以AT89C52为控制核心的下位机的软件设计,采用汇编语言开发,主要完成键盘扫描与输出显示、现场温度数据的采集、超限声光报警、配置8155芯片的工作模式、AT89C52与8155芯片进行通信、温度控制算法及对调温设备的控制等;第3部分是与SJA1000为核心的通信程序设计,采用C51开发,完成与网络其他节点及上位机的信息交互,以及与AT89C52进行通信。

5.2 上位机的软件设计

主节点的整体软件流程图如图5.1所示。

开始接收从节点信息在液晶屏上显示相关信息否是否有异常发生?是显示并保持异常信息

图5.1 主节点整体软件流程图

21

5.2.1 CAN信息的接收

CAN信息的接收也是由CAN控制器自动完成,接收程序只须从接收缓存器中读取接收的数据,再进行相应的处理即可。软件流程如图5.2所示。

N判断是否不生中断Y判断是否是接收中断N请求复位Y判断是否数据溢出YN将新报文放入单片内部存储单元数据溢出处理判断是否数据溢出返回主程序

图5.2 上位机接收子程序

22

5.3 下位机的软件设计

5.3.1 温度测控软件设计

开始复位DS18B20延时发出跳过ROM命令温度值显示发温度转换命令NN转换完毕?Y所有在线DS18B20处理完?Y复位DS18B20i=1发报警搜索命令复位DS18B20有DS18B20温度越限?Y发一个DS18B20序号报警控制N发匹配ROM命令读温度值i=i+1

图5.3 温度测控流程图

23

5.3.2 调温设备控制软件设计

接收控制程序Y检测到报警帧?N发送询问帧1发送询问帧2总线仲裁成功?N启动变频调速进行变风量空调控制N总线仲裁成功?YY检测到状态帧?YN报警发生报警节点错误

图5.4 调温设备控制软件流程图

图5.3、图5.4分别给出了温度测控软件、调温设备控制软件的流程图。为了节能而在温度控制算法模块中采用了增量型PID(比例-积分-微分)控制算法与模糊控制算法相结合:当偏差较大时执行前者,使温度快速回到设定值附近;而当偏差较小时执行后者,以避免控制装置对被控温度过于敏感而频繁动作或振荡。此外,还采取了变新/回风比例自动控制、变频调速变风量空调控制、舒适性空调温度上限设定值提高等节能措施,以达到节能目的。

5.4 CAN的初始化程序设计

系统软件设计的关键在CAN总线通信的设计上,CAN的每一次启动都要进行初始

24

化。微处理器AT89C52负责SJAl000初始化,通过控制SJAl000实现数据的接收和发送等通信任务。单片机对SJAl000进行正确的初始化后,通过访问其内部寄存器实现对CAN的操作。初始化程序主要是在程序运行前通过对CAN控制器SJAl000的控制寄存器写入控制字,从而确定CAN控制器的工作方式等,使其能够按照用户要求的工作方式进行CAN通信工作。

初始化开始发送复位请求进入复位状态设置时钟分频器设置接受代码,接受屏蔽寄存器设置总线时序寄存器设置输出控制寄存器设置模式寄存器进入操作模式开中断 图5.5 CAN初始化子程序

5.5 数字温度传感器的软件设计

数字温度传感器DSl8B20的温度采集程序如图5.6所示。

25

传感器初始化发送SKIP RCM命令发送温度转换命令读取温度值并保存 图5.6 DSl8B20温度采集子程序流程图

26

结 论

本设计将CAN总线技术、DS18B20及AT89C52等应用于智能楼宇温度测控系统中,能方便地获取并解析现场控制或通信数据,及时响应现场操作,实现了温度数据采集和通信功能,具有结构简洁、扩容方便及可靠性高等优点,为工程设计、施工布线提供了极大的方便,提高了系统信息传输的安全性、实时性。

在毕业论文设计整个过程中,主要完成下面几个方面工作:

1.阅读文献,分析温控系统的功能要求:给出基于CAN总线温控系统详细功能要求报告。

2.根据详细的功能要求报告提出系统的总体设计方案。并论证方案的可行性。选用了菲利普半导体公司生产的CAN总线控制器SJAl000和CAN总线驱动器PCA82C250实现CAN总线接口。

3.设计温度监控系统的硬件。 4.设计温度监控系统的软件。 5.绘制电路原理图。

27

参考文献

[1] 杨宪惠.现场总线应用技术及应用[M].北京:清华大学出版社,1999

[2] 邬宽名.CAN总线原理和应用系统设计[J].北京:北京航天航空大学出版社,1996.

[3] 邬宽名.CAN总线系统设计中的几个问题[J].北京:北京航天航空大学出版社,2003.

[4] 邬宽名.现场总线技术及其应用[M].北京:北京航天航空大学出版社,2003. [5] 饶运涛,邹继军.郑勇芸现场总线CAN原理与应用技术,2003

[6] 陈杨,刘曙生,龙志强.基于CAN总线的数据通信系统研究[J].测控技术,2000,19(10):53~55.

[7] SJA1000 Stand-alone CAN controller. Philips Data Sheet[S].

[8] 金伟正.单线数字温度传感器的原理与应用[J].电子技术应用,2000(6):66~68

[9] 沙占友.智能化集成温度传感器原理与应用[M].北京:机械工业出版社,2002:17~38

[10] 建锋.电子数字温度传感器DS18B20[J].2008.2.27

[11] 陈庆官,薛武.高精度数字式温度传感器18B20的使用[J].传感器技术,1998(4):39~43

[12] 张迎新 等.单片机原理及应用.北京:电子工业出版社,2009.1

[13] 周凤余,鲁守银,李贻斌 等.CAN总线系统智能节点设计与实现[J].微计算机信息.1999(6):25~27

[14] 老虎工作室.电路设计与制版——Protel99入门与提高.人民邮电出版社.2001 [15] 赵辉.Protel99 电子线路 CAD.北京:北京邮电大学出版社,2007

[16] 戴明.基于CAN总线的温度监控系统:[硕士学位论文] 南京理工大学,2006

28

[17] 穆立君.基于CAN总线的楼宇自动化系统设计:[硕士学位论文] 湖南大学,2006

[18] 陶良民,俞绍安.基于CAN总线的智能楼宇温度测控系统的设计.建筑电气.2009(6):37~40

[19] 潘国峰,何平,田丰,孙以材.基于现场总线的分布式测温报警系统.河北工业大学学报.2010,39(1):66~71

[20] 叶露林,吴秋芹.基于CAN总线的温度测控系统.[期刊论文]-电子科技2005(8)

29

致 谢

大学三年学习时光已经接近尾声,时至今日,几个月的毕业设计终于可以画上一个句号了,现在回想起做毕业设计的整个过程,颇有心得,受益匪浅,苦尽甘来。本次毕业设计不仅让我对CAN总线和温度监控系统有了更深一步的了解,同时也增加了自己自学和阅读的能力,为以后的工作打下了基础。可以说毕业设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。但由于时间的仓促和主客观条件的限制,设计方案的不足,望老师们提出宝贵的意见,我将虚心接受老师们的教诲。

本次毕业设计是在廖镇勋老师悉心的指导下完成的。从论文的选题到资料的收集再到论文的完成,无不倾注着廖老师辛勤的汗水和心血。廖老师的严谨治学态度、渊博的知识、无私的奉献精神使我受益匪浅,从廖老师的身上,我不仅学到了扎实、宽广的专业知识,也学到了做人的道理。在此我要向我的指导老师致以最衷心的感谢和深深的敬意!同时我在这里还要感谢我们组的成员,他们也在毕业设计方面给予了我很多帮助和关心。

最后祝愿廖老师工作顺利,身体健康!祝愿同学们前程似锦,一帆风顺。

学生签名:

日 期:2011年5月

30

本文来源:https://www.bwwdw.com/article/bjtg.html

Top