教材-BACnet

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3.2.3 楼宇自控网络协议BACnet (2)
3.2.3.1 BACnet 的历史 (2)
3.2.2.2 BACnet 的主要内容 (2)
3.2.2.3 BACnet 与生产商 (8)
3.2.2.4 BACnet 与工程商 (11)
3.2.2.6 BACnet 的前景 (13)
3.2.3 楼宇自控网络协议BACnet
BACnet是Building Automation and Control Networks 的缩写,它是针对楼宇自控领域的标准,制定这个标准的目的是为了使不同生产商提供的控制设备能够互操作,也使业主不再依赖特定的私有技术。

BACnet是暖通空调行业唯一的国际标准。

3.2.3.1 BACnet 的历史
BACnet 的研发工作始于1987 年,专门在美国暖通空调和制冷工程师协会(ASHREA)下面成立了BACnet标准设计委员会(SPC135)并在美国T ennessee省Nashville市召开第一次会议。

- 历经8年半的发展;
- 由12个国家的81位专家提出了741条建议并进行了3次公众发布;
- 1995年6月由美国暖通空调和制冷工程师协会(ASHREA)首次发布,并于当年成为美国国家标准,编号为:ANSI/ASHRAE 135-1995;
- 2001年发布更新的标准ANSI/ASHRAE 135-2001;
- 2003年1月BACnet成为了建筑行业ISO国际标准,标准号:ISO 16484-5;
- BACnet产品适用于 HVAC, 消防, 照明, 安防等领域;
- 可用的产品包括控制器, 网关, 路由器和诊断工具等;
- BACnet在 ASHRAE 的持续资助下得到发展;
- 公众或委员会成员可在任何时间提出对协议的改变建议;
- 所有的改变必须经过公众讨论和认可;
- SSPC 135 (BACnet标准设计委员会 135) 负责与CEN (欧洲), ABOK(俄罗斯)和 IEIEJ(日本)的联系。

3.2.2.2 BACnet 的主要内容
BACnet是开放的标准,目前在国内已有中文版本,任何公司或个人都可以获得。

该标准并不关注实现手段,因此生产商不依赖特定的开发器、芯片或软件,生产商有绝对的自由选择各具特色的实现方式,例如单片机、单板机+嵌入系统、PC机+桌面系统等等。

为了保证有效的互操作,BACnet不仅仅定义了通讯过程,也定义了控制设备内部数据的格式。

例如:通过FTP协议,我们可以在本地看到远程电脑上的文件,但是如果我们不知道这些文件的格式,我们仍然无法打开、编辑,如果我们通过一些默认的扩展名知道了哪些是文本,哪些是JPG图片,就可以使用他们了。

在BACnet中针对各种数据分别定义了标准对象,每种对象包含一些标准属性,这样一台控制设备可以很容易使用另一台控制设备的资源。

从实现的复杂程度而言,BACnet确实是重型协议,但幸运的是,一个特定功能的控制设备不需要实现全部的BACnet。

也就是说,对于特定的应用范围,BACnet是可裁剪的。

因此,BACnet同样也适合一些低成本的应用,例如:网络型温度传感器,用8位单片机就可以实现了。

每台BACnet 设备都要提供一份协议实现一致性声明(PICS,Protocol Implementation Conformance Statement)来说明自己实现了哪些内容。

BACnet 协议栈
网络通讯是一个复杂的过程,人们对复杂问题的处理办法通常是把他们分解为若干简单问题,然后分别处理。

基于同样的思路,便提出了一种通用的网络分层结构,并于1983年成为国际标准(ISO 7498),这就是OSI(开放系统互连)模型。

该模型将网络通讯协议分解为7层,BACnet通讯协议引用了其中的4层。

上图是BACnet通讯协议的分层结构,这样的结构在每台BACnet设备中都是存在的。

其中每一层向上层提供服务,屏蔽本层的处理细节,最终由应用层向BACnet设备中的应用程序提供一组API(应用程序编程接口)。

