電氣開關(guān)電源模塊并聯(lián)供電系統(tǒng)設(shè)計(jì)說明_第1頁
電氣開關(guān)電源模塊并聯(lián)供電系統(tǒng)設(shè)計(jì)說明_第2頁
電氣開關(guān)電源模塊并聯(lián)供電系統(tǒng)設(shè)計(jì)說明_第3頁
電氣開關(guān)電源模塊并聯(lián)供電系統(tǒng)設(shè)計(jì)說明_第4頁
電氣開關(guān)電源模塊并聯(lián)供電系統(tǒng)設(shè)計(jì)說明_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 . . 29/32 . . 選 修 課 設(shè) 計(jì) (論 文) 題 目 開關(guān)電源模塊并聯(lián)供電系統(tǒng)設(shè)計(jì) 專 業(yè)電子信息工程班 級 111 112班 姓 名 鄧逸博 浙飛 汪超 指導(dǎo)教師王章權(quán)所在學(xué)院 信息學(xué)院 完成時(shí)間:2014年 5月開關(guān)電源模塊并聯(lián)供電系統(tǒng)設(shè)計(jì)電子信息工程專業(yè) 鄧逸博 浙飛 汪超摘 要:本設(shè)計(jì)設(shè)計(jì)制作的是開關(guān)電源模塊并聯(lián)供電系統(tǒng),能夠廣泛應(yīng)用在小功率與各種電子設(shè)備領(lǐng)域,能夠輸出8V定壓,功率可達(dá)到16W,并根據(jù)要求對兩路電流進(jìn)行按比例分配。本系統(tǒng)由DC/DC模塊,均流、分流模塊,保護(hù)電路組成。DC/DC模塊以IRF9530芯片為開關(guān),配以BUCK的外圍電路實(shí)現(xiàn)24V-8V的降壓

2、與穩(wěn)壓。采用LM328比較電路實(shí)現(xiàn)電流和電壓的檢測,控制由DC/DC模塊構(gòu)成的并聯(lián)供電系統(tǒng)均流與分流工作模式,通過比較器電路實(shí)現(xiàn)過流保護(hù)。同時(shí)進(jìn)行LCD1602液晶同步顯示、獨(dú)立鍵盤輸入控制。輸入的值經(jīng)過單片機(jī)處理程序來控制輸出電壓,且輸出電壓和電流可實(shí)時(shí)顯示。關(guān)鍵詞:DC/DC模塊,BUCK,電流分流目 錄TOC o 1-3 h u HYPERLINK l _Toc388029373一、緒論 PAGEREF _Toc388029373 h 1HYPERLINK l _Toc388029374二、設(shè)計(jì)的目標(biāo)與基本要求 PAGEREF _Toc388029374 h 1HYPERLINK l _

3、Toc388029375(一)、設(shè)計(jì)目標(biāo) PAGEREF _Toc388029375 h 1HYPERLINK l _Toc388029376(二)、基本要求 PAGEREF _Toc388029376 h 2HYPERLINK l _Toc388029377三、系統(tǒng)設(shè)計(jì) PAGEREF _Toc388029377 h 2HYPERLINK l _Toc388029378(一)、系統(tǒng)框圖 PAGEREF _Toc388029378 h 2HYPERLINK l _Toc388029379(二)、硬件設(shè)計(jì)與方案選擇 PAGEREF _Toc388029379 h 3HYPERLINK l _To

4、c3880293801、單片機(jī)選擇 PAGEREF _Toc388029380 h 3HYPERLINK l _Toc3880293812、主電路選擇 PAGEREF _Toc388029381 h 3HYPERLINK l _Toc3880293823、驅(qū)動(dòng)電路圖 PAGEREF _Toc388029382 h 4HYPERLINK l _Toc3880293834、輔助電源 PAGEREF _Toc388029383 h 5HYPERLINK l _Toc3880293845、電流、電壓采樣 PAGEREF _Toc388029384 h 6HYPERLINK l _Toc38802938

5、56、顯示、按鍵 PAGEREF _Toc388029385 h 7HYPERLINK l _Toc388029386(三)、軟件設(shè)計(jì) PAGEREF _Toc388029386 h 7HYPERLINK l _Toc3880293871、主程序 PAGEREF _Toc388029387 h 7HYPERLINK l _Toc3880293882、按鍵程序PAGEREF _Toc388029388 h 8HYPERLINK l _Toc3880293893、液晶程序 PAGEREF _Toc388029389 h 9HYPERLINK l _Toc3880293904、采樣程序 PAGERE

6、F _Toc388029390 h 10HYPERLINK l _Toc3880293915、中斷、PID流程圖 PAGEREF _Toc388029391 h 11HYPERLINK l _Toc388029392四、調(diào)試過程 PAGEREF _Toc388029392 h 12HYPERLINK l _Toc388029393(一)、遇到的問題與解決辦法 PAGEREF _Toc388029393 h 12HYPERLINK l _Toc388029394(二)、數(shù)據(jù)分析 PAGEREF _Toc388029394 h 13HYPERLINK l _Toc388029395五、體會與展望

