加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入

【RT-Thread作品秀】多功能單通道LoRaWAN網(wǎng)關(guān)(LiteCoG v1.0)

2020/12/31
1697
服務(wù)支持:
技術(shù)交流群

完成交易后在“購(gòu)買成功”頁(yè)面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長(zhǎng)和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購(gòu)買后不支持退換且無法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
方塊圖(3)
  • 方案介紹
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

作者:forest-rain

 

1 概述

物聯(lián)網(wǎng)終極目標(biāo)是實(shí)現(xiàn)萬物互聯(lián),幫助人類社會(huì)實(shí)現(xiàn)更高階的智能化。IoT網(wǎng)關(guān)負(fù)責(zé)海量物聯(lián)網(wǎng)端側(cè)設(shè)備與物聯(lián)網(wǎng)云端應(yīng)用的溝通,發(fā)揮著承上啟下的重要作用,是實(shí)現(xiàn)萬物互聯(lián)的關(guān)鍵一環(huán)。IoT網(wǎng)關(guān)已廣泛應(yīng)用于工業(yè)、農(nóng)業(yè)、畜牧業(yè)、智能家居、智慧城市等等垂直行業(yè)。

LiteCoG(Lite Connect Gateway)是一款小型的、支持多種連接方式的IoT網(wǎng)關(guān),當(dāng)前的主體功能是一個(gè)單雙通道的LoRaWAN網(wǎng)關(guān),北向采用以太網(wǎng)WiFi4G Cat1連接,南向通信采用LoRa通信,同時(shí)也可支持BLERS485等連接方式,具有遠(yuǎn)距離通信、低成本、方便部署、易擴(kuò)展等特性,便于市場(chǎng)規(guī)模推廣。旨在面向智能家居、智慧社區(qū)、智慧停車等局域網(wǎng)內(nèi)、設(shè)備容量較小的物聯(lián)網(wǎng)通信場(chǎng)景,同時(shí)由于具備良好的成本優(yōu)勢(shì),也可以作為L(zhǎng)oRaWAN網(wǎng)絡(luò)的補(bǔ)盲設(shè)備。

當(dāng)前實(shí)現(xiàn)萬物互聯(lián)所面臨的問題與挑戰(zhàn):

如智能家居,目前智能家居還不是社會(huì)剛需,因此大規(guī)模推廣對(duì)成本極其敏感,采用高性能的LoRa網(wǎng)關(guān)芯片(SX130x)方案,可以滿足設(shè)計(jì)需求,但是成本承壓,同時(shí)性能過剩。

如智慧社區(qū),智慧社區(qū)是放大版的智能家居,也是一個(gè)縮小版的社會(huì)。隨著我國(guó)人口日益老齡化,智慧養(yǎng)老社區(qū)的需求日益突顯,如何解決空巢老人、孤寡老人的監(jiān)護(hù)是我國(guó)當(dāng)前社會(huì)面臨的一個(gè)新難題。構(gòu)建智慧社區(qū)所需龐大的啟動(dòng)資金是一個(gè)必須逾越的障礙。

如智慧停車,停車難一直是城市公共交通的長(zhǎng)期挑戰(zhàn)。海量的車,方便了出行,卻受限于終點(diǎn),通過物聯(lián)網(wǎng)技術(shù)把分散的停車資源利用起來,是緩解停車難的可行方式。

LiteCoG網(wǎng)關(guān)基于RT-Thread操作系統(tǒng),采用LoRa SX126XSX127X來提供標(biāo)準(zhǔn)LoRaWAN接入能力,可以較大壓縮BOM成本;借助LoRa調(diào)制的遠(yuǎn)距離通信能力、低功耗特性,在全屋社區(qū)小范圍停車等應(yīng)用領(lǐng)域,基本可以非常靈活的部署電池供電的智能設(shè)備,非常方便。同時(shí)借助RT-Thread強(qiáng)大的軟硬件生態(tài)資源,可以極大加快產(chǎn)品開發(fā)效率,縮短產(chǎn)品上市時(shí)間。

    • LoRaWAN單通道網(wǎng)關(guān)(lgwsc)
          • 利爾達(dá) Unicore
          • 騰訊云 loragw.qcloud.com
      • Class A
      • 支持lgwsc shell命令
      • 支持網(wǎng)關(guān)參數(shù)配置
      • 支持掉電存儲(chǔ)功能
      • 北向連接
        • Ethernet
        • WiFi
        • 4G Cat1

2 開發(fā)環(huán)境

    • RT-Thread版本:4.0.3
    • 開發(fā)工具及版本:RT Thread Studio 2、MDK5
    • PessimonUIBuilder 3.0設(shè)計(jì)器
  • 硬件平臺(tái)
    • ART-Pi主板
      • STM32H750
      • AP6212
    • ART-Pi 工業(yè)擴(kuò)展板
      • 以太網(wǎng)、485
    • ART-Pi 多媒體擴(kuò)展板
      • 320*480 TFT屏幕
    • LoRa多功能能擴(kuò)展板(LRS007)
      • SX1268 LoRa模塊
      • 1.3英寸 OLED液晶屏

