蔡東松, 董增勇
(杭州技師學院機電系,浙江 杭州 311500)
基于PLC控制的步進電機在三軸雕刻機上的應用
蔡東松, 董增勇
(杭州技師學院機電系,浙江 杭州 311500)
主要介紹了利用CPU ST40實現步進電機精確的位置控制,從而實現三軸雕刻機的工作要求。雕刻機的上位機軟件設計部分本文將不做介紹。
PLC; S7-200 SMART;步進電機;三軸雕刻機
在科學研究和生產實踐的諸多領域中,智能控制越來越多地出現在人們的生活中,不僅可以節約資源,還可以釋放很多的勞動力,提高生產效率。由于計算機技術的迅速發展,嵌入式系統產品越來越多地出現在人們的生活中。PLC 由最簡單的邏輯量控制功能逐步發展成為通過計算機實現系統控制的能力。PLC本身具有高抗干擾性能,功能穩定,便于工程師開發等諸多優點,倍受越來越多的產品開發工程師的青睞。三軸雕刻機的出現,可以根據人們的愛好,雕刻出自己想要的小物件,提高了人們的精神生活質量。
2.1 系統動作要求
三軸雕刻機主要實現了三個自由度運動控制,可以模擬數控車床和銑床的加工過程,其三個自由度的十字滑臺如圖1 所示,主要控制使工作臺在X、Z軸二個方向上運動的二個滾珠絲杠,并控制使刀具在垂直方向(即X軸)上下運動的滾珠絲杠。

圖1 三自由度十字滑臺
2.2 系統組成
(1)工作臺。工作臺的主要功能是用來固定工件或夾具等,工作臺面上的T形凹槽便于工件的安裝及拆卸。
(2)滾珠絲杠。滾珠絲杠是運動的執行機構,通過絲杠的正反轉動帶動裝在直線導軌上的螺母左右運動,在左右各端都有限位開關,通過左右開關的觸發來判斷是否運動到了行動的極限位置。該機構具有活動靈活、運動平穩等特點,精度高,摩擦系數小,如圖2。
(3)雕刻刀具。

圖2 滾珠絲杠
2.3 系統工作原理
三軸雕刻機主要通過計算機來輔助完成一個工件的制作過程。將需要加工的工件的文件通過三軸雕刻機上位機控制軟件打開,上位機軟件通過算法的計算,得到該工件每次的運動軌跡,通過串口傳送給雕刻機的下位機PLC中,PLC通過控制X、Y、Z軸的運動軌跡來實現對工件的雕刻。X軸、Y軸、Z軸的相互運動配合實現雕刻功能。
2.4 系統的硬件組成
系統的硬件組成如圖3 所示。使用s7-200 SMAR CPU ST40作為控制核心,CPU發送固定的脈沖個數,通過步進電機驅動器控制步進電機執行每一步的運行距離,在系統上電初始時系統會通過CPU控制和機械原點的限位開關來實現機械零點的初始動作,這樣可以完成系統的初始化工作。
2.5 系統硬件選擇

圖3 系統的組成
2.5.1 PLC
PLC是現代新型的工業控制裝置,具有通用性強、使用方便、應用面廣、可靠性高、抗干擾能力強、編程簡單等特點,其內部控制主要專注于邏輯關系,是一種繼電器邏輯,相對于單片機來說具有通用性和適應性強、完善的故障自檢測能力而且維修方便、高可靠性與柔韌性強等優點,而且小型的PLC價格比較便宜。在電磁兼容方面,PLC完全勝于單片機,單片機需要外圍設計很多電路來解決電磁兼容問題,而PLC內部已經完全解決了這個問題,用戶不需要考慮電磁兼容問題,這樣在設計時會節約很多時間和相應的成本,而且PLC對于使用者來說門檻比較低,對于硬件、系統定義之類的繁瑣的處理,PLC內部已經完成,而使用者只要專注于邏輯控制的編寫即可。
ST40是標準晶體管輸出類型,具有高速處理器芯片,基本指令執行時間可達0.15 μs ,系統集成了三軸 100 kHz 高速脈沖輸出,完美實現對步進電機的精確定位控制。S7-200 SMART CPU模塊均集成 1 個RS485 接口,可以與變頻器、觸摸屏、PC機等第三方設備通信。信號板支持RS232/RS485 自由轉換,最多支持 4 個設備。CPU ST40具有12點輸出和18點輸入,I/O口數量完全滿足系統的應用。
2.5.2 步進電機和驅動器
步進電機主要是將電脈沖信號轉換成角位移或者線位移的開環控制執行部件,電機的轉速和停止位置主要取決于脈沖信號的頻率和脈沖個數,而不會受到負載變化的影響。步進電機接收到一個脈沖信號,就會轉動到一個固定的角度,同時可以通過控制脈沖頻率來控制電機轉動的速度和加速度,從而達到調速的目的。步進電機主要有以下優點:(1)步距值不受各種干擾因素的影響。(2)誤差不長期積累。(3)控制性能好,啟動、停車、反轉都是在少數脈沖內完成的。然而步進電機也有以下缺點:(1)輸出力矩隨著轉速上升而下降。(2)啟動頻率過高或者負載過大容易出現丟步或者堵轉現象。通過以上優缺點對比后發現,步進電機相對于直流電機和交流伺服控制來說是相當的方便和準確,而且成本上也節約很多。綜合考慮此系統,步進電機是最優的選擇。
步進電機驅動器選擇的是YKA2608MG,具有高性能、低價格、低噪音、平衡性極好等特點,且具有200細分。步進電機驅動器示意圖如圖4 。