7、PAGEREF _Toc388029395 h 14HYPERLINK l _Toc388029396參考文獻(xiàn) PAGEREF _Toc388029396 h 15HYPERLINK l _Toc388029397附錄 PAGEREF _Toc388029397 h 15HYPERLINK l _Toc388029398附錄1整體電路圖 PAGEREF _Toc388029398 h 15HYPERLINK l _Toc388029399附錄2程序代碼 PAGEREF _Toc388029399 h 16一、緒論分布式直流開關(guān)電源系統(tǒng)取代傳統(tǒng)的集中式直流開關(guān)電源系統(tǒng)已成為大功率電源系統(tǒng)的發(fā)展方

8、向:(1)單臺大功率電源容易受技術(shù)、成本的限制;(2)單臺直流開關(guān)電源故障會導(dǎo)致整個(gè)系統(tǒng)的故障,而分布式電源系統(tǒng)由若干電源模塊并聯(lián)組成,某個(gè)電源模塊故障不會導(dǎo)致整個(gè)電源故障;(3)可根據(jù)實(shí)際負(fù)荷的變化,自動(dòng)確定需要投入運(yùn)行的模塊數(shù)量或者解列退出的模塊數(shù)量,對變負(fù)荷運(yùn)行很有意義;(4)由于多個(gè)電源模塊并聯(lián)運(yùn)行,使每個(gè)電源模塊承受的電應(yīng)力較小,具有較高的運(yùn)行效率,且具有較好的動(dòng)態(tài)和靜態(tài)特性。分布式電源系統(tǒng)需要解決的主要問題是實(shí)現(xiàn)多個(gè)并聯(lián)運(yùn)行的模塊輸出一樣的功率。隨著通信電源技術(shù)的高速發(fā)展,電力電子設(shè)備與人們的工作、生活的關(guān)系日益密切,而通信電子設(shè)備都離不開可靠的電源。進(jìn)入20世紀(jì)80年代,計(jì)算機(jī)電

9、源全面實(shí)現(xiàn)了開關(guān)電源化,率先完成計(jì)算機(jī)的電源換代;進(jìn)入20世紀(jì)90年代,開關(guān)電源相繼進(jìn)入各種電子、電氣設(shè)備領(lǐng)域,程控交換機(jī)、通信、電力檢測設(shè)備電源、控制設(shè)備電源等都已廣泛使用了開關(guān)電源,更促進(jìn)了開關(guān)電源技術(shù)的迅速發(fā)展。二、設(shè)計(jì)的目標(biāo)與基本要求(一)、設(shè)計(jì)目標(biāo)設(shè)計(jì)并制作一個(gè)由兩個(gè)額定輸出功率均為16W的8V DC/DC模塊構(gòu)成的并聯(lián)供電系統(tǒng)(見圖2.1)圖2.1 兩路buck電路并聯(lián)供電(二)、基本要求(1)調(diào)整負(fù)載電阻至額定輸出功率工作狀態(tài),供電系統(tǒng)的直流輸出電壓UO=8.00.4V。在額定輸出功率工作狀態(tài)下,供電系統(tǒng)的效率不低于60% 。(2)調(diào)整負(fù)載電阻,保持輸出電壓UO=8.00.4V,

10、使兩個(gè)模塊輸出電流之和IO =1.0A且按I1:I2=1:1模式自動(dòng)分配電流,調(diào)整負(fù)載電阻,保持輸出電壓 UO=8.00.4V,使兩個(gè)模塊輸出電流之和IO =1.5A且按I1:I2= 1:2模式自動(dòng)分配電流,每個(gè)模塊輸出電流的相對誤差絕對值不大于5%。調(diào)整負(fù)載電阻,保持輸出電壓 UO=8.00.4V,使兩個(gè)模塊輸出電流之和IO =4.0A且按 I1:I2=1:1 模式自動(dòng)分配電流,每個(gè)模塊的輸出電流的相對誤差的絕對值不大于2%。(3)調(diào)整負(fù)載電阻,保持輸出電壓UO=8.00.4V,使負(fù)載電流IO在1.53.5A之間變化時(shí),兩個(gè)模塊的輸出電流可在(0.52.0)圍按指定的比例自動(dòng)分配,每個(gè)模塊的

11、輸出電流相對誤差的絕對值不大于2%。 (4)具有負(fù)載短路保護(hù)與自動(dòng)恢復(fù)功能,保護(hù)閾值電流為 4.5A(調(diào)試時(shí)允許有0.2A的偏差)。在額定輸出功率工作狀態(tài)下,進(jìn)一步提高供電系統(tǒng)效率。三、系統(tǒng)設(shè)計(jì)(一)、系統(tǒng)框圖圖3.1 系統(tǒng)框圖系統(tǒng)說明:以單片機(jī)為核心處理元件,DC-DC變換器為主電路。按鍵、顯示便于人機(jī)交互。驅(qū)動(dòng)電路將單片機(jī)和DC-DC變換器隔離,輔助電源給單片機(jī)和采樣電路供電。單片機(jī)將電壓電流通過采樣電路,運(yùn)放采樣回來在部進(jìn)行A/D處理,然后將數(shù)據(jù)輸出液晶顯示。在部進(jìn)行算法調(diào)整。使整個(gè)系統(tǒng)穩(wěn)定,并達(dá)到基本要求。整個(gè)系統(tǒng)設(shè)計(jì)如上圖3.1所示。(二)、硬件設(shè)計(jì)與方案選擇1、單片機(jī)選擇方案一:使

