0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用STCl2C5410AD單片機實現(xiàn)SPWM波形的產(chǎn)生

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-01-09 10:10 ? 次閱讀

引言

近年來,隨著逆變電源在各行各業(yè)應(yīng)用的日益廣泛,采用正弦脈寬調(diào)制(SPWM)技術(shù)控制逆變電源提高整個系統(tǒng)的控制效果是人們不斷探索的問題。對SPWM的控制有多種實現(xiàn)方法,其一是采用模擬電路、數(shù)字電路硬件電路產(chǎn)生SPWM波形,該方法波形穩(wěn)定準(zhǔn)確,但電路復(fù)雜、體積龐大、不能進行自動調(diào)節(jié);其二是借助單片機、DSP微控制器來實現(xiàn)SPWM的數(shù)字控制方法,由于其內(nèi)部集成了多個控制電路,如PWM電路、可編程計數(shù)器陣列(PCA)等,使得這種方法具有控制電路簡單、運行速度快、抗干擾性強等優(yōu)點。本文介紹一種利用STC系列單片機實現(xiàn)SPWM波形的方法,并將由STCl2C5410AD產(chǎn)生的單極性SPWM波應(yīng)用于單相逆變電源,實驗結(jié)果證明了利用其實現(xiàn)SPWM波形的可行性和有效性。

1 正弦脈寬調(diào)制技術(shù)SPWM

SPWM控制方案有兩種:即單極性調(diào)制和雙極性調(diào)制法。單極性法所得的SPWM信號有正、負和0三種電平,而雙極性得到的只有正、負兩種電平。比較二者生成的SPWM波可知:在相同載波比情況下,生成的雙極性SPWM波所含諧波量較大;并且在正弦逆變電源控制中,雙極性SPWM波控制較復(fù)雜。因此一般采用單極性SPWM波控制的形式。

由單片機實現(xiàn)SPWM控制,根據(jù)其軟件化方法的不同,有如下幾種方法:自然采樣法、對稱規(guī)則法、不對稱規(guī)則法和面積等效法等。理論分析發(fā)現(xiàn)面積等效法相對于其它方法而言,諧波較小,對諧波的抑制能力較強。而且實時控制簡單,利于軟件實現(xiàn)。因此本文采用面積等效法實現(xiàn)SPWM控制。

采用STCl2C5410AD單片機實現(xiàn)SPWM波形的產(chǎn)生

圖l為SPWM面積等效法原理示意圖。

假設(shè)所需的輸出正弦電壓為U0=Umsinωt,式中:Um為正弦波幅值。利用面積等效法正弦波小塊面積S1與對應(yīng)脈沖面積S2相等的原則,將正弦波的正半周分為N等分,則每一等分的寬度為兀/N,計算出半個周期內(nèi)N個不同的脈寬值。相關(guān)公式如下:

采用STCl2C5410AD單片機實現(xiàn)SPWM波形的產(chǎn)生

:M為調(diào)制度。N為半個周期內(nèi)的脈沖個數(shù)。綜合考慮載波比、輸出諧波等因素,在此N取60。由上式計算出的SPWM脈寬表是一個由窄到寬、再由寬到窄的60個值的正弦表,將其存入STC單片機的ROM中以供調(diào)用。

2 STC系列單片機生成SPWM波原理

2.1 STC系列單片機簡介

STCl2系列單片機是美國STC公司在8051單片機標(biāo)準(zhǔn)的內(nèi)核基礎(chǔ)上改進推出的一個增強型功能的8051的單片機,從引腳到指令上完全與8051單片機兼容。最突出的特點就是其具有可編程計數(shù)器陣列PCA。以STCl2C5410AD為例,有四路可編程計數(shù)器陣列PCA/PWM。PCA含有一個特殊的16位定時器,有4個16位的捕獲/比較模塊與之相連。四個模塊的公共時間基準(zhǔn)由PCA定時器決定,可以通過PCA模式寄存器CMOD SFR的CPSl和CPS0位確定。每個模塊可編程工作在4種模式下:上升/下降沿捕獲、軟件定時器、高速輸出或PWM脈沖輸出。文中SPWM生成功能主要靠PWM脈沖輸出模式完成。圖2即為PCA模塊脈寬調(diào)節(jié)PWM輸出模式框圖。

