摘要: 本文主要介紹了基于MSP430F149單片機實現(xiàn)的步進電機通用控制器。該控制器可同時控制多臺步進電機按曲線方式運行,包括加減速、定位及換向功能等。文中重點探討了步進電機升降速曲線的設(shè)計方案及其實現(xiàn)方法。
關(guān)鍵詞:MSP430F149,單片機,步進電機,通用控制器
Abstract:The paper introduce the design of step-motor controller based on the MSP430F149 . The controller can control many step-motor systems in the meantime, and made motor run in multi-curve including speed-up, speed-down, orientation and direction‘s change. It mainly discussed the method how to design and fulfill the curve of the speed control .
Keywords:MSP430F149, single chip, step-motor, general controller
1.前言
基于步進電機的控制系統(tǒng),除了步進電機一般還需要專門的驅(qū)動電源,驅(qū)動電源僅僅完成功率驅(qū)動部分,用戶并不能使整個控制系統(tǒng)按預(yù)定的、期望的工作狀態(tài)運行,必須對它的驅(qū)動電源予以控制,用戶需要再次開發(fā)。
鑒于此,設(shè)計了基于MSP430F149單片機實現(xiàn)的步進電機通用控制器,可以滿足大多數(shù)控制場合下的要求??刂破鞯闹饕δ転椋?
① 可控制多套步進電機驅(qū)動系統(tǒng);目前可同時控制3套系統(tǒng)。
② 工作方式靈活,可按設(shè)定的曲線運行,曲線最多達8段;可按外部檢測到的控制信號運行;可按模擬調(diào)節(jié)測試功能運行;
2.系統(tǒng)的設(shè)計
2.1系統(tǒng)的結(jié)構(gòu)
本控制器主要實現(xiàn)了多臺步進電機在多段曲線上的運行控制。系統(tǒng)結(jié)構(gòu)如圖1所示。
[align=center][img=]http://www.mcu99.com/Article/UploadFile/200612/20061203124245647.gif[/img]
圖1 系統(tǒng)結(jié)構(gòu)框圖[/align]
2.2微處理器的選擇
本設(shè)計選用了TI公司所生產(chǎn)的MSP系列單片機MSP430F149。目的是應(yīng)用其豐富的接口資源和強大的定時器功能,MSP430F149的性能特點如下:
①6個八位并行接口;完全可以實現(xiàn)該系統(tǒng)所有信號的輸入、輸出,無須硬件擴展,其中P1、P2八位并行端口的每根口線都具有中斷功能,使鍵盤的軟、硬件設(shè)計變的非常簡單。
②12位A/D轉(zhuǎn)換器ADC;完成模擬設(shè)定功能。
③強大的定時器功能;TIMER-A3、TIMER-B7分別為帶有3個和7個捕捉/比較寄存器的16位定時器,可以滿足系統(tǒng)速度的設(shè)定及曲線定時的要求。
④液晶驅(qū)動模塊;
⑤內(nèi)置2KB RAM、60KB的FLASH;
MSP430F149所提供的豐富資源,外圍硬件擴展只需做很少的工作,不僅設(shè)計變得非常簡單,而且該控制器體積小、可靠性高。
2.3步進電機起動及加/減速控制方案
步進電動機的最高起動頻率(突跳頻率)一般為0.1KHz到3-4KHz,而最高運行頻率則可以達到N*10[sup]2[/sup] KHz。以超過最高起動頻率的頻率直接起動,將出現(xiàn)"失步"現(xiàn)象,甚至無法起動。較為理想的起動曲線,應(yīng)是按指數(shù)規(guī)律起動。但實際應(yīng)用對起動段的處理可采用按直線擬合的方法,即"階梯升速法"。可按兩種情況處理,①已知突跳頻率則按突跳頻率分段起動,分段數(shù)n=f/fq。②未知突跳頻率,則按段擬合至給定的起動頻率,每段頻率的遞增量(后稱階梯頻率)△f=f/8,即采用8段擬合。在運行控制過程中,將起始的速度(頻率)分為n分作為階梯頻率,采用"階梯升速法"將速度連續(xù)升到所需要的速度,然后鎖定,按預(yù)置的曲線運行。如圖2所示。
[align=center]

