《電子技術應用》
您所在的位置:首頁 > 測試測量 > 設計應用 > 基于AT89C52的電池四參數(shù)自動檢測系統(tǒng)設計
基于AT89C52的電池四參數(shù)自動檢測系統(tǒng)設計
楊明,,高占鳳,,狄衛(wèi)國
摘要: 介紹了基于AT89C52控制的電池四參數(shù)檢測系統(tǒng),詳細給出了系統(tǒng)的軟硬件結構設計,,給出了A/D轉(zhuǎn)換器MAX197,、顯示驅(qū)動芯片MAX7219在此系統(tǒng)中的應用方法,,及數(shù)據(jù)處理中使用的數(shù)字濾波算法。
Abstract:
Key words :

介紹了基于AT89C52控制的電池四參數(shù)檢測系統(tǒng),,詳細給出了系統(tǒng)的軟硬件結構設計,,給出了A/D轉(zhuǎn)換器MAX197、顯示驅(qū)動芯片MAX7219在此系統(tǒng)中的應用方法,,及數(shù)據(jù)處理中使用的數(shù)字濾波算法,。
    關鍵詞:AT89C52;自動檢測,;電池,;數(shù)字濾波?

    目前,在對普通干電池的出廠檢測中,,廠家主要是對電池的開路電壓,、負載電壓、短路電流進行質(zhì)量檢測,。而電池容量的檢測,,由于具有毀滅性的損害,沒有專門的檢測設備,,僅僅采用抽樣的方法來檢測,。根據(jù)電池特性,其重量參數(shù)可以指示其容量參數(shù),。故而我們設計開發(fā)了基于AT89C52單片機控制的機電一體化智能設備電池四參數(shù)自動檢測儀,,檢測電池的4個基本參數(shù):開路電壓、負載電壓,、短路電流和電池重量,,并同時作到電池正、次品的分選統(tǒng)計功能,。?

1系統(tǒng)硬件結構設計
    如圖1所示,,本系統(tǒng)以AT89C52單片機為核心組成一個具備數(shù)據(jù)采集、對象控制,、結果顯示,、報警裝置、鍵盤操作等多項功能的復雜完整系統(tǒng),。?

1.1微處理器
    本系統(tǒng)采用Atmel公司生產(chǎn)的AT89C52芯片作為微處理器,。AT89C52與MCS—51系列單片機完全兼容,他采用靜態(tài)時鐘方式,,可以大大節(jié)省耗電量,。其內(nèi)部含有Flash存儲器,,在系統(tǒng)開發(fā)時可以十分容易地進行程序修改,即使錯誤編程也不會成為廢品,。而且在系統(tǒng)工作中,,即使突然掉電也能有效地保存一些數(shù)據(jù)信息。?
1.2數(shù)據(jù)采集部分
    數(shù)據(jù)采集和A/D轉(zhuǎn)換由MAX197完成,。MAX197是MAXIM公司出品的高性能12位A/D轉(zhuǎn)換器,,8通道模擬信號輸入,可以滿足使用1片A/D分時進行多參數(shù)測量的要求,。MAX197的其中2路通道為電池重量信號的輸入,,由壓力傳感器獲取原始信號經(jīng)運算放大后輸入。其余6路分別為電池相關電壓,、電流各參數(shù)信號的輸入,。MAX197片選信號/CS接AT89C52的P2.7,讀寫控制信號分別接AT89C52的/WR和/RD,。引腳HBEN為12位轉(zhuǎn)換結果選擇端,,由P1.6控制。當HBEN為高電平,,讀取轉(zhuǎn)換結果的高4位,;當HBEN低電平時讀取低8位。設定MAX197的控制字為01000000B,,則其工作方式為正常工作方式/內(nèi)部時鐘,;內(nèi)部獲取方式;模擬量輸入范圍為0~5 V,;使用通道0。改變控制字的最后3位(000~111)可以依次選取MAX197的第0~7通道,。MAX197通過片內(nèi)的三態(tài)并行接口與AT89C52進行接口,。由于MAX197本身的轉(zhuǎn)換時間較短,且為固定值,,故而在設計時采用了固定延時的方式代替中斷方式,,進行轉(zhuǎn)換結果的讀取,提高了數(shù)據(jù)的通過率和程序的效率,。圖2給出了MAX197與AT89C52的接口電路,。?

???????????

1.3基本I/O部分
    電池四參數(shù)的標準值由撥碼開關設定,開機直接進行顯示,,直觀明了,;且可以方便的改變設定值,以滿足不同檔次電池的測量要求,。顯示部分采用MAX7219來驅(qū)動LED數(shù)碼管,。MAX7219為MAXIM公司出品的串行輸入輸出,、共陰極、8位數(shù)字LED顯示驅(qū)動器,。只須一個外部電阻就可以為所有的LED段電流進行設置,,簡化了電路設計,提高了系統(tǒng)的可靠性,。其與AT89C52的接口通過一個方便的三線串行接口完成,,各個數(shù)字均可被尋址和更新,而不需要重寫整個顯示器,。
    AT89C52的P3.0接MAX7219的串行數(shù)據(jù)輸入端DIN,,在CLK的上升沿,串行數(shù)據(jù)從DIN裝入到內(nèi)部16位移位寄存器中,。在CLK下降沿的DOUT端數(shù)據(jù)有效,。本系統(tǒng)采用3片MAX7219進行級聯(lián),來驅(qū)動24個LED數(shù)碼管,,分別顯示電池的4個參數(shù)值及各分檔測量值的統(tǒng)計結果,。圖3為3片MAX7219級聯(lián)驅(qū)動24個LED數(shù)碼管。?
