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

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

3天内不再提示

网关中LoRa Basics Station的应用

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

扫码添加小助手

加入工程师交流群

LoRa Basics Station 是 LoRa® 数据包转发器的实现。LoRa 数据包转发器是在基于 LoRa 的网关(带或不带 GPS)主机上运行的程序。

它可以通过安全的 IP 链路将集中器(上行链路)接收的射频数据包转发到 LoRaWAN® 网络服务器 (LNS),也可以通过相同的安全 IP 将 LNS(下行链路)发送的射频数据包传输到一个或多个设备。另外,它可以发送用于网络内时间协调器件的信标信号。这些信标可以在整个网络上与 GPS 同步传输。

#为什么选择 LoRa Basics Station?

在 LoRaWAN 网络中,网关是 LoRaWAN 网络服务器 (LNS) 的物理层 (PHY) 接口。它侦听无线电频谱的某些部分,使用 LoRa 调制从传感器发出的信号中解码出有效的 LoRaWAN 数据包,并将其转发给 LNS。同时也将 LoRaWAN 数据包从 LNS 向下传输到传感器,作为 LoRa 调制信号。

LoRa Basics Station 是 LoRaWAN 网关软件的实现,在处理数据包流、管理频谱接入和 LNS 回程连接等方面提供了核心功能。为了在大量网关上安全、可靠和高效地完成这些任务,Station 定义了两个后端协议:

  • LNS 协议是主要数据层,通过安全的 WebSocket 提供低延迟的双向通信通道。此协议涵盖了负载平衡和集中式配置管理的各个方面。
  • Station 通过配置和更新服务 (CUPS) 协议提供凭据管理和固件更新接口,该协议是经身份验证的简单 HTTPS 事务,用于传递 LNS 接口凭据和已签署的固件二进制文件。

说明:

  • 文档和协议定义可参见链接。
  • 网关软件实现可参见链接。

#LoRa Basics Station 可以做什么?

LoRa Basics Station 可完成与 LoRaWAN A、B 和 C 级的基本数据包转发功能有关的所有任务。此外,Station 还具有多种功能,使其特别适用于重视集中配置管理和远程检查功能的大规模网关部署。Station 的架构使得它可以轻松接入不同平台,甚至嵌入式系统。CUPS 和 LNS 协议的基本功能是可扩展的,并助力编排更复杂的使用场景,包括配置管理、时间保持、远程检查和干预等。

  • 支持常见的无线电硬件参考设计
    • v1.5(单个 sx1301,通过 SPI + FPGA,用于 LBT)
    • v2(多个 sx1301s,通过 SPI + DSP,用于精细的时间戳)
    • Picocell(与 v1.5 类似,但通过 USB 并降低了功耗 – USB 加密狗)
    • Corecell(单个 sx1302,通过 SPI)

  • 精益架构
    • 资源节约型设计 - 适用于嵌入式应用
    • 最小的第三方依赖性,以实现最佳的可移植性
    • 通过丰富的运行时参数集,可实现低等级的微调

  • 全面支持 Linux 主机
    • 守护进程模式
    • 灵活记录、日志文件轮替和裁切
    • 主机/从机设置,用于多无线电操作

  • 安全的防火墙友好型 TCP/IP 通信
    • 无需 ingress 连接
    • 通过 TLS 证书或 HTTP 令牌标头进行身份验证

  • LNS 协议
    • 集中式无线电参数管理
    • 远程系统命令和可选的交互式 shell
    • 灵活的健康和状态报告机制
    • GPS 时间推断
    • 时间传递(方便室内 B 级用例)

  • CUPS 协议
    • 具有回滚功能的连接凭据事务性更新
    • 具有 ECDSA 签名的安全固件更新交付

#LoRa Basics Station 是如何构建的?

LoRa Basics Station 系统概述Figure 1: LoRa Basics Station 系统概述

