物联网是个交叉学科,涉及通信技术、传感技术、网络技术以及RFID技术、嵌入式系统技术等多项知识,但想在本科阶段深入学习这些知识的难度很大,而且部分物联网研究院从事核心技术工作的职位都要求硕士学历,“LPWAN实验室”计划从收集、整理、翻译实用的物联网有关的知识着手,帮助各高校物联网专业学生利用这个实验室学习平台找准专业方向、夯实基础,同时增强实践与应用能力。虽然现在面临大学生毕业就业难的情况,但实际各行各业却急需物联网领域相关专业的人才,从目前情况来看,环保、安防、智能交通、农业、医疗推广的可能性最大,这也是成为高校热门专业的一个重要原因。从工信部以及各级政府所颁布的规划来看,物联网在未来十年之内必然会迎来其发展的高峰期。而物联网技术人才也势必将会“迎娶”属于它的一个美好时代。
物联网常见通信协议与通讯协议梳理【上】- 通讯协议
1 “通信”与“通讯”傻傻分得清 传统意义上的“通讯”主要指电话、电报、电传。通讯的“讯”指消息(Message),媒体讯息通过通讯网络从一端传递到另外一端。媒体讯息的内容主要是话音、文字、图片和视频图像。其网络的构成主要由电子设备系统和无线电系统构成,传输和处理的信号是模拟的。所以,“通讯”一词应特指采用电报、电话、网络等媒体传输系统实现上述媒体信息传输的过程。“通讯”重在内容形式,因此通讯协议主要集中在ISO七层协议中的应用层。 “通信”仅指数据通信,即通过计算机网络系统和数据通信系统实现数据的端到端传输。通信的“信”指的是信息(Information),信息的载体是二进制的数据,数据则是可以用来表达传统媒体形式的信息,如声音、图像、动画等。“通信”重在传输手段或使用方式,从这个角度,“通信”的概念包括了信息“传输”。因此通信协议主要集中在ISO七层协议中的物理层、数据链路层、网络层和传输层。 在物联网应用中,通信技术包括Wi-Fi、RFID、NFC、ZigBee、Bluetooth、LoRa、NB-IoT、GSM、GPRS、3/4/5G网络、Ethernet、RS232、RS485、USB等。 相关的通信协议(协议栈、技术标准)包括Wi-Fi(IEEE 802.11b)、RFID、NFC、ZigBee、Bluetooth、LoRa、NB-IoT、CDMA/TDMA、TCP/IP、WCDMA、TD-SCDMA、TD-LTE、FDD-LTE、TCP/IP、HTTP等。注:3GPP将5G技术标准制定分为两个阶段,原计划中第一阶段的标准将在2018年底作为R15的一部分公布,将仅针对NR。第二阶段的标准将在2019年底作为R16的一部分,包括整个5G架构(包括核心网络)。 物联网技术框架体系中所使用到的通讯协议主要有:AMQP、JMS、REST、HTTP/HTTPS、COAP、DDS 、MQTT等。 2 通讯协议 2.1 HTTP/HTTPS 一、HTTP HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。 HTTP协议的主要特点可概括如下: (1)支持客户/服务器模式。 (2)简单快速。客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 (3)灵活。HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。 (4)无连接。无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 (5)无状态。HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。 二、HTTPS HTTPS(Hypertext Transfer Protocol over Secure Socket Layer,基于SSL的HTTP协议)使用了HTTP协议,但HTTPS使用不同于HTTP协议的默认端口及一个加密、身份验证层(HTTP与TCP之间)。这个协议的最初研发由网景公司进行,提供了身份验证与加密通信方法,现在它被广泛用于互联网上安全敏感的通信。 客户端在使用HTTPS方式与Web服务器通信时有以下几个步骤,如图所示。 (1)客户使用https的URL访问Web服务器,要求与Web服务器建立SSL连接。 (2)Web服务器收到客户端请求后,会将网站的证书信息(证书中包含公钥)传送一份给客户端。 (3)客户端的浏览器与Web服务器开始协商SSL连接的安全等级,也就是信息加密的等级。 (4)客户端的浏览器根据双方同意的安全等级,建立会话密钥,然后利用网站的公钥将会话密钥加密,并传送给网站。 (5)Web服务器利用自己的私钥解密出会话密钥。 (6)Web服务器利用会话密钥加密与客户端之间的通信。 2.2 WebService/REST 首先说明下,WebService和REST都不是一种协议,他们是基于HTTP/HTTPS的一种技术方式或风格,之所以放在这里,是因为在物联网应用服务对外接口方式常采用WebService和RESTful API。 一、WebService WebService是一种跨编程语言和跨操作系统平台的远程调用技术。 XML+XSD,SOAP和WSDL就是构成WebService平台的三大技术。 (1)XML+XSD WebService采用HTTP协议传输数据,采用XML格式封装数据(即XML中说明调用远程服务对象的哪个方法,传递的参数是什么,以及服务对象的返回结果是什么)。XML是WebService平台中表示数据的格式。除了易于建立和易于分析外,XML主要的优点在于它既是平台无关的,又是厂商无关的。无关性是比技术优越性更重要的:软件厂商是不会选择一个由竞争对手所发明的技术的。 XML解决了数据表示的问题,但它没有定义一套标准的数据类型,更没有说怎么去扩展这套数据类型。例如,整形数到底代表什么?16位,32位,64位?这些细节对实现互操作性很重要。XML Schema(XSD)就是专门解决这个问题的一套标准。它定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型。WebService平台就是用XSD来作为其数据类型系统的。当你用某种语言(如VB.NET或C#)来构造一个Web service时,为了符合WebService标准,所有你使用的数据类型都必须被转换为XSD类型。你用的工具可能已经自动帮你完成了这个转换,但你很可能会根据你的需要修改一下转换过程。 (2)SOAP WebService通过HTTP协议发送请求和接收结果时,发送的请求内容和结果内容都采用XML格式封装,并增加了一些特定的HTTP消息头,以说明HTTP消息的内容格式,这些特定的HTTP消息头和XML内容格式就是SOAP协议。SOAP提供了标准的RPC方法来调用Web Service。 SOAP协议 […] Read more.
LoRa调制技术究竟给我们带来了哪些突破?
LoRa是一种专用于无线电扩频调制解调的技术,它与其他如FSK(频移键控)、GMSK(高斯最小频移键控)、BPSK(二进制相移键控)及其派生的调制方案形成明显的对比。 它融合了数字扩频、数字信号处理和前向纠错编码技术,拥有前所未有的性能。此前,只有一些军事通讯系统中才会融合这些技术,而随着LoRa的引入,嵌入式无线通信领域的局面发生了彻底的改变。 前向纠错编码技术是给待传输数据序列中增加了一些冗余信息,这样,数据传输进程中注入的错误码元在接收端就会被及时纠正。这一技术减少了以往创建“自修复”数据包来重发的需求,且在解决由多径衰落引发的突发性误码中表现良好。 一旦数据包分组建立起来且注入前向纠错编码以保障可靠性,这些数据包将被送到数字扩频调制器中。这一调制器将分组数据包中每一比特馈入一个“展扩器”中,将每一比特时间划分为众多码片。LoRa调制解调器经配置后,可划分的范围为64-4096码片/比特。 通过使用高扩频因子,LoRa技术可将小容量数据通过大范围的无线电频谱传输出去。实际上,当你通过频谱分析仪测量时,这些数据看上去像噪音,但区别在于噪音是不相关的,而数据具有相关性,基于此,数据实际上可以从噪音中被提取出来。其实,扩频因子越高,越多数据可从噪音中提取出来。 在一个运转良好的GFSK接收端,8dB的最小信噪比(SNR)需要可靠地解调信号,采用配置AngelBlocks的方式,LoRa可解调一个信号,其信噪比为-20dB,GFSK方式与这一结果差距为28dB,这相当于范围和距离扩大了很多。在户外环境下,6dB的差距就可以实现2倍于原来的传输距离。 为了有效地对比不同技术之间传输范围的表现,我们使用一个叫做“链路预算”的定量指标。链路预算包括影响接收端信号强度的每一变量,在其简化体系中包括发射功率加上接收端灵敏度。 AngelBlocks的发射功率为100mW(20dBm),接收端灵敏度为-129dBm,总的链路预算为149dB。比较而言,拥有灵敏度-110dBm(这已是其极好的数据)的GFSK无线技术,需要5W的功率(37dBm)才能达到相同的链路预算值。在实践中,大多GFSK无线技术接收端灵敏度可达到-103dBm,在此状况下,发射端发射频率必须为46dBm或者大约36W,才能达到与LoRa类似的链路预算值。 因此,使用LoRa技术我们能够以低发射功率获得更广的传输范围和距离,这种低功耗广域技术正是我们所需的。 目前,相对于NB-IoT,LoRa是当前最成熟、稳定的窄带物联网通讯技术,其自由组网的私有网络远优于运营商持续不断收费的NB网络,且LoRa一次组网终身不需缴费。但是应用LoRa进行物联网通讯开发难度大、周期长、进入门槛高。据了解,为降低物联网行业创业者进入门槛,协成智慧提供了一整套成熟LoRaWAN源代码+LoRa Gateway网关定制方案,极大缩减了创业者在物联网链路调通上所耗费的半年周期与巨额开发代价,便于快速切入物联网具体应用,打造属于自己的独立物联网运营品牌。 Read more.
LoRa服务器项目概览
前言 LoRaWAN 协议定义了系统拓扑,这是我们最常见的系统拓扑图。 但当了解到LoRaServerProject时,这套系统拓扑有了更细致的展现,采用 MQTT 来实现 Gateway、NS、AS 的协议处理。深入到这个开源项目中,会体会到 MQTT 给这个系统架构所带来的高效率与灵活性。 一、工程总体介绍 Lora Server project 是一套开源应用软件,实现从 网关接收到节点数据 一直到 应用程序接收到数据 这一段链路的处理。 The Lora Server project is an open-source set of applications that fill the gap between the gateways receiving messages from the nodes to just before the applications receiving the data. It provides mechanisms for managing the […] Read more.
LoRa无线sx1278&LoraWan协议剖析
来源:CSDN 1、整体结构 双向传输终端(Class A): Class A 的终端在每次上行后都会紧跟两个短暂的下行接收窗口,以此实现双向传输。传输时隙是由终端在有传输需要时安排,附加一定的随机延时(即ALOHA协议)。这种Class A 操作是最省电的,要求应用在终端上行传输后的很短时间内进行服务器的下行传输。服务器在其他任何时间进行的下行传输都得等终端的下一次上行。 划定接收时隙的双向传输终端(Class B): Class B 的终端会有更多的接收时隙。除了Class A 的随机接收窗口,Class B 设备还会在指定时间打开别的接收窗口。为了让终端可以在指定时间打开接收窗口,终端需要从网关接收时间同步的信标 Beacon。这使得服务器可以知道终端正在监听。 最大化接收时隙的双向传输终端(Class C): Class C 的终端基本是一直打开着接收窗口,只在发送时短暂关闭。Class C 的终端会比 Class A 和 Class B 更加耗电,但同时从服务器下发给终端的时延也是最短的。 2、接收窗口 说明: (1) 第一接收窗口的信道,数据速率和启动。 第一接收窗口 RX1 使用的频率和上行频率有关,使用的速率和上行速率有关。RX1 是在上行调制结束后的 RECEIVE_DELAY1 秒打开。上行和 RX1 时隙下行速率的关系是按区域规定,详细描述在[LoRaWAN地区参数]文件中。默认第一窗口的速率是和最后一次上行的速率相同。 (2)第二接收窗口的信道,数据速率和启动 第二接收窗口 RX2 使用一个固定可配置的频率和数据速率,在上行调制结束后的 RECEIVE_DELAY2 秒打开。频率和数据速率可以通过 MAC 命令设置。默认的频率和速率是按区域规定,详细描述在[LoRaWAN地区参数]文件中。 (3)接收窗口的持续时间 接收窗口的长度至少要让终端射频收发器有足够的时间来检测到下行的前导码。 (4)接收方在接收窗口期间的处理 如果在任何一个接收窗口中检测到前导码,射频收发器需要继续激活,直到整个下行帧都解调完毕。如果在第一接收窗口检测到数据帧,且这个数据帧的地址和MIC校验通过确认是给这个终端,那终端就不必开启第二个接收窗口。 (5) 网络发送消息给终端 如果网络想要发一个下行消息给终端,它会精确地在两个接收窗口的起始点发起传输。 […] Read more.
SX1301吞吐量是SX1276/8的多少倍?
1 吞吐量,LoRa网关的重要性能 从广义上讲,网关是连接2个不同网络的设备。如果一个设备,它能将LoRa无线网络和Internet连接起来,它就是一个LoRa网关。 目前,大部分的LoRa网关采用SX1301基带芯片,也有部分使用SX1276/8单信道芯片。那么,SX1301的吞吐量是SX1276/8的多少倍呢?我们一起来探讨。 2 误解1:SX1301 = 48个SX1276/8 有些行业朋友认为,SX1301有8通道,每个通道可以接收6个正交(速率不同,互不干扰)LoRa信号,那么,SX1301 = 8 x 6 = 48个SX1276/8。 然而,这是不正确的! 下文摘自《SX1301 Datasheet》Page-18 IF0 to IF7 channels 它明确地说明:SX1301能同时解调的LoRa数据包不超过8个。 如果您只需要知道结果,看完上面的数字—-8,就OK了,请移步。 如果您和我们一样,喜欢探寻更深层次的原因,请接着看下面的解释。(我们都是技术狂,追求真理,刨根问底;对技术抱有深厚的兴趣,不安现状,喜欢折腾新东西)。 看到下面SX1301的框架图,很快会得到2个启发: 1)它只有8路LoRa解调器,这才是真正的瓶颈!那怕一个通道(IF0~IF7)接收了6个正交数据包,解调器也只负责处理其中一个。 2)当一个通道接收LoRa信号后,会启动3个工作进程:数据包仲裁MCU,分配解调器给“合适”的LoRa通道;前导码搜索引擎,查找一个LoRa数据包的起始信号;LoRa解调器,解析该LoRa数据包。 刚才谈到:数据包仲裁MCU,分配解调器给“合适”的LoRa通道。那么,什么才是合适呢?这个优先级包括:接收数据包的速率,信道(IF0~IF7),射频通道(即,2个SX1255/7,分别对应Radio A和B),接收数据包的信号强度。 数据包仲裁MCU的优先级,是由Semtech的固件决定的,用户无法更改。这也是芯片厂商的天生优势—-制定游戏规则,限定玩家的范围。 3 误解2:SX1301 = 8个SX1276/8 那么,SX1301是否等于8个SX1276/8呢? 也不正确! 因为,这忽略了SX1301的ADR技术。 ADR(Adaptive Data Rate,速率自适应),如下图所示,依赖Node和SX1301-Gateway的距离:越近,Node将采用高速率;越远,Node将采用低速率。这可以有效地提高网络吞吐量。 4 更真实的评估 SX1301的ADR技术能提高吞吐量,要准确计算性能的提升却比较难,因为,它依赖实际网络中节点的物理位置分布。 因为LoRa的长距离优势,往往基于低速率,即下表的SF12 = 293bps;可以看出,SF10(中速率)约为低速率的3倍,SF7(高速率)约为低速率的18倍。 为此,我们提出数学统计模型。 设网络节点的位置呈正态分布(这是最符合工程实施的概率分布)。如下图所示:68.2%属于常态,即ADR用不上;27.2%,ADR能提高约3倍吞吐量;4.6%,ADR能提高18倍吞吐量。 这样一来,ADR提高吞吐量为:68.2% x 1 + 27.2% x […] Read more.
无线节点的空中唤醒技术解析
无线网络应用中,通常要求节点尽可能休眠,最大限度降低功耗,但又希望节点能尽可能及时地收发无线数据,这似乎是个不可调和的矛盾。但是有个神奇的功能,空中唤醒。节点即使处于休眠,当需要节点工作时可以直接通过无线手段唤醒该节点。很多人第一次听到,都觉得不可思议。希望看完今天这篇文章,你能搞明白这件事。 本文首发于微信公众号twowinter,转载请注明作者:http://blog.csdn.net/iotisan/ 点此进入公众号查看。 一、介绍 本尊贵为IoT小能手,物联网世界的什么东西没见过。(啊!吹个牛逼而已,用得着飞砖头过来吗!过分) 这个牛逼功能的英文名是WOR(Wake On Radio)。 它在很多上游芯片方案中已经有应用,TI系列的无线芯片中很多都带有这个功能,比如CC1310,以及我正在玩的LoRa芯片SX1276。 它在很多网络协议中也已经有应用,B-MAC,X-MAC,甚至大家常见的ZigBee协议中也有一个很少人知道的概念“休眠路由”。 它在很多物联网操作系统中也有应用,比如TinyOS,以及在我心中排名第一的Contiki,称之为“radio duty cycling mechanism”。 二、基础原理 原理简单说,就是在有效数据前头加一段较长的前导码,无线节点进行周期性地唤醒,监听下网络。一旦捕捉到前导码就进入正常的接收流程,若没有就立即休眠,等待下一次唤醒。 为了让数据传输时,无线节点不会错过有效数据,机制上要保证前导码的持续时间要略长于节点的休眠时间。 图片来源于LoRa官方AN文档《LoraLowEnergyDesign_STD.pdf》。 上面是不带应答的情况,如果是单播方式需要应答的话,情况也差不多。 三、深入学习 好了,有了如上的初步解释,大家应该差不多明白了。接下去的内容会轻微烧脑,希望我的讲解没把大家绕晕。 围绕这个基础原理,有一些人做了优化演绎,大致有这些情况。 1.前导码变种 Contiki的作者Adam Dunkels(假装对外国人很熟,是比较简单地一项装逼手段),他在2011年的论文中介绍了其空中唤醒机制,他将唤醒探针(也就是前导码)做了变化,与普通前导码0101的循环不同,它是将数据包做了多次循环发送。 上面是不带应答的情况,而应答的空中唤醒示意图是这样: 相同的做法也出现在TinyOS中。 2.快速休眠 多数据包的前导码方式额外带来了第二种优化方法,可以让节点更加的省电。通常空中唤醒最大难点是会被噪音误唤醒,因为监测前导码是采用信道监听,判断信道的RSSI是否大于某个阈值。一旦有噪音,则这次唤醒就白白耗了一个周期的电。 但是噪音有一个特点是,无规则,持续性。由于多个数据包做的前导码中带有固定间隔的休息时间,因此这个休息时间可以用来将前导码和噪音有效区别开。如果不小心被噪音唤醒,节点在接下来没检测到静默周期,则可确认是噪音,那么就立即睡眠以省电。如图: Contiki由于是一个通用型系统,因此这种快速休眠处理方式是在软件层面的优化处理。 LoRa的快速休眠方式则有所不同,由于调制技术优势使得其CAD能从噪声中判断有效前导码,所以在第一阶段就能避免误唤醒。另外还有一个优点是在硬件内部(如SX1276系列)就做了优化,可以在未收到完整数据包下就判断是否发给本地址,从而来节点更快做出应对处理。 3.传输锁相 用通俗的话来讲解深奥的内容一直是本尊的强项,且听我道来: 节点A在与中心节点交互过一次之后,中心节点就记住了节点A的发送时刻(所谓的相)和周期。因此在下一次要唤醒节点A的时候,只需根据预估的节点A的唤醒时间点,准点去唤醒节点A就可以了。 这一个优化,虽然没有给节点A带来功耗上的优化,却降低了整个网络的负载,提高了信道的利用率。 四、展开来说 到此为止,关于空中唤醒技术的原理性讲解基本结束。本文只是知识点科普,限于个人水平和精力还无法讲更多更深的东西。如果你是工程师,文中涉及一些概念希望能引起你的注意,抓住关键词去搜索延伸,你应该会得到更多。 最直接的,空中唤醒技术在很多行业都是个刚需,可以为你负责的产品增加些卖点,也许你就因此升职加薪走向人生巅峰。 其次,你会从一个更高的高度对其他厂家的空中唤醒技术有些认识。我给大家举个例子,限于行业身份,我就不公开说是哪家企业了。 XX公司的唤醒算法 1. 采用CAD侦听,让LoRa终端更节能;采用锁相同步唤醒技术,让LoRa通信带宽更佳利用; 2. 采用快速地址匹配技术,使“非目标地址”LoRa终端快速休眠; 3. 采用跳频技术,让唤醒和数据通信从频率是分开,减少干扰; 举这个例子,想告诉大家,理解了技术原理后,你就可以看懂别人说的是什么,是否真的很厉害。 当然不是说这家公司的产品不过尔尔,你可能理解了这个原理,但实现这些功能的背后肯定有很多付出和技术沉淀,要看到别人有哪些值得学习的地方,纸上谈兵永远是最简单的事情。 五、最后 在整理这些资料的时候,有一个感悟,虽然这个世界上的很多东西已经很难有大的创新了,但还是有很多优秀的人,踏实地利用自己才华贡献一点点小创新,帮助这个世界变地更美好。在此向Adam Dunkels等前辈致敬! 这篇文章写地比较用心,从技术深度上和自我思考的深度上都是目前已产出的文章中比较靠前的。希望你也能喜欢,欢迎留言,收藏,甚至分享它。 Read more.
LoRa笔记03 LoRa sx1276 sx1278空中唤醒研究
一、前言 前面在无线节点的空中唤醒技术解析中由浅入深地对空中唤醒技术做了讲解,讲地非常好,建议大家多看几遍(卧槽,谁又砸砖头!)。这篇笔记将讲LoRa节点的空中唤醒具体应用。 我正在学习LoRa和LoRaWAN,基本按照 官方资料+梳理解析+相关源码 的方式来记录笔记,相信对不少同行者有所帮助,可点此查看帖子LoRa学习笔记_汇总。 本文作者twowinter,转载请注明作者:http://blog.csdn.net/iotisan/ 二、官方资料 1. CAD 模式介绍 When in CAD mode, the device will check a given channel to detect LoRa preamble signal CAD的功能的主要介绍是在4.1.6. LoRaTM Modem State Machine Sequences 中的 Channel Activity Detection 小节。在前文的空中唤醒的原理中,已经提到CAD功能是LoRa调制的一个特色,比普通RSSI检测方式要强大得多。 随着扩频调制技术的应用,人们在确定可能低于接收机底噪声的信号是否已经使用信道时,面临重重挑战。这种情况下,使用RSSI无疑是行不通的。为了解决这个问题,可使用信道活动检测器(CAD)来检测其他LoRaTM信号。图11显示了CAD的流程: 2. 操作原理介绍 信道活动检测模式旨在以尽可能高的功耗效率检测无线信道上的LoRa前导码。在CAD模式下, SX1276/77/78快速扫描频段,以检测LoRa数据包前导码。 在CAD过程中,将会执行以下操作: - PLL被锁定。 - 无线接收机从信道获取数据的LoRa前导码符号。在此期间的电流消耗对应指定的Rx模式电流。 - 无线接收机及PLL被关闭,调制解调器数字处理开始执行。 - 调制解调器搜索芯片所获取样本与理想前导码波形之间的关联关系。建立这样的关联关系所需的时间仅略小于一个符号周期。在此期间,电流消耗大幅度减少。 […] Read more.
LoRa笔记02 LoRa sx1276 sx1278的发射功率研究
1 前言 发射功率也是射频基础指标,目前SX1278可以支持最大20dBm。 我正在学习LoRa和LoRaWAN,基本按照 官方资料+梳理解析+相关源码 的方式来记录笔记,相信对不少同行者有所帮助,可点此查看帖子LoRa学习笔记_汇总。 本文作者twowinter,转载请注明作者:http://blog.csdn.net/iotisan/ 2 官方datasheet资料 5.4.2. RF Power Amplifiers PA_HF and PA_LF are high efficiency amplifiers capable of yielding RF power programmable in 1 dB steps from -4 to +14dBm directly into a 50 ohm load with low current consumption. PA_LF covers the lower bands (up to 525 MHz), whilst PA_HF […] Read more.
LoRa笔记01 sx1276 sx1278信号强度RSSI研究
1 前言 RSSI信号强度是无线网络中特别被人关注的一个点,尤其是工程部署中。今天在了解LoRa SX1276的RSSI展示,搜寻了一些资料,做如下笔记留念。(留念。。。真没词用了吗。。。) 本文作者twowinter,转载请注明作者:http://blog.csdn.net/iotisan/ 2 官方资料 涉及寄存器 官方英文说明 5.5.5. RSSI and SNR in LoRaTM Mode The RSSI values reported by the LoRaTM modem differ from those expressed by the FSK/OOK modem. The following formula shows the method used to interpret the LoRaTM RSSI values: RSSI (dBm) = -157 + Rssi, (when using the High […] Read more.
LORA 射频自组网 两级中继设计方案
基于sx1276lora模块,进行多个模块之间自组网,组网形式为1个集中器加多个终端。模块之间距离较远时,集中器无法直接与某个终端进行通信,其他终端本身可作为中继给该终端作为中继与集中器通信。lora调制方式,发送数据为星型通信方式,为自组网提供了便利。 终端接收心跳存储: typedef struct { uint32_t Id;//接收的ID uint8_t Rssi;//信号强度 }RECV_TERMINAL_T; RECV_TERMINAL_T RecvTerminal[RECV_NUM]; 集中器接收心跳存储、发送路径存储: typedef struct { uint32_t Id;//ID设备号 uint8_t index;// uint8_t relay;// }TERMINAL_ID_LOCATION_T; typedef struct { uint32_t Id[ROUTING_LAYERS];//接收的ID uint8_t […] Read more.
走近LoRa之一:深入了解物联网,从LoRa开始
作者:甘达 来源: 广州朗威 物联网连接存在挑战,催生LPWAN 目前物联网连接的应用场合存在几个痛点:①通信距离,大部分设备布局在复杂的建筑环境或者人员稀少的地方,传统无线技术难以穿透或者抵达;②电池供电,很多物联网应用场合并没有持续电力供应的条件,比如地磁传感器、自来水表。 主流无线通信方式对比 物联网应用中的无线技术,除运营商广域网的GPRS、3G/4G以外,还有局域网短距离的ZigBee、Wi-Fi、蓝牙。虽然这些无线技术本身已经成熟,但是优缺点也都非常明显,长距离和低功耗两者之间只能二选一。LPWA (Low Power Wide Area) 低功耗广域技术在这个背景下应运而生,专为远距离、低带宽、低功耗、大量连接的物联网应用而设计。LPWA目前也包含多种技术,如LoRa、Sigfox、Weightless和NB-IoT等,其中LoRa从2013年开始进入中国,预计今年Semtech的SX1278 LoRa芯片在中国的出货量将超过1000万片。因此,这个金秋10月就让我们一起来了解LoRa。 LoRa让距离与功耗不再是问题 LoRa是一种相比经典FSK技术覆盖半径增加3-5倍的增强无线传输技术,LoRa调制解调技术在不改变发射功率的前提下,明显提升了无线传输距离(即增加链路预算,或者接收灵敏度)。 LoRa vs FSK在密集城市环境下的传输距离 LoRaWAN™ 是一种异步的基于ALOHA的协议,也就是说节点可以根据具体应用场景需求进行或长或短的睡眠,而GPRS、3G/4G同步协议的节点必须定期地联网同步,这减少电池寿命第一推手。GSMA对不同LPWA低功耗广域技术进行了比较,LoRaWAN™ 比其他蜂窝技术有3到5倍的功耗优势。 LoRa在覆盖和功耗均表现优秀 LoRa适用于哪些应用场景? LoRa最突出的特点就是长距离,突破以前需要中继才能解决的覆盖场景,或者同时要求功耗很低,需要电池供电。比如:①无线抄表,比如:电表、水表、气表、热表等;②缓慢变化物理量(温度、水压、PM2.5、地磁感应器)超低功耗传感器;③无线报警器(烟雾探测器、热释红外);④远程I/O控制器(灯光控制、空调控制);⑤无线RS-485/Modbus转换器; LoRa相对经典FSK 433MHz技术相比有什么独特优势? ①通信距离:距离增加3-5倍这是最直观的感受,原来433MHz小无线产品难以覆盖的死角,LoRa可以完全覆盖,这是用户遇到433MHz通信不可靠的终极解决方案;②LoRa解调技术可在噪声下仍可正确解调数据,并且灵敏度甚至可以达到的-148dBm;③LoRa Modem本身具有优异的抗干扰特性,而且支持自动随机跳频通信,以抵抗瞬间干扰的可能。相比传统433MHz芯片定频通信来说,不但可靠性提高,而且对频点占用时间少,对外界干扰更少,意味着对通信信道使用更加合理。 LoRa无线通信网关通信频率是否授权? 根据国家工信部文件《信部无[2005]423号》,LoRaWAN™可以免费使用微功率无线通信频率范围:470-510MHz,但必须满足以下条件:①射频发射功率EIRP (Effective Isotropic Radiated Power) 有效全向辐射功率) 要小于50mW(或者+17dBm);②发射持续时间不能超过5000ms。附注:具体法规请咨询中国无线电管理局SRRC。 Read more.
图文介绍LoRa技术特点和系统架构
一 技术特点 1、LoRa 2013年8月,美国升特公司(Semtech)向业界发布了一种新型的Sub-1GHz频段的扩频通信芯片,最高接收灵敏度可达-148dBm,主攻远距离低功耗的物联网无线通信市场。该技术主要工作在全球各地的ISM免费频段(即非授权频段),包括主要的433、470、868、915MHz等。与其他传统的Sub-1GHz芯片相比,LoRa芯片最高接收灵敏度提高20~25dB,体现在应用上就是拥有5~8倍传输距离的提升。 LoRa技术本质上是扩频调制技术,同时结合了数字信号处理和前向纠错编码技术。此前,扩频调制技术具有长通信距离和高鲁棒特性,在军事和空间通信领域已经应用了几十年,而LoRa的意义在于首先利用扩频技术为工业产品和民用产品提供低成本的无线通信解决方案。前向纠错编码技术是给待传输数据序列中增加一些冗余信息,数据在传输进程中注入的错误码元在接收端就会被及时纠正。前向纠错编码技术可以减少数据包需要重发的需求,而且在解决由多径衰落引发的突发性误码中表现良好。一旦数据包分组建立起来,并注入前向纠错编码以保障可靠性,这些数据包就将被送到数字扩频调制器中。这一调制器将分组数据包中每一比特时间划分为众多码片,而LoRa调制码片的可配置范围为64~4 096码片/比特。通过使用高扩频因子,LoRa可将小容量数据通过大范围的无线电频谱传输出去。当用户通过频谱分析仪测量时,这些数据看上去像噪音,但区别在于噪音是不相关的,而数据具有相关性。基于这点,数据可以从噪音中提取出来。扩频因子越高,越多的数据可从噪音中提取出来,接收灵敏度就可以达到更高。因此LoRa芯片的接收灵敏度最高可达-148dBm,在20dBm的发射功率下,LoRa调制的链路预算可达168dB。 2、LoRaWAN 在传统的广域连接应用中,主要借助电信运营商提供的蜂窝网络进行连接,工业、能源、交通、物流等各行业广泛采用蜂窝网络实现互联。但仍有大量的设备应用是现有蜂窝网络技术无法满足的,比如水、电、气、热等计量表,市政管网、路灯、垃圾站点等公用设施,大面积畜牧养殖和农业灌溉,广泛布局且环境恶劣的气象、水文、矿井、山体数据采集,以及偏僻的户外作业等。这些类型终端若采用现有运营商蜂窝网络进行联网,可能遇到如下问题。 1、信号覆盖不足:很多设备布局在人口稀少或环境复杂的区域,运营商网络覆盖盲区或信号强度不足,难以保障数据的稳定传输。 2、功耗高:大量设备需要电池供电,若采用蜂窝网络则需频繁更换电池,这在很多恶劣环境下很难实现。 3、费效比低:设备单次传输数据量极小,而且传输频次很低。目前蜂窝网络为高带宽设计,采用蜂窝网络要占用网络和码号资源,还会产生包月流量费用。 基于以上原因,低功耗广域网技术(Low Power Wide Area Network,LPWAN)成为弥补物联网网络层短板的最佳选择。2015年3月,由Semtech牵头成立了LoRa Alliance(以下简称LoRa联盟),联盟是一个开放的非盈利性组织,目的在于加速LoRa技术全球商用化,主要发起成员还包括美国IBM、Cisco、法国Actility、荷兰皇家电信、瑞士电信等知名企业。 联盟发布的LoRaWAN协议将LPWAN分成了三部分,包括节点应用、通信服务(模组和基站供应商)、云服务,数据传输过程中的通信层包括两级加密,数据通信更为安全。截止到2016年10月,联盟成员数量高达400多家,其中国家级的运营商有27家,新增运营商有法国Proximus、英国Orange、美国Comcast、日本软银、韩国SK电信、印度TATA电信等。同时,LoRa的产业链中还包括大量终端硬件厂商、模块网关厂商、软件厂商、系统集成商等,构成了完整的LoRa生态系统,大大促进LoRa技术的快速发展与生态繁盛。 二 系统架构 1、网络架构 目前,基于L oRa技术的网络层协议主要是LoRaWAN,也有少量的非LoRaWAN协议,但是通信系统网络都是星状网架构,以及在此基础上的简化和改进。主要包括以下3种。 (1)点对点通信。 一点对一点通信,多见于早期的LoRa技术,A点发起,B点接收,可以回复也可以不回复确认,多组之间的频点建议分开,如图1所示。单纯利用LoRa调制灵敏度高的特性,目前主要针对特定应用和试验性质的项目。优点在于最简单,缺点在于不存在组网。 图1 点对点通信 (2)星状网轮询。 一点对多点通信,N个从节点轮流与中心点通信,从节点上传,等待中心点收到后返回确认,然后下一个节点再开始上传,直到所有N个节点全部完成,一个循环周期结束,如图2所示。该结构本质上还属于点对点通信,但是加入了分时处理,N个从节点之间的频点可以分开,也可重复使用。优势在于单项目成本低,不足之处是仅适合从节点数量不大和网络实时性要求不高的应用。 图2 星状网轮询 (3)星状网并发。 如图3所示,一点对多点通信,多个从节点可同时与中心点通信,从节点可随机上报数据,节点可以根据外界环境和信道阻塞自动采取跳频和速率自适应技术,逻辑上网关可以接收不同速率和不同频点的信号组合,物理上网关可以同时接收8路、16路、32路甚至更多路数据,减少了大量节点上行时冲突的概率。该系统具有极大的延拓性,可单独建网,可交叉组网,LoRa领域内目前主要指的是LoRaWAN技术。 图3 星状网并发 2、系统组成 点对点通信和星状网轮询的系统组成比较简单,两端都是节点,分为主从。在主节点收到从节点上行数据后会发下行确认帧给从节点,然后从节点进入休眠,工作模式比较简单。这里主要对LoRaWAN星状网并发结构进行展开说明,LoRaWAN系统主要分为三部分:节点/终端、网关/基站,以及服务器,如图4所示。 图4 LoRaWAN系统架构示意图 节点/终端(Node):LoRa节点,代表了海量的各类传感应用,在LoRaWAN协议里被分为Class A、Class B和Class C三类不同的工作模式。Class A工作模式下节点主动上报,平时休眠,只有在固定的窗口期才能接收网关下行数据。Class A的优势是功耗极低,比非LoRaWAN的LoRa节点功耗更低,比如针对水表应用的10年以上工作寿命通常就是基于Class A实现的。ClassB模式是固定周期时间同步,在固定周期内可以随机确定窗口期接收网关下行数据,兼顾实时性和低功耗,特点是对时间同步要求很高。Class C模式是常发常收模式,节点不考虑功耗,随时可以接收网关下行数据,实时性最好,适合不考虑功耗或需要大量下行数据控制的应用,比如智能电表或智能路灯控制。 […] Read more.