12、用89C51單片機(jī)指令簡單,易學(xué)易懂,外圍電路簡單,硬件設(shè)計(jì)方便,IO口操作簡單,無方向寄存器,資源豐富,價(jià)格便宜、容易購買,資料豐富容易查到,程序燒寫簡單,但要外接A/D、D/A芯片,來實(shí)現(xiàn)對整個(gè)供電系統(tǒng)的控制,需要占用較多的I/O接口,會使普通單片機(jī)承載過大的數(shù)據(jù)處理任務(wù),功耗較大。方案二:使用ATmega16,ATmega16外設(shè)特點(diǎn):兩個(gè)具有獨(dú)立的預(yù)分頻器和比較器功能的8位定時(shí)器/計(jì)數(shù)器,兩個(gè)具有預(yù)分頻器、比較功能和撲捉功能的16位定時(shí)器/計(jì)數(shù)器,具有獨(dú)立預(yù)分頻器的實(shí)時(shí)時(shí)鐘計(jì)數(shù)器,兩路8位PWM,4路分辨率可編程(216位)的PWM,輸出比較調(diào)制器,8路10位ADC,面向字節(jié)的兩線接口

13、I2C總線,兩個(gè)可編程的串行USART,可工作于主機(jī)/從機(jī)模式的SPI串行接口,具有獨(dú)立片振蕩器的的可編程看門狗定時(shí)器,片模擬比較器。特殊的處理器特點(diǎn):上電復(fù)位以與可編程的掉電檢測,片經(jīng)過標(biāo)定的RC振蕩器,片/片外中斷源,6種睡眠模式,可以通過軟件進(jìn)行選擇的時(shí)鐘頻率,通過熔絲位可以選擇兼容模式,全局上拉禁止功能。結(jié)合前兩個(gè)方案優(yōu)點(diǎn),經(jīng)過方案比較與論證,最終確定使用方案二,因?yàn)锳Tmega16速度快 自帶PWM ,自帶AD,而用89C51會使電路更加復(fù)雜與不穩(wěn)定所以,用ATmega16單片機(jī)和其它控制器電路同實(shí)現(xiàn)整個(gè)系統(tǒng)的控制。2、主電路選擇方案一:有一種型號為LM2956的降壓開關(guān)電壓調(diào)節(jié)器,

14、能夠輸出3A的驅(qū)動(dòng)電流,同時(shí)具有很好的線性和負(fù)載調(diào)節(jié)特性,該器件部集成頻率補(bǔ)償和固定頻率發(fā)生器,極簡化了開關(guān)電源電路的設(shè)計(jì)。方案二:采用SG3525自帶脈寬調(diào)制電源芯片來設(shè)計(jì)DC-DC降壓轉(zhuǎn)換電路,SG3525簡單可靠與使用方便靈活,輸出驅(qū)動(dòng)為推拉輸出形式,增加了驅(qū)動(dòng)能力;部含有欠壓鎖定電路,死區(qū)時(shí)間可調(diào)、軟啟動(dòng)控制電路、PWM鎖存器,有過流保護(hù)功能,頻率可調(diào),同時(shí)能限制最大占空比。由此設(shè)計(jì)而成的電路易于實(shí)現(xiàn)脈寬調(diào)制,然而在真正使用時(shí)會發(fā)現(xiàn),為得到要求的電壓輸出值,開關(guān)管S的參數(shù)選取相當(dāng)不易。方案三:將經(jīng)過隔離變壓器,整流濾波后得到的24VDC通過Buck降壓電路進(jìn)行DC-DC轉(zhuǎn)換,由ATme

15、ga16 單片機(jī)產(chǎn)生PWM控制其占空比,從而得到要求的直流電壓。此方案僅用一塊控制芯片不但可以實(shí)現(xiàn)對Buck電路的控制,而且可以結(jié)合A/D和D/A對輸出電壓進(jìn)行調(diào)整與顯示。由于ATmega16 單片機(jī)自帶能夠產(chǎn)生脈寬調(diào)制所需的PWM信號的端口,在實(shí)際制作中用起來比較方便。ATmega16單片機(jī)自帶8路10位a/D轉(zhuǎn)換。結(jié)合前兩個(gè)方案優(yōu)點(diǎn),經(jīng)過方案比較與論證,最終確定使用方案三如圖3.2,因?yàn)锳Tmega16單片機(jī),自帶PWM模塊,可以輸出PWM方波控制電路,節(jié)約芯片成本,也可實(shí)現(xiàn)AD轉(zhuǎn)換。用單片機(jī)和其它控制器電路同實(shí)現(xiàn)整個(gè)系統(tǒng)的控制。3.2主電路圖3、驅(qū)動(dòng)電路圖方案一:單片機(jī)輸出PWM,采用I

