今天,我們要介紹的是瑞科慧聯(lián)(RAK)打包并發(fā)布的一款容器。該容器無需進(jìn)行復(fù)雜的配置,即可快速部署一個LoRa Basics? Station,方便開發(fā)人員直接用于生產(chǎn)環(huán)境或進(jìn)一步開發(fā)。本文將著重介紹使用該容器將網(wǎng)關(guān)連接到 The Things Stack(TTS)的過程。
關(guān)于LoRa Basic?Station
LoRaBasics?Station 協(xié)議簡化了大規(guī)模 LoRaWAN? 網(wǎng)絡(luò)的管理,是將網(wǎng)關(guān)連接到 TTS的首選方式。相對于傳統(tǒng)的 UDPpacketforwarder,LoRa Basics? Station的優(yōu)勢是:
- 支持集中更新和配置管理
- 支持 TLS和基于 token的身份驗(yàn)證
- 支持集中式渠道計劃管理
- 不依賴本地時間保持
需要注意的是,在LoRa Basics? Station的部署中,最重要的是在 TTS上能生成對應(yīng)的 APIkey。
該鏡像的原始倉庫中提供了非常詳細(xì)的使用指南,包括支持平臺、前置準(zhǔn)備、進(jìn)階配置指南、權(quán)限配置和其他注意事項。該鏡像支持的LoRa?集中器型號包括SX1301,SX1302,以及SX1303。RAK在每種集中器都提供了USB 和SPI 規(guī)格的接口,以及可選的GPS 和LTE 模塊,所以用戶可以根據(jù)實(shí)際需求來購買具有對應(yīng)接口和功能的集中器,并且通過修改 docker-compose或者Portainer應(yīng)用模板中的對應(yīng)配置來啟動服務(wù)。
RAK提供的LoRa Basics? Station鏡像支持的集中器包括如下:
- SX1301 (only SPI)
- RAK831 Concentrator
- RAK833 Concentrator
- RAK2245 Pi Hat
- RAK2247 Concentrator
- IMST iC880a
- Dragino PG1301
- SX1302 (SPI or USB)
- RAK2287 Concentrator
- Seeed WM1302
- SX1303 (SPI or USB)
- RAK5146 Concentrator
- SX1308 (SPI or USB)
- RAK2246 Concentrator
- RAK2247-1308 Concentrator
容器的特性
- 支持 AMD64 (x86_64)、ARMv8和ARMv7架構(gòu)。
- 支持 SX1301 SPI 集中器。
- 支持 SX1302 和SX1303 SPI和USB (CoreCell)集中器
- 支持 SX1308 SPI 和SX1308 USB (PicoCell)集中器
- 支持同一設(shè)備上的多個集中器(使用一個basicstation服務(wù))
- 與 TTS(社區(qū)版/TTNv3)或Chirpstack LNS等兼容
- 支持 CUPS 和LNS協(xié)議配置
- TTS 服務(wù)器(TTI或TTN)的網(wǎng)關(guān)自動配置
- 幾乎一鍵部署,同時高度可配置
應(yīng)用示例
下面我將以US915 頻段的RAK2287 集中器的SPI 版本為例,展示如何使用docker-compose,實(shí)現(xiàn)一鍵部署LoRa Basics? Station,并將其連接到 TTSV3。
硬件準(zhǔn)備:
- RAK2287 集中器
- 樹莓派3/4/CM3/CM4(CM3 或者CM4 需要對應(yīng)的載板),或者任意其他有PCIe/GPIO 的ARM平臺或者x86 平臺
- 如果你的host 設(shè)備上沒有PCIe 接口,需要使用一個額外的 RAK2287 Pi HAT 板載PCle 連接器
軟件準(zhǔn)備:
在本地預(yù)安裝了docker 和docker-compose,以及相關(guān)的依賴(docker和docker-compose 的安裝請參照代碼倉庫中的介紹或者直接查看 docker的官方文檔)。
具體步驟:
1.你需要首先配置網(wǎng)絡(luò)服務(wù)器(ns),此處我們以TTS為例: 復(fù)制該地址eu1.cloud.thethings.network到你的瀏覽器并注冊賬號。進(jìn)入控制臺后即可看到TTS 的網(wǎng)關(guān)和應(yīng)用配置頁面:
2.創(chuàng)建一個 Gateway并且生成對應(yīng)的 apikey,用于在docke-compose中啟用該容器:
- 點(diǎn)擊Goto gateways
- 點(diǎn)擊頁面右上角的 Registergateway來創(chuàng)建新的網(wǎng)關(guān)
- 依次填入網(wǎng)關(guān)的信息,例如ID,名字,EUI,以及頻段.其中,EUI往往是根據(jù)網(wǎng)口的 MAC地址來的,可以在終端中使用以下命令來獲取默認(rèn)的 EUI:docker run -it --network host --rm xoseperez/basicstation:latest ./get_eui.sh
當(dāng)然你也可以自定義一個EUI,但是需要確保該DeviceEUI沒有被別的用戶在 TTS上使用過。
接著輸入別的信息,例如網(wǎng)關(guān)名字和具體頻段。此處因?yàn)槲覀兊募衅魇?US915頻段,因此我們在此填入的頻段為 “UnitedStates902-928 MHz,F(xiàn)SB2(usedbyTTN)”。
- 點(diǎn)擊左下方 RegisterGateway來完成網(wǎng)關(guān)的創(chuàng)建
- 在網(wǎng)關(guān)的控制臺頁面點(diǎn)擊左側(cè)邊欄中的鑰匙圖案,進(jìn)入APIkeys的生成頁面
- 點(diǎn)擊頁面右上角的 AddAPIkey按鈕,填入名字并勾選以下權(quán)限:“l(fā)ink as Gateway to a Gateway Server for traffic exchange, i.e. write uplink and read downlink“
- 接著會彈出 APIkey的窗口供用戶復(fù)制,請務(wù)必在這一步中將 APIkey復(fù)制并保存到安全的位置。在關(guān)閉了該窗口后,將無法返回該界面獲取該 APIkey,只能重復(fù)上面的步驟重新生成一個新的APIkey。
3.接下來你需要使用 docker-compose來啟動你的 LoRa?集中器,此處我們以使用SPI接口的 RAK2287集中器為例,其頻段為 US915。而 host設(shè)備是一臺樹莓派 4。
- 首先我們需要新建一個文件夾,并在文件夾中新建一個名叫docker-compose.yml 的文件:
mkdir example cd
example
nano docker-compose.yml
- 接著將下列內(nèi)容粘貼進(jìn)該文件并保存:
version: '2.0'
services:
basicstation:
image: xoseperez/basicstation:latest
container_name: basicstation
restart: unless-stopped devices:
-/dev/spidev0.0
-/dev/gpiochip0
environment:
MODEL: "RAK2287"
INTERFACE: "SPI"
TTS_REGION: "eu1"
GATEWAY_EUI: "E45F01FFFF222233" #可以自由指定,需要保證在TTS上不進(jìn)
TTS_FREQUENCY_PLAN_IDBAND: "US_902_928_FSB_2" #此處以US915為例,根據(jù)集中器支持頻段修改即可
TC_KEY: "NNSXS.VRUYFHQ7J5NWWNB3KSW2VWFRGBZF……”#該api key是先在在TTS上生成,然后填入再啟動容器
- 保存后,在終端同一個目錄下中執(zhí)行以下命令:
pi@rasperry:docker-compose up
#如果安裝了新版docker compose,請運(yùn)行如下命令
docker compose up
4.完成以上步驟后,請稍等片刻,網(wǎng)關(guān)將自動連上TTS 網(wǎng)絡(luò)服務(wù)器。Basicstation的容器會打印如下log,包含對應(yīng)的配置選項,例如集中器型號,deviceEUI等:
然后你會看到網(wǎng)關(guān)成功入網(wǎng)的log:
而此時在TTS 網(wǎng)絡(luò)服務(wù)器側(cè),則可以看到網(wǎng)關(guān)入網(wǎng)的提示:
以上就是目前 TTN官方主推的一種部署LoRa?packerforwarder的方式。RAK 還提供多個基于容器技術(shù)的一鍵部署復(fù)雜服務(wù)的方式,包括雙頻段網(wǎng)關(guān),接入influxdb 數(shù)據(jù)庫和Grafana 圖形化面板,接入TagoCore 的案例,具體可以參考其Github 代碼倉庫。
大家可以參考代碼倉庫中的開源應(yīng)用案例,只需要稍加修改,就能打造出屬于你自己的解決方案。
-
TTS
+關(guān)注
關(guān)注
0文章
42瀏覽量
10811 -
LoRa
+關(guān)注
關(guān)注
349文章
1700瀏覽量
232153
發(fā)布評論請先 登錄
相關(guān)推薦
評論