➢物理层:
物理层是为不同设备间数据流传输提供物理通路。

BACnet 物理层支持多种通讯介质。

其中ISO 8802-3 也是国际标准,就是通常说的以太网,BACnet引用了该标准,通常称为:BACnet Ethernet。

在数据链路层协议PTP中已经进行了脱字符处理,所以EIA-232 可以支持本地连接,也可以支持MODEM+电话线路这种远程连接方式。

BACnet也引用LonTalk协议作为自己的物理层和链路层, LonT alk 协议经Echelon公司修订和补充后,作为参考包括在BACnet协议中,想要将BACnet做成包含LonTalk 协议的人,需要获得Echelon 公司的OEM 许可。

在 BACnet协议中不支持LonT alk的身份认证。

BVLL和UDP/IP是采用成熟的UDP/IP协议加上虚拟链路层作为BACnet的物理层和链路层,适合通过国际互连网通讯,通常称为:BACnet IP。

➢ 数据链路层:
数据链路层的主要工作是维护链路连接,实现无差错传输。

BACnet 的数据链路层引用了ISO 8802-2 1类标准(逻辑连接控制),同时还定义了MS/TP 和PTP 两种新的数据链路层协议。

数据链路层将网络层下发的数据打包,计算出校验码,添上合适的链路层数据头,有序地下发到物理层。

同时,解析物理层接收到的数据,对数据进行校验,然后上传网络层。

BACnet 的数据链路层协议种类较多,相互差别很大,在这里着重介绍数据链路层协议MS/TP 。

MS/TP 是建立在主从通讯基础上的无主通讯方式,因为:如果只观察MS/TP 的一个通讯片段,它确实是主从通讯,这也是MS/TP 中‘MS ’的含义:MASTER/SLAVE 。

如果观察全部通讯过程,我们会发现它是无主通讯,其中的关键就是另外两个字母‘TP ’的含义:TOKEN PASSING (令牌传递)。

通俗地说,就是大家轮流做主,令牌传到谁的手里,谁就做主,没有令牌的做从,令牌在这里的含义就是一个标志。

下图是MS/TP 的通讯过程:
上图是一个典型的通讯过程,在实际应用中,可能会跳过一些步骤,例如:令牌传到控制器3,它没有命令要发,就直接把令牌传给下一个控制器。

或者:控制器3命令控制器4,是一个无需应答的命令,控制器4没有应答,控制器3接着命令控制器1。

得到令牌的控制器会发什么样的命令,取决于网络层和应用层的服务需求。

如果一切正常,令牌会一圈又一圈轮流传递。

如果意外发生了,例如:得到令牌的控制器发生故障了,这时网上一片寂静,但是每台控制器都默默地计算着寂静时间,一旦寂静时间超过了BACnet 的规定,会有一台低地址控制器抢先产生令牌,然后继续令牌传递的过程。

这就是BACnet MS/TP 对令牌丢失的解决办法。

另外,控制器在传出令牌后会监视其他控制器对令牌的使用情况,如果得到令牌的控制器一直没响应,会被自动从令牌环中剔除。

在令牌传递过程中,会有控制器在得到令牌时对本网段的空余位置发出查询命令,如果得到正

控制器1命令控制器2; ✧
控制器2应答; ✧
控制器1命令控制器3; ✧
控制器3应答; ✧
控制器1命令控制器4; ✧
控制器4应答; ✧
控制器1把令牌传给控制器2 ✧
控制器2命令控制器1; ✧
控制器1应答; ✧
控制器2命令控制器3; ✧
控制器3应答; ✧
控制器2命令控制器4; ✧
控制器4应答;. ✧
控制器2把令牌传给控制器3 ..
确应答,说明有新的控制器申请加入令牌环,就把令牌传递给新的控制器,使其自动加入到令牌环中。

因此,新的控制器加入网络, MS/TP会自动识别,无需重新配置。

