1 引 言
化成充放電是蓄電池生產(chǎn)工藝中的關(guān)鍵過(guò)程之一,其控制水平直接關(guān)系到產(chǎn)品的質(zhì)量。該工藝要求化成充電機(jī)能夠按時(shí)間、電壓或安時(shí)數(shù)等條件對(duì)蓄電池進(jìn)行多次的充放電,具有靜電、恒流充電、恒壓(限流)充電、恒流放電等多種充放電模式,并要求達(dá)到控制精度≤1%,檢測(cè)精度≤0.5%,限流限壓保護(hù)精度≤2%。常規(guī)生產(chǎn)方式下主要采用人工手動(dòng)操作,控制精度低、勞動(dòng)強(qiáng)度大、人為因素對(duì)產(chǎn)品的質(zhì)量影響很大,因此引入微機(jī)程控裝置對(duì)于改善操作過(guò)程、提高產(chǎn)品質(zhì)量意義重大。[1]
隨著新型單片機(jī)內(nèi)置大容量的FlashROM、各種串行ADC、DAC以及高密度串行E2PROM等技術(shù)的發(fā)展,開(kāi)發(fā)高性能、低成本、緊湊型蓄電池充放電控制器成為可能。根據(jù)小容量多回路充電機(jī)設(shè)備的需要,本文提出了一套由嵌入式單片機(jī)及其外圍串行設(shè)備組成的多回路微控制器的設(shè)計(jì)方案,可以同時(shí)控制4臺(tái)化成充電機(jī)的運(yùn)行,實(shí)現(xiàn)自動(dòng)靜電、恒流充放電、恒壓限流充電等控制功能;采用漢字LCD顯示,可通過(guò)鍵盤(pán)設(shè)定控制程序參數(shù),具有多階段可自動(dòng)按時(shí)間和條件(電壓、電流或安時(shí))控制的功能;斷電后可自動(dòng)記憶狀態(tài),恢復(fù)運(yùn)行后自動(dòng)繼續(xù)原過(guò)程;自動(dòng)監(jiān)測(cè)斷流、過(guò)流、過(guò)壓等故障并告警;此外,通過(guò)RS485串行通信和上位機(jī)聯(lián)網(wǎng)可構(gòu)成兩級(jí)集中監(jiān)控分散型系統(tǒng)。[2-4]
2 控制器的硬件設(shè)計(jì)
多回路化成充放電控制器的硬件主要由主控模塊和過(guò)程處理模塊兩大部分組成。按設(shè)計(jì)要求,主控模塊應(yīng)具有下列功能:(1)良好的人機(jī)交互界面,包括鍵盤(pán)和顯示器;(2)存儲(chǔ)工藝控制參數(shù);(3)掉電保存運(yùn)行狀態(tài)及數(shù)據(jù);(4)高可靠性和抗干擾性;(5)與上位機(jī)聯(lián)網(wǎng)構(gòu)成兩級(jí)集中監(jiān)控或打印記錄系統(tǒng)。過(guò)程處理模塊完成4路化成充電機(jī)的輸入/ 輸出信號(hào)的調(diào)理、隔離與轉(zhuǎn)換。包括系統(tǒng)給定控制量的輸出、電流及電壓采樣值的輸入,以及開(kāi)關(guān)量的輸出。根據(jù)上述功能要求,設(shè)計(jì)控制器的硬件結(jié)構(gòu)如圖1所示。
主控模塊以低功耗、高性能的單片機(jī)AT89C55為主控CPU,其內(nèi)部閃存容量達(dá)到20KB,內(nèi)部RAM 256字節(jié),可滿足較復(fù)雜的控制程序、LCD顯示漢字庫(kù)及通信程序的需要,而無(wú)需擴(kuò)展外部程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器。主控模塊的面板上提供了2×7的薄膜鍵盤(pán)和192×64的點(diǎn)陣式液晶顯示器,使現(xiàn)場(chǎng)操作畫(huà)面非常友好。
采用大容量的24LCXX系列的串行E2PROM來(lái)保存大量的設(shè)定工藝控制參數(shù)及掉電狀態(tài)數(shù)據(jù)。24LCXX與單片機(jī)的接口采用兩線式串行總線,簡(jiǎn)單可靠。單片機(jī)作為主設(shè)備,24LCXX作為從設(shè)備,主設(shè)備對(duì)從設(shè)備進(jìn)行讀、寫(xiě)數(shù)據(jù)操作。
過(guò)程設(shè)備接口均采用串行芯片,接口簡(jiǎn)單,與單片機(jī)間的信號(hào)線最多為四根,使得連線數(shù)目大大減少,且這些信號(hào)線均經(jīng)光耦隔離后接到單片機(jī),提高了系統(tǒng)的可靠性。
另外,考慮到控制系統(tǒng)的特點(diǎn),屬于多點(diǎn)通信方式,且距離較長(zhǎng),數(shù)據(jù)要求雙向傳輸,因此采用連接方便、抗干擾性能好、失真小且成低本的RS-485標(biāo)準(zhǔn)接口,實(shí)現(xiàn)和上位機(jī)之間的數(shù)據(jù)通信。
該微控制器的硬件設(shè)計(jì)充分體現(xiàn)了嵌入式系統(tǒng)結(jié)構(gòu)緊湊,外設(shè)簡(jiǎn)單,體積小,攜帶方便的特點(diǎn),成本亦大大降低。
3 數(shù)據(jù)的存儲(chǔ)管理
在控制4臺(tái)充電機(jī)工作的過(guò)程中,需要保存大量的非易失的數(shù)據(jù),如工藝控制參數(shù)和運(yùn)行控制數(shù)據(jù)。在串行E2PROM中保存了預(yù)置的8組型號(hào)的參數(shù),每組包含12個(gè)階段的工藝控制參數(shù)??刂瞥潆姍C(jī)運(yùn)行的過(guò)程中,系統(tǒng)定時(shí)將各回路充電機(jī)的工作參數(shù)值保存到E2PROM中。當(dāng)系統(tǒng)突然掉電后能自動(dòng)記憶狀態(tài),恢復(fù)運(yùn)行后自動(dòng)繼續(xù)原過(guò)程。
但考慮到掉電發(fā)生的隨機(jī)性,為保證數(shù)據(jù)的正確性與完整性,設(shè)置了特定標(biāo)志,保證寫(xiě)入數(shù)據(jù)的完整性。即每次對(duì) 24LCXX操作前,首先判斷此標(biāo)志,若為FFH,表明基本數(shù)據(jù)區(qū)數(shù)據(jù)完整,將其內(nèi)容寫(xiě)入后備數(shù)據(jù)區(qū);若為00H,表明上一次對(duì)基本數(shù)據(jù)區(qū)的操作被打斷,數(shù)據(jù)不完整,則將后備數(shù)據(jù)區(qū)的內(nèi)容寫(xiě)入基本數(shù)據(jù)去,恢復(fù)掉電前的數(shù)據(jù)狀態(tài)。在對(duì)數(shù)據(jù)操作完成之后,再將標(biāo)志置為FFH,表明對(duì)數(shù)據(jù)的一次完整操作。采用這種給數(shù)據(jù)操作加鎖的方法,有效地確保了系統(tǒng)的穩(wěn)定運(yùn)行。
4 控制器的軟件設(shè)計(jì)
4.1 實(shí)時(shí)多任務(wù)結(jié)構(gòu)及任務(wù)的劃分
控制器軟件采用實(shí)時(shí)多任務(wù)結(jié)構(gòu),分為啟動(dòng)管理任務(wù)和運(yùn)行任務(wù)兩大部分。啟動(dòng)管理任務(wù)包括上電命令處理(輔助自檢、清除記憶數(shù)據(jù)等)、系統(tǒng)初始化和工藝控制參數(shù)等修改設(shè)置,同時(shí)串行通信中斷任務(wù)作為后臺(tái)任務(wù),接收上位機(jī)命令并向上位機(jī)發(fā)送狀態(tài)信息;運(yùn)行任務(wù)在執(zhí)行啟動(dòng)充電機(jī)命令后激活,包括主控調(diào)度程序(前臺(tái)任務(wù))、系統(tǒng)定時(shí)器中斷、串行通信中斷任務(wù)等,按不同優(yōu)先級(jí)調(diào)度運(yùn)行(前臺(tái)任務(wù)被后臺(tái)任務(wù)打斷)。圖2為系統(tǒng)任務(wù)及調(diào)度示意圖。
后臺(tái)任務(wù)1由系統(tǒng)定時(shí)器T0每100ms產(chǎn)生一次中斷,形成基本時(shí)鐘源,為控制和通信任務(wù)提供各類軟件計(jì)數(shù)器。主控調(diào)度程序根據(jù)定時(shí)器計(jì)數(shù)狀態(tài)調(diào)度各個(gè)任務(wù),控制4路充電機(jī)的運(yùn)行。這些任務(wù)包括:每隔1秒掃描一次鍵盤(pán),根據(jù)鍵盤(pán)輸入的命令激活相應(yīng)任務(wù),如啟動(dòng)或終止過(guò)程、顯示設(shè)置參數(shù)等;每隔1秒進(jìn)行例行數(shù)據(jù)采集與處理,分別采集4路充電機(jī)的電壓、電流量,并對(duì)轉(zhuǎn)換的結(jié)果作相應(yīng)的處理;每隔1秒循環(huán)顯示4路充電機(jī)的實(shí)時(shí)工作狀態(tài)參數(shù),包括當(dāng)前工作階段、工作方式、運(yùn)行時(shí)間、電壓電流值、安時(shí)數(shù)等;每隔2秒分別計(jì)算4路充電機(jī)的安時(shí)數(shù);每隔3秒進(jìn)行閉環(huán)反饋控制PI調(diào)節(jié);每隔1分鐘分別累計(jì)4路充電機(jī)的安時(shí)數(shù),同時(shí)備份相關(guān)的數(shù)據(jù)到E2PROM中。運(yùn)行過(guò)程中定時(shí)檢查電流、電壓信號(hào),如遇異常、斷流、過(guò)流、過(guò)壓等故障則及時(shí)顯示故障類型和對(duì)應(yīng)的充電機(jī)號(hào)。
后臺(tái)任務(wù)2為串行通信中斷任務(wù)。由于采用主從式異步串行通信,通信中斷任務(wù)的優(yōu)先級(jí)比定時(shí)器中斷的優(yōu)先級(jí)高。通信中斷包括接收中斷和發(fā)送中斷兩種情況,并需根據(jù)需要進(jìn)行切換控制和處理。平時(shí)處于接收中斷允許狀態(tài),當(dāng)收到上位機(jī)輪詢報(bào)文時(shí)即組織發(fā)送報(bào)文,將報(bào)文幀送到發(fā)報(bào)緩沖區(qū),啟動(dòng)發(fā)送中斷和發(fā)送計(jì)數(shù)器,在以后的發(fā)送中斷任務(wù)中按計(jì)數(shù)器發(fā)送一個(gè)字節(jié)直到發(fā)完該幀即禁止發(fā)送中斷。如收到上位機(jī)數(shù)據(jù)/命令報(bào)文頭則清理收?qǐng)?bào)緩沖區(qū),等待下次接收中斷字節(jié)。
4.2 模塊化的軟件設(shè)計(jì)
本控制器的軟件設(shè)計(jì)采用模塊化結(jié)構(gòu),使程序明晰簡(jiǎn)潔。同時(shí)各模塊間相對(duì)獨(dú)立,可以單獨(dú)調(diào)試,程序擴(kuò)充時(shí),不要更改原有的結(jié)構(gòu),只需修改相應(yīng)的模塊。根據(jù)圖2中系統(tǒng)任務(wù)的劃分,程序模塊主要由主控程序及定時(shí)器中斷程序模塊、通信程序模塊、顯示及鍵盤(pán)處理模塊、輸入輸出及控制量計(jì)算模塊構(gòu)成。各模塊之間的聯(lián)系是采用單片機(jī)的邏輯處理功能,設(shè)置標(biāo)志位,通過(guò)查詢標(biāo)志位的操作進(jìn)行控制和調(diào)用。
由于篇幅的原因,就不詳細(xì)介紹各模塊工作的流程。
5 通信系統(tǒng)的設(shè)計(jì)
本文的應(yīng)用對(duì)象是蓄電池工廠的極板或密閉電池充放電控制裝置,為了降低成本,便于管理并提高系統(tǒng)可靠性,控制系統(tǒng)設(shè)計(jì)可以采用小型的分散型控制系統(tǒng),即兩層結(jié)構(gòu):分散的多回路控制器配一個(gè)操作站(俗稱上位機(jī)和下位機(jī))。通過(guò)低成本、高可靠的RS-485實(shí)時(shí)通信網(wǎng)絡(luò),將數(shù)十臺(tái)多回路控制器與PC機(jī)相連,實(shí)現(xiàn)對(duì)生產(chǎn)過(guò)程的集中監(jiān)控操作。上位機(jī)和下位機(jī)之間的通信包括數(shù)據(jù)下載、數(shù)據(jù)上裝、命令下發(fā)等。通信系統(tǒng)設(shè)計(jì)如下:
(1)系統(tǒng)物理層協(xié)議采用RS-485標(biāo)準(zhǔn),為了在允許范圍內(nèi)盡量提高通信速率,波特率選擇了非標(biāo)準(zhǔn)的3125bps。當(dāng)上位機(jī)采用軟件輪詢方式與20個(gè)現(xiàn)場(chǎng)控制器逐個(gè)通信,通過(guò)適當(dāng)?shù)能浖O(shè)計(jì),可基本滿足充放電過(guò)程操作的實(shí)時(shí)性要求。
?。?)據(jù)鏈路層協(xié)議參考HDLC,采用短幀定長(zhǎng)傳送,每幀有效字節(jié)為7個(gè)。應(yīng)用層要求實(shí)現(xiàn)即時(shí)數(shù)據(jù)上裝、歷史數(shù)據(jù)上裝、控制參數(shù)數(shù)據(jù)下載和命令下發(fā)等功能。
?。?)本系統(tǒng)采用主站輪詢的主從方式,由主站發(fā)起通信,沒(méi)有網(wǎng)絡(luò)沖突;由主站選擇它要求通信的次站,各次站可以有不同的優(yōu)先級(jí)。相對(duì)于總線式控制網(wǎng)絡(luò),這種方式易于理解和實(shí)現(xiàn)。
6 結(jié)束語(yǔ)
實(shí)驗(yàn)和現(xiàn)場(chǎng)實(shí)際運(yùn)行表明,該多回路化成充放電控制器具有較好的人機(jī)對(duì)話窗口,結(jié)構(gòu)簡(jiǎn)單,操作簡(jiǎn)便,參數(shù)設(shè)置靈活,有較強(qiáng)的適應(yīng)性。系統(tǒng)軟硬件設(shè)備工作正常,功能齊全,穩(wěn)定可靠,具有完善的系統(tǒng)自診斷、故障定位功能。而且具有成本低、體積?。?0×160×100)的特點(diǎn)。
參考文獻(xiàn)
[1] 賈英江,賈向英,淺議蓄電池充電,1998,(4):22-24.
[2] 何立民, MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì), 北京航空航天大學(xué)出版社,1990.
[3] 李維諟,郭強(qiáng), 液晶顯示應(yīng)用手冊(cè), 電子工業(yè)出版社,2002.
[4] 冉全,章滌峰,單片機(jī)系統(tǒng)中的多任務(wù)多線程機(jī)制的實(shí)現(xiàn),單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2003,(6)