1. 程式人生 > >小熊派開發板實踐:智慧路燈沙箱實驗之真實裝置接入

小熊派開發板實踐:智慧路燈沙箱實驗之真實裝置接入

摘要:嘗試用小熊派開發板(E53_SC1、NB35)真實裝置代替模擬器完成構建智慧路燈應用實驗體驗。

智慧路燈是城市智慧化道路上重要一環,智慧路燈的實施具有節約公共照明能耗、減少因照明引起的交通事故等多種社會意義。路燈也是大家在日常生活中可以強烈感知到的公共設施,更易理解其智慧化的場景。

基於物理網解決方案,我們可以實現路燈的遠端監控與控制,實現遠端控制、按需照明等功能,降低路燈執行成本。

體驗《沙箱實驗:基於IoT平臺構建智慧路燈應用》實驗後,有些小夥伴總覺得模擬器體驗沒有真實裝置好,故小主嘗試用小熊派開發板(E53_SC1、NB35)真實裝置代替模擬器完成實驗體驗。其中,大部分操作步驟相同,本文僅列出需要修改及注意的地方。

平臺側:

1、建立產品:

  • 模擬器:協議型別為MQTT
  • 真實裝置:協議型別為LwM2M/CoAP,且需要開發部署編解碼外掛。

2、配置智慧路燈應用(註冊裝置):

  • 模擬器:裝置標識可自定義,如123456789f。
  • 真實裝置:裝置標識填寫為NB35通訊模組IMEI,可使用串列埠工具+AT指令(AT+CGSN=1)查詢獲取裝置IMEI。

應用側:

1、編譯構建智慧路燈應用:

建立程式碼倉庫後,需要修改部分程式碼適配真實裝置。

① 修改src/main/java/com/huawei/service/RegisterDirectConnectedDevice.java,新增如下程式碼。

paramReg.put("device_name", deviceInfo.getVerifyCode());

② 修改src/main/java/com/huawei/service/CreateDeviceCommand.java,變更及新增如下程式碼。

③ 修改src/main/java/com/huawei/controller/PushReceiver.java,變更及新增如下程式碼。

2、完成如上修改,重新編譯構建出包;再基於新構建的包重新部署路燈應用到ECS伺服器。

裝置側:

1、資源準備:

  • 模擬器:HubSimulator.jar
  • 真實裝置:小熊派開發板(E53_SC1、NB35)

2、真實裝置需要端側開發,程式碼編譯、燒錄。推薦IDE:VS Code+IoT Link外掛

3、基於示例工程建立:oc_streetlight_template

4、修改Demos\oc_streetlight_template\oc_streetlight_template.c,填寫對接的IoT平臺的實際IP、埠。

#define cn_endpoint_id        "BearPi_0001"
#define cn_app_server        "119.3.250.80"
#define cn_app_port         "5683"

5、完成如上修改,編譯燒錄即可。

結果驗證:

1、請將開發板撥碼開關撥到AT+MCU側,並通過USB連線PC上電,進行資料上報。

2、等待1-2分鐘檢視應用介面,頁面應該顯示“環境亮度”為裝置上報數值,“燈狀態”為toggle狀態。

3、“路燈控制”選擇“終端聯控模式”,開關選擇“開”,單擊“設定”。

  • 檢視開發板路燈狀態,燈應該點亮。

4、“路燈控制”選擇“自動調光模式”,設定亮度閾值為100。

  • 若此時裝置上報的光感強度大於100,應用會自動下發關燈命令,指示路燈關閉。
  • 用手遮住路燈擴充套件板上的光強感測器,使光強小於100,若路燈是關閉狀態,則應用會下發開燈命令,指示路燈開啟。

5、“路燈控制”選擇“分段定時模式”,設定關燈時間段為06:00-18:30。

  • 如果系統當前時間位於關燈時間段內,且路燈狀態為開,應用會自動下發關燈命令,指示路燈關閉。
  • 如果系統當前時間位於關燈時間段外,且路燈狀態為關,應用會自動下發開燈命令,指示路燈開啟。

綜上,通過路燈開發板作為真實裝置的接入體驗即完成。

 

點選關注,第一時間瞭解華為雲新鮮技