由哪台控制器何时发出查询命令,是由BACnet的算法决定的,这个算法的目的是使查询命令不占用过多的网络时间,并且新控制器可以在一个可接受的时间内被发现。

注意:在以上针对MS/TP的分析中,只考虑了数据链路层的处理过程,忽略了网络层和应用层,在实际通讯过程中,每一次命令和应答都是通过协议栈处理过的。

例如:主控制器1命令主控制器2,实际是主控制器1的应用层将命令数据下发到主控制器1的网络层,加上网络层控制信息后再下发到链路层,等到主控制器1的链路层得到令牌后,再把命令通过物理层发送出去。

➢网络层:
网络层的作用是屏蔽不同链路层的差异,屏蔽网络拓扑结构,向应用层提供一致的服务。

在BACnet网络中,通过网络号和物理地址可以定位一台唯一的BACnet设备。

网络层要根据应用层提供的数据(包括网络号和物理地址)寻找合适的路由,将数据打包,下发到数据链路层,同时将数据链路层上传的数据解包,解析出源网络号、源物理地址和数据,然后上传应用层。

网络层还有一个重要功能就是路由,如果一台BACnet设备能够同时连接两个网络,并提供路由功能,它必须在网络层支持多种路由服务,例如:Who Is Router To Network(谁是到网络XX的路由)、Initialize Routing T able(初始化路由表)等,这些服务必须在网络层被处理,不能上传到应用层。

一台专用的BACnet路由器可以没有应用层。

➢应用层:
应用层的主要任务是信息的编码和解码、信息的处理及信息分段,同时提供一组API,使应用程序可以访问其他设备。

BACnet在应用层引用了ISO 8824 (抽象语法记法)和 ISO 8825(基本编码规则)进行数据包的编码和解码。

设备所有执行的服务都在应用层处理。

如果应用程序需要访问其他设备,可以调用应用层的API (Application Program Interface),这时应用层根据调用类型和参数发起响应的服务,如果发起的服务需要响应,有两种处理方式,一种是直到得到响应或超时调用才返回,另一种是调用立即返回,得到响应或超时后以回调方式通知应用程序。

BACnet服务
BACnet服务主要分为以下类型:
➢对象访问服务
例子:ReadProperty、WriteProperty、ReadPropertyMultiple、WritePropertyMultiple、CreateObject、DeleteObject.
➢文件访问服务
例子:AtomicReadFile、AtomicWriteFile.
➢报警和事件服务
例子:ConfirmedCOVNotification、UnconfirmedCOVNotification、AcknowledgeAlarm、SubscribeCOV.
➢远程设备管理服务
例子:Who Is、I am、Who Has、I Have、TimeSynchronization.
➢虚拟终端服务
例子:VT Open、VT Close、VT Data.
BACnet服务有很多,一种特定功能的设备无需支持全部服务。

例如一台网络型风阀执行器只需要支持:ReadProperty、WriteProperty,而一台可编程控制器至少要支持:Who Is、TimeSynchronization、ReadProperty、WriteProperty、CreateObject、DeleteObject、AtomicReadFile、AtomicWriteFile。

以下为几种常用的BACnet服务的含义。

➢ReadProperty
含义是读对象属性。

例如设备A需要知道设备B的温度数据,设备A就会发出ReadProperty 命令,在命令中指定设备B的物理地址和网络号、温度点对象的ID、温度点对象的属性(如果想读温度值,属性为:PresentValue、如果想读温度单位,属性为:Unit),如果设备B支持ReadProperty 服务,并且温度点对象是可读的,它的回答就会包含正确数据。

➢WriteProperty
含义是写对象属性。

例如设备A需要修改设备B的温度设定点,设备A就会发出WriteProperty 命令,在命令中指定设备B的物理地址和网络号、温度设定点对象的ID、温度设定点对象的属性、要设定的新值,如果设备B支持WriteProperty服务,同时这个对象可以被写,它的温度设定点就会被改变,同时返回一个成功通知。