16、R2101驅(qū)動(dòng)DC-DC電路中的IRF9530,控制輸出電壓。方案二:先采用光耦TLP250和單片機(jī)進(jìn)行隔離,有效保護(hù)單片機(jī),之后用IRF3205去驅(qū)動(dòng)MOS管IRF9530,控制輸出電壓。結(jié)合兩種方案的對比選擇方案二如圖3.3,因?yàn)榉桨付胁捎霉怦?,將單片機(jī)與主電路隔離,能夠有效保護(hù)單片機(jī),而且也能使正常使電路工作。圖3.3驅(qū)動(dòng)電路圖4、輔助電源方案一:采用集成的三端穩(wěn)壓集成芯片,7815和7805分別給光耦和運(yùn)放,還有單片機(jī)供電,7815含過流,過熱,過載保護(hù)電路。方案二:采用LM2575開關(guān)穩(wěn)壓集成芯片,它部集成了一個(gè)固定的振蕩器,是一種高效的穩(wěn)壓芯片,大多數(shù)情況下無需加散熱片。部有完善

17、的保護(hù)電路,包括電流限制與熱關(guān)斷電路等。它可以根據(jù)用戶要求選擇輸出電壓,可輸出3.3V,5V,12V,15V。然后再經(jīng)過7805產(chǎn)生5V電壓。結(jié)合兩種方案的對比選擇方案二如圖3.4,因?yàn)榉桨付械腖M2575的是可調(diào)節(jié)輸出電壓的芯片,方便調(diào)控,而且它部有電壓基準(zhǔn)比較,使輸出的電壓能夠準(zhǔn)確并穩(wěn)定,比7815要精確,且性能好。圖3.4輔助電源電路圖5、電流、電壓采樣采樣模塊是輸出電壓經(jīng)過采樣回來,形成一個(gè)負(fù)反饋.經(jīng)過單片機(jī)部A/D進(jìn)行處理,然后使輸出更加穩(wěn)定和準(zhǔn)確。電壓采樣模塊直接采用LM358運(yùn)放如圖3.5,將輸出的電壓縮小一定倍數(shù)后,然后送給單片機(jī)處理判斷。電流采樣是經(jīng)過0.1歐/4瓦的采樣電

18、阻后,縮小一定倍數(shù),然后經(jīng)過一個(gè)差分電路,將電壓值送入單片機(jī)進(jìn)行處理如圖3.6。圖3.5電壓采樣電路圖圖3.6電流采樣電路圖6、顯示、按鍵顯示部分采用字符型液晶1602,能夠同時(shí)顯示16x02即32個(gè)字符。16個(gè)引腳,3個(gè)控制引腳,8位雙向數(shù)據(jù)端引腳。具有微功耗、體積小、顯示容豐富、超薄輕巧的特點(diǎn)。用戶可以對EN、RW、RS的數(shù)據(jù)進(jìn)行編程,然后通過D0D7輸出顯示數(shù)據(jù)。其引腳功能圖見下表6.1表6.1 1602引腳功能圖按鍵部分采用四個(gè)獨(dú)立的按鍵,分別控制占空比的加和減,對輸出的電壓和電流進(jìn)行控制,使輸出能夠達(dá)到期望的要求,其按鍵功能表如表6.2。表6.2按鍵功能表鍵名S1S2S3S4功能PW

19、M1加0.2%PWM1減0.2%PWM2加0.2%PWM2減0.2%CPU端口號PD0PD1PD2PD3(三)、軟件設(shè)計(jì)1、主程序如圖3.7為主程序流程圖,一開始給系統(tǒng)各部分初始化,包括按鍵初始化,液晶初始化,PWM初始化,AD采樣初始化,中斷初始化,然后在進(jìn)入大循環(huán),在循環(huán)進(jìn)行數(shù)據(jù)的顯示,包括當(dāng)前輸入的占空比為多少,當(dāng)前采樣回來的數(shù)字量和實(shí)際的電壓值為多少。還有按鍵程序,和AD采樣。同時(shí)每10毫秒進(jìn)入定時(shí)器0中斷進(jìn)行調(diào)整。圖3.7主程序流程圖2、按鍵程序按鍵程序流程圖如圖3.8所示。按鍵采用四個(gè)獨(dú)立的按鍵,分別控制PWM1,PWM2的加和減,當(dāng)有鍵按下時(shí),掃描按鍵,然后進(jìn)入判斷。判斷當(dāng)前寄存

20、器對應(yīng)的值是否大于了設(shè)定的上限值,如果沒有則數(shù)值加1,如果達(dá)到了則鉗位在最大的上限值。然后返回?cái)?shù)據(jù)。通過按鍵程序,可以控制占空比的調(diào)節(jié)。圖3.8按鍵程序流程圖3、液晶程序圖3.8為1602液晶屏的程序框圖,1602由3個(gè)控制引腳,8位雙向數(shù)據(jù)端引腳控制顯示的容和位置。因此,這部分程序主要有初始化函數(shù),寫命令函數(shù)和寫數(shù)據(jù)函數(shù)組成。初始化函數(shù)主要對液晶屏的顯示模式進(jìn)行設(shè)定,寫命令函數(shù)主要是對顯示的位置和顯示的方式進(jìn)行設(shè)置,寫數(shù)據(jù)函數(shù)是決定顯示的容。 圖3.8 1602程序流程圖4、采樣程序如圖3.9是采樣程序流程圖。一開始配置AD寄存器,然后啟動(dòng)AD寄存器,然后將采樣回來的數(shù)據(jù)組合成10位的數(shù)據(jù),

