多軸步進電動機運動控制系統的設計
廖高華,謝云敏
(南昌工程學院,江西南昌330099)
摘要:為保證步進電動機運動控制精度高、響應快、低成本、操作簡單,研制了一種性價比高的步進電動機運動控制系統。以高速單片機為主控器,增強型并行口(EPP)為通信接口,FPGA實現脈沖信號發生器,利用Pc豐富的資源,實現了步進脈沖信號連續、穩定可調和聯動插補。實驗證明,控制系統用于焊縫掃查跟蹤控制時,其焊縫掃查偏差小于1 mm,定位準確、實時可靠、控制靈活、速度運行寬、抗干擾性能強、人機接口方便,具有良好的適應性和自保護能力。
關鍵詞:步進電動機;EPP;單片機;FPGA;脈沖信號;運動控制
中圖分類號:TM383.6 文獻標識碼:A 文章編號:1004—7018(2008)06—0030—04
0引 言
步進電動機在民用工業控制中應用廣泛,而運動控制系統是步進電動機系統的重要組成部分,通過其輸出的脈沖信號來實現電機的精確位置與速度的伺服控制。步進電動機的轉速及所旋轉的角度由輸入脈沖的速率和總脈沖數所決定,其旋轉角誤差不會逐步累積。在實際中常需要調節步進電動機的旋轉速度或步進量,即需要一個能精確設定脈沖速率和脈沖總數的脈沖發生器。主控器輸出信號,通過脈沖發生器完成步進電動機位置、正反轉、升速、降速控制等一系列復雜的控制和插補運算。脈沖發生器和插補運算的設計可以通過單片機及采用專用邏輯電路的方法來實現,但采用單片機實現受其時鐘頻率的限制,實現精度低、抗干擾能力差,很難實現非整數時鐘周期的脈沖信號[1]。系統研制中使用現場可編程門陣列(FPcA)技術實現脈沖發生器和插補運算功能,單片機為主控器,利用豐富的Pc機資源,采用增強型并行口EPP數據傳輸模式進行通信,可以隨時根據應用場合修改輸出脈沖參數,不僅能夠滿足實時控制的要求,而且設計筒捷、經濟可靠、接口方便,可充分利用計算機的資源,并縮短開發周期。
1控制系統結構
電機控制系統是基于高速單片機w77E58為核心,與存儲器、信號處理電路、人機接口電路、看門狗電路、并行通信接口(EPP)、FPGA模塊等組成的下位控制單元,其控制算法的程序固化在存儲器中,與Pc機構成上下位機控制結構。Pc機主要完成人機交互界面的管理、系統編程的功能、圖形功能、參數設定及自診斷功能;控制系統負責運動控制,可以輸
出步進脈沖和方向信號,以控制電機的運轉;同時可外接限位信號,控制系統對外接信號檢測并做出相應處理,上下位機通信是通過EPP協議來進行的?刂葡到y是采用軟硬件的開放式、模塊化設計,控制系統的結構如圖l所示。
上位機(Pc)能夠可靠地將經過處理的控制指令和參數發送到下位機(高速單片機),下位機接收到相應的控制指令和參數并準確、及時地發出控制信號和方向信號輸出控制步進電動機動作;同時,上位機收集下位機反饋的各種狀態信號(如電機運動中的限位等輸入信號),進行診斷、處理、曲線顯示和數據存儲。
2 FPGA數字模塊設計
2.1步進脈沖產生模塊
由FPGA設計的內部定時/計數器構成,定時/計數器的定時值和定時范圍可由軟件設定和改變。設定好定時器的工作方式并裝入數值后,其便能夠工作,不占用大量時間,使用方便,功能較強。當內部定時/計數器啟動后,定時器從裝載的初值開始對系統機器周期進行加計數,當計數值產生溢出時,定時器產生中斷信號,中止主程序的執行,系統轉為執行定時器中斷子程序。將電動機換相子程序放在定時器中斷服務程序中,則定時器中斷一次,電動機就換相一次,從而實現對電動機的速度控制。
2.2升降度模塊設計
采用梯形速度曲線,在進行速度控制過程中,首先要根據已知條件判斷出此次運動需要經過幾個階段,然后才能求出各段所用的時間,根據這一時間為判斷條件,為程序提供每個周期內的移動速度,以及每個周期的進給量。在控制電動機的升降速過程中,采用離散辦法來逼近理想的升降速曲線。為了減少每步計算裝載時間,把各離散點的速度所需的裝載值固化在存儲器中,在運行中用查表方法查出所需的裝載值,從而大幅度減少占用的時間,提高了系統的晌應速度。在執行升降逮過程的控制還需準備下列數據:(1)升速過程的總步數;(2)恒速運行總步數;(3)降速運行步數;(4 |