所有的BACnet设备都应能工作在响应方BACnet用户状态,从而能够接收请求方BACnet用户发来的APDU。事务处理状态机请求方和响应方BACnet用户为每一个事务处理都要创建并且维护一个TSM。为了简化状态机的描述,这里仅给出应用实体所进行分段的情况,应用程序所进行的分段也是存在的。当更新的状态机接收到分段确认PDU,就向应用程序传递一个分段确认指示原语。......
2023-08-29
对应用层的服务语义定义后,接下来就要对服务原语具体传递的过程及报文格式进行说明。服务原语具体传递的过程可以通过时序图来说明。每个时序图可以分为3个或者4个区域。标注为“提供方”的区域代表了服务提供者,标注为“用户”的区域代表了服务使用者。如果还存在第4个区域,则代表的是应用程序。其中位于“提供者”与“用户”之间的竖线,对于应用层而言,指的是BACnet用户元素与BACnet应用层服务元素之间的接口。对于下面各层而言,这些竖线表示的则是处于服务提供者与服务使用者之间的服务访问点(service-access-point)。在应用层协议时序图中,由上到下是时间流逝的方向。处于服务使用者区域中的箭头,指明了在事务处理过程中由服务原语所表示的信息的流动方向(即从服务使用者流入或流出)。
1.证实与非证实服务报文时序图
图3-20给出了正常非证实报文的时序图,图3-21给出了非正常非证实服务报文的时序图。
图3-20 正常非证实报文的时序图
图3-21 非正常非证实服务报文的时序图
对于非证实报文的服务,不论客户端所要求的服务是否能够正确执行,用到的报文格式就是BACnet-Unconfirmed-Request-PDU(Type=1)一种。对于出现差错的非正常无证实服务请求报文,被接受用户丢弃。
2.正常有证实服务报文
(1)正常有证实服务报文(不分段)
BACnet标准定义的证实服务所涉及的情况比非证实服务要复杂得多。在证实服务中,必须实现控制和管理与报文长度有关的“分段和重组”功能、流量控制以及分段报文差错检测与恢复功能。
证实服务经历“请求”、“指示”、“响应”和“证实”不同的阶段,因此要分别采用不同格式的报文,以满足不同阶段中的数据通信。如果证实服务所涉及的报文长度不分段,此时的证实服务的报文传输过程如图3-22所示。当响应为Result(+)时,响应报文为BACnet-SimpleACK-PDU(BACnet简单确认PDU)或BACnet-ComplexACK-PDU(BACnet复杂确认PDU);而当响应为Result(-)时,响应报文为BACnet-Error-PDU(BACnet出错PDU)。
图3-22 正常有证实服务(不分段)报文时序图
(2)正常有证实服务(有分段请求)报文
对证实型服务传输的报文出现报文长度超过网络层协议数据单元(NPDU)时,就必须对报文进行分段传输。如前所述,对于有证实请求(Confirmed-Request)和复杂确认(Complex-ACK)报文才可能需要分段。
报文分段遵循如下规则:
1)每一个报文尽可能只用一个APDU发送。
2)当一个报文的长度超过APDU的允许最大长度时,则应分段成最少个数的多个APDU发送。
3)对报文进行分段时,以1B作为最小分段(分割)单位。
对报文进行分段,还应注意3个方面:
1)APDU最大长度还与信源节点设备的发送缓冲区大小有关。不同BACnet设备发送缓冲区大小可以不同,但不能小于50B。
2)BACnet互联网中各网段所能传输APDU的最大长度不是一个常数。此时的长度由本地、远程以及中间传输网络的网络层协议数据单元(NPDU)最大长度所决定。
3)远程信宿设备节点接收APDU的最大长度不能小于50B,即信宿设备节点的接收缓冲区最小长度必须大于50B。
正常有证实服务(有分段请求)报文时序图如图3-23所示。
从图3-23中知道,一个交换是使用有证实的服务请求、指示、响应以及证实。有些请求需要分段,因此需要使用几个CONF_SERV.request原语来传递整个请求。分段确认服务原语是另一个独立的交换,它用来通知客户,服务器已准备接收下一分段了。
(3)其他的正常有证实服务的报文时序图
1)正常有证实服务(有分段响应)的报文时序图如图3-24所示。
2)具有应用程序流程控制的正常有证实服务时序图如图3-25所示。
图3-23 正常有证实服务(有分段请求)报文时序图
图3-24 正常有证实服务(有分段响应)的报文时序图
3)具有分段请求、应用程序流程控制和取消响应的正常有证实服务时序图如图3-26所示。
4)几种情况下非正常有证实服务的时序图如下:
有分段的响应和请求方中止的非正常有证实服务时序图如图3-27所示。
不分段,有服务误差发生情况下的非正常有证实服务时序图和协议差错发生的有证实服务时序图分别为图3-28和图3-29所示。
图3-25 具有应用程序流程控制的正常有证实服务时序图
图3-26 具有分段请求、应用程序流程控制和取消响应的正常有证实服务时序图
图3-27 非正常有证实服务时序图
图3-29 具有协议错误的非正常有证实服务请求或相应时序图
有关BACnet标准与楼宇自控系统技术的文章
所有的BACnet设备都应能工作在响应方BACnet用户状态,从而能够接收请求方BACnet用户发来的APDU。事务处理状态机请求方和响应方BACnet用户为每一个事务处理都要创建并且维护一个TSM。为了简化状态机的描述,这里仅给出应用实体所进行分段的情况,应用程序所进行的分段也是存在的。当更新的状态机接收到分段确认PDU,就向应用程序传递一个分段确认指示原语。......
2023-08-29
其中,对象标志符用来惟一标识对象;BACnet设备可以通过广播自身包含的某个对象的对象名称,与包含相关对象的设备建立联系。因此进行BACnet对象的定义,解决楼宇自控设备的互相识别、访问是实现楼宇自控设备互操作的关键。BACnet设备使用相关的对象进行描述,每一对象都有一组属性,设备的特征可以通过属性值表现出来。......
2023-08-29
网络层协议报文是指BACnet网络层控制和管理报文,主要用于BACnet路由器配置和管理、路由表的维护、网络层拥塞控制、PTP链路控制和管理以及网络层功能查询等。有10种网络层协议报文,说明如下:1.Who-Is-Router-To-Network报文该报文类型域是X‘00’,有2B的网络号,并可由网络中任意节点产生,用广播方式发送和转发。该类报文由BACnet路由器产生,作用是一个拒绝报文,直接发给生成被拒绝的报文的节点,网络号就是被拒绝报文中的网络号。......
2023-08-29
BACnet标准采用了4层结构:应用层、网络层、数据链路层和物理层,并为数据链路层和物理层提供了6种选择方案,其中一种就是选择主从/令牌传递协议加上EIA-485标准。MS/TP协议定义了MS/TP帧结构,这部分内容如第4章的“MS/TP局域网规范”所述。MS/TP协议还定义了MS/TP网络采用惟一的一种总线拓扑结构和主站点与从站点以及采用令牌机制的媒质访问控制方法。......
2023-08-29
冷水机组台数控制有三种基本方法,其中电流比台数控制方法最精确可靠。冷水机组在运行时的多余冷量从旁通或者平衡管回流,会造成很大的冷量损失,因此仅开启满足冷负荷需求的冷机台数对建筑节能贡献最大。通过BACnet互联得到的数值与机组内部设定值相同,控制逻辑与机组内部控制逻辑一致,相比管道安装的传感器,可能产生偏差外,DDC对冷水机组的起/停控制命令通过BACnet网关送达冷水机组,中间经过冷水机组的内部安全监测。......
2023-08-30
下面简要介绍BACnet标准的各个部分,关于内容的深度分析和讨论放在后面的专门章节中。每一个BACnet设备必须至少包含一个标准对象。网络层的功能就是实现连接两个使用不同数据链路层协议的BACnet局域网。BACnet网络层向应用层提供的服务是不确认的无连接形式的数据单元传送服务。......
2023-08-29
施耐德TAC Vista BAS的一个工作界面如图10-43所示。图10-43 TAC Vista系统的一个工作界面1.TAC BAS架构施耐德TAC Vista系统是基于开放的LonWorks技术的BAS,控制网络使用LonWorks网络,通过LonWorks路由器把分布在不同建筑内和不同楼层的DDC便捷地连接起来。图10-44 施耐德TAC BAS的架构TAC Xenta OP是一个小型的操作终端,通过面板与DDC连接。图10-45 细致的组件连接关系2.控制器及编程软件施耐德TAC BAS中的DDC是TAC Xenta系列控制器。LonWorks网络通信使用3120神经元芯片,中央处理器是32位、10MHz主频的CPU。......
2023-08-30
据估计,仅仅移动互联网的地址需求预计将达到5亿~9亿个,物联网的发展对IP地址资源的需求也极为巨大,IPv6能够提供海量地址,完全可以满足以上技术发展的需求。IPv6体制增强了组播支持和对流的支持。在IPv6体系中,对协议进行了改进和扩展,使得网络管理更加方便和快捷,安全性大幅度提升。......
2023-08-30
相关推荐