圖4 驅動器示意圖
2.5.3 限位開關
接近開關是一種無需與運動部件直接接觸就可以操作的位置開關。當物體接近開關的感應面到動作距離時,不需要機械接觸及施加任何壓力即可使開關動作,直接給計算機(PLC)裝置提供控制指令。接近開關是一種開關型傳感器(即無觸點開關),它既有行程開關、微動開關的特性,同時具有傳感性能強、動作可靠、性能穩定、頻率響應快、應用壽命長、抗干擾能力強等特點,并具有防水、防振、耐腐蝕等特點。產品有電感式、電容式、霍爾式、交、直流型等類型。本系統選擇的是一款微小的電容式NPN型的接近開關,作為限位開關使用。
2.6 系統的硬件連接
2.6.1 驅動器信號端口連接
因為CPU ST40 IO端口輸出高電平24V為有效電平,所以步進電機驅動器采用共陰的接法控制,因為該系統采用人為的機械原點歸零,所以驅動器的原點輸出信號沒有用到。驅動器內部信號端口示意圖如圖5。

圖5 驅動器內部信號端口
因為驅動器內部光耦工作在10mA電流的工作狀態,且內部已經安裝了限流電阻,但是由于PLC端口輸出24V電壓500mA的IO信號,需要外部接限流電阻來保證驅動器正常工作,所以采用共陰的方法與PLC連接。經過計算外部限流電阻應該接2.2kΩ的電阻,共陰接法如圖6 。

圖6 驅動器共陰接法
2.6.2 步進電機與驅動器連接
步進電機有四個接線,份紅、藍、黑、綠四個顏色,其與驅動器的接線方式如圖8 。

圖8 步進電機與驅動器接線
2.6.3 系統整體原理圖
下面主要介紹系統的整體電氣原理圖,如圖8。
S7-200smart程序的編寫主要使用的是西門子公司特定的編程軟件——STEP 7-MicroWIN SMART,這款軟件是針對smart cpu進行程序開發和編寫的,下面簡要說明一下整個系統的軟件流程,上電系統進行歸零操作,每個步進電機回歸到自己的機械零點,然后根據上位機的圖形執行動作。
3.1 限位開關程序
通過限位開關動作、PLC的輸入觸點動作,根據不同的端口就可以知道相應軸的電機是否回到了機械原點,讀取限位開關程序如圖9。
3.2 步進電機控制程序
步進電機驅動只要脈沖端口接收到脈沖并給定了方向信號就會運動到指定的位置,因為CPU ST40內部集成了三軸精確運動的脈沖發生器。

圖8 系統電氣連接圖

圖9 讀取限位開關程序
3.2.1 X軸的控制程序
下面介紹X軸的控制程序,如圖10 。
設定相應的單相控制方式,就是方向信號為高低電平的控制方式,來實現電機的正反轉功能,如圖11 。
設定電機的啟動和停止速度,這里使用的是默認值。設定步進電機的加減速和勻速運動的脈沖數據,防止負載過大造成丟步或者堵轉的現象,導致運動不準確,如圖12 。
通過編程軟件的運動控制向導,設定了X軸電機的運動控制參數,如圖13 。
AXISO_GOTO語句模塊:控制著電機的運動形式。
EN使能位:確保EN位保持開啟,知道DONE位動作,說明此次運動執行完成。
START位:動作表示執行該語句模塊。
Pos位:表示要移動的位置,是相對初始位置的絕對位置,就是要運行的脈沖個數,VD30寄存器接收上位機傳送來的數據進行運動。

圖10 X軸的控制程序

圖11 實現X軸電機正反轉功能的單相控制方式

圖12 設定X軸電機的啟動和停止速度