3 RT-Thread使用情況概述

  • RT-Thread內(nèi)核:
    • 調(diào)度器:多線程(任務(wù))實(shí)現(xiàn)
    • 線程間同步:信號(hào)量、互斥量
    • 線程間通信:郵箱、消息隊(duì)列
    • 內(nèi)存管理:mem pool、memheap管理算法
    • 軟件定時(shí)器
  • 組件(Compentont)
    • FinSH控制臺(tái)
    • 設(shè)備驅(qū)動(dòng)(Device Drivers)
      • I/O 設(shè)備模型
        • PIN設(shè)備 、I2C設(shè)備、UART設(shè)備、RTC設(shè)備、TOUCH設(shè)備
      • WIFI框架
        • 使用 SPI 框架來驅(qū)動(dòng)SPI接口的設(shè)備(比如本文中的LoRa SPI模塊)
    • 網(wǎng)絡(luò)(Network)
      • AT命令
      • SAL 套接字抽象層
      • TCP/IP協(xié)議棧
        • lwip輕量級(jí)協(xié)議棧
      • 常用工具(Utilities)
        • ulog日志
  • 軟件包
    • AT設(shè)備軟件包:at_device-latest;
    • adbd-v1.1.1
    • btstack-v0.0.1   
    • fal-v0.5.0
    • littlefs-v2.0.5
    • JSON軟件包 cJSON-latest
    • 網(wǎng)絡(luò)工具包 netutils-latest
    • webclient軟件包 webclient-latest
    • webnet-v2.0.2
      • web服務(wù)器
    • loragw-packet-forward-latest
      • 單通道lorawan網(wǎng)關(guān)軟件包
    • lora-radio-driver-latest
      • lora radio驅(qū)動(dòng)軟件包
    • multi-rtimer
      • 低功耗硬實(shí)時(shí)定時(shí)模塊
    • ft6236-v1.0.0
      • 觸摸芯片ft6236驅(qū)動(dòng)
    • Persimmon柿餅庫(kù)
  • 其他
    • ART-Pi SDK開發(fā)包
      • sdk-bsp-stm32h750-realthread-artpi

4 系統(tǒng)設(shè)計(jì)

 

4.1 典型IoT系統(tǒng)應(yīng)用框架

多功能單通道LoRaWAN網(wǎng)關(guān)(LiteCoG)用于連接物聯(lián)網(wǎng)終端設(shè)備與云端服務(wù)器,起到了承上啟下的作用。

4.2 硬件框架

多功能單通道LoRaWAN網(wǎng)關(guān)(LiteCoG)硬件主要由ART-Pi主板+ART-Pi工業(yè)擴(kuò)展板+ART-Pi多媒體擴(kuò)展板+4G Cat1模塊擴(kuò)展板(L610)+LoRa多功能擴(kuò)展板(LRS007)組成。

通過不同的搭配,可滿足不同應(yīng)用場(chǎng)景。比如

    • LoRaWAN室內(nèi)網(wǎng)關(guān)(WiFi版本)
      • ART-Pi主板+LoRa多功能擴(kuò)展板(LRS007)應(yīng)用于智能家居、智慧農(nóng)業(yè)等室內(nèi)場(chǎng)景
    • LoRaWAN室內(nèi)網(wǎng)關(guān)(WiF版本) 帶中控屏
      • ART-Pi主板+ART-Pi多媒體擴(kuò)展板+LoRa多功能擴(kuò)展板(LRS007)應(yīng)用于智能家居、智慧社區(qū)等場(chǎng)景
    • LoRaWAN室外網(wǎng)關(guān)(4G版本)
      • ART-Pi主板+4G Cat1模塊擴(kuò)展板(L610)+LoRa多功能擴(kuò)展板(LRS007)應(yīng)用于智慧停車等室外場(chǎng)景
    • LoRaWAN室內(nèi)外網(wǎng)關(guān)(以太網(wǎng)版)
      • ART-Pi主板+ART-Pi工業(yè)擴(kuò)展板+LoRa多功能擴(kuò)展板(LRS007)應(yīng)用于智慧工廠等場(chǎng)景

多功能單通道LoRaWAN網(wǎng)關(guān)(LiteCoG)北向支持WiFi、以太網(wǎng)、4G Cat1方式,根據(jù)實(shí)際應(yīng)用場(chǎng)景選擇。北向采用LoRa調(diào)試方式,實(shí)現(xiàn)LoRaWAN單通道接入功能。

對(duì)于智能家居等應(yīng)用,若有中控屏需求,則可進(jìn)一步使用觸摸屏或者OLED來進(jìn)行人機(jī)交互。

4.3 軟件框架說明

