一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于电能表外置开关电流的编解码方法与流程

2021-12-14 22:58:00 来源:中国专利 TAG:

1.本发明涉及一种基于电能表外置开关电流的编解码技术,涉及电能表与蓝牙断路器的配对过程中的信息编解码技术。


背景技术:

2.随着智能电表推广与应用,国家电网计划推广具有蓝牙通信功能的外置断路器,要求电能表与断路器通过蓝牙协议进行数据交互。然而,在实际应用中,一个电表箱内往往有多只智能电表分别搭配多只蓝牙断路器。因此,如果a电表配对到了b断路器,就会导致电表a计量的负载属于a断路器,但发送的控制命令却给到了b断路器,从而造成严重的使用问题。而目前提出的通过手持设备扫描获取mac地址,从而设置电表进行配对的方案,不但需要大量描扫设备,也需要人力以及技术要求,限制较大。
3.考虑到电能表与断路器直接相连的特点,可以直接通过电能表外置开关电流,例如断路器电机的运动电流进行编码通信,将断路器蓝牙的mac地址传输给主机,从而实现配对。这样的方案相比前者成本更低,具有更高的可行性。
4.然而,一般的电机本身产生电流的属于模拟信号,受限于设备本身,难以在时序与电位上进行严格的控制,进而影响解码准确性,并且不同的设备也可能因为本身的差别产生不同的电流数值,从而影响解码判断,导致误码率较高。因此一般的编码方式难以直接适用于该场景。


技术实现要素:

