ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:214.50KB ,
资源ID:10428479      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10428479.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(DLMS通讯协仪参考.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

DLMS通讯协仪参考.docx

1、DLMS通讯协仪参考(注:以下仅为个人理解和参考,具体设计请参照对应IEC62056-53及IEC62056-46)IEC 62056-21是一种供计算机读取仪表数据的国际通讯规约,被设计成可以通过包括Internet在内的各种媒体完成数据通信。仪表通过串口向掌抄设备发送ASCII或(HDLC数据),现在我们应用的就是HDLC。物理层通常会使用红外收发或有线20mA电流环信号实现,全双工通讯。当操作员使用掌抄朝向仪表的半透明面板按下读表按钮或将掌抄插入仪表总线插槽时,抄表过程通常耗时一至两秒。首先需要经历一个“sign on”步骤,手持设备通过此步骤向仪表表明自身身份。在sign-on过程中,

2、首先由掌抄设备为仪表编址。仪表与手持式设备需要事先约定好数据收发的最大桢长度、是否允连续发送许多桢而无须分别确认、双方所能达到最大通讯速率等参数。然后仪表将在允许的加密级别(无低高)范围内上报自身各项参数。如果所召测数据属于无加密组,只要使用Get.Request即可应答掌抄所召测的数据。 如果属于低加密组,必须在解读数据前进行密码和身份认证。 如果属于高加密组,仪表会使用加密报文对掌抄进行验证,掌抄必须回答相应的密码。只有当密码交换正确时,仪表方能接受掌抄,即掌抄已经被“signed on”。完成“sign on”之后,掌抄通常要读取电表的描述文字。确定记录电表当前数据的量纲(例如:千瓦时、

3、兆焦耳、升)以及仪表精度级别。偶尔制造商还会提出新的待测物理量,在这种情况下,可以在仪表定义域中添加新的数据类型。大多数仪表具有用于校表和复位的特殊工作模式,通常还要采取某些保护措施防止不法分子利用这些特殊工作模式修改仪表读数(例如使用限位开关探测仪表外壳是否被撬)。掌抄还能够在允许的范围内修改仪表的部分参数。之后掌抄发送sign-off报文结束通讯。另外,如果超出事先约定的应答时限,即使没有sign-off报文,电表也将自动结束当前回话。通讯过程描述:(一)建立物理层连接物理层位于通讯模型的最底层。DLMS规约可以建立在多种物理层之上,物理层的做用主要是对底层通讯硬件的操做(如对PSTN M

4、ODEM的初始化,打开,关闭。)(二)建立链路层连接 物理层连接建立之后,数据通讯的第一步是建立链路层的连接,链路层主要负责数据传输的可靠性,包括以下几个方面,地址校验,帧长校验,数据的CRC校验。长数据帧的拆包组包。同时向应用层提供链路传输的服务。(三)建立应用层连接 链路层连接建立之后,在DLMS协仪中还要建立应用层连接,才可进行数据通讯。这个应用层连接建立过程被称为Negotioation。这个过程是为数据通讯提供一些配置参数。应用层连接请求由Client端发起,Client 端发aarq帧,Server端响应aare帧(四)进行数据通讯当连接建立起后,就可进行数据通讯了。Client端

5、发送数据请求帧Server端以数据响应。Client在请求不同的数据时,要使用特定数据的独有的class id和OBIS,用以标识不同类型的数据。(五)数据通讯结束,释放链路,解除连接。数据通讯结束后,发链路结束帧,结束一次通讯过程。一次数据通讯结束后,可以通过发链路结束帧,来结束一次通讯过程。也可以,不发任何数据帧,依靠server端的超时挂断机制,来结束一次通讯过程。一般应使用前者。(六)解除物理层连接关闭物理端口(如挂断Modem)。从物理上结束一次通讯。DLMS链路层协议 物理层之上即为链路层,链路层是物理层与应用层通信的通道。DLMS链路层使用的是HDLC高速链路控制协议。 具体到数

6、据通讯时,对于client端应用层发送的数据,要加上LLC帧头(0xe6 , 0xe6, 0x00),server端应用层发送的数据,要加上LLC帧头 ( 0xe6 , 0xe7 , 0x00)。HDLC帧格式(1) 不包含应用层数据信息0x7e帧类型与帧长目的地址域源地址域控制域数据帧校验0x7e两个0x7e是HDLC数据帧固定的帧头与帧尾,两个0x7e之间是链用户数据。(2) 包含应用层数据信息与不包含应用层数据信息的数据帧相比这里多了3项:1)帧头校验:为增强通讯的可靠性,对帧头的数据也加上CRC校验。帧头包括如下 字段:帧类型与帧长、目的地址域、源地址域、和控制域2)LLC帧头:用户数