多功能單通道LoRaWAN網(wǎng)關(guān)(LiteCoG)1.0主體功能之一是實(shí)現(xiàn)單通道的LoRaWAN網(wǎng)關(guān),北向通信協(xié)議是基于UDP通信,南向通信協(xié)議是LoRaWAN,同時(shí)可以進(jìn)一步擴(kuò)展LiteCoG來實(shí)現(xiàn)邊緣計(jì)算功能,即直接對(duì)LoRaWAN終端設(shè)備控制的能力,以便滿足一些網(wǎng)沒有外網(wǎng)、更高的實(shí)時(shí)等情況。其他功能還有網(wǎng)關(guān)參數(shù)配置,掉電保存、獲取天氣信息,OLED顯示,柿餅UI顯示等等

 

5 軟件模塊說明

  • loragw-pkt-fwd單通道lorawan網(wǎng)關(guān)實(shí)現(xiàn)lorawan數(shù)據(jù)包轉(zhuǎn)發(fā)功能
    • static void thread_up(void)
      • 接收到lorawan終端設(shè)備的lora上行消息
      • 周期性獲取狀態(tài)信息
      • 組幀成 PUSH_DATA(json格式),然后發(fā)送給lorawan服務(wù)器
    • static void thread_down(void);
      • 維持與lorawan服務(wù)器之間鏈路
      • 接收并解析lorawan服務(wù)器的下行數(shù)據(jù)包(json),并加入JiT隊(duì)列
    • static void thread_jit(void);
      • 周期性從 JiT 隊(duì)列取報(bào)文并通過lora發(fā)送到lorawan終端設(shè)備
    • static int lgwsc(int argc, char *argv[])
      • shell命令,用于設(shè)置網(wǎng)關(guān)參數(shù)(eui、freq、datarate等)
      • 參數(shù)掉電存儲(chǔ)
  • lora-radio軟件包
    • 實(shí)現(xiàn)lora芯片sx126xsx127x射頻驅(qū)動(dòng)
      • lora-radio-sx126x.c
        • 對(duì)外提供了上層訪問接口實(shí)現(xiàn)
      • lora-spi-sx126x.c
        • sx126x芯片的spi讀寫接口實(shí)現(xiàn)
          •  rt_device
      • sx126x.c
        • lora芯片sx126x底層驅(qū)動(dòng)
  • multi-rtimer軟件包
    • 實(shí)現(xiàn)硬實(shí)時(shí)定時(shí)模塊,用于給lora-radio超時(shí)服務(wù)、給loragw-pkt-fwd提供較精確的下發(fā)定時(shí)器
  • lorawan-ed-stack軟件包
    • 用于解析lorawan協(xié)議幀,實(shí)現(xiàn)LiteCoG本地對(duì)lorawan終端設(shè)備的直接控制

6 演示效果

 

視頻:

7 代碼地址在附件。

8 比賽感悟

參加此次比賽使我對(duì)RT-Thread操作系統(tǒng)有了一個(gè)相對(duì)全面的應(yīng)用與認(rèn)識(shí)。總體感受,RT-Thread是一個(gè)非常強(qiáng)大的RTOS,歷經(jīng)10多年的打磨與沉淀,很多方面已經(jīng)比較成熟與完善。雖然行業(yè)內(nèi)還有很多其他優(yōu)秀的RTOS,但是RT-Thread更貼近于開發(fā)者,不斷迭代創(chuàng)新,同時(shí)代碼風(fēng)格與文檔、豐富組件與軟件包也贏得了很多粉絲。

搭積木式開發(fā),大大提高了開發(fā)效率,這得益于RT-Thread長(zhǎng)期積累、十年磨一劍地持續(xù)迭代與智慧輸出,提供了非常豐富的開源軟件資源,就如同linux一樣,很多輪子已經(jīng)造好,rt-thread使得嵌入式的應(yīng)用開發(fā)變得更簡(jiǎn)單與高效。RT-Thread軟件包的形式,繼承與發(fā)揚(yáng)包管理器的理念,便于大家使用與貢獻(xiàn)自己的代碼與知識(shí)分享,也使得RT-Thread開源社區(qū)更為活躍。

星星之火可以燎原,充實(shí)自己,向大佬們學(xué)習(xí),為開源社區(qū)添磚加瓦,貢獻(xiàn)自己的一份綿薄之力。期望有朝一日,物聯(lián)網(wǎng)行業(yè)可以借助rt-thread等RTOS生態(tài),各行各業(yè)的小伙伴們一同攜手并進(jìn),共同提升產(chǎn)品開發(fā)效率,進(jìn)而提升整體行業(yè)效率,降低社會(huì)成本。

LiteCoG 1.0目前還只實(shí)現(xiàn)產(chǎn)品原型功能,還有很多需要進(jìn)一步優(yōu)化完善的地方,未來也期待跟小伙伴們一起持續(xù)優(yōu)化與迭代為成熟穩(wěn)定的產(chǎn)品。

最后感謝主辦方提供的平臺(tái)與參與活動(dòng)的工作人員們的辛勤付出。

 

 

  • 代碼地址.rar
    描述:代碼地址
  • 【RT-Thread作品秀】多功能單通道LoRaWAN網(wǎng)關(guān)(LiteCoG v1.0).pdf
    描述:多功能單通道LoRaWAN網(wǎng)關(guān) 完整文檔

相關(guān)推薦

電子產(chǎn)業(yè)圖譜