在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種基于C8051F單片機(jī)的直流無刷電機(jī)轉(zhuǎn)速控制系統(tǒng)

            一種基于C8051F單片機(jī)的直流無刷電機(jī)轉(zhuǎn)速控制系統(tǒng)

            作者: 時(shí)間:2011-02-28 來源:網(wǎng)絡(luò) 收藏
            [摘要]:該文以C8051F020為例介紹了C8051F在無刷直流電機(jī)轉(zhuǎn)速控制中的應(yīng)用、實(shí)現(xiàn)方法、硬件結(jié)構(gòu)及軟件結(jié)構(gòu)等。
            [關(guān)鍵詞]:、無刷直流電機(jī)、轉(zhuǎn)速控制
            [Abstract]:,configuration of software and hardware.
            [Keywords] ,direct current and brushless motor, rotate speed Control
            The article introduces application of C8051F020 in rotate speed Control of direct current and brushless motor, realization method
            引言:
            具有梯形反電動(dòng)勢(shì)的永磁同步電動(dòng)機(jī)通常被稱為無刷直流電動(dòng)機(jī),它具有結(jié)構(gòu)簡(jiǎn)單、體積小、重量輕、效率高、高功率密度、啟動(dòng)扭矩大、慣量小和響應(yīng)快等其它種類直流電機(jī)無法比擬的特性。采用電子換向器替代了傳統(tǒng)直流電動(dòng)機(jī)的機(jī)械換向裝置,從而克服了電刷和換向器所引起的噪聲、火花、電磁干擾、壽命短等一系列弊病。由于無刷直流電動(dòng)機(jī)既具備交流電動(dòng)機(jī)的結(jié)構(gòu)簡(jiǎn)單、運(yùn)行可靠、維護(hù)方便等一系列優(yōu)點(diǎn),又具有直流電動(dòng)機(jī)的運(yùn)行效率高、無勵(lì)磁損耗以及調(diào)速性能好等諸多優(yōu)點(diǎn),故其在在家用消費(fèi)類產(chǎn)品(空調(diào)、冰箱、洗衣機(jī))和IT周邊產(chǎn)品(打印機(jī)、軟驅(qū)、硬驅(qū))中得到廣泛的應(yīng)用。
            C8051F是美國(guó)Silabs公司推出的一種與51系列單片機(jī)內(nèi)核兼容的單片機(jī),具有高速、高性能、高集成度。以C8051F020為例,具有如下特點(diǎn):
            C8051F020片上系統(tǒng)單片機(jī)片內(nèi)資源:
            一、模塊外設(shè)
            (1)逐次逼近型8路12位ADC0
            轉(zhuǎn)換速率最大100ksps
            可編程增益放大器PGA
            溫度傳感器
            (2)8路8位ADC1輸入與P1口復(fù)用
            轉(zhuǎn)換速率500ksps
            可編程增益放大器PGA
            (3)兩個(gè)12 位DAC
            (4)兩個(gè)模擬電壓比較器
            (5)電壓基準(zhǔn)內(nèi)部提供2.43V
            外部基準(zhǔn)可輸入
            (6)精確的VDD監(jiān)視器
            二、高速8051微控制器內(nèi)核
            流水線式指令結(jié)構(gòu)速度可達(dá)25MIPS
            22個(gè)矢量中斷源
            三、存儲(chǔ)器
            片內(nèi)4352字節(jié)數(shù)據(jù)RAM
            64KBFlash程序存儲(chǔ)器可作非易失性存儲(chǔ)
            外部可擴(kuò)展的64KB 數(shù)據(jù)存儲(chǔ)器接口
            四、數(shù)字外設(shè)
            8個(gè)8位的端口I/O
            I2CSPI2個(gè)增強(qiáng)型UART串口
            可編程的16位計(jì)數(shù)器/定時(shí)器陣列(PCA)
            5個(gè)通用16位計(jì)數(shù)器/定時(shí)器
            專用的看門狗WDT
            五、JTAG調(diào)試和邊界掃描接口,可實(shí)現(xiàn)在線實(shí)時(shí)動(dòng)態(tài)調(diào)試。
            由以上特點(diǎn)可以看出,C8051F單片機(jī)具有豐富的片上硬件資源及高運(yùn)算速度,這為實(shí)現(xiàn)復(fù)雜的控制算法提供了保障,而且?guī)缀醪恍柘到y(tǒng)擴(kuò)展即可滿足控制系統(tǒng)對(duì)硬件資源的需求,極大地提高了系統(tǒng)可靠性。
            硬件部分:
            硬件部分主要由電機(jī)、電機(jī)驅(qū)動(dòng)電路及單片機(jī)及顯示塊組成。其功能框圖如下:

            電機(jī)驅(qū)動(dòng)采用美國(guó)安森美公司開發(fā)的高性能第二代單元無刷直流電機(jī)控制器MC33035。該芯片內(nèi)部具有定頻調(diào)寬PWM電路,它集譯碼、過熱、過流、欠壓保護(hù)、正反轉(zhuǎn)控制等諸多功能于一身,是一種功能齊全的電機(jī)控制器。
            通過脈寬調(diào)制PWM來控制電動(dòng)機(jī)電樞電壓可以實(shí)現(xiàn)調(diào)速。在正常情況下,誤差放大器輸出與振蕩器輸出鋸齒波信號(hào)比較后,產(chǎn)生脈寬調(diào)制(PWM)信號(hào)如下圖所示。改變輸出脈沖寬度,相當(dāng)于改變供給電動(dòng)機(jī)繞組的平均電壓,從而控制其轉(zhuǎn)速。所以我們可以通過單片機(jī)控制DAC0的輸出,控制輸入到直流無刷電機(jī)的電壓,進(jìn)而控制PWM波的占空比達(dá)到控制電機(jī)轉(zhuǎn)速的目的。
            MC33035的脈寬調(diào)節(jié)原理圖

            軟件部分
            無刷直流電機(jī)內(nèi)置3個(gè)霍爾效應(yīng)傳感器,用來檢測(cè)轉(zhuǎn)子的位置,也決定電機(jī)的換相,并可以根據(jù)該信號(hào)來計(jì)算電機(jī)的轉(zhuǎn)速。當(dāng)電機(jī)正常運(yùn)行時(shí),通過霍爾傳感器可得到3個(gè)脈寬為180度電角度的互相重疊的信號(hào),而電機(jī)轉(zhuǎn)速的改變可以從位置傳感器輸出脈沖頻率的改變上反映出來,因此可以利用單片機(jī)對(duì)這個(gè)脈沖信號(hào)進(jìn)行監(jiān)測(cè)得到電機(jī)轉(zhuǎn)速。因頻率和轉(zhuǎn)速成正比測(cè)量,所以測(cè)出輸出脈沖的頻率即可計(jì)算出轉(zhuǎn)速。另外,為了提高精度,高速(>/1000HZ)采用測(cè)頻法,低速(1000HZ)采用測(cè)周法。
            將脈沖信號(hào)輸出與INT0連接,采用INT0中斷對(duì)轉(zhuǎn)速脈沖計(jì)數(shù),每1s讀一次計(jì)數(shù)值,將此值與預(yù)設(shè)的轉(zhuǎn)速值比較,若大于預(yù)設(shè)的轉(zhuǎn)速值,則減小DAC0的數(shù)值;若小于預(yù)設(shè)的轉(zhuǎn)速值,則增加DAC0的值,調(diào)整電機(jī)的轉(zhuǎn)速直到轉(zhuǎn)速值等于預(yù)設(shè)定的值。電機(jī)當(dāng)前的轉(zhuǎn)速值可在七段數(shù)碼管上顯示,在電機(jī)的可控范圍內(nèi)控制電機(jī)轉(zhuǎn)速等于預(yù)設(shè)值。
            程序框圖:

            單片機(jī)程序采用C51完成,部分源程序如下:
            一、系統(tǒng)時(shí)鐘初始化,采用18.432MHZ外部晶振:
            void SYSCLK_Init (void)
            {
            int i; //延時(shí)計(jì)數(shù)器
            OSCXCN=0x67; //開啟外部振蕩器18.432MHz晶體
            for(i=0;i256;i++) ; //等待振蕩器啟振
            while(!(OSCXCN0x80)) ; //等待晶體振蕩器穩(wěn)定
            OSCICN=0x88; //選擇外部振蕩器為系統(tǒng)時(shí)鐘源并允許丟失時(shí)鐘檢測(cè)器
            }
            二、IO口初始化
            void PORT_Init (void)
            {
            XBR0 =0x07; //使能SMBus,SPI0,和UART0
            XBR1 =0x04; //P1.0---int0
            XBR2 =0x40; //使能數(shù)據(jù)交叉開關(guān)和弱上拉
            EMI0CF =0x27;
            EMI0TC =0x21;
            P74OUT =0xFF;
            P0MDOUT =0x15;
            P1MDOUT |=0x3C; //P1.2-P1.5推挽輸出
            P1 = 0xc3;//P1.2-P1.5=0
            }
            三、定時(shí)器0初始化,定時(shí)時(shí)間為1ms
            void Timer0_Init (void)
            {
            CKCON|=0x8;
            TMOD|=0x1; //16位
            Count1ms=10;
            TR0 = 0; //停止定時(shí)器0
            TH0 = (-SYSCLK/1000) >> 8; //設(shè)初值,1ms時(shí)溢出
            TL0 = -SYSCLK/1000;
            TR0 = 1; //開啟定時(shí)器0
            IE|= 0x2;
            }
            四、Timer0中斷:
            void Timer0_ISR (void) interrupt 1
            {
            TH0 = (-SYSCLK/1000) >> 8;
            TL0 = -SYSCLK/1000;
            if (Count1ms) Count1ms--;
            if (Count1s) Count1s--; //Count1s初值為1000
            else
            {
            Count1s=1000;
            SaveMotorCount=MotorCount; //MotorCount為測(cè)得每秒脈沖個(gè)數(shù)
            MotorCount=0;
            SD=SaveMotorCount/2-SetSpeed; //常量SetSpeed的值為轉(zhuǎn)速的預(yù)設(shè)值,單位為轉(zhuǎn)/秒
            SaveMotorCount*=30; //轉(zhuǎn)/分
            if (SD)
            {
            if ((SD>5)||(SD-5))
            iDAC0-=SD*4;
            else
            iDAC0-=SD;
            DAC0=iDAC0; }
            }
            }
            五、外部0中斷:
            void Int0_ISR (void) interrupt 0
            { MotorCount++;}
            軟件仿真調(diào)試方法:
            (1)觀察DAC0的窗口,改變DAC0的數(shù)值觀察電機(jī)轉(zhuǎn)速的變化
            (2)使用示波器觀察CKMOT的頻率計(jì)算出電機(jī)的轉(zhuǎn)速與七段數(shù)碼管顯示的數(shù)值比較,比較速度測(cè)量的準(zhǔn)確性
            (3)改變常量SetSpeed的值(轉(zhuǎn)速的預(yù)設(shè)值),觀察速度穩(wěn)定后七段數(shù)碼管的數(shù)值
            (4)可將斷點(diǎn)設(shè)在外部中斷INT0的入口和T0中斷的入口運(yùn)行程序觀察程序運(yùn)行是否正常。
            結(jié)束語:
            由于C8051F020的高集成度,因此只需少量外圍電路。另外,C8051F020內(nèi)核與普通51系列兼容,且指令簡(jiǎn)單易學(xué),可縮短系統(tǒng)開發(fā)周期。實(shí)踐證明,本控制系統(tǒng)精度高,穩(wěn)定性好,硬件簡(jiǎn)單且工作可靠,具有很好的推廣價(jià)值。

            關(guān)鍵詞:單片機(jī)、無刷直流電機(jī)、轉(zhuǎn)速控制

            霍爾傳感器相關(guān)文章:霍爾傳感器工作原理


            霍爾傳感器相關(guān)文章:霍爾傳感器原理
            脈寬調(diào)制相關(guān)文章:脈寬調(diào)制原理


            評(píng)論


            相關(guān)推薦

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

            關(guān)閉