7、据信息前要加0xe6 , 0xe6, 0x00或0xe6 , 0xe7, 0x00。3)用户数据信息:应用层处理的数据。注:出于数据完整性的考虑,用户数据信息的最大长度,默认为128字节。如果想要更多的字节,可以在SNRM数据帧中协议。帧类型字段与S位帧类型与帧长字段,共两个字节。内容如下: Frame Type :用于指出当前数据帧的类型。HDLC有多种数据帧类型,DLMS使 用Frame Type 3。Frame Type恒为A(1010)。 S:(segmentation Bit)这个字段只有一位,它用于说明数据帧是否被分割。在长数 据帧传输时要使用到这一位。长数据帧的传输将在后面解释。

8、 Frame Length Subfield :这个字段用于说明当前数据帧的长度,(以字节为单位, 不包括两个0x7e)地址解析地址域分为两部分。目的地址域和源地址域。对于client端,目的地址为server的地址,源地址为client的地址。对于server端正好相反。(1)扩展编址技术 HDLC使用扩展编址技术,即某一个地址字节的最低位如为0,则表明该地址域没有结束,仍有后续字节是该地址域的一部分。若某一地址字节最低位为1,则说明该地址域已经结束,没有后续字节。(2)地址结构 Client端的地址永远是一个字节,由于扩展编址技术的使用,最低位置1,所以client 端的地址只能有128个

9、。Server端为了实现一个物理地址对应多个逻辑地址,将地址分成了两部分upper HDLC Address 用于表述逻辑地址,lower HDLC address用于表述物理地址。Upper address总是应当有的,lower address在确认不需要的情况下,可以不出现。(sl7000 电表这两部分地址都是需要的)。 Server端的地址在使用扩展编址技术时,也并非是可以无限长(虽然在理论上可以,但在实践上是有上限的)。Server端的地址结构可以使用如下方式: One byte: only the upper HDLC address is present.一字节:只出现HDLC高

10、位一字节地址。两字节:只出现HDLC高位一字节地址,和HDLC低位一字节地址。四字节:只出现HDLC高位两字节地址,和HDLC低位两字节地址帧控制字 帧控制字字段主要负责,通讯中的帧计数,以及特殊数据帧的标识。 帧控制字字段结构如下: 对应项的解释如下: RRR:为接收帧计数。 SSS:为发送帧计数。 注:对帧计数的解释, 在链路层连接建立之后,第一次请求数据时(在client端,包括发送AARQ)RRR置为0,SSS置为0。Server端收到这一帧数据后,返回数据响应RRR为1,SSS为0。Client再次请求数据时RRR加1,SSS加1。Server端收到这一帧数据后,返回数据响应RRR加

11、1(成为2),SSS加1。如此反复直到client得到所有的数据为止。整个数据传输过程以I数据帧请求和响应。这里要说明的是在请求数据结束后还要再发送RR帧,收到确认后。才可以再发送DISC帧结束链路。其中Client端的RR帧中的帧计数位RRR只需将client的帧计数位RRR加1得到。 下图描述了帧计数位的变化过程:P/F:poll/final bit。 Poll bit :由client发送,置1时表示server端回应,置0时表示不允许回应。 final bit:由server发送,置1时表示一次数据帧的发送结束,置0时表示还未 发送完。final bit只有在通讯窗口(window s

12、ize)大于1的情况下才有意 义。在window size 1时,由server端返回的数据帧中的这一位总是 置1。(关于window size将会在“建立链路层连接”时解释)长数据帧的传输 在很多情况下,数据不能在一次请求和一次响应中,就能够结束数据传输的过程(受限于用户数据字节不超过128字节)。这时就有必要启动长数据帧链路控制流程。 注:请求负荷曲线时一定是使用长数据帧。 当使用长数据帧时,必须把长数据帧分割成短数据帧。然后把这些短数据帧依次发送出去,在接收端将这些短数据帧依次处理。这样就实现了一个较大的数据包,完整的传送到接收端。在数据帧被分割时,帧类型与帧长字段中的S位,将被置1。当