编译的 Station 二进制文件是在网关主机平台操作系统的用户空间中执行的应用。上图说明了 Station 如何与其他系统组件进行交互。

在左侧,是网关无线电硬件及其与网关主机平台的接口,平台通常通过诸如 SPI 之类的串行接口进行连接。Station 建立在硬件抽象层 (HAL) 库的基础上,该库由 Semtech 提供,适用于不同网关无线电硬件参考设计,以与无线电硬件进行交互。

在右侧,是 Station 期望的后端服务及其相应的协议 LNS 和 CUPS。与这些服务的连接通常是通过基于 IP 的网络建立的。这使得可以在广泛用于万维网且已经验证的协议栈上构建 CUPS 和 LNS 协议,即用于传输的 HTTP 和 WebSockets 以及用于安全的 TLS。

中心框是在操作系统 (OS) 内运行 Station 进程的网关主机平台。该框分为 Station 的高级模块化组件,为不同系统组件提供不同接口:

  • RAL:适用于不同 HAL 的无线电抽象层
  • SYS:适用于不同操作系统(Linux、FreeRTOS 等)的系统抽象层
  • NET:建立在 mbedTLS 之上的网络抽象层

以下是LoRa Basics Station 软件架构更详细的视图。

LoRa Basics Station 软件架构Figure 2: LoRa Basics Station 软件架构

在上图中:RAL、SYS 和 mbedTLS 模块组成硬件指定适配层,为系统组件提供适用于可移植核心实现的统一接口。在编译时,可以选择 RAL 和 SYS 层,并将结果对象与 mbedTLS 库静态链接。

可移植核心是围绕异步协作多任务运行时 (AIO) 构建的无依赖 C 模块,包含 Station 的所有核心功能:LoRa 数据包处理、数据包缓冲、下行链路队列管理、频谱接入管理、协议解析 (JSON)、协议状态逻辑 (CUPS/LNS)、时间同步等。

此架构可实现:

易于移植:将 Station 移植到新的 HAL 的工作仅限于对 RAL 模块的更改。将 Station 移植到新的主机平台上的工作仅限于对 SYS 模块的更改。

易于测试:可以通过使用组件替换 HAL 块来完成与硬件无关的测试,该组件可通过远程过程调用 (RPC) 将对 RAL 的 HAL API 调用转换为测试工具。LoRa Basics Station 回归测试使用了这种方法。

Station 构建环境使我们能够设置编译时选项,从而生成适用于目标环境的理想 Station 可执行文件。这些选项在 setup.gmk 中被归为高级标识符平台和变体。在构建过程中,会自动提取、编译和链接依赖项。

#LoRa Basics Station 如何工作?

#LNS 协议

假设通过 tc.uri 对 LNS 连接进行了正确的配置,Station 将与其连接,并在一开始便将自己通告给服务端点。服务端点以最终的 WebSocket 连接端点响应,且 Station 使用相同的凭据立即进行连接。在向最终连接端点通告自己之后,Station 会收到一个来自 LNS 的配置对象,至少包含频率计划和有网关在其中运行的区域环境。

在应用了频率计划并启动了无线电之后,网关处于稳定状态,在此期间它可以交换许多消息。每当无线电对有效的 LoRaWAN 帧进行解调时,该帧将直接转发到 LNS。另外,LNS 可以通过网关将下行链路数据传输到终端设备。如果成功发送了下行链路数据,LNS 将收到确认。如果 LNS 连接意外终止,则所有接收到的上行链路数据将缓冲,直到重新建立连接。

#CUPS 协议

CUPS 协议是 Station 内的一个独立引擎。它使用带有 JSON 编码主体的 HTTP POST 向 CUPS 端点声明其当前的配置状态。CUPS 服务器使用此信息来决定是否需要更新,并通过包含新凭据集的八位字节流做出响应(适用于 CUPS 端点或 LNS 端点,或者二者皆适用)。空响应表示无需更新。

