《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 利用DSP實(shí)現(xiàn)的步進(jìn)電機(jī)控制器的設(shè)計(jì)
利用DSP實(shí)現(xiàn)的步進(jìn)電機(jī)控制器的設(shè)計(jì)
摘要: 本文所介紹的是一種基于TMS320LF2407實(shí)現(xiàn)的步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì)。
Abstract:
Key words :

  數(shù)字信號(hào)處理(Digital Signal Processing,簡(jiǎn)稱DSP)是一門涉及許多學(xué)科而又廣泛應(yīng)用于許多領(lǐng)域的新興學(xué)科。20世紀(jì)60年代以來(lái),隨著計(jì)算機(jī)和信息技術(shù)的飛速發(fā)展,數(shù)字信號(hào)處理技術(shù)應(yīng)運(yùn)而生并得到迅速的發(fā)展。數(shù)字信號(hào)處理是一種通過(guò)使用數(shù)學(xué)技巧執(zhí)行轉(zhuǎn)換或提取信息,來(lái)處理現(xiàn)實(shí)信號(hào)的方法,這些信號(hào)由數(shù)字序列表示。在過(guò)去的二十多年時(shí)間里,數(shù)字信號(hào)處理已經(jīng)在通信等領(lǐng)域得到極為廣泛的應(yīng)用。德州儀器、Freescale等半導(dǎo)體廠商在這一領(lǐng)域擁有很強(qiáng)的實(shí)力。TMS320LF2407是TI公司主推的一種高性能、低價(jià)格DSP處理器,其處理速度達(dá)到30 MIPS,片內(nèi)處理集成RAM、Flash及定時(shí)器外,還集成了A/D轉(zhuǎn)換器、PWM控制器及CAN總線控制器等模塊,特別適合于電機(jī)、電源變換等實(shí)時(shí)要求高的控制系統(tǒng)。但是通常設(shè)計(jì)DSP程序的方法是,在DSP的集成開(kāi)發(fā)環(huán)境CCS中用C語(yǔ)言設(shè)計(jì),需要花費(fèi)大量的時(shí)間用來(lái)編寫和輸入程序代碼。在Matlab中用圖形化的方式設(shè)計(jì)DSP的程序,能夠縮短產(chǎn)品的開(kāi)發(fā)時(shí)間。本文所介紹的是一種基于TMS320LF2407實(shí)現(xiàn)的步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì)。

  1 系統(tǒng)硬件構(gòu)成

  整個(gè)系統(tǒng)分為五個(gè)部分組成:DSP中央控制器TMS320LF2407,步進(jìn)電機(jī)及驅(qū)動(dòng),光電編碼器,鍵盤及液晶顯示部分,以及整個(gè)系統(tǒng)的外圍電源電路及看門狗復(fù)位電路組成,如圖1所示。在這個(gè)系統(tǒng)設(shè)計(jì)中,由鍵盤設(shè)定給定轉(zhuǎn)速(位置),通過(guò)中央控制器TMS320LF2407來(lái)產(chǎn)生PWM脈沖信號(hào)來(lái)控制步進(jìn)電機(jī)的轉(zhuǎn)速(位置),可以采用光電編碼器對(duì)步進(jìn)電機(jī)的轉(zhuǎn)速(位置)進(jìn)行采樣檢測(cè)實(shí)現(xiàn)閉環(huán)控制,也可以采用開(kāi)環(huán)控制無(wú)需轉(zhuǎn)速(位置)信號(hào),以上過(guò)程中的多個(gè)變量、參數(shù)可以在液晶顯示屏上得到直觀地反映。整個(gè)硬件結(jié)構(gòu)簡(jiǎn)單直觀,中央控制器TMS320LF2407還剩余豐富的I/O及中斷資源,在此設(shè)計(jì)基礎(chǔ)上具有一定的擴(kuò)展空間。

硬件原理方框圖

