<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)在空調(diào)逆變器中的運(yùn)用

          單片機(jī)在空調(diào)逆變器中的運(yùn)用

          作者: 時(shí)間:2011-11-30 來源:網(wǎng)絡(luò) 收藏

          0 引言

          本文引用地址:http://www.ex-cimer.com/article/172396.htm

            隨著國內(nèi)經(jīng)濟(jì)的飛速發(fā)展,車、豪華車也進(jìn)入了新的發(fā)展階段。是一種新型高效無污染“綠色”能源,其應(yīng)用前景非常廣闊。

            SPWM技術(shù)是中主要的控制技術(shù),要生成SPWM脈沖常采用兩種方法:一是由模擬電路生成;二是由等數(shù)字電路生成。前者電路復(fù)雜,抗干擾性能差,有溫漂現(xiàn)象,系統(tǒng)可靠性和一致性低;數(shù)字方法則利用計(jì)算機(jī)實(shí)時(shí)計(jì)算,這樣系統(tǒng)一致性很高,沒用溫漂現(xiàn)象,同時(shí)調(diào)試工作量大大降低。INTEL公司推出的16位微處理器N87C196MC/MD是專為電機(jī)拖動設(shè)置的低成本芯片,片內(nèi)集成了一個(gè)3相波形發(fā)生器WFG(Wave Form Generator),這一外設(shè)裝置大大簡化了產(chǎn)生SPWM波形的控制軟件和外部硬件,完成整套控制電路十分簡潔。

            1 N87C1 96MC片內(nèi)波形發(fā)生器簡介

            1.1 WFG的功能特點(diǎn)

            N87C196MC片內(nèi)WFG有3個(gè)同步的PWM模塊,每個(gè)模塊包含一個(gè)相位比較寄存器、一個(gè)無信號時(shí)間發(fā)生器和一對可編程的輸出,即WFG可產(chǎn)生獨(dú)立的3對6個(gè)PWM波形,它們有共同的載波頻率、無信號時(shí)間和操作模式。一旦工作以后,WFG只要求在改變PWM的占空比時(shí)對WG COMPX寄存器改變賦值即可。

            WFG產(chǎn)生SPWM波形是在下列專用寄存器的控制下完成的。

            a.雙向計(jì)數(shù)寄存器WG COUNT。16位雙向計(jì)數(shù)器是3對輸出信號的時(shí)基發(fā)生器。它的時(shí)鐘頻率是振蕩頻率處于2,每個(gè)狀態(tài)周期WG COUNT改變一個(gè)計(jì)數(shù)值。用戶可對WG RELOAD寄存器進(jìn)行寫操作,而它的值周期地裝入到計(jì)數(shù)器中。

            b.重裝載寄存器WG RELOAD。該寄存器實(shí)際包含一對1 6位寄存器,當(dāng)讀或?qū)懺摷拇嫫鲿r(shí),訪問的是WG RELOAD寄存器。寫到WG_RELOAD的值,被周期地(取決于操作方式)裝入到第二個(gè)寄存器。這后一個(gè)寄存器叫做計(jì)數(shù)器比較寄存器,它是WG_COUNT實(shí)際與之比較的時(shí)間寄存器。

            c.相位比較寄存器WG_COMPx。共有3個(gè)(X=1,2,3)可讀寫的16位相位比較緩沖器。每一個(gè)相位比較緩沖器有一個(gè)關(guān)聯(lián)的比較寄存器,它的值與每次計(jì)數(shù)后的WG_COUNT相比較。這些寄存器不能直接被用戶訪問。

            d.控制寄存器WG_CON。WG_CON是一個(gè)16位寄存器。可控制計(jì)數(shù)方式及產(chǎn)生3個(gè)10位無信號時(shí)間(deadtime)。利用無信號時(shí)間重裝載寄存器可以隨時(shí)改變無信號時(shí)間。

            e.輸出控制緩沖寄存器WG_OUT??捎糜谶x擇輸出引腳的輸出信號方式。可對每個(gè)引腳獨(dú)立定義有效狀態(tài)。

            1.2 WFG的基本工作原理

            a.從功能上,WFG可分為3部分:時(shí)基發(fā)生器、相位驅(qū)動通道和控制電路。

            (1)時(shí)基發(fā)生器為PWM建立載波周期。該周期值取決于WG_RELOAD的值;

            (2)相位驅(qū)動通道決定PWM波形的占空比,共有3個(gè)獨(dú)立的相位驅(qū)動通道,每一個(gè)通道有一對可編程輸出,每個(gè)相位驅(qū)動器包含一個(gè)可編程的無信號時(shí)間發(fā)生器;

            (3)控制電路包含一些用來確定工作模式和其它配置信息的寄存器。

            b.時(shí)基發(fā)生器WG_COUNT有4種工作方式。當(dāng)選通波形發(fā)生器工作時(shí),根據(jù)所選擇的工作方式,作為時(shí)基發(fā)生器的WG_COUNT連續(xù)向上計(jì)數(shù)或向上/向下計(jì)數(shù),每次計(jì)數(shù)時(shí),WG_COUNT內(nèi)容與計(jì)數(shù)比較寄存器WG_RELOAD的值作比較,當(dāng)二者匹配時(shí),按所選擇的工作方式產(chǎn)生相應(yīng)操作。

            我們一般選擇第0種工作模式,中心對準(zhǔn)PWM方式:

            載波周期Tc=(4×WG RELOAD)/Fxtal(μ s)

            不考慮無信號時(shí)間,輸出有效的時(shí)間Toutput=(4×WG_COMPx)/Fxtal(μ s)。

            不考慮無信號時(shí)間,占空比=(WG COMPx/WG RELOAD)×100%。

            其中Fxtal為XTAL1引腳上晶振頻率,MHz;WG COMPx為16位值,等于或小于WG_RELOAD,如果大于WG_RELOAD的值輸出占空比為1。

            由上式可知,WG COMPX值的變化,改變了PWM波的占空比。而SPWM波形的產(chǎn)生正是由正弦規(guī)律的數(shù)據(jù)值經(jīng)計(jì)算后賦給WG COMPX的,每一次中斷都賦給WG COMPX一個(gè)隨正弦規(guī)律變化的值,從而產(chǎn)生一系列脈寬不等的SPWM波。

            c.WFG的中斷。與波形發(fā)生器有關(guān)的中斷有2種:WFG中斷和EXTINT中斷。WFG中斷在重裝載WG COUNT時(shí)產(chǎn)生。方式0在WG_COUNT=WG_RELOAD時(shí)產(chǎn)生一次WFG中斷,每次中斷都產(chǎn)生一個(gè)正弦規(guī)律的脈沖波,從而形成SPWM波。

            EXTINT中斷由保護(hù)電路產(chǎn)生??删幊淘O(shè)置產(chǎn)生中斷的方式是邊沿觸發(fā)或電平觸發(fā),當(dāng)控制系統(tǒng)檢測到過流信號,單片機(jī)自動封鎖SPWM波形,從而關(guān)斷IGBT, 來保護(hù)電力電子開關(guān)器件。

          2 空調(diào)主回路

            空調(diào)逆變電源主要由下列幾個(gè)部分組成:

            2.1 主電路

            它的形式為DC/AC逆變電路。輸入電壓為DC600V,經(jīng)輸入接觸器、預(yù)充電電路、支撐電容供給逆變器。主開關(guān)器件選用德國SIEMENS公司的2單元IGBT模塊,加上輸出濾波電路構(gòu)成空調(diào)逆變器。輸出用隔離變壓器得到三相四線電。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();