1引言
蓄電池的化成充放電過程是一個在外加電壓下復雜的化學反應過程,需要監控系統對極板電流電壓值進行監視并對充放電參數不斷調整。一般一個蓄電池生產廠有上十臺甚至上百臺化成充電機在各自控制系統的控制下同時運行,而這些控制系統通常以RS485/CAN總線連接,通過串口與上位機實現主從式通信。隨著網絡化日益普及,出現了底層依然采用RS485總線連接,而留出以太網接口直接用于與企業內部網連接。這里重點講述以太網連接的實現過程。
2監控系統的組成及原理
該系統以AVR為主控制核心,由CS5460A實時采集電流電壓值發送到主控制器。主控制器根據實時數據,采取特定充放電機制,由D/A轉換器TLC5615通過電壓跟隨器輸出0~5 V電壓以控制外部電源電路,進而對蓄電池極板進行不同的充放電過程。選用RTL8019AS作為網卡,系統內嵌uIP協議棧,從而實現了監控系統與PC機的以太網連接。其基本結構如圖1所示。
電池監控系統基本結構
3系統硬件設計
3.1主控制器的選擇
Atmega128采用RISC結構,128 Kb可在系統編程/應用編程Flash程序存儲器,4 Kb EEPROM,4 Kb SRAM,豐富的片內資源很方便運行一個小型的操作系統,如μC/OS-Ⅱ可以嵌入TCP/IP協議。
3.2數據采集電路設計
電池監控系統數據采集電路
CS5460A器件負責采集極板的電流電壓瞬時值,它是一種帶有能量計算引擎的CMOS單芯片功率測量器件,可以測量瞬時電流、瞬時電壓、瞬時功率、能量以及RMS電流和RMS電壓。它采用SPI接口與主機對應接口連接,具有4個I/O口,分別是片選CS、數據串入SDI、數據串出SDO和串行時鐘SCLK。為避免外部干擾,它與主控制器之間由光電隔離器件6N137進行隔離。數據采集電路如圖2所示。其中,VIN+,VIN-為電壓輸入端,用于檢測充放電回路中的瞬時電壓值;IIN+,IIN-為電流輸人端,用于檢測瞬時電流。豐控制器外擴并行存儲器AM29F040B及時保存采樣值,外接串行EEP-ROM AT24C04保存充放電參數。
3.3以太網接口電路設計
RTL8019AS是一種高度集成的10 MB以太網控制器,與NE2000兼容,支持8位、16位數據總線;內置16 KBSRAM緩存;可連接同軸電纜和雙絞線,并可自動檢測所連接的介質,其連接電路示意圖如圖3所示。
電池監控系統網卡接口電路
RTL8019AS的JP引腳決定網卡的工作方式。設計中JP引腳接高電平(VCC=+5 V),即使用跳線方式,此時可省掉外部EEPROM。主機通過I/O模式訪問以太網控制器。RTL80-19AS工作在8位模式下,其引腳IOCS16B經電阻接地,所有的控制功能或數據傳輸都是通過訪問地址偏移為00H~1FH寄存器完成的,所以只需5條地址線(SA4~SA0)即中。在跳線方式下RTL8019AS的I/O地址由引腳IOS3~IOS0決定。將IOS3~IOS0對應引腳全部接低電平,SA8和SA9接高電平,這時RTL8019AS的I/O基地址為300H。8位數據線是SD0~DS7。PL0和PLl1地,采用雙絞線連接。AEN是地址使能端,低電平有效。
4系統軟件設計
4.1系統任務模塊的組成
系統任務共分五大模塊,即采集模塊、充放電控制模塊、RS485總線通信模塊、以太網通信模塊、故障檢測模塊。其中充放電控制模塊根據設置的工藝參數,由D/A輸山0~5V間指定的電壓和電壓保持時間;故障檢測模塊包括電流故障、斷流故障、過流故障、程序錯誤故障、電源欠壓故障和短線故障。
4.2以太網通信模塊的程序設計
首先編寫網卡的驅動程序,以完成網絡通信中數掘鏈路層的任務,它對上層提供3個接口函數:
由于該系統采取多任務機制,因此內嵌小型操作系統μC/OS-Ⅱ。uIP的結構非常簡單,網卡只需將接收的包填人uip_buf,設置uip_len的長度為包長,然后在uIP的輪詢循環中檢查uip_len是否大于零。該程序將以太網通信作為μC/OS-Ⅱ的一個任務,部分程序代碼如下:
5 結語
帶有以太網接口可使控制系統與上層網絡直接連接,但它需要有一直延伸到工廠底層的以太網支持,設備內嵌Web服務器使得其有條件直接通向互聯網與外界直接溝通信息。