5.为了克服现有技术中上述不足,本发明提供一种误码率较低且能在不同设备上适用的一种基于电能表外置开关电流的编解码方法。。
6.本发明通过以下技术方案来实现:一种基于电能表外置开关电流的编解码方法,包括对发送方的电流编码以及接收方的电流解码,具体如下:对于电流编码:每次数据传输包括数据头、数据位两个部分,由不同的电流动作实现,一个电流动作是指在信号周期时间内是否有电流信号;电流信号是通过电能表外置开关电流产生,外置开关控制其内部的电机高频正反转,即短时间内的正转、停止、反转、停止的流程产生电流,并且通过控制正反转时间与静止时间的比例来增强或减弱电流的强度;数据头的传输使用强度明显大于数据位的电流进行传输,通过调整正反转时间的占空比增强电流;对于数据位的传输,采用电流的变化趋势来进行编码,bit“1”,采用电流动作由高跳变到低表示,而bit“0”则由电流动作由低跳变到高表示,每个bit都需要2个电流动作时间来表示;
对于电流解码:首先是电表对外置开关电流进行持续检测,检测方法为对单位时间内的电流求其有效值,然后保存,也就是每个电流动作都会以一个或多个电流有效值的形式保存,从而生成一个电流数组;对于数据头的捕捉,如果当前电流动作以及多个跟随电流动作,其有效电流值明显大于其余的非0有效电流平均值,即数据头电流值大于数据位的电流值,那么把这多个连续电流动作判别为数据头;对于数据位判断,捕捉到数据头后,先按照理论数据头的持续长度进行切分,将数据头部分除去后,对于剩下的电流数据按4个值一组划分,每组内比较前2个值的和与后2个电流值的和的大小,从而通过判断电流趋势进行解码,若判断电流动作变化趋势为从高到低,则判断该位数据为1,否则判断为0。
7.作为优选,数据头内在多个电流动作后跟随有代表静止的0数据用于与数据位的区分。
8.作为优选,对电流动作数组进行3次解码,以检测到的数据头位置及前后各偏移一个数据作为数据头进行解码,将3个解码结果与各理论候选结果的进行码距检测,选择码距最小的作为解码结果,解决外置开关发送数据与电能表接收数据不同步造成的偏差。
9.本发明的有益效果在于:本发明通过更大电流实现数据头的传输,采用电流的变化趋势来进行数据位的编码,可以直接通过电能表外置开关电流进行编码通信,将断路器的蓝牙mac地址传输给主机,从而实现配对,而且本发明误码率较低能在不同设备上适用。
具体实施方式
10.下面结合具体实施方式对本发明作进一步详细说明。
11.一种基于电能表外置开关电流的编解码方法,包括对发送方的电流编码以及接收方的电流解码。
12.其中,电流编码的电流信号是通过电能表外置开关电流产生,通过电机高频正反转,即短时间内的正转、停止、反转、停止的流程产生电流,并且通过控制正反转时间与静止时间的比例来增强或减弱电流的强度。
13.每次数据传输包括数据头、数据位两个部分,由不同的电流动作实现,一个电流动作是指在信号周期时间内是否有电流信号,一般将信号周期设置为电能表电流采样周期相同或整数倍。
14.数据头的传输使用强度明显大于数据位的电流进行传输,通过调整正反转时间的占空比增强电流。
15.对于数据位的传输,采用电流的变化趋势来进行编码,bit“1”,采用电流动作由高跳变到低表示,而bit“0”则由电流动作由低跳变到高表示,每个bit都需要2个电流动作时间来表示。
16.数据头的作用是提醒接收方这是一次数据传输的开始,不仅具备信号接收的提醒功能,也充当了时序信号的功能,对后续数据的解码起到关键作用。接收方需要对后续的数据位进行时序划分,故数据头决定了一次传输是否能被识别读取,并且其位置会影响到对后续数据位的解码,因此对于数据头的传输非常重要。
17.为了保证数据头的传输误差可控,并且保证每次数据头的传输不会被忽略而导致一次数据传输的忽略,同时也保证普通数据位电流不会被误识别为数据头电流,本技术中调用强度更大的电流进行对数据头的传输,即数据头电流明显大于数据位电流。主要是通过调整电机正反转时间的占空比增强电流,这样的电流在解码时会呈现出更高的电流有效值,该电流强度能明显地与数据位的电流强度区分开来,从而保证数据头能被识别到。同时为了保证区分足够明显,数据头的持续时间不能过短,在此基础上,这个数据头的电流动作设计可以根据实际需求更改。
18.在本技术中在数据头内在设多个高电流动作,并后跟随有代表静止的0数据用于与数据位的区分。
19.数据位则是用编码传递二进制的数据信息。对于数据位的传输,我们用电流的变化趋势来进行编码,这一点上与传统编码方式有所区别,传统编码都是基于数字信号,所以时序与幅度上的误差较小。而在本设计的应用场景里,编码都是基于原始的模拟电流信号,无论是时序还是幅度都存在较大误差,因此按位进行编解码的方案适用性较差。因此对于数据位,例如bit“1”,用电流值从高到低的跳变表示,而bit“0”则由电流值低到高的跳变表示。每一个bit都需要2个电流动作时间来表示。这样的优势在于增加了对时序的容错,只要变化趋势一致即可,容许该变化趋势前移或者后移,从而容许一定程度的时序误差。此外也避免了直接对信号绝对幅值进行判断,转为对前后电流相对大小进行判断,从而增加了对电流强度误差的容错,实现了在不同设备上部署的可能。
20.对于电流解码:首先是电表对外置开关电流进行持续检测,检测方法为对单位时间内的电流求其有效值,然后保存,也就是每个电流动作都会以一个或多个电流有效值的形式保存,从而生成一个电流数组。
21.对于数据头的捕捉,如果当前电流动作以及多个跟随电流动作,其有效电流值明显大于其余的非0有效电流平均值,即数据头电流值大于数据位的电流值,那么把这多个连续电流动作判别为数据头。
22.对于数据位判断,捕捉到数据头后,先按照理论数据头的持续长度进行切分,将数据头部分除去后,对于剩下的电流数据按4个一组划分,每组内比较前22个值的和与后2个电流值的和的大小,从而通过判断电流趋势进行解码,若判断电流动作变化趋势为从高到低,则判断该位数据为1,否则判断为0。
23.对于数据头的捕捉,是通过对电流强度进行判断,对于数据位判断,通过判断电流趋势进行解码。若判断电流变化趋势为从高到低,则判断该位数据为1,否则判断为0。这样的优势在于增加了对时序的容错,只要变化趋势一致即可,容许该变化趋势前移或者后移,从而容许一定程度的时序误差。此外也避免了直接对信号绝对幅值进行判断,转为对前后电流相对大小进行判断,从而增加了对电流强度误差的容错,实现了在不同设备上部署的可能。
24.但是这种解码方式在概率比较微小的情况下也可能存在时序误差累积产生错位的情况,也就是说,可能由于数据头的切分不准确,或者电流动作持续时间误差累积导致出现错位,电流动作按组划分可能出现划分错误,导致并非表示1个bit数据的两个电流动作被组合到一起,这样的解码结果会呈现很大的误差。为了避免这种情况的发送。对电流动作
数组进行3次解码,以检测到的数据头位置及前后各偏移一个数据作为数据头进行解码,将3个解码结果与各理论候选结果的进行码距检测,选择码距最小的作为解码结果,解决外置开关发送数据与电能表接收数据不同步造成的偏差。这样最大程度避免了时序误差对解码的影响,更好地降低了通信的误码率。本实例中理论候选结果是从蓝牙信道获取的蓝牙广播的ssid列表。
25.本实例中的电能表外置开关电流来自基于stm8l芯片进行控制,基于sgm42609电机驱动芯片进行电机驱动的断路器电机。检测电流的电能表将以250ms为单位时间,对断路器电流进行分段分别求有效值并保存,并且每个电流动作通过两个电流有效值形式保存。
26.首先由stm8l芯片来进行电机的驱动,具体方式是,先用较强的电流驱动进行数据头的传输。按照2ms正转,1ms不动,2ms反转,3ms不动的循环,进行电流动作。每个电流动作持续两个单位时间,也就是500ms。数据头设计采用3次电流动作以及2个电流0数据,则数据头是由1500ms的电流动作与500ms的静止实现。
27.然后进行数据位的传输,数据位的电流动作则是按照2ms正转,1ms不动,2ms反转,5ms不动的循环进行。由于静止时间的占比更大,其电流值相对数据头明显偏小。通过两个相反的电流动作来表示一个数据位,从而进行数据传输,因此每个数据位占用两个500ms,需要1s的持续时间。
28.例如传输十六进制的12bit的数据“32a”,电能表对断路器电机运动电流进行有效值计算后读取结果如下(均为16进制表示):电能表提取数据解码结果00000000000000121a1a1c1c180000000f130000000f15151300001013000000000f130000101516130000000010151513000000000f161512000000000f130000000000000000001100101010(32a)单下划线数据为数据头,该数据头设计为有6个明显较高的电流数据代表三次电流动作,以及跟随的两个0电流数据,代表静止。可以看到数据头在持续时间上更长,且电流强度更大,因此更易于区分与捕捉,有利于电能表进行接收解码。因此解码时,对数据头的捕捉即为对接收电流强度进行计算,与剩下的非0电流数据均值进行比较,如果有明显的大于关系,则确认为数据头。
29.然后后续的数据每四个一组进行划分,分别用下双划线与下虚线表示,代表了表示电流趋势的动作。通过前后电流动作电流值的大小比较,成功解码出传输的信息。具体解码方法是,在确认数据头位置后,按每组四个数据进行划分,对于每一组数据,比较前两个数据之和与后两个数据之和的大小,从而判断趋势进行解码。
30.最终解码结果如右边所示。可以看到通过该编码方式成功进行了数据的传输与解码,并未出现误码的情况。因此该基于电能表外置开关电流的通信编码方式可以误码率较低地传输数据信息,且具备在不同设备上适用的能力。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献