圖2 階梯升速起動[/align]
用單片機實現(xiàn)步進電機的加/減速控制,實際上就是控制發(fā)脈沖的頻率,升速時,使脈沖頻率增高,減速時相反。如果使用定時中斷來控制電機的速度,加減速控制就是不斷改變定時器的初值。速度從V1→V2如果是線性增加,則按給定的斜率升/降速;如果是突變,則按"階梯升速法"處理。在此過程中要處理好兩個問題:
①速度轉(zhuǎn)換時間應(yīng)盡量短;為了縮短速度轉(zhuǎn)換的時間,可以采用建立數(shù)據(jù)表的方法。,結(jié)合各曲線段的頻率和各段間的階梯頻率便可以建立一個連續(xù)的數(shù)據(jù)表,并通過轉(zhuǎn)換程序?qū)⑵滢D(zhuǎn)換為定時初值表。通過在不同的階段調(diào)用相應(yīng)的定時初值,控制電機的運行。定時初值的計算是在定時中斷外實現(xiàn)的,并不占用中斷時間,保證電機的高速運行。
②保證控制速度的精確性;要從一個速度準確達到另外一個速度,就要建立一個校驗機制,以防超過或未達到所需速度。
2.4步進電機的換向問題
步進電機換向時,一定要在電機降速停止或降到突跳頻率范圍之內(nèi)再換向,以免產(chǎn)生較大的沖擊而損壞電機。換向信號一定要在前一個方向的最后一個CP脈沖結(jié)束后以及下一個方向的第一個CP脈沖前發(fā)出。如圖3所示。對于CP脈沖的設(shè)計主要要求其有一定的脈沖寬度(一般不小于5μs)、脈沖序列的均勻度及高低電平方式。

在某一高速下的正、反向切換實質(zhì)包含了降速→換向→升速三個過程。
2.5速度與定時器初值的轉(zhuǎn)換
本系統(tǒng)的速度控制是依靠定時產(chǎn)生CP脈沖來完成的,設(shè)定的速度與產(chǎn)生CP脈沖的定時器初值間存在一定關(guān)系。MSP430F149定時器的工作方式有多種,本設(shè)計定時器工作在連續(xù)方式下。在連續(xù)模式,定時器從它的當前值開始計數(shù),當計到0FFFFH后又從"0"開始重新計數(shù)。在該方式下,將定時器的當前值和比較寄存器CCRX相比較,如相等則產(chǎn)生中斷,并在該中斷服務(wù)程序中可以將下一個事件發(fā)生的時間加到比較寄存器CCRX上,如圖4,如此這樣便會得到連續(xù)的定時時間間隔,并在每一個定時間隔到來產(chǎn)生中斷請求。
定時初值=所需定時值/計數(shù)周期;對于步進電機其速度值常以頻率形式給定,諸如運行在20KHZ下,因此上式可轉(zhuǎn)換為:定時初值=計數(shù)頻率/速度值。(其中計數(shù)頻率為系統(tǒng)時鐘頻率)
3.結(jié)束語
該控制器可以實現(xiàn)步進電機在多段設(shè)定曲線下的運行控制,具有硬件簡單、體積小、可靠性高的特點,已將其用于電線生產(chǎn)線上的排線控制部分,取得了令人滿意的效果。該課題為北方工業(yè)大學??蒲谢鹳Y助項目。
參考文獻
1. 胡大可. MSP430系列FLASH型超低功耗16位單片機. 北京航空航天大學出版社,2001.
2. 李仁定. 電機的微機控制. 機械工業(yè)出版社,1999.
3. 陳理璧. 步進電動機及其應(yīng)用. 上??茖W技術(shù)出版社,1985.
4. MSP430 Assembler, Linker, and Librarian Programming Guide,Texas Instruments Corportation.
作者簡介:
李穎宏,女,出生于1968年4月,北方工業(yè)大學自動化學科講師,1992年畢業(yè)于北京理工大學,取得碩士學位。畢業(yè)以來多年從事電機及單片機教學和科研工作,經(jīng)驗豐富。
郭棟,男,出生于1980年3月。2002年7月畢業(yè)于北方工業(yè)大學,現(xiàn)就讀于北京科技大學系統(tǒng)工程專業(yè)(研究生),愛好單片機開發(fā),精通MCS51,MCS96及MSP430F149單片機,曾開發(fā)過多個項目。具有較為豐富的實際開發(fā)經(jīng)驗。
聯(lián)系電話:010-82385738(H) 13161001674