趙 勝,李 圍,趙 權
應用研究
基于RS485通信的深海電池組數(shù)據(jù)監(jiān)測系統(tǒng)設計
趙 勝,李 圍,趙 權
(武漢船用電力推進裝置研究所,武漢 430064)
針對深海鋰電池組在充放電過程中的數(shù)據(jù)監(jiān)測的問題,設計了基于Labview圖形化編程平臺的監(jiān)測系統(tǒng),通過單片機與上位機的485串行通信實現(xiàn)了對電池組電壓、電流和溫度數(shù)據(jù)的采集、監(jiān)控以及報警功能。
Labview 數(shù)據(jù)采集 RS-485串行通信 實時監(jiān)測
現(xiàn)在,電池在各個領域和行業(yè)中廣泛的使用,船舶,航空,以及交通領域等等[1],對我們的生活產(chǎn)生了深刻的影響,為了保證電池使用的安全與穩(wěn)定,對電池工作狀態(tài)下的監(jiān)測和早期的預警是非常重要的[2],對電池數(shù)據(jù)的監(jiān)測也必須具有時效性、準確性、持續(xù)性等特點[3],同時,也要具備對數(shù)據(jù)的存儲,故障報警的反應,數(shù)據(jù)查詢分析和統(tǒng)計等功能。
為了對電池充放電的過程進行有效的管理,利用Labview測控軟件開發(fā)設計電池組數(shù)據(jù)采集與監(jiān)測系統(tǒng),具有數(shù)據(jù)采集和波形顯示、故障報警、數(shù)據(jù)查詢和存儲等功能。Labview是圖形化編程語言的開發(fā)環(huán)境,采用數(shù)據(jù)流的編程方式,程序框圖中節(jié)點之間的數(shù)據(jù)流向決定了VI及函數(shù)的執(zhí)行順序[4]。Labview集成了與滿足GPIB、VXI、RS-232和RS-485協(xié)議的硬件及數(shù)據(jù)采集卡通訊的全部功能[5]。Labview編程簡單方便,界面形象,生動,易于監(jiān)測[6]。利用Labview開發(fā)的上位機,可以實現(xiàn)與單片機的通信,接收電池組各項數(shù)據(jù)并顯示出來,簡單方便。
鋰離子電池組在充放電過程中利用電源管理系統(tǒng)完成對電壓、電流和溫度等各項參數(shù)的采集,使用充放電機給電池充電、放電,利用開關控制調節(jié)充電和放電的狀態(tài)。在充放電過程中,觀察電壓,電流以及溫度的實時變化。利用電源管理系統(tǒng)采集電池工作狀態(tài)下的電流、電壓和溫度信號,通過RS-485串口通訊端將信息傳遞給上位機,然后會在上位機上顯示電池組各個參數(shù)的數(shù)值以及波形,方便隨時的監(jiān)測。該數(shù)據(jù)監(jiān)測系統(tǒng)的總體結構如圖1所示。
圖1 系統(tǒng)總體結構
利用充放電機對電池組進行充放電循環(huán)試驗,充放電可以提供穩(wěn)定的恒流源,通過開關面板可以調節(jié)充放電的模式,通過RS485接口與上位機進行通信。
電池電壓的采集使用LTC6804-2芯片,可快速高效的測量12個串接電池的電壓,總誤差低于1.2 mv,LTC6804-2內(nèi)部的ADC采集完成后,通過SPI總線通訊將數(shù)據(jù)傳送給MCU。LTC6804-2芯片的電壓檢測功能,很大程度上簡化了電池管理的設計方案。單節(jié)鋰電池最高電壓不高于3.65 V,電池端電壓信號可以直接接入電池管理芯片通信端口,由此可以得到電壓的值。
電池組的工作電流為放電過程回路中的電流,使用電流檢測板采集電路中的電流值。
霍爾電流傳感器的型號眾多,量程范圍寬泛,精度高、靈敏度高,抗干擾能力強。利用電流傳感器的霍爾效應檢測電路中的磁場強度,然后通過磁場強度計算電路中的電流值。
電池溫度的測量通過內(nèi)部的溫度傳感器將測量結果存放在溫度寄存器中,再經(jīng)過單總線輸入輸出端口與單片機端口完成串行數(shù)據(jù)傳送。
利用電源管理系統(tǒng)采集電壓、溫度、電流數(shù)據(jù),使用電子開關控制總電路及充放電過程。上位機程序監(jiān)測RS485串口通訊端輸出,通過電子開關調節(jié)電池充電和放電過程之間的轉換。
電源管理系統(tǒng)與上位機采用485串口通信模式。在異步串行通信方式中,通信的發(fā)送與接收設備使用各自時鐘控制數(shù)據(jù)的發(fā)送和接收過程,該方式實現(xiàn)起來簡單方便。具體通信流程如圖2所示。
因此,對電池的電流和電壓數(shù)據(jù)的采集利用串行通訊模式進行,采用RS-485異步串行通信標準實現(xiàn)單片機和上位機之間的數(shù)據(jù)通信。RS-485采用半雙工工作方式,支持多點數(shù)據(jù)通信,平衡發(fā)送和差分接收,可以抑制共模干擾,使通信保持穩(wěn)定。
圖2 電池數(shù)據(jù)采集通信流程
利用Labview平臺開發(fā)上位機,Labview具有PCI,PXI,RS-232/485,USB等各種儀器通訊總線標準的所有功能函數(shù),以及對鋰離子電池的充放電過程中電壓、電流、溫度數(shù)據(jù)的變化進行實時監(jiān)測的功能。將界面上的數(shù)據(jù)顯示控件、表格以及波形圖合理的分布在前面板上,設計出的上位機前面板如圖3所示。
圖3 基于Labview平臺上位機前面板
上位機分為前面板和程序框圖,前面板主要分為六個子模塊:電池模塊數(shù)據(jù)界面、電壓數(shù)據(jù)界面、溫度數(shù)據(jù)界面、保護參數(shù)界面、程序更新界面、數(shù)據(jù)查詢界面。電池模塊數(shù)據(jù)界面列出了通訊端口,總電壓及支路電壓、總電流及支路電流、溫度值顯示框,波形圖表,上限報警燈等顯示控件;電壓數(shù)據(jù)界面列出了各支路單體電壓值顯示控件,以及最高電壓序號,最低電壓序號顯示控件;溫度數(shù)據(jù)界面列出了各支路單體溫度值顯示控件,以及最高溫度序號和最低溫度序號;保護參數(shù)界面列出了支路過流,支路過充,過溫,欠溫,單體電壓的保護值,可以設定和讀取保護參數(shù);程序更新界面實現(xiàn)了讀取特定文件,并向下位機發(fā)送指令更新程序狀態(tài);數(shù)據(jù)查詢界面可以查詢不同時間段的電池組的數(shù)據(jù),并將查詢結果導出到excel中,以上就是上位機六個子模塊完成的功能。
Labview程序框圖面板中,主要由選擇打開串口,上位機向下位機發(fā)送請求指令,上位機獲取電壓值、電流值、溫度值和波形值等部分,關閉與串口的會話部分構成。
首先打開串口會話通過VISA資源名稱設置串口號為COM,VISA serial屬性節(jié)點對串口初始化的波特率為19200bit/s,數(shù)據(jù)位為8,無校驗位,停止位為1。上位機收到下位機傳送的數(shù)據(jù)包,并將數(shù)據(jù)信息解析出來,對應每一個單體的電壓、溫度值,以及充放電過程中的支路中的電流值。
上位機向下位機發(fā)送請求指令,在一個while循環(huán)中進行,將請求指令寫入VISA寫入函數(shù)的寫入緩沖區(qū)。程序中“等待下一個整數(shù)倍毫秒”函數(shù)控制循環(huán)速度,“停止”節(jié)點退出整個循環(huán)。
上位機獲取數(shù)據(jù)值通過VISA Read節(jié)點讀取數(shù)據(jù)包,將數(shù)據(jù)包里面的有效信息通過截取字符串函數(shù)截取出來,然后將字符串轉換為字節(jié)數(shù)組,字節(jié)數(shù)組轉換簇函數(shù),最后將數(shù)據(jù)信息按字節(jié)數(shù)解析,單體電壓信息由16位組成,占用兩個字節(jié),電流信息由16位組成,占用兩個字節(jié),溫度數(shù)據(jù)由8位組成,占用一個字節(jié),電池鼓脹信息占用一個bit,以及狀態(tài)信息包含循環(huán)次數(shù)、剩余容量、工作狀態(tài)、故障信息各占一個字節(jié)。程序中對單體電壓、電流和溫度的值都設置了最大值,單體電壓值超出最大電壓值3.6V,低于2.65V報警燈都會亮起,電流值大于100A,溫度超過80℃同樣也會報警。
程序實現(xiàn)了IAP程序更新,調試上位機向BCU板發(fā)送程序更新指令,BCU板回復程序更新準備好應答,上位機收到應答后開始發(fā)送程序數(shù)據(jù),間隔10 ms。BCU接收程序數(shù)據(jù)后進行應答,反饋更新狀態(tài)。
管理系統(tǒng)初始化會清除所有故障記錄數(shù)據(jù),復位容量值,初始化設定所有保護參數(shù)。調試上位機向BCU板發(fā)送管理系統(tǒng)初始化指令,BCU板完成初始化后回復指令。上位機后面板部分程序框圖如圖4所示。
關閉與串口的會話部分,當程序運行結束時,會清空緩沖區(qū),在條件結構中,條件判斷為真時,使用VISA Close節(jié)點關閉串口會話,單片機與上位機通信結束。
圖4 上位機后面板部分程序框圖
經(jīng)測試,該深海電池組數(shù)據(jù)監(jiān)測系統(tǒng)可以快速、準確的監(jiān)控電池組實時電壓,溫度,電流等數(shù)據(jù)及報警信息,對電池組全過程的運行狀態(tài)能夠精確記錄,方便操作人員對電池組系統(tǒng)的狀態(tài)進行分析,以及突發(fā)報警狀況大的及時響應。
本文主要為了研究二次鋰離子電池組在充電放電的過程中各項數(shù)據(jù)的實時變化,采用Labview圖形化編程平臺設計了上位機,界面簡潔直觀,開發(fā)效率高,使用方便。通過單片機與上位機的RS-485串行通信實現(xiàn)了對電池組電壓、電流和溫度數(shù)據(jù)的采集,監(jiān)控和報警功能,同時數(shù)據(jù)也以圖形和數(shù)值的形式顯示出來。
[1] 湯佳明, 安偉. 基于LABVIEW的上位機串口通信程序設計 [J]. 電子設計工程, 2018, 26(11): 86-90.
[2] 魏興亞, 魏寧嫻, 趙佩. 基于LabVIEW的鋰電池SOC估計與參數(shù)監(jiān)測系統(tǒng)[J]. 應用能源技術, 2016(2016年01): 45-48.
[3] 李夢, 楊金月. 基于LabVIEW開發(fā)平臺的單片機串口通訊系統(tǒng)設計[J]. 赤峰學院學報(自然科學版), 2017, 33(23): 37-39.
[4] 萬松峰, 郭聯(lián)金. 基于LabVIEW和ARM的溫濕度監(jiān)控系統(tǒng)設計[J]. 煤礦機械, 2016, 37(8): 24-26.
[5] 劉威. 圖形化語言LABVIEW應用于數(shù)據(jù)采集[J]. 電子技術與軟件工程, 2017(13): 249-249.
[6] 段文勇, 李燕. 基于LabVIEW的無線溫度監(jiān)測系統(tǒng)設計[J]. 科技視界, 2017(4): 181-181.
Design of data monitoring system on lithium-ion battery based on RS485
Zhao Sheng, Li Wei, Zhao Quan
(Wuhan Institute of Marine Electric Propulsion, CSIC, Wuhan 430064, China)
TM912
A
1003-4862(2022)10-0084-03
2021-09-30
趙勝(1988-),男,工程師。研究方向:電源管理系統(tǒng)及設計開發(fā)。E-mail:550736090@qq.com