21、然后采樣8次,去頭去尾后,對其求平均值。將數(shù)據(jù)處理后,給液晶顯示。然后進(jìn)行電壓判斷,是否小于要求的最小值,如果是的話進(jìn)行鉗位,然后是否小于設(shè)定的最大值,是的話,就是在要求圍,那就進(jìn)行PID算法的調(diào)整,進(jìn)行電流的分流。如果大于最大值的話,就進(jìn)行鉗位。圖3.9 AD采樣程序流程圖5、中斷、PID流程圖如圖3.10和3.11分別是中斷流程圖和PID算法程序流程圖。定時(shí)器0中斷定時(shí)10毫秒溢出中斷,在中斷中進(jìn)行PID調(diào)整,和電壓反饋調(diào)整。PID算法是根據(jù)公式,對采樣電阻采樣回來的電壓進(jìn)行反饋計(jì)算。根據(jù)對P,I,D三個(gè)參數(shù)的設(shè)置,然后結(jié)合算法公式,對輸出的數(shù)據(jù)進(jìn)行不斷的調(diào)整,達(dá)到要求的值。圖3.10 定

22、時(shí)器0中斷 圖3.11 PID算法流程圖四、調(diào)試過程(一)、遇到的問題與解決辦法(1)、在對電路板進(jìn)行設(shè)計(jì),做板子的時(shí)候,經(jīng)過封塑機(jī)出來后的板子,然后用腐蝕劑進(jìn)行腐蝕,得到了一塊單面板,當(dāng)我們把器件焊上去的時(shí)候發(fā)現(xiàn),跟我們預(yù)期的反了一下,所有的器件都反了一下,這樣子,整個(gè)電路就不能用了。經(jīng)過我們的討論和思考,我們認(rèn)為是我們在打印出油印紙的時(shí)候沒有將它鏡像,使整塊板子就是按照反面的印了出來,經(jīng)過我們鏡像后,發(fā)現(xiàn)和我們所需要的板子是一樣的了,所有的元器件都能按照原來的位置進(jìn)行裝配。而且板子也能正常工作。(2)、在整個(gè)電路都做出來以后,進(jìn)行模塊調(diào)試的時(shí)候發(fā)現(xiàn)方波的波形并不是很好,有一點(diǎn)的曲線,經(jīng)過老

23、師上課的講解指導(dǎo)了是,柵極旁邊的電阻阻值太大,因?yàn)橛蟹植茧娙?,所有會充放電,使波形不是很理想。?jīng)過計(jì)算后選取了一個(gè)合適的阻值,使波形能夠達(dá)到電路的要求。還有在整體調(diào)試的時(shí)候,發(fā)現(xiàn)上面一路的測試點(diǎn),一直是0,下面一路一直是1A左右,經(jīng)過主電路排查后,發(fā)現(xiàn)沒有問題,然后對測試點(diǎn)進(jìn)行排查,發(fā)現(xiàn)測試點(diǎn)的夾子松掉了,使電流都往下去了。將夾子焊好后,電路正常工作。(3)、在進(jìn)行程序調(diào)試的時(shí)候,一直在使用部的1M晶振,所以一直精度上不去,調(diào)節(jié)都是很粗的調(diào)節(jié),電流一直達(dá)不到指標(biāo)。還有液晶刷新很慢,按鍵要按很久才能用。后來查閱了資料,發(fā)現(xiàn)在燒寫程序的時(shí)候要勾上熔絲位,如果使用的是8M以上的外部晶振的話,那就要把

24、熔絲位全部勾上。這樣才是在使用外部的16M晶振。將熔絲位勾上后,調(diào)節(jié)程序后,發(fā)現(xiàn)精度大大的提升了。能夠達(dá)到基本的要求。還有在對PID參數(shù)設(shè)置的時(shí)候,一開始沒有頭緒,隨便調(diào),后來看論壇和同學(xué)談?wù)?,發(fā)現(xiàn)要一個(gè)一個(gè)參數(shù)的調(diào),在經(jīng)過多次實(shí)驗(yàn)后,將PID參數(shù)調(diào)整好了,是指標(biāo)達(dá)到了要求。(二)、數(shù)據(jù)分析表4.1和表4.2是在電流1:1情況下,比例調(diào)節(jié)和PI調(diào)節(jié)的數(shù)據(jù)對比。表4.1負(fù)載為8.9, 兩模塊電流按1:1分配(比例反饋)I1(A)I2 (A)I總 (A)Uo(V)給定值0.5051.08.0測量值0.5050.5151.0028.24絕對誤差1%3%0.2%3%表4.2負(fù)載為8.5, 兩模塊電流按

