一种无线遥控控制协议和无线遥控系统的制作方法_2

文档序号:9788340阅读:来源:国知局
包前的数据 帧来推算。如:丢包前的最后一个数据帧{H0LD,m}的时间码为tl,丢包后收到的第一个数据 帧{RELEASE,η}的时间码为12,则推算出{HOLD,m+1}的时间码为11+T2,{HOLD,η}的时间码 为tl+(n _m)*T2;
[0045] c)如果属于一次"触发-保持-恢复"过程中,最后一个或几个帧丢了,未收到本次 操作的RELEASE却收到新的操作(操作序号发生改变),操作端可以认为本次操作结束,以已 收到的帧为基础,推算发送端的RELEASE操作,并通知主控模块的处理,根据丢包前的数据 帧来推算。如:丢包前的最后一个数据帧{HOLD,n}的时间码为t,则推算出{RELEASE,n}的时 间码为t。
[0046] 当触发类元件出现"抖动"操作,所述的遥控器的主控模块可以进行过滤"抖动"操 作,将极短时间内的多次触发和恢复视为一次触发和恢复。
[0047] 本发明的有益效果是:与现有技术相比,有如下有益效果:
[0048] 1.本发明在无线网络传输丢包的情况下,被遥控设备可以根据已收到的数据帧推 算丢失的数据帧,降低丢包对遥控操作的影响。
[0049] 2.本发明中的遥控器面对不同的操作类型,发送数据帧的逻辑是不变的,即使根 据业务需要定义了新的操作类型,遥控器也不需要升级或更换,只需修改被遥控设备的主 控模块中的逻辑即可。
[0050] 3.本发明应用于网络环境特别差的情况时,可以利用"录制操作命令-重发操作命 令"的方式,用户不用一遍一遍地进行复杂操作,如果发现被遥控设备没有正确的动作,只 要重发录制好的操作命令即可。
[0051] 4.本发明应用于一个遥控器控制两个及两个以上设备的情况时,可以利用"录制 操作命令-重发操作命令"的方式,解决遥控器不能良好覆盖所有设备的情况。用户不用一 遍一遍地进行复杂操作,只需将遥控器移动到离设备较近的位置,重发录制好的操作命令 即可。
【附图说明】
[0052]图1是本发明的无线遥控系统的结构框图。
[0053]图2是本发明的遥控器优选方案的结构框图。
[0054]图3是本发明的一个遥控器控制一个被遥控设备流程图。
[0055] 图4是本发明的一个遥控器控制两个以上被遥控设备流程图。
【具体实施方式】
[0056] 下面将结合附图与具体实施例对本发明作详细的说明,但不限于以下实施例。 [0057] 如图1所示的一种无线遥控系统,它包括遥控器和被遥控设备,遥控器与被遥控设 备通过无线通讯技术相连,实现遥控器向被遥控设备发送操作命令。所述遥控器包括触发 类操作元件、主控模块、时钟模块和发送模块。所述的被遥控设备包括接收模块、时钟模块 和主控模块。遥控器的发送模块通过无线通讯技术向被遥控设备的接收模块发送操作命 令,其中无线通讯技术包括但不限于:Wi_Fi、蓝牙、Zigbee。所述的遥控器的触发类操作元 件包括但不限于:按钮、触摸开关、扳机。
[0058]如图2、图3、图4所示,所述的遥控器还包括存储模块,将一个或多个操作命令录制 到存储模块中,当无线网络环境差导致丢包严重,不能修复丢包错误,此时遥控器还可以重 新发送操作命令。所述的遥控器遥控两个及两个以上被遥控设备时,会出现遥控器的无线 信号不能良好覆盖全部设备的情况,可以将操作命令录制到存储模块中,再将遥控器移动 到无线信号良好覆盖被遥控设备的位置,分批向被遥控设备发送操作命令。
[0059] 本发明的无线遥控系统包含无线遥控控制协议,遥控器的发送模块向被遥控设备 的接收模块之间发送的操作命令是以数据帧的形式传输的。每一帧数据包括:遥控器ID、时 间码、遥控指令。遥控指令包括:按钮ID、原子操作、操作序号、操作参数。
[0060] 本发明的无线遥控系统中包含的无线遥控控制协议,具体包括如下内容:
[0061] a)不同的遥控器,遥控器ID不一样。接收模块中存储了遥控器ID集合(包括一个或 两个及以上遥控器ID),如果收到的数据帧中的遥控器ID不处于该集合中,则认为整个数据 帧无效,不处理;主控模块定义了操作类型,"单击","双击"和"长按";如:按钮保持触发态 的时间短于一定时间(如1秒)后恢复,为"单击"操作,对应某功能(如遥控摄像头拍照);按 钮连续两次"单击"之间的间隔短于一定时间(如0.8秒),为"双击"操作,对应某功能(如遥 控摄像头开始录像);按钮保持触发态的时间长于一定时间(如1秒)后恢复,为"长按"操作, 对应某功能(如遥控摄像头结束录像)。
[0062] b)此控制协议定义了一个时间周期T1。时间码是遥控器的时钟模块对ΤΙ的计数。 当计数达到此字段的最大值时,下一次计数设置为〇;
[0063] c)不同的按钮,按钮ID不一样;
[0064] d)原子操作包括:触发(PRESS)、保持触发态(HOLD)、恢复为未触发态(RELEASE);
[0065] e)每个"触发-保持-恢复"过程中,操作序号是一致的,每经过一次"触发-保持-恢 复"过程,操作序号增加1。如果操作序号达到这个字段的最大值,下一次"触发-保持-恢复" 过程将操作序号设置为〇。
[0066] 本发明的无线遥控控制协议包括以下实施步骤:
[0067] a)遥控器的主控模块检测到按钮被触发(从未触发态进入触发态)时,通知发送模 块,发送模块发送的原子操作为PRESS,操作参数为0;
[0068] b)此控制协议定义了一个时间周期T2,T2是T1的正整数倍,遥控器的主控模块检 测到按钮保持触发态的时间每达到1个Τ2时,通知发送模块,发送模块发送的原子操作为 HOLD,操作参数为此次"触发-保持-恢复"过程中,Τ2的计数。每个"触发-保持-恢复"过程结 束时,此计数设置为0;按钮保持触发态的时间每达到1个T2,此计数增加1。如果此计数达到 操作参数这个字段的最大值,按钮保持触发态的时间再达到1个T2时,将此计数设置为0;
[0069] c)遥控器的主控模块检测到按钮从触发态恢复为未触发态时,通知发送模块,发 送模块发送的原子操作为RELEASE,操作参数为按钮保持触发态时经过的T2的计数;
[0070] d)如果网络正常,没有发生丢包,那么被遥控设备的接收模块会依次收到PRESS、 HOLD、RELEASE的数据帧(或者依次收到PRESS、RELEASE的数据帧),并通知主控模块。主控模 块根据接收模块报告的原子操作,触发相应的功能。主控模块定义了操作类型(如:按钮保 持触发态的时间短于1秒后恢复,为"单击"操作,对应某功能)。
[0071] 如果一次"触发-保持-恢复"过程中,前一个或几个帧丢了(即:收到的第一个帧是 HOLD或者RELEASE),接收端可以推算丢失的遥控指令,并通知主控模块。
[0072]它包括以下实施步骤:
[0073] a)如果收到的是{H0LD,n}(原子操作为HOLD,操作参数为η),那么推算出{PRESS, 〇}、
[0074] {H0LD,1}……{H0LD,n_l};
[0075] b)如果收到的是{RELEASE, η},那么推算出{PRESS,0}、{HOLD, 1}……{HOLD, η}。
[0076] 如果一次"触发-保持-恢复"过程中,中间一个或几个帧丢了,接收端可以根据丢 包前后的数据帧推算出丢失的遥控指令,并通知主控模块。
[0077]它包括以下实施步骤:
[0078] a)如果收到的是{PRESS,0},{RELEASE,η},那么推算出{HOLD, 1}……{HOLD,η};
[0079] b)如果收到的是{PRESS,0},{HOLD,η},那么推算出{HOLD, 1}……{H0LD,n_l};
[0080] C)如果收到的是{HOLD,m},{RELEASE,η},那么推算出{HOLD,m+1}……{HOLD,η};
[0081] d)如果收到的是{HOLD,m},{HOLD,η},那么推算出{HOLD,m+1}……{H0LD,n_l};
[0082] 如果一次"触发-保持-恢复"过程中,最后一个或几个帧丢了,未收到本次操作的 RELEASE却收到新的操作(操作序号发生改变),操作端可以认为本次操作结束,以已收到的 帧为基础,推算发送端的RELEASE操作,并通知主控模块,同时开始处理新的一个"触发-保 持-恢复"过程。
[0083]它包括以下实施步骤:
[0084] a)如果在收到{PRESS,0}后收到新的操作,那么推算出{RELEASE,0};
[0085] b)如果在收到{H0LD,n}后收到新的操作,那么推算出{RELEASE,n};
[0086] 收到的新操作如果不是PRESS,那么根据一次"触发-保持-恢复"过程中,前一个或 几个帧丢了(即:收到的第一个帧是HOLD或者RELEASE),接收端可以推算丢失的遥控指令, 并通知主控模块处理。
[0087]此控制协议定义了一个超时计数N,如果一次"触发-保持-恢复"过程中,连续丢包 计数超过N,( 即:收到某个PRESS或HOLD帧后,经过N个T2的时间,都没有收到数据帧),接收 端可以认为本次操作超时,以已收到的帧为基础,推算发送端的RELEASE操作,并通知主控 模块。
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1