0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用RAK_common容器镜像,让设备秒变LoRaWAN®网关

瑞科慧联(RAK) 2022-09-21 10:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

近年来,手机、平板等移动平台市场飞速扩展,但让人惊讶的是,SBC(单板计算机)的市场却并没有被“移动平台”蚕食。相反,随着物联网、边缘计算等应用需求的增长,市面上出现越来越多定位于不同应用场景的SBC,树莓派正是其中的佼佼者之一。

由于树莓派开源社区十分成熟,基于树莓派的开发往往事半功倍,因此不少企业都推出了基于树莓派的产品。我们今天要介绍的RAK_common_for_gateway(以下简称rak_common)和其容器化镜像就是其中的一款典型。

RAK_common是瑞科慧联(RAK)基于开源社区资源开发的一套LoRaWAN®软件栈。它可以让用户在极短时间内,在树莓派上部署好LoRaWAN®网关,方便进一步开发或直接将其用于生产环境。

背景介绍

RAK_common软件栈的原始仓库中提供了非常详细的使用指南,包括:如何下载源码、如何使用树莓派内置的 raspi-config 工具来配置相关接口、如何使用一键安装脚本、以及如何使用一个简单的 GUI 来配置网关等相关内容信息。在可支持的硬件平台上,RAK_common 软件栈内的一键安装脚本就可以自动识别树莓派的基础型号,例如树莓派 0、树莓派 3、树莓派 4、树莓派 cm3、以及树莓派 cm4,并自动修改对应的配置文件;在 LoRa®集中器方面,RAK-common 软件栈可以支持 SX1301、SX1302,以及 SX1303 集中器。

poYBAGMpjDSAIRrPAABq_ZQLY9w340.png

瑞科慧联非常贴心地为每种集中器都提供了USB和SPI 规格接口,以及可选的GPS和LTE模块,所以用户可以根据自身实际需求来购买具有“对应接口和对应功能”的集中器,并且在一键安装脚本中,手动选择对应的型号来部署相关代码和配置。RAK-common软件栈可以支持的集中器型号如下所示:

RAK831(Choose RAK2245)

RAK2245

RAK7243/RAK7244 no LTE

RAK7243/RAK7244 with LTE

RAK833(USB)(Choose RAK2247 USB)

RAK2247(USB)

RAK833(SPI)(Choose RAK2247 SPI)

RAK2247(SPI)

RAK2246

RAK7248 no LTE (RAK2287 + raspberry pi)

RAK7248 with LTE (RAK2287 + LTE + raspberry pi)

RAK2287(USB)

RAK7271(Choose RAK2287 USB)

RAK5146(USB)

RAK7371(Choose RAK5146 USB)

RAK5146(SPI)

RAK5146(SPI) with LTE

随着云原生时代的到来,容器技术凭借其可移植性高、部署方便、运维成本低等特点,迅速成为“在边缘计算设备上部署服务”的首选方式。而瑞科慧联的LoRaWAN®UDPPacketForwarderProtocolforDocker 这一项目恰好就是针对RAK-common软件栈进行了代码结构的优化和打包。这样,即使用户不在树莓派硬件平台上,也能快速部署LoRaWAN®UDPpacketforwarder。如果用户在设备上已经安装了docker,使用瑞科慧联提供的容器镜像就更简单,只需要在docker-compose.yml中修改对应的配置选项,然后需要输入一条命令‘docker-compose up‘,就可以在几秒钟内部署好一个LoRaWAN®packetforwarder,将设备变为一台LoRaWAN®网关。

该项目的特性如下所示:

  • 支持多平台、多架构,如AMD64(x86_64),ARMv8,ARMv7andARMv6架构支持基于SX1301, SX1302, SX1303 and SX1308的LoRa®集中器
  • 支持使用SPI和USB接口的集中器
  • 兼容使用TheThingsStack(communityedition/TTNv3)或者是ChirpstackLNS等LoRa®网络服务器
  • 一键部署,同时可配置度高
  • 支持使用Balena部署,方便集群管理

应用示例

下面我会以频段为US915的RAK5146集中器的SPI版本为例子,向大家展示如何使用docker-compose,实现一键部署LoRaWAN®UDP packet forwarder。

前期准备

硬件准备:

  • RAK5146集中器
  • 树莓派3/4/CM3/CM4(CM3或者CM4需要对应的载板)或者任意其他有PCIe/GPIO的arm平台或者x86平台
  • 如果你的host设备上没有PCIe接口,需要使用一个额外的RAK2287PiHAT板载PCle连接器