在该响应中,CUPS 可以选择附加已签署的可执行文件 blob。该可执行文件的格式与协议本身无关,但应与网关主机平台能够应用的格式匹配。对于嵌入式主机平台或可执行文件脚本,它可以是完整的固件映像;对于基于 Linux 的主机系统,它可以是自动提取的存档文件。为了检查可执行文件的签名,可以通过将多个公共 ECDSA 签名密钥放入 sig-{0,1,2,…}.key 文件中进行配置。

CUPS 并非专为全面的网关管理器设计打造。相反,其底层基元为最基本的管理任务提供了一种简单统一的方法:凭据管理和安全的远程固件更新。

#LoRa Basics Station 的安全性如何?

为了确保基于 IP 的后端连接的安全性,LoRa Basics Station 依赖于万维网中日常使用的知名概念。针对给定连接的身份验证模式取决于是否存在连接定义文件 {tc,cups}.{uri,trust,key,crt} 及其内容。

#无身份验证

当服务端点 URL 专门声明纯文本连接时,不使用身份验证:

*.uri:ws://...(适用于 tc.uri)或 http://...(适用于 cups.uri)

如果安全性已经由操作系统通过 IPsec 在网络层上实现,或者如果安全性通过防火墙和网络隔离建立(所有主机都可信),则这很有用。如果通过因特网建立的网关连接没有 IPsec,应始终使用以下身份验证方法之一。

#服务器和客户端身份验证

如果服务端点 URL 被声明为安全连接,则启用双向认证

*.uri:wss://...(适用于 tc.uri)或 https://...(适用于 cups.uri)

通过证书颁发机构 (CA) 检查服务器的真实性。CA 证书必须在 *.trust 文件中提供。

*.trust:服务器 CA 的可信证书(PEM 或 DER 编码的 X509 证书)

Stations 根据是否存在 *.key 和 *.crt 文件提供两种用于建立客户端身份验证的选项:

客户端令牌身份认证 [*.key]

*.key:包含服务器客户端身份验证信息的有效 HTTP 标头(例如,身份验证:...\r\n)

客户端证书身份验证 [*.crt, *.key]

*.crt:客户端证书(PEM 或 DER 编码的 X509 证书)

*.key:私钥(PEM 或 DER 编码的 x509 密钥)

提示:调试网关 TLS 设置的一个好方法是通过将环境变量 STATION_TLSDBG 设置在详细级别 1(最低)和 4(最高)之间执行 Station。

#如何以Basics Station模式将网关连接至TTNv3?

#登录TTN v3

1、登录TTN网站。

登录TTN网站Figure 4: 登录TTN网站

2、输入用户名以及登录密码,单击“Submit”。若未注册账号,单击“Register”,根据提示注册TTN账号。

#注册网关

1、单击“Register a gateway”。

注册新网关Figure 5: 注册新网关

2、填写参数,单击“Create gateway”。

配置参数Figure 6: 配置参数

#生成Token

TTNv3支持TLS服务器身份验证和客户端令牌,这需要信任文件和密钥文件来配置网关以将其成功连接到网络。

1、在“Gateways”页签中,单击已注册的网关,进入网关页面。

进入已注册网关Figure 7: 进入已注册网关

2、在左侧导航树中,单击“API keys”。

进入API keysFigure 8: 进入API keys

3、单击“Add API key”。

  • Name:输入密钥名称
  • Rights:选择“Grant individual rights”。在多选选项中,选中“ Link as Gateway to a Gateway Server for traffic exchange, i.e. write uplink and read downlink”。
配置API keys参数Figure 9: 配置API keys参数

4、单击“Create API key”。将会弹出以下对话框。

保存API keysFigure 10: 保存API keys

注意:切记将密钥复制保存至.txt文件中,对话框关闭后将无法查看或复制密钥信息。

5、密钥复制保存后,单击“I have copied the key”。

#配置网关

1、登录网关Web管理平台。具体操作可参考对应网关的《快速入门指南》手册。