➢ReadPropertyMultiple
含义是读多个对象的多个属性。

如果设备A需要知道设备B的多个数据,可以发多个ReadProperty命令,但是这样会降低网络效率,因为每条命令由应用层下传到物理层后都会增加许多协议控制信息,如果只发一条ReadPropertyMultiple指令,会提高效率。

在命令中要指定设备B 的物理地址和网络号、相关对象的ID和相关属性,如果设备B支持ReadPropertyMultiple服务,它的回答就会包含所有数据,如果某个数据不可读,它会被一个错误码代替。

➢SubscribeCOV
含义是订阅COV(Change of Value)。

例如设备A需要连续了解设备B的某个数据,设备A
可以每隔一段时间发ReadProperty命令,这就是常见的查询。

这样做的缺点是效率太低,假如查询间隔时间较短,会增加网络负荷,如查询间隔时间较长,会增加数据传输延时。

在BACnet网络中,使用COV进行数据交换是常见的方法,这个方法就是设备A先在设备B做一个登记,以后设备B 的相关数据发生改变时会主动通知设备A。

首先,设备A需要发出SubscribeCOV命令,在命令中指定设备B的物理地址和网络号、关心的对象的ID等,如果设备B支持SubscribeCOV服务,并且关心的对象是可订阅的,设备B会返回一个订阅成功通知。

➢UnconfirmedCOVNotification
含义是无需确认的COV(Change of Value)通知。

如果设备A在设备B成功的订阅了某个对象,当这个对象的相关属性发生改变时,设备B会向设备A发出UnconfirmedCOVNotification 通知,包含这个对象的相关属性的列表。

设备A收到该命令后不需要回答。

与之相对,还有一个ConfirmedCOVNotification 通知,这是需要设备A确认的通知,设备A会收到哪种类型的通知取决于订阅时指定的参数。

➢Who Is
含义是“谁在?”,这是一个远程设备管理服务。

典型情况是由工作站以广播形式发出Who Is 命令,所有在线的、支持该服务的设备将陆续提交一个“I Am”报告,说明自己的地址、生产商编号等重要参数。

在Who Is 命令中也可以指定地址范围,这样只有范围内的设备提交“I Am”报告。

BACnet对象
在BACnet协议中,把楼宇自控领域应用的各种具体功能单元抽象为对象。

代表性对象有:Analog Input、Analog Output、Analog Value、Binary Input、Binary Output、Binary Value、Calendar、Command、Device、Event Enrollment、File、Group、Life Safety Point、Life Safety Zone、Loop、Multi-state Input、Multi-state Output、Multi-state Value、Notification Class、Program、Schedule、Trend Log。

对于一种特定功能的设备,无需支持所有对象。

例如网络型温度传感器只需要支持:Device 、Analog Input,而一台可编程控制器至少要支持:Device 、Analog Input、Analog Output、Analog Value、Binary Input、Binary Output、Binary Value、Calendar、Schedule、File、Program。

以下就两种常用的BACnet对象简要解释。

➢Device
所有设备都要支持Device对象。

该对象用于描述这台设备的特性。

该对象包含39种标准属性,以下简单介绍其中的几种属性:
对象ID号:4个字节的编码。

该编码在全部网络上必须是唯一值,不能重复,通常的做法是采用设备物理地址和网络号的某种组合。

生产商名称:字符串。

例如:ABC公司。

生产商编号:正整数。

所有BACnet设备生产商都可以从BACnet组织得到这个编号。

模块名称:字符串。

例如:A100型控制器。

执行的服务:位序列。

例如:11110100……,其中每一位代表一种服务,该位为‘1’表示该设备支持这种服务,为‘0’表示不支持。

支持的对象:位序列。

例如:11011011……,其中每一位代表一种对象,该位为‘1’表示该设备支持这种对象,为‘0’表示不支持。

对象列表:队列。

