引言
傳統(tǒng)的步進電機控制方法是由觸發(fā)器產(chǎn)生控制脈沖來進行控制的,但此種控制方法工作方式單一而且難于實現(xiàn)人機交互,當步進電機的參數(shù)發(fā)生變化時,需要重新進行控制器的設計?。而且由傳統(tǒng)的觸發(fā)器構成的控制系統(tǒng)具有控制電路復雜、控制精度低、生產(chǎn)成本高等缺點。為了克服傳統(tǒng)控制器的缺點,滿足工業(yè)生產(chǎn)新的控制要求,在此需要采用一種以單片機為核心的新型控制器。步進電機是數(shù)字控制電機,它將脈沖信號轉(zhuǎn)變成角位移,即給一個脈沖信號,步進電機就轉(zhuǎn)動一個角度,其最大特點就是通過輸入脈沖信號來進行控利,電機總轉(zhuǎn)動角度由輸入脈沖數(shù)決定,電機的轉(zhuǎn)速由脈沖信號頻率決定,因此適合于單片機控制,單片機通過向步進電機驅(qū)動電路發(fā)送控制信號就能實現(xiàn)對步進電機的控制。
1系統(tǒng)硬件設計
控制系統(tǒng)的設計分為兩大部分:硬件部分和軟件部分。硬件部分的設計包括脈沖發(fā)生模塊、電流放大模塊、液晶顯示模塊和鍵盤輸入模塊四個部分。軟件部分的設計包括鍵盤掃描模塊、脈沖發(fā)出模塊、液晶顯示模塊、延時模塊和加減速模塊等。
本文使用的是兩相混合式步進電機,型號為42H33H-1334A,最小電壓為2.8V,最小電流為1.33A,電阻為2.1Ω,電感為2.5H,靜轉(zhuǎn)矩2.2kg·cm。采用AT 8 9 S 5 2單片機、1 602液晶顯示屏、X 4矩陣鍵盤分別進行控制運算、顯示、控制輸入。硬件部分設計框圖如圖1所示。
圖1系統(tǒng)硬件設計框圖
1.1脈沖發(fā)生模塊
步進電機的驅(qū)動脈沖是由單片機產(chǎn)生的。在這采用P1.7,P1.6,P1.3,P1.2分別對步進電機的A,A.、B,B’端口輸入脈沖。脈沖的頻率通過軟件來設定。
兩相四線步進電機的工作方式有:1)兩相四拍:A-B—A’-B’·A一。..;2)兩相雙四拍:AB-BA’-A’B’一B’A-AB一。..;3)兩相八拍:A-AB—B—BA’-A’-A’B。-B’-B’A·A-。..:
本文采用兩相八拍。其工作方式通電換相的相序如上3)所示,共8個狀態(tài)。如果Pl口輸出的控制信號中,用“0”和“1”分別代表繞組通電和斷電,則可用8個控制字來對應這8個狀態(tài)。在程序中,只要依次將這8個控制字送到P1口,每送一個控制字,就完成一拍,步進電機轉(zhuǎn)過一個步距角。程序可根據(jù)這個原理來設計。
1.2電流放大模塊
本文采用的驅(qū)動芯片是L298N芯片。L298N是高電壓,大電流雙全橋驅(qū)動芯片,L298N有單極性和雙極性兩種工作方式,本方案選用單極性工作方式,通過單片機控制L298N,使得從單片機發(fā)出的驅(qū)動脈沖經(jīng)過L298N電流放大,然后驅(qū)動步進電機。在這使用PI.0。PI.1,P1.4,P1.5控髑L298N的使能端口,在單片機輸出驅(qū)動脈沖前全部置為高電平——使能。根據(jù)L298N的原理,將4路驅(qū)動脈沖都分別通過兩個端口輸人,兩個端口輸出,最后并聯(lián),以提高步進電機的驅(qū)動電流。部分電路如圖2所示。
圖2電流放大電路連接圖
2系統(tǒng)軟件設計
系統(tǒng)軟件主要完成鍵盤掃描、液晶顯示、控制L298N使能端和脈沖輸出。主程序主要完成硬件初始化、子程序調(diào)用等功能。適當使各項功能模塊化。為了節(jié)省單片機CPU資源,合理利用單片機定時器控制脈沖的頻率,改變轉(zhuǎn)速。根據(jù)以上分析得到的程序漉程圖如圖3所示。
圖3系統(tǒng)軟件設計流程圖
2.1中斷的使用和基本定時
在本設計中,使用中斷2進行最基本的定時一10us。使得脈沖頻率方便改變。以下是選用中斷2、計時初始化和啟動中斷2的語句:
TMOD=-0x22;
TH0=246;
TL0=2A6;
EA=1:
ET0=1:
TR0=1:
2.2定時步進電機驅(qū)動脈沖程序
首先,將需要發(fā)出的脈沖以十六進和數(shù)型式存人數(shù)組。然后根據(jù)所設定的脈沖額率,逐個輸出數(shù)組內(nèi)的數(shù)到P1口,即產(chǎn)生相應的脈沖。部分程序如下:
首先,將需要發(fā)出的脈沖以十六進和數(shù)型式存人數(shù)組。然后根據(jù)所設定的脈沖額率,逐個輸出數(shù)組內(nèi)的數(shù)到P1口,即產(chǎn)生相應的脈沖。部分程序如下:
定義數(shù)組:
2.4加減速控制程序
步進電機的加減速只需要控制它的驅(qū)動脈沖頻率,而改變頻率,則只需要改變脈沖的輸出時間,即改變相應數(shù)組的調(diào)用時間。靈活使用變量,可降低程序的書寫難度。在這里,su為設定中斷的次數(shù),控制脈沖的輸出時間:num2為電機速度級狀態(tài)變量,說明需要多長時間的驅(qū)動脈沖時間。程序說明如下:
3步進電機在地震旋轉(zhuǎn)振動臺模型中的應用
理論分析和震害現(xiàn)象表明,高層建筑物結構在地震作用下的反應由于地面質(zhì)量間運動的差別,可使地面的每一部分不僅產(chǎn)生平動分量,而且產(chǎn)生轉(zhuǎn)動分量。這種轉(zhuǎn)動分量迫使高層建筑物結構產(chǎn)生扭轉(zhuǎn),還可能會發(fā)生扭轉(zhuǎn)振動。震害表明,扭轉(zhuǎn)作用會加重結構的破壞,造成地表和建筑物的破壞。同時隨著震害經(jīng)驗的不斷積累,人們逐漸認識到在進行抗震分析時僅僅考慮單分量作用是不夠的,多分量對結構的影響是不可忽視的。然而現(xiàn)今的地震記錄中,實際可靠的地震動轉(zhuǎn)動分量記錄的強震觀測還沒有獲得突破。
步進電機是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機構,通過控制脈沖個數(shù)來控制角位移量,也可以通過控制脈沖頻率來控制電機轉(zhuǎn)動的速度和加速度。由于步進電機獨特的工作方式,本設計對步進電機實現(xiàn)角位移控制,通過電機運動產(chǎn)生的角位移分量模擬地震時對高層建筑物的扭轉(zhuǎn)分量,模擬地震對建筑物的破壞程度,對地震旋轉(zhuǎn)振動臺的模型進行了初步探究。
4結束語
本文在分析步進電機的主要特點和工作原理的基礎上,設計出了簡單實用,以AT89S52單片機作為控制器的控制系統(tǒng)硬件電路和運行軟件。系統(tǒng)既能實現(xiàn)正轉(zhuǎn)反轉(zhuǎn),又能實現(xiàn)分五個檔進行調(diào)速:軟件有效的節(jié)約了硬件資源,同時系統(tǒng)易于拓展,該系統(tǒng)在地震旋轉(zhuǎn)振動臺的模型研究中巳取得了初步的應用。然而,本文只就步進電機正轉(zhuǎn)反轉(zhuǎn)、加速減速這幾項技術進行了部分設計,在系統(tǒng)設計的抗干擾性方面、角度控制方面還有待于進一步的探究。
來源;21ic