<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > AVR微控制器蓄電池充放電控制器的設計

AVR微控制器蓄電池充放電控制器的設計

作者: 時(shí)間:2016-09-18 來(lái)源:網(wǎng)絡(luò ) 收藏

  本設計采用單片機作為核心,可同時(shí)控制兩塊539CH-1型蓄電池的充、放電過(guò)程。通過(guò)串行總線(xiàn)接收上位機的命令,然后通過(guò)SPI總線(xiàn)將數據發(fā)送給TLV5638。單片機通過(guò)多路模擬開(kāi)關(guān)CD4053將TLV5638的兩路D/A輸出送入信號調整電路,從而完成對充放電電流的控制。放電過(guò)程中,通過(guò)控制8D鎖存器74LS573和復合管陣列ULN2081控制放電電阻接入。系統框圖如圖1所示。

本文引用地址:http://dyxdggzs.com/article/201609/297090.htm

  

 

  圖1 系統原理框圖硬件設計

  硬件系統包括串行通信電路、充電和放電控制電路、繼電器驅動(dòng)電路等模塊。

  通信電路

  單片機通過(guò)串口與上位機通信。Mega16L端口為T(mén)TL電平,而上位機串口為RS232C標準接口。因此,在上位機與單片機通信時(shí)需要進(jìn)行電平轉換。本設計采用MAX232完成TTL電平與RS232接口電平之間的轉換。

  充電和放電控制電路

  單片機收到上位機的充、放電控制命令后,通過(guò)SPI口將控制信號發(fā)送給TLV5638。TLV5638將收到的數字信號轉換成模擬信號,并送入信號調整電路。模擬控制信號經(jīng)調整后送入充電或放電電源的PI控制器,對充電和放電電流進(jìn)行控制。單片機通過(guò)CD4053選擇控制信號的輸出通道,使該控制器可同時(shí)對2塊蓄電池進(jìn)行充電和放電。該部分電路原理圖如圖2所示。

  D/A變換

  本設計使用雙通道l2位電壓輸出型高速DA轉換器TLV5638完成數模轉換。設計中,將Mega16作為主機,通過(guò)SPI口直接與TLV5638的串行接口相連。因為Mega16的SPI口為4線(xiàn)串口,所以連接時(shí)單片機SPI口的PB6(MISO)懸空。

  串行通信時(shí),CS引腳出現下降沿時(shí)通信開(kāi)始,數據在SCLK的下降沿逐位移入TLV5638的內部寄存器。最先移入的是數據的最高位。當16位數據全部移入或CS引腳變高時(shí),TLV5638移位寄存器中的數據被存入相應的鎖存器,鎖存器的選擇由數據中的控制字確定。因此,當Mega16需要向TLV5638發(fā)送數據時(shí),PB7先從高電平跳到低電平,然后通過(guò)SPI口連續進(jìn)行兩次寫(xiě)操作,向TLV5638發(fā)送個(gè)字節數據。兩次寫(xiě)操作完成后,在SCLK的第16個(gè)上升沿,相應鎖存器的內容自動(dòng)更新。

  應用中,TLV5638工作于慢速正常模式,采用2.048V內部參考電壓。更新TLV5638某一路DAC數據時(shí),必須保證另外一路數據不變。

  Mega16的SPI口可采用4種不同的數據傳輸格式工作,傳輸格式由SPI控制寄存器中的CPOL位和CPHA位控制。應用中,考慮到TLV5638的使用要求,令CPHA=0,CPOL=1(傳輸開(kāi)始時(shí)采樣SCK下降沿,結束時(shí)采樣SCK上升沿)。

  

 

  圖2 D/A變換與通道選擇

  信號通道選擇

  Mega16通過(guò)PD4和PD5以及外圍邏輯電路控制信號的輸出通道。邏輯電路包括1片7404和2片CD4053。以TLV5638的OUTA輸出信號為例。模擬控制信號從TLV5638輸出,經(jīng)濾波后送入CD4053的X通道和Y通道。單片機PD4一方面直接與CD4053控制端A相連,另外還通過(guò)反相器7404與CD4053控制端B相連。這樣就保證A端和B端的控制信號反相,使任意時(shí)刻X、Y通道中只有一個(gè)可以輸出有效控制信號,從而保證該路充電和放電不發(fā)生沖突。應用中沒(méi)有使用CD4053的Z通道,應將其與控制端C及使能端一起接地。

  繼電器驅動(dòng)電路

  放電后期,需要將電池中的剩余容量完全放出,最終使單體電池電壓下降到0V。設計中,利用繼電器將放電電阻并聯(lián)于單體電池兩極,從而達到釋放電池剩余容量的目的。繼電器由8D鎖存器74LS573和達林頓管陣列ULN2801驅動(dòng)。單片機PA0~PA7輸出控制信號,PD2、3、7和PC6、7輸出5片74LS573所需的鎖存使能信號??刂菩盘栍?4LS573鎖存,然后通過(guò)ULN2801驅動(dòng)繼電器工作,將放電電阻并聯(lián)在單格電池兩端,從而完成單格電池剩余容量放電。繼電器驅動(dòng)電路原理圖如圖3所示。圖中只包含1片74LS573,其它4片控制方法類(lèi)似。

  

 

  圖3 繼電器驅動(dòng)電路原理圖

  軟件設計

  軟件采用主從結構。單片機收到上位機指令后,根據通信協(xié)議提取出命令字和數據,然后根據命令字完成相應的控制。軟件基于模塊化設計思想,主要包括:主程序模塊,通信程序模塊,D/A轉換與通道選擇模塊,繼電器組控制模塊等。

  主程序模塊

  主程序模塊完成單片機初始化,等待并處理中斷等工作,流程圖如圖4(a)所示。

  

 

  圖4程序流程圖

  通信程序模塊

  單片機與上位機間采用RS232串口通信。單片機采用中斷方式接收上位機發(fā)出的命令,并根據接收到的數據內容向上位機發(fā)送應答信息。當命令的起始標志和結束標志都正確時(shí),單片機向上位機發(fā)送ASCII字符‘Y’表示接收成功,然后處理收到的命令;否則,向上位機發(fā)送ASCII字符‘N’,表示發(fā)送不成功,要求上位機重新發(fā)送命令。

  上位機向單片機發(fā)送的命令符合以下格式:命令以幀為單位,每幀包含7個(gè)字節。每幀包含的命令字規定了單片機的控制方式。每幀中的數據字則以ASCII碼的形式確定了充、放電電流的大小和繼電器的代號。通信模塊流程圖如圖4(b)所示。

  當上位機需要控制充、放電電流時(shí),單片機采用查詢(xún)方式,通過(guò)SPI口向TLV5638發(fā)送命令和數據,然后通過(guò)控制CD4053確定模擬控制信號輸出通道。因為Mega16L的SPI口字寬為8位,因此必須連續進(jìn)行兩次寫(xiě)操作才能完成對TLV5638的編程。

  單片機收到上位機命令后,先將數據寫(xiě)到PA口,然后向相應鎖存使能位寫(xiě)‘0’,將數據鎖存入74LS573中,完成對繼電器的控制。



關(guān)鍵詞: AVR Mega16L

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>