本文主要介紹了基于MSP430F149單片機實現(xiàn)的步進電機通用控制器。該控制器可同時控制多臺步進電機按曲線方式運行,包括加減速、定位及換向功能等。文中重點探討了步進電機升降速曲線的設計方案及其實現(xiàn)方法。 1.前言 基于步進電機的控制系統(tǒng),除了步進電機一般還需要專門的驅動電源,驅動電源僅僅完成功率驅動部分,用戶并不能使整個控制系統(tǒng)按預定的、期望的工作狀態(tài)運行,必須對它的驅動電源予以控制,用戶需要再次開發(fā)。 鑒于此,設計了基于MSP430F149單片機實現(xiàn)的步進電機通用控制器,可以滿足大多數(shù)控制場合下的要求。控制器的主要功能為: ① 可控制多套步進電機驅動系統(tǒng);目前可同時控制3套系統(tǒng)。 ② 工作方式靈活,可按設定的曲線運行,曲線最多達8段;可按外部檢測到的控制信號運行;可按模擬調節(jié)測試功能運行; 2.系統(tǒng)的設計 2.1系統(tǒng)的結構 本控制器主要實現(xiàn)了多臺步進電機在多段曲線上的運行控制。系統(tǒng)結構如圖1所示。 圖1 系統(tǒng)結構框圖 2.2微處理器的選擇 本設計選用了TI公司所生產的MSP系列單片機MSP430F149。目的是應用其豐富的接口資源和強大的定時器功能,MSP430F149的性能特點如下: ①6個八位并行接口;完全可以實現(xiàn)該系統(tǒng)所有信號的輸入、輸出,無須硬件擴展,其中P1、P2八位并行端口的每根口線都具有中斷功能,使鍵盤的軟、硬件設計變的非常簡單。 ②12位A/D轉換器ADC;完成模擬設定功能。 ③強大的定時器功能;TIMER-A3、TIMER-B7分別為帶有3個和7個捕捉/比較寄存器的16位定時器,可以滿足系統(tǒng)速度的設定及曲線定時的要求。 ④液晶驅動模塊; ⑤內置2KB RAM、60KB的FLASH; MSP430F149所提供的豐富資源,外圍硬件擴展只需做很少的工作,不僅設計變得非常簡單,而且該控制器體積小、可靠性高。 2.3步進電機起動及加/減速控制方案 步進電動機的最高起動頻率(突跳頻率)一般為0.1KHz到3-4KHz,而最高運行頻率則可以達到N*102KHz。以超過最高起動頻率的頻率直接起動,將出現(xiàn)"失步"現(xiàn)象,甚至無法起動。較為理想的起動曲線,應是按指數(shù)規(guī)律起動。但實際應用對起動段的處理可采用按直線擬合的方法,即"階梯升速法"?砂磧煞N情況處理,①已知突跳頻率則按突跳頻率分段起動,分段數(shù)n=f/fq。②未知突跳頻率,則按段擬合至給定的起動頻率,每段頻率的遞增量(后稱階梯頻率)△f=f/8,即采用8段擬合。在運行控制過程中,將起始的速度(頻率)分為n分作為階梯頻率,采用"階梯升速法"將速度連續(xù)升到所需要的速度,然后鎖定,按預置的曲線運行。如圖2所示。 圖2 階梯升速起動 用單片機實現(xiàn)步進電機的加/減速控制,實際上就是控制發(fā)脈沖的頻率,升速時,使脈沖頻率增高,減速時相反。如果使用定時中斷來控制電機的速度,加減速控制就是不斷改變定時器的初值。速度從V1→V2如果是線性增加,則按給定的斜率升/降速;如果是突變,則按"階梯升速法"處理。在此過程中要處理好兩個問題: ①速度轉換時間應盡量短;為了縮短速度轉換的時間,可以采用建立數(shù)據(jù)表的方法。,結合各曲線段的頻率和各段間的階梯頻率便可以建立一個連續(xù)的數(shù)據(jù)表,并通過轉換程序將其轉換為定時初值表。通過在不同的階段調用相應的定時初值,控制電機的運行。定時初值的計算是在定時中斷外實現(xiàn)的,并不占用中斷時間,保證電機的高速運行。 ②保證控制速度的精確性;要從一個速度準確達到另外一個速度,就要建立一個校驗機制,以防超過或未達到所需速度。 2.4步進電機的換向問題 步進電機換向時,一定要在電機降速停止或降到突跳頻率范圍之內再換向,以免產生較大的沖擊而損壞電機。換向信號一定要在前一個方向的最后一個CP脈沖結束后以及下一個方向的第一個CP脈沖前發(fā)出。如圖3所示。對于CP脈沖的設計主要要求其有一定的脈沖寬度(一般不小于5μs)、脈沖序列的均勻度及高低電平方式。 2.5速度與定時器初值的轉換 本系統(tǒng)的速度控制是依靠定時產生CP脈沖來完成的,設定的速度與產生CP脈沖的定時器初值間存在一定關系。MSP430F149定時器的工作方式有多種,本設計定時器工作在連續(xù)方式下。在連續(xù)模式,定時器從它的當前值開始計數(shù),當計到0FFFFH后又從"0"開始重新計數(shù)。在該方式下,將定時器的當前值和比較寄存器CCRX相比較,如相等則產生中斷,并在該中斷服務程序中可以將下一個事件發(fā)生的時間加到比較寄存器CCRX上,如圖4,如此這樣便會得到連續(xù)的定時時間間隔,并在每一個定時間隔到來產生中斷請求。 該控制器可以實現(xiàn)步進電機在多段設定曲線下的運行控制,具有硬件簡單、體積小、可靠性高的特點,已將其用于電線生產線上的排線控制部分,取得了令人滿意的效果。該課題為北方工業(yè)大學?蒲谢鹳Y助項目。 參考文獻 1. 胡大可. MSP430系列FLASH型超低功耗16位單片機. 北京航空航天大學出版社,2001. 2. 李仁定. 電機的微機控制. 機械工業(yè)出版社,1999. 3. 陳理璧. 步進電動機及其應用. 上?茖W技術出版社,1985. 4. MSP430 Assembler, Linker, and Librarian Programming Guide,Texas Instruments Corportation. 作者簡介: 李穎宏,女,出生于1968年4月,北方工業(yè)大學自動化學科講師,1992年畢業(yè)于北京理工大學,取得碩士學位。畢業(yè)以來多年從事電機及單片機教學和科研工作,經驗豐富。 郭棟,男,出生于1980年3月。2002年7月畢業(yè)于北方工業(yè)大學,現(xiàn)就讀于北京科技大學系統(tǒng)工程專業(yè)(研究生),愛好單片機開發(fā),精通MCS51,MCS96及MSP430F149單片機,曾開發(fā)過多個項目。具有較為豐富的實際開發(fā)經驗。 聯(lián)系電話:010-82385738(H) 13161001674 |