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

发布者:平凡的梦想最新更新时间:2010-09-20 来源: 电子科技 关键字:CAN总线  通信协议 手机看文章 扫描二维码
随时随地手机看文章

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

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

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

      CAN总线的智能建筑监控系统拓扑结构,如图1所示。该系统由3部分组成:上位机、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所示。

      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进行数据的接收和发送。[page]

      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个步骤。

      4.1 CAN总线网络中信息传输类型

      智能建筑中信息传输类型主要有以下几种:

      (1)紧急信息,用以传输重要信息,优先级最高,如报警信息。

      (2)广播信息,向总线上挂接的所有节点发送的信息。

      (3)命令信息,控制节点向执行节点发送的信息。

      (4)状态信息,执行节点接收到命令执行后,向控制节点反馈的信息。

      (5)数据信息,负责采集数据的节点发送的信息,如传感器采集到的信息。

      4.2 根据标识符的分配方案确定各节点优先级

      标识符的分配方案首先满足节点以及报文信息对优先级的要求,同时利用标识符空问加载有关信息,减少在数据域内占用的空间。本系统采用有29位标识符的扩展帧格式,具体分配如下:

      (1)信息类型标识符(ID.28~ID.23),000001—紧急信息,000010—广播信息,000011—命令信息,000100—状态信息,000101—数据信息。

      (2)节点地址标识符(ID.22~ID.15),0000000l—上位机节点,00000010—安全监控节点,00000100—消防监控节点,0000010l—配电节点,00000111—给排水节点,00001000—电梯节点,00001001—照明节点,00001010—空调节点。

      (3)报文功能标识符(ID.14~ID.08),如果一个节点发送多帧报文,在报文信息类型相同的情况下,可以用报文功能标识符来区分报文的优先级。

      (4)现场装置地址标识符(ID.07~ID.00)。

      4.3 组织各帧报文

      明确各节点发送的报文,对系统中各类控制信号和数据进行分类,填充各报文的数据域。[page]

      5 通信协议的软件实现

      通信协议的软件设计由3部分组成:CAN控制器的初始化、数据的发送和接收程序,其流程图如图5,图6和图7所示。

      5.1 通信节点的初始化

      初始化程序通过对CAN控制器SJAl000中的寄存器写入控制字,确定CAN控制器的工作方式,包括模式寄存器的设置、接收滤波方式设置、接收屏蔽寄存器和接收代码寄存器的设置、波特率参数和中断允许寄存器的设置等,完成初始化设置后,SJAl000进行正常的通信。

      5.2 数据发送程序

      发送数据前,采用查询方式先查看发送缓冲器状态,满足要求再把要发送的数据按照特定格式组合成一帧报文,送入SJAl000发送缓冲区,然后启动SJAl000发送命令。

      5.3 数据接收程序

      接收数据采用中断方式,主程序中应开放接受中断,单片机响应接收中断后读出CAN控制器中SJAl000的接收缓冲区数据并保存,再清SJAl000的接收缓存器。

      6 结束语

      通过研究CAN2.0B协议规范,对报文格式的分析和标识符的分配,设计出了基于CAN总线的智能建筑监控系统的通信协议。协议具有实现简单、通用性强、可靠性高,便于扩展等优点,通过验证,该协议有效地解决了智能建筑监控系统多节点通信过程中的仲裁问题。

 

 

 

关键字:CAN总线  通信协议 引用地址:基于CAN总线智能建筑监控系统的通信协议设计

上一篇:MSAP技术特点及标准进展
下一篇:SIP协议在3G网络中的应用

推荐阅读最新更新时间:2024-05-07 16:07

基于μPD780822单片机及其CAN总线模块实现车灯节点的设计
1、引言 CAN(Controller Area Network)是德国Bosch公司最先提出的,是目前汽车控制器局域网中最流行、最常用的总线。它的主要特点是:CAN总线为多主站总线,各节点均可在任意时刻主动向网络上的其他节点发送信息,不分主从,通信灵活;CAN总线采用独特的非破坏性总线仲裁技术,优先级高的节点先传送数据,能满足实时性要求;CAN总线具有点对点、一点对多点及全局广播传送数据的功能;CAN总线上每帧有效字节数最多为8个,并有CRC及其他校验措施,数据出错率极低,某个节点出现严重错误,可自动脱离总线,总线上的其他操作不受影响;CAN总线只有2条导线,系统扩充时可直接将新节点挂在总线上,因此走线少,系统容易扩充,改型灵活
[嵌入式]
基于μPD780822单片机及其<font color='red'>CAN总线</font>模块实现车灯节点的设计
基于CAN总线和无线技术的输液网络监控系统
据调查,目前在我国的大、中、小型医院及下属社区卫生院、诊所等医疗机构的输液速度和输液量几乎都是不精确的值,凭肉眼观察来估计输液速度。输液速度是护士通过转动输液器上的手动滑轮来控制的,输液量也是护士用只有两个标记的液体瓶倾倒后估计的。利用人工监视输液情况,给病人和医务人员带来许多不便。随着无线技术、网络技术和计算机技术的迅速发展,为输液采用无线、网络监控带来了便利条件。目前已有一些相关输液的研究成果,实现了输液监视、控制、报警等功能,但主要是单台设备独立使用,未能实现网络监控。文献设计了一种基于RS485总线的输液网络化监控系统,但采用RS485总线和有线监控在许多方面存在不足。由于CAN总线和无线技术在各个方面得到普遍应用,为此,
[嵌入式]
基于ARM核和CAN总线的煤矸石分选系统
  引言   随着嵌入式技术的不断发展,高性能、低功耗、低价格的32位RISC芯片的ARM微控制器呈现出强劲的发展趋势,嵌入式系统和现场总线技术结合,结合二者的优点,为传统的选煤技术提供了新的改造方案。将嵌入式技术和现场总线技术相互融合,设计了一种新的煤块和矸石在线识别与自动分选系统。   煤矸石在线识别与自动分选系统   煤块和矸石在线识别与自动分选系统的原理框图如图1所示。根据选煤工艺要求,本系统主要由下面三大部分构成: 图1 煤矸石在线自动分选系统框图   (1)检测部分:由进料斗、输送带、CCD摄像头、图像数据采集电路等组成。开采出来的原煤常含有矸石,必须将矸石从传送带上挑选出来。CCD摄像头将煤与矸石图像送
