基于CAN总线智能建筑监控系统的通信协议设计

2010-09-18 09:36:52来源: 电子科技

  现代智能建筑监控系统广泛采用了现场总线技术。现场总线的种类目前有40多种,但适合智能建筑且在我国推广的主要有两种:CAN(Control Area Network)总线和Lonworks总线。CAN总线技术以其可靠性高,结构简单,传输距离长和成本低而具有巨大的应用潜力。

  控制局域网CAN是现场总线技术中最成熟、最有发展前途的微处理器局域网络。协议采用总线型拓扑结构,通过研究CAN2.0B协议规范,制定了符合智能建筑监控系统的通信协议,并进行了通信节点软件的设计。

  1 基于CAN总线的智能建筑网络拓扑结构

  CAN总线的智能建筑监控系统拓扑结构,如图1所示。该系统由3部分组成:上位机、CAN通信节点和各个现场智能设备组成。通信节点的数量可根据建筑物的规模增减,CAN总线作为通信网络将各个节点连接成一个分布式智能监控系统。

CAN总线的智能建筑监控系统拓扑结构

  (1)上位机:由计算机和监控软件组成,对整个智能建筑监控系统的管理和控制,是整个系统的中心。

  (2)CAN通信节点:各通信节点功能相同,主要完成把现场设备采集到的实时数据发送到CAN总线上,接收CAN总线发送来的控制信息。CAN通信节点的硬件由微处理器、CAN控制器SJAl000、CAN收发器PCA82C250组成。

  (3)现场智能设备:由微处理器、和现场功能装置等组成。完成检测、报警、控制、显示等功能。智能建筑监控系统现场设备由照明、空调、电梯、安全监控、消防监控、给排水,配电等组成。

  2 CAN总线通信协议的硬件基础

  CAN总线协议描述了信息在设备之间的传递规则,它对层的定义与开放系统互连模型OSI一致,CAN被分为应用层、数据链路层和物理层3层,各层之间互相透明,每一层只与另一设备上相同的那一层通讯,实际的通讯是发生在每一设备上相邻的两层之间,而各个设备只通过物理层的通信介质连接在一起。

  CAN总线规范定义了模型的最下面的两层:物理层和数据链路层。CAN总线驱动器和通信介质则实现了物理层的主要功能。CAN总线控制器实现了总线协议中规定的数据链路层的传输任务。常用的CAN总线驱动器有PHILIPS公司的PCA82C250,总线控制器是SJAl000,通信介质是双绞线或同轴电缆。

  2.1 总线驱动器PCA82C250的工作原理

  PCA82C250是CAN总线控制器与物理导线之间的接口,该驱动器可以提供对总线的差动发送和接收功能。PCA82C250的驱动部分由1 个PNP的极管和1个NPN的三极管组成。这2个三极管根据TXD的信号导通或截止。当TXD=0时,2个三极管处于导通状态时,总线上显示为显性电平。当TXD=1时,2个三极管处于截止状态,总线上显示为隐性电平,此时驱动器对总线的影响很小。因此,如果存在其他节点发送显性电平,则总线的电平状态就是显性,只有所有的驱动器都发送隐性电平,总线的电平状态才是隐性。实现了CAN总线物理层的线与功能。PCA82C250功能图,如图2所示。

PCA82C250功能图

  2.2 基于线与功能多节点仲裁过程

  通信节点访问总线,对总线上信号进行检测,只有当总线处于空闲状态时,才允许发送。当总线上有多个节点同时进行发送时,必须通过“无损的逐位仲裁”方法来使有最高优先权的报文优先发送。在CAN总线上发送的每一条报文都具有惟一的11位或29位ID。CAN总线的状态取决于二进制数‘O’而不是 ‘1’,所以ID号越小,该报文拥有越高的优先权。因此一个为全‘0’标志符的报文具有总线上的最高级优先权。多节点仲裁过程如图3所示。

多节点仲裁过程

  2.3 CAN控制器SJAl000的功能介绍

  CAN的通信协议由CAN控制器完成,CAN控制器由实现CAN总线协议的部分和实现与微处理器接口部分的电路组成。

  SJAl000是PHILIPS公司推出的一种高性能的CAN总线控制器,它不仅和PCA82C200的基本CAN模式(BasieCAN)兼容,而且还增强CAN模式 (PeliCAN),这种模式支持CAN2.0B协议。SJAl000以一块可编程芯片上的逻辑电路的组合来实现这些功能,提供了与模块控制器及微控制器的接口,通过对它的编程,CPU可设置它的工作方式,控制它的工作状态,与CAN驱动器PCA82C250进行数据的接收和发送。

  3 CAN的帧结构

  CAN协议规定了两种不同的帧格式,不同之处为标识符的长度不同,具有11位标识符的帧称之为标准帧,具有29位标识符的帧被称为扩展帧。

  3.1 CAN帧类型

  报文传输由以下4个不同的帧类型所表示和控制

  (1)数据帧:携带数据从发送器至接收器。

  (2)远程帧:由节点发送,请求发送具有相同标识符的数据帧。

  (3)错误帧:由任何节点发出,检测到错误就发出错误帧。

   (4)过载帧:用于提供先前和后续数据帧或远程帧之间的附加延时。

  3.2 CAN扩展帧的数据帧结构

  扩展帧的数据帧结构,如图4所示。

 扩展帧的数据帧结构

  扩展帧的数据帧的主要结构有:

  (1)帧起始,标志帧的开始,它由单个“显性”位构成,在总线空闲时发送,在总线上产生同步作用。

  (2)仲裁域,仲裁域包括29位标识符、SRR位、IDE位、RTR位。29位标识符包括11位基本ID、18位扩展ID。基本ID按ID- 28到ID-18的顺序发送,扩展ID按ID-17到ID-0的顺序发送。基本ID首先发送,其次是SRR位和IDE位。扩展ID的发送位于IDE位之后。SRR是“隐性”位。IDE位在标准格式里为“显性”,在扩展格式里为“隐性”。RTR位在数据帧里必为“显性”,而在远程帧里必为“隐性”。标识符用于提供关于传送报文和总线访问的优先权信息,其数值越小,表示优先权越高,发生冲突时优先发送。

  (3)控制域,由6位构成,前2位为保留位,为“显性”。后4位为数据长度码(DLC),表示数据域中数据的字节数,必须在0~8范围内变化。

  (4)数据域,由被发送的数据组成,字节数为控制域中决定的0~8 bit,第一个字节的最高位首先被发送。

  (5)CRC域,包括CRC(循环冗余码校验)序列(15位)和CRC界定符(1个“隐性”位),用于帧校验。

  (6)应答域,由应答间隙和应答界定符组成,共2位。

  (7)帧结束,由7位隐性位组成,此期间无位填充。

  4 通讯协议的制定

  在CAN的协议规范,规定了数据链路层和物理层,没有规定应用层。所以用户在设计通讯软件时,必须首先设计合适的CAN总线通讯协议,才能完成数据准确可靠的传输。基于研究CAN2.OB规范的基础上,采用自定义协议的方法,制定了智能建筑监控系统的通信协议。通讯协议的制定主要包括以下3个步骤。

[1] [2]

关键字:智能建筑  CAN总线  通信协议  标识符

编辑:金海 引用地址:http://www.eeworld.com.cn/gykz/2010/0918/article_3368.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
智能建筑
CAN总线
通信协议
标识符

小广播

独家专题更多

TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved