引言
本文為奇跡物聯量產 DTU 產品設計資料分享,主要針對嵌入式 C 語言物聯網開發愛好者學習交流。可幫助以下人員降低物聯網產品開發門檻:
物聯網Cat 1產品開發初學者: 本文將介紹產品的軟硬件定義、硬件設計分析、軟件設計分析,并詳細講解單一功能點功能模塊的驗證過程和測試驗證方法。通過學習本內容,初學者可以在 1-2 天內完成一款 Cat 1 DTU產品的開發全過程,快速提升物聯網產品開發的實踐能力。本文也是紅豆開源產品的一個實戰講解項目。
負責開發類似DTU(Cat 1 版本)功能定義的產研人員:通過本案例,你將全面了解 DTU的設計全部功能模塊拆解分析,并結合紅豆開源平臺(開源硬件+RTOS 開源資料),快速進行微改動,完成自己的物聯網產品項目研發設計。
需要設計一款DTU產品的項目負責人:本案開源了產品設計軟硬件全部設計資料,以及產品手冊、AT指令手冊、JSON通信協議等開發成果,可以直接轉為自己量產產品設計資料,節省開發成本。
TCP版本DTU產品項目概述
遠程終端單元( Remote Terminal Unit,DTU),一種針對通信距離較長和工業現場環境惡劣而設計的具有模塊化結構的、特殊的計算機測控單元,它將末端檢測儀表和執行機構與遠程控制中心相連接。
產品定義&功能描述
硬件功能概述
TCP DTU,用于將遠程現場的傳感器和執行器數據傳輸到中央控制系統或監控中心。DTU通常用于工業自動化、能源管理、環境監測等領域,它可以收集和傳輸各種類型的數據,如溫度、壓力、流量、電流、電壓等。
TCP DTU具有5*6貼片卡/外置SIM卡/全網通卡功能,支持卡基站定位,內嵌看門狗,掉線自動恢復。標準工業RS232/485接口,可以支持6-20V的寬電壓輸入。
TCP DTU為用戶提供標準固件以及對應源碼,以及對應的TCP透傳、AT指令配置等功能的操作例程。
軟件功能概述
網絡通訊功能:為了實現遠程控制中心對終端測控單元的控制,DTU首先應該具備聯網的能力,通過網絡將兩者連接起來。實現了網絡通訊,就要考慮網絡穩定的問題,如果不穩定,需要實現斷線重連等。服務器確定設備目前在線
參數配置功能:網絡通訊可以選擇TCP,MQTT等協議。連接TCP服務器,需要配置TCP服務器地址,端口號等參數;連接MQTT服務器需要配置鑒權信息,訂閱和發布的Topic等參數。此外,其它復雜功能,也會涉及到一些參數的配置。
網絡參數配置功能:上述功能實現后,可以考慮后期維護過程中,當DTU現場維護不方便,使用網絡對其進行配置的方式。配置的方式可以選擇多種形式,可以將上面的指令稍微修改,也可以另外寫一份協議。
心跳功能:當DTU和遠程服務器建立連接后,服務器判斷設備是否在線,需要DTU定時發送一串數據給服務器,用通信來確認DTU在線。
產品硬件定義
系統框圖:
暫時無法在飛書文檔外展示此內容
HaaS框圖:
SOM板Haas框圖
AM430EV5 SOM板1(5*6eSIM卡)Haas框圖
暫時無法在飛書文檔外展示此內容
AM430EV5 SOM板2(全網通SIM卡)Haas框圖
暫時無法在飛書文檔外展示此內容
REV1主板Haas框圖
暫時無法在飛書文檔外展示此內容
也可以購買標準硬件進行軟件開發,購買鏈接:
https://item.taobao.com/item.htm?id=768412868192&spm=a1z10.1-c-s.w4004-25306266394.3.7c4517edPbkQLY
產品軟件功能定義
開源項目實現功能:
AT指令配置設備運行參數,包括:服務器連接IP、端口號;心跳包開啟/關閉;心跳包內容;注冊包模式;注冊包內容。以及復位和查詢相關配置參數指令。
可隨時選擇進入、退出透傳模式
心跳保持功能,心跳間隔可配置
網絡重連功能
理論上可以發送無限長度數據包
波特率固定為115200,可以根據客戶需求定制
網絡AT指令和JSON協議配置功能,可以通過服務器下發遠程AT指令配置
支持遠程升級
軟件功能模塊分析:
按照上面的分析,開發的過程就是實現一個個組件,幾個組件完成一個模塊,幾個模塊完成一個項目的開發。
開發過程會從核心組件驗證,完整代碼詳解,調試三個章節來講,如何使用服務層API或應用層組件中的代碼實現組件和模塊,從而完成整個項目。
軟件流程圖:
根據上面的講解,我們可以輕松畫出每個模塊的流程圖:
暫時無法在飛書文檔外展示此內容
基開發豆平臺開發分析(用了哪些應用層組件和服務層組件)
我們的目的是做一款RTU,根據RTU應該具有的的功能,代碼可以分為:數據存儲模塊,AT指令模塊,切卡模塊,透傳模式切換模塊,TCP模塊,心跳模塊,掉線重連模塊,GNSS模塊,DI模塊,DO模塊,AI模塊,JSON模塊,鬧鐘模塊,Modbus模塊。
模塊是根據相似的功能,把對應的代碼放到同一個源文件中。每個功能算作一個組件,不同組件組合以來,構成了模塊的主要功能。
數據存儲組件:包括文件創建,初始化,讀寫,關閉等。
AT指令組件:包括串口初始化,串口數據接收,發送,數據分析,AT指令解析
切卡組件:包括GPIO初始化,復位切卡
透傳模式切換組件:包括串口初始化,串口數據接收,發送,數據分析,切換模式
掉線重連組件:包括連接狀態檢測,掉線重連
TCP組件:包括參數配置,創建Socket,連接服務器,發送,接收數據
心跳組件:包括參數配置,定時發送
上述模塊功能大致是按照依賴順序來的,下面的模塊實現可能要基于上面的組件。
AT指令模塊
心跳模塊
TCP網絡模塊
網絡AT模塊
主任務模塊
升級模塊
IO模塊
文件模塊
審核編輯 黃宇
-
物聯網
+關注
關注
2927文章
45864瀏覽量
387934 -
TCP
+關注
關注
8文章
1397瀏覽量
80389 -
DTU
+關注
關注
3文章
470瀏覽量
25900
發布評論請先 登錄
兆芯CPU近期軟硬件適配動態
“0元購”智元靈犀X1機器人,軟硬件全套圖紙和代碼全公開!資料免費下載!
CAT1 RTU軟硬件設計開源資料分析 TCP協議+GNSS定位版本

物聯網4G CAT1產品的Socket通訊研發測試方案

CAT1 RTU軟硬件設計開源資料分析(TCP協議+Modbus協議+GNSS定位版本 )

Lora轉4G Cat1網關軟硬件設計開源資料分享(HTTP協議版本)

Lora轉4G Cat1網關軟硬件設計開源資料分享(MQTT協議版本)

研華產品通過統信及兆芯通用軟硬件適配互認測試
紅豆Cat 1開源 項目三: 從0-1設計一款HTTP版本RTU 支持GNSS 產品的軟硬件全過程

紅豆Cat 1開源 項目二: 從0-1設計一款MQTT版本DTU 支持GNSS 產品的軟硬件全過程

紅豆Cat 1開源 項目一: 從0-1設計一款TCP版本RTU 支持Modbus+GNSS 產品的軟硬件全過程

評論