[单片机]
基于ARM核和<font color='red'>CAN总线</font>的煤矸石分选系统
基于Can总线的嵌入式网络控制节点的设计与实现
引言 近年来,基于各种总线标准的网络化 控制系统 已经在工业控制领域内得到广泛应用。网络化 控制系统 采用了完全分散化的控制节点结构,将控制的权力很大部分交给了处于控制现场的智能节点,系统内各种交互信息通过 现场总线 传送。 当前已实用化的总线标准有许多种,如WorldFIP, Profibus, LONWORKS, CAN等。其中,CAN(Controller Area Network)是Bosch公司在现代汽车应用技术中领先推出的一种串行通信网络。CAN主线采用多主站工作方式,根据优先权进行总线访问仲裁,能够检测出通信过程产生的任何错误。 CAN总线 还具有卓越的信号传输性能,当信号传输距离达到l0km时,它仍可提供高
[单片机]
基于<font color='red'>Can总线</font>的嵌入式网络控制节点的设计与实现
CAN总线在商用车上的设计应用点拨
  目前,汽车工业快速发展,相关的汽车技术不断进步,尤其是汽车电子技术正越来越成为其发展的主导,它不仅在汽车安全、节能及环保等方面发挥着重要的作用,而且也正在改变着汽车的功能。   随着电子技术的迅猛发展,汽车上的用电设备不断增加,各种类型的电子控制单元也越来越多。传统的汽车电器控制方式(众多的电器负载、传感器、仪表、控制机构以及用于控制大功率电器的继电器)和越来越复杂的工作状态,使得电线数量、种类和节点数越来越多,复杂程度越来越大,造成整车电气设计和制造越来越复杂,电线越来越粗、布线困难,可靠性下降,线路接错等故障排除时间越来越长。加之电子控制系统如电喷发动机、电子空调、电子导航系统、ABS、电动车窗、智能减震器、ESP 电
[嵌入式]
基于CAN总线的三级智能火灾报警系统设计
本文设计的智能火灾报警系统,采用CAN总线三级通信网络,以火灾为监控对象,利用计算机技术、检测技术和现场总线技术,根据防火的要求和特点而设计、构成和工作的。该系统既能对火灾的发生进行早期探测和自动报警,又能根据火情位置,及时输出联动灭火信号,启动相应的消防设施,进行灭火。实践证明,该系统具有智能性,反应快捷,高度可靠性等优点,能较好地满足智能大厦对火灾防范的要求。 1、引言   火灾的早期预报已成为扑救火灾、减少火灾损失、保护生命财产安全的重要保障,是现代消防不可缺少的安全技术措施。消防自动报警和控制系统已广泛应用于各类建筑和工程中。如何使多个各自独立的系统构成统一的消防监控网络,是我们必须着眼解决的迫切问题。 2、
[安防电子]
基于<font color='red'>CAN总线</font>的三级智能火灾报警系统设计
技术文章—新能源汽车CAN总线如何进行错误处理?
摘要:本文介绍CAN总线关闭对新能源汽车的功能和安全性能产生的影响,并对此提出一些合理的建议。 2019年10月26日第三届中国(佛山)氢能源大会中展示了氢燃料电池城市客车,与目前的纯电动汽车和传统汽车相比,作为一种新的驱动形式出现。但是,新能源汽车整车网络的实现依旧离不开CAN总线通讯。 工程师们通过CAN总线读取车上的车速、转速等信号可以控制整车上众多的ECU单元。但是,你知道CAN总线关闭会对新能源汽车的功能带来哪些影响吗?本文来做详细分析。 一、为何CAN总线依旧能在新能源汽车中扮演重要角色? 从事汽车相关行业的小伙伴们,都知道CAN总线,它是当今汽车各电控单元之间通信的总线标准,现在几乎所有的汽车厂家都选
[汽车电子]
技术文章—新能源汽车<font color='red'>CAN总线</font>如何进行错误处理?
如何用万用表测量CAN总线
系统概览 此说明用于检查总线连接上的 CAN 高速和 CAN 低速信号电平是否正确。 检测提示 ● 电压检测 (示波器):电压检测的前提条件是,蓄电池已连接并且点火开关已接通。 ● 电阻测量:在电阻测量时,在测量前必须把待测部件断电。为此应断开车辆蓄电池的接线。等待约3 分钟,直到系统中的所有电容器放完电。 CAN总线 CAN (控制器区域网络) 总线系统是一种线形总线系统并具有以下特征: ● 信号双向传播。 ● 所有总线用户都接收同一个信息。每个总线用户决定,它是否利用该信息。 ● 通过简单并联即可添加附加的总线用户。 ● 此总线系统构成一个多主控单元系统。每个总线用户可以是主控单元也可以是副控制单元,根据其作为发射器还是接
[测试测量]
小广播
最新网络通信文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved