步進電機驅動控制
一、 實驗目的1. 了解步進電機的工作原理。
2. 掌握用FPGA產生驅動步進電機的時序。
3. 掌握用FPGA來控制步進電機轉動的整個過程。
二、 實驗原理
步進電機是工業(yè)控制及儀表中常用的控制元件之一,例如在機械裝置中可以精確控制機械裝置的旋轉角度、移動距離等。步進電機可以直接用數(shù)字信號來驅動,使用非常方便。另外步進電機還具有快速起停、精確步進和定位的特點。
步進電機實際上是一個數(shù)據(jù)/角度轉換器,三相步進電機的結構原理如下圖4-15-1所示:
圖4-15-1 三相步進電機的結構示意圖
從圖中可以看出,電機的定子有六個等分的磁極,A、A’、B、B’、C、C’,相鄰的兩個磁極之間夾角為60°,相對的兩個磁極組成一組(A—A’,B—B’,C—C’),當某一繞組有電流通過時,該繞組相應的兩個磁極形成N極和S極,每個磁極上各有五個均分布的矩形小齒,電機的轉子上有40個矩形小齒均勻地分布在圓周上,相鄰兩個齒之間夾角為9°。
⑴當某一相繞組通電時,對應的磁極就產生磁場,并與轉子轉動一定的角度,使轉子和定子的齒相互對齊。由此可見,錯齒是促使步進電機旋轉的原因。
例如在三相三拍控制方式中,若A相通電,B、C相都不通電,在磁場作用下使轉子齒和A相的定子齒對齊,我們以此作為初始狀態(tài)。設與A相磁極中心線對齊的轉子的齒為0號齒,由于B相磁極與A相磁極相差120°不是9°的整數(shù)倍(120÷9=13 2/3) ,所以此時轉子齒沒有與B相定子的齒對應,只是第13號小齒靠近B相磁極的中心線,與中心線相差3°,如果此時突然變?yōu)锽相通電,A、C相不通電,則B相磁極迫使13號轉子齒與之對齊,轉子就轉動3°,這樣使電機轉子一步。如果按照A—AB—B—BC—C—CA—A次序通電則為正轉。通常用三相六拍環(huán)形脈沖分配器產生步進脈沖。
⑵運轉速度的控制。若改變ABC三相繞組高低電平的寬度,就會導致通電和斷電的變化速率變化,使電機轉速改變,所以調節(jié)脈沖的周期就可以控制步進電機的運轉速度。
⑶旋轉的角度控制。因為輸入一個CP脈沖使步進電機三相繞組狀態(tài)變化一次,并相應地旋轉一個角度,所以步進電機旋轉的角度由輸入的CP脈沖數(shù)確定。
本實驗箱所使用步進電機為4相步進電機,最小旋轉角度為7.5度,其正向轉動控制時序如下所示,每一個脈沖控制其轉過7.5度。
反向轉動控制時序如下:
三、 實驗內容
本實驗要完成的任務就是設計步進電機的控制電路。通過一個撥動開關K1來控制步進電機的順時針和逆時針旋轉;通過八個按鍵開關BT1-BT8來控制步進電機旋轉的角度。
四、 實驗步驟
1、 打開QUARTUSII軟件,新建一個工程。
2、 建完工程之后,再新建一個VHDL File,打開VHDL編輯器對話框。
3、 按照實驗原理和自己的想法,在VHDL編輯窗口編寫VHDL程序,用戶可參照光盤中提供的示例程序。
4、 編寫完VHDL程序后,保存起來。方法同實驗一。
5、 將自己編輯好的的程序進行編譯仿真,并對程序的錯誤進行修改,最終通過編譯。
6、 編譯仿真無誤后,根據(jù)用戶自己的要求進行管腳分配。分配完成后,再進行全編譯一次,以使管腳分配生效。
7、 根據(jù)實驗內容用實驗導線將上面管腳分配的FPGA管腳與對應的模塊連接起來。
如果是調用的本書提供的VHDL代碼,則實驗連線如下:
Clk:FPGA工作所需時鐘信號,輸入為1KHZ左右。
Key7_5、key15、key30、key45、key90、key180、key360、key8:分別代表旋轉7.5度、15度、30度、45度、90度、180度、360度和多轉,分別與8個按鍵相連,按下相應的按鍵可以是步進電機轉過相應的角度。
Keyorder:旋轉方向控制信號與一個撥動開關相連,高電平時正轉;低電平時反轉。
Astep、bstep、cstep、dstep:分別與步進電機模塊的A、B、C和D相連。
8、 用下載電纜通過JTAG口將對應的sof文件加載到FPGA中。觀察實驗結果是否與自己的編程思想一致。
五、 實驗結果與現(xiàn)象
以設計的參考示例為例,當設計文件加載到目標器件后,按動按鍵開關BT1-BT8,步進電機將會按照程序設計的相應的步進角度進行旋轉。撥動撥動開關的K1,步進電機旋轉的方向將會發(fā)生改變。
六、 實驗報告
1、 繪出仿真波形,并作說明。
2、 將實驗原理、設計過程、編譯仿真波形和分析結果、硬件測試結果記錄下來。