李愛竹,徐柳娟
(1.杭州東城電子有限公司,浙江杭州310021;2.浙江水利水電學院電氣工程系,浙江杭州310018)
在工業(yè)控制領(lǐng)域,機械控制部件驅(qū)動多采用交流電機、直流電機、步進電機,其中步進電機最廣泛地應用于機電一體化產(chǎn)品中,特別是數(shù)控機床等機電控制的設備中。步進電機是一種將電脈沖信號轉(zhuǎn)換成相應的角位移的機電元件[1]。它轉(zhuǎn)動的角度與輸入脈沖的個數(shù)成正比,轉(zhuǎn)動的速度與輸入脈沖的頻率成正比[2-3]。每接收到一個電脈沖信號,步進電機就按設定的方向轉(zhuǎn)動一個固定的角度,這個角度稱為“步距角”[4-5]。電機總轉(zhuǎn)動角度由輸入脈沖數(shù)控制,轉(zhuǎn)速由輸入脈沖信號的頻率控制。步進電機驅(qū)動方式一般有單電壓功率驅(qū)動、雙電壓功率驅(qū)動、高低壓功率驅(qū)動、集成功率驅(qū)動芯片等,其中集成功率驅(qū)動芯片方式被最為廣泛的使用[6-7]。步進電機集成功率驅(qū)動電路所采用的常規(guī)芯片有ULN2003、L298、3977等,這些芯片往往有驅(qū)動電流不夠、外圍電路復雜等缺點;該系統(tǒng)采用的步進電機驅(qū)動芯片為東芝公司的TB6560,很好地解決了這些問題。TB6560由于內(nèi)部集成了續(xù)流二極管,4個輸出口不用接二極管,這樣很明顯地簡化了外圍電路;TB6560單相最大輸出電流3.5 A,大大提升了步進電機的驅(qū)動能力。該系統(tǒng)采用ALTERA公司的CPLD芯片EPM240T100作為核心控制芯片,充分發(fā)揮CPLD芯片豐富的I/O口資源優(yōu)勢,配置4路TB6560步進電機驅(qū)動模塊的控制接口,最高可實現(xiàn)4路步進電機的實時控制;從而滿足機械控制、紡織設備、機器人控制等實際應用的需要。
步進電機CPLD控制系統(tǒng)由TB6560電機驅(qū)動模塊、CPLD核心控制板、按鍵顯示模塊3個部分組成,系統(tǒng)框圖如圖1所示。
圖1 步進電機CPLD控制系統(tǒng)框圖
TB6560步進電機驅(qū)動模塊包括TB6560步進電機驅(qū)動芯片以及外圍電路、EPM240T100控制接口電路。EPM240T100的I/O輸出為3.3 V電平,TB6560驅(qū)動芯片的控制引腳電壓為5 V電平,EPM240T100控制接口電路完成EPM240T100輸出的3.3 V控制信號轉(zhuǎn)5 V的功能。
CPLD核心控制板配置EPM240T100型號的CPLD芯片,實現(xiàn)TB6560步進電機驅(qū)動模塊以及按鍵顯示模塊的實時控制功能。系統(tǒng)配置4路TB6560步進電機驅(qū)動模塊的控制接口,實現(xiàn)4路步進電機的驅(qū)動,充分滿足了實際應用中多路電機控制的需要。
按鍵顯示模塊由獨立式按鍵、74LS164驅(qū)動的靜態(tài)LED顯示電路組成,完成步進電機的啟動、停止、正/反轉(zhuǎn)、加速、減速等控制以及控制信息的實時顯示功能。
TB6560是東芝公司的步進電機驅(qū)動芯片,內(nèi)部集成雙全橋MOSFET驅(qū)動,最高耐壓40 V,單相輸出最大電流3.5 A;具有整步、1/2、1/8、1/16細分方式,實現(xiàn)步進電機的高精度位移控制;內(nèi)置溫度保護芯片,溫度大于150℃時自動斷開所有輸出;具有過流保護。電機二相輸出接口內(nèi)部集成了續(xù)流二極管,不需外接二極管,簡化了外圍電路。
完整的步進電機驅(qū)動模塊包括電源、接口隔離、控制信號產(chǎn)生、前置放大和功率開關(guān)電路,以及電流控制、過流檢測與保護電路等[8]。TB6560集成步進電機驅(qū)動芯片,將這一系列功能集成于一塊芯片,簡化了硬件電路設計,提高了電機驅(qū)動模塊的性價比和穩(wěn)定性。TB6560電機驅(qū)動模塊原理圖如圖2所示。
圖2中,使能信號EN用來控制步進電機的啟動,EN信號為高電平,電機工作;EN信號為低電平,電機停轉(zhuǎn)。電機正、反轉(zhuǎn)控制信號DIR用來控制步進電機的轉(zhuǎn)向,DIR信號為低電平,電機正轉(zhuǎn);DIR信號為高電平,電機反轉(zhuǎn)。MOTRST信號用來實現(xiàn)電機的復位,實現(xiàn)電機的初始化,低電平有效。
TB6560參數(shù)設置由TB6560的M2、M1、TQ2、TQ1引腳控制,具體如表1所示。M2、M1用來設置步進電機的步距角,分為整步、半步、1/16步距、1/8步距;其中1/16步距為16細分,1/8步距為8細分,這里將M2、M1設立為“11”,即1/8步距角。系統(tǒng)所接步進電機的轉(zhuǎn)子齒為50齒,設置為1/8步距角模式,電機轉(zhuǎn)1圈需要400個SCLK。CPLD芯片EPM240T100輸出1個SCLK,步進電機旋轉(zhuǎn)0.9°,可以實現(xiàn)高精度的位移控制。
表1 TB6560參數(shù)設置表
TQ2、TQ1用來設置步進電機的扭力電流,實現(xiàn)電機在不工作情況下,扭力電流降低,從而降低電機發(fā)熱,防止電機因為過熱而燒壞。步進電機運行狀態(tài)下,EPM240T100將TQ2、TQ1設置為“00”,即全流模式;步進電機靜止狀態(tài)下,EPM240T100將TQ2、TQ1設置為“10”,即電機靜態(tài)情況下,扭力電流減半。
圖2 步進電驅(qū)動電路TB6560原理圖
TB6560電機驅(qū)動芯片的驅(qū)動電流由NFA引腳、NFB引腳的外置電阻RNF來設置,NFA引腳為A路工作電流設置,NFB引腳為B路工作電流設置;這里RNF選擇0.25 Ω,驅(qū)動電流設置為2 A。
OSC引腳的COSC電容用來設置TB6560的諧振頻率,COSC一般在100 pF~1 000 pF之間,諧振頻率為400 Hz~44 kHz之間。這里COSC為C1,取330 pF,TB6560的諧振頻率為130 kHz。
TB6560步進電機驅(qū)動系統(tǒng)控制部分采用EPM240T100的CPLD芯片,該芯片是ALTERA公司MAXII系列的CPLD,具有240個邏輯單元,192個宏單元,100個引腳,80個I/O,封裝采用TQFP100[9]。
TB6560的控制程序采用VHDL編寫,EPM240T100的核心控制進程包括電機轉(zhuǎn)速控制進程、TB6560運行步數(shù)計數(shù)進程[10-12]。
該進程通過一個數(shù)控分配器來實現(xiàn)電機轉(zhuǎn)速的控制,根據(jù)系統(tǒng)預置的電機轉(zhuǎn)速值speed來確定數(shù)控分頻值,從而實現(xiàn)電機轉(zhuǎn)速的控制。其中,轉(zhuǎn)速加減按鍵可以實現(xiàn)電機轉(zhuǎn)速的實時控制。
TB6560運行步數(shù)計數(shù)、控制數(shù)據(jù)輸出進程代碼如下:
該進程在復位信號reset為0,系統(tǒng)上電復位時,實現(xiàn)TB6560芯片的控制參數(shù)初始化。DIR電機正、反轉(zhuǎn)控制信號設置為0,即正轉(zhuǎn);M2、M1電機步距角控制信號設置為“11”,即1/8步距角;TQ2、TQ1電機全半流控制信號設置為“10”,即電機靜態(tài)下,扭力電流減半。
電機啟動按鍵按下,經(jīng)過EPM240T100的按鍵抗抖動處理,產(chǎn)生啟動信號start。啟動信號start將TB6560使能信號EN置高電平,電機開始運行;TQ2、TQ1電機全半流控制信號設置為“00”,即電機運行狀態(tài)下,扭力電流處于全流狀態(tài)。同時該進程配置一個計數(shù)器,實時記錄步進電機的運行步數(shù),當電機運行計數(shù)值step_count為400時,EPM240T100停止輸出SCLK,EN置低電平,電機停止運行,TQ2、TQ1電機全半流控制信號設置為“10”,即扭力電流減半。
TB6560的控制程序Quartus II軟件仿真波形如圖3所示,可以滿足系統(tǒng)的控制時序要求。整個TB6560的控制程序?qū)崿F(xiàn)模塊化,當系統(tǒng)需要控制多路步進電機時,只要調(diào)用對應的模塊,就可以實現(xiàn)多路電機控制的功能。
圖3 TB6560控制程序仿真圖
EPM240T100通過JTAG下載線可以實現(xiàn)步進電機控制程序的在線調(diào)試,根據(jù)步進電機實際運行與示波器測試波形的比較,來驗證整個控制系統(tǒng)的功能。調(diào)試完成后,示波器測試波形如圖4所示。CH1為TB6560使能信號EN,CH2為步進電機控制脈沖SCLK。
圖4 TB6560控制信號示波器測試波形
EPM240T100將TB6560使能信號EN置高電平后,電機開始運行;步進電機控制脈沖SCLK產(chǎn)生波形;當SCLK產(chǎn)生400個脈沖,電機正好轉(zhuǎn)1圈,EPM240T100停止輸出SCLK,EN置低電平,電機停止運行。
基于EPM240T100和TB6560的步進電機控制系統(tǒng)已經(jīng)完成PCB板的制作以及軟、硬件調(diào)試,可以很好地完成步進電機的控制功能,具有啟動、暫停、正/反轉(zhuǎn)、連續(xù)運行、加速、減速等多種控制功能。EPM240T100有豐富的I/O資源,系統(tǒng)具有4路TB6560電機驅(qū)動模塊的接口,可以實現(xiàn)4路步進電機的實時控制功能;具有硬件電路簡單、性價比高、穩(wěn)定性高、應用廣泛等優(yōu)點,所設計的步進電機驅(qū)動器有著廣泛的應用前景。
[1]胡惟文,蔡劍華,王先春.基于FPGA的步進電機均勻細分驅(qū)動器的實現(xiàn)[J].微計算機信息,2008,24(2):183-184.
[2]吳益飛.基于MSP430單片機的云臺控制系統(tǒng)設計與實現(xiàn)[J].微計算機信息,2006,22(72):90-93.
[3]武亞平.基于單片機技術(shù)研究DxD系列包裝機的控制系統(tǒng)[J].包裝與食品機械,2013(2):31-33.
[4]胡云卿,白建華,詹曉東.基于FPGA的三相步進電機控制器[J].機電工程,2009,26(1):85-88.
[5]楊和平,周旋,童軍.步進電機的特點及應用[J].黑龍江科技信息,2007(1):10-12.
[6]杜坤梅.電機控制技術(shù)[M].哈爾濱:哈爾濱工業(yè)大學出版社,2002.
[7]周忠輝.步進電機驅(qū)動的實現(xiàn)方法[J].儀表技術(shù)與傳感器,2004(11):60-61.
[8]潘海燕,姚朝霞.基于L297的兩相步進電機驅(qū)動器[J].機電工程,2007,24(4):86-88.
[9]陳曙光.基于EPM240T的CPLD開發(fā)板設計與實現(xiàn)[J].天津職業(yè)大學學報,2010,19(3):80-82.
[10]王海華,宋蕾.基于CPLD的步進電機控制器設計[J].微計算機信息,2008,24(10):99-100.
[11]龐淑娟,倪受東.基于FPGA的步進電機速度控制器的設計[J].新技術(shù)新工藝,2008(4):32-33.
[12]金元郁,李勇,李園園.基于FPGA的步進電機控制器設計[J].單片機與嵌入式系統(tǒng)應用,2007(3):70-71.