25、1:1分配(PI反饋)I1(A)I2 (A)I總 (A)Uo(V)給定值0.5051.08.0測量值0.4940.5081.0078.08絕對誤差1.2%1.7%0.7%1%表4.3和表4.4是在電流1:2情況下,比例調(diào)節(jié)和PI調(diào)節(jié)的數(shù)據(jù)對比。表4.3負(fù)載為7.0,兩模塊電流按1:2分配情況(比例反饋)I1(A)I2 (A)I總 (A)Uo(V)給定值0.51.01.58.0測量值0.4620.9301.4977.71絕對誤差7.6%7%0.2%3.6%表4.4負(fù)載為5.9,兩模塊電流按1:2分配情況(PI反饋)I1(A)I2 (A)I總 (A)Uo(V)給定值0.51.01.58.0測量值0

26、.5080.9811.5027.60絕對誤差1.6%1.9%0.2%5%對比表4.1和表4.2可以看出,同樣是1:1的電流分配情況下,比例調(diào)節(jié)的誤差在5%以,達(dá)到了基本的要求,但是在PI調(diào)節(jié)下,可以看出誤差精度已經(jīng)達(dá)到了2%的要求。對比表4.3和表4.4可以看出,同樣是1:2的電流分配情況下,比例調(diào)節(jié)的誤差已經(jīng)超出了5%的要求,而在PI調(diào)節(jié)下精度達(dá)到了2%以。對比著兩組數(shù)據(jù),可以看出了在PI的調(diào)節(jié)下精度大大的提升,說明了PID算法在控制方面的優(yōu)勢,使整個(gè)系統(tǒng)更加完善。五、體會與展望通過這次選修課的學(xué)習(xí),學(xué)到了專業(yè)知識方面的一些知識。整個(gè)學(xué)習(xí)的過程是很重要的。由于這個(gè)學(xué)期在學(xué)習(xí)電力電子這門課,而

27、課題又正好和電力電子相關(guān)知識有關(guān),所以對于這次的課程,通過對整個(gè)系統(tǒng)的設(shè)計(jì),測試,調(diào)整。更好的了解了電力電子和開關(guān)電源相關(guān)的知識,也更深入的學(xué)習(xí)到了一些課堂上無法學(xué)習(xí)到的東西。將課堂的理論知識和實(shí)踐想結(jié)合,將學(xué)習(xí)到的東西更加印象深刻,不用去死記硬背,能夠靈活運(yùn)用。對于編寫程序,整體的邏輯性還要加強(qiáng)。流程圖要寫好再寫程序。對于展望,希望能夠在以后的學(xué)習(xí)中把硬件方面學(xué)的更好,能夠把不足給彌補(bǔ)。在程序方面多學(xué)習(xí)一下別人的算法。學(xué)的更好,希望一次比一次有進(jìn)步。參考文獻(xiàn)1 程漢湘,武小梅電力電子技術(shù)第二版. 科學(xué)2 譚浩強(qiáng)C程序設(shè)計(jì)第三版, HYPERLINK :/172.17.2.16/kns50/N

28、avi/Bridge.aspx?DBCode=cjfd&LinkType=IssueLink&Field=BaseID*year*issue&TableName=CJFDYEARINFO&Value=ZNLB*1999*01&NaviLink=%e4%b8%ad%e5%8d%97%e6%9e%97%e5%ad%a6%e9%99%a2%e5%ad%a6%e6%8a%a5 t _blank :清華大學(xué),2008.113 童詩白,華成英.模擬電子技術(shù),第四版:高等教育,2006.54 閻石數(shù)字電子技術(shù)基礎(chǔ),第五版.:高等教育,2006.55 燕君.自動(dòng)控制原理.大學(xué),2008.1附 錄附錄1整體電路

29、圖附錄2程序代碼/*main.c*/#include#include#include1602.h#includekey.h#includead.h#includepid.h#define uchar unsigned char#define uint unsigned int#pragma interrupt_handler timer0_ovf_isr:10/*定時(shí)器0中斷*/void timer0_init(void) TCCR0 = 0 x00; /停止定時(shí)器 TCNT0 = 0 x64;/初始值,每10毫秒進(jìn)一次中斷 TIMSK = 0 x01; /允許中斷 SREG |= BIT(7

30、); /允許全局中斷/*外中斷0函數(shù)*/void timer0_ovf_isr(void) TCNT0 = 0 x64; pid1_calculating(); /PID調(diào)整OCR1A pid2_calculating(); /PID調(diào)整OCR1B_vol(); /電壓反饋/*PWM設(shè)置輸出*/void KPWM(void) PORTD|=BIT(4)|BIT(5); DDRD|=BIT(4)|BIT(5); TCCR1A = 0 xA2; /兩路PWM,匹配清零 TCCR1B = 0 x11; /相位修正PWM模式,位數(shù)可調(diào),預(yù)分頻1 ICR1 = 800; /此數(shù)為16位PWM,16M晶振

31、,clk/(2*N*TOP),頻率為10K OCR1A = 255; /占空比31.8% OCR1B = 255; /占空比31.8%void main() KPWM(); /PWM函數(shù) LCD_init(); /1602初始化函數(shù) key_init(); /按鍵初始化函數(shù) timer0_init(); /定時(shí)器0初始化 adcport_init(); /AD端口初始化 while(1) Display_PWM(); /顯示PWM函數(shù)press(); /按鍵函數(shù)display_AD0(); /顯示AD0的模擬量和數(shù)字量 /*1602.h*/#ifndef _1602_H_#define _16

