首页 (精心整理)BACnet通讯分析

 (精心整理)BACnet通讯分析

开通vip
举报

爱问共享资料(精心整理)BACnet通讯分析文档免费下载,数万用户每天上传大量最新资料,数量累计超一个亿 ,BACnet通讯1、概述.系统实现基于BACnet/IP(又称B/IP)网络进行通讯。BACnet虚拟链路层(BVLL)提供了BACnet网络层和某指定的通讯子系统的接口,本文指定了BACnet虚拟链路控制(BVLC)要求支持的定向和广播信息。本实现关于BACnet协议定义主要可分为三层:B/IP网络虚拟层,BACnet网络层和BACnet应用层。B/IP提供了TCP/IP一样的通讯结构,采用UDP的通讯方式。本文接下来将对此三层结构进行详细的讲解。其文本协议的大致格式如下:BACnet/IPBACnet网络层BACnet应用...

(精心整理)BACnet通讯分析

BACnet通讯1、概述.系统实现基于BACnet/IP(又称B/IP)网络进行通讯。BACnet虚拟链路层(BVLL)提供了BACnet网络层和某指定的通讯子系统的接口,本文指定了BACnet虚拟链路控制(BVLC)要求支持的定向和广播信息。本实现关于BACnet 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 定义主要可分为三层:B/IP网络虚拟层,BACnet网络层和BACnet应用层。B/IP提供了TCP/IP一样的通讯结构,采用UDP的通讯方式。本文接下来将对此三层结构进行详细的讲解。其文本协议的大致格式如下:BACnet/IPBACnet网络层BACnet应用层BVLCTypeBVLCFunctionLengthNPDUAPDUNPDU:BACnet网络层数据结构,下文进行详细的讲解APDU:BACnet应用层数据结构,下文进行详细的讲解2、BACnet/IP.BVLCType:0x81,代表BACnet/IP网络BVLCFunction:指定报文的类型,何种作用;本应用使用的报文类型分为两种:0A:点对点通讯0B:广播通信Length:指定报文的长度,包括BVLCType、BVLCFunction以及本身在内NPDU:根据不同情况,报文长短不同,见下文的解析。APDU:根据NPDU不同以及不同的请求,报文不同,见下文的解析。3、BACnetNPDU结构.版本信息1ByteVersion控制字1ByteControl目标网络号2BytesDNET目标网络长度1ByteDLEN目标地址可变长度DADR原网络号2BytesSNET原网络长度1ByteSLEN原地址可变SNET路由数目1ByteHopCount消息类型1ByteMessageType卖方ID2BytesVendorID应用层信息可变APDU版本信息:默认0x01控制字:BIT7:1表示MessageType存在,为0时MessageType不存在BIT6:保留,为0BIT5:1表示DNETDLENHopCount存在,当DLEN为0时表明广播网络DADR不存在;0表示DNETDLENDADRHopCount不存在BIT4:保留,为0BIT3:1表示SNETSLEN存在,当SLEN为0时表明无效SADR不存在;0表示SNETSLENSADRHopCount不存在BIT2:1表示为一个需确认的请求数据单元,一复杂ACK数据单元或一网络层信息非reply的;0表示除去上述情形的数据单元BIT1、0:网络优先级11=LifeSafetymessage10=CriticalEquipmentmessage01=Urgentmessage00=Normalmessage目标网络号:FFFF的时候表示广播目标长度:表示DADR的长度目标地址:目标网络MAC地址原网络号:同目标网络号原网络长度:表示SADR的长度原地址:原网络的MAC地址路由数目:数据需要经过的路由个数,当不存在DNET的时候,需设置为FF消息类型:X'00':Who-Is-Router-To-NetworkX'01':I-Am-Router-To-NetworkX'02':I-Could-Be-Router-To-NetworkX'03':Reject-Message-To-NetworkX'04':Router-Busy-To-NetworkX'05':Router-Available-To-NetworkX'06':Initialize-Routing-TableX'07':Initialize-Routing-Table-AckX'08':Establish-Connection-To-NetworkX'09':Disconnect-Connection-To-NetworkX'0A'toX'7F':ReservedforusebyASHRAEX'80'toX'FF':Availableforvendorproprietarymessages卖方ID:当控制字的BIT7为1并且消息类型为X'80'toX'FF':的时候,才会存在本次开发没有用到,不再解释本次应用中控制字只用到0x20和0x04两种,前者为广播查询设备,后者微点对对取设备数据或属性。4、BACnetAPDU结构:(应用层协议数据单元)BACnet网络层数据主要分为一下几种:BACnetPDU::=CHOICE{confirmed-request-PDU[0]BACnet-Confirmed-Request-PDU,unconfirmed-request-PDU[1]BACnet-Unconfirmed-Request-PDU,simpleACK-PDU[2]BACnet-SimpleACK-PDU,complexACK-PDU[3]BACnet-ComplexACK-PDU,segmentAck-PDU[4]BACnet-SegmentACK-PDU,error-PDU[5]BACnet-Error-PDU,reject-PDU[6]BACnet-Reject-PDU,abort-PDU[7]BACnet-Abort-PDU}对于本次应用,主要用到了BACnet-Confirmed-Request-PDU(需确认的请求协议数据单元)BACnet-Unconfirmed-Request-PDU(无需确认的请求协议数据单元)BACnet-ComplexACK-PDU(复杂的ACK命令)BACnet-Error-PDU(报错的协议数据单元)对于上述几种数据的分类主要根据pdutype(下文进行讲解)进行判定。4.1.BACnet-Confirmed-Request-PDU的结构:BACnet-Confirmed-Request-PDU::=SEQUENCE{pdu-type[0]Unsigned(0..15),--0forthisPDUtypesegmented-message[1]BOOLEAN,more-follows[2]BOOLEAN,segmented-response-accepted[3]BOOLEAN,reserved[4]Unsigned(0..3),--mustbesettozeromax-segments-accepted[5]Unsigned(0..7),--asper20.1.2.4max-APDU-length-accepted[6]Unsigned(0..15),--asper20.1.2.5invokeID[7]Unsigned(0..255),sequence-number[8]Unsigned(0..255)OPTIONAL,--onlyifsegmentedmsgproposed-window-size[9]Unsigned(1..127)OPTIONAL,--onlyifsegmentedmsgservice-choice[10]BACnetConfirmedServiceChoice,service-request[11]BACnet-Confirmed-Service-RequestOPTIONAL}BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0PDUTYPESEGMORSA00MaxSegsMaxRespInvokeIDSequenceNumber(onlypresentbySEG==1)ProposedWindowSize(onlypresentbySEG==1)ServiceChioceServiceRequest……PDUType0(BACnet-Confirmed-Service-Request-PDU)SEG0(UnsegmentedRequest)1(SegmentedRequest)MOR0(NoMoreSegmentsFollow)1(MoreSegmentsFollow)SA0(SegmentedResponsenotaccepted)1(SegmentedResponseaccepted)MaxSegs(0..7)

