前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【IoT迷你赛】LoRa初探-守护小花

【IoT迷你赛】LoRa初探-守护小花

原创
作者头像
用户4370376
发布2020-03-11 05:49:02
1.4K0
发布2020-03-11 05:49:02
举报
文章被收录于专栏:腾讯云IoT

LoRa介绍

首先,LoRa是一种用于无线物联网络的通信技术,那这种技术和我们熟知的wifi、4g、蓝牙等技术有什么不同,它合适的市场场景是怎么样的呢?

LoRa、Wifi、蓝牙对比

  1. WiFi:日常最常见的网络技术之一,主要工作频段在2.4G以及5G。主要特点:高速率(一般可达100Mbps)、覆盖范围中等(有障碍物信号会有衰减)、高能耗(相对其他物联网技术)。
  2. 3G/4G:移动通信网络主要使用的技术,工作带宽在1.4MHz到20MHz不等。基特点是高速率广覆盖(最多可达100公里)、支持高移动性
  3. 蓝牙:使用主--从模式,工作在2.5GHz频段,视工作模式,覆盖范围在10厘米到100米不等。主要特点是小覆盖小网络(最多7个从设备)、低速率(1-3Mbps)、相对节能(可以持续数天)。最新的低能耗蓝牙(BLUETOOTH-LE)速率更低,可以依靠电池使用数月。
  4. 802.15.4/ZigBee:专门针对物联网、传感器网络设计的一种通信技术,主要特点是低速率(最大0.25Mbps)、低能耗(可以依靠电池使用数月甚至数年)、覆盖范围中等

我们可以从下面的雷达图直观地看出来区别

对比雷达图
对比雷达图

而RoLa和以上技术的适用场景都不太一样,其主要特点是

  • 大范围覆盖(5--10公里,组城市网这个范围正好合适)
  • 抗干扰能力强(非常时候厕所等障碍物较多的场景)
  • 低能耗
  • 双向通信
  • 高网络容量,支持密集节点

从其特点可以看出,RoLa非常适合智能楼宇、智能城市等场景,在智能水务、智能停车等方面已经有相对成熟应用

网络组成

LoRa网络主要由终端(可内置LoRa模块)、网关(或称基站)、Server和云四部分组成。应用数据可双向传输。

网络组成
网络组成

LoRa协议栈

  • 最底层的灰色部分,表示LoRa所工作的频段。LoRa使用了无需授权的ISM频段,在欧洲为868MHz或者433MHz,在美国为915MHz,亚洲为430MHz;
  • 上面的橙色部分,是LoRa物理层。LoRa物理层属于Semtech公司的私有技术并申请了专利,使用CSS(Chirp Spread Spectrum)调制方式。目前只有Semtech提供相关通信模块;
  • 蓝色部分为LoRaWAN链路层协议,由LoRa Alliance联盟制定,是公开标准。主要规定了网络的组织方式、终端工作模式以及链路访问模式等等。
  • 最上面的绿色部分就是用户的应用。

这里特别要注意的是LoRa物理层协议以及LoRaWAN的区别:LoRa物理层是私有协议,是基础;LoRaWAN是LoRa联盟基于LoRa物理层制定的链路层协议,是公开标准。

从前面介绍可以看出,LoRa开发涉及协议、终端、网关、云端服务等领域,还是有比较高的开发门槛的,不过好消息是,腾讯云已经几乎全都封装好了!下面我们用一个演示例子快速了解一下吧~

P-NUCLEO-LRWAN3初探

腾讯云配置

  1. 登录https://console.cloud.tencent.com/iotexplorer
  2. 新建项目 - 新建产品

在“自定义功能”里面“新建功能”

设置LoRaWAN参数

在设备开发页面中,按需调整 LoRaWAN 参数配置。本示例中使用默认的 OTAA 配置。

设置数据解释脚本

这里支持js语法,一般LoRa传输容量有限,所以不要直接传json,这里需要做下处理

下方的模拟调试很好用哦!
下方的模拟调试很好用哦!

创建设备

第三部交互开发先不用修改,直接到第四步

填写信息可以从节点背面找到

好,下面配置网关部分

网关配置

相关信息可以在网关背面找到~

这里配置已经完成啦~下面开始编写示例程序

下载源码

TencentOS tiny官方开源仓下载源码,地址为:https://github.com/Tencent/TencentOS-tiny

进入 <TencentOS-tiny\board\NUCLEO_STM32L073RZ\KEIL\lorawan> 目录,打开TencentOS_tiny.uvprojx工程

修改代码

首先修改 \examples\LoRaWAN\lora_demo.c

代码语言:javascript
复制
tos_lora_module_join_otaa("*******", "************");

这里填入节点相应的 DevEUI 和 AppKEY,可从LoRa节点开发板背面获取。

然后是 \devices\rhf76_lora\RHF76.h,这里80-87是信道

代码语言:javascript
复制
#define RHF76_ATCMD_SET_CHANNEL                 "at+ch=num,80-87\r\n"

就是这么简单,示例代码已经可以跑起来了,马上编译下载吧

完成后节点会重新启动,我们直接通过串口工具观察日志

当看到串口打印如下日志,即说明 LoRa 节点已经通过网关成功入网。

代码语言:javascript
复制
--->+JOIN: Network joined
--->+JOIN: NetID 000000 DevAddr **:**:**:**

在线调试

完成接入后,我们可以在腾讯云上进行设备调试

这里不得不赞一下腾讯云团队,在线调试功能非常方便,虚拟设备调试也非常好用

可以看到,适用腾讯云物联网开发平台可以快速开发RoLa项目~

希望其他同学可以和我一起交流~

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • LoRa介绍
    • LoRa、Wifi、蓝牙对比
      • 网络组成
        • LoRa协议栈
        • P-NUCLEO-LRWAN3初探
          • 腾讯云配置
            • 网关配置
              • 下载源码
                • 修改代码
                  • 在线调试
                  相关产品与服务
                  物联网
                  腾讯连连是腾讯云物联网全新商业品牌,它涵盖一站式物联网平台 IoT Explorer,连连官方微信小程序和配套的小程序 SDK、插件和开源 App,并整合腾讯云内优势产品能力,如大数据、音视频、AI等。同时,它打通腾讯系 C 端内容资源,如QQ音乐、微信支付、微保、微众银行、医疗健康等生态应用入口。提供覆盖“云-管-边-端”的物联网基础设施,面向“消费物联”和 “产业物联”两大赛道提供全方位的物联网产品和解决方案,助力企业高效实现数字化转型。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档