13、接收端检测到这一位被置位后,就知道数据帧已被分割,此时要做出对分割数据帧的相应处理。 下图介绍了长数据帧的收发过程:client端通过发送RR数据帧来请求被分割的数据帧的其他部分。数据帧校验 HDLC使用16位CRC校验。使用的多项式是: 具体的实现程序,可参照英文参考文献IEC62056 46的附录A。链路层连接的建立,与断开 (1)建立连接 链路层在开始工作之前,要建立链路层连接(Association)。这一步骤是通过client端发送SNRM数据帧,server端响应UA数据帧表示已建立连接,server端响应DM数据帧表示链路断开,连接没有建立。UA数据帧常含有链路参数的配置信息。链

14、路参数是指2个控制数据传输的参数。WINDOW_SIZE parameter; 这个参数描述通讯时,通讯的双方一次发送数据帧的数目。 HDLC允许一次发送多帧数据。MAXIMUM_INFORMATION_FIELD_LENGTH parameter . 最大信息域长度,这个参数用于描述一个链路数据帧中用户数据的长度。这两个参数的默认值如下:default WINDOW_SIZE = 1;default MAXIMUM_INFORMATION_FIELD_LENGTH 128(BYTEs)具体在数据帧中有如下4个参数:transmit maximum information field leng

15、th receive maximum information field length transmit window sizereceive window size 以下举例说明如何建立连接:/SNRMS: 7e a0 21 00 22 00 23 03 93 0b 14 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 07 65 5e 7e解释:7e a0 21 帧类型与帧长00 22 00 23 目的地址03 源地址93 控制字 0b 14 帧头校验81 80 SNRM 标识12 group lenth.05H pa

16、rameter identifier (maximum information field length transmit)01H parameter length (1 octet)80H parameter value(128 bytes)06H parameter identifier (maximum information field length receive)01H parameter length (1 octet)80H parameter value (128 bytes)07H parameter identifier (window size, transmit)04

17、H parameter length (4 octets)00H parameter value (high byte of value)00H parameter value00H parameter value01H parameter value (low byte of value)08H parameter identifier (window size, receive)04H parameter length (4 octets)00H parameter value (high byte of value)00H parameter value00H parameter val

18、ue07H parameter value (low byte of value) 65 5e 数据帧校验(CRC校验)7e在SNRM数据帧中的用户信息可以不出现,表示client接收server端的已配置数据。/UAR: 7E A0 21 03 00 22 00 23 73 28 F0 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 01 53 3B 7E解释:7E/Flag 0xA0 21/(type=a :frame type 3 , s=0 : end of frame , len=021 : 33 bytes)

19、03/source address 00 22 00 23 /destination address 73 /control UA 28 F0 /hcs 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 01 /information field /parameter negotiation /81 /80 /12 /05 01 80 :maximum information field length transmit (128 BYTEs) /06 01 80 :maximum information field leng

20、th receive (128 BYTEs) /07 04 00 00 00 01 :window size, transmit (1) /08 04 00 00 00 01 :window size, receive (1) 53 3B/fcs 7E (2)断开连接 断开连接由于不用参数设置,所以比建立连接要简单。Client端发送DISC数据帧,Server端响应UA或DM表示断开连接。UA表示接到DISC后断开连接。DM表示在接到DISC之前已处于断开状态。一下仍给出具体的通讯实例:S: 7e a0 0a 00 22 00 23 03 53 06 c7 7e解释:7e a0 0a 00

21、22 00 23 03 53 / 帧类型Disc 06 c7 7eR: 7E A0 0A 03 00 22 00 23 1F 43 4C 7E解释:7E A0 0A 03 00 22 00 23 1F/帧类型DM43 4C 7EDLMS应用层协议 理解DLMS应用层协议,需要首先建立以下几个概念: ASN.1语法,BER编码,AXDR编码。 ASN.1语法是用来描述应用层数据帧的。DLMS协议不同于其他一些简单通讯协议的地方就在于此。它不是用一些表格,及一些固定的帧格式来描述的,而是用一种抽象语法语言来描述。这样做的好处是,极大的提高了协议的抽象性和通用性,有利于程序移植。 BER编码和AXD