为该设备内所有对象的ID的列表。

➢Analog Input
含义是模拟量输入。

该对象主要用途是描述一个模拟传感器输入值,例如:室内温度、风道湿度。

该对象包含27种标准属性,以下简单介绍其中的几种属性:
对象ID号: 4个字节的编码。

该属性用于区分同一台设备内的各个对象。

对象名称:字符串。

例如:1#教室室内温度。

当前数值:浮点数。

例如:32.7。

单位:枚举值。

例如:5代表伏特、62代表摄氏度。

3.2.2.3 BACnet 与生产商
BACnet自公布以来,受到了楼宇自控生产商的广泛重视,世界著名的生产商都已经加入了BMA (BACnet Manufacturers Association),其产品须经BTL (BACnet Testing Laboratories) 测试,BTL 负责将符合标准的产品和厂家在全球范围内发布列表并对其产品给予BACnet认证。

生产商的利益
BACnet是公开的标准,而且对实现该标准的技术手段无任何要求。

生产商可以自由选择硬件、软件实现方案,例如采用最先进的芯片或最熟悉的芯片,采用最高效的或最廉价开发工具等等,生产商对BACnet组织无任何依赖。

由于BACnet设备具有很强的互操作性,生产商可以把集中精力发展自己领先的技术。

例如生产商A拥有先进的VAV控制技术,A就可以专门生产VAV控制器,操作站软件和路由器等配套产品可以选用其他生产商的产品,无需由一个生产商提供全套楼宇自控产品。

BACnet不是一种全新的技术,它是建立在其他标准基础上的。

生产商如果已经有自己的成型产品,多数情况下不需要重新设计硬件,只要更新嵌入软件就可以成为BACnet产品。

例如有RS485接口的控制器可以支持BACnet MS/TP,有以太网接口的设备可以支持BACnet Ethernet等等BACnet产品实现方案参考
对于一个特定功能的BACnet设备,它所支持的BACnet协议可以是BACnet的一个子集。

BACnet标准根据主要功能把所有设备分为六大类:
操作员工作站:运行于电脑上的监控软件
楼宇控制器:最高级的控制器,最全面地实现BACnet,通常支持以太网的数据链路层。

高级控制器:次于楼宇控制器,支持大部分服务和对象。

特定功能控制器:次于高级控制器,根据功能的需求,支持某一小部分服务和对象。

网络型执行器:最低级的设备,通常只支持读写服务和一两种对象。

网络型传感器:最低级的设备,通常只支持读服务和一两种对象。

路由器:提供不同BACnet协议之间的路由服务。

以上的分类不严格,并没有规定每种设备必须支持哪些服务和对象。

以下针对高级控制器、特定功能控制器、网络型传感器做简单的实现方案,由于实现的方法有很大的自由度,此方案仅作为参考。

➢产品类型:网络型温度传感器
支持的链路层协议:MS/TP,通讯速率 = 9600bps
应用层数据每祯最大长度:50字节
执行的服务:ReadProperty
支持的对象:Device、Analog Input
采用的CPU:51系列、8位、处理能力 = 1Mips
ROM需求:8K
RAM需求:1K
开发编程语言:汇编
➢产品:网络型温度传感器
支持的链路层协议:MS/TP,通讯速率 = 76800bps
应用层数据每祯最大长度: 50字节
执行的服务:ReadProperty
支持的对象:Device、Analog Input
采用的CPU:ATMEL AVR系列、8位、处理能力 = 13Mips
ROM需求:8K
RAM需求:1K
开发编程语言:汇编
➢产品:风机盘管控制器(特定功能控制器)
支持的链路层协议:MS/TP,通讯速率 = 76800bps
应用层数据每祯最大长度: 480字节
执行的服务:Who Is、ReadProperty、ReadPropertyMultiple、WriteProperty、
SubscribeCOV
支持的对象:Device、Analog Input、Analog Output、Analog Value、Binary Input、
Binary Output、Binary Value。