采用STCl2C5410AD單片機實現(xiàn)SPWM波形的產(chǎn)生

在PCA PWM輸出模式中,當(dāng)CLSFR的值小于{EPCnL,CCAPnL}時,輸出為低,當(dāng)PCA CL SFR的值等于或大于{EPCnH,CCAPnH}時,輸出為高。當(dāng)CL的值由FF變?yōu)?0溢出時,{EPCnH,CCAPnH}的內(nèi)容裝載到{EPCnL,CCAPnL}中。這樣就實現(xiàn)了無干擾的更新PWM。要使能PWM模式,模塊CCAPMn寄存器的PWMn和ECOMn位必須置位。本文中,SPWM波形是綜合使用了模塊O的脈寬調(diào)節(jié)(PWM)模式和模塊1的16位軟件定時器模式,通過軟件中斷的形式實現(xiàn)的。

與此同時,STCl2C54lO單片機還具有快速A/D轉(zhuǎn)換功能。有一個lO位精度、8路通道的A/D轉(zhuǎn)換器??梢苑奖愕膶斎?、輸出的電壓、電流進行監(jiān)控和顯示。

2.2 SPWM波生成方法

利用STC系列單片機產(chǎn)生SPWM波的基本原理是:將載波周期數(shù)值賦給PCA模塊l的16位捕獲/比較模塊寄存器CCAPlH(高8位)和CCAPlL(低8位),PCA定時器的值CH(高八位)、CL(低八位)與模塊捕獲寄存器的值相比較,當(dāng)兩者相等時,產(chǎn)生PCA中斷。在中斷中,調(diào)用模塊0的PWM脈寬調(diào)節(jié)模式,將下一個SPWM波的脈寬通過CCAP0H裝載到CCAPOL中,這樣就可以實現(xiàn)無干擾的更新PWM。

采用STCl2C5410AD單片機實現(xiàn)SPWM波形的產(chǎn)生

圖3中即為由軟件實時計算好的一路單極性SPWM波形的脈寬示意圖。在每個固定的載波周期內(nèi),不同脈寬數(shù)值組成一個正弦表格的形式。若選用模塊O(P3.7)輸出此路SPWM,首先將模塊0的PCA模塊工作模式寄存器定義為8位PWM模式,將16位計數(shù)器定時器CH、CL清零,PCA PWM模式輔助寄存器O清零(保證捕獲寄存器EPCOH(高八位)、EPC0L(低八位)固定為零,PWM波比較的數(shù)值只與PCA模塊0的捕獲寄存器CCAPOH(高八位)、CC2APOL(低八位)有關(guān)),模塊l的捕獲寄存器CCAPlH(高八位)、CCAPlL(低八位)送入載波周期的高八位和第八位數(shù)值,PCA比較/捕獲模塊寄存器1(CCAPMl)定義為使能比較功能,允許匹配產(chǎn)生中斷。將第一個脈寬值sin[0]裝入CCAP0H,開PCA模塊中斷及低壓檢測中斷,開總中斷,啟動PCA計數(shù)。當(dāng)16位計數(shù)器/定時器的數(shù)值與模塊1中捕獲/比較寄存器的數(shù)值相等時,產(chǎn)生一個CCF中斷;在中斷程序中,清中斷標(biāo)志位,重新給模塊1的捕獲寄存器CCAPlH(高八位)、CCAPlL(低八位)送入載波周期的高八位和第八位數(shù)值,將16位計數(shù)器定時器CH、CL清零,中斷次數(shù)i加1,將下一個脈寬數(shù)值sin[i]裝入CCAPOH以備比較。同時判斷是否到達最大數(shù)值N,若是,中斷次數(shù)i清零,同時將脈寬數(shù)sin[i]值送入CCAP0H,完成一個循環(huán)。這樣,周而復(fù)始,在P3.7引腳上將不斷產(chǎn)生隨著正弦規(guī)律變化的脈寬,從而得到準(zhǔn)確的SPWM波。

2.3 軟件設(shè)計