(精心整理)BACnet通讯分析1

(Numberofresponsesegmentsacceptedper20.1.2.4)MaxResp(0..15)(SizeofMaximumAPDUacceptedper20.1.2.5)InvokeID(0..255)SequenceNumber(0..255)OnlypresentifSEG=1ProposedWindowSize(1..127)OnlypresentifSEG=1ServiceChoiceBACnetConfirmedServiceChoiceServiceRequestVariableEncodingSEG:指出当前的数据单元是否为完整的还是为一部分分段信息MOR:指出是否还有更多的分段信息SA:为1时指出将收到一个复杂的回应(complexack)MaxSegs:指出设备将要接收到多少分段信息B'000'Unspecifiednumberofsegmentsaccepted.B'001'2segmentsaccepted.B'010'4segmentsaccepted.B'011'8segmentsaccepted.B'100'16segmentsaccepted.B'101'32segmentsaccepted.B'110'64segmentsaccepted.B'111'Greaterthan64segmentsaccepted.MaxResp:指出将收到的(APDU)最大长度B'0000'UptoMinimumMessageSize(50octets)B'0001'Upto128octetsB'0010'Upto206octets(fitsinaLonTalkframe)B'0011'Upto480octets(fitsinanARCNETframe)B'0100'Upto1024octetsB'0101'Upto1476octets(fitsinanISO8802-3frame)InvokeID:调用者IDServiceChioce:此处表明次报文的作用,详见BACnetConfirmedServiceChoiceServiceRequest:根据BACnetConfirmedServiceChoice不同而结构不同,详见BACnet-Confirmed-Service-RequestBACnetConfirmedServiceChoice::=枚举类型{--AlarmandEventServicesacknowledgeAlarm(0),confirmedCOVNotification(1),confirmedEventNotification(2),getAlarmSummary(3),getEnrollmentSummary(4),getEventInformation(29),subscribeCOV(5),subscribeCOVProperty(28),lifeSafetyOperation(27),--FileAccessServicesatomicReadFile(6),atomicWriteFile(7),--ObjectAccessServicesaddListElement(8),removeListElement(9),createObject(10),deleteObject(11),readProperty(12),readPropertyConditional(13),readPropertyMultiple(14),readRange(26),writeProperty(15),writePropertyMultiple(16),。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。}上述标记为红色的表示本次应用中所用到的,所以只对这些进行讲解。可以根据BACnetConfirmedServiceChoice找到相对应的Request或者Ack的数据的结构BACnet-Confirmed-Service-Request::=CHOICE//对应上面的Choice{--AlarmandEventServicesacknowledgeAlarm[0]AcknowledgeAlarm-Request,confirmedCOVNotification[1]ConfirmedCOVNotification-Request,confirmedEventNotification[2]ConfirmedEventNotification-Request,--getAlarmSummaryconveysnoparametersgetEnrollmentSummary[4]GetEnrollmentSummary-Request,getEventInformation[29]GetEventInformation-Request,subscribeCOV[5]SubscribeCOV-Request,subscribeCOVProperty[28]SubscribeCOVProperty-Request,lifeSafetyOperation[27]LifeSafetyOperation-Request,--FileAccessServicesatomicReadFile[6]AtomicReadFile-Request,atomicWriteFile[7]AtomicWriteFile-Request,--ObjectAccessServicesaddListElement[8]AddListElement-Request,removeListElement[9]RemoveListElement-Request,createObject[10]CreateObject-Request,deleteObject[11]DeleteObject-Request,readProperty[12]ReadProperty-Request,readPropertyConditional[13]ReadPropertyConditional-Request,readPropertyMultiple[14]ReadPropertyMultiple-Request,readRange[26]ReadRange-Request,writeProperty[15]WriteProperty-Request,writePropertyMultiple[16]WritePropertyMultiple-Request,。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。}上述标记为红色的既是针对BACnetConfirmedServiceChoice所用到的数据结构。ReadProperty-Request::=SEQUENCE//读数据请求和读数据回答{objectIdentifier[0]BACnetObjectIdentifier,propertyIdentifier[1]BACnetPropertyIdentifier,propertyArrayIndex[2]UnsignedOPTIONAL--usedonlywitharraydatatype}ReadPropertyMultiple-Request::=SEQUENCE{listOfReadAccessSpecsSEQUENCEOFReadAccessSpecification}ReadAccessSpecification::=SEQUENCE{objectIdentifier[0]BACnetObjectIdentifier,listOfPropertyReferences[1]SEQUENCEOFBACnetPropertyReference}BACnetPropertyReference::=SEQUENCE{propertyIdentifier[0]BACnetPropertyIdentifier,