输入输出:2AI、1AO、3BO、两行数显LCD、4按钮。

采用的CPU:ATMEL AVR系列、8位、处理能力 = 13Mips
ROM需求:64K
RAM需求:4K
开发编程语言: C
➢产品:可编程控制器(高级控制器)
支持的链路层协议:以太网,通讯速率 = 10Mbps
应用层数据每祯最大长度: 1476字节
执行的服务:Who Is、ReadProperty、WriteProperty、ReadPropertyMultiple、
WritePropertyMultiple、CreateObject、DeleteObject, AtomicReadFile、
AtomicWriteFile,ConfirmedCOVNotification、
UnconfirmedCOVNotification、AcknowledgeAlarm、SubscribeCOV,
TimeSynchronization。

支持的对象:Device、Analog Input、Analog Output、Analog Value、Binary Input、
Binary Output、Binary Value、Calendar、Loop、File,Program、
Schedule、Trend Log。

输入输出:8AI/BI、8AO/BO。

采用的CPU:ARM系列、32位、处理能力 = 40Mips
采用的嵌入系统:UCLINUX
ROM需求:512K
RAM需求:128K
开发编程语言: C
PICS 和 BIBBs
BACnet设备必须通过“BACnet一致性测试”并提供“协议实现一致性声明”,即PICS, PICS 是Protocol Implementation Conformance Statement 的缩写。

PICS中主要包括以下内容:
➢生产商和设备的基本信息。

➢BIBBs
➢如果是标准类型的设备,指明所属类型。

➢支持的非标准服务。

➢实现的BACnet对象类型。

➢每一种对象实现的属性、可写的属性、写入数据范围、该对象是否能动态建立和删除。

➢支持的物理层和链路层协议。

其中BIBBs是BACnet INTEROPERABILITY BUILDING BLOCKS的缩写,即BACnet互操作基本块,用于描述设备支持的BACnet服务。

BIBB分为两类,分别用A和B标识,A表示服务发起者,B表示服务执行者,例如:设备甲需要通过ReadProperty服务读设备乙的数据,甲就是该服务发起者,标识为:BIBB-DataSharing-ReadProperty-A,缩写为DS-RP-A,乙就是服务执行者,标识为:BIBB-DataSharing-ReadProperty-B,缩写为DS-RP-B。

3.2.2.4 BACnet 与工程商
BACnet已经在全球的八十多个国家和地区得到应用,得到了众多工程商的认可。

工程商的利益
由于遵循BACnet标准的产品可以互操作,工程商的选择范围更广了。

例如:根据项目的具体情况,选择A生产商的监控软件、B生产商的VAV控制器、C生产商的路由器等等。

这样工程商可以充分发挥各种产品的优势,更灵活地满足业主的特殊需求。

对于采用私有协议的产品,这样做是不可想象的。

工程商需要一批专业的技术人员向业主提供调试服务。

如果采用私有协议的产品,这些技术人员将依赖于这些产品的生产商,因为不同生产商采用私有协议的产品提供的调试方法差别极大,已经熟悉一种产品的技术人员必须经过培训、实习才能调试另一个生产商的产品。

在BACnet标准中,已经把各种功能抽象为标准的对象,对象的配置(修改属性)也是标准化的,因此从技术人员的角度看不同生产商产品的调试方法非常相似(虽然外表相差很大)。

根据需求构建BACnet网络
BACnet有多种物理层和链路层协议,各有特点。

以下为几种常见协议的特点:
BACnet PTP:成本低、速度慢(一般不大于56K bps)、施工简单,适合本地或通过电话线远程点对点互连。

BACnet MS/TP:成本低、速度慢(一般不大于76.8K bps)、施工简单,适合本地多点互连。

BACnet Ethernet:成本高、速度快(一般不小于10M bps)、施工麻烦,适合本地多点互连。

