王 偉 西安石油大學 710065
?
基于DSPIC30F4011的直流減速電機控制研究
王偉西安石油大學710065
【文章摘要】
介紹了DSPIC30F4011芯片的性能和優(yōu)點,重點介紹了芯片QEI模塊的原理及功能。設計了由DSPIC30F4011為處理器的直流減速電機速度及位置的檢測與控制,利用由芯片QEI模塊的正交編碼器接口電路以及光電編碼器可以方便的檢測電機的速度與位置。設計了相應的軟件程序實現(xiàn)控制。
【關鍵詞】
電機控制;DSPIC30F4011;QEI;光電編碼器
隨著嵌入式系統(tǒng)和單片機芯片的不斷發(fā)展,嵌入式系統(tǒng)在航天航空,機器人控制,醫(yī)療機械控制等領域得到了廣泛應用。美國微芯科技公司(Microchip Technology)推出的DSPIC數(shù)字信號控制器擁有數(shù)字信號處理器(DSP)的計算能力以及高數(shù)據(jù)處理能力,其運算速度最高可達30MIPS,并能在工業(yè)級溫度范圍內工作。以16位單片機為核心的DSPIC30F4011有強大功能的外圍設備和優(yōu)秀的中斷處理能力,是嵌入式設計的最佳解決方案。這些性能使其成為需要更高精度、更高轉速的電機控制應用領域的理想解決方案。除此之外,芯片還可以應用在傳感器控制、汽車電子、網(wǎng)絡連接等領域。
1.1DSPIC30F4011芯片功能簡介
Dspic30f4011采用改進的哈佛架構,擁有24位指令字,工作寄存器由16個16位寄存器構成,可以存儲數(shù)據(jù)、地址等。DSP引擎由一個高速17X17位乘法器、40位算術邏輯單元以及一個40位雙向桶行移位寄存器和兩個40位飽和累加器組成,顯著提高了內核運算能力和吞吐量。芯片具有2KB數(shù)據(jù)RAM,48KB程序FLASH,除此之外,還包括10位高速模數(shù)轉換器模塊,6路PWM可改寫輸出模塊、可用于帶霍爾傳感器電機的輸入捕捉模塊,以及正交編碼器模塊接口和通用異步收發(fā)器模塊等,使得DSPIC30F4011芯片具有操作簡單,準確等特性。
1.2QEI模塊原理
光電編碼器用于檢測旋轉運動系統(tǒng)的位置和速度,可以對多種電機實現(xiàn)閉環(huán)控制。典型的觀點編碼器有三路脈沖輸出,分別為A相輸出,B相輸出和索引(INDEX)脈沖相輸出。處理器芯片DSPIC30F4011帶有正交編碼器接口暨QEI(Quadrature Encoder Interface)模塊,QEI模塊有與位置編碼器三相相對應的接口。如果A相超前于B相表示電機正轉,反之表示反轉。
QEI模塊主要包括了3路輸入引腳(QEA,QEB,INDEX相);可編程數(shù)字噪聲濾波器;正交解碼器;16位向上、向下的計數(shù)器等。電機帶動編碼器旋轉,產生相對持續(xù)穩(wěn)定的A相,B相和索引脈沖信號,且A相與B相相差1/2T個脈沖。信號通過QEI模塊的正交解碼邏輯,每有一個A相或者B相的上升沿,便使得16位計數(shù)器POSCNT加1或者減1,索引信號用來復位計數(shù)器的數(shù)值。100脈沖的正交編碼器轉一周對應的計數(shù)器個數(shù)為0 到399,即計數(shù)器的個數(shù)與電機轉過的角度成比例。所以通過讀取計數(shù)器的數(shù)值,可讀取電機的角度位置。
根據(jù)DSPIC30F4011芯片QEI模塊的功能,結合芯片自帶的PWM模塊,可以實現(xiàn)電機位置與速度的精準控制。選用12V,60RPM配有減速箱的直流減速電機,100脈沖的光電編碼器,采用L239B芯片和典型的橋式電路作為電機的驅動電路,采用MAX7219芯片顯示電機當前的位置與速度,MAX7219芯片具有8位數(shù)字7段LED顯示功能。
DSPIC30F4011芯片作為核心處理器,QEI模塊的三個輸入引腳與光電編碼器側面引出的三相A,B,INDEX分別連接。由于芯片的標準電壓是5V,所以光電編碼器的輸出方式采用集電極開路輸出,光電編碼器與直流電機同軸相連,用聯(lián)軸器緊固。電機的尾端通過L239B芯片連入PWM模塊,構成主要的控制回路。其中核心處理器的QEA,QEB,INDEX引腳作為輸入檢測光電編碼器的脈沖信號,PWMH1、PWML1引腳作為輸出分別與L239B芯片的2號引腳與7號引腳連接,給電機提供高低電頻并控制電機的速度。RC1,RC2,RC3端口作為輸出控制MAX7219芯片顯示速度和角度。通過軟件程序調試,使MAX7219前4位顯示速度,后四位顯示角度,并且實現(xiàn)閉環(huán)控制。
DSPIC30F4011芯片通過單片機燒寫器ICD2.5連接到PC端。使用軟件MPLAB IDE V8.70軟件對芯片對程序進行燒寫。程序首先初始化QEI模塊和MAX7219芯片,隨后計算電機的位置和速度,用POSCNST計數(shù)器的值判斷電機是否達到預設的角度,當電機達到預設角度后停轉并顯示角度和速度。通過此程序,可以使電機以預定的速度轉過預定的角度。
在初始化QEI模塊中,首先配置QEI的引腳為數(shù)字輸入。設置索引脈沖復位位置計數(shù)器即索引脈沖使POSCNT計數(shù)器清0,并設置工作模式為X4模式,X4模式每遇到一個A相和B相的信號邊沿使POSCNT計數(shù)器加1或者減1,這樣可以獲得更好的分辨率,以及更精確的位置控制。QEI模塊的使能數(shù)字濾波器能過濾光電編碼器上可能出現(xiàn)的干擾,通過計算光電編碼器的最小脈沖寬度(MIN_PULSE)可以求得濾波分頻配置(FILTER_DIV),最小脈沖寬度是由電機的最大速度確定的,由于采用直流減速電機的最大速度較小,所以這里采用了最大的256分頻數(shù)。
角位置應把位置計數(shù)器的結果轉換為對應的角度,根據(jù)QEI模塊的配置信息和光電編碼器的線程數(shù)可以得到分辨率,100脈沖的光電編碼器的分辨率為360°/399=0.9°,根據(jù)這個分辨率,位置計數(shù)器需要從0~399變化成對應的角度 ,即POSCNT計數(shù)器的值與角度 的比例系數(shù)為0.9。速度是一個固定時間周期的增量數(shù),通過周期中斷產生。中斷間隔小于最大速度下產生半轉所需要的最小時間,通過中斷間隔可以測得電機的速度。
由直流減速電機位置與速度控制實驗可以看出DSPIC30F4011芯片功能強大,應用簡單,不需要復雜的電路和程序便可以完成控制。由DSPCI30F系列芯片的嵌入式控制可以應用于各個領域的精準控制,直流減速電機的位置與速度控制已經應用于機器人手臂的控制,以及旋轉導向鉆井穩(wěn)定平臺的控制等。
【參考文獻】
[1]羅戰(zhàn)強,蘆剛,李聲晉.采用dsPIC30F6010的無刷直流電動機控制系統(tǒng)設計[J].威特電機,2007,1:27-29
[2]彭志剛,胡邦南.基于dsPIC30F6010的無傳感器無刷直流電機控制[J].自動化與儀器儀表.2011(02)
王偉(1987-),男(漢族) ,陜西省戶縣人,碩士研究生,主要研究方向調制式旋轉導向鉆井,直流電機位置控制。
【作者簡介】