联系我们

深圳市粹联科技开发有限公司

联系人:刘先生

手机:13590150346

电话:0755-86610829

传真:0755-86647123

地址:深圳市龙岗区龙城街道彩云路8号保成泰智汇产业园B栋2楼202室

  • Dragino LoRa Shield:揭开LoRa神秘面纱,原来如此简单!
    新闻分类:行业资讯   作者:数字交换    发布于:2018-05-164    文字:【】【】【

      LoRa是Long Range的缩写。

      Long Range通信是低功耗广域网通信的基础,LoRa无线物联网网关设备制造商常与之相提并论的还有SigFox及NB-IoT,这些都是窄带通信中常见的技术。

      LoRa其实不是新东西,只不过一向比较低调,不曾出现在大众的眼前。但随着荷兰KPN及韩国SK网络的布署成功,LoRa及LoRaWAN一夜之间,成为了IoT的宠儿!

      LoRa的主要特性有如下三大特点:远距离,空空通信距离最大可达20公里;低功耗,LoRa结点使用电池供电的话,可以高达5至10年之久;低速率,传输速率较低,最高也就几百kbps。

      毫无疑问,LoRa无线物联网网关设备制造商这些特点,让热闹已久的IoT更是如虎添翼!

      抛开底层的技术细节,怎样才能快速体验LoRa带来的便利呢?让我们一起来揭开这层神秘的面纱。

      先准备必要的硬件。

      现在各种LoRa模块已非常丰富了,市面上大多数模块都是基于Semtech的SX1272或1276芯片,因此无论从功能还是从使用上来说都是大同小异。这里给大家准备两块来自Dragino的LoRa产品,使用SX1276来实现LoRa调制及解调功能。

    Dragino LoRa Shield:揭开LoRa神秘面纱,原来如此简单!

      Dragino LoRa Shield,提供了Arduino接口,可以与Arduino组合快速访问LoRa功能。

    Dragino LoRa Shield:揭开LoRa神秘面纱,原来如此简单!

      Arduino UNO R3,很常见也很便宜的一块开发板,深受电子爱好者喜爱。

    Dragino LoRa Shield:揭开LoRa神秘面纱,原来如此简单!

    LoRa Shield与Arduino的组合

    Dragino LoRa/GPS HAT:揭开LoRa神秘面纱,原来如此简单!

      另一块用来实现通信的Dragino LoRa GPS Hat,与前面介绍的LoRa Shield不同的是这个上面多了个GPS模块。

      软件支持方面,Semtech专门为SX1272/SX1276推出了软件支持包,粹联科技LoRa无线物联网网关设备制造商一些模块厂商基于此API结合自己的设计进行了适当的修改。

      在Arduino平台,有两个比较有名的移植,一个是lmic,另一个是Radio Head。这里以lmic为例,lmic提供的示例代码中有一个raw文件,提供了基本的LoRa层通信API,只需要做很小的修改就可以对两块开发板进行适配。

      需要修改两个地方以适配特定的开发板,第一个是raw文件本身,如下:

      // Pin mapping

      const lmic_pinmap lmic_pins = {

      .nss = 10,

      .rxtx = LMIC_UNUSED_PIN,

      .rst = 9,

      .dio = {2, 6, 7},

      };

      这里修改的片选信号、复位信号及中断信号用到的引脚,SX1276通过SPI接口与Arduino进行通信,这些接口都是统一的。

      另一个需要修改的是lmic软件包中的config.h文件,主要包括两处修改:通信频段及芯片型号,修改如下:

      #define CFG_eu868 1

      //#define CFG_us915 1

      // This is the SX1272/SX1273 radio, which is also used on the HopeRF

      // RFM92 boards.

      //#define CFG_sx1272_radio 1

      // This is the SX1276/SX1277/SX1278/SX1279 radio, which is also used on

      // the HopeRF RFM95 boards.

      #define CFG_sx1276_radio 1

      第一行修改通信使用的频段,即ISM中的868MHz,后一个#define语句修改芯片型号。

      如此修改之后,LoRa无线物联网网关设备制造商就可以将编译的代码上传到两块开发板,打开串口程序,可以看到通信的过程,如下

      看到了么,两个串口终端输出的信号是一致的,就是循环收、发一条简单的信息。

      Arduino为我们屏蔽了太多的细节,真实的LoRa层通信要设置的参数主要包括如下一些:

      enum _cr_t { CR_4_5=0, CR_4_6, CR_4_7, CR_4_8 };

      enum _sf_t { FSK=0, SF7, SF8, SF9, SF10, SF11, SF12, SFrfu };

      enum _bw_t { BW125=0, BW250, BW500, BWrfu };

      这些定义信息与硬件参数对应,通过写寄存器的方式来进行调整,而写寄存器操作都被封装起来了,以API的形式提供调用。

      是不是很简单!

      不过这还只是冰山一角!

      LoRa通信只是两个结点间的直接通信,要与网络连接,我们还需要进一步了解LoRaWAN的一些细节,LoRa无线物联网网关设备制造商可以把LoRaWAN看作是网络层的通信协议,而LoRa只不过是物理层中的通信!

    分享到:
    点击次数:5677  更新时间:2018-05-16  【打印此页】  【关闭

网站地图:关于我们 | 新闻中心 | 产品中心 | 案例中心 | 淘宝店铺 | 联系我们  | 英文网站


Copyright © 2017 深圳市粹联科技开发有限公司  联系人:刘先生  手机:13590150346 英文网址:www.dragino.com

地址:深圳市龙岗区龙城街道彩云路8号保成泰智汇产业园B栋2楼202室  粤ICP备16124722号

电脑版 | 手机版