一种LoRa通信方法及系统与流程

文档序号:14737281发布日期:2018-06-19 20:45阅读:273来源:国知局
一种LoRa通信方法及系统与流程
本申请涉及LoRa通信
技术领域
,特别涉及一种LoRa通信方法及系统。
背景技术
:随着科技的发展与进步,LoRa通信技术作为一种低功耗、容量大且传输距离远的通信技术,在智能家居、智能建筑、智能农业、智能水务等物联网产业领域中发挥着重要作用。LoRa通信技术通过将诸多的终端设备,例如智能农业中的温湿度传感器或者盐碱度传感器等接入网络进行互联与控制,从而实现生产、生活的现代化和智能化管理。LoRa通信技术的实现建立在其标准通信协议即LoRaWAN协议的基础上,部署在LoRa通信网络中的终端需要与用于进行集中控制和管理的后台云服务器进行相应的配置,才能建立通信链路实现互联。现有技术中,终端和云服务器的通信依赖于开发人员在终端入网时通过手动修改相关服务程序代码而建立的通信接口,所以每当有终端入网时,或者要对已入网的终端进行能耗等级、上报条件等的修改时,开发人员都需要对云服务器以及入网终端的后台代码进行修改和设置,因此十分麻烦。并且,随着物联网市场呈井喷式增长,后期增加投入使用的终端的数量将十分庞大,给开发人员带来的巨大的工作量。可见,采用何种LoRa通信方法以便提高对各类终端的通用性和配置修改的灵活性,进而简化配置工作量,是本领域技术人员所亟待解决的技术问题。技术实现要素:本申请的目的在于提供一种LoRa通信方法及系统,以便有效地提高对各类终端的通用性和配置修改的灵活性,进而简化配置工作量。为解决上述技术问题,本申请提供一种LoRa通信方法,包括:所述终端利用编解码软件工具包将工作状态数据编码为预设格式;所述终端将编码后的所述工作状态数据上报至云服务器,以便所述云服务器利用所述编解码软件工具包解码获取所述终端的所述工作状态数据。可选地,还包括:所述终端利用所述编解码软件工具包将配置信息数据编码为所述预设格式;所述终端将编码后的所述配置信息数据上报至所述云服务器进行入网请求;以便所述云服务器利用所述编解码软件工具包解码获取所述终端的所述配置信息数据,并向所述终端下发入网许可报文。可选地,所述以便所述云服务器利用所述编解码软件工具包解码获取所述终端的所述配置信息数据之后还包括:所述云服务器保存所述终端的所述配置信息数据。可选地,还包括:所述终端利用所述编解码软件工具包解码获取所述云服务器下发的命令数据;所述终端根据所述命令数据执行对应的命令操作。可选地,所述命令数据为以下任意一项或者任意组合:开/关控制命令数据、休眠/唤醒控制命令数据、能耗等级切换配置命令数据、上报频率配置命令数据。可选地,所述工作状态数据或者所述配置信息数据的构成要素均包括:数据名称、数值、数值范围、数值类型和读写属性;所述命令数据的构成要素包括:数据名称、数值、数值范围、数值类型、读写属性和数值变化对应的回调函数。可选地,所述工作状态数据的构成要素均还包括上报触发条件;所述终端利用编解码软件工具包将工作状态数据编码为预设格式包括:所述终端在所述工作状态数据满足所述上报触发条件时,利用所述编解码软件工具包将所述工作状态数据编码为所述预设格式。可选地,所述预设格式包括:对象标记语言格式、二进制格式或者TLV格式。本申请还提供了一种LoRa通信方法,应用于云服务器,包括:所述云服务器接收终端上报的编码后的工作状态数据,所述工作状态数据由所述终端利用编解码软件工具包编码为预设格式;所述云服务器利用所述编解码软件工具包解码获取所述终端的所述工作状态数据。本申请还提供了一种LoRa通信系统,包括:终端:用于利用编解码软件工具包将工作状态数据编码为预设格式;将编码后的所述工作状态数据上报至云服务器;所述云服务器:用于利用所述编解码软件工具包解码获取所述终端上报的所述工作状态数据。本申请所提供的LoRa通信方法包括:终端利用编解码软件工具包将工作状态数据编码为预设格式;所述终端将编码后的所述工作状态数据上报至云服务器,以便所述云服务器利用所述编解码软件工具包解码获取所述终端的所述工作状态数据。可见,相比于现有技术,本申请所提供的LoRa通信方法,利用编解码软件工具包按照交互协议进行终端与云服务器之间的数据交互。由于任一安装有该编解码软件工具包的终端即可与云服务器共用同一套交互协议进而进行通信,因此本申请提高了对各类终端的通用性,更加便于整个通信系统的扩展;同时,基于编解码软件工具包和该套交互协议的通信方式极大地提高了配置修改的灵活性。因此,本申请可极大地减少对终端和云服务器的配置工作量。本申请所提供的LoRa通信系统可以实现上述LoRa通信方法,同样具有上述有益效果。附图说明为了更清楚地说明现有技术和本申请实施例中的技术方案,下面将对现有技术和本申请实施例描述中需要使用的附图作简要的介绍。当然,下面有关本申请实施例的附图描述的仅仅是本申请中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本申请的保护范围。图1为本申请实施例所提供的一种应用于终端的LoRa通信方法的流程图;图2为本申请实施例所提供的一种LoRa通信方法的应用场景图;图3为本申请实施例所提供的一种应用于云服务器的LoRa通信方法的流程图;图4为本申请实施例所提供的一种LoRa通信系统的结构框图;图5为本申请实施例所提供的一种终端架构框图。具体实施方式本申请的核心在于提供一种LoRa通信方法及系统,以便有效地提高对各类终端的通用性,进而简化配置工作量。为了对本申请实施例中的技术方案进行更加清楚、完整地描述,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。请参考图1,图1为本申请实施例所提供的一种应用于终端的LoRa通信方法的流程图,主要包括以下步骤:步骤11:终端利用编解码软件工具包将工作状态数据编码为预设格式。步骤12:终端将编码后的工作状态数据上报至云服务器,以便云服务器利用编解码软件工具包解码获取终端的工作状态数据。这里所说的工作状态数据为终端工作时所生成的数据,即LoRa系统在提供业务服务过程中所需要的数据。对于不同类型的终端,其工作状态数据表征的含义不同。例如,温度传感器终端的工作状态数据代表着温度,而电源开关控制器终端的工作状态数据代表着输出电压。具体地,本申请实施例所提供的LoRa通信方法中,终端与云服务器之间的通信过程是借助于编解码软件工具包而实现的。这里所说的编解码软件工具包具体可以将待编码的数据通过一定的处理程序编码为预设格式,并可以将编码后的预设格式的数据进行解码还原。当终端要向云服务器上报工作状态数据时,编解码软件工具包可将工作状态数据编码为预设格式,以便云服务器识别。云服务器接收到编码后的工作状态数据之后,利用编解码软件工具包进行解码还原,从而获取来自终端的工作状态数据。由于终端和云服务器共用同一种编解码软件工具包,即共用同一套编解码规则,因此两者可实现数据的识别和交互。编解码软件工具包在进行编码时所采用的编码规则即为终端与云服务器的交互协议;可以说,编解码软件工具包就是交互协议的一个封装包,可由本领域技术人员自行编写;只要安装了该编解码软件工具包,任一终端均可实现与云服务器之间的交互。当然,这里所说的交互协议的具体内容以及所说的预设格式,均可由本领域技术人员根据实际应用情况自行选择设置,本申请实施例对此并不进行限定。可见,本申请实施例所提供的LoRa通信方法中,利用编解码软件工具包按照交互协议进行终端与云服务器之间的数据交互。由于任一安装有该编解码软件工具包的终端即可与云服务器共用同一套交互协议进而进行通信,因此本申请提高了对各类终端的通用性,更加便于整个通信系统的扩展;同时,基于编解码软件工具包和该套交互协议的通信方式极大地提高了配置修改的灵活性。因此,本申请实施例所提供的LoRa通信方法可极大地减少对终端和云服务器的配置工作量。本申请所提供的LoRa通信方法,在上述实施例的基础上:作为一种优选实施例,还包括:终端利用编解码软件工具包将配置信息数据编码为预设格式;终端将编码后的配置信息数据上报至云服务器进行入网请求;以便云服务器利用编解码软件工具包解码获取终端的配置信息数据,并向终端下发入网许可报文。配置信息数据是描述终端的具体配置参数的数据,例如终端的MAC地址、上报频率、设备认证号等等,在终端入网时,需要根据终端的配置信息进行记录和认证。具体地,本申请实施例所提供的LoRa通信方法中,终端的具体入网过程也是利用编解码软件工具包实现的。类似地,当终端上电即投入使用之后,可将该终端的编码后的配置信息数据上报至云服务器请求入网,云服务器利用编解码软件工具包可进行解码还原,获取该终端的配置信息,从而对终端的入网请求进行处理,向其下发编码后的入网许可报文,完成该终端的入网。当然,云服务器在处理终端的入网请求时一般还须通过密钥等手段进行入网验证,本领域技术人员可以自行设置,本申请实施例对此并不进行限定。作为一种优选实施例,以便云服务器利用编解码软件工具包解码获取终端的配置信息数据之后还包括:云服务器保存终端的配置信息数据。具体地,云服务器可以保存其获取到的终端的配置信息数据,以便于用户查看、管理并生成配置信息列表,进而方便用户通过云服务器输入对终端的配置命令指令。作为一种优选实施例,还包括:终端利用编解码软件工具包解码获取云服务器下发的命令数据;终端根据命令数据执行对应的命令操作。命令数据是用于令终端执行对应命令操作的数据,一般可分为两类:修改终端配置参数的命令数据,例如修改上报频率;以及控制终端工作状态的数据,例如控制终端的启停。具体地,云服务器利用编解码软件工具获取了终端的配置信息数据或者工作状态数据之后,可将该终端的配置信息数据或者工作状态数据在UI(UserInterface,用户界面)中进行相应的显示,具体可以以字段进行显示。当用户在UI通过修改相应字段来输入命令指令时,云服务器可以利用编解码软件工具包编码生成命令数据并发送至终端。当终端接收到云服务器下发的编码后的命令数据之后,编解码软件工具包即可进行解码还原,以便根据命令数据执行对应的命令操作。由此,当需要对终端进行配置更改或者状态调整时,用户仅需以填空的方式输入相应的配置和调整内容即可,而无需在云服务器和终端的后台进行代码修改,对命令数据的解码和执行都可由编解码软件工具包完成,从而使得开发难度大大降低。作为一种优选实施例,命令数据为以下任意一项或者任意组合:开/关控制命令数据、休眠/唤醒控制命令数据、能耗等级切换配置命令数据、上报频率配置命令数据。具体地,LoRaWAN协议中为终端定义了三种能耗等级的工作模式,分别为全时段上报的能耗等级C、定时上报的能耗等级B和应答上报的能耗等级A。本申请中,云服务器可通过能耗等级切换配置命令数据对终端的能耗等级进行切换配置。在现实应用中,在不同的应用场景中的终端可能需要的不同的能耗等级配置,例如,请参考图2所示的应用场景图,温度传感器21应用在对实时性要求高的系统如锅炉温度检测系统中,需要配置为LoRaWAN协议中的能耗等级C的工作模式;而对于应用在对实时性要求较低的室内温度采集系统中的温度传感器22,将其配置为能耗等级A的工作模式即可。由此,可极大地提高本申请对各类应用场景的灵活适用性,实现根据不同的应用场景对终端能耗等级进行配置修改,以便有效减少系统的能耗。此外,在设定了终端为能耗等级B时,即采用定时上报的工作模式时,还可以通过上报频率配置命令数据对终端定时上报的上报频率进行配置修改。例如,对于温度传感器,其上报频率可以为一小时一次,也可以为一分钟一次。通过不同上报频率的设置,可以进一步降低系统能耗。当然,云服务器还可以对终端进行开/关控制、休眠/唤醒控制等其他操作,本领域技术人员可自行选择并设置,本申请实施例对此并不进行限定。作为一种优选实施例,工作状态数据或者配置信息数据的构成要素均包括:数据名称、数值、数值范围、数值类型和读写属性;命令数据的构成要素包括:数据名称、数值、数值范围、数值类型、读写属性和数值变化对应的回调函数。具体地,不管是工作状态数据还是配置信息数据,其构成要素都可以包括数据名称、数值、数值范围、数值类型、和读写属性。而相比于工作状态数据或者配置信息数据,命令数据对应着一种命令操作,因此其构成要素可以增设数值变化对应的回调函数,具体地,该数值变化对应的回调函数就是用于令终端执行命令操作的具体函数。当云服务器将修改了数值的命令数据发送到终端之后,终端的编解码软件工具包可将解码后的命令数据的新数值代入相应的回调函数中执行相应的程序,从而完成该回调函数对应的操作。表1数据名称温度数值6℃数值范围-10℃~30℃数值类型Long读写属性只读请参考表1,表1为本申请实施例所提供的一种温度传感器终端在某个时刻向云服务器所发送的工作状态数据的要素内容。作为一种优选实施例,工作状态数据的构成要素还包括上报触发条件;终端利用编解码软件工具包将工作状态数据编码为预设格式包括:终端在工作状态数据满足上报触发条件时,利用编解码软件工具包将工作状态数据编码为预设格式。具体地,还可以为终端设置上报触发条件,即当其工作状态数据满足了预设的上报触发条件时,终端才会将其工作状态数据发送到云服务器。该上报触发条件具体可以为比较条件,包括大于、小于、等于等,仍以表1所示的温度传感器为例,可将其上报触发条件设置为“温度低于0℃”。由此,通过上报触发条件的设置可以减少终端对不必要数据的上报,从而有效减小云服务器的工作负担和系统的能耗。作为一种优选实施例,预设格式包括:对象标记语言格式、二进制格式或者TLV格式。具体地,对象标记语言(JavaScriptObjectNotation,JSON)采用完全独立于编程语言的文本格式来存储和表示数据,简洁和清晰的层次结构使得其易于开发人员阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。当然,本领域技术人员也可以根据实际情况选择其他如二进制或者TLV(Type-Length-Value,类型-长度-值)等格式,本申请实施例对此并不进行限定。请参考图3,图3为本申请实施例所提供的一种应用于云服务器的LoRa通信方法的流程图,主要包括以下步骤:步骤31:云服务器接收终端上报的编码后的工作状态数据。其中,工作状态数据由终端利用编解码软件工具包编码为预设格式。步骤32:云服务器利用编解码软件工具包解码获取终端的工作状态数据。可见,本申请实施例所提供的LoRa通信方法中,利用编解码软件工具包按照交互协议进行终端与云服务器之间的数据交互。由于任一安装有该编解码软件工具包的终端即可与云服务器共用同一套交互协议进而进行通信,因此本申请提高了对各类终端的通用性,更加便于整个通信系统的扩展;同时,基于编解码软件工具包和该套交互协议的通信方式极大地提高了配置修改的灵活性。因此,本申请实施例所提供的LoRa通信方法可极大地减少对终端和云服务器的配置工作量。本申请实施例所提供的应用于云服务器的LoRa通信方法的具体实施方式可参照上文介绍的应用于终端的LoRa通信方法,这里就不再赘述。下面对本申请实施例所提供的LoRa通信系统进行介绍。请参阅图4,图4为本申请实施例所提供的一种LoRa通信系统的结构框图;包括终端41和云服务器42;终端41用于利用编解码软件工具包将工作状态数据编码为预设格式;将编码后的工作状态数据上报至云服务器42;云服务器42用于利用编解码软件工具包解码获取终端41上报的工作状态数据。可见,本申请实施例所提供的LoRa通信系统中,利用编解码软件工具包按照交互协议进行终端41与云服务器42之间的数据交互。由于任一安装有该编解码软件工具包的终端41即可与云服务器42共用同一套交互协议进而进行通信,因此本申请提高了对各类终端41的通用性,更加便于整个通信系统的扩展;同时,基于编解码软件工具包和该套交互协议的通信方式极大地提高了配置修改的灵活性。因此,本申请实施例所提供的LoRa通信系统可极大地减少对终端41和云服务器42的配置工作量。本申请所提供的LoRa通信系统,在上述实施例的基础上:作为一种优选实施例,终端41还用于:利用编解码软件工具包将配置信息数据编码为预设格式;将编码后的配置信息数据上报至云服务器42进行入网请求;云服务器42具体用于:利用编解码软件工具包解码获取终端41上报的配置信息数据;向终端41下发入网许可报文;作为一种优选实施例,云服务器42还用于:在利用编解码软件工具包解码获取终端41的配置信息数据之后进行保存。作为一种优选实施例,云服务器42还用于:利用编解码软件工具包将命令数据编码为预设格式后下发至终端41;终端41还用于:利用编解码软件工具包解码获取命令数据;并根据命令数据执行对应的命令操作。作为一种优选实施例,命令数据为以下任意一项或者任意组合:开/关控制命令数据、休眠/唤醒控制命令数据、能耗等级切换配置命令数据、上报频率配置命令数据。作为一种优选实施例,工作状态数据或者配置信息数据的构成要素包括:数据名称、数值、数值范围、数值类型和读写属性;命令数据的构成要素包括:数据名称、数值、数值范围、数值类型、读写属性和数值变化对应的回调函数。作为一种优选实施例,工作状态数据的构成要素均还包括上报触发条件;终端41具体用于:当工作状态数据满足上报触发条件时,利用编解码软件工具包将工作状态数据编码为预设格式。作为一种优选实施例,预设格式包括:对象标记语言格式、二进制格式或者TLV格式。请参考图5,图5为本申请实施例所提供的一种终端41的架构框图,包括APP51、API(ApplicationProgrammingInterface,应用程序编程接口)52、MAC(MediaAccessControl,网络协议接口)53、Driver(驱动)54、SPI(SerialPeripheralInterface,串行外围设备接口)55、USART(UniversialSerialAsynchronousReceiveTransmit,同步串行接口)56和AD/DA57。其中,APP51负责终端41的工作业务;API52负责终端41与云服务器42之间通信协议的实现,在本申请中具体是由编解码软件工具包进行的,它可提供相应的应用程序的接口,将解码后的相关数据传入APP51,具体可通过上文中介绍的回调函数来处理,以便终端41按照该数据指定的配置方式正确地执行业务功能;MAC53可预先设置好三种标准LoRaWAN协议中的能耗等级的接口,类似地,当终端41接收到能耗等级切换配置命令数据之后,可通过相应的回调函数切换到指定的能耗等级接口,实现对终端41在不同应用场景下的能耗等级的灵活配置。本申请所提供的LoRa通信系统的具体实施方式与上文所描述的LoRa通信方法可相互对应参照,这里就不再赘述。还需补充说明的是,在LoRa通信技术中,终端41与云服务器42之间的通信一般具体是由LoRa网关透传的,即,终端41上报的相关数据实际上可由LoRa网关透传至云服务器42,而云服务器42下发的相关数据同样可由LoRa网关透传至相应终端41。至于有关LoRa网关的具体设置,可由本领域技术人员自行选择实现,本申请实施例对此并不进行限定。本申请中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。以上对本申请所提供的技术方案进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本
技术领域
的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1