圖1 硬件原理方框圖

  本設(shè)計(jì)采用的是55BF03型三相反應(yīng)式步進(jìn)電機(jī),其接收數(shù)字控制信號(hào)(電脈沖信號(hào)),并轉(zhuǎn)換成與之相對(duì)應(yīng)的角位移或直線位移。此設(shè)計(jì)是用中央控制器TMS320LF2407產(chǎn)生的PWM環(huán)形脈沖信號(hào)經(jīng)過(guò)信號(hào)分配以及功率放大傳送給步進(jìn)電機(jī)實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的角位置或直線位移控制,所以此步進(jìn)電機(jī)的驅(qū)動(dòng)結(jié)構(gòu)設(shè)計(jì)由以下幾部分組成,脈沖信號(hào),信號(hào)分配,功率放大,步進(jìn)電機(jī)及負(fù)載,如下圖2所示。在這個(gè)設(shè)計(jì)中基于對(duì)力矩、平穩(wěn)、噪音及減少角度等方面的考慮,在這里設(shè)計(jì)成產(chǎn)生一個(gè)三相六拍信號(hào)來(lái)進(jìn)行步進(jìn)電機(jī)的控制,通電順序?yàn)锳-AB-B-BC-C-CA,步距角為1.5°,功率放大采用的是典型的單壓驅(qū)動(dòng)方式。

步進(jìn)電機(jī)驅(qū)動(dòng)方框圖

圖2 步進(jìn)電機(jī)驅(qū)動(dòng)方框圖

  步進(jìn)電機(jī)是將電脈沖信號(hào)轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開(kāi)環(huán)控制元步進(jìn)電機(jī)件。在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號(hào)的頻率和脈沖數(shù),而不受負(fù)載變化的影響,當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度,稱為"步距角",它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的??梢酝ㄟ^(guò)控制脈沖個(gè)數(shù)來(lái)控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)可以通過(guò)控制脈沖頻率來(lái)控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。雖然步進(jìn)電機(jī)已被廣泛地應(yīng)用,但步進(jìn)電機(jī)并不能象普通的直流電機(jī),交流電機(jī)在常規(guī)下使用。它必須由雙環(huán)形脈沖信號(hào)、功率驅(qū)動(dòng)電路等組成控制系統(tǒng)方可使用。因此用好步進(jìn)電機(jī)卻非易事,它涉及到機(jī)械、電機(jī)、電子及計(jì)算機(jī)等許多專業(yè)知識(shí)。

  光電編碼器,是一種通過(guò)光電轉(zhuǎn)換將輸出軸上的機(jī)械幾何位移量轉(zhuǎn)換成脈沖或數(shù)字量的傳感器。這是目前應(yīng)用最多的傳感器,光電編碼器是由光柵盤和光電檢測(cè)裝置組成。光柵盤是在一定直徑的圓板上等分地開(kāi)通若干個(gè)長(zhǎng)方形孔。由于光電碼盤與電動(dòng)機(jī)同軸,電動(dòng)機(jī)旋轉(zhuǎn)時(shí),光柵盤與電動(dòng)機(jī)同速旋轉(zhuǎn),經(jīng)發(fā)光二極管等電子元件組成的檢測(cè)裝置檢測(cè)輸出若干脈沖信號(hào),通過(guò)計(jì)算每秒光電編碼器輸出脈沖的個(gè)數(shù)就能反映當(dāng)前電動(dòng)機(jī)的轉(zhuǎn)速。此外,為判斷旋轉(zhuǎn)方向,碼盤還可提供相位相差90º的兩路脈沖信號(hào)。

  光電編碼器的選擇,可以選擇增量式編碼器或絕對(duì)值編碼器,前者適用于速度檢測(cè),后者適用于位置檢測(cè)。編碼器的A、B信號(hào)與正交解碼脈沖單元QEP相對(duì)應(yīng)的引腳連接,可以檢測(cè)出步進(jìn)電機(jī)的速度(位置),并且能夠判斷出步進(jìn)電機(jī)的旋轉(zhuǎn)方向。

  在顯示方面,由于液晶顯示器(LCD)點(diǎn)陣式或圖形式不僅可以顯示字符、數(shù)字,還可以顯示各種圖形、曲線和漢字,并且可以實(shí)現(xiàn)屏幕上下左右滾動(dòng)、動(dòng)畫、閃爍、文本顯示等功能,功耗小、體積小、質(zhì)量輕、超薄等諸多其它顯示器無(wú)法比擬的優(yōu)點(diǎn),用途十分廣泛。本系統(tǒng)設(shè)計(jì)中用到的是HY-12864圖形液晶顯示器,它內(nèi)置兩塊HD61202液晶顯示控制驅(qū)動(dòng)器,此屏幕的最大顯示范圍為128*64.HY-12864引出的以下控制信號(hào):讀寫信號(hào)(R/W)、數(shù)據(jù)或指令信號(hào)(RS)、左、右屏片選信號(hào)(CS1、CS2)、使能信號(hào)(E)及數(shù)據(jù)總線(DB0--DB7),由TMS320LF2407的I/O口直接控制,連接原理圖如下圖3所示。

 