(精心整理)BACnet通讯分析2

propertyArrayIndex[1]UnsignedOPTIONAL--usedonlywitharraydatatype--ifomittedwithanarraytheentirearrayisreferenced}BACnetPropertyIdentifier::=ENUMERATED{accepted-modes(175),acked-transitions(0),ack-required(1),action(2),action-text(3),active-text(4),active-vt-sessions(5),active-cov-subscriptions(152),adjust-value(176),alarm-value(6),alarm-values(7),all(8),all-writes-successful(9),apdu-segment-timeout(10),apdu-timeout(11),application-software-version(12),firmware-revision(44),archive(13),attempted-samples(124),list-of-group-members(53),list-of-object-property-references(54),list-of-session-keys(55),local-date(56),local-time(57),location(58),maintenance-required(158),manipulated-variable-reference(60),manual-slave-address-binding(170),maximum-output(61),maximum-value(135),maximum-value-timestamp(149),max-apdu-length-accepted(62),max-info-frames(63),max-master(64),max-pres-value(65),max-segments-accepted(167),member-of(159),minimum-off-time(66),minimum-on-time(67),minimum-output(68),event-state(36),model-name(70),number-of-APDU-retries(73),object-identifier(75),object-list(76),object-name(77),object-property-reference(78),object-type(79),operation-expected(161),optional(80),out-of-service(81),output-units(82),--seeevent-parameters(83),polarity(84),prescale(185),present-value(85),priority(86),pulse-rate(186),priority-array(87),priority-for-writing(88),protocol-object-types-supported(96),protocol-revision(139),protocol-services-supported(97),protocol-version(98),reliability(103),relinquish-default(104),schedule-default(174),segmentation-supported(107),state-text(110),status-flags(111),stop-time(143),stop-when-full(144),system-status(112),tracking-value(164),units(117),variance-value(151),vendor-identifier(120),vendor-name(121),--seedatabase-revision(155),}上述标记为红色者既是本次应用所用到的属性对象BACnetObjectIdentifier的编码分为两个部分:ObjecttypeInstanceNumber占用了10Bits占用了22BitsObjectType的表格如下:BACnetObjectTypesSupported::=BITSTRING{--accumulator(23),analog-input(0),analog-output(1),analog-value(2),--averaging(18),binary-input(3),binary-output(4),binary-value(5),calendar(6),command(7),device(8),event-enrollment(9),file(10),group(11),loop(12),multi-state-input(13),multi-state-output(14),--multi-state-value(19),notification-class(15),program(16),}设备对象所具备的所有属性及其数据结构如下:DEVICE::=SEQUENCE{object-identifier[75]BACnetObjectIdentifier,object-name[77]CharacterString,object-type[79]BACnetObjectType,system-status[112]BACnetDeviceStatus,vendor-name[121]CharacterString,vendor-identifier[120]Unsigned16,model-name[70]CharacterString,firmware-revision[44]CharacterString,application-software-version[12]CharacterString,location[58]CharacterStringOPTIONAL,description[28]CharacterStringOPTIONAL,protocol-version[98]Unsigned,protocol-revision[139]Unsigned,protocol-services-supported[97]BACnetServicesSupported,protocol-object-types-supported[96]BACnetObjectTypesSupported,object-list[76]SEQUENCEOFBACnetObjectIdentifier,--accessedasaBACnetARRAYmax-APDU-length-supported[62]Unsigned,segmentation-supported[107]BACnetSegmentation,vt-classes-supported[122]SEQUENCEOFBACnetVTClassOPTIONAL,active-vt-sessions[5]SEQUENCEOFBACnetVTSessionOPTIONAL,local-time[57]TimeOPTIONAL,local-date[56]DateOPTIONAL,utc-offset[119]INTEGEROPTIONAL,daylight-savings-status[24]BOOLEANOPTIONAL,apdu-segment-timeout[10]Unsigned,apdu-timeout[11]Unsigned,number-of-APDU-re

(精心整理)BACnet通讯分析3

tries[73]Unsigned,list-of-session-keys[55]SEQUENCEOFBACnetSessionKeyOPTIONAL,time-synchronization-recipients[116]SEQUENCEOFBACnetRecipientOPTIONAL,--requiredfortimemastermax-master[64]Unsigned(1..127)OPTIONAL,--requiredforMS/TPmaster,see12.11max-info-frames[63]UnsignedOPTIONAL,--requiredforMS/TPmaster,see12.11device-address-binding[30]SEQUENCEOFBACnetAddressBinding,database-revision[155]Unsigned,configuration-files[154]SEQUENCEOFBACnetObjectIdentifier,last-restore-time[157]BACnetTimeStamp,backup-failure-timeout[153]Unsigned16,active-cov-subscriptions[152]SEQUENCEOFBACnetCOVSubscription,max-segments-accepted[167]Unsigned,slave-proxy-enable[172]SEQUENCEOFBOOLEANOPTIONAL,auto-slave-discovery[169]SEQUENCEOFBOOLEANOPTIONAL,slave-address-binding[171]SEQUENCEOFBACnetAddressBindingOPTIONAL,manual-slave-address-binding[170]SEQUENCEOFBACnetAddressBindingOPTIONAL,profile-name[168]CharacterStringOPTIONAL}上述标记为红色者既是本次应用用到的设备属性对象ANALOG-INPUT::=SEQUENCE{object-identifier[75]BACnetObjectIdentifier,object-name[77]CharacterString,object-type[79]BACnetObjectType,present-value[85]REAL,description[28]CharacterStringOPTIONAL,device-type[31]CharacterStringOPTIONAL,status-flags[111]BACnetStatusFlags,event-state[36]BACnetEventState,reliability[103]BACnetReliabilityOPTIONAL,out-of-service[81]BOOLEAN,update-interval[118]UnsignedOPTIONAL,units[117]BACnetEngineeringUnits,min-pres-value[69]REALOPTIONAL,max-pres-value[65]REALOPTIONAL,resolution[106]REALOPTIONAL,cov-increment[22]REALOPTIONAL,time-delay[113]UnsignedOPTIONAL,notification-class[17]UnsignedOPTIONAL,high-limit[45]REALOPTIONAL,low-limit[59]REALOPTIONAL,deadband[25]REALOPTIONAL,limit-enable[52]BACnetLimitEnableOPTIONAL,event-enable[35]BACnetEventTransitionBitsOPTIONAL,acked-transitions[0]BACnetEventTransitionBitsOPTIONAL,notify-type[72]BACnetNotifyTypeOPTIONAL,event-time-stamps[130]SEQUENCEOFBACnetTimeStampOPTIONAL,--accessedasaBACnetARRAYprofile-name[168]CharacterStringOPTIONAL}ANALOG-OUTPUT::=SEQUENCE{object-identifier[75]BACnetObjectIdentifier,object-name[77]CharacterString,object-type[79]BACnetObjectType,present-value[85]REAL,description[28]CharacterStringOPTIONAL,device-type[31]CharacterStringOPTIONAL,status-flags[111]BACnetStatusFlags,event-state[36]BACnetEventState,reliability[103]BACnetReliabilityOPTIONAL,out-of-service[81]BOOLEAN,units[117]BACnetEngineeringUnits,min-pres-value[69]REALOPTIONAL,max-pres-value[65]REALOPTIONAL,resolution[106]REALOPTIONAL,priority-array[87]BACnetPriorityArray,relinquish-default[104]REAL,cov-increment[22]REALOPTIONAL,time-delay[113]UnsignedOPTIONAL,notification-class[17]UnsignedOPTIONAL,high-limit[45]REALOPTIONAL,low-limit[59]REALOPTIONAL,deadband[25]REALOPTIONAL,limit-enable[52]BACnetLimitEnableOPTIONAL,event-enable[35]BACnetEventTransitionBitsOPTIONAL,acked-transitions[0]BACnetEventTransitionBitsOPTIONAL,notify-type[72]BACnetNotifyTypeOPTIONAL,event-time-stamps[130]SEQUENCEOFBACnetTimeStampOPTIONAL,--accessedasaBACnetARRAYprofile-name[168]CharacterStringOPTIONAL}ANALOG-VALUE::=SEQUENCE{object-identifier[75]BACnetObjectIdentifier,object-name[77]CharacterString,object-type[79]BACnetObjectType,present-value[85]REAL,description[28]CharacterStringOPTIONAL,status-flags[111]BACnetStatusFlags,event-state[36]BACnetEventState,reliability[103]BACnetReliabilityOPTIONAL,out-of-service[81]BOOLEAN,units[117]BACnetEngineer

(精心整理)BACnet通讯分析4

ingUnits,priority-array[87]BACnetPriorityArrayOPTIONAL,relinquish-default[104]REALOPTIONAL,cov-increment[22]REALOPTIONAL,time-delay[113]UnsignedOPTIONAL,notification-class[17]UnsignedOPTIONAL,high-limit[45]REALOPTIONAL,low-limit[59]REALOPTIONAL,deadband[25]REALOPTIONAL,limit-enable[52]BACnetLimitEnableOPTIONAL,event-enable[35]BACnetEventTransitionBitsOPTIONAL,acked-transitions[0]BACnetEventTransitionBitsOPTIONAL,notify-type[72]BACnetNotifyTypeOPTIONAL,event-time-stamps[130]SEQUENCEOFBACnetTimeStampOPTIONAL,--accessedasaBACnetARRAYprofile-name[168]CharacterStringOPTIONAL}BINARY-INPUT::=SEQUENCE{object-identifier[75]BACnetObjectIdentifier,object-name[77]CharacterString,object-type[79]BACnetObjectType,present-value[85]BACnetBinaryPV,description[28]CharacterStringOPTIONAL,device-type[31]CharacterStringOPTIONAL,status-flags[111]BACnetStatusFlags,event-state[36]BACnetEventState,reliability[103]BACnetReliabilityOPTIONAL,out-of-service[81]BOOLEAN,polarity[84]BACnetPolarity,inactive-text[46]CharacterStringOPTIONAL,active-text[4]CharacterStringOPTIONAL,change-of-state-time[16]BACnetDateTimeOPTIONAL,change-of-state-count[15]UnsignedOPTIONAL,time-of-state-count-reset[115]BACnetDateTimeOPTIONAL,elapsed-active-time[33]Unsigned32OPTIONAL,time-of-active-time-reset[114]BACnetDateTimeOPTIONAL,time-delay[113]UnsignedOPTIONAL,notification-class[17]UnsignedOPTIONAL,alarm-value[6]BACnetBinaryPVOPTIONAL,event-enable[35]BACnetEventTransitionBitsOPTIONAL,acked-transitions[0]BACnetEventTransitionBitsOPTIONAL,notify-type[72]BACnetNotifyTypeOPTIONAL,event-time-stamps[130]SEQUENCEOFBACnetTimeStampOPTIONAL,--accessedasaBACnetARRAYprofile-name[168]CharacterStringOPTIONAL}BINARY-OUTPUT::=SEQUENCE{object-identifier[75]BACnetObjectIdentifier,object-name[77]CharacterString,object-type[79]BACnetObjectType,present-value[85]BACnetBinaryPV,description[28]CharacterStringOPTIONAL,device-type[31]CharacterStringOPTIONAL,status-flags[111]BACnetStatusFlags,event-state[36]BACnetEventState,reliability[103]BACnetReliabilityOPTIONAL,out-of-service[81]BOOLEAN,polarity[84]BACnetPolarity,inactive-text[46]CharacterStringOPTIONAL,active-text[4]CharacterStringOPTIONAL,change-of-state-time[16]BACnetDateTimeOPTIONAL,change-of-state-count[15]UnsignedOPTIONAL,time-of-state-count-reset[115]BACnetDateTimeOPTIONAL,elapsed-active-time[33]Unsigned32OPTIONAL,time-of-active-time-reset[114]BACnetDateTimeOPTIONAL,minimum-off-time[66]Unsigned32OPTIONAL,minimum-on-time[67]Unsigned32OPTIONAL,priority-array[87]BACnetPriorityArray,relinquish-default[104]BACnetBinaryPV,time-delay[113]UnsignedOPTIONAL,notification-class[17]UnsignedOPTIONAL,feedback-value[40]BACnetBinaryPVOPTIONAL,event-enable[35]BACnetEventTransitionBitsOPTIONAL,acked-transitions[0]BACnetEventTransitionBitsOPTIONAL,notify-type[72]BACnetNotifyTypeOPTIONAL,event-time-stamps[130]SEQUENCEOFBACnetTimeStampOPTIONAL,--accessedasaBACnetARRAYprofile-name[168]CharacterStringOPTIONAL}BINARY-VALUE::=SEQUENCE{object-identifier[75]BACnetObjectIdentifier,object-name[77]CharacterString,object-type[79]BACnetObjectType,present-value[85]BACnetBinaryPV,description[28]CharacterStringOPTIONAL,status-flags[111]BACnetStatusFlags,event-state[36]BACnetEventState,reliability[103]BACnetReliabilityOPTIONAL,out-of-service[81]BOOLEAN,inactive-text[46]CharacterStringOPTIONAL,active-text[4]CharacterStringOPTIONAL

(精心整理)BACnet通讯分析5

,change-of-state-time[16]BACnetDateTimeOPTIONAL,change-of-state-count[15]UnsignedOPTIONAL,time-of-state-count-reset[115]BACnetDateTimeOPTIONAL,elapsed-active-time[33]Unsigned32OPTIONAL,time-of-active-time-reset[114]BACnetDateTimeOPTIONAL,minimum-off-time[66]Unsigned32OPTIONAL,minimum-on-time[67]Unsigned32OPTIONAL,priority-array[87]BACnetPriorityArrayOPTIONAL,relinquish-default[104]BACnetBinaryPVOPTIONAL,time-delay[113]UnsignedOPTIONAL,notification-class[17]UnsignedOPTIONAL,alarm-value[6]BACnetBinaryPVOPTIONAL,event-enable[35]BACnetEventTransitionBitsOPTIONAL,acked-transitions[0]BACnetEventTransitionBitsOPTIONAL,notify-type[72]BACnetNotifyTypeOPTIONAL,event-time-stamps[130]SEQUENCEOFBACnetTimeStampOPTIONAL,--accessedasaBACnetARRAYprofile-name[168]CharacterStringOPTIONAL}MULTI-STATE-INPUT::=SEQUENCE{object-identifier[75]BACnetObjectIdentifier,object-name[77]CharacterString,object-type[79]BACnetObjectType,present-value[85]Unsigned,--maximumvalueisrestrictedbythenumber-of-statesdescription[28]CharacterStringOPTIONAL,device-type[31]CharacterStringOPTIONAL,status-flags[111]BACnetStatusFlags,event-state[36]BACnetEventState,reliability[103]BACnetReliabilityOPTIONAL,out-of-service[81]BOOLEAN,number-of-states[74]Unsigned,state-text[110]SEQUENCEOFCharacterStringOPTIONAL,--accessedasaBACnetARRAYtime-delay[113]UnsignedOPTIONAL,notification-class[17]UnsignedOPTIONAL,alarm-values[7]SEQUENCEOFUnsignedOPTIONAL,fault-values[39]SEQUENCEOFUnsignedOPTIONAL,event-enable[35]BACnetEventTransitionBitsOPTIONAL,acked-transitions[0]BACnetEventTransitionBitsOPTIONAL,notify-type[72]BACnetNotifyTypeOPTIONAL,event-time-stamps[130]SEQUENCEOFBACnetTimeStampOPTIONAL,--accessedasaBACnetARRAYprofile-name[168]CharacterStringOPTIONAL}MULTI-STATE-OUTPUT::=SEQUENCE{object-identifier[75]BACnetObjectIdentifier,object-name[77]CharacterString,object-type[79]BACnetObjectType,present-value[85]Unsigned,--maximumvalueisrestrictedbythenumber-of-statesdescription[28]CharacterStringOPTIONAL,device-type[31]CharacterStringOPTIONAL,status-flags[111]BACnetStatusFlags,event-state[36]BACnetEventState,reliability[103]BACnetReliabilityOPTIONAL,out-of-service[81]BOOLEAN,number-of-states[74]Unsigned,state-text[110]SEQUENCEOFCharacterStringOPTIONAL,--accessedasaBACnetARRAYpriority-array[87]BACnetPriorityArray,relinquish-default[104]Unsigned,time-delay[113]UnsignedOPTIONAL,notification-class[17]UnsignedOPTIONAL,feedback-value[40]UnsignedOPTIONAL,event-enable[35]BACnetEventTransitionBitsOPTIONAL,acked-transitions[0]BACnetEventTransitionBitsOPTIONAL,notify-type[72]BACnetNotifyTypeOPTIONAL,event-time-stamps[130]SEQUENCEOFBACnetTimeStampOPTIONAL,--accessedasaBACnetARRAYprofile-name[168]CharacterStringOPTIONAL}MULTI-STATE-VALUE::=SEQUENCE{object-identifier[75]BACnetObjectIdentifier,object-name[77]CharacterString,object-type[79]BACnetObjectType,present-value[85]Unsigned,--maximumvalueisrestrictedbythenumber-of-statesdescription[28]CharacterStringOPTIONAL,status-flags[111]BACnetStatusFlags,event-state[36]BACnetEventState,reliability[103]BACnetReliabilityOPTIONAL,out-of-service[81]BOOLEAN,number-of-states[74]Unsigned,state-text[110]SEQUENCEOFCharacterStringOPTIONAL,--accessedasaBACnetARRAYpriority-array[87]BACnetPriorityArrayOPTIONAL,relinquish-default[104]UnsignedOPTIONAL,time-delay[113]UnsignedOPTIONAL,notification-class[17]UnsignedOPTION

本文档为【(精心整理)BACnet通讯分析】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。

[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

下载需要¥17.6 ,已有0人下载

最新资料

热门推荐

推荐专题

v

机构认证用户 夕夕资料

拥有专业强大的教研实力和完善的师资团队,专注为用户提供合同简历、论文写作、PPT设计、计划书、策划案、各类模板等,同时素材和资料部分来自网络,仅供参考.