完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电能表的通信协议遵循国家发布的《DL/T 645多功能电能表通信协议》行业标准,不同的地区,不同的企业,会根据自身的实际情况,对通信协议进行适当的扩展,使得标准化的通信协议带上了地域性和时域性色彩。对于电能表研发企业和人员来说,时刻面对通信协议需求的变化,这就给电表研发人员的调试和测试工作带来非常大的挑战。既然已经有标准,并且必须遵循标准进行开发产品,为何会变?变化在哪里?本文将围绕这些问题展开交流,以期从中找到答案。 DL/T645帧格式 DL/T645帧是传送信息的基本单元,帧格式如表1所示。其中,用于命令功能定义的是控制码中的5位功能码;用于标识数据项或者数据项集合的是数据域中的4个字节数据标识码。起着变化关键作用的就是这两个数据。企业会根据实际的设备开发和调试需求、客户应用需求来扩展协议。 表1 DL/T645帧格式
例1 控制码的功能码在标准中的预定义0b01000(广播校时)、0b10001(读数据)~0b11011(事件清零),保留0b00000,未定义的有0b00001~0b00111和0b11100~0b11111。某企业由于开发和调试的需求,扩展了功能码0b11110作为专门读E2PROM数据的功能;另一个企业则希望扩展功能码0b00001作为读计量芯片数据的功能。 数据标识码也可以进行扩展,标准中没有定义的数据,可以用来扩展,例如数据标识码04000501~04000507表示电表运行状态字1~7。某企业由于实际应用的需求,需要扩展0400050A~0400050C三个标识作为读取扩展运行状态字1~3的命令。 为了解决这种变化带来的调试和测试的需求,电能表研发企业通常的做法是配备一定数量的测试软件工程师,时刻待命,针对不同的电能表版本,编写出针对性的测试软件,以满足研发人员和客户的需求。这样日复一日,积累下来的只能和特定电能表版本匹配的测试软件就很多,维护电能表版本的更新的同时,也要维护相应的测试软件。更头痛的是,测试软件大多由二线工程师开发,软件质量和可维护性都不能保证,给企业的研发和测试管理带来很大的挑战,同时也提升了企业的研发和测试成本。 问题既然出在测试软件,解决之道自然在于软件。测试软件必须是一个定义良好、扩展性强的软件,一个能允许自定义通信协议的软件。测试软件应该提供一种通用协议描述方法来描述通信协议,实现原始二进制数据与应用层数据的自动转换,并且能够进行通信数据的对错判断和数据解析。 图1 测试软件的通信协议处理框图 通信协议可采用一种描述语言来描述,由协议头、字段列表、协议尾三部分组成: • 协议头包含关键字(Protocol)和协议名; • 协议尾包含结束关键字(End); • 字段列表包含一个到多个字段,每个字段的定义包含关键字(Segment)、名称(Name)、位长度(BitLength)、字节序(小端Little/大端Big)、默认值(Default)、校验算法(Algorithm)等属性。 例2 下面的例子是DL/T645协议的当前组合有功总电能的请求帧的描述: Protocol DLT645_读当前组合有功总电能_请求帧 Segment Name=帧起始符BitLength=8 Default=68 BitOrder=Little Segment Name=地址BitLength=48 Default=000000000000BitOrder=Little Segment Name=帧起始符BitLength=8 Default=68BitOrder=Little Segment Name=控制码BitLength=8 Default=11BitOrder=Little Segment Name=数据长度BitLength=8 Default=4BitOrder=Little Segment Name=数据标识BitLength=32Default=33333333 BitOrder=Little Segment Name=校验码BitLength=8 Default=00BitOrder=Little Algorithm=CS Segment Name=帧结束符BitLength=8 Default=16BitOrder=Little End 下面是使用格西烽火软件进行通信协议编辑的图形化效果。 图2 测试软件的通信协议编辑 图3 测试软件的通信协议项目管理图 测试软件采用了描述和搭积木的方式进行编写通信协议之后,就能以测试项目文件的方式进行维护不同的测试设备,解决了电子研发过程中调试和测试软件定制化过多、测试软件维护困难等问题,使测试软件变成一个测试平台,提供统一的测试项目编写和维护的图形化界面。 通过采用测试软件平台: • 单一的测试工具将取代众多定制的测试软件,真正把测试工程师解放出来去做设备测试,而不是写测试工具; • 快捷的激励协议管理方式,即使是无PC软件编程经验的研发人员,也可以即改即测,无需专门的测试软件开发工程师介入,极大降低研发的时间和沟通成本; • 所有测试项目都以文件的方式组织,在统一的测试平台上可以重复利用,提供一致的操作界面,有利于测试标准化。 总而言之,通过应用先进的通信测试软件,电能表研发企业的电能表测试将会变得更加快捷、直观、可追溯;测试执行者和研发管理者的工作也将变得更加事半功倍。 |
|
相关推荐 |
|
只有小组成员才能发言,加入小组>>
7131 浏览 9 评论
621浏览 0评论
1125浏览 0评论
811浏览 0评论
611浏览 0评论
553浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 09:13 , Processed in 0.622667 second(s), Total 48, Slave 37 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号