一种基于动态令牌的多用户可见光双向通信方法及系统与流程

文档序号:18225914发布日期:2019-07-19 23:26阅读:152来源:国知局
一种基于动态令牌的多用户可见光双向通信方法及系统与流程
本发明涉及可见光通信
技术领域
,尤其涉及一种基于动态令牌的多用户可见光双向通信方法及系统。
背景技术
:随着5g通信技术的到来,基于可见光通信的室内组网成为未来5g的一种末端接入方式。可见光通信末端接入网络的基本组成如图7所示,可见光照明通信灯兼具照明和通信功能,通过网络接口连接广域网,下端覆盖多个移动用户终端。使用led下行广播数据,使用pd(photo-diode,光电二极管)接收用户终端的上行数据,实现可见光接入点功能。用户终端使用pd接收广播数据,从中选择地址为自身的数据进行处理,通过led向灯发送数据,实现了一个可见光双向多用户通信系统。因灯上只有一个pd接收器,当终端多个led同时发送数据时,将发生冲突导致灯上无法接收。此问题类似于以太网和wifi中的共享信道碰撞问题,针对这个问题,ieee802.15.7提出使用csma/ca机制来实现冲突避免。csma/ca机制借鉴自wifi体系,其设计较为复杂,且不同于无线电通信,由于led和pd的高度定向性,用户终端除本节点外,其余节点全部是“隐藏节点”,完全不可能进行载波监听,因此csma/ca的一些机制是不起作用的。因此,如何避免csma/ca的复杂机制,如何方便简单的实现多用户可见光双向通信,提高网络吞吐率,是一项亟待解决的问题。技术实现要素:有鉴于此,本发明提供了一种基于动态令牌的多用户可见光双向通信方法,能够基于令牌的多用户控制体系,使用轮询方法避免冲突,使用申请接入方法来实现令牌网动态可变,进而方便简单的实现了多用户可见光双向通信,实现了可见光双向网络多用户动态接入并提高了网络吞吐率。本发明提供了一种基于动态令牌的多用户可见光双向通信方法,包括:用户终端邀请接入阶段、用户终端申请接入阶段、可见光照明通信灯数据传输阶段和用户终端数据传输阶段;其中:所述用户终端邀请接入阶段,包括:广播邀请接入帧;判断是否收到用户终端发送的申请接入帧,若是,则:将发送申请接入帧的用户终端地址加入终端表;发送确认接入帧,进入可见光照明通信灯数据传输阶段;所述用户终端申请接入阶段,包括:在接收到可见光照明通信灯广播的邀请接入帧后,判断退避计数是否为0,若是,则:发送申请接入帧;判断是否收到可见光照明通信灯发送的确认接入帧且地址正确,若是,则:进入用户终端数据传输阶段;所述可见光照明通信灯数据传输阶段,包括:判断广域网是否有mac帧需要发送,若是,则广播数据帧,若否,则:判断终端表中是否还有未轮询的终端,若否,则进入用户终端邀请接入阶段,若是,则:从终端表中读取一个终端地址x,广播发送令牌x;判断是否收到用户终端回应,若是,则:判断收到的回应是否为占位帧,若否,则提取mac帧传给广域网,若是,则:标记终端地址x为已轮询;所述用户终端数据传输阶段,包括:判断是否接收到数据帧,若是,则提取mac帧传给用户终端mac层,若否,则:判断是否接收到邀请接入帧,若否,则:判断接收到令牌且地址为本机,若是,则掉线指示设0;判断用户终端mac层是否有帧需要发送,若是,则发送1个数据帧,若否,则:发送1个占位帧。优选地,在所述用户终端数据传输阶段,当接收到邀请接入帧后,还包括:判断掉线指示是否为0,若否,则进入用户终端申请接入阶段,若是,则:将掉线指示设为1。优选地,在所述可见光照明通信灯数据传输阶段,在未收到用户终端回应后,还包括:将终端地址x从终端表中删除。优选地,在所述用户终端申请接入阶段,在退避计数不为0时,还包括:将退避计数减1;在未收到可见光照明通信灯发送的确认接入帧且地址不正确时,还包括:退避计数赋值。优选地,在所述用户终端邀请接入阶段,在未收到用户终端发送的申请接入帧时,还包括:进入可见光照明通信灯数据传输阶段。一种基于动态令牌的多用户可见光双向通信系统,包括:用户终端邀请接入阶段处理模块、用户终端申请接入阶段处理模块、可见光照明通信灯数据传输阶段处理模块和用户终端数据传输阶段处理模块;其中:所述用户终端邀请接入阶段处理模块,用于:广播邀请接入帧;判断是否收到用户终端发送的申请接入帧,若是,则:将发送申请接入帧的用户终端地址加入终端表;发送确认接入帧,进入可见光照明通信灯数据传输阶段;所述用户终端申请接入阶段处理模块,用于:在接收到可见光照明通信灯广播的邀请接入帧后,判断退避计数是否为0,若是,则:发送申请接入帧;判断是否收到可见光照明通信灯发送的确认接入帧且地址正确,若是,则:进入用户终端数据传输阶段;所述可见光照明通信灯数据传输阶段处理模块,用于:判断广域网是否有mac帧需要发送,若是,则广播数据帧,若否,则:判断终端表中是否还有未轮询的终端,若否,则进入用户终端邀请接入阶段,若是,则:从终端表中读取一个终端地址x,广播发送令牌x;判断是否收到用户终端回应,若是,则:判断收到的回应是否为占位帧,若否,则提取mac帧传给广域网,若是,则:标记终端地址x为已轮询;所述用户终端数据传输阶段处理模块,用于:判断是否接收到数据帧,若是,则提取mac帧传给用户终端mac层,若否,则:判断是否接收到邀请接入帧,若否,则:判断接收到令牌且地址为本机,若是,则掉线指示设0;判断用户终端mac层是否有帧需要发送,若是,则发送1个数据帧,若否,则:发送1个占位帧。优选地,所述用户终端数据传输阶段处理模块,还用于:当接收到邀请接入帧后,判断掉线指示是否为0,若否,则进入用户终端申请接入阶段,若是,则:将掉线指示设为1。优选地,所述可见光照明通信灯数据传输阶段处理模块,还用于:在未收到用户终端回应后,将终端地址x从终端表中删除。优选地,所述用户终端申请接入阶段处理模块,还用于:在退避计数不为0时,将退避计数减1;在未收到可见光照明通信灯发送的确认接入帧且地址不正确时,退避计数赋值。优选地,所述用户终端邀请接入阶段处理模块,还用于:在未收到用户终端发送的申请接入帧时,进入可见光照明通信灯数据传输阶段。综上所述,本发明公开了一种基于动态令牌的多用户可见光双向通信方法,包括:用户终端邀请接入阶段、用户终端申请接入阶段、可见光照明通信灯数据传输阶段和用户终端数据传输阶段;其中:用户终端邀请接入阶段,包括:广播邀请接入帧;判断是否收到用户终端发送的申请接入帧,若是,则:将发送申请接入帧的用户终端地址加入终端表;发送确认接入帧,进入可见光照明通信灯数据传输阶段;用户终端申请接入阶段,包括:在接收到可见光照明通信灯广播的邀请接入帧后,判断退避计数是否为0,若是,则:发送申请接入帧;判断是否收到可见光照明通信灯发送的确认接入帧且地址正确,若是,则:进入用户终端数据传输阶段;可见光照明通信灯数据传输阶段,包括:判断广域网是否有mac帧需要发送,若是,则广播数据帧,若否,则:判断终端表中是否还有未轮询的终端,若否,则进入用户终端邀请接入阶段,若是,则:从终端表中读取一个终端地址x,广播发送令牌x;判断是否收到用户终端回应,若是,则:判断收到的回应是否为占位帧,若否,则提取mac帧传给广域网,若是,则:标记终端地址x为已轮询;用户终端数据传输阶段,包括:判断是否接收到数据帧,若是,则提取mac帧传给用户终端mac层,若否,则:判断是否接收到邀请接入帧,若否,则:判断接收到令牌且地址为本机,若是,则掉线指示设0;判断用户终端mac层是否有帧需要发送,若是,则发送1个数据帧,若否,则:发送1个占位帧。本发明能够基于令牌的多用户控制体系,使用轮询方法避免冲突,使用申请接入方法来实现令牌网动态可变,进而方便简单的实现了多用户可见光双向通信,实现了可见光双向网络多用户动态接入并提高了网络吞吐率。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明公开的一种基于动态令牌的多用户可见光双向通信方法的流程图;图2为本发明公开的用户终端邀请接入阶段流程图;图3为本发明公开的用户终端申请接入阶段流程图;图4为本发明公开的可见光照明通信灯数据传输阶段流程图;图5为本发明公开的用户终端数据传输阶段流程图;图6为本发明公开的一种基于动态令牌的多用户可见光双向通信系统的结构示意图;图7为本发明公开的可见光通信末端接入网络的基本组成示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。如图1~图5所示,为本发明公开的一种基于动态令牌的多用户可见光双向通信方法实施例的流程图,所述方法应用于可见光照明通信灯和多个用户终端;其中,每个用户终端具有一个唯一的地址码,成为终端地址。在以太网层下增加可见光传输层,打包和解包可见光传输帧,并提供令牌控制功能。其中,可见光传输帧的基本结构为:同步头、帧类型、帧大小和帧内容,同步头为伪随机序列,用于接收端帧同步,帧类型和对应的帧内容如表1所示:表1帧类型和对应的帧内容类型码帧类型方向帧内容000邀请接入下行空001申请接入上行本机终端地址010确认接入下行申请者终端地址011发送令牌下行终端地址100占位上行空101数据上下行mac帧其中,帧大小为帧内容大小(字节),可见光照明通信灯中存储有接入终端表,终端表的内容为已成功接入的终端地址。具体的,所述方法可以包括:用户终端邀请接入阶段、用户终端申请接入阶段、可见光照明通信灯数据传输阶段和用户终端数据传输阶段;其中:如图2所示,在用户终端邀请接入阶段,可见光照明通信灯广播邀请接入帧,在等待一段时间后,判断是否收到用户终端发送的申请接入帧,若是,则:将发送申请接入帧的用户终端地址加入终端表,然后发送确认接入帧,进入可见光照明通信灯数据传输阶段;当判断未收到用户终端发送的申请接入帧时,直接进入可见光照明通信灯数据传输阶段。当多个用户终端同时申请接入时,申请接入帧可能冲突,此时可见光照明通信灯上无法接收到正确的申请接入帧,因此不会回应或者回应的地址错误。此时,用户终端随机退避等待接收到若干轮邀请接入帧后再发送接入申请。退避赋值使用指数退避算法,可以有效的避免发送申请冲突。具体的,如图3所示,在用户终端申请接入阶段,在接收到可见光照明通信灯广播的邀请接入帧后,判断退避计数是否为0,若是,则:发送申请接入帧,然后判断是否收到可见光照明通信灯发送的确认接入帧且地址正确,若是,则:进入用户终端数据传输阶段;在判断退避计数不为0时,将退避计数减1,并返回重新等待邀请接入帧;在判断未收到可见光照明通信灯发送的确认接入帧且地址不正确时,进行退避计数赋值,并返回重新等待邀请接入帧。在可见光照明通信灯数据传输阶段,可见光照明通信灯依次向已接入的每个用户终端发送令牌,如果在一定时间内没有收到数据包或占位包,则认为该用户终端已掉线。具体的,如图4所示,在可见光照明通信灯数据传输阶段,首先判断广域网是否有mac帧需要发送,若是,则广播数据帧,若否,则:判断终端表中是否还有未轮询的终端,若否,则进入用户终端邀请接入阶段,若是,则:从终端表中读取一个终端地址x,广播发送令牌x;然后判断是否收到用户终端回应,若是,则:判断收到的回应是否为占位帧,若否,则提取mac帧传给广域网,若是,则:标记终端地址x为已轮询,并返回判断广域网是否有mac帧需要发送;当未收到回应时,从终端表中删除终端地址x,并返回重新判断广域网是否有mac帧需要发送。终端设备接收到令牌后必须发送1个数据帧,如果无数据需要发送则必须发送一个占位帧。考虑到发送的帧有可能丢失,终端设备有可能被动掉线,如果没有收到令牌而两次收到了邀请接入帧(通过设置掉线指示来判决),证明可见光照明通信灯认为本终端设备已掉线,终端设备应重新申请接入。具体的,如图5所示,在用户终端数据传输阶段,首先判断是否接收到数据帧,若是,则提取mac帧传给用户终端mac层,若否,则:判断是否接收到邀请接入帧,若否,则:判断接收到令牌且地址为本机,若是,则掉线指示设0;判断用户终端mac层是否有帧需要发送,若是,则发送1个数据帧,若否,则:发送1个占位帧。在判断接收到邀请接入帧时,进一步判断掉线指示是否为0,若否,则进入用户终端申请接入阶段,若是,则:将掉线指示设为1,并返回重新判断是否接收到数据帧。综上所述,本发明使用令牌轮询控制,解决了多用户共享上行信道的冲突避免问题。实现简便,复杂度低,可以在fpga和嵌入式cpu中实现。设计了申请接入流程,使用简单的方法实现了可靠的用户接入和退出过程,实现了网络动态变更。控制机制对以太网mac层透明,可以兼容现有以太网环境,实现可见光双向以太网络,本发明还可以适用于多灯切换等室内复杂可见光通信组网场景。如图6所示,为本发明公开的一种基于动态令牌的多用户可见光双向通信系统实施例的结构示意图,所述系统应用于可见光照明通信灯和多个用户终端;其中,每个用户终端具有一个唯一的地址码,成为终端地址。在以太网层下增加可见光传输层,打包和解包可见光传输帧,并提供令牌控制功能。其中,可见光传输帧的基本结构为:同步头、帧类型、帧大小和帧内容,同步头为伪随机序列,用于接收端帧同步,帧类型和对应的帧内容如表1所示。其中,帧大小为帧内容大小(字节),可见光照明通信灯中存储有接入终端表,终端表的内容为已成功接入的终端地址。具体的,所述系统可以包括:用户终端邀请接入阶段处理模块、用户终端申请接入阶段处理模块、可见光照明通信灯数据传输阶段处理模块和用户终端数据传输阶段处理模块;其中:在用户终端邀请接入阶段,用户终端邀请接入阶段模块用于:可见光照明通信灯广播邀请接入帧,在等待一段时间后,判断是否收到用户终端发送的申请接入帧,若是,则:将发送申请接入帧的用户终端地址加入终端表,然后发送确认接入帧,进入可见光照明通信灯数据传输阶段;当判断未收到用户终端发送的申请接入帧时,直接进入可见光照明通信灯数据传输阶段。当多个用户终端同时申请接入时,申请接入帧可能冲突,此时可见光照明通信灯上无法接收到正确的申请接入帧,因此不会回应或者回应的地址错误。此时,用户终端随机退避等待接收到若干轮邀请接入帧后再发送接入申请。退避赋值使用指数退避算法,可以有效的避免发送申请冲突。具体的,在用户终端申请接入阶段,用户终端申请接入阶段处理模块,用于在接收到可见光照明通信灯广播的邀请接入帧后,判断退避计数是否为0,若是,则:发送申请接入帧,然后判断是否收到可见光照明通信灯发送的确认接入帧且地址正确,若是,则:进入用户终端数据传输阶段;在判断退避计数不为0时,将退避计数减1,并返回重新等待邀请接入帧;在判断未收到可见光照明通信灯发送的确认接入帧且地址不正确时,进行退避计数赋值,并返回重新等待邀请接入帧。在可见光照明通信灯数据传输阶段,可见光照明通信灯依次向已接入的每个用户终端发送令牌,如果在一定时间内没有收到数据包或占位包,则认为该用户终端已掉线。具体的,在可见光照明通信灯数据传输阶段,可见光照明通信灯数据传输阶段处理模块,用于首先判断广域网是否有mac帧需要发送,若是,则广播数据帧,若否,则:判断终端表中是否还有未轮询的终端,若否,则进入用户终端邀请接入阶段,若是,则:从终端表中读取一个终端地址x,广播发送令牌x;然后判断是否收到用户终端回应,若是,则:判断收到的回应是否为占位帧,若否,则提取mac帧传给广域网,若是,则:标记终端地址x为已轮询,并返回判断广域网是否有mac帧需要发送;当未收到回应时,从终端表中删除终端地址x,并返回重新判断广域网是否有mac帧需要发送。终端设备接收到令牌后必须发送1个数据帧,如果无数据需要发送则必须发送一个占位帧。考虑到发送的帧有可能丢失,终端设备有可能被动掉线,如果没有收到令牌而两次收到了邀请接入帧(通过设置掉线指示来判决),证明可见光照明通信灯认为本终端设备已掉线,终端设备应重新申请接入。具体的,在用户终端数据传输阶段,用户终端数据传输阶段处理模块,用于首先判断是否接收到数据帧,若是,则提取mac帧传给用户终端mac层,若否,则:判断是否接收到邀请接入帧,若否,则:判断接收到令牌且地址为本机,若是,则掉线指示设0;判断用户终端mac层是否有帧需要发送,若是,则发送1个数据帧,若否,则:发送1个占位帧。在判断接收到邀请接入帧时,进一步判断掉线指示是否为0,若否,则进入用户终端申请接入阶段,若是,则:将掉线指示设为1,并返回重新判断是否接收到数据帧。综上所述,本发明使用令牌轮询控制,解决了多用户共享上行信道的冲突避免问题。实现简便,复杂度低,可以在fpga和嵌入式cpu中实现。设计了申请接入流程,使用简单的方法实现了可靠的用户接入和退出过程,实现了网络动态变更。控制机制对以太网mac层透明,可以兼容现有以太网环境,实现可见光双向以太网络,本发明还可以适用于多灯切换等室内复杂可见光通信组网场景。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或
技术领域
内所公知的任意其它形式的存储介质中。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1