BACnet对象说明文档格式.docx
《BACnet对象说明文档格式.docx》由会员分享,可在线阅读,更多相关《BACnet对象说明文档格式.docx(65页珍藏版)》请在冰点文库上搜索。
1
Object_Identifier
BACnetObjectIdentifier
对象标志符
75
相同设备中唯一,不同设备中可相同。
2
Object_Name
CharacterString
对象名称
77
最小长度为1字符,要求为可打印字符,设备中唯一
3
Object_Type
BACnetObjectType
对象类型
79
此属性的值为“ANALOG_INPUT”(ANALOG_INPUT为枚举型,取值为0),表示对象是AnalogInput标准对象
4
Present_Value
REAL
当前值
85
表示输入信号大小,单位由Unit决定;
当Out_Of_Service为TRUE时,此属性可写
5
Description
描述
28
可选属性,用于说明。
若支持中文,则可赋值为中文
6
Device_Type
设备类型
31
表示控制单元的类型。
7
Status_Flags
BACnetStatusFlages
状态标志
111
有4个标志,表示如下:
{IN_ALARM,FALUT,OVERRIDDEN,OUT_OF_SERVICE}
IN_ALARM(报警),如果Event_State的值为NORMAL则为FALSE(0),否则为TRUE
(1)
②FAULT(故障),如果Reliability存在且其值不是NO_FAULT_DETECTED则为TRUE
(1),否则为FALSE(0)
③OVERRIDDEN(管制),若某值被与BCAnet设备本身的有关机制所管制则为TRUE
(1)。
此时,“管制”表示当前值和可靠性属性值不再随设备输入变化而变化
④OUT_OF_SERVICE(脱离服务),如果Out_Of_Service属性值为TRUE,则为TRUE
(1),否则为FALSE(0)
8
Event_State
BACnetEventState
事件状态
36
如果对象支持IntrinsicReporting(报告)则此属性表示对象的事件状态。
如果不支持内省报告,则属性应为NORMAL。
如果Reliability属性存在且不等于NKO_FAULT_DETECTED,则该属性为FAULLT,此时认为是“fault”(失效)事件
9
Reliability
BACnetReliability
可靠性
103
该属性有下列值:
{NO_FAULT_DETECTED(未发现故障),
NO_SENSOR(无传感器),OVER_RANGE(超出范围),
UNDER_RANGE(低于范围),OPEN_LOOP(开路),SHORTED_LOOP(短路),MULTI_STATE_FAULT(多状态失效),UNRELIABEL_OTHER(其他不可靠)}
10
Out_Of_Service
BOOLEAN
脱离服务
81
设备工作时为TRUE,否则为FALSE。
当Out_Of_Service为TRUE时,Present_Value不随输入变化而变化。
同时,Reliability属性和Status_FlagsN属性中的FAULT位上的值也不能反映我再输入设备的状态。
因此当Out_Of_Service为TRUE时,可用于测试过程,可随意改相关属性值。
11
Update_Interval
Unsigned
更新间隔
118
表示两次正常更新Present_Value属性值之间的最大时间间隔(以10ms为单位)
12
Unit
BACnetEngineeringUnits
单位
117
表示此对象的测量单位结构体里是Units
13
Min_Pres_Value
最小值
69
表示Present_Value属性的最小可靠值
14
Max_Pres_Value
最大值
65
表示Present_Value属性的最大可靠值
15
Resolution
分辨率
106
表示Present_Value属性中以工程单位可分辨的最小变化量(只读)
16
COV_Increment
COV增量
22
它定义Present_Value属性的最小改变值,这个值将产生COVNotification(COV通告),如果对象支持COVReporting(COV报告),则此属性必备。
17
Time_Delay
时间延迟
113
它表示当Present_Value属性处于由High_Limit(高限值)属性和Low_Limit(低限值)属性确定的范围之外时,到生成一个TO_OFFNORMAL(进入异常)事件之间的最小时间(单位为秒)。
该属性也可表示Present_Value属性进入由High_Limit和Low_Limit确定的范围之内时,到生成一个TO_NORMAL(进入正常)事件的最小时间间隔(单位秒)。
若对象支持内部报告,此属性必备
18
Notification_Class
通告类
它用于引用一个NotificationClass对象实例,该NotificationClass对象实例中Notification_Cass属性值与该属性值相等。
若对象支持内部报告,则此属性必备
19
High_Limit
高限值
45
它定义生成一个事件时Present_Value属性的上限值。
若对象支持内部报告,则此属性必备。
l生成TO_OFFNORMAL(进入异常)事件要同时满足的3个条件:
①Present_Value属性值超过High_Limit属性值,并且时间超过Time_Delay属性确定的时间间隔
②Limit_Enable(限值使能)属性的HighLimitEnable(高阈值使能)标志置位
③Event_Enable(事件使能)属性中的TO_OFFNORMAL(进入异常)标志位置位
l生成TO_NORMAL(进入正常)事件要同时满足的3个条件:
①Present_Value属性下降到低于(High_Limit-Deadband)之后,且时间超过Time_Delay属性确定的时间间隔
②Limit_Enable属性中的HighLimitEnable标志位置位
③Event_Enable属性中的TO_NOKRMAL标志位置位
20
Low_Limit
低限值
59
它定义一个事件的Present_Value属性的下限值。
①Present_Value属性低于Low_Limit属性,且时间超过Time_Delay属性确定的时间间隔②Limit_Enable属性中的LowLimitEnable标志位置位③Event_Enable属性中的TO_OFFNORMAL标志位置位
①Present_Value属性值上升到高于(Low_Limit+Deadband)之后,且时间超过Time_Delay属性确定的时间间隔
②Limit_Enable属性中的LowLimitEnable标志位置位
③Event_Enable属性中的TO_NORMAL标志位置位
21
Deadband
限值宽度
25
它在Hihg_Limit属性和Low_Limit之间定义一个宽度范围值。
当Present_Value属性值在这个范围内且同时满足下列条件时则产生一个TO_NORMAL事件:
①Present_Value属性值低于(High_Limit-Deadband)
②Present_Value属性值高于(Low_Limit+Deadband)
③Present_Value属性值在该属性定义的范围之内且时间超过Time_Delay属性确定的时间间隔
Limit_Enable
BACnetLimitEnable
限值使能
52
它有两个标志位
23
Event_Enable
BACnetEventTransitionBits
事件使能
35
它有三个标志位,分别表示使能或禁止TO_OFFNORMAL和TO_NORMAL事件。
后面一句话不太理解
24
Acked_Transitions
BACnetEventTransitiionBits
状态变迁确认
它有三个标志位,分别表示是否收到对TO_OFFNORMAL,TO_FAULT和TO_NORMAL事件的确认。
这些标志将在相应事件出现的情况下被清除,并在下列任一条件下设置:
①收到相应的确认;
②若Event_Enable中相应的标志位未设置时,事件发生;
③若设置Event_Enable中相应位,且由Notification_Class引用的Notification_Class对象中的Acked_Required的相应标志位没设置。
Notify_Type
BACnetNotifyType
通告类型
72
如果是事件类,则为Events;
如果是报警类,则为Alarms。
例子:
读取AI对象的Present_Value属性。
----------------------------------MSTP---LPDU---------------------------------------
55FF--前导码
02--帧类型
64--目标地址
EE--源地址
0016--帧数据部分长度(22个byte)
2E--帧头CRC校验高位在先
--------------------------------------NPDU--------------------------------------------------
----PCI
01---BACnet协议版本号
04---00000100bit7:
表示传输的是APDU报文
Bit5:
0和Bit3:
0表示DNET,DLEN,HopCount,SNET,SLEN,SARD都不存在。
Bit2:
1表示证实服务或者复杂确认分段报文或要求确认的网络协议管理和控制报文。
Bit1.0:
00表示普通优先级报文
---PDU
--------------------------------------APDU----------------------------------------------------
-----PCI
02---PduType=0,表示是APDU,SEG=0,表示不分段发送,MOR=0表示没有分段后续SA=1需要分段请求复杂确认
01--MaxResp=0001,表示最大报文长度128字节
00--InvokeID=0,该值可变,但必须符合协议要求
0C--表示服务是ReadProperty,因为读属性服务的枚举值为12
-----PDU
0C--对象标示符的上下文标记为0表示应用编码,编码字节长度为4
00-00-00-02–AI对象类型枚举值为0,本例假设对象实例号为2
2D-对象标示符的上下文标记为1,编码长度为1
55--Presend_Value属性枚举值为45
---------------------------------------APDU-------------------------------------------------------
F0B8--数据帧部分CRC校验
FF--可选填充域(不推荐使用)
2AnalogOutput--模拟输出对象
Analog_Output结构体成员定义
参见AI部分
属性值为ANALOGOUTPUT(枚举值为1)
该属性的OVERRIDDEN位为1时,表示该对象所表示的物理输出设备的输出值不再与Present_Value属性值一致,且Reliability属性也不再反映物理输出设备的状态
Priority_Array
BACnetPriorityArray
优先级数组
87
它由16个无符号整型元素组成的“只读”数组,其作用是规定操作实体的操作优先级。
当多个操作实体同时对该对象进行操作时,得按该数组确定的优先级进行操作。
Relinquish_Default
释放默认值
104
它表示在所有的实体放弃对该对象的操作时,Present_Value属性应的默认值。
当所有操作实体放弃对此对象操作时,该对象的Present_Value属性必须有一个确定的值,这个值或为0,或为其他值,但必须确定,且必须是保证控制系统处于安全或预定状态值。
这个值就是Relinquish_Default属性所定义的值。
26
例:
写Present_Value属性值
02---BACnet协议版本号
02--MaxResp=0001,表示最大报文长度128字节
01--InvokeID=0,该值可变,但必须符合协议要求
0F--表示服务是WriteProperty,因为读属性服务的枚举值为15
00-60-00-03–AO对象类型枚举值为1,本例假设对象实例号为3
19-对象标示符的上下文标记为1,编码长度为1
55--Presend_Value属性枚举值为85
3E--构造类型起始
44-unsingedint类型(标示符为简单类型),编码长度为1
23–PresentVlaue4位中第一位
03–PresentVlaue4位中第二位
00–PresentVlaue4位中第三位
00–PresentVlaue4位中第四位
3F--构造类型结束
49-对象标示符上下文标记为1,编码长度1
02--优先级为2
3AnalogValue--模拟值对象
Analo_Value结构体成员的定义
属性值为ANALOGVALUE(枚举值为2)
属性的OVERRIDDEN位为1时,表示该对象的Present_Value值不能通过BACnet服务修改
Event_Time_Stamps[3]
BACnetTimeStamp