BACnet IP:成本高、速度快(一般不小于10Mbps)、施工麻烦,适合远程多点互连。

在实际工程中,可以根据不同设备的特点采用不同的物理层和链路层协议,以达到成本和性能的最佳配合。

下面以一个简单工程为例,说明不同协议的应用:
有甲乙两栋建筑,距离远,需要互操作,各自有一台工作站、1台冷水机组控制器、1台锅炉控制器、22台空调机组控制器、4台门禁控制器、16台安防控制器、6台照明控制器。

针对这个项目做一个简单规划:
首先两栋建筑距离远而且通讯量大,采用BACnet IP协议,其次工作站、冷水机组控制器、锅炉控制器、门禁控制器通讯量较大,采用BACnet Ethernet协议在本地互连,其他控制器通讯量小,可以采用BACnet MS/TP协议本地互连,各网段间使用BACnet路由连接。

网络结构见下图。

有的生产商把路由器和控制器结合在一起,推出有路由功能的控制器,通常具有两个以上通讯端口。

采用这样的控制器可以简化网络结构。

BACnet产品的功能和互操作性评估
BACnet产品的互操作性可以根据PICS判断,而BACnet产品的功能根据PICS仅能部分地判断,因为生产商可能使用非标准的技术手段实现了很高级的功能,而对BACnet标准的支持却很有限,但这不是主流方向,在下面的分析中,暂时忽略这种情况。

PICS内容较多,下面就主要的几个方面进行分析。

➢从产品支持的物理层、链路层协议和波特率考虑:
很显然,常见的几种BACnet物理层和链路层的性能和成本从高到低依次为:BACnet IP、BACnet Ethernet、BACnet MS/TP与BACnet PTP,同一种协议的波特率也可能不同,当然波特率越高性能越好。

原则上,两个设备要实现互连,它们必须支持同一种协议,采用相同的波特率。

有些产品可以支持多种波特率,工程商可以自己定义,使工程应用更方便,例如Delta Controls公司的DAC-633,支持BACnet MS/TP,波特率可以为:76800、38400、19200、9600bps。

如果多台设备支持BACnet IP、BACnet Ethernet协议,但波特率不同,可以通过自适应交换机实现互连。

➢从产品支持的对象种类考虑:
设备需要检测和控制模拟参数,例如:温度、压力、调节阀开度等,必须支持模拟量对象Analog Input、Analog Output。

设备需要检测和控制开关量参数,例如:风机启停、门磁状态等,必须支持开关量对象Binary Input、Binary Output。

设备需要监视或控制多状态参数,例如:三速风机、多段电加热等,必须支持多状态对象Multi-state Input、Multi-state Output。

设备需要具有PID调节功能,必须支持控制回路对象Loop。

设备需要是可编程的,必须支持程序对象Program。

设备需要根据日期和时间进行控制,必须支持日历和进度表对象Calendar、Schedule。

➢从设备支持的服务考虑:
如果允许其他设备访问自己的对象,该设备至少要能执行服务ReadProperty、WriteProperty。

如果允许其他设备同时访问自己的多个对象,该设备至少要能执行服务ReadPropertyMultiple、WritePropertyMultiple。

如果允许其他设备以COV方式高效访问自己的对象,该设备至少要能执行服务SubscribeCOV,同时能够发起服务ConfirmedCOVNotification或UnconfirmedCOVNotification。

如果允许动态建立和删除对象,设备至少要能执行服务CreateObject、DeleteObject。

如果允许被其他设备搜索、发现,该设备必须能执行服务Who Is。

3.2.2.6 BACnet 的前景
BACnet标准虽然最初是由美国暖通空调和制冷工程师协会资助制定的,但在发展过程中不断丰富内容,不断添加新的对象和服务,现在已经在照明、门禁、安防、火灾报警等领域被广泛应用。

该标准仍然在不断发展,下一阶段将扩充对音频、视频数字传输的定义,以满足闭路监视、视频点。

相关文档
最新文档