在楼宇自控网络中,各种设备之间要进行数据交换,为了能够实现设备的互操作,所交换的数据必须使用一种所有设备都能够理解的“共同语言”。BACnet的最成功之处就在于采用了面向对象的技术,定义了一组具有属性的对象(Object)来表示任意的楼宇自控设备的功能,从而提供了一种标准的表示楼宇自控设备的方式。在BACnet 中,所谓对象就是在网络设备之间传输的一组数据结构,对象的属性就是数据结构中的信息,设备可以从数据结构中读取信息,可以向数据结构写入信息,这些就是对对象属性的操作。BACnet 网络中的设备之间的通信,实际上就是设备的应用程序将相应的对象数据结构装入设备的应用层协议数据单元(APDU)中,按照协议规范传输给相应的设备。对象数据结构中携带的信息就是对象的属性值,接收设备中的应用程序对这些属性进行操作,从而完成信息通信的目的。
BACnet 目前定义了18 个对象,表4-13 给出了这些对象的名称和应用举例。通过对楼宇自控设备的功能进行分解,形成众多具有特定楼宇自控功能的“功能单元”。当定义了具有复用功能的标准 BACnet 对象后,就可以通过标准BACnet 对象的不同组合对实际楼宇自控设备进行表示。
表4-13 BACnet 常用对象
续表
每个楼宇自控中的设备都能抽象为一组对象实例,并且每个设备都必须有且仅有一个Device 对象实例。例如:一个智能温度传感器只需要1 个Device对象和1 个Analog Input 对象表示。而一个楼宇控制器则需要1 个Device 对象、多个Analog Input 对象、多个Binary Input 对象、多个Binary Output 对象、多个Schedule 对象等组合表示。当然,某个产品如果具有某个对象,其本身必须具有该对象表示的功能,才有意义。例如,一个设备不具备时间安排的功能,那么你就不能写该BACnet 设备的时间安排对象,如图4-24 所示,一个温度传感器可抽象为一个模拟输入对象。
图4-24 模拟输入量对象模型
属性是对对象内容的详细描述,例如:一个Analo Output 对象有Operating Limit、Status 等属性。每个对象至少要包含Object_Identifier、Object_Name 和Object_Type 三个属性。每个属性都由两部分组成—— 属性的名称或标识符及属性值。属性可以是只读或读/写的。其他BACnet 设备可以读取设备中的属性或者重新赋值给该属性。BACnet 标准规定某些属性必须是必选的,而一些是可选的。
每个对象都有一组属性,属性的值描述对象的特征和功能。在BACnet 中,对于每个对象来说,属性分为必需的和可选的两种。用三个字母表示属性的类型,其意义分别是:O 表示此属性是可选的,R 表示此属性是必需的且是用BACnet 服务可读的,W 表示此属性是必需的且是用BACnet 服务可读和可写的,表4-14 为模拟量输入对象的属性。
表4-14 模拟输入对象的属性(www.xing528.com)
注:① 当脱离服务为TRUE 时,该属性必须是可写的。
② 如果对象支持COV 报告,则该属性是必需的。
③ 如果对象支持内部报告,则该属性是必需的。
BACnet 要求每个BACnet 设备都要有一个“设备对象”,“设备对象”包含此设备和其功能的信息。当一个BACnet 设备要与另一个BACnet 设备进行通信时,它必须要获得该设备的“设备对象”中所包含的某些信息,表4-15 给出了“设备对象”的属性描述。
表4-15 设备对象属性
续表
注:① 虚拟终端类型支持属性与活动虚拟终端会话必须同时存在。如果 PICS中有对VT 服务的支持,那么这两个属性是必需的。
② 如果支持任何形式的分段,那么该属性是必需的。
③ 如果PICS 指出该设备是时间主设备(Time Master),那么该属性是必需的。如果存在,则该属性必须是可写的。
④ 如果设备是MS/TP 主节点,那么这些属性是必需的。
从表4-15 中可以看到,虽然“设备对象”的属性很多,但是大部分是在出厂时就写定了的,且是只读属性。另一点要注意的是,“设备对象”的“对象标识符”属性中的设备实例标号必须是在整个BACnet 互联网中唯一的,这样才能在安装系统时标识设备。
表4-15 中的前三项属性,即“对象标识符”“对象名称”和“对象类型”,它们是BACnet 设备中的每个对象必须具有的属性。“对象标识符”是一个32位的编码,用来标识对象的类型和其实例标号,这两者一起可以唯一地标识对象;“对象名称”是一个字符串,BACnet 设备可以通过广播某个“对象名称”而建立与包含有此对象的设备的联系,这将使整个系统的设置大为简化;“设备对象”的属性向BACnet 网络表述了设备的全部信息。例如,“对象列表”属性提供了设备中包含的每个对象的列表。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。