一种RF无线唤醒方法和系统与流程

文档序号:28216809发布日期:2021-12-28 22:24阅读:273来源:国知局
一种RF无线唤醒方法和系统与流程
一种rf无线唤醒方法和系统
技术领域
1.本发明涉及一种无线通讯技术领域,特别涉及一种rf无线唤醒方法和系统。


背景技术:

2.在rf通信的低功耗应用中,发送端先持续发送唤醒帧后再去抄读数据。被唤醒节点只有在抄表时候知道目标节点。在rf通信的低功耗应用中,发送端会持续发送唤醒帧,持续时间需要覆盖节点的1个sleep时间加2个active时间,一般会持续4秒。而非目标节点被唤醒后,可能需要在4秒后发送端抄表才发现不是抄读自己。在这4秒的时间运行白白浪费功耗,并且在发送唤醒帧阶段不能告知目标地址,从而使周围收到唤醒帧的节点都被唤醒。


技术实现要素:

3.本发明其中一个发明目的在于提供一种rf无线唤醒方法和系统,所述方法和系统在唤醒帧中根据不同帧之间的空闲时间长度添加目标节点的标志,使得在不增加传输时间长度的情况下识别是否是唤醒节点自身,若是则节点自身执行唤醒抄表操作,若否则直接进入睡眠模式,从而减少误唤醒后运行时间,进而降低功耗。
4.本发明另一个发明目的在于提供一种rf无线唤醒方法和系统,所述方法和系统将rf无线帧中的多个非前导码的字段替换伪装成前导码,并将所述无线帧中的部分字节删除用于生成预唤醒信号,可以识别前导码的个数来判断是否进行唤醒,从而可以提高唤醒的成功率。
5.本发明另一个发明目的在于提供一种rf无线唤醒方法和系统,所述方法和系统设置唤醒检测时间,所述唤醒检测时间内具有相邻两个rf无线帧之间的休眠时间,并增加至少一个前导码的检测时间,在rf无线帧全伪装条件下可以检测至少一个前导码作为唤醒条件,从而大幅提高唤醒成功率和效率。
6.为了实现至少一个上述发明目的,本发明进一步提供一种rf无线唤醒方法,所述方法包括:
7.获取rf无线唤醒帧,并在唤醒帧中添加唤醒节点标志,生成修改唤醒帧;
8.将所述修改唤醒帧发送给至少一个接收节点,接收节点获取所述修改唤醒帧的唤醒节点标志;
9.判断获取的所述唤醒节点标志是否和当前接收节点一致;
10.若唤醒节点标志和当前接收节点一致,则执行唤醒操作。
11.根据本发明其中一个较佳实施例,获取所述rf无线唤醒帧中的前导码,并将所述rf无线唤醒帧中其他字段数据均替换为和所述前导码相同的值,用于将所有rf无线唤醒帧数据伪装成所述前导码。
12.根据本发明另一个较佳实施例,rf无线帧包括前导码、id code字段、payload字段和crc字段,其中所述rf无线唤醒帧删除所述crc字段,并将所述id code字段和payload字段的值均替换为所述前导码值。
13.根据本发明另一个较佳实施例,当修改的唤醒帧发送给接收节点后,所述接收节点执行预唤醒操作,其中所述预唤醒操作方法包括:
14.获取rf无线唤醒帧的前导码传输时间;
15.获取相邻两个rf无线帧之间间隔的空闲时间;
16.计算预唤醒检测时间,在所述预唤醒检测时间内检测无线唤醒帧中的前导码值;
17.若存在至少一个前导码值则执行接收节点的预唤醒运行。
18.根据本发明另一个较佳实施例,其中所述预唤醒检测时间包括至少2个前导码传输时间和至少1个所述空闲时间,且根据所述空闲时间的长度在所述rf无线唤醒帧中修改相同长度的字段值为所述唤醒节点标志。
19.根据本发明另一个较佳实施例,预设预唤醒检测阈值,若接收节点检测的rf无线唤醒帧中前导码字段数小于所述预唤醒检测阈值,则所述接收节点执行睡眠操作,否则接收节点执行预唤醒运行。
20.根据本发明另一个较佳实施例,在执行接收节点的预唤醒操作后,进一步检测获取rf无线唤醒帧中的所述唤醒节点标志,并将该唤醒节点标志和当前预唤醒节点内保存的节点标志是否一致,若一致则执行当前节点的唤醒操作。
21.根据本发明另一个较佳实施例,若唤醒节点检测获取的rf无线唤醒帧中的所述唤醒节点标志和当前预唤醒节点保存的节点标志不同,则所述当前预唤醒节点执行睡眠操作。
22.根据本发明另一个较佳实施例,所述预唤醒检测时间的计算方法包括:
23.计算获取当前rf无线通讯速率;
24.计算前导码字段的字节数,
25.根据所述当前rf无线通讯速率计算前导码传输速率;
26.计算相邻rf无线帧之间间隔的空闲时间长度,根据预唤醒检测时间构建规则计算最终的预唤醒检测时间。
27.为了实现至少一个上述发明目的,本发明进一步提供一种rf无线唤醒系统,所述唤醒系统执行上述一种rf无线唤醒方法。
附图说明
28.图1显示是本发明一种rf无线唤醒方法的流程示意图。
具体实施方式
29.以下描述用于揭露本发明以使本领域技术人员能够实现本发明。以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变型。在以下描述中界定的本发明的基本原理可以应用于其他实施方案、变形方案、改进方案、等同方案以及没有背离本发明的精神和范围的其他技术方案。
30.可以理解的是,术语“一”应理解为“至少一”或“一个或多个”,即在一个实施例中,一个元件的数量可以为一个,而在另外的实施例中,该元件的数量可以为多个,术语“一”不能理解为对数量的限制。
31.请参考图1显示的本发明一种rf无线唤醒方法的流程示意图,所述方法首先包括:
获取rf无线帧,并将所述rf无线帧改成可以用于唤醒的rf无线唤醒帧,其中所述rf无线唤醒帧的生成方法包括:
32.获取当前rf无线帧的前导码(preamble)字段值、id code(身份码)字段值和payload(有效负载)字段值,其中上述3个字段值将依次进行排序,并根据所述前导码的字段值替换所述id code字段值和payload字段值,比如所述前导码的字段值为0xaa,所述id code字段值和payload字段值都为(1011),则将替换后所述rf无线帧连续的字段值为:0xaa0xaa0xaa,将该连续的字段值作为所述rf无线唤醒帧,用于后续预唤醒和唤醒操作。上述替换可使得将所述id code字段和payload字段都伪装成了所述前导码,使得所述前导码的占比更大,因此后续通过前导码判断唤醒步骤时可以更准确。
33.其中在传统的rf无线帧还包括crc(计算循环冗余校验)字段值,但在本发明中为了减少数据传输压力,本发明生成的rf无线唤醒帧将所述crc(计算循环冗余校验)字段值删除,仅保留id code字段和payload字段,减少非前导码所占用的空间。
34.值得一提的是,受到rf无线帧长度限制,需要多帧发送才能执行唤醒操作,也就是说所述rf无线唤醒帧所执行的唤醒操作长度可能大于一个前导码的长度,并且相邻rf无线唤醒帧之间存在帧间隔的空闲时间,由于识别行为所识别的是连续的字段值,因此该空闲时间也对唤醒操作产生一定的影响,因此为了提高唤醒成功率,同时也降低唤醒功耗,本发明设置预唤醒操作。其中设置相邻rf无线帧间隔的空闲时间为t
idle
,设置前导码检测时间t
preamble
,所述前导码检测时间为接收节点检测前导吗的最小时间,该最小时间一般为前导码的在rf无线通讯中的传输时间,进一步计算预唤醒检测时间t
active
,其中所述预唤醒检测时间t
active
=n*t
preamble
+t
idle
其中n参数可设置大于1的数值,其中在本发明一个优选实施例中,所述n参数设置为2。所述预唤醒检测时间用于检测所述rf无线唤醒帧的字段值,由于之前将id code字段值和payload字段值都进行了替换,并且同时考虑了帧间隔的空闲时间,因此所述预唤醒检测时间在正常情况下每次都能检测到至少一个所述前导码,用于预唤醒接收节点的运行。
35.在本发明其中一个较佳实施例中,可以设置预唤醒检测阈值,若经过所述预唤醒检测时间内检测到的rf无线唤醒帧中前导码的数量大于所述预唤醒检测阈值,则执行接收节点的预唤醒操作。
36.需要说明的是,本发明的核心在于每次唤醒操作使得当前节点都能知道唤醒节点标志,从而可以避免误唤醒的操作在接收节点的出现,具体方法如下:选取预唤醒的目标接收节点的标志,该标志在同一节点集群中是唯一的,并且所有接收节点的标志都预先设置并获取,每一接收节点自身的标志保存于自身节点中,用于后续对比判断。将选取出的目标节点的标志替换当前的rf无线唤醒帧中的字段值,其中所述标志的长度可以设置为相邻两个rf无线唤醒帧之间的空闲时间对应的字节长度,该空闲长度根据rf无线通讯速率决定,一般rf无线通讯速率越高,对应的标志的长度越短。当完成在所述rf无线唤醒帧字段值的替换后,所述接收节点可以获取修改的rf无线唤醒帧字段值,并根据修改的rf无线唤醒帧字段值判断是否存在和当前接收节点相同的节点标志,若存在则执行唤醒操作,其中所述唤醒操作包括:唤醒接收节点开始运行,并向发送节点发出响应信息,发射节点反馈给唤醒的接收节点真实的rf无线帧,之前发射节点发射的都是伪装成前导码且不存在crc字段的数据,只有在唤醒后才能获得包括前导码(preamble)字段值、id code(身份码)字段值、
payload(有效负载)字段值和crc(计算循环冗余校验)字段值真实的rf无线帧,进一步执行后续的包括但不仅限于电能表抄表行为。
37.由于rf无线通讯速率会影响所述预唤醒检测时间的范围,因此本发明提供两个具体实施例说明本发明的技术方案。
38.实施例一:
39.1、发送方发送唤醒帧
40.受到rf射频芯片的限制,一般帧最小间隔为0.2毫秒,在rf无线100kbps速率通讯中,传输一个字节的时间t
byte
为8bit/100k=0.08毫秒。
41.那么t
preamble
时间为:t
preamble
=4*0.08=0.32ms
42.那么t
active
为:
43.t
active
=2*t
preamble
+t
idle
44.ꢀꢀꢀꢀꢀ
=2*0.32+0.2
45.ꢀꢀꢀꢀꢀ
=0.84ms
46.间隔时间t
idle
时间可以传输字节数n为:
47.n=t
idle
/0.08=0.2/0.08=2这里需要取整数,且整数值不大于真实值。
48.进一步可以在payload字段中添加目标接收节点2个字节地址作为目标节点的标志。那么唤醒帧的内容为:
[0049][0050]
其中xxxx是目标接收节点的地址的2个字节的标志。这里payload为64字节,那么发送一帧唤醒帧的时间t
wake
为:
[0051]
t
wake
=(4+4+64)*t
byte
[0052]
ꢀꢀꢀꢀ
=72*0.08
[0053]
ꢀꢀꢀꢀ
=5.76ms
[0054]
2、接收节点接收唤醒帧
[0055]
接收节点也需要将id code配置为0xaaaaaaaa,并且去掉crc部分。当接收节点在预唤醒active期间检测到前导码即可唤醒,这时候进入预唤醒阶段。
[0056]
其中唤醒帧时序和接收帧时序之间相差4秒+2*t
active
,这里设定节点的睡眠时间t
sleep
为4秒。节点会间隔4秒起来检测一次空中信号,这就需要发送端发送唤醒帧需要最少持续t
sleep
+2*t
active
时间。由于一条帧长度有限,实际上在t
sleep
+2*t
active
期间发送了m条唤醒帧。
[0057]
m=(t
sleep
+2*t
active
)/(t
wake
+t
idle
)
[0058] =(4000+2*0.84)/(5.76+0.2)
[0059] =671.4
[0060] =672(这里需要进位取整)。
[0061]
3、接收方判断唤醒帧
[0062]
在接收节点进入预唤醒阶段后,等待接收完成的唤醒帧,并判断payload中的地址标志信息xxxx是否与自己的地址相符。如果是则节点进入接收帧状态。节点需要将id code字段值还原为原来的真实值,并开启crc字段,等待接收数据。如果不是则节点立即进入睡眠模式。
[0063]
实施例二:
[0064]
1、发送方发送唤醒帧
[0065]
受到rf射频芯片的限制,一般帧最小间隔为0.2毫秒,在rf无线50kbps速率通讯中,传输一个字节的时间t
byte
为8bit/50k=0.16毫秒。
[0066]
那么t
preamble
时间为:t
preamble
=4*0.16=0.64ms
[0067]
那么t
active
为:
[0068]
t
active
=2*t
preamble
+t
idle
[0069]
ꢀꢀꢀꢀꢀ
=2*0.64+0.2
[0070]
ꢀꢀꢀꢀꢀ
=1.48ms
[0071]
间隔时间t
idle
时间可以传输字节数n为:
[0072]
n=t
idle
/0.16=0.2/0.16=1这里需要取整数,且整数值不大于真实值。
[0073]
进一步可以在payload中添加目标接收节点的1个字节地址作为目标接收节点的标志。那么唤醒帧的内容为:
[0074][0075]
其中xx是目标接收节点的地址的1个字节的标志。这里payload为64字节,那么发送一帧唤醒帧的时间t
wake
为:
[0076]
t
wake
=(4+4+64)*t
byte
[0077]
ꢀꢀꢀꢀ
=72*0.16
[0078]
ꢀꢀꢀꢀ
=11.52ms
[0079]
2、接收方接收唤醒帧
[0080]
接收节点也需要将id code配置为0xaaaaaaaa,并且去掉crc部分。当接收节点在active期间检测到前导码即可唤醒,这时候进入预唤醒阶段。
[0081]
其中唤醒帧时序和接收帧时序之间相差4秒+2*t
active
,这里设定节点的sleep时间t
sleep
为4秒。节点会间隔4秒起来检测一次空中信号,这就需要发送端发送唤醒帧需要最少持续t
sleep
+2*t
active
时间。由于一条帧长度有限,实际上在t
sleep
+2*t
active
期间发送了m条唤醒帧。
[0082]
m=(t
sleep
+2*t
active
)/(t
wake
+t
idle
)
[0083] =(4000+2*1.48)/(11.52+0.2)
[0084] =341.5
[0085] =342(这里需要进位取整)
[0086]
3、接收方判断唤醒帧
[0087]
节点进入预唤醒阶段后,等待接收完成的唤醒帧,并判断payload中的地址标志信息xx是否与自己的地址相符。如果是则节点进入接收帧状态。节点需要将id code字段还原为原来的值,并开启crc字段,等待接收数据。如果不是则节点立即进入睡眠模式。
[0088]
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理单元(cpu)执行时,执行本技术的方法中限定的上述功能。需要说明的是,本技术上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线段、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线段的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线段、电线段、光缆、rf等等,或者上述的任意合适的组合。
[0089]
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0090]
本领域的技术人员应理解,上述描述及附图中所示的本发明的实施例只作为举例而并不限制本发明,本发明的目的已经完整并有效地实现,本发明的功能及结构原理已在实施例中展示和说明,在没有背离所述原理下,本发明的实施方式可以有任何变形或修改。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1