基于單片機的蓄電池容量檢測系統(tǒng)的設(shè)計【含程序、電路圖】
基于單片機的蓄電池容量檢測系統(tǒng)的設(shè)計【含程序、電路圖】,含程序、電路圖,基于,單片機,蓄電池,容量,檢測,系統(tǒng),設(shè)計,程序,電路圖
畢 業(yè) 設(shè) 計(論 文) 設(shè)計(論文)題目: 基于單片機的蓄電池容量檢測系 系統(tǒng)的設(shè)計 學(xué)生姓名:二級學(xué)院:班級:提交日期:目 錄摘 要IIIAbstractIV第一章 緒 論11.1 課題研究的相關(guān)背景11.2 課題研究的意義11.3 國內(nèi)外研究狀況11.4 本課題主要研究的內(nèi)容2第二章 系統(tǒng)硬件的設(shè)計32.1 系統(tǒng)的方案選擇32.2 系統(tǒng)的總體設(shè)計方案42.3 單片機STC89C52的概況52.4 主要元件72.5 蓄電池容量檢測系統(tǒng)硬件電路設(shè)計132.6 蓄電池容量算法15第三章 系統(tǒng)軟件設(shè)計173.1 主程序設(shè)計173.2 子程序設(shè)計173.3 程序清單19第四章 系統(tǒng)實物制作204.1 系統(tǒng)原理圖204.2 實物焊接204.3 器件詳細清單204.4 程序的編譯204.5 系統(tǒng)調(diào)試214.6 實物演示21第五章 總 結(jié)31參考文獻32附錄1 系統(tǒng)原理圖34附錄2 系統(tǒng)程序清單35致 謝43- IV -基于單片機的蓄電池容量檢測系統(tǒng)的設(shè)計摘 要本課題為基于單片機的蓄電池容量檢測系統(tǒng)的設(shè)計。系統(tǒng)以單片機為核心,硬件主要包括單片機、LCD1602的顯示器、PCF8591數(shù)據(jù)采集器、分壓器和TC35通信等。當(dāng)測量蓄電池容量時,系統(tǒng)會通過分壓電阻進行分壓,PCF8591數(shù)據(jù)獲取器進行數(shù)據(jù)采集,由單片機進行轉(zhuǎn)換,通過LCD1602顯示器進行顯示。當(dāng)觀察LCD1602顯示器時,可以清楚的看到蓄電池的容量,以此來判斷該蓄電池能否滿足該電力系統(tǒng)。當(dāng)檢測的蓄電池容量超過14V時向手機發(fā)送短信。為了確保用電設(shè)備在斷電后仍然能正常并且安全的工作,就必須確保蓄電池容量的足夠,所以實時的檢測蓄電池的容量,對電路安全穩(wěn)定的工作意義重大。在系統(tǒng)的總體設(shè)計方案出來之后,對系統(tǒng)的硬件部分進行了詳細的過成設(shè)計,并繪制出相應(yīng)的系統(tǒng)原理圖,并根據(jù)原理圖制作了相應(yīng)的實物。根據(jù)控制的要求,來繪畫出系統(tǒng)軟件流程圖,并且編寫了相應(yīng)的系統(tǒng)程序。最后對實物進行整體的調(diào)試,調(diào)試的結(jié)果說明該系統(tǒng)的設(shè)計滿足了控制的要求。關(guān)鍵詞:STC89C52單片機;PCF8591數(shù)據(jù)采集器;LCD1602的顯示器;直流穩(wěn)壓電源;容量顯示;TC35通信 AbstractDesign of microcontroller based on battery capacity detection systemAbstractThis topic is the design of the battery capacity detection system based on single chip microcomputer.System as the core, the hardware mainly includes MCU, LCD1602 display, PCF8591 data collector, voltage divider and TC35 communication.When measuring the capacity of the battery, the system will be divided by the voltage divider resistance, PCF8591 data acquisition device for data collection, by the microcontroller for conversion, through the LCD1602 display.When observing the LCD1602 display, you can clearly see the battery capacity, in order to determine whether the battery can meet the power system.Send text messages to mobile phones when the battery capacity is detected by more than 14V.In order to ensure that the use of electrical equipment in power after the still can be normal and safe work, it is necessary to ensure that the battery capacity is sufficient, so the real-time detection of the battery capacity, the safety and stability of the circuit is of great significance.After the overall design of the system, the hardware part of the system was designed in detail, and the corresponding system schematic diagram was drawn, and the corresponding objects were made according to the principle diagram.According to the control requirements, to draw the system software flow chart, and the preparation of the corresponding system program. Finally, the overall system debugging, debugging results show that the design of the system to meet the requirements of the control.Key words: STC89C52 microcomputer; PCF8591 data acquisition device; LCD1602 Display;DC power supply;Capacity display;TC35 Communications 第一章 緒論第一章 緒 論1.1 課題研究的相關(guān)背景在二十一世紀(jì),電力和通信的系統(tǒng)在現(xiàn)代的經(jīng)濟的迅速發(fā)展中間發(fā)揮著巨大的作用。目前發(fā)電廠、變電站和通信基站中的直流電路系統(tǒng)中,基本都是由蓄電池組、充電浮充電裝置和熔斷器等器件組成的。在電力系統(tǒng)和通信系統(tǒng)中,保護裝置以及控制裝置等一系列電路設(shè)備中都需要使用到蓄電池組,所有它性能和狀態(tài)的好壞直接影響到這一系列系統(tǒng)運行的安全和可靠性。因此,檢查蓄電池組的性能和運行狀態(tài)的正常,就能夠保證這些設(shè)備在沒有交流電源的特殊的情況下依舊能夠安全的運行。對蓄電池實施監(jiān)測,并重視對它的日常性維護,才能夠保證蓄電池擁有足夠的放電容量來應(yīng)付可能會發(fā)生的特殊事件,比如火電中斷等事件。蓄電池目前是使用的最廣泛的一種電源。蓄電池利用其中的化學(xué)物質(zhì)可逆的化學(xué)反應(yīng)來實現(xiàn)再充電,它將化學(xué)能轉(zhuǎn)換成可以直接使用的電能并將其存儲起來的器件。它的工作原理:充電時它利用化學(xué)反應(yīng),將電能存儲為化學(xué)能,使用時再將化學(xué)能轉(zhuǎn)換為可用電能對用電器件進行輸出。蓄電池它作為一種性能可靠且循環(huán)利用的化學(xué)電能,它的價值也與日俱增,它廣泛應(yīng)用在電力、交通、通信等部門的設(shè)備中,已經(jīng)成為其不可缺少的重要組成部分。因此蓄電池的容量的多少對系統(tǒng)來說非常重要。1.2 課題研究的意義在二十一世紀(jì),蓄電池組的性能直接關(guān)系到設(shè)備的正常運行是因為它已經(jīng)是很多設(shè)備的動力源或應(yīng)急電源。需要經(jīng)常通過對蓄電池參數(shù)進行嚴(yán)格測量,用來保證蓄電池組處于最佳的工作狀態(tài)來提高電池的使用壽命來讓其可靠運行。人工測量,不僅速度慢而且測量精度也有點低,尤其是其中影響人體健康的有害氣體。通過進行自動測量蓄電池參數(shù),它的測量速度和測量精度可以得到提高,這是十分重要的。之所以會一個電池的故障破壞到整個系統(tǒng),是因為系統(tǒng)是由多個單體電池串聯(lián)而成的,因此通過檢測系統(tǒng)電池的充電和放電過程等各方面的數(shù)據(jù)在線實時檢測。要想來提高整個電池系統(tǒng)的安全性和穩(wěn)定性,就必須要找到損壞的和性能明顯下降的電池。在受到環(huán)境限制下,為了對單一電池進行維修和日常的維護,單獨的電壓和電流的變化通過LCD顯示,可以每個電池用一個單獨的系統(tǒng)來確保系統(tǒng)簡單而且實用。1.3 國內(nèi)外研究狀況對單電池電壓的監(jiān)測在我國蓄電池監(jiān)測系統(tǒng)中是主要內(nèi)容。目前,測量技術(shù)已經(jīng)成熟的方面是關(guān)于溫度和電流的常規(guī)測量。測量單個電壓量的方法在電壓的各種測量方法上非常簡單的一種。在電池組中,測量其中某一個單電池電壓是其中最為關(guān)鍵的??茖W(xué)家們通過了大量的研究工作來解決如何測量單電池電壓問題,其中用繼電器來切換電池組中的每只電池是十分有效的。體積較大、成本較高、壽命短暫、速度太慢、電壓值計算復(fù)雜是觸點式繼電器切換的缺點,因此提出另外一種方法V/F轉(zhuǎn)換器來轉(zhuǎn)換模擬信號。存在的問題是用V/F轉(zhuǎn)換作為A/D轉(zhuǎn)換器時,如何讓輸入信號電壓高于芯片的最大工作電壓。電容上的電壓在A/D轉(zhuǎn)換過程中發(fā)生變化降低了它的測量精度,測量器件的動作延遲導(dǎo)致采樣時間過長,使該方法應(yīng)用較少。我國研制了ZXJ24/2-1型監(jiān)測儀。1989年,無人值守場站PBEC鉛酸蓄電池綜合在線狀態(tài)監(jiān)測系統(tǒng)在美國電力研究所和國家電能研究公司合作下成功研發(fā)。1994年,耗資200萬美元的研究完成樣機的現(xiàn)場試驗。在每一只電池上安裝多傳感器電池,每個電池組監(jiān)測器可以監(jiān)測256個實時數(shù)據(jù)。想要監(jiān)測更多的電池組監(jiān)測器需要通過MODEMS與公用電話線。該技術(shù)已經(jīng)應(yīng)用于電廠等各個領(lǐng)域。韓國人延長整個系統(tǒng)的使用壽命就必須要防止過度充放電,儲存設(shè)備可以使用獨立光伏系統(tǒng)。該系統(tǒng)可以監(jiān)測蓄電池組的單電池電壓、通過的電流和電解液的比重等。一個20個通道的掃描器、一個數(shù)字多路選擇器和一個筆記本電腦可以組成一個便攜式數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)通過一種“電流中斷技術(shù)”,不僅可以監(jiān)測以上數(shù)據(jù)還可以算出電池組內(nèi)部電阻。1.4 本課題主要研究的內(nèi)容本課題所要研究的主要內(nèi)容總體有以下幾個方面:1了解蓄電池容量檢測系統(tǒng)的相關(guān)背景,研究該系統(tǒng)的具體需求和功能;2設(shè)計出基于單片機的蓄電池容量檢測系統(tǒng)的設(shè)計方案,并給出硬件連接方案;3設(shè)計出單片機控制算法,并完成相關(guān)程序的編寫;4研究總的電路圖,了解其基本功能,并且能夠掌握住各個主要功能部分的設(shè)計方法和原理,總結(jié)出設(shè)計思想,發(fā)現(xiàn)該設(shè)計的在現(xiàn)實中實用價值。5設(shè)計蓄電池容量檢測系統(tǒng)時,能夠利用LCD1602模塊將蓄電池電壓及容量信息顯示出來。6當(dāng)待測蓄電池超過14V時發(fā)送短信提示。- 42 - 第二章 系統(tǒng)硬件的設(shè)計第二章 系統(tǒng)硬件的設(shè)計2.1 系統(tǒng)的方案選擇2.1.1選擇芯片方案1:采用HT46R22系列的單片機。這種單片機是為A/D轉(zhuǎn)換的而設(shè)計的一種8位高性能精簡指令集所構(gòu)成的,比如傳感器信號輸入。引腳和功能相同的就是掩膜版本HT46C22和OTP版本HT46R22。在帶傳感器的A/D轉(zhuǎn)換和工業(yè)控制等系統(tǒng)中需要單片機可以實現(xiàn)低的能耗,靈活的使用I/O,在A/D轉(zhuǎn)換的多通道傳輸以及IC通信暫停和喚醒等方面的功能。由于它比較復(fù)雜,導(dǎo)致它較貴的價格,并且它的焊接也不太方便,種種原因?qū)е略撈骷^長的開發(fā)制作。方案2:采用STC89C52單片機。多功能保護器是該單片機的核心控制單元,十分符合本次課題的系統(tǒng)設(shè)計,它能夠?qū)崿F(xiàn)PCF8591數(shù)據(jù)采集器的信號處理和控制TC35模塊的報警短信。STC89C52單片機控制簡單和操作方便又可以利用它控制和尋址等方面的功能來實現(xiàn)本次設(shè)計。該單片機擁有8K的存儲空間來保證存儲操作指令,可以按位尋址使用I/O口,最重要的是它的價格十分低。通過比較,方案2是本設(shè)計較理想的方案。并且從價格和操作上看,也選擇方案2。2.1.2蓄電池電壓檢測模塊的選擇方案1:采用PCF8591系列模塊。1個串行IC總線接口接入4個模擬輸入和1個模擬輸出可以組成一個單獨供電且單片集成PCF8591器件,它的數(shù)據(jù)獲取是8-bit CMOS。8個PCF8591器件可以同時連接在同一個IC總線上,它的硬件地址編程可以使用它的地址引腳A0, A1和A2。PCF8591的IC總線可以使用雙線雙向串行來傳輸?shù)刂泛涂刂菩盘柕葦?shù)據(jù)。它的模擬量是用多路復(fù)用輸入的,它的模數(shù)和數(shù)模轉(zhuǎn)換都是8位的,因此它的片上可以進行跟蹤和保持等方面的功能。IC總線的最大速度決定了它的最高轉(zhuǎn)換速率。方案2:采用DS2438系列模塊。DS2438智能電池監(jiān)視器是一個專門為測試電池組數(shù)據(jù)的器件。它可以存儲各種電池的參數(shù),是精確實時測試蓄電池信息的很好的器件。DS2438和中央微控制器間使用1條連線來接收和發(fā)送信息,這就說明可使用一個電池電源、地線和1-Wire接口來組成電池組。通過比較,方案1適合本次的蓄電池容量檢測系統(tǒng),它性能穩(wěn)定,價格便宜。2.1.3顯示器的選擇方案1:采用HD44780液晶顯示模塊。它是一種的字符型的液晶顯示器件,其他公司使用的電路如NOVATEK公司的NT3881,SUNPLUS公司的SPLC78A01,SAMSUNG公司的KS0066等都與它的主控制驅(qū)動電路HD44780(HITACHI)相兼容。利用多個57或者510點陣塊可以來形成的液晶顯示器,在智能儀表和辦公自動化等領(lǐng)域以經(jīng)在使用它。方案2:采用LCD1602顯示模塊。它是一種點陣型液晶顯示,專門用來顯示字母、數(shù)字、符號等數(shù)據(jù)的。由于它每位和每行之間都有間隔,所有它可以很好的顯示每一個字符卻不能顯示形象的圖形。即使使用自定義CGRAM,結(jié)果也是一樣的。LCD1602是指顯示的內(nèi)容為162,它可以顯示兩行,且每行16個字符。通過比較,本設(shè)計只需采用方案2。2.1.4 GSM通信模塊選擇方案1:采用TC35系列模塊。TC35可以實現(xiàn)數(shù)據(jù)傳輸和短消息的服務(wù),是Siemens公司無線通信GSM模塊的主要產(chǎn)品。GSM模塊在900MHz工作時耗能2W(900M),在1800MHz工作時耗能為1W(1800M),限制在3.3V5.5V電壓下工作。TC35I和TC35是同一系列的產(chǎn)品,但是它們外形、體積和電壓等方面是不同的,TC35I比TC35價格貴的原因是因為TC35I的使用能耗是十分低的,有利于節(jié)省。方案2:采用MC35系列模塊。西門子公司GPRS模塊MC35不僅擁有方案一的所有功能,還能利用GPRS。MC35I價格高過TC35是因為它的傳輸速度要比TC35快的多。通過比較,方案1適合本次的短信發(fā)送系統(tǒng),它出貨量大,價格便宜。2.2 系統(tǒng)的總體設(shè)計方案為了實現(xiàn)系統(tǒng)對于蓄電池容量的檢測,設(shè)計了如圖2.1所示的系統(tǒng)。本次的設(shè)計系統(tǒng)主要分為液晶顯示電路、蓄電池電壓檢測電路、單片機核心電路和短信發(fā)送電路。系統(tǒng)以STC89C52單片機為核心,利用電源電路對被測蓄電池進行5倍的分壓,利用蓄電池電壓檢測電路進行檢測,通過單片機與LCD1602之間進行轉(zhuǎn)換,在液晶顯示屏上顯示被測蓄電池的電壓以及容量,這樣方便我們了解該蓄電池是否能滿足它所使用的電路系統(tǒng)。當(dāng)蓄電池電壓高于14V是,可以知道該蓄電池電量已經(jīng)充滿,利用TC35向手機發(fā)送短信。圖2.1系統(tǒng)總體設(shè)計框圖2.3 單片機STC89C52的概況STC89C52是一個擁有8K可編程的Flash存儲器,它的控制器是由8位CMOS,因此它擁有很低的能耗。STC89C52的指令和引腳與工業(yè)上的80C51等系列產(chǎn)品完全相兼容,主要是因為存儲技術(shù)的高密度和不易丟失性造成的。通常使用的編程器可以在它的片上的Flash進行編程。十分靈活的控制各種應(yīng)用系統(tǒng)是STC89C52單片機的主要特點,是因為可自主編程的Flash和8位的CPU在它的芯片上。在掉電的保護方式下,RAM的內(nèi)容可以保存,振蕩器被凍結(jié),單片機的所有工作都停止,一直到下一個的中斷或者硬件可以復(fù)位為止【1】。通過把程序的代碼燒寫進這種單片機,并在它的外圍接上電源電路、晶振電路和復(fù)位電路等各種模塊,就構(gòu)成了一個獨立的系統(tǒng)。1 STC89C52標(biāo)準(zhǔn)功能:1)8k字節(jié)的Flash。2)256字節(jié)的RAM。3)32位的I/O口線。4)看門狗定時器。5)2個數(shù)據(jù)指針。6)3個16位的定時器/計數(shù)器。7)1個6向量的2級中斷結(jié)構(gòu)。8)全雙工的串行口。9)片內(nèi)晶振和時鐘電路。2STC89C52引腳介紹:圖2.2 引腳圖1)Vcc(40腳):+5V電源端;2)Vss(20腳):接地端。3)XTAL1(19腳):當(dāng)做外部時鐘來使用時必須接地,因為它的片內(nèi)是晶振電路的反向放大器輸入端。4)XTAL2(18腳):連接外部的晶體和微調(diào)電容一端。當(dāng)通過示波器來查看這個端口是否有脈沖信號的輸出可以判斷STC89C52的晶振電路是否在正常工作。5)RST(9腳):它高電平時有效,輸入復(fù)位信號。想要完成復(fù)位的操作,就需要在這里保持兩個機器周期(24個時鐘的振蕩周期)高電平。6)ALE/PROG(30引腳):是地址鎖存允許的信號端。當(dāng)STC89C52通電正常工作之后,此引腳可以不斷的向外輸出正脈沖信號。當(dāng)通過示波器來查看這個端口是否無脈沖信號的輸出,只有當(dāng)信號輸出時才能說明STC89C52的芯片是好的。7)PSEN(29腳);是程序存儲所允許的輸出信號引腳。當(dāng)它作為片外存儲器時,就會定時的輸出負脈沖的選通信號。這個引腳接的是ERROM的OE端。當(dāng)通過示波器查看PSEN端是否有脈沖輸出,當(dāng)有時就說明CPU工作正常。8)/VPP(31腳):是外部程序存儲器地址允許輸入端。CPU訪問片內(nèi)ERROM/ROM就需要EA引腳連接高電平,才能執(zhí)行內(nèi)部程序存儲器中的指令。當(dāng)接低電平時,CPU只會訪問外部ERROM/ROM中的指令。連接沒有芯片的器件時,需要將EA引腳接地并且外擴ERROM。3I/O(輸入/輸出端口,P0,P1,P2,P3)P0口:P0口是漏極開路8位準(zhǔn)雙向I/O端口之一;P1口:是8位準(zhǔn)雙向I/O端口;P2口:用做普通的I/O,或高8位的地址總線輸出地址(準(zhǔn)雙向口);P3口:雙功能口:可以做普通的I/O口用,也可以自定義來實現(xiàn)第二功能的操作。見表2.1。表2.1 P3口的第二功能表引腳第二功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INT0(外部中斷0)P3.3INT1(外部中斷1)P3.4T0(定時器0外部中斷)P3.5T1(定時器1外部中斷)P3.6WR(外部存儲器寫選通)P3.7RD(外部存儲器讀寫通)2.4 主要元件2.4.1PCF8591數(shù)據(jù)采集器1個串行IC總線接口接入4個模擬輸入和1個模擬輸出可以組成一個單獨供電且單片集成PCF8591器件,它的數(shù)據(jù)獲取是8-bit CMOS。8個PCF8591器件可以同時連接在同一個IC總線上,它的硬件地址編程可以使用它的地址引腳A0, A1和A2。PCF8591的IC總線可以使用雙線雙向串行來傳輸?shù)刂泛涂刂菩盘柕葦?shù)據(jù)。它的模擬量是用多路復(fù)用輸入的,它的模數(shù)和數(shù)模轉(zhuǎn)換都是8位的,因此它的片上可以進行跟蹤和保持等方面的功能。IC總線的最大速度決定了它的最高轉(zhuǎn)換速率。1PCF8591的功能1)多路模擬輸入。2)內(nèi)置跟蹤保持。3)8-bit模數(shù)轉(zhuǎn)換。4)8-bit數(shù)模轉(zhuǎn)換。2引腳及功能PCF8591引腳圖如圖2.3所示。圖2.3外接示意圖表2.2 PCF8591的引腳和功能表引腳名稱功能1AIN0模擬信號輸入端2AIN1模擬信號輸入端2AIN2模擬信號輸入端4AIN3模擬信號輸入端5A0引腳地址端6A1引腳地址端7A2引腳地址端8VSS電源端9SDAIC總線的數(shù)據(jù)線10SCLIC總線的時鐘線11OSC時鐘1)內(nèi)部輸出端;2)外部輸入端12EXT時鐘選擇線內(nèi)部時EXT接地13AGND信號地模擬14VREF基準(zhǔn)電源端15AOUT輸出端D/A轉(zhuǎn)換16VDD電源端地址:設(shè)置以后數(shù)據(jù)傳輸方向的讀/寫位的是最后一位地址字節(jié)。地址在IC總線協(xié)議成立后作為第一個字節(jié)發(fā)送。見下圖2.4圖2.4地址3芯片特點:1)單獨供電2)PCF8591的操作電壓范圍2.5V-6V3)低待機電流4)通過IC總線串行輸入/輸出5)PCF8591的采樣率由IC總線速率決定6)PCF8591通過3個硬件地址引腳尋址7)單端或差分可編程4個模擬輸入8)自動增量頻道選擇9)PCF8591的模擬電壓范圍從VSS到VDD10)PCF8591內(nèi)置跟蹤保持電路11)8-bit逐次逼近A/D轉(zhuǎn)換器12)通過1路模擬輸出實現(xiàn)DAC增益4PCF8591原理圖: 如下圖2.5圖2.5 PCF8591原理圖5功能特點:控制字: PCF8591控制其它器件時需要利用存儲在控制寄存器中的第二個字節(jié)。系統(tǒng)每次A/D轉(zhuǎn)換后通道號將自動增加是因為自動增量為1。D/A轉(zhuǎn)換:數(shù)字量轉(zhuǎn)換成模擬量。外部電壓和選擇開關(guān)組成D/A轉(zhuǎn)換器,PCF8591的輸出電壓會被新收到的數(shù)據(jù)來改變。A/D轉(zhuǎn)換:檢測到的模擬量轉(zhuǎn)換成數(shù)字量。當(dāng)PCF8591接收到第一個有效讀模式的地址后,就開始了一個A/D轉(zhuǎn)換周期。當(dāng)A/D轉(zhuǎn)換周期開始后,所有的輸入信號都將轉(zhuǎn)換為對應(yīng)的8位二進制碼并保存進芯片。2.4.2 LCD顯示1602LCD的基控制器是HD44780,帶背光的比不帶背光的厚,但是兩者在應(yīng)用中是沒有差別的,尺寸如圖2.6所示。圖2.6 LCD1602結(jié)構(gòu)圖1 主要技術(shù)參數(shù):1)容量:162個字符;2)芯片工作電壓:4.55.5V;3)工作電流:2.0mA(5.0V);4)模塊最佳工作電壓:5.0V;5)字符尺寸:2.954.35(WH)mm。2引腳功能說明:16引腳1602LCD標(biāo)準(zhǔn)是,如下表2.3所示:表2.3 引腳接口說明表編號符號引腳說明1VSS電源地2VDD電源正極3VL液晶顯示偏壓4RS數(shù)據(jù)/命令選擇5R/W讀/寫選擇6E使能信號7D0數(shù)據(jù)8D1數(shù)據(jù)9D2數(shù)據(jù)10D3數(shù)據(jù)11D4數(shù)據(jù)12D5數(shù)據(jù)13D6數(shù)據(jù)14D7數(shù)據(jù)15BLA背光源正極16BLK背光源負極第1腳:VSS為地電源。第2腳:VDD接+5V。第3腳:VL為液晶顯示器對比度調(diào)整端。接入一個大小10K的電位器來調(diào)整液晶顯示器的對比度,因為當(dāng)它接正電源時最弱,接地時最強。 “鬼影”現(xiàn)象的出現(xiàn)是因為對比高。第4腳:RS為寄存器選擇。高電平和低電平分別選擇數(shù)據(jù)寄存器、指令寄存器。第5腳:R/W為讀寫信號線。高電平和低電平時分別進行讀操作和寫操作。當(dāng)RS和R/W共同為低電平時可以寫入指令或者顯示地址;當(dāng)RS為低電平R/W為高電平時可以讀忙信號;當(dāng)RS為高電平R/W為低電平時可以寫入數(shù)據(jù)【2】。第6腳:E端為使能端。當(dāng)其高電平轉(zhuǎn)變成低電平時,顯示器執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負極。2.4.3直流穩(wěn)壓電源直流穩(wěn)壓電源利用它的負載電阻與為它供電的交流電源發(fā)生變化,來為其它用電器輸出穩(wěn)定的直流電源。目前,用電設(shè)備向著更穩(wěn)定可靠、更詳細的精度這些方面發(fā)展,因此這些電子設(shè)備的供電電源就需要提高更多的方面。它可以調(diào)節(jié)輸出的電壓和電流值來適應(yīng)各種電路情況。它可以自動轉(zhuǎn)換穩(wěn)壓或穩(wěn)流狀態(tài),并能夠準(zhǔn)確的識別其大小。使用時,需要加入保護電路以免電路短路時破壞器件。特點:1)輸出顯示:輸出電壓電流LED顯示。2)采用19英寸標(biāo)準(zhǔn)化尺寸。3)體積小、重量輕、節(jié)能高效。4)恒壓恒流:自動切換輸出恒壓恒流,可調(diào)節(jié)電壓電流值。5)保護功能:過壓、過流、過載和欠壓等保護。6)短路特性:工作狀態(tài)下長時間短路。7)外接補償:降低因輸出回路較長等造成的壓降。8)過壓保護值:當(dāng)輸出過壓值后切斷輸出并鎖定。2.4.4 TC35通信TC35模塊是西門子工業(yè)中支持中文短信息的GSM模塊的重要組成部分。它是一款雙頻900/1800MHZ的模塊。目前,TC35正廣泛應(yīng)用于遠程監(jiān)控和無線通訊等領(lǐng)域。并且它還擁有GPRS方面的功能。性能信息:1)信息傳送內(nèi)容:語音和數(shù)據(jù)。2)電源:單電源 3.3V 5.5V。3)頻段:雙頻GSM900MHz 和 DCS1800 MHz(Phase 2+)。4)發(fā)射功率:2W (GSM900MHz Class 4) 1W (DCS1800MHz Class 1)。5)SIM 卡連接方式:外接。6)天線:由天線連接器連接外部天線。7)外型尺寸:54.5 x 36 x 6.7mm。8)短信息:MT,MO,CB和PDU模式。9)通訊接口:RS232(指令和數(shù)據(jù)雙向傳送)。10)模塊復(fù)位:采用AT指令或掉電復(fù)位。2.5 蓄電池容量檢測系統(tǒng)硬件電路設(shè)計2.5.1單片機最小系統(tǒng)圖2.7 單片機最小系統(tǒng)單片機、晶振電路和復(fù)位電路組成的單片機的最小系統(tǒng),這是任何單片機系統(tǒng)能夠運行程序、正常工作所必不可缺少的重要組成部分。由于STC89C52單片機的片內(nèi)有程序存儲器,大小為8K,所以該系統(tǒng)只需要外接晶振電路與復(fù)位電路。2.5.2液晶顯示電路圖2.8 LCD1602液晶顯示電路采用LCD1602顯示屏,在電路通電的情況下,可以在顯示屏上看到當(dāng)前的蓄電池容量值;在屏幕的下方還有一位數(shù)值,顯示的是蓄電池電壓。2.5.3蓄電池電壓檢測電路圖2.9 蓄電池電壓檢測電路利用PCF8591數(shù)據(jù)采集器對蓄電池進行數(shù)據(jù)采集,對數(shù)據(jù)進行A/D轉(zhuǎn)換,把模擬信號轉(zhuǎn)換為數(shù)字信號,傳輸進單片機中。2.5.4電源電路圖2.10 電源電路采用5倍的分壓,使待測的蓄電池電壓進入設(shè)計電路中降低電壓,保證電路中運行安全。2.5.5 TC35通信電路圖2.11 TC35引腳圖需要給TC35個大于3. 3V的穩(wěn)定電源來使其工作,并且要保證給它的IGT信號是一個持續(xù)時間不能超過1ms,且延時大于100ms的低脈沖信號,這樣才能保證電路安全穩(wěn)定的工作。利用TC35向手機發(fā)送報警短信。2.6 蓄電池容量算法2.6.1容量換算的算法蓄電池的容量系數(shù)是由放電終點電壓和事故放電持續(xù)時間來決定的。蓄電池容量是由它們?nèi)矫婀餐绊憶Q定的。所有蓄電池的計算容量: 式中:CS:事故放電容量(Ah);KCC:蓄電池容量系數(shù);KREL:可靠系數(shù),一般取KREL=1.40。當(dāng)放電期間事故負荷恒定不變時,事故放電時間TS(h)和事故放電電流IS(A)的乘機決定了事故放電容量CS。即CS=IS*TS2.6.2恒功率的算法計算公式:W:每節(jié)電池提供的功率;P:額定功率;F:負載功率因數(shù);:逆變器效率;N:電池組額定節(jié)數(shù)。2.6.3恒電流的算法計算公式:AH:電池安時數(shù);P:額定功率;F:負載功率因數(shù);:逆變器效率;UMIN:UPS電池關(guān)閉時瞬時電壓,一般每單元1.75V。2.6.4估計的算法(1)用于延時1小時以下:(2)用于延時1小時以上:AH:電池安時數(shù);P:額定功率;F:負載功率因數(shù);:逆變器效率;UMIN:UPS電池關(guān)閉時瞬時電壓,一般每單元1.75V;C(30分鐘)=1.1;C(60分鐘)=0.6; 第三章 系統(tǒng)軟件設(shè)計第三章 系統(tǒng)軟件設(shè)計3.1 主程序設(shè)計根據(jù)任務(wù)書的要求,設(shè)計以下系統(tǒng)的軟件程序流程圖:圖3.1 主程序流程圖3.2 子程序設(shè)計3.2.1蓄電池電壓檢測流程圖圖3.2 蓄電池電壓檢測流程圖3.2.2 LCD液晶顯示流程圖圖3.3 LCD液晶顯示流程圖3.2.3 短信發(fā)送流程圖圖3.4 短信發(fā)送流程圖3.3 程序清單見附錄2 第四章 系統(tǒng)實物制作第四章 系統(tǒng)實物制作4.1 系統(tǒng)原理圖見附錄14.2 實物焊接首先將所用材料按順序的放置在桌面上,接著用萬用表檢查所有元器件的好壞,對照元器件來判斷各個引腳的作用,來確保電路焊接的正確性。將各個元器件合理的放入萬能板中,分步進行焊接,并不時的利用萬用表檢測焊接狀態(tài)是否正確,焊接完成后對實物進行整體檢測。4.3 器件詳細清單表4.1器件選型方案的詳細清單器件代號型號數(shù)量單片機U1STC89C521數(shù)據(jù)采集器U2PCF85911雙刀雙擲開關(guān)SW11行程開關(guān)AJ1SW-PB1極化電容器(徑向)C1,C410uF/25V2電容器C2,C330p2電容器C50.1uF1紅外發(fā)光二極管D1RED1低電壓電源連接器J1DC PORT1液晶顯示器LCD1LCD16021電阻R1,R4,R510k3電阻R240k1電阻R310k1電阻R61k1隔離電阻網(wǎng)絡(luò)RP11晶體振蕩器Y111.0592M1電阻抽頭W11接線插槽P1Header 41端子P2Header 21杜邦線若干排針若干GSM通信TC351萬能板14.4 程序的編譯在實物焊接好之后,就要進行軟件的仿真。將寫好的程序利用Keil軟件進行編譯,檢查沒有錯誤后生成.HEX文件。將焊接好的實物與電腦連接,利用Keil軟件,將之前生成.HEX文件寫入STC89C52單片機中。4.5 系統(tǒng)調(diào)試在整個設(shè)計完成之后,對其進行整體調(diào)試。在調(diào)試的過程中驗證系統(tǒng)的設(shè)計是否正確,是否達到預(yù)期的要求,看各個要求是否達成。4.6 實物演示4.6.1電路初始狀態(tài)如圖4.1所示。圖4.1 電路初始狀態(tài)4.6.2電路通電按下電源總開關(guān)時電路通電,如圖4.2所示。圖4.2 電路通電4.6.3穩(wěn)壓電源不同的直流輸入電壓模擬不同使用的蓄電池圖4.3 調(diào)節(jié)輸入電壓4.6.4不同電壓下容量顯示調(diào)節(jié)穩(wěn)壓電源,模擬蓄電池容量,進行測量。圖4.4 顯示00%容量(1)圖4.5 顯示00%容量(2)圖4.6 顯示10%容量(1)圖4.7 顯示10%容量(2)圖4.8 顯示20%容量圖4.9 顯示30%容量圖4.10 顯示40%容量圖4.11 顯示50%容量圖4.12 顯示60%容量圖4.13 顯示70%容量圖4.14 顯示80%容量圖4.15 顯示99%容量(1)圖4.16 顯示99%容量(2)圖4.17 顯示99%容量(3)圖4.18 顯示99%容量(4) 第五章 總 結(jié)第五章 總 結(jié)本次設(shè)計中,我通過對STC89C52D單片機、LCD1602液晶顯示器、PCF8591數(shù)據(jù)采集器和TC35通信的學(xué)習(xí),努力設(shè)計電路并制作實物,經(jīng)過不斷調(diào)試,目前已經(jīng)可以使用該系統(tǒng)對蓄電池容量進行檢測,但是由于時間等原因短信發(fā)送還沒有做到。這次的設(shè)計讓我學(xué)到了更多的專業(yè)性的知識,通過將大學(xué)四年學(xué)到理論知識綜合的運用起來,使自己對于原來所學(xué)的知識有了更進一步的理解。在設(shè)計的過程中,通過查找各個方面的資料,再到自己動手制作實物,不斷努力解決自己在設(shè)計中所遇到的各種問題,從而培養(yǎng)了我獨立解決問題的能力,同時加強了自己的動手能力并了解自己所存在的問題。雖然最后設(shè)計達到了部分的預(yù)期要求,也實現(xiàn)了蓄電池容量的測試。但是,在整個的設(shè)計過程中,如果沒有老師與同學(xué)的幫助,我就無法完成這次的設(shè)計。之后我還需要查詢更多方面的知識,不斷的請教老師,充實自己的知識面,才能更好的實現(xiàn)自己的目標(biāo),使自己更全面發(fā)展。這次畢業(yè)設(shè)計的不足之處是利用TC35通信模塊發(fā)送短信給手機沒有成功。通過這個問題,我明白做任何事情都需要細心,仔細檢查各個部分,分析問題。這次的畢業(yè)設(shè)計,雖然說是結(jié)束了,但也是一個新的開始。它讓我學(xué)到了很多,讓我看清了自己本身存在的不足,相信在未來自己可以不斷奮斗,努力完善自我,讓自己離理想更近一步。 參考文獻參考文獻1 陳云路,吳欽木數(shù)字頻率計設(shè)計J現(xiàn)代機械,2015,(3).2 王承林.基于Proteus在LCD1602中漢字顯示系統(tǒng)的設(shè)計J邢臺學(xué)院學(xué)報2015,(4) 3 李平等.單片機入門與開發(fā)M. 北京:機械工業(yè)出版社,2008.4 馬青玉高壓蓄電池組的計算機檢測設(shè)計J電子工程師,2002,28(1)5 鐘富昭等.8051單片機典型模塊設(shè)計與應(yīng)用M. 北京:人民郵電出版社,2007.6 陳海宴.51單片機原理及應(yīng)用M.北京:北京航空航天大學(xué)出版社,2010.7 李朝青.單片機&DSP外圍數(shù)字IC技術(shù)手冊M. 北京:北京航空航天大學(xué)出版社,2009.8 龔運新,羅慧敏,彭建軍.單片機接口C語言開發(fā)技術(shù)M. 北京:清華大學(xué)出版社,2009.9 陳杰智能鉛酸蓄電池組性能的監(jiān)控系統(tǒng)J機電工程,1999,(6)10 朱松然.鉛蓄電池技術(shù)M. 北京:機械工業(yè)出版社,2008.11 崔花.單片機實用技術(shù)M. 北京:清華大學(xué)出版社,2008. 12 徐新民.單片機原理及應(yīng)用M. 浙江:浙江大學(xué)出版社,2009.13 劉守義等.單片機技術(shù)基礎(chǔ)M. 西安:西安電子科技大學(xué)出版社,2007.14 江思明.電路工程設(shè)計Protel99實例演練M.人民郵電出版社,2009.15 馬淑華,王鳳文,張美金主編.單片機原理與接口技術(shù)M. 北京:北京郵電大學(xué)出版社,2008.16 張曉冬.蓄電池監(jiān)測系統(tǒng)的現(xiàn)狀及發(fā)展趨勢J.農(nóng)機化研究,2002,(8). 17 秦龍.MSP430單片機常用模塊與綜合系統(tǒng)實例精講M. 北京:電子工業(yè)出版社.2007.18 閏新華.影響鉛酸蓄電池容量的因素J.UPS應(yīng)用,2004,(1).19 王俊峰,孟令啟.現(xiàn)代傳感器應(yīng)用技術(shù)M. 北京:機械工業(yè)出版社.2007.20 胡漢才.單片機原理及接口技術(shù)M. 北京:清華大學(xué)出版社.1996.21 高稚允,高岳.光電檢測技術(shù)M. 北京:國防工業(yè)出版社.1983.22 梁森,王侃夫,黃杭美.自動檢測與轉(zhuǎn)換技術(shù)M. 北京:機械工業(yè)出版社.2007.23 Meehan Joanne,Muir Lindsey.SCM in Merseyside SMEs:Benefits and barriersJ.TQM Journal,2008.24 Yeager Brent.How to troubleshoot you electronic scaleJ.Powder and Bulk Engineering.1995.25 楊清梅,孫建民.傳感器與測試技術(shù)M. 哈爾濱:哈爾濱工程大學(xué)出版社.2005.26 康華光.模擬電子技術(shù)基礎(chǔ)M.北京:高等教育出版社.2006.27 高吉祥.全國大學(xué)生電子設(shè)計競賽培訓(xùn)系列教程M. 北京:電子工業(yè)出版社.2007.28 李增國.傳感器與檢測技術(shù)M. 北京:北京航空航天大學(xué)出版社.2009.29 吳中明,吳昊.密封鉛酸蓄電池容量快速測試技術(shù)難點分析J.通信電源技術(shù),2006,(23).30 宋文緒,楊帆.自動檢測技術(shù)M. 北京:高等教育出版社.2000.31 尉廣軍,朱宇虹.采用集成運算放大器構(gòu)成的蓄電池恒流放電電路J.電工技術(shù),2000,(14).32 魏小龍MSP430系列單片機接口技術(shù)及系統(tǒng)設(shè)計實例M. 北京:北京航空航天大學(xué)出版.2002.33 李廣弟.單片機基礎(chǔ)M. 北京:北京航空航天出版社,2001.34 王東峰等.單片機C語言應(yīng)用100例M. 北京:電子工業(yè)出版社,2009. 附錄1附錄1 系統(tǒng)原理圖 附錄2附錄2 系統(tǒng)程序清單#include /包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義#include#include 1602.h#include delay.h#include sysdefine.hchar displaytemp16; /打印數(shù)組初始化unsigned long time_20ms=0; /定時器計數(shù)float Volt=0.0; /檢測電壓unsigned int BatCap=80; /容量初始化void Init_Timer0(void);void uartSendStr(unsigned char *s,unsigned char length);void UART_Init(void);void uartSendByte(unsigned char dat);void main (void) unsigned char midvolt;Init_Timer0(); /定時器0初始化UART_Init(); LCD_Init(); /初始化液晶DelayMs(20); /延時有助于穩(wěn)定LCD_Clear(); sprintf(displaytemp,The BatCap: %02d%,BatCap);/打印電池容量值LCD_Write_String(0,0,displaytemp);/顯示第一行sprintf(displaytemp,V:%4.2fv ,Volt);/打印電壓值LCD_Write_String(0,1,displaytemp);/顯示第二行uartSendStr(reday ok!,10);while (1) /主循環(huán)DelayMs(50); /延時有助于穩(wěn)定midvolt=ReadADC(0);/ad轉(zhuǎn)換采集Volt=(float)midvolt*5.2/255*5;/計算出電壓 *5表示分壓值if(Volt5.4)&(Volt8.4)&(Volt8.9)&(Volt9.4)&(Volt9.9)&(Volt11.4)&(Volt12.9)&(Volt13.5)&(Volt14.0)BatCap=99;sprintf(displaytemp,The BatCap: %02d%,BatCap);/打印電池容量值LCD_Write_String(0,0,displaytemp);/顯示第一行sprintf(displaytemp,V:%4.2fv ,Volt);/打印電壓電流值LCD_Write_String(0,1,displaytemp);/顯示第二行DelayMs(200); /延時有助于穩(wěn)定void Init_Timer0(void)TMOD |= 0x01; /使用模式1,16位定時器,使用|符號可以在使用多個定時器時不受影響 TH0=(65536-20000)/256; /重新賦值 20msTL0=(65536-20000)%256;EA=1; /總中斷打開ET0=1; /定時器中斷打開TR0=1; /定時器開關(guān)打開void Timer0_isr(void) interrupt 1 TH0=(65536-20000)/256; /重新賦值 20msTL0=(65536-20000)%256;time_20ms+;if(time_20ms%10=0)void UART_Init(void) SCON = 0x50; / SCON: 模式 1, 8-bit UART, 使能接收 TMOD |= 0x20; / TMOD: timer 1, mode 2, 8-bit 重裝 TH1 = 0xFD; / TH1: 重裝值 9600 波特率 晶振 11.0592MHzTL1 = TH1; TR1 = 1; / TR1: timer 1 打開 EA = 1; /打開總中斷 ES = 1; /打開串口中斷void uartSendByte(unsigned char dat)unsigned char time_out;time_out=0x00;SBUF = dat;while(!TI)&(time_out10)time_out+;DelayMs(1);TI = 0;void uartSendStr(unsigned char *s,unsigned char length)unsigned char NUM;NUM=0x00;while(NUMlength)uartSendByte(*s);s+;NUM+; void UART_SER (void) interrupt 4 /串行中斷服務(wù)程序if(RI) /判斷是接收中斷產(chǎn)生RI=0; /標(biāo)志位清零if(TI) /如果是發(fā)送標(biāo)志位,清零TI=0;#include#defineuintunsig
收藏