2、在“LoRa Network > Network Settings ”的“LoRa Network Settings ”页面中,配置“Mode”选项为“Basics Station”。

切换模式Figure 11: 切换模式

3、单击“Switch mode”,模式切换成功后,“Basics Station Configuration”参数配置页面将会显示。连接网关至TTNv3,必须配置以下参数:

  • Server:选择LNS Server。
  • URI:The Things Stack服务器地址。该示例中,将网关连接至“European”集群,所以链接为wss://eu1.cloud.thethings.network。
  • Port:LNS Server使用端口为8887,填入8887。
  • Authentication Mode:选择“TLS Server Authentication And Client Token”。
  • trust:使用“Let's Encrypt ISRG ROOT X1”信任证书。查看和下载证书。
  • token:此处为生成的Token。输入时,以“Authorization: ”开始。如:Authorization: YOUR_API_KEY

注意:请注意”Authorization:“ 与“YOUR_API_KEY”之间存在一个空格。

配置网关参数Figure 12: 配置网关参数

4、单击“Save & Apply”,保存设置。在TTN界面可以看到网关以“Basics Station”模式连接至TTNv3。

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

    关注

    356

    文章

    1928

    浏览量

    238614
  • RAK
    RAK
    +关注

    关注

    0

    文章

    48

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于LoRa网关和云组态平台的智能灌溉管理系统

    快速获取,影响到决策科学与及时性。 系统架构 土壤传感器与泵站PLC的各项数据通过LoRa终端进行采集和打包,以LoRa网络对接到4G网关中,随后上传至智慧灌区云组态平台。平台通过组态界面搭建,能及时将土壤和泵站内的数据与设备
    的头像 发表于 04-21 13:43 223次阅读
    基于<b class='flag-5'>LoRa</b><b class='flag-5'>网关</b>和云组态平台的智能灌溉管理系统

    以“网关中间件”实现充电桩OCPP 1.6安全配置文件无缝升级

    深圳惠志科技有限公司推出的OCPP安全代理网关采用"网关中间件"架构,在充电桩与云端CSMS之间透明地部署,实现充电桩OCPP 1.6协议安全配置文件从Profile 0/1到Profile 2/3的无缝升级,而无需触及桩端硬件与固件。
    的头像 发表于 02-04 11:56 1295次阅读
    以“<b class='flag-5'>网关中</b>间件”实现充电桩OCPP 1.6安全配置文件无缝升级

    LoRa智能网关在智慧城市市政设施监控中的解决方案

    市政设施(如路灯、井盖、消防栓、垃圾桶)数量庞大、分布范围广,传统人工巡检方式效率低下且难以实时监控。物通博联利用LoRa智能网关的广覆盖与高容量特性,构建城市级市政物联网,实现对市政设施的远程监测
    的头像 发表于 01-20 17:27 870次阅读
    <b class='flag-5'>LoRa</b>智能<b class='flag-5'>网关</b>在智慧城市市政设施监控中的解决方案

    lora网关智慧公厕组网

    LoRa网关在智慧公厕中的组网应用,通过低功耗、远距离、强穿透的无线传输技术,结合多类型传感器与云管理平台,实现公厕环境监测、厕位引导、资源管理及安全预警等功能,显著提升管理效率与用户体验。一
    的头像 发表于 12-25 14:55 641次阅读
    <b class='flag-5'>lora</b><b class='flag-5'>网关</b>智慧公厕组网

    LoRa数采网关是什么?有什么推荐

    其独特的扩频调制机制,在远距离通信和低功耗设备连接方面表现尤为突出。而LoRa数采网关作为连接终端设备与云平台的关键桥梁,正推动着物联网应用的规模化落地。 LoRa数采网关是一种基于
    的头像 发表于 12-22 15:06 765次阅读

    Amphenol FCI Basics MicroSpaceXS™ 提取工具解析

    Amphenol FCI Basics MicroSpaceXS™ 提取工具解析 在电子工程师的日常工作中,线束返工是一个常见的任务。而要高效、安全地完成线束返工,一款合适的提取工具至关重要。今天
    的头像 发表于 12-11 16:00 696次阅读

    KDS温补晶振实现户外LoRa网关精准同步

    KDS 26MHz温补晶振DSB211SSA凭借±0.5ppm全温稳定性与-40℃~85℃工业级耐受性,为户外LoRa网关提供高精度时钟基准。其1.8mA超低功耗与抗振动特性显著提升网关在恶劣环境下的通信可靠性,有效降低信号误码
    的头像 发表于 12-05 09:38 590次阅读
    KDS温补晶振实现户外<b class='flag-5'>LoRa</b><b class='flag-5'>网关</b>精准同步

    LoRa网关有哪些应用场景与使用功能

    LoRa网关作为低功耗广域网(LPWAN)的核心设备,凭借其长距离通信、低功耗、低成本和灵活部署的特点,在多个领域实现了广泛应用。以下是其核心应用场景与功能解析: 一、核心应用场景 智慧城市 智能
    的头像 发表于 12-03 11:44 976次阅读

    LoRa基站与网关概念

    对设备的控制和管理。 LoRa基站通常具有较高的发射功率和接收灵敏度,可以实现长距离通信。同时,LoRa基站还可以连接多个物联网设备,从而实现多节点通信。 2. LoRa网关
    发表于 12-02 08:30

    LORA无线通信模块怎么组网

    LoRa网关,然后通过网关将数据传输至网络服务器,实现集中管理和数据处理。该组网方式适用于物联网应用中的大范围设备部署,例如智能抄表、环境监测和农业物联网,具有覆盖广、功耗低、抗干扰强等优点。
    的头像 发表于 10-20 14:49 1319次阅读

    5G网关LORA网关有什么区别

    5G网关LoRa网关在技术定位、通信能力、应用场景、成本结构、网络部署五个维度存在本质差异,具体对比如下: 1. 技术定位:高速广域 vs 低功耗广域 5G网关: 基于5G蜂窝网络,
    的头像 发表于 08-20 14:40 1230次阅读
    5G<b class='flag-5'>网关</b>和<b class='flag-5'>LORA</b><b class='flag-5'>网关</b>有什么区别

    智慧农业LORA五网口两串口网关的功能应用

    在智慧农业中,具备多网口与串口功能的LoRa网关(虽未明确提及“五网口两串口”,但可基于LoRa网关的通用特性进行功能应用分析)发挥着重要作用,其功能应用主要体现在环境监测与数据采集、
    的头像 发表于 07-26 13:57 991次阅读

    LoRa 网关:构建低功耗广域物联网的核心枢纽

    LoRa网关作为LPWAN(低功耗广域网)的核心设备,采用扩频调制技术实现远距离通信,凭借其远距离传输、低功耗、低成本的特性,作为 LoRa 网络的核心枢纽,承担着数据汇聚、协议转换和网络管理
    的头像 发表于 07-22 14:08 1130次阅读
    <b class='flag-5'>LoRa</b> <b class='flag-5'>网关</b>:构建低功耗广域物联网的核心枢纽

    LORA通信网关可以应用在哪些领域中

    LORA通信网关基于LoRa技术,具备长距离通信、低功耗、高抗干扰性和低成本等优势,可广泛应用于多个领域,以下是一些典型应用场景: 智能城市 智能照明:LoRa
    的头像 发表于 07-10 16:18 1040次阅读

    请问SCO_Hook是否在CYW20721B2上的HFP音频网关项目中起作用?

    我需要使用 SCO_Hook lib 在 HFP 音频网关中写入和读取语音样本, 因为音频 I2S/PCM 线路在CYW20721的 HFP 音频网关中不起作用 # 如下所述: https
    发表于 06-26 06:34