單片機控制的直流斬波器設計.doc_第1頁
單片機控制的直流斬波器設計.doc_第2頁
單片機控制的直流斬波器設計.doc_第3頁
單片機控制的直流斬波器設計.doc_第4頁
單片機控制的直流斬波器設計.doc_第5頁
已閱讀5頁,還剩53頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

本本 科科 畢畢 業(yè)業(yè) 設設 計 論文 計 論文 題目題目 單片機控制的直流斬波器單片機控制的直流斬波器 院院 系系 專業(yè)名稱專業(yè)名稱 電子信息工程電子信息工程 年級班級年級班級 學生姓名學生姓名 指導教師指導教師 年年 月月 日日 摘要摘要 傳統(tǒng)開關電源是模數(shù)結合的硬件為主的控制方式 其控制精度 響 應速度等都由電路拓撲結構和器件本身的參數(shù)決定 很難進一步提升其 性能 隨著微處理器處理技術的日趨成熟 開關電源的軟硬件結合的控 制技術得到了廣泛的關注 它呈現(xiàn)出純硬件控制方式無法比擬的優(yōu)點 本論文以單片機為控制核心對開關電源進行了可編程控制的設計 首先介紹了開關電源數(shù)控技術的研究現(xiàn)狀及趨勢 對整個系統(tǒng)的硬件電 路進行了各模塊的設計及對應器件的選型 在此基礎上 對軟件部分實 現(xiàn)過程進行了詳細闡述 關鍵詞 單片機 開關電源 Abstract Conventional switching power supply is combined with hardware based module control mode the control accuracy response speed by the circuit topology and device parameters of the decision itself it is difficult to further improve its performance With the microprocessor processing technology matures switching power supply control software and hardware combination technology has been widespread concern it presents a pure hardware control mode can not match advantage In this thesis the core of the microcontroller for the control of switching power supply for the programmable control of the attempt First introduced the technique of switching power supply CNC status and trends on the whole system has briefly introduces the hardware design and partial implementation of the software process described in detail Key words microcontroller switching power supply 目錄 目錄 3 第一章 前言 6 1 選題目的和意義 6 2 國內外綜述 6 第二章 系統(tǒng)硬件設計 8 2 1 系統(tǒng)原理 8 2 2 硬件的選取 9 2 3 半橋輸出的 PWM 波產(chǎn)生電路 10 2 4 A D 采樣及調理電路 10 2 41 電壓采樣電路 11 2 42 電流采樣調理電路 11 2 5 矩陣鍵盤電路 12 2 6 液晶 LCD 顯示電路 14 2 61 液晶 1602 顯示器介紹 14 2 62 本系統(tǒng)中 1602 的應用 15 第三章 系統(tǒng)軟件設計 16 3 1 軟件設計總體思路 17 3 2 系統(tǒng)主程序模塊 17 3 21 始初化模塊 18 3 22 PWM 波發(fā)生模塊 19 3 23 A D 轉換模塊 23 3 24 PID 算法處理模塊 27 3 25 LCD 液晶顯示模塊 29 3 26 按鍵處理模塊 29 3 3 中斷服務程序模塊 31 3 31 中斷程序原理及框圖 31 3 32 數(shù)字濾波算法 32 第四章 結 論 34 致 謝 36 參考文獻 37 附錄 39 目錄 前 言 1 選題目的和意義 直流斬波電路 DC Chopper 的功能是將直流電變?yōu)榱硪还潭妷?或可調電壓的直流電 也稱為直接直流 直流變換器 DC DC Converter 直流斬波電路包括六種基本斬波電路升降壓斬波電路應用最為廣泛 路 包括六種基本斬波電路升降壓斬波電路應用最為廣泛 直流斬波器能起 調壓的作用 所以可以做開關電源用 開關電源作為電力電子領域的一個重要分支 隨著電力電子技術的 高速發(fā)展而被廣泛應用于以電子計算機為主的各種終端設備和通信設備 中 是當今電子信息產(chǎn)業(yè)飛速發(fā)展不可缺少的一種電源方式 采用傳統(tǒng) 控制方式的開關電源 其控制精度 響應速度等都由電路拓撲和器件本 身的參數(shù)決定 如果想進一步提高開關電源的性能 就只能選用參數(shù)更 優(yōu)的器件 或者對原有電路進行大范圍的改動 這對電源產(chǎn)品的研發(fā) 生產(chǎn)都會帶來很多麻煩 也制約了開關電源性能的提升 同時 由于模 擬信號在傳遞過程中可能會出現(xiàn)信號失真 畸變以及受到外界電磁干擾 造成開關電源工作狀態(tài)不穩(wěn)定 所以 采用傳統(tǒng)控制方式的開關電源在 性能上的提升相當有限 隨著數(shù)字處理技術的日趨成熟 開關電源的可編程數(shù)控技術得到了 快速的發(fā)展和廣泛的關注 與硬件控制方式相比 數(shù)字控制技術具有其 無法比擬的優(yōu)勢 2 國內外綜述 開關電源的發(fā)展方向是高頻 高可靠 低耗 低噪聲 抗干擾和模 塊化 由于開關電源輕 小 薄的關鍵技術是高頻化 因此國外各大開 關電源制造商都致力于同步開發(fā)新型高智能化的元器件 特別是改善二 次整流器件的損耗 并在功率鐵氧體 Mn Zn 材料上加大科技創(chuàng)新 以 提高在高頻率和較大磁通密度 Bs 下獲得高的磁性能 而電容器的小型 化也是一項關鍵技術 SMT 技術的應用使得開關電源取得了長足的進展 在電路板兩面布置元器件 以確保開關電源的輕 小 薄 開關電源的 高頻化就必然對傳統(tǒng)的 PWM 開關技術進行創(chuàng)新 實現(xiàn) ZVS ZCS 的軟開關 技術已成為開關電源的主流技術 并大幅提高了開關電源的工作效率 對于高可靠性指標 美國的開關電源生產(chǎn)商通過降低運行電流 降低結 溫等措施以減少器件的應力 使得產(chǎn)品的可靠性大大提高 目前 開關電源以小型 輕量和高效率的特點被廣泛應用于以電子 計算機為主導的各種終端設備 通信設備等幾乎所有的電子設備 是當 今電子信息產(chǎn)業(yè)飛速發(fā)展不可缺少的一種電源方式 目前市場上出售的 開關電源中采用雙極性晶體管制成的 kHz 用 制成 的 kHz 電源 雖已實用化 但其頻率有待進一步提高 要提高開 關頻率 就要減少開關損耗 而要減少開關損耗 就需要有高速開關元 器件 然而 開關速度提高后 會受電路中分布電感和電容或二極管中 存儲電荷的影響而產(chǎn)生浪涌或噪聲 這樣 不僅會影響周圍電子設備 還會大大降低電源本身的可靠性 其中 為防止隨開關啟 閉所發(fā)生的電 壓浪涌 可采用 R C 或 L C 緩沖器 而對由二極管存儲電荷所致的電流 浪涌可采用非晶態(tài)等磁芯制成的磁緩沖器 不過 對 1MHz 以上的高頻 要采用諧振電路 以使開關上的電壓或通過開關的電流呈正弦波 這樣 既可減少開關損耗 同時也可控制浪涌的發(fā)生 這種開關方式稱為諧振 式開關 目前對這種開關電源的研究很活躍 因為采用這種方式不需要 大幅度提高開關速度就可以在理論上把開關損耗降到零 而且噪聲也小 可望成為開關電源高頻化的一種主要方式 當前 世界上許多國家都在 致力于數(shù)兆 Hz 的變換器的實用化研究 3 本論文的任務及工作 第二章 系統(tǒng)硬件設計 本章將對硬件部分的設計進行詳細介紹 其中包括以單片機為核心 最小系統(tǒng)的搭建以及外圍電路的設計和優(yōu)化 并對一些在設計中遇到的 問題進行分析和解決 2 1 系統(tǒng)原理 本次制作的是 36V 3A 的開關電源 要求能夠對輸出的電壓進行恒 定的控制 使整個系統(tǒng)具有很好的穩(wěn)定性 可以通過鍵盤的輸入值對開 關電源在 20V 36V 的輸出控制 而對其進行恒壓的控制是根據(jù)設置的電 壓值與采集到的電壓值的偏差進行比較 由單片機來完成 PID 算法處理 得到電壓的偏差信號 再根據(jù)偏差信號的大小改變單片機 ECCP 模塊所產(chǎn) 生兩路推挽的 PWM 波的占空比 從而改變半控橋電路中兩個 MOS 管通斷 時間的大小 從而起到穩(wěn)壓的作用 同時外加 LED 顯示模塊 對實時的 電壓電流起到了檢測和顯示的作用 系統(tǒng)的硬件框圖如圖 2 1 所示 圖 2 1 系統(tǒng)硬件框圖 實際的硬件系統(tǒng)中 通過抗干擾電路來減少外界干擾如果沒有該部 分輸入電路就會有干擾對輸出有很大的影響 整流濾波電路使輸入和輸 出的波形更接近理想化 這樣可以減少誤差 如果沒有該部分加大了誤 差有可能使結果和理想狀態(tài)下有很大的出入 單片機模塊輸出兩路推挽的 PWM 波 通過高速光耦隔離并且進行電 平的轉換 再通過以 IR2113 為核心的驅動電路將 PWM 波供給開關電源的 半橋控制的逆變電路 從開關電源輸出端電壓經(jīng)分壓后采集回單片機模 塊進行 A D 轉換 通過 LCD 液晶顯示采樣回來的電壓值 通過軟件的控 制使電壓穩(wěn)定在某一值 具體的電壓值由按鍵模塊確定 2 2 硬件的選取 本設計采用的是 Microchip 公司的高性能 8 位單片機 PIC18F4520 并 且使用 C 語言進行程序的編寫 同時在 MPLAB IDE 集成開發(fā)環(huán)境中程 序的編譯和調試對整個系統(tǒng)進行描述和設計 本設計所使用的 PIC18F4520 單片機是采用 10 位 A D 及納瓦技術的 40 腳的增強型閃存單片機 如圖 2 2 所示 21 2 PIC18F4520 DPIP 封裝的引腳圖 此單片機具有高性能的 RISC Reduced Instruction Set Computer 結構 CPU 有較寬的工作電壓范圍 2 0 5 5V 同時驅動能力強 驅動電流高達 25mA 還具有超低的功耗 多級的中斷 由單片機來完成 PID 算法處理 得到電壓的偏差信號 再根據(jù)偏差信號的大小改變單片機 ECCP 模塊所產(chǎn) 生兩路推挽的 PWM 波的占空比 從而改變半控橋電路中兩個 MOS 管通斷 時間的大小 從而起到穩(wěn)壓的作用 在本設計中主要使用的是單片機的 ECCP 模塊 增強型捕捉 比較 PWM 模塊 10 位輸出的 A D 轉換模塊 同時加上外圍的鍵盤輸入模 塊 以及 LCD 顯示模塊 2 3 半橋輸出的 PWM 波產(chǎn)生電路 由于原先在選擇單片機時選擇的是 PIC18F4520 其內部本身就具有 ECCP 模塊 所以只需要單片機的最小系統(tǒng)就可以實現(xiàn)兩路推挽的 PWM 波 的輸出 無需外加其他電路 2 4 A D 采樣及調理電路 本系統(tǒng)主要對輸出的電壓以及電流進行采樣 通過分壓或者信號調 理電路進行整形和放大送至 A D 轉換器 由于 PIC 單片機本身就內置有 A D 轉換模塊 所以不必外擴展 A D 轉換器 使得整個系統(tǒng)的硬件電路 變得更為簡捷 圖 2 3 PIC18F4520 各管腳電路圖 圖 2 4 電壓分壓采樣電路 2 41 電壓采樣電路電壓采樣電路 單片機的 A D 轉換器所能接受的輸入轉換電壓為 0 5V 而從開關電 源的輸出端所輸出的電壓在 24V 36V 之間 要將其轉換成相應的數(shù)量值 就必須將輸出端的電壓進行降壓處理 故采用了分壓電路 將輸出電壓 的值降到 2 4V 之間 考慮到電阻的功耗問題 兩個分壓電阻不宜太小 同時考慮到電阻的阻值越大越容易受干擾 阻值又不宜取太大 因此 我們最終選定 100k 和 10k 這兩個電阻分壓以便單片機的 A D 轉換器進行 模數(shù)的轉換 具體的分壓電路較為簡單 如圖 2 4 所示 2 42 電流采樣調理電路 本系統(tǒng)采用康銅絲 6 進行電流的采樣 用康銅絲是考慮到功率損耗 的問題 是因為康銅絲的阻值很小 一般在 0 01 左右 電流流經(jīng)康銅 絲后的電壓很小 最大值不會超過 50mV 信號比較微弱 因此 在進行 采樣的時候 我們需要將此電壓信號放大到 PIC 單片機的 A D 模塊能夠 接受的 0 5V 之間的范圍 本系統(tǒng)根據(jù)實際的需要將該電壓進行大約 100 倍的放大 這一模塊的電路圖如 2 5 所示 直接用提供的公式計算 當 U1 U2 Uf 時 滿足輸出 Uo U1 U2 當然如果要求說滿足一個確定 的關系式時 可以通過改變兩個電阻與 Rf 的比值得到所需要的比例關系 從運算放大器輸出的電壓 Vout 1 R31 R33 R32 Vcurrent 放大倍數(shù)由 R31 R33 R32決定 123456 A B C D 654321 D C B A Title NumberRevisionSize B Date 10 M ay 2010Sheet of File C Documents and Settings Administrator 業(yè) 業(yè) 業(yè) 業(yè) 業(yè) 業(yè) ddbDrawn By AR1 OPAM P VCC5V R33 100k R32 1k Current Amp R31 1k 圖 2 5 電流采樣信號調理電路 2 5 矩陣鍵盤電路 通過鍵盤的輸入值對開關電源在 20V 36V 的輸出控制 而對其進行 恒壓的控制是根據(jù)設置的電壓值與采集到的電壓值的偏差進行比較 如圖 2 6 所示為 3 3 的矩陣式鍵盤 這一鍵盤的電路設計是采用電 阻分壓式設計 配合 A D 轉換器一查表得方式做按鍵的判斷 所以只要 使用一個具有 A D 功能的輸入口即可完成對 3 3 的矩陣式鍵盤的掃描操 作 圖中的 AnJian 端口與圖 2 3 的 AN0 相連接 為 A D 功能的輸入口 此外 一般的按鍵所用開關都是機械彈性開關 由于機械觸點的彈 性作用 按鍵開關在閉合時不會馬上穩(wěn)定地連接 在斷開時也不會馬上 完全的斷開 在閉合和斷開的瞬間均有一連串的抖動 所以一般在程序 中會加按鍵的去抖動的部分 按鍵按下的電壓信號波形圖如圖 2 7 所示 從圖中可以看出按鍵按下和松開的時候都存在著抖動 抖動時間的長短 因按鍵的機械特性不同而有所不同 一般為 5ms 10ms 如果不處理鍵抖動 則有可能引起一次按鍵被誤讀成多次 所以為了確 保能夠正確地讀到按鍵 必須去除鍵抖動 確保在按鍵的穩(wěn)定閉合和穩(wěn) 定斷開的時候來判斷按鍵狀態(tài) 判斷后再做處理 123456 A B C D 654321 D C B A Title NumberRevisionSize B Date 7 May 2010 Sheet of File C Documents and Settings Administrator 業(yè)業(yè) 業(yè)業(yè)業(yè)業(yè) ddbDrawn By S1 K1 S2 K2 S3 K3 S4 K4 S7 k7 S5 K5 S8 K8 S6 K6 S9 K9 R24 10k R25 4 7k R26 2 2k VCC5V R27 20k R28 10k R29 20k R30K 30k AnJian Amp 圖 2 6 3 3 矩陣式鍵盤 在本系統(tǒng)的按鍵去抖動設計中 主要是判斷按鍵是否抬起 如果此 法效果不是很好 那就可以采用延時再判斷的方法 如前所述 機械按 鍵的抖動時間一般在 10ms 20ms 之間 在程序中首先 A D 采樣進來的電 壓值與延時 10ms 后的電壓值進行比較 若相等 則說明按鍵已經(jīng)確定按 下 按鍵的抖動已經(jīng)消除 假若不相等 則按鍵不確定已經(jīng)按下 需要 重新再掃描 實驗證明 本系統(tǒng)中只需要采用判斷按鍵是否抬起的方法 已經(jīng)可以很好的去抖動滿足要求了 按鍵按下 前抖動穩(wěn)定閉合后抖動 按鍵松開 圖 1 7 按鍵抖動 2 6 液晶 LCD 顯示電路 2 61 液晶 1602 顯示器介紹 液晶顯示器以其微功耗 體積小 顯示內容豐富以及超薄輕的諸多 優(yōu)點 在各類儀表和低功耗系統(tǒng)中得到廣泛的應用 7 8 根據(jù)顯示內容可以分為字符型液晶 圖形液晶 根據(jù)顯示容量又可 分為單行 16 字 2 行 16 字 兩 20 字等等 本系統(tǒng)中采用的是一款應用相當廣泛 功能精簡但完全可以滿足要 求的 1602 液晶模塊 它是 16 字 2 行的字符型液晶模塊 是一種通用 模塊 與數(shù)碼管相比該模塊主要有如下優(yōu)點 1 位數(shù)多 可顯示 32 位 而 32 個數(shù)碼管體積相當龐大了 2 顯示內容豐富 可顯示所有數(shù)字和大 小寫字母 3 程序簡單 如果用數(shù)碼管動態(tài)顯示 會占用很多時間來刷新顯示 而 1602 自動完成此功能 1602 采用標準的 16 腳接口 各管腳功能如表 2 1 所示 管腳序號名稱功能 1VSS電源地端 2VDD電源 5V 端 3VEE液晶顯示器對比度調整端 4RS寄存器選擇 高選數(shù)據(jù)寄存器 低選 指令寄存器 5R W讀寫信號 高為讀 低為寫 6E使能端 高電平跳變?yōu)榈碗娖綍r有效 表 2 1 1602 各管腳及其功能 2 62 本系統(tǒng)中 1602 的應用 根據(jù)系統(tǒng)設計的實際需要 液晶模塊主要是顯示設定電壓值 AD 采 集得到的時間電壓值 電流值 1602 的各管腳和單片機各端口的連接如 圖 2 8 所示 實物圖如圖 2 9 所示 液晶顯示器 1602 的 D0 D3 分別與 PIC18F4520 的 RD0 RD3 相連接 使能端 E 則與單片機的 Vref 端相連 RS 端與 RD4 連接 R W 端則與 RD6 相連 具體可以把圖 2 3 與圖 2 8 這兩 幅圖聯(lián)合起來看 15 16 腳是用來調節(jié)背光 達到即使黑暗的地方也能 看清液晶屏上顯示的字符 但它有損于液晶屏的壽命 123456 A B C D 654321 D C B A Title NumberRevisionSize B Date 1 May 2010 Sheet of File D PROGRAM FILES EXAMPLES BACKUP 11 DDBDrawn By V CC5V RS RW E D 0 D 1 D 2 D 3 V CC5V S1 K1 S2 K2 S3 K3 S4 K4 S7 k7 S5 K5 S8 K8 S6 K6 S9 K9 R24 10K R25 4 7K R26 2 2K V CC5V R27 20K R28 10K R29 20K R30K 30K AnJian G ND 1 V CC 2 V O 3 RS 4 RW 5 E 6 D B0 7 D B1 8 D B2 9 D B3 10 D B4 11 D B5 12 D B6 13 D B7 14 BG V CC 15 BG G ND 16 LCD 1602 U4 LCD1602 圖 2 8 1602 與單片機引腳連接圖 7 14D0 D7雙向數(shù)據(jù)口 15 16LED LED 調節(jié)液晶背光 第三章 系統(tǒng)軟件設計 單片機傳統(tǒng)的開發(fā)語言是匯編語言 因為匯編語言是最接近機器碼 的一種語言 其主要優(yōu)點是占用資源少 程序執(zhí)行效率高 但是不同的 CPU 其匯編語言可能有所差異 所以不易移植 作為一種結構化的程序設計語言 C 語言的特點就是可以使你盡量 少地對硬件進行操作 具有很強的功能性 結構性和可移植性 因此常 常被優(yōu)選作為單片機系統(tǒng)的編程語言 用 C 編寫程序比匯編更符合人們 的思考習慣 開發(fā)者可以擺脫與硬件無必要的接觸 更專心的考慮功能 和算法而不是考慮一些細節(jié)問題 這樣就減少了開發(fā)和調試的時間 C 語言具有良好的程序結構 適用于模塊化程序設計 因此采用 C 語言設計 單片機應用系統(tǒng)程序時 首先要盡可能地采用結構化的程序設計方法 將功能模塊化 由不同的模塊完成不同的功能 這樣可使整個應用系統(tǒng) 程序結構清晰 易于調試和維護 不同的功能模塊 分別指定相應的入 口參數(shù)和出口參數(shù) 對于一些要重復調用的程序一般把其編成函數(shù) 這 樣可以減少程序代碼的長度 又便于整個程序的管理 還可增強可讀性 和移植性 綜上 C 語言具有很強的功能性和結構性 可以縮短單片機控制系 統(tǒng)的開發(fā)周期 而且易于調試和維護 已經(jīng)成為目前單片機語言中最流 行的編程語言 本程序設計正是將每一功能模塊化 一個一個模塊進行 C 語言的編寫 再一塊一塊調試 從整個設計下來的結果看 用 C 語言 編寫程序達到了很好的效果 本設計使用單片機對開關電源進行數(shù)字的控制 代替原來的 PWM 控 制芯片 KA7500 9 原先的 KA7500 所實現(xiàn)的功能是對輸出的電壓以及電 流進行反饋采樣 通過誤差放大器之后對輸出的 PWM 波的占空比進行相 應的調節(jié) 起到了穩(wěn)壓恒流的作用 改用 PIC18F4520 后 采取雙通道 A D 采樣 分別為電壓采樣和電流的采樣 轉換為相應之后進行 PID Proportional Integral Differential 算法 同樣起到了穩(wěn)壓恒 流的作用 同時外圍增設鍵盤和 LCD 顯示電路 對輸出的電壓和電流有 實時的控制和監(jiān)測 本章將對整個軟件部分的設計思路及其具體實現(xiàn)進行闡述 3 1 軟件設計總體思路 本系統(tǒng)的軟件主要有主程序模塊 中斷服務程序模塊組成 其中 主程序模塊主要完成系統(tǒng)的初始化模塊 PWM 波發(fā)生模塊 ADC 信號采集 模塊以及 PID 算法處理模塊 鍵盤以及 LCD 顯示模塊 中斷服務程序主 要完成 TMR0 定時 10ms 和 A D 模塊的數(shù)據(jù)采集濾波處理功能 3 2 系統(tǒng)主程序模塊 主程序模塊的程序框圖如圖 3 1 所示 圖 3 1 主程序框圖 3 21 始初化模塊 主程序中的初始化模塊主要完成系統(tǒng)全局變量的初始化 ECCP 模塊 的初始化 A D 轉化的初始化 LCD 顯示的初始化 TMR0 定時器的初始 化和 CPU 中斷系統(tǒng)的初始化 初始化模塊的程序框圖如圖 3 2 所示 ECCP 模塊的初始化將設置有兩路互補推挽輸出的 PWM 波 A D 轉化初始 化將 A D 模塊初始化為 10 位的 A D 轉換 TMR0 初始化完成每 10ms 采樣 一次電壓及電流值 圖 3 2 初始化模塊框圖 3 22 PWM 波發(fā)生模塊波發(fā)生模塊 在PIC18F4520 中 CCP1模塊為帶有增強的PWM功能的標準CCP模塊 10 這些增強的功能包括提供2路或4路輸出通道 用戶可選的極性 高電平 有效或低電平有效 死區(qū)控制以及自動關閉和重啟 因此 增強型PWM 模式提供了更多的PWM 輸出選項以適應范圍更廣的控制應用 圖3 3所示為PWM操作的簡化框圖 所有的控制寄存器都是雙重緩沖 的 并且在一個新的PWM周期的開始時刻 Timer2復位時的周期邊界 被 裝載以防止在任何輸出上出現(xiàn)毛刺 但PWM延遲寄存器PWM1CON例外 該 寄存器在占空比邊界或周期邊界 選擇兩者中首先出現(xiàn)的那個 被裝載 由于緩沖 模塊將不會立即啟動 而要等到分配的定時器復位為止 這 意味著增強型PWM 波形并不完全與標準的PWM 波形吻合 而是偏移一個 完整的指令周期 4TOSC 11 圖 3 3 增強型 PWM 模式工作原理示意圖 每個增強型CCP模塊至多有4路PWM 輸出 這取決于選定的操作模式 這些輸出 P1A至P1D 與PORTC和PORTD上的I O引腳復用 輸出是否有效 取決于選定的CCP操作模式 因此 若想要單片機工作于半橋輸出的增強 型的PWM模式 必須按照以下幾個步驟 1 通過分別設置CCP1CON寄存器的P1M1 P1M0 和CCP1M3 CCP1M0 位 可配置模塊的輸出模式和極性 如圖3 4所示為CCP1CON寄存器各配置位 圖3 4 CCP1CON寄存器配置位 由于本設計中為兩路互補推挽的PWM波輸出 所以設置 P1M1 P1M0 10 即半橋輸出 P1A和P1B為帶死區(qū)控制的調制輸出 P1C和 P1D被指定為端口引腳 同時設置CCP1M3 CCP1M0 1100 使P1A和P1B都為 高電平有效 2 使P1A和P1B都為輸出模式 即配置TRISC和TRISD的相應引腳為 0 3 設置PWM波的周期 PWM 周期可以通過寫PR2寄存器來指定 用以 下公式來計算PWM周期 PWM周期 PR2 1 4 TOSC TMR2預分頻值 根據(jù)本系統(tǒng)所需PWM波的實際情況 原先的PWM控制芯片所產(chǎn)生的PWM 波的頻率要求為25kHz 即周期為4 10 5s 而單片機外部的振蕩器為 16MHz TOSC 1 16 106s 經(jīng)計算的PR2 159 4 設置PWM波的占空比 通過寫CCPR1L寄存器和CCP1CON位來 指定PWM占空比 最高分辨率可達10位 CCPR1L包含占空比的高8位 而 CCP1CON包含低2位 由CCPR1L CCP1CON 表示完整的10位值 計算占空比的公式如下 PWM占空比 CCPR1L CCP1CON TOSC TMR2預分頻值 可以在任何時候寫入CCPR1L和CCP1CON 但是在PR2和TMR2發(fā)生 匹配 即周期結束 前占空比值不會被鎖存到CCPR1H中 在PWM模式中 CCPR1H 是只讀寄存器 CCPR1H寄存器和一個2位的內部鎖存器用于給PWM 占空比提供雙重緩沖 這種雙重緩沖結構非常重要 可以避免在PWM工作 過程中產(chǎn)生毛刺 同樣根據(jù)本系統(tǒng)所需 PWM 波的實際情況 PWM 的占空比在 25 左右 所以需要配置 CCPR1L 和 CCP1CON 經(jīng)計算得 CCPR1L 0X28 同時 CCP1CON 00 5 設置死區(qū)延時 在半橋輸出模式下 兩個引腳用作輸出端來驅 動推挽式負載 PWM 輸出信號在P1A引腳上輸出 而互補的PWM輸出信號 在P1B引腳上輸出 如圖3 5所示 圖 3 5 半橋 PWM 波輸出波形示意圖 在半橋應用中 模塊在所有時間以PWM頻率的調制信號驅動電源開 關 關閉電源開關通常比打開它需要更多的時間 如果上方的電源和下 方的電源開關同時切換 一個打開 另一個關閉 兩個開關可能會在一 段很短的時間內都處于打開狀態(tài) 直到一個開關完全關閉為止 在這很 短的間隔內 很大的電流 直通電流 可能流過兩個電源開關 從而導 致半橋供電電源短路 為了避免在切換期間流過這種潛在的破壞性直通 電流 一般延遲打開其中的一個開關等待另一個開關完全關閉 在半橋 輸出模式下 可編程的死區(qū)延遲可用來避免直通電流破壞構成半橋的電 子開關 該延遲在信號從非有效狀態(tài)到有效狀態(tài)轉換時發(fā)生 PWM1CON 寄存器 如圖3 6所示 中的PDC6 PDC0位根據(jù)單片機指令周期設置延遲 時間 TCY或4個TOSC 13 圖 3 6 PWM1CON 寄存器 其中 bit6 bit0 為 PWM 延遲計數(shù)位 延遲時間為 PWM 信號變?yōu)橛行?的預計時間和實際時間之差 其單位為 FOSC 4 4 TOSC 周期 14 根據(jù)本設計的情況 設定延時時間為占空比時間的 5 即 5 10 7s 故 對 PWM1CON 寄存器賦值為 0 x84 3 23 A D 轉換模塊轉換模塊 在本系統(tǒng)中需要對電壓和電流進行相應的 A D 轉換 硬件電路的設 計已經(jīng)在前一章進行了較為詳細的描述 在此不再贅述 這一小節(jié)主要 介紹 PIC 單片機中的 A D 轉換的原理以及在本實驗中所需要用到 A D 轉 換功能的程序設計 PIC 單片機中的 A D 轉換模塊 15 如圖 3 7 所示 可用軟件選擇模擬參考電壓為器件的正電源電壓和負電源電壓 VDD 和VSS 或RA3 AN3 VREF 引腳和RA2 AN2 VREF CVREF引腳上的電平 A D轉 換器具有可在休眠模式下工作的特性 要使A D轉換器在休眠狀態(tài)下工作 A D轉換時鐘必須來自于A D 模塊內部的RC振蕩器 采樣保持電路 16 的輸出是轉換器的輸入 轉換器采用逐次逼近法得 到轉換結果 器件復位操作將強制所有寄存器進入復位狀態(tài) 這將迫使 A D模塊關閉并中止正在進行的轉換 可以將每個與A D轉換器相關的端 口引腳配置為模擬輸入或數(shù)字I O ADRESH和ADRESL寄存器保存A D轉換 的結果 當 A D轉換完成之后 轉換結果被裝入ADRESH ADRESL寄存器對 GO DONE位 ADCON0寄存器 被清零且A D中斷標志位ADIF被置1 上電復 位時 ADRESH ADRESL寄存器中的值保持不變 上電復位后 ADRESH ADRESL寄存器中的值不確定 在根據(jù)需要配置好A D模塊之后 必須在轉換開始之前對選定的通道進行采樣 必須將模擬輸入通道相應 的TRIS位選擇為輸入 采集時間一結束 即可啟動A D轉換 可將采集時 間編程設定在GO DONE位置1和實際轉換啟動之間 圖 3 7 10 位 A D 轉換器模塊原理框圖 在執(zhí)行 A D 轉換時應該遵循以下步驟 1 配置 A D 模塊 17 1 通過 ADCON0 寄存器選擇輸入通道 ADCON0 寄存器各配置位如圖 3 8 所示 其中 bit7 bit6 為未用位 bit5 bit2 為模擬通道選擇位 從 0000 1100 分別代表 AN0 AN12 這 13 個通道 bit1 為 A D 轉換狀態(tài) 位 1 表示轉換正在進行 0 表示空閑 bit0 為 A D 轉換使能位 1 表示 使能 0 表示禁止 圖 3 8 ADCON0 寄存器各配置位 2 通過 ADCON1 寄存器配置模擬引腳 參考電壓和數(shù)字 I O 口 ADCON1 寄存器各配置位如圖 3 9 所示 其中 bit7 bit6 為未用位 bit5 bit4 為參考電壓配置位 在本次設計中將其配置位 00 使得參考電壓在 0 5V 之間 bit3 bit0 為 A D 端口配置控制位 如表 3 1 所示 圖 3 9 ADCON1 寄存器各配置位 表 3 1 A D 端口配置控制位 由于 AN0 為按鍵采集 AN1 為電壓采集 AN2 為電流采集 所以 ADCON1 寄存器的 bit3 bit0 設置為 1100 3 通過配置ADCON2從而設置A D轉換的采集時間 每當GO DONE位置 1 用戶就可利用ADCON2寄存器選擇采集時間 該寄存器還提供了自動設 定采集時間的選項 可以使用ACQT2 ACQT0 位 ADCON2 設置采集 時間 采集時間的范圍是2到20 個TAD 當GO DONE位置1時 A D模塊繼 續(xù)對輸入進行采樣 采樣時間為所選擇的采集時間 然后自動啟動轉換 由于采集時間已被編程 因此在選擇通道和GO DONE 位置1之間無需另外 等待一個采集時間 若ACQT2 ACQT0 000 則表示選擇手動采集 當GO DONE位置1時 采 樣停止并啟動轉換 用戶有責任確保在選定所需要的輸入通道和GO DONE 位置1之間經(jīng)過了所需要的采集時間 此選項也是ACQT2 ACQT0位的默認 復位狀態(tài) 并且與不提供可編程采集時間的器件兼容 在這兩種情況下 當轉換完成時 GO DONE位被清零 ADIF 標志位 被置1且A D 再次開始對當前選定的通道進行采樣 如果采集時間已經(jīng)被 編程 那么將不會有任何指示顯示采集時間何時結束 轉換何時開始 ADCON2寄存器各配置位如圖2 10所示 圖 3 10 ADCON2 寄存器各配置位 bit5 bit3為A D采集時間選擇位 在本設計中將這3位設置成010 為4TAD 每位A D轉換時間被定義為TAD 而每完成一次10位A D轉換需要 11個TAD 圖3 11顯示了GO置位為1 bit5 bit3位被設置為010 且在轉 換開始之前選擇4TAD采集時間后A D轉換器的工作狀態(tài) 在轉換期間將GO DONE位清零將中止當前的A D轉換 不會用尚未完 成的A D轉換結果來更新A D結果寄存器對 這意味著ADRESH ADRESL寄存 器將仍然保持上一次的轉換結果 或上一次寫入ADRESH ADRESL寄存器的 值 在A D轉換完成或中止以后 需要等待2個TAD才能開始下一次采集 等待時間一到 將自動開始對選定通道進行采集 圖 3 11 A D 轉換周期 TAD ACQT 010 TACQ 4TAD 2 配置A D中斷 1 清零ADIF位 2 將ADIE位置1 3 將 GIE 位置 1 3 等待所需要的采集時間 4 啟動轉換 將 ADCON0 寄存器中的 GO DONE 為置 1 5 等待 A D 轉換完成 在本設計中是以中斷的形式來判斷轉換是否 完成 6 讀取 A D 結果寄存器 ADRESH ADRESL 7 再次進行 A D 轉換 3 24 PID 算法處理模塊算法處理模塊 1 PID 算法原理簡介 18 典型 PID 控制的傳遞函數(shù)如式 1 所示 1 1 1 sT sT K sX sX sG d i p i O 式中 Kp為比例系數(shù) Ti為積分常數(shù) Td為微分常數(shù) 簡單說來 PID 控制器各校正環(huán)節(jié)的作用如下 比例環(huán)節(jié) Proportiona1 及時成比例地反映控制系統(tǒng)的偏差信號 偏差一旦產(chǎn)生 控制器立即產(chǎn)生控制作用 以減少偏差 積分環(huán)節(jié) Integra1 主要用于消除靜差 提高系統(tǒng)的無差度 積 分作用強弱取決于積分時間常數(shù)Ti Ti越大 積分作用越弱 反之則越 強 微分環(huán)節(jié) Differentia1 能反映偏差信號的變化趨勢 變化速率 并能在偏差信號值變得太大之前 在系統(tǒng)中引入一個有效的早期修正信 號 從而加快系統(tǒng)的動作速度 減小調節(jié)時間 若令 則式 1 可以改寫為 i i p K T K ddp KTK 2 sK s K KsG d i p 將式 2 經(jīng)過拉氏變換 并考慮初始值 即可求得時域內理想的模擬 PID控制算式 如下 3 0 u dt tde KdtteKteKtu dip 由于單片機根據(jù)采樣時刻的偏差值計算控制量 19 因此式 3 中的 積分和微分項不能直接使用 需要做離散化處理 按照模擬PID控制算法 的算式 3 現(xiàn)以一系列的采樣時刻點代表連續(xù)的時間 以和式代替積分 以增量代替微分 則可得到離散化的PID表達式為 4 n j nndjinpn ueeKeKeKu 1 01 式中 j為采樣序號 j 0 1 2 n un第n次采樣時刻的控制器輸出值 en為第n次采樣時刻輸入的偏差值 en 1為第n 1次采樣時刻輸入的偏差值 數(shù)字PID控制分為位置式PID控制算法和增量式PID控制算法 式 4 所示便是位置式PID算式 由式 4 可得控制器第n 1次的輸出量un 1為 5 0 1 1 2111 ueeKeKeKu n j nndjinpn 所以 增量式PID控制算式如下所示 6 2 2111 nnndninnpnn eeeKeKeeKuuu 2 本系統(tǒng)的PID算法程序框圖 在開關電源結構中 開關電源是通過修改PWM波占空比改變逆變橋中 COOLMOSFET的通斷時間 從而控制輸出電壓的大小 當輸出電壓超過給 定值時 減小PWM波占空比 減小COOLMOSFET開通時間 降低輸出電壓 反之 當輸出電壓小于給定值時 則增加PWM波占空比 增加COOLMOSFET 開通時間 使輸出電壓升高 可見 在控制器進行調節(jié)的時候我們所關 心的是此次PWM波的占空比需要改變的量 即每次輸出控制量的增量 因 此 本系統(tǒng)使用增量式PID控制算法 程序框圖如圖3 12所示 圖 3 12 PID 算法程序框圖 3 25 LCD 液晶顯示模塊液晶顯示模塊 本設計中的 LCD 現(xiàn)實這一塊相對清晰 主要進行的是對 LCD 的讀寫 操作 但是在編寫程序的過程中主要的是將讀寫的時序有很好的理解 如圖 2 13 和如圖 2 14 分別為顯示了 1602 的讀和寫的操作 3 26 按鍵處理模塊 通過按鍵實現(xiàn)設定電壓的增減 如按一下增加鍵 鍵 1 則設定電 壓值加一伏 但是如果設定電壓值大于或是等于 36V 時 則不在增加 同理 按一下減少鍵 鍵 2 則設定電壓值減一伏 但是如果設定電壓 值小于或是等于 24V 時 設定值將不在減少而是保存原值不變 圖 3 13 LCD1602 讀操作時序圖 圖 3 14 LCD1602 寫操作時序圖 注 tsp1和 tsp2的最小值一般在 30 40ns 之間 tHD1和 tHD2最小值一 般在 10ns tPW的最小值為 150ns tC的最小值為 400ns tF的最大值一般為 25ns tR的最大值一般為 25ns tD的最大值一般為 100ns 此模塊采用 AD 采集的方式來識別按鍵的按鍵模塊 每個按鍵對應于 不同的電壓 因此每個按鍵對應于不同的 AD 值 從而通過判斷 AD 值的 大小范圍就可以判定出按鍵的值 而此按鍵模塊只需一個 AD 采集口就夠 了 大大的減少了 IO 口的占用情況 各個按鍵按下所得到的 AD 值如下 Key1 2 5V 0 x200 Key2 2 0V 0 x199 Key3 1 67V 0 x156 Key4 2 882V 0 x24E Key5 2 24V 0 x1CA Key6 1 795V 0 x16F Key7 3 11V 0 x27C Key8 2 37V 0 x1E5 Key9 1 916V 0 x188 3 3 中斷服務程序模塊 3 31 中斷程序原理及框圖 此系統(tǒng)的中斷服務程序采取兩級中斷 主要是 TMR0 定時 計數(shù)器產(chǎn) 生 10ms 定時的溢出中斷 主要完成定時 10ms 對 A D 模塊的數(shù)字量讀取 和重新開始新的 A D 轉換 每當 ADCBuffer 緩沖區(qū)的內容滿時 對所有 采集到的數(shù)據(jù)進行數(shù)字濾波從而讀取正確的 A D 轉換后的電壓數(shù)字量傳 給主程序的電壓變換模塊從而交于 PID 算法處理模塊進行處理 在此分 析電壓中斷服務子程序 程序的框圖如圖 3 15 所示 圖 3 15 電壓中斷服務程序框圖 3 32 數(shù)字濾波算法 數(shù)字PID控制是一種采樣控制 它只能根據(jù)采樣時刻的偏差值計算控 制量 而測量信號中總是存在一些干擾 噪聲或者畸變 這些因素都影 響上述控制算法的精度 從而使整個控制系統(tǒng)的性能下降 因此 利用 數(shù)字濾波技術能夠有效地對偏差信號 測量信號 中的干擾 噪聲進行濾 波或者對其畸變進行動態(tài)補償 從而提高數(shù)字PID控制算式的精度 改進 控制系統(tǒng)的性能 本系統(tǒng)中軟件中采用TMR0定時10ms 每10ms定時的時間到就將 A D轉換的結果讀出來 存儲在定義的unsigned char ADCBuffer 5 緩沖區(qū) 中 當緩沖區(qū)滿時 將緩沖區(qū)的內容進行排序 抑制掉最大值和最小值 只取中間的值作為轉換的結果 這部分數(shù)字濾波的具體實現(xiàn)方法如下 采用數(shù)字濾波算法 用排序法完成 for i 0 i sizeof ADCBuffer 2 i for j i j sizeof ADCBuffer 2 j if ADCBuffer i ADCBuffer j temp ADCBuffer i ADCBuffer i ADCBuffer j ADCBuffer j temp 獲取濾波后的 AD 轉換值 將該值載入 ADCValue 中 ADCValue ADCBuffer sizeof ADCBuffer 2 第四章 結 論 此畢業(yè)設計主要完成的任務是對開關電源進行數(shù)字的控制即程序的 編寫 其實從硬件電路的角度講難度并不是很大 因為主要就是電壓和 電流的采集 然后進行 A D 的轉換 再調節(jié) PWM 波的占空比 原理相對 簡單 但是要做成功其實并不是一件容易的事情 主要碰到的問題有不 同電壓情況下 PWM 波的占空比是不一樣的 要想通過進行電壓的設定以 及將電壓穩(wěn)定在設定的狀態(tài)需要對 PWM 波的占空比有比較精確的定量認 識 在這個情況下面 需要極其耐心地對每個電壓所對應的 PWM 波的占 空比做一個較為詳細的記錄 以便進行軟件程序的編寫 在開關電源中 相對模擬系統(tǒng)而言 數(shù)字系統(tǒng) 22 具有設計周期短 易實現(xiàn)模塊化管理 能夠消除因分立元件引起的不穩(wěn)定和電磁干擾等優(yōu) 點 因此 近年來數(shù)字控制在開關電源中得到迅速的發(fā)展 隨著芯片技 術的不斷發(fā)展 特別是單片機技術的發(fā)展 各種在模擬電路中難以實現(xiàn) 的現(xiàn)代控制方法也開始應用于開關電源的控制中 使得模擬控制向數(shù)字 控制轉變 相信隨著數(shù)字技術的不斷發(fā)展和電子技術的不斷發(fā)展 單片機的數(shù) 字控制將會越來越受到關注 也會越來越廣泛地被運用到高效率 高功 率因素的開關電源中 課程設計是培養(yǎng)學生綜合運用所學知識 發(fā)現(xiàn) 提出 分析和解決實際 問題 鍛煉實踐能力的重要環(huán)節(jié) 是對學生實際工作能力的具體訓練和考 察過程 隨著科學技術發(fā)展的日新日異 單片機已經(jīng)成為當今計算機應用 中空前活躍的領域 在生活中可以說得是無處不在 因此作為二十一世 紀的大學來說掌握單片機的開發(fā)技術是十分重要的 隨著科技的發(fā)展 單片機已不是一個陌生的名詞 它的出現(xiàn)是近代計算 機技術發(fā)展史上的一個重要里程碑 因為單片機的誕生標志著計算機正 式形成了通用計算機系統(tǒng)和嵌入式計算機系統(tǒng)兩大分支 單片機單芯片 的微小體積和低的成本 可廣泛地嵌入到如玩具 家用電器 機器人 儀器儀表 汽車電子系統(tǒng) 工業(yè)控制單元 辦公自動化設備 金融電子 系統(tǒng) 艦船 個人信息終端及通訊產(chǎn)品中 成為現(xiàn)代電子系統(tǒng)中最重要 的智能化工具 本文所涉及的是市場占有率最高的是 MCS 51 系列 因為世界上很 多知名的 IC 生產(chǎn)廠家都生產(chǎn) 51 兼容的芯片 到目前為止 MCS 51 單 片機已有數(shù)百個品種 還在不斷推出功能更強的新產(chǎn)品 致 謝 經(jīng)過三個多月的時間 畢業(yè)設計按照預期完成了 由于本人的知識 水平有限 論文和設計中有遺漏和缺陷的地方懇請指正 我要感謝河南理工大學 感謝電氣系對我四年的培養(yǎng) 讓我學到了 許許多多的知識 感謝各位老師在這四年里對我的關懷與照顧 在此致 以我深深的謝意 感謝我的導師給了我莫大的幫助 在她悉心的指導和嚴格的要求下 作品和論文順利完成了 論文從選題和最終完成 凝結著導師的辛勤的 汗水 她不辭勞苦的教導 嚴謹?shù)淖黠L使我終生受益 在此畢業(yè)設計完 成之際 謹向導師和所有幫助過我的老師致以崇高的敬意和衷心的感謝 還有感謝家人 朋友還有宿舍里所有的室友 是他們給我創(chuàng)造了良 好的學習氛圍 在學習和生活中給了我支持和幫助 在以后的學習生活 中我會時時敦促自己更加努力 不辜負師長 親人 朋友對我的期望 畢業(yè)設計是綜合運用所學知識的一次能力鍛煉 在設計過程中 不 但要汲取新的知識而且對以前所學的知識也要融會貫通 此次的畢業(yè)設 計不但增強了自己的動手能力 而且也使我學會了如何用所學的知識解決 實際問題 同時它也使我認識到同學之間相互討論 相互學習的重要性 讓我在以后的工作中更加注重一個團隊的合作精神 最后 感謝在百忙之中抽出時間參加論文評閱和課題答辯的各位老 師 在此致以最衷心的感謝 參考文獻 1 王小波 直流開關電源的數(shù)字控制設計及應用 M 電子工業(yè)出版社 2005 1 3 2 常敏慧 申功邁等 開關電源應用 設計與維修 M 科學技術文獻 出版社 2007 55 57 3 何希才 實用開關電源數(shù)字控制技術 M 電子工業(yè)出版社 2002 169 175 4 高飛 田玉冬 36V 2A穩(wěn)壓開關電源的設計 J 上海電機學院學報 2007 10 2 94 97 5 林 雯 淺談開關電源的技術發(fā)展趨勢 J 通信電源技術 2008 25 6 79 80 6 孔鋒封 開關電源單片機外圍元器件選擇與檢測 M 北京 中國電 力出版社 2009 1 3 7 劉松又 高頻開關電源的數(shù)字化控制電路的設計 J 湖南大學學報 2003 6 97 8 雷媛媛 吳勝益 試論開關電源技術的發(fā)展 J 通信電源技術 2008 25 4 75 77 9 胡瑋 康永 基于單片機控制的雙路輸出數(shù)字開關電源的研制 J 上海電機學院學報

溫馨提示

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

評論

0/150

提交評論