软件准备:

  • 在本地预安装了docker和docker-compose,以及相关的依赖(docker和docker-compose的安装十分简单,请参照官方文档。

具体步骤如下所示:

  • 新建一个文件夹,并在文件夹中新建一个名叫docker-compose.yml的文件:

mkdir example
cd example
nano docker-compose.yml

  • 接着将下列内容粘贴进该文件并保存:

version: '3.7'

services:

   udp-packet-forwarder:
     image: rakwireless/udp-packet-forwarder:latest
     container_name: udp-packet-forwarder
     restart: unless-stopped
     devices:
        -/dev/spidev0.0
    volumes:
       -/sys:/sys
    environment:
#	     MODEL: "RAK5146"	              #该镜像可根据Rakwireless集中器型号自动配置接口等
       CONCENTRATOR: "SX1303"	    #第三方集中器需要依次定义CONCENTRATOR、INTERFACE等变量,例如RAK5146是基于SX1303芯片
       INTERFACE: "SPI"
       RADIO_DEV: "/dev/spidev0.0"
       BAND: "us_902_928"            #此处以US915为例,根据集中器支持频段修改即可
       TTN_REGION: "eu1"	            #如使用TTS作为ns,默认使用eu1服务器,可按需修改
#     	  SERVER_HOST: "10.2.21.27" #如果不使用TTS,则修改为您自己ns的地址
#	      SERVER_PORT: "1700"         #同上

  • 保存后,在终端同一个目录下中执行如下命令:

pi@rasperry:docker-compose up
#如果安装了新版docker compose,请运行如下命令
docker compose up

如果配置正确的话,你将看到如下的log,其中包含了网关的EUI,以及后续TTS的ns地址。

poYBAGMqcyCAQ0EAAAL0ok4M2yE836.png

网关的EUI可以通过在终端运行以下命令获取:

docker exec -it udp-packet-forwarder ./get_eui.sh

光在网关上部署udp-packet-forwarder可不够,你还需要配置网络服务器(ns),此处我们以TheThingsStack (TTS)为例:

复制上述红色高亮的地址eu1.cloud.thethings.network,使用你的浏览器访问该地址,注册账号后,你将看到TTS 的网关和应用配置页面:

pYYBAGMpjRmAGZZHAABOU3zZqZ8648.png

接下来你需要按照页面上的操作提示,依次进行以下操作:

  1. 点击Go to Gateway
  2. 点击Add Gateway
  3. 依次填入网关的信息,例如ID,名字,EUI,以及频段
  4. 点击页面下方的Create Gateway 来完成网关的创建

完成以上步骤后,请等待片刻,稍后网关将自动连上TTS网络服务器。连接成功后,网关会有如下log:

poYBAGMpjSKAZ9WTAAG6xVOx1_8524.png

而在TTS网络服务器侧,则可以看到网关入网的提示:

pYYBAGMpjTGAFBYfAABjwxWJJVs987.png

以上就是最基础、也最常见的一种部署LoRaWAN®网关的方式。此外,瑞科慧联还提供了基于该镜像的多种应用案例,包括双频段网关、接入influxdb数据库和Grafana图形化面板、接入TagoCore的案例等等,具体可以参考其Github代码仓库

大家可以参考代码仓库中的开源应用案例,只需要稍加修改、就能打造出属于你自己的解决方案。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 物联网
    +关注

    关注

    2942

    文章

    47390

    浏览量

    408907
  • 网关
    +关注

    关注

    9

    文章

    6471

    浏览量

    55702
  • LoRa
    +关注

    关注

    355

    文章

    1855

    浏览量

    237323
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    映翰通发布全新 LoRaWAN 网关 EC312,构建安全可信、灵活可靠、深度智能的 LoRaWAN 边缘网络

    韧性、边缘融合与规模化运维的关键角色。这使 LoRaWAN 的建设重点进一步转向长期稳定可运营的网络能力。 基于这一趋势与行业诉求,映翰通正式推出 全新 EC312 LoRaWAN 网关 。产品面向关键分布式物联网场景设计,可广
    的头像 发表于 12-05 17:55 1030次阅读

    LoRaWAN1302 模块:LoRaWAN 网关的核心引擎# 网关# 思为无线

    网关
    思为无线
    发布于 :2025年09月23日 14:44:39

    如何用网关接入TTN平台,控制多节点LoRaWAN模组?

    文章目录 一、前言 二、准备工作 三、创建网关 四、创建应用 五、创建设备 六、设备信息 七、OTAA模式下AT指令流程 八、ABP模式下AT指令流程 九、TTN日志查看 ●Live Data实时
    的头像 发表于 08-19 17:10 936次阅读
    如何用<b class='flag-5'>网关</b>接入TTN平台,控制多节点<b class='flag-5'>LoRaWAN</b>模组?

    AWT200-LW 系列 LoRaWAN 网关:高效可靠的无线数据传输解决方案

    部署 LoRaWAN 网络接入与无线业务,为用户简化操作流程,提升部署效率。作为专业数据通讯网关,其核心优势在于:通过无线传输实现终端设备的数据采集与分析,省去繁琐布线;同时具备传输距离远、抗干扰能力强、网络容量大、性价比高等特
    的头像 发表于 08-18 09:27 409次阅读
    AWT200-LW 系列 <b class='flag-5'>LoRaWAN</b> <b class='flag-5'>网关</b>:高效可靠的无线数据传输解决方案

    太阳能逆变器“狂飙”的秘诀-耐达讯CAN转EtherCAT网关

    讯通信技术CAN转EtherCAT网关的“魔法” 神秘“调解员”登场!它能:“翻译官”:将CAN数据转EtherCAT,转发延迟仅0.8ms;旧
    发表于 07-18 15:22

    液压阀的\"语言魔法课\":CAN转EtherCAT,设备\"学霸\"!

    \"。它液压阀从\"单兵作战\"变成\"团队王者\",无需推倒重来,就能让新旧设备跳起工业4.0的\"和谐交响曲\"。下次遇到协议壁垒,不妨试试这招——老伙计们
    发表于 07-17 15:37

    液位监测界的“跨界CP”:CCLinkIE转Modbus TCP,设备对话不再“鸡同鸭讲”!

    言的搭档——一个擅长高速大数据传输,一个偏爱简洁兼容性强,怎么才能让他们携手干活?答案就是:耐达讯通信技术CCLinkIE转Modbus TCP网关,这位“神仙翻译官”能让设备“跨
    发表于 07-10 15:52

    水表界的“翻译官”:CCLinkIE和Modbus TCP“无障碍聊天”!

    。别急,这位“双语翻译官”——耐达讯通信技术协议转换网关,能让它们“知己”! 专业翻译,消除“语言壁垒” 耐达讯通信技术协议转换网关堪称工业界的“同声传译器”。它在CCLinkIE
    发表于 07-10 15:43

    科普|LoRa(Long Range)设备LoRaWAN设备区别

    。LoRa是一种物理层无线调制技术,以远距离、低功耗和高抗干扰性著称,而LoRaWAN是基于LoRa的网络协议,定义了设备与网络之间的通信规则和架构。尽管LoRa和
    的头像 发表于 06-24 09:21 1347次阅读
    科普|LoRa(Long Range)<b class='flag-5'>设备</b>和<b class='flag-5'>LoRaWAN</b><b class='flag-5'>设备</b>区别

    当CCLink IE遇上DeviceNet,数据记录仪\"卷王\"?

    DeviceNet温湿度记录仪接入CCLink IE系统时卡了壳:设备通电后数据\"断流\"。加耐达讯通信技术网关\"翻译官\":温湿度数据实时转译成主控
    发表于 06-11 14:48

    医疗设备懂人心」:CCLink IE转DeviceNet触控方案全攻略

    响应,这在急诊室是不可接受的。 工程师通过优化网关配置,调整DeviceNet网关扫描周期与CC-Link IE协议数据刷新设置,并加强设备接地以减少干扰,成功解决了延迟问题,操作指
    发表于 06-10 14:48

    UG67室外型LoRaWAN网关安装指南

    lorawan
    星纵智能
    发布于 :2025年04月30日 13:38:28

    天拓四方边缘计算采集网关设备“会思考”

    ,助力客户加速数字化转型。 一、边缘智能:设备“会思考” TDE网关通过Modbus、OPC UA等工业协议,实现CNC机床、工业机器人等设备
    的头像 发表于 04-15 17:32 514次阅读
    天拓四方边缘计算采集<b class='flag-5'>网关</b>,<b class='flag-5'>让</b><b class='flag-5'>设备</b>“会思考”

    Docker-镜像的分层-busybox镜像制作

    docker hub里面查看busybox的Dockerfile, 知识点4:bootfs 和 rootfs  知识点5:为什么Docker镜像要采用这种分层结构? 如果多个容器共享一份基础镜像,当某个
    的头像 发表于 01-15 10:44 1034次阅读
    Docker-<b class='flag-5'>镜像</b>的分层-busybox<b class='flag-5'>镜像</b>制作

    Dockerfile镜像制作与Docker-Compose容器编排

    Dockerfile镜像制作 docker/podman中, 镜像容器的基础,每次执行docker run的时候都会指定哪个基本镜像作为容器
    的头像 发表于 01-07 11:01 1170次阅读
    Dockerfile<b class='flag-5'>镜像</b>制作与Docker-Compose<b class='flag-5'>容器</b>编排