1.4對象控制部分
    本系統(tǒng)控制的對象有步進電機,、電磁閥,、機械測量推桿、電子開關等,。開機自檢后,,由步進電機帶動傳送帶把電池運到檢測位置處,單片機控制測量推桿夾緊電池進行測量,,所得數(shù)據(jù)經(jīng)處理后與所設定標準值比較,,若滿足設定,視為合格產(chǎn)品,,由傳送帶帶走,;若不滿足,則視為次品,,由單片機控制電磁閥打開壓縮空氣,,吹走次品電池,達到分檢目的,。而當電池為次品或無電池及電池正,、負極反置時,蜂鳴器發(fā)出報警信號,。此系統(tǒng)采用氣動電磁閥,,提高了工作速度和設備的使用壽命。?

    本系統(tǒng)軟件部分采用MCS—51系列匯編語言設計,采用模塊化程序結構,,由主程序模塊,、鍵盤服務模塊、數(shù)據(jù)采集模塊,、數(shù)據(jù)處理模塊,、輸出控制模塊和顯示模塊等幾大模塊組成。主程序模塊簡潔明了,,核心部分為讀鍵,、鍵解釋,進而轉(zhuǎn)向完成不同功能的相應各功能子程序,。這樣設計使得程序總體結構緊湊,、簡潔、易懂,,且易于設計,、調(diào)試、維護和移植,。?
2.1監(jiān)控程序
    由于本系統(tǒng)的子程序調(diào)用條件是多因素的,,不僅與外部鍵盤操作、電信號等有關,也與系統(tǒng)的當前所處的狀態(tài)有關,,故而在監(jiān)控程序中引用狀態(tài)分析的方法,,采用了一鍵多義的編寫方式。分析系統(tǒng)工作時所有可能所處的狀態(tài),,設定一鍵多義,,在不同的狀態(tài)下,鍵解釋的結果不同,,故而轉(zhuǎn)向不同的子程序,。本系統(tǒng)設定了5個功能鍵和1個邏輯鍵,其中顯示鍵為多義鍵,,不同狀態(tài)下分別顯示設定四標準參數(shù),、測量所得正次品電池數(shù)、電池各分檔統(tǒng)計數(shù)等,。邏輯鍵為軟件鍵,定義為30 s延時,。在上述顯示鍵按下后啟動,,若再無重復按下,則30 s后恢復到開機顯示四設定參數(shù)狀態(tài),。?
2.2數(shù)據(jù)采集
    原始數(shù)據(jù)采集中,,采用了VMOS功率場效應管作為電子開關。使用軟件編程的方法,,控制電子開關的打開和閉合,,選通A/D轉(zhuǎn)換器的各模擬輸入通道,,從而對電池的不同參數(shù)進行測量。VMOS管是一種垂直導電型MOS功率場效應晶體管,,兼具有電子管和晶體管的優(yōu)點,。他的開關速度極高,且沒有“熱崩”和“二次擊穿”,,易串并聯(lián)使用,。本系統(tǒng)在對電池短路電流測量中,由于放電電流較大,,故而采用了2個VMOS管并聯(lián)使用,,以達到分流的作用。
2.3數(shù)據(jù)處理
    由于現(xiàn)場各種干擾的存在,,使得采樣所得數(shù)據(jù)有一定的誤差,。故對原始數(shù)據(jù)采取了數(shù)字濾波處理。對本系統(tǒng)中開路電壓的測量,,根據(jù)其取值特點在參考值1.5 V左右波動,,首先去除奇異值,即對所得采樣值序列中明顯偏離參考值的數(shù)據(jù),,視為有干擾存在,,濾除掉;然后再對所得數(shù)據(jù)序列采用中位值濾波法進行處理,,即對剩余序列排隊,,取中間值作為最終濾波結果。這種數(shù)字濾波的軟件算法,,有硬件的功效,,卻不需要硬件投資,而且算法靈活多樣,,效果往往優(yōu)于硬件濾波電路,。應用中可根據(jù)被測參數(shù)實際情況及所得數(shù)據(jù)規(guī)律,而綜合采用多種算法,,以取得更優(yōu)的濾波效果,。?
3結語
    本系統(tǒng)自動化程度高,大大提高了生產(chǎn)效率,;人機界面友好,,易于操作、存取數(shù)據(jù),。采用了合適的新型芯片,,使得系統(tǒng)整體結構可靠性好,精度高。附加的質(zhì)量統(tǒng)計功能,,還可以提供給生產(chǎn)者以決策依據(jù),。實際應用中,取得了很好的效果,。?

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉(zhuǎn)載。