DSP(Digital Signal Processor)是一種特別適合于進(jìn)行數(shù)字信號(hào)處理運(yùn)算的微處理器,其采用先進(jìn)的軟、硬件結(jié)構(gòu),其內(nèi)部的程序空間和數(shù)據(jù)空間分開,可以同時(shí)訪問指令和數(shù)據(jù),并且具有事件模塊管理功能及快速的中斷處理功能,其以高性能及日趨低價(jià)位的特點(diǎn),越來越廣泛地應(yīng)用于信息處理、控制系統(tǒng)中。TMS320LF2407芯片作為一款定點(diǎn)DSP控制器尤為適合于控制系統(tǒng),其所包含的事件管理模塊,可以極為方便的實(shí)現(xiàn)電機(jī)數(shù)字化控制。步進(jìn)電機(jī)是數(shù)字控制系統(tǒng)的一種常見的執(zhí)行元件,其接收數(shù)字控制信號(hào)(電脈沖信號(hào)),并轉(zhuǎn)換成與之相對(duì)應(yīng)的角位移或直線位移。步進(jìn)電機(jī)具有開環(huán)控制無累計(jì)誤差的優(yōu)點(diǎn),控制系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,因而得到了廣泛的應(yīng)用。本文所介紹的是一種基于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)速(位置),通過中央控制器TMS320LF2407來產(chǎn)生PWM脈沖信號(hào)來控制步進(jìn)電機(jī)的轉(zhuǎn)速(位置),可以采用光電編碼器對(duì)步進(jìn)電機(jī)的轉(zhuǎn)速(位置)進(jìn)行采樣檢測(cè)實(shí)現(xiàn)閉環(huán)控制,也可以采用開環(huán)控制無需轉(zhuǎn)速(位置)信號(hào),以上過程中的多個(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)過信號(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)來進(jìn)行步進(jìn)電機(jī)的控制,通電順序?yàn)锳-AB-B-BC-C-CA,步距角為1.5°,功率放大采用的是典型的單壓驅(qū)動(dòng)方式。
圖2 步進(jìn)電機(jī)驅(qū)動(dòng)方框圖
光電編碼器的選擇,可以選擇增量式編碼器或絕對(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ì)量輕、超薄等諸多其它顯示器無法比擬的優(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所示。
本設(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)過信號(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)來進(jìn)行步進(jìn)電機(jī)的控制,通電順序?yàn)锳-AB-B-BC-C-CA,步距角為1.5°,功率放大采用的是典型的單壓驅(qū)動(dòng)方式。
圖2 步進(jìn)電機(jī)驅(qū)動(dòng)方框圖
光電編碼器的選擇,可以選擇增量式編碼器或絕對(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ì)量輕、超薄等諸多其它顯示器無法比擬的優(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所示。
圖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)的控制位來決定,根據(jù)需要選擇高電平或低電平作為開通信號(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)行中斷程序框圖。
圖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ò)展。