22、R编码是用来实现ASN.1语法的。为了实现ASN.1的抽象性和通用性,这个语法要用特殊的编码来描述。这就引入了BER编码和AXDR编码。 下面以接收到的AARE数据帧为例:AARE数据帧的语法描述:AARE-apdu := APPLICATION 1 IMPLICIT SEQUENCE APPLICATION 1 = 61H = 97 protocol-version 0 IMPLICIT BIT STRING version1 (0) DEFAULTversion1,application-context-name 1 Application-context-name,result 2 As

23、sociation-result,result-source-diagnostic 3 Associate-source-diagnostic,responding-AP-title 4 AP-title OPTIONAL,responding-AE-qualifier 5 AE-qualifier OPTIONAL,responding-AP-invocation-id 6 AP-invocation-identifier OPTIONAL,responding-AE-invocation-id 7 AE-invocation-identifier OPTIONAL,- The follow

24、ing field shall not be present if only the kernel is used.responder-acse-requirements 8 IMPLICIT ACSE-requirements OPTIONAL,- The following field shall only be present if the authentication functional unit is selected.mechanism-name 9 IMPLICIT mechanism-name OPTIONAL,- The following field shall only

25、 be present if the authentication functional unit is selected.responding-authentication-value 10 EXPLICIT authentication-value OPTIONAL,implementation-information 29 IMPLICIT implementation-data OPTIONAL,user-information 30 IMPLICIT association-information OPTIONALAARE数据帧的BER编码和AXDR编码实现:61 /AARE tag

26、42 /AARE lenA1 /tag of COSEM_Application_Context_Name 09 /数据长度 06 /(OBJECT IDENTIFIER, Universal)OBJECT IDENTIFIER是一种 /ASN.1数据类型. 07 /数据长度 60 85 74 05 08 01 01 /数据内容/以下的数据帧可以用同样的方法一一解释A2 /Tag of Association-result,03 02 01 00 A3 /Tag of Associate-source-diagnostic 05 A1 03 02 01 00 88 /IMPLICIT ACSE

27、-requirements OPTIONA 02 07 80 89 /IMPLICIT mechanism-name OPTIONAL07 60 85 74 05 08 02 01 AA /EXPLICIT authentication-value OPTIONAL0A 80 08 41 42 43 44 45 46 47 48 BE 04 / encoding the choice for user-information (OCTET STRING, Universal) 0E / encoding of the length of the OCTET STRINGs value fiel

28、d (14 octets) /*以下内容为XDLMS用AXDR描述*/08 /encoding the tag (explicit tag) of the DLMS PDU CHOICE (InitiateResponse)00 / usage flag for the proposed-quality-of-service component (FALSE, not present)06 /negotiated-dlms-version-number5F 1F / encoding the APPLICATION 31 tag (ASN.1 explicit tag) 04 / encodi

29、ng the length of the contents field in octet (4) 00 / encoding of the number of unused bits in the final octet of the bitstring00 08 1D/ encoding of the fixed length BITSTRING value 21 34 / the A-XDR encoding of an Unsigned16 is its value 00 07 / the A-XDR encoding of an Unsigned16 is its value . 00

30、 07 = LN AARQ ,AARE数据帧的具体描述(ASN.1语法描述) 应用层连接的建立是通过client端发送AARQ数据帧,server端响应AARE数据帧来实现的。这两个数据帧主要是配置应用层数据通讯的参数。AARQ-apdu := APPLICATION 0 IMPLICIT SEQUENCEprotocol-version 0 IMPLICIT BIT STRING version1 (0) DEFAULTversion1,application-context-name 1 Application-context-name,called-AP-title 2 AP-title OPTIONAL,called-AE-qualifier 3 AE-qualifier OPTIONAL,called-AP-invocation-id 4 AP-invocation-identifier OPTIONAL,called-AE-invocation-id 5 AE-invocation-identifier OPTIONAL,calling-AP-title 6 AP-title OPTIO

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1