程序編寫采用KeilC51編程語言進行,整個程序由主程序和鍵盤中斷子程序以及PCA中斷子程序組成。主程序在系統(tǒng)初始化后進入SPwM脈寬計算程序,計算相應(yīng)的脈沖寬度,形成正弦表格,等待中斷標(biāo)志位以響應(yīng)不同的中斷。由于SPWM波是不斷輸出的,必須將PCA中斷級別設(shè)置為最高。一旦有PCA中斷標(biāo)志位,即轉(zhuǎn)入執(zhí)行其中斷子程序。圖4為PCA中斷子程序流程圖。在中斷服務(wù)程序中,注意CCF1位和CF標(biāo)志位均由硬件置位,但不能自動清零,必須在中斷程序中由軟件清零。

采用STCl2C5410AD單片機實現(xiàn)SPWM波形的產(chǎn)生

與此同時,系統(tǒng)可以響應(yīng)鍵盤中斷子程序,由鍵盤控制通過液晶顯示屏監(jiān)控輸出電壓、電流的變化情況等。

采用STCl2C5410AD單片機實現(xiàn)SPWM波形的產(chǎn)生

3 實驗結(jié)果

根據(jù)上述設(shè)計思路及編寫的軟件,用MIC442l驅(qū)動器驅(qū)動四個MOSFET器件FQAl60N08組成的逆變橋上進行實際調(diào)試。圖5為由單片機STCl2C5410輸出的兩路互補(有一定死區(qū)時間)單極性SPWM波。用這兩路互補信號直接驅(qū)動芯片MIC4421,其輸出信號再分別驅(qū)動逆變橋,經(jīng)低通濾波后的波形如圖6所示。

采用STCl2C5410AD單片機實現(xiàn)SPWM波形的產(chǎn)生

4 結(jié)束語

實驗結(jié)果表明,此方法電路結(jié)構(gòu)簡單,硬件設(shè)計和軟件編程切實可行。采用在線計算和查表技術(shù)相結(jié)合,較好的解決了實時控制的要求。同時采用單片機作為控制器件,不僅成本降低,而且調(diào)試方便,受外界干擾較小,有很好的實用性和可靠性。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 電源
    +關(guān)注

    關(guān)注

    184

    文章

    17193

    瀏覽量

    247758
  • 單片機
    +關(guān)注

    關(guān)注

    6023

    文章

    44376

    瀏覽量

    628315
  • SPWM
    +關(guān)注

    關(guān)注

    14

    文章

    356

    瀏覽量

    60385