32、02_H_#define uchar unsigned char#define uint unsigned intvoid delay(uint MS);void write_(uint );void write_dat(uint dat);void LCD_init();void Display_PWM();void calculate_AD0();#endif/*1602.c*/#include#include#include1602.h#define uchar unsigned char#define uint unsigned int/*顯示固定數(shù)組PWM:*/const uchar

33、 tab=PWM:;/*延時(shí)函數(shù)*/void delay(uint MS) /約為1MS的延時(shí)函數(shù) uint i,j; for(i=0;iMS;i+) for(j=0;j2282;j+); /2282是在16MHz晶振下為MS毫秒/*1602寫地址*/void write_(uint ) PORTA&=BIT(5); /RS=0 PORTA&=BIT(6); /RW=0 PORTB=; /送地址 delay(5); PORTA|=BIT(7); /EN=1 delay(5); PORTA&=BIT(7); /EN=0/*1602寫數(shù)據(jù)*/void write_dat(uint dat) POR

34、TA|=BIT(5); /RS=1 PORTA&=BIT(6); /RW=0 PORTB=dat; /送數(shù)據(jù) delay(5); PORTA|=BIT(7); /EN=1 delay(5); PORTA&=BIT(7); /EN=0 /*1602初始化*/void LCD_init() DDRA=0XFF; DDRB=0 xFF; delay(5); write_(0X38); /設(shè)8位數(shù)據(jù)線,雙行,5*7點(diǎn)陣 delay(5); write_(0X0c); /開顯示,不顯示光標(biāo) delay(5); write_(0X06); /輸入地址自加,屏幕不移動(dòng) delay(5); write_(0X

35、01); /清屏 delay(5);/*顯示PWM占空比*/void Display_PWM() uchar i; uint shi,ge,xiaoshu,beichu; uint shi1,ge1,xiaoshu1; shi=OCR1A/100; /將OCR1A百位拆分 ge=OCR1A/10%10; /將OCR1A十位拆分 xiaoshu=OCR1A%10; /將OCR1A個(gè)位拆分 beichu=ICR1/10; /將ICR1變?yōu)閮晌粩?shù) shi1=OCR1B/100; /將OCR1B百位拆分 ge1=OCR1B/10%10; /將OCR1B十位拆分 xiaoshu1=OCR1B%10; /

36、將OCR1B個(gè)位拆分 write_(0 x80); for(i=0;tabi!=0;i+) write_dat(tabi); write_(0 x84); write_dat(shi*100+ge*10+xiaoshu)*100/beichu/100+0 x30); /顯示十位write_dat(shi*100+ge*10+xiaoshu)*100/beichu/10%10+0 x30); /顯示個(gè)位 write_dat(.); write_dat(shi*100+ge*10+xiaoshu)*100/beichu%10+0 x30); /顯示小數(shù)點(diǎn) write_dat(%); write_(

37、0 x8a); write_dat(shi1*100+ge1*10+xiaoshu1)*100/beichu/100+0 x30); /顯示十位 write_dat(shi1*100+ge1*10+xiaoshu1)*100/beichu/10%10+0 x30); /顯示個(gè)位 write_dat(.); write_dat(shi1*100+ge1*10+xiaoshu1)*100/beichu%10+0 x30); /顯示小數(shù)點(diǎn) write_dat(%);/*AD.H*/#ifndef _AD_H_#define _AD_H_void adcport_init();void ADC0INI

38、T(void);void ADC1INIT(void);void ADC2INIT(void);int get_ADCdata(void);float get_ave(int a8);float get_ADC0data(void);float get_ADC1data(void);float get_ADC2data(void);void display_AD0();#endif/*AD.C*/#include#include#include1602.h#define uchar unsigned char#define uint unsigned int/參考電壓#define REF 5