圖13 X軸電機的運動控制參數
Speed:為運行速度,X軸的運行速度是一定的,所以VD200的數據為一個常數。
Mode位:是來選擇運動類型的。0:表示絕對位置;1:相對位置。我們主要采用的是絕對位置的運動模式。
C_Dir:記錄當前的運動方向,正轉還是反轉。
Abort位:動作說明電機減速直到停止。
C_Pos 位:記錄著運動的當前位置,該值記錄在VD100寄存器中。
C_peed:表示當前的運動速度,該值記錄在VD200寄存器中。
Error:錯誤代碼輸出位,將該值記錄到VB100寄存器中。
3.2.2 Y軸的控制程序
下面介紹Y軸的控制程序設定,如圖14。
設定相應的單相控制方式,就是方向信號為高低電平的控制方式,來實現電機的正反轉功能,如圖15。

圖14 Y軸的控制程序

圖15 實現Y軸電機正反轉功能的單相控制方式
X軸和Y軸的運動的最大速度是一樣的,所以配置不需更改,默認就可以。設定了Y軸運動的加減速時間,X軸和Y軸的運動加減速是一樣的,不需更改,如圖16。
通過編程軟件的運動控制向導,設定了Y軸電機的運動控制參數,如圖17。
AXISO_GOTO語句:模塊控制著電機的運動形式。
EN使能位:確保EN位保持開啟,知道DONE位動作說明,此次運動執行完成。
START位動作:表示執行該語句模塊。
Pos位:表示要移動的位置,是相對初始位置的絕對位置,就是要運行的脈沖個數。VD32寄存器接收上位機傳送來的數據進行運動。
Speed:運行速度, Y軸的運行速度是一定的,所以VD202的數據為一個常數。
Mode位:選擇運動類型,0:絕對位置;1:相對位置;主要采用的是絕對位置的運動模式。
C_Dir:記錄當前的運動方向,正轉還是反轉。
Abort位:動作說明電機減速直到停止。
C_Pos 位:記錄著運動的當前位置,該值記錄在VD102寄存器中。
C_peed:表示當前的運動速度,該值記錄在
VD202寄存器中。

圖16 設定Y軸電機的啟動和停止速度

圖17 Y軸步進電機的的運動控制參數
Error:錯誤代碼輸出位,將該值記錄到VB102寄存器中。
3.2.3 Z軸的控制程序
Z軸主要是刀具的運動,所以加減速的時間會短一些,控制程序設定如圖18。
Z軸的控制方式和X、Y軸是一樣的。設定相應的單相控制方式,就是方向信號為高低電平的控制方式,來實現Z軸電機的正反轉功能,如圖19。
為了保護刀具,設定了Z軸啟動、停止速度和最大速度,低速運行以免損壞刀具。因為最大速度改變,加減速的時間也相應進行了修改,如圖20。
通過編程軟件的運動控制向導,設定了Z軸電機的運動控制參數,如圖21。
AXISO_GOTO語句:模塊控制著電機的運動形式。

圖18 Z軸的控制程序
EN使能位:確保EN位保持開啟,知道DONE位動作,說明此次運動執行完成。
START位動作:表示執行該語句模塊。
Pos位:表示要移動的位置,是相對初始位置,絕對位置是要運行的脈沖個數,VD32寄存器接收上位機傳送來的數據進行運動。
Speed:運行速度, Z軸的運行速度是一定的,所以VD204的數據為一個常數。
Mode位:選擇運動類型,0:絕對位置;1:相對位置;主要采用絕對位置的運動模式。
C_Dir:記錄當前的運動方向,正轉還是反轉。
Abort位:動作說明電機減速直到停止。

圖19 實現Z軸電機正反轉功能的單相控制方式

圖20 設定Z軸電機的啟動和停止速度

圖21 Z軸電機的運動控制參數
C_Pos 位:記錄著運動的當前位置,該值記錄在VD104寄存器中。
C_peed:表示當前的運動速度,該值記錄在VD204寄存器中。
Error:錯誤代碼輸出位,該值記錄到VB104寄存器中。
在每次運動的過程中,都會監測錯誤標志輸出位,這里主要介紹一些重要的錯誤代碼,其他可參照西門子官網的手冊。把錯誤代碼存儲在寄存器中,錯誤代碼如表1 所示。

表1 錯誤代碼
主要介紹了三軸雕刻機電氣部分,通過PLC控制步進電機來進行工作,并通過控制步進電機驅動器來實現步進電機的精確控制,實現三軸雕刻的加工動作。其中上位機軟件部分本文沒有進行說明。
Application of stepping motor in three axis engraving machine based on PLC control
Cai Dongsong, Dong Zengyong
( Department of mechanical and electrical engineering, Hangzhou Technician College, Hangzhou 311500,China )
This paper mainly introduces the precise position control of stepping motor by using CPU ST40, so as to realize the working requirements of three axis engraving machine. The design of the upper computer software of engraving machine will not be introduced in this paper.
PLC; S7-200 SMART; stepping motor; three axis engraving machine
TP273
B
1672-4852(2017)03-0030-08
2017-02-09.
蔡冬松(1989-),男 ,工程師.
(編輯:林小江)