收藏 人收藏

    評論

    相關(guān)推薦

    單片機產(chǎn)生SPWM

    誰有用51單片機產(chǎn)生SPWM的程序?最好也有proteus的電路圖,給我發(fā)一份 小弟初學(xué)急用 非常感謝郵箱1054784724qq.com
    發(fā)表于 04-20 21:57

    單片機產(chǎn)生SPWM波在UPS中的應(yīng)用

    單片機產(chǎn)生SPWM波在UPS中的應(yīng)用:文中介紹了基于PIC16F73單片機產(chǎn)生SPWM控制
    發(fā)表于 09-19 08:11 ?141次下載

    8098單片機控制的SPWM逆變器

    摘要:介紹采用8098單片機控制的SPWM逆變器,該系統(tǒng)利用8098的高速輸出口HSO由軟件實時計算來產(chǎn)生SPWM控制信號關(guān)鍵詞:
    發(fā)表于 05-31 10:37 ?97次下載

    STCl2C5A60S2單片機的SD卡讀寫

    STCl2C5A60S2單片機的SD卡讀寫 摘要:分析了基于STC單片機的SD卡的讀寫操作,給出了一種基于高速、低功耗、超強抗干擾的新一代STCl2C5A60S2系列IT
    發(fā)表于 04-23 14:59 ?4255次閱讀
    <b class='flag-5'>STCl2C5A60S2</b><b class='flag-5'>單片機</b>的SD卡讀寫

    STCl2C5410AD單片機的四通道聲發(fā)射信號采集系統(tǒng)設(shè)計

    STCl2C5410AD單片機的四通道聲發(fā)射信號采集系統(tǒng)設(shè)計方案 摘要:根據(jù)聲發(fā)射信號微弱、傳播速度快、易受干擾等特點,通過對聲發(fā)射檢測中聲發(fā)射信號源定位類別和方
    發(fā)表于 04-24 10:15 ?1448次閱讀
    <b class='flag-5'>STCl2C5410AD</b><b class='flag-5'>單片機</b>的四通道聲發(fā)射信號采集系統(tǒng)設(shè)計

    PIC單片機設(shè)計的SPWM控制技術(shù)

    本文采用軟硬件結(jié)合設(shè)計的方法,利用面積等效法,并且基于PIC單片機實現(xiàn)對試驗?zāi)孀兿到y(tǒng)的SPWM控制。 目前SPWM
    發(fā)表于 06-08 08:30 ?2335次閱讀
    PIC<b class='flag-5'>單片機</b>設(shè)計的<b class='flag-5'>SPWM</b>控制技術(shù)

    單片機產(chǎn)生PWM波形控制LED燈亮度

    單片機產(chǎn)生PWM波形控制LED燈亮度單片機產(chǎn)生PWM波形控制LED燈亮度
    發(fā)表于 01-07 17:34 ?68次下載

    基于C8051單片機SPWM波形實現(xiàn)

    基于C8051單片機SPWM波形實現(xiàn)
    發(fā)表于 04-13 15:29 ?49次下載

    基于STM32單片機SPWM波的實現(xiàn)

    本文是關(guān)于基于STM32單片機SPWM波的實現(xiàn)的介紹
    發(fā)表于 08-24 16:30 ?168次下載

    SPWM波形protues仿真程序 51單片機SPWM波形產(chǎn)生

    SPWM波形protues仿真程序 51單片機SPWM波形產(chǎn)生代碼 protues仿真
    發(fā)表于 01-14 22:32 ?276次下載

    基于STCl2C5410AD的無刷控制器檢測設(shè)計

    很多的檢測儀器都采用模擬電路,使得結(jié)果不是很精確,而且需要的電路也很復(fù)雜,成本很大。設(shè)計采用STCl2C5410AD單片機作為控制芯片,大大簡化了硬件電路,以軟件編程來
    發(fā)表于 09-06 11:08 ?3次下載
    基于<b class='flag-5'>STCl2C5410AD</b>的無刷控制器檢測設(shè)計

    基于單片機和PWM控制方法調(diào)速實現(xiàn)無刷控制器檢測設(shè)計

    單片機作為主要控制芯片。STCl2C5410AD系列單片機是宏晶科技生產(chǎn)的單時鐘/機器周期(1T)的單片機,是高速、低功耗、超強抗干擾的新一代8051
    發(fā)表于 05-13 10:13 ?1715次閱讀
    基于<b class='flag-5'>單片機</b>和PWM控制方法調(diào)速<b class='flag-5'>實現(xiàn)</b>無刷控制器檢測設(shè)計

    spwm單片機4路輸出C語言,基于PIC單片機的正弦波逆變器設(shè)計與實現(xiàn)

    ,其優(yōu)點是電路簡單,集成度高,缺點是無法全面實現(xiàn)對系統(tǒng)的反饋控制、監(jiān)視管理和保護工作,故一般也要配合單片機實現(xiàn);3)利用單片機等微處理器產(chǎn)生
    發(fā)表于 11-08 17:21 ?23次下載
    <b class='flag-5'>spwm</b><b class='flag-5'>單片機</b>4路輸出<b class='flag-5'>C</b>語言,基于PIC<b class='flag-5'>單片機</b>的正弦波逆變器設(shè)計與<b class='flag-5'>實現(xiàn)</b>

    基于STCl2C5A60S2單片機的SD卡讀寫

    電子發(fā)燒友網(wǎng)站提供《基于STCl2C5A60S2單片機的SD卡讀寫.pdf》資料免費下載
    發(fā)表于 10-10 09:34 ?8次下載
    基于<b class='flag-5'>STCl2C5A60S2</b><b class='flag-5'>單片機</b>的SD卡讀寫

    采用單片機89S51和SPWM波形發(fā)生器SA8281制作控制器

    電子發(fā)燒友網(wǎng)站提供《采用單片機89S51和SPWM波形發(fā)生器SA8281制作控制器.pdf》資料免費下載
    發(fā)表于 11-06 10:16 ?1次下載
    <b class='flag-5'>采用</b><b class='flag-5'>單片機</b>89S51和<b class='flag-5'>SPWM</b><b class='flag-5'>波形</b>發(fā)生器SA8281制作控制器