39、.12 /*ADC端口初始化*/void adcport_init() DDRA&=BIT(0); PORTA&=BIT(0); DDRA&=BIT(1); PORTA&=BIT(1); DDRA&=BIT(2); PORTA&=BIT(2);/*ADC0初始化*/void ADC0INIT(void) ADMUX=0 x40; /AREF基準(zhǔn)壓,結(jié)果右對齊,通道為ADC0 ADCSRA=0 x87; /使能ADC,單次轉(zhuǎn)換,預(yù)分頻為128 ADCSRA|=(1ADSC); /啟動(dòng)首次轉(zhuǎn)換 while(!(ADCSRA&(1ADIF); /等待轉(zhuǎn)換結(jié)束 ADCSRA|=(1ADIF); /清除

40、ADIF位/*ADC1初始化*/void ADC1INIT(void) ADMUX=0 x41; /AREF基準(zhǔn)壓,結(jié)果右對齊,通道為ADC1 ADCSRA=0 x87; /使能ADC,單次轉(zhuǎn)換,預(yù)分頻為128 ADCSRA|=(1ADSC); /啟動(dòng)首次轉(zhuǎn)換 while(!(ADCSRA&(1ADIF); /等待轉(zhuǎn)結(jié)束循環(huán) ADCSRA|=(1ADIF); /清除ADIF位/*ADC2初始化*/void ADC2INIT(void) ADMUX=0 x42; /AREF基準(zhǔn)壓,結(jié)果右對齊,通道為ADC2 ADCSRA=0 x87; /使能ADC,單次轉(zhuǎn)換,預(yù)分頻為128 ADCSRA|=(1

41、ADSC); /啟動(dòng)首次轉(zhuǎn)換 while(!(ADCSRA&(1ADIF); /等待轉(zhuǎn)結(jié)束循環(huán) ADCSRA|=(1ADIF); /清除ADIF位/*獲取ADC的采樣值*/int get_ADCdata(void) int a,b; a=b=0; b=ADCL; /讀高位后數(shù)據(jù)更新 a=ADCH; /再讀取ADCH數(shù)據(jù) a=(a8); /右對齊,左移八位 a=(a|b); /組成10位二進(jìn)制數(shù)據(jù) return a;/*去頭去尾,獲取平均值*/float get_ave(int a8)float v;unsigned char i;float sum=0;for(i=1;i7;i+) /從第2次

42、到第6次數(shù)據(jù)sum=sum+ai;v=sum/6;return v;/*獲取ADC0采樣8次的平均值*/float get_ADC0data(void)unsigned char i=0;float v;int buf8=0;for(i=0;i8;i+)ADC0INIT(); /AD初始化一次bufi=get_ADCdata(); /將數(shù)據(jù)放入數(shù)組v=get_ave(buf);return v;/*獲取ADC1采樣8次的平均值*/float get_ADC1data(void)unsigned char i=0;float v;int buf8=0;for(i=0;i8;i+)ADC1INIT

43、(); /AD初始化一次bufi=get_ADCdata(); /將數(shù)據(jù)放入數(shù)組v=get_ave(buf);return v;/*獲取ADC2采樣8次的平均值*/float get_ADC2data(void)unsigned char i=0;float v;int buf8=0;for(i=0;i8;i+)ADC2INIT(); /AD初始化一次 bufi=get_ADCdata(); /將數(shù)據(jù)放入數(shù)組v=get_ave(buf);return v;/*將數(shù)據(jù)拆分送顯示*/void display_AD0() int a,b; uchar s6,k6; uchar i,j,m; a=ge

44、t_ADC0data()*REF/1024*1000; /將數(shù)據(jù)轉(zhuǎn)化為十進(jìn)制 b=get_ADC0data(); /數(shù)字量 s0=a/1000+0; s1=.; s2=a%1000/100+0; s3=a%100/10+0; s4=a%10+0; s5=V; k0=D; k1=:; k2=b/1000+0; k3=b%1000/100+0; k4=b%100/10+0; k5=b%10+0; write_(0 xC0); for(i=0;i6;i+) write_dat(si); write_(0 xC7); for(j=0;j=360) /實(shí)際電壓值大于8.4V OCR1A=265; /鉗位

45、到8.4VOCR1B=265; if(get_ADC2data()=310) /實(shí)際電壓值小于7.6V OCR1A=240; /鉗位到7.6VOCR1B=240; /*KEY.H*/#ifndef _KEY_H_#define _KEY_H_void key_init();void press();uchar key();#endif/*KEY.C*/#include#include#include1602.h#define uchar unsigned char#define uint unsigned intuint count_pwm=255;uint count_pwm1=255;/*

46、按鍵初始化函數(shù)*/void key_init() DDRD&=BIT(0); /獨(dú)立鍵盤接口置高電平 PORTD|=BIT(0); DDRD&=BIT(1); /獨(dú)立鍵盤接口置高電平 PORTD|=BIT(1); DDRD&=BIT(2); /獨(dú)立鍵盤接口置高電平 PORTD|=BIT(2); DDRD&=BIT(3); /獨(dú)立鍵盤接口置高電平 PORTD|=BIT(3); DDRD&=BIT(7); /獨(dú)立鍵盤接口置高電平 PORTD|=BIT(7); /*按鍵函數(shù)*/void press() uchar m; m=PIND; m&=0 x0f; if(m=0X0e) count_pwm=O

47、CR1A; /讀取當(dāng)前PWM值 count_pwm+=1; count_pwm=OCR1B; /讀取當(dāng)前PWM值 count_pwm+=1; delay(1); /按鍵消抖 while(PIND=0 x0e); OCR1A=count_pwm; /OCR1A賦新值 OCR1B=count_pwm; /OCR1B賦新值 if(OCR1A=265&OCR1B=265) OCR1A=265;OCR1B=265; if(m=0X0d) count_pwm=OCR1A; /讀取當(dāng)前PWM值 count_pwm-=1; count_pwm=OCR1B; /讀取當(dāng)前PWM值 count_pwm-=1; delay(1); /按鍵消抖 while(PIND=0 x0d); OCR1A=count_pwm; /OCR1A賦新值 OCR1B=count_pwm; /OCR1B賦新值 if(OCR1A=240&OCR1B=261|OCR1B=251) OCR1A=261;OCR1B=251; if(m=0X07

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論