一种基于Lora技术的USB扩展装置的制作方法

文档序号:13105731阅读:194来源:国知局
一种基于Lora技术的USB扩展装置的制作方法
本发明涉及的USB扩展装置,尤其涉及一种基于Lora技术的USB扩展装置及方法。
背景技术
:现有的智能设备,包括智能手机、电脑、智能机顶盒、智能路由器、智能电视等,它们都拥有强劲的处理器,并且都是基于复杂操作系统的,比如android、IOS、windows、Linux以及其衍生版本等,它们绝大部分都拥有USB接口,但是这些设备无法直接接入LoRaWAN中,成为LoRaWAN的一部分。如果需要搭建LoRaWAN网络,需要设计并制造一种全新的LoRaWAN网关设备或者节点硬件设备,对于一些场景来说这是不必要的,也是一种额外的开销。如何更好的利用现有智能设备的硬件性能和可以连接IP网络的优势,使其成为LoRaWAN这种低功耗广域网的一部分是现在面临的问题。技术实现要素:为了解决现有技术中的问题,本发明提供了一种基于Lora技术的USB扩展装置及方法。本发明提供了一种基于Lora技术的USB扩展装置,包括Lora收发器和微控制器,所述微控制器包括中断控制器、SPI接口和与智能设备连接的USB接口,所述Lora收发器分别与所述中断控制器、SPI接口连接。本发明还提供了一种基于Lora技术的USB扩展方法,包括以下步骤:S1、LoRa扩展器枚举;S2、智能设备对LoRa扩展器进行初始化;S3、LoRa扩展器中LoRa收发器进行工作模式切换;S4、通过LoRa扩展器发送数据;S5、通过LoRa扩展器接收数据。作为本发明的进一步改进,步骤S1包括以下子步骤:S11、检测插入USB设备,使用VBUS给设备供电;S12、USB设备初始化;S13、智能设备读取USB设备的设备描述符和接口描述符;S14、判断USB设备基类是否为无线控制器,是无线控制器,则进行下一步骤,不是无线控制器,则使用其他协议操作;S15、判断USB设备子类是否为LoRa无线控制器,是LoRa无线控制器,则进行下一步骤,不是LoRa无线控制器,则使用其他协议操作;S16、判断USB设备协议类型是否为LoRa扩展器协议,是LoRa扩展器协议,则进行下一步骤,不是LoRa扩展器协议,则使用其他协议操作。作为本发明的进一步改进,步骤S2包括以下子步骤:S21、枚举成功;S22、通过一个配置端点(下文称作“端点A”)和一个读取配置结果的端点(下文称作“端点B”)获取收发器型号与技术指标;S23、复位LoRa扩展器的角色;S24、LoRa扩展器角色设置;S25、LoRa扩展器功能属性设置;S26、使LoRa扩展器进入工作状态;S27、LoRa扩展器初始化成功。作为本发明的进一步改进,步骤S3包括Sleep模式、Stdby模式、Tx模式和Rx模式,其中,Sleep模式切换为Stdby模式,Stdby模式切换为Tx模式或者Rx模式,Tx模式切换为Sleep模式,Rx模式切换为Sleep模式。作为本发明的进一步改进,步骤S4包括以下子步骤:S41、一个向LoRa收发器写入发送数据的端点(下文称作“端点C”)收到数据来自智能设备的数据;S42、判断数据格式是否正确,数据格式正确则进行下一步骤,数据格式错误则通过一个读取LoRa收发器接收到的数据的端点下文称作“端点D”)返回数据格式错误;S43、将数据加入发送队列;S44、轮到此数据发送;S45、等待处于可发送状态;S46、随机选择信道;S47、等待占空时间结束;S48、从Sleep模式切换到Stdby模式;S49、进入Tx模式,写入LoRa收发器FIFO;S410、等待发送完成中断;S411、关闭发送中断;S412、打开接收定时器;S413、进入休眠模式;S414、通过端点D返回发送成功。作为本发明的进一步改进,步骤S5包括以下子步骤:S51、接收定时器超时;S52、从Sleep模式切换到Stdby模式;S53、切换到Rx模式,使能接收中断,使能接收超时定时器;S54、判断接收是否超时,如果不超时,则进行下一步骤,如果超时,则关闭接收中断,进入Sleep模式,通过端点D返回接收超时;S55、触发接收中断;S56、关闭接收中断;S57、关闭接收超时定时器;S58、进入Sleep模式;S59、通过端点D将接收到的数据发给智能设备。本发明的有益效果是:可以使现有的带有USB接口的智能设备转变成为LoRaWAN的节点、网关或网关服务器一体的设备,使其可以成为LoRaWAN的一部分,实现智能设备对其他LoRa节点的数据采集或控制,或者智能设备被采集或被控制,使LoRa的应用场景更加丰富。附图说明图1是本发明一种基于Lora技术的USB扩展装置的示意图。图2是本发明一种基于Lora技术的USB扩展方法的LoRa扩展器枚举流程图。图3是本发明一种基于Lora技术的USB扩展方法的智能设备对LoRa扩展器的初始化流程图。图4是本发明一种基于Lora技术的USB扩展方法的LoRa扩展器中LoRa收发器工作模式切换流程图。图5是本发明一种基于Lora技术的USB扩展方法的通过LoRa扩展器发送数据流程图。图6是本发明一种基于Lora技术的USB扩展方法的通过LoRa扩展器接收数据流程图。具体实施方式下面结合附图说明及具体实施方式对本发明作进一步说明。如图1至图6所示,一种基于Lora技术的USB扩展装置,包括Lora收发器100和微控制器,所述微控制器包括中断控制器200、SPI接口300和与智能设备连接的USB接口400,所述Lora收发器100分别与所述中断控制器200、SPI接口300连接。本发明采用Lora视频模块加USB的方式,可以使现有的带有USB接口的智能设备转变成为LoRaWAN的节点、网关或网关服务器一体的设备,使其可以成为LoRaWAN的一部分,实现智能设备对其他LoRa节点的数据采集或控制,或者智能设备被采集或被控制,使LoRa的应用场景更加丰富。LoRa的USB扩展设备简称“LoRa扩展器”,拥有USB接口的智能设备简称“智能设备”。LoRa射频收发器模块简称“LoRa收发器100”。现有的拥有USB接口的智能设备指智能手机、个人电脑、智能路由器、智能网络机顶盒等。这里的USB接口泛指USBA型口、USBB型口、USBC型口,USB微型口、USB迷你口等所有支持USB协议的物理接口。LoRa扩展器与智能设备通过USB接口400连接。其中智能设备作为USBHost(USB主机),LoRa扩展器作为USBDevice(USB设备)。双方通过本发明的协议进行通讯。LoRa扩展器将原有的LoRa收发器的操作方式封装并抽象出来,考虑到USB的数据传输延时在毫秒级以上,并不适合让智能设备直接单个操作LoRa收发器的寄存器,所以LoRa扩展器自身实现了LoRaWAN终端设备的几种类型(ClassA、ClassB、ClassC等),以及LoRaWAN网关的协议。智能设备可以通过对LoRa扩展器的角色(包括LoRaWAN终端设备、LoRaWAN网关或者自定角色,下文简称“角色”)选择和配置,实现智能设备接入LoRaWAN。LoRaWAN的应用方式由智能设备自行实现。考虑到使用的灵活度,LoRa扩展器还提供了自定角色的方式,可以使用批量配置LoRa收发器的寄存器的方式,来实现私有协议和通讯方式。LoRa扩展器的硬件框图见图1。LoRa扩展器提供了4个使用中断传输方式的端点用于收发数据,其中:1.一个配置端点(下文称作“端点A”),它是一个OUT端点,用来配置LoRaWAN角色、配置LoRaWAN功能属性、批量写LoRa收发器的寄存器;2.一个读取配置结果的端点(下文称作“端点B”),它是一个IN端点,用来获取配置结果以及批量读LoRa收发器的寄存器的返回值。3.一个向LoRa收发器写入发送数据的端点(下文称作“端点C”),它是一个OUT端点,用来将希望发送的数据及相应长度写入LoRa收发器的发送缓冲区,这里可以选择性的写入发送使用信道、数据率、发射功率等信息。4.一个读取LoRa收发器接收到的数据的端点,它是一个IN端点,用来从LoRa收发器的接收缓冲中读取数据,这里包括接收到此数据帧的长度、信道、数据率、链路余量,RSSI、信噪比等信息。智能设备可以通过读取LoRa扩展器携带的LoRa收发器的型号,以及基础技术指标。可以更进一步的清楚如何应用此LoRa扩展器。当智能设备希望LoRa扩展器从某个角色切换到另外的角色,可以通过端点A发送复位命令,并且从端点B读取复位成功的信息。本发明还提供了一种基于Lora技术的USB扩展方法,包括以下步骤:S1、LoRa扩展器枚举;S2、智能设备对LoRa扩展器进行初始化;S3、LoRa扩展器中LoRa收发器进行工作模式切换;S4、通过LoRa扩展器发送数据;S5、通过LoRa扩展器接收数据。步骤S1包括以下子步骤:S11、检测插入USB设备,使用VBUS给设备供电;S12、USB设备初始化;S13、智能设备读取USB设备的设备描述符和接口描述符;S14、判断USB设备基类是否为无线控制器,是无线控制器,则进行下一步骤,不是无线控制器,则使用其他协议操作;S15、判断USB设备子类是否为LoRa无线控制器,是LoRa无线控制器,则进行下一步骤,不是LoRa无线控制器,则使用其他协议操作;S16、判断USB设备协议类型是否为LoRa扩展器协议,是LoRa扩展器协议,则进行下一步骤,不是LoRa扩展器协议,则使用其他协议操作。步骤S2包括以下子步骤:S21、枚举成功;S22、通过端点A和端点B获取收发器型号与技术指标;S23、复位LoRa扩展器的角色;S24、LoRa扩展器角色设置;S25、LoRa扩展器功能属性设置;S26、使LoRa扩展器进入工作状态;S27、LoRa扩展器初始化成功。其中LoRa扩展器的功能属性设置包括:1.设置LNA增益(low-noiseamplifier低噪声放大器)2.设置接收灵敏度。3.设置接收器是否使能自动重置(如果使能自动重置,当接收器接收饱和或者发现数据包碰撞时会自动重置)4.设置接收器启动时是否打开AFC(automaticfrequencycorrection自动频率校正)5.设置接收器启动时是否打开AGC(AutomaticGainControl自动增益控制)6.设置接收器中断触发条件,需要捕获到哪个事件,是RSSI的中断还是检测到了报头。7.设置接收器前端补偿RSSI偏移量。8.设置RSSI是通过多少次采样的平均值。9.设置打开或关闭报头检测10.设置检测到几个字节的报头开始产生中断。11.设置报头一位的识别最多可以容忍多少个码片错误12.设置是否接收阻容振荡器的校准中断。13.设置收发器输出时钟的频率。14.设置在接收一个有效数据包之后是否重启接收器。15.设置报头是否反向(正常为0x55,反向为0xaa)16.设置使能同步字的生成与检测。17.设置FIFO填充条件。18.设置同步字的长度。19.设置同步字每个字节的数据。20.设置数据包的长度是固定还是可变。21.设置数据包的编码方式。22.设置是否使能CRC的计算与检测23.设置在CRC校验失败时是否产生中断24.设置接收数据包是否经过过滤,可以是节点地址过滤和广播地址过滤。25.设置FIFO中数据为多少时可以开始发送数据。26.设置FIFO的中断门限,当FIFO中超过多少字节数据是触发中断。27.设置当温度改变超过多少时进行同向与正交失配校准。28.设置中断的映射。29.设置LoRa载荷的长度。步骤S3包括Sleep模式、Stdby模式、Tx模式和Rx模式,其中,Sleep模式切换为Stdby模式,Stdby模式切换为Tx模式或者Rx模式,Tx模式切换为Sleep模式,Rx模式切换为Sleep模式。当LoRa扩展器开始工作后包括4种工作模式(见表1)。模式名称英文简称启动收发器的内部模块休眠模式Sleep无待命模式Stdby顶部调节器和晶振发送模式Tx频率合成器与接收器接收模式Rx频率合成器与接收器表1LoRa收发器的工作模式步骤S4包括以下子步骤:S41、端点C收到数据来自智能设备的数据;S42、判断数据格式是否正确,数据格式正确则进行下一步骤,数据格式错误则通过端点D返回数据格式错误;S43、将数据加入发送队列;S44、轮到此数据发送;S45、等待处于可发送状态;S46、随机选择信道;S47、等待占空时间结束;S48、从Sleep模式切换到Stdby模式;S49、进入Tx模式,写入LoRa收发器FIFO;S410、等待发送完成中断;S411、关闭发送中断;S412、打开接收定时器;S413、进入休眠模式;S414、通过端点D返回发送成功。如果智能设备要向LoRaWAN发数据,操作流程见图5。其中发送前进入Stdby模式包括:设置载荷长度、设置调制模式、设置发送功率、设置数据率、设置编码率、设置报头长度、设置是否包长度固定、设置是否使能CRC计算、设置是否进行信号反转等。步骤S5包括以下子步骤:S51、接收定时器超时;S52、从Sleep模式切换到Stdby模式;S53、切换到Rx模式,使能接收中断,使能接收超时定时器;S54、判断接收是否超时,如果不超时,则进行下一步骤,如果超时,则关闭接收中断,进入Sleep模式,通过端点D返回接收超时;S55、触发接收中断;S56、关闭接收中断;S57、关闭接收超时定时器;S58、进入Sleep模式;S59、通过端点D将接收到的数据发给智能设备。如果智能设备要接收LoRaWAN发给自己的数据,操作流程见图6。其中接收前Stdby模式包括:设置解调模式、设置接收频率、设置接收数据率、设置接收编码率、设置接收带宽、设置是否使能CRC校验、设置是否进行信号反转、设置接收窗口长度、设置接收窗口是否连续接收等。发送和接收数据的具体含义(应用层协议)可以由应用自行决定。本发明提供的一种基于Lora技术的USB扩展装置及方法具有以下优点:1、与流行的智能设备结合可以使LoRaWAN更容易普及。2、LoRa扩展器作为一个配件它的设计与制造更加简单。3、LoRa扩展器比起其他LoRa设备有明显的成本优势。4、LoRa扩展器可以让废旧的智能设备变废为宝,降低了整个社会的浪费和以此带来的环境污染。5、智能设备尤其是智能手机软硬件性能更新的速度飞快,以及大量的手机app开发者的推动,应用LoRa扩展器也会使LoRaWAN这种低功耗广域网的应用质量得到提升,创造更多应用场景和更多可能性。本发明提供的一种基于Lora技术的USB扩展装置及方法,在家庭中可以将LoRa扩展器插入智能网络机顶盒,机顶盒中包含了LoRa扩展器的驱动程序,以及LoRaWAN服务器程序,使机顶盒成为一个LoRaWAN服务器。家庭中所有LoRaWAN的控制和数据采集设备都可以与之互联,由于LoRa的传输距离远,家庭附近的花园、车辆都可以进入此LoRaWAN。利用现有的IP网络,使用者可以利用智能手机对这些设备的数据进行实时监控。同样的场景可以应用于学校、企业等单位。以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属
技术领域
的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1