前言
工業樹莓派支持MODBUS TCP/RTU通訊協議,因此,在使用Modbus協議的溫濕度傳感器、電子天平、PLC等設備場景中應用十分廣泛。當工業樹莓派作為MODBUS TCP/RTU主站時,最多可以連接30個從站設備,由此可見,工業樹莓派具有較好的可擴展性。
HongKe Technology
虹
/
科
/
方
/
案
01
面 臨 的 挑 戰
MODBUS從站設備有16位整型數據,但應用更多的是32位浮點型數據,這是因為32位浮點型數據能夠在通訊過程中的控制更加精準,這類常應用于如電子天平的體重數據、溫濕度傳感器的溫度/濕度數據、電機的轉速等場景。
但在這個過程中會面臨數據解析的問題:浮點型數據的應用需要遵循IEE745的數據轉換規則,以實現與整型數據的轉換和利用。
寄存器只能存放16位數據,所以浮點型數據會被拆分成兩個數據部分,分別存放在相鄰的兩個寄存器中,具體如下:
1. 在進行數據讀取的時候,需要把兩個寄存器數據通過數據解析還原成浮點型數據(如圖1中所示);
2. 在進行數據寫入的時候,要通過數據解析把一個浮點型數據拆分成兩個十六進制分別寫入到相應的寄存器內(如圖2中所示)。
圖1.寄存器數據合并成浮點型數據
圖2. 浮點型數據寫入到寄存器
02
解 決 方 案
針對此類問題,虹科提供一種解析方法,具體如下:
1、讀取兩個寄存器數據,通過位操作把兩個寄存器數據合并成浮點型數據。
2、寫入一個浮點型數據,通過位運算把32位浮點型數據拆分成兩個16位整型數據,分別寫入到兩個寄存器中。
03
總 結
工業樹莓派采用Debian系統,開源性較高,可以通過C/C++、Java、C#、Python等方式進行編程。關于浮點型數據轉換成16進制整型數據并進行數據解析可以使用的方法有很多,以上僅為其中一種數據解析方法,這種解析方法存在誤差,誤差范圍為±0.01,可以適用于對浮點型數據精度要求不是特別高的情況。針對以上場景,如有其他解析方法,歡迎添加工程師微信進行交流。
04
方 案 簡 介
虹科工業樹莓派產品具有實時Raspbian系統,內置Broadco多核處理器具備諸如圖像處理類復雜任務處理能力。
此外,它小巧靈活,功耗低,支持用Python/Java/C/C++/C#、Node-RED可視化編程工具進行開發,還能實現CPDESYS軟PLC功能,在數據采集和小型控制等場景可幫助用戶快速創建應用,實現工業物聯網和數字化生產。
-
數據
+關注
關注
8文章
7134瀏覽量
89402
發布評論請先 登錄
相關推薦
評論