液晶顯示HY-12864與TMS320LF2407的硬件連接圖

圖3 液晶顯示HY-12864與TMS320LF2407的硬件連接圖

  2 軟件設(shè)計(jì)

  在整個(gè)軟件設(shè)計(jì)中,共包含主程序、步進(jìn)電機(jī)驅(qū)動(dòng)程序、液晶顯示驅(qū)動(dòng)程序,按鍵掃描中斷程序、編碼器檢測(cè)換算程序等程序塊。

  下面著重介紹一下步進(jìn)電機(jī)驅(qū)動(dòng)程序及編碼器檢測(cè)換算程序。在步進(jìn)電機(jī)驅(qū)動(dòng)程序設(shè)計(jì)中,充分運(yùn)用TMS320LF2407控制器的事件管理模塊。在TMS320LF2407中各有一個(gè)16位比較寄存器CMPRx(x=4、5、6),每個(gè)比較器各有兩個(gè)比較PWM輸出引腳,產(chǎn)生3路PWM輸出信號(hào),控制電機(jī)轉(zhuǎn)速(位置),其輸出引腳極性將由控制寄存器(ACTR)的控制位來(lái)決定,根據(jù)需要選擇高電平或低電平作為開(kāi)通信號(hào)。在PWM信號(hào)調(diào)制中需要周期一定的載波,這時(shí)用到了定時(shí)器3,它以內(nèi)部CPU時(shí)鐘作為輸入,工作于連續(xù)增/減計(jì)數(shù)模式下,產(chǎn)生PWM脈沖輸出,產(chǎn)生的脈沖為一個(gè)環(huán)形可變脈沖,這時(shí)由T3PR定時(shí)周期下溢和上溢時(shí)產(chǎn)生中斷,刷新周期值,進(jìn)行PWM調(diào)整,計(jì)算方式如下:

  電機(jī)轉(zhuǎn)速與電脈沖頻率f的關(guān)系:

公式

  最后,此設(shè)計(jì)中把給定轉(zhuǎn)速轉(zhuǎn)化成相對(duì)應(yīng)的二進(jìn)制碼,用29297除以給定轉(zhuǎn)速即得到PWM基數(shù),所得到的PWM數(shù)值再乘以3得到定時(shí)器3的T3PR的周期值,對(duì)應(yīng)不同頻率的PWM脈沖輸出,如圖4,電機(jī)運(yùn)行中斷程序框圖。

電機(jī)運(yùn)行中斷程序框圖

圖4 電機(jī)運(yùn)行中斷程序框圖

  光電編碼器的檢測(cè)利用正交解碼脈沖單元QEP,A、B分別與正交解碼脈沖單元的兩個(gè)通道QEP1和QEP2相連。正交解碼脈沖單元QEP具有方向檢測(cè)功能,它的方向檢測(cè)邏輯辨明兩個(gè)序列中哪一個(gè)是先導(dǎo)序列,接著可以產(chǎn)生方向信號(hào)作為所選定時(shí)器的方向輸入,如果QEP1輸入的是先導(dǎo)序列,則所選的定時(shí)器增計(jì)數(shù);反之QEP2輸入的是先導(dǎo)序列,則所選的定時(shí)器減計(jì)數(shù)。注意兩列正交輸入脈沖的兩個(gè)邊沿都被正交解碼脈沖單元計(jì)數(shù),因此產(chǎn)生的時(shí)鐘頻率是每個(gè)輸入序列的4倍。在本系統(tǒng)中把定時(shí)器2用為作為計(jì)數(shù)器,它以正交解碼脈沖單元產(chǎn)生的時(shí)鐘作為輸入,與正交解碼脈沖單元QEP1、2共同作用,對(duì)編碼器信號(hào)進(jìn)行檢測(cè),換算成所對(duì)應(yīng)的轉(zhuǎn)速(位置)信號(hào)。

  本文所介紹的步進(jìn)電機(jī)控制方案,其創(chuàng)新點(diǎn)在于利用TMS320LF2407的事件管理模塊,可以簡(jiǎn)單有效的控制步進(jìn)電機(jī)的速度(位置)。系統(tǒng)中并設(shè)計(jì)了相應(yīng)的人機(jī)界面,進(jìn)行相應(yīng)變量的顯示、操作,同時(shí)該系統(tǒng)留有一定的資源可以方便系統(tǒng)的擴(kuò)展。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。