为 SenseCAP T1000 追踪器使用 AWS 云服务
AWS IoT 提供云服务,将您的 IoT 设备连接到其他设备和 AWS 云服务。AWS IoT 提供设备软件,可以帮助您将 IoT 设备集成到基于 AWS IoT 的解决方案中。如果您的设备可以连接到 AWS IoT,AWS IoT 可以将它们连接到 AWS 提供的云服务。
登录到 AWS IoT 控制台
如果您没有 AWS 账户,请点击这里创建一个。
添加网关
导航到 Internet of Things
,然后点击 IoT Core
。
在左侧菜单中,选择 LPWAN devices
→ Gateways
,点击 Add gateway
Gateway's EUI
:您网关的 EUI,您可以在设备标签上找到它。
Frequency
:网关的频段。
Name
:为您的网关命名(可选)
SubBand
:可选地,您还可以指定 LoRaWAN 配置数据,例如您想要使用的子频段和可以控制流量流动的过滤器。更多信息,请参见使用 AWS IoT Core for LoRaWAN 配置无线资源位置。
配置您的网关
网关证书
为了验证您的网关以便它可以与 AWS IoT 安全通信,您的 LoRaWAN 网关必须向 AWS IoT Core for LoRaWAN 提供私钥和证书。
点击 Create certificate
。
下载并保存证书文件和服务器信任证书。
里面应该有四个文件,您稍后将使用它们来配置网关。
网关权限
如果您还没有为您的账户创建 IoTWirelessGatewayCertManagerRole IAM 角色,请在继续添加网关之前创建该角色。 没有此角色,您的网关将无法与 AWS IoT 通信。
选择角色:IoT Wireless Gateway Cert Manager Role
,然后提交配置。
复制 CUPS URL,我们将在下一步中使用它。
网关配置
登录到网关的 Luci 配置页面,查看入门指南了解更多详情。
导航到 LoRa
> LoRa Network
。
Mode
:Basic Station
Gateway EUI
:您的网关 eui
Server
:CUPS Server
URL
:我们之前复制的 CUPS URL
Authentication Mode
:TLS Server and Client Authentication
复制我们之前下载的证书文件的内容(证书可以以文本形式打开)。
导航到网关页面并选择您添加的网关。
在网关详情页面的 LoRaWAN 特定详情部分,您将看到连接状态以及接收到最后一次上行链路的日期和时间。
添加配置文件
可以定义设备和服务配置文件来描述常见的设备配置。这些配置文件描述了设备共享的配置参数,以便更容易添加这些设备。AWS IoT Core for LoRaWAN 支持设备配置文件和服务配置文件。
添加设备配置文件
导航到 Devices
> Profiles
,点击 Add device profile
。
提供设备配置文件名称,选择您用于设备和网关的频段(RfRegion),并将其他设置保持为默认值。
添加服务配置文件
导航到 Devices
> Profiles
,点击 Add service profile
建议您保持 AddGWMetaData
设置启用,这样您将收到每个有效载荷的额外网关元数据,例如数据传输的 RSSI 和 SNR。
添加目标
导航到 Devices
> Destination
,点击 Add destination
。
在这里选择 Publish to AWS IoT Core Message Broker
并命名目标的 MQTT topic
权限:选择现有服务角色 > IoT Wireless Gateway Cert Manager Role
目标名称只能包含字母数字、-(连字符)和 _(下划线)字符,不能包含任何空格。
添加 LoRaWAN 设备
添加无线设备
导航到 LPWAN devices
> Devices
,点击 Add wireless device
。
Wireless device specification
:OTAAv1.0x
DevEUI/APP EUI/APP key
:可以在 SenseCAP Mate APP 中找到,查看 Get_Started 了解更多详情。
选择您在上一步中创建的设备配置文件和目标。
导航到设备页面并选择您之前添加的设备。
在无线设备详情页面的详情部分,您将看到接收日期。
配置解码器
创建消息规则
导航到 Message routing
选项卡 → Rules
,然后点击 Create Rule
按钮。
为您的规则命名并提交。
SQL version
: 2016-03-23
SQL statement
: SELECT * FROM "YourDestinationTopic"
这里我们根据 添加目标 填入 t1000-raw
向下滚动到 Rule actions
部分,从 Action 1
中选择 Lambda
,然后点击 Create a Lambda function
。
Function name
: 为您的函数命名。
Runtime
: Node.js 20.x
Architexture
: x86_64
点击 Create function
按钮创建新函数。
创建函数后,会跳转到函数的配置页面。我们稍后会配置它,所以现在先回到规则页面。
点击刷新按钮并选择您之前创建的 Lambda 函数。然后点击 Next
进入步骤 4。
检查规则的所有详细信息是否正确,然后点击 Create
创建规则。
配置 Lambda 函数
回到 Message routing
选项卡 → Rules
,选择您之前创建的规则。
从 Actions
中点击 Lambda
,然后点击链接进入 Lambda 函数配置页面。
在以下函数配置页面上,将 index.mjs
文件重命名为 index.js
,删除所有代码并替换为来自 资源 的脚本,然后点击 Deploy
按钮。
根据您的设备替换 region
和 device id
。
配置解码器后,点击 Configuration
→ Permissions
→ Edit
。
点击底部的 View the xxxxxxxxxxx
角色。
点击 Add permissions
→ Attach policies
。
搜索 AdministratorAccess
,勾选左侧的复选框,然后点击 Add Permissions
。
检查数据
在 MQTT test client
页面检查数据,输入 #
并点击 Subscribe
按钮,您将看到数据。
T1000 Tracker 的原始载荷从 t1000-raw
发布,解码后的数据从 tracker/measurement
发布。