楊鵬
(貴州商學(xué)院,貴州 貴陽(yáng) 550000)
隨著科學(xué)技術(shù)的日益發(fā)展,市場(chǎng)競(jìng)爭(zhēng)也愈加激烈,企業(yè)要想在市場(chǎng)競(jìng)爭(zhēng)中立足并發(fā)展,需要提高各項(xiàng)產(chǎn)品的研發(fā)與制造的效率。因而,快速成型技術(shù)逐漸進(jìn)入公眾的視野,該項(xiàng)技術(shù)的發(fā)展始于多項(xiàng)傳統(tǒng)計(jì)算機(jī)技術(shù),覆蓋了計(jì)算機(jī)輔助設(shè)計(jì)技術(shù)、計(jì)算機(jī)數(shù)控技術(shù)以及激光技術(shù)。快速成型技術(shù)中囊括了噴射技術(shù)等多種技術(shù)手段,可將其統(tǒng)稱(chēng)為3D打印技術(shù)。3D打印技術(shù)中的核心應(yīng)用即3D打印機(jī)[1]。就一般情況而言,3D打印機(jī)具有3個(gè)重要的性能指標(biāo),分別為打印速度、打印機(jī)x-y軸的打印精度以及打印尺寸。3D打印機(jī)工作的順利開(kāi)展需要借助步進(jìn)電動(dòng)機(jī)的驅(qū)動(dòng)力量[2]。在3D打印機(jī)工作過(guò)程中,步進(jìn)電機(jī)失步、傳動(dòng)帶與齒輪之間存在間隙等現(xiàn)象均可能會(huì)造成打印機(jī)出現(xiàn)較大誤差。因此提升3D打印技術(shù)的精度尤為關(guān)鍵。為提升3D打印的精度,本次研究基于步進(jìn)電機(jī)的反饋控制算法,設(shè)計(jì)了3D打印系統(tǒng)。
步進(jìn)電機(jī)是一種控制電機(jī),能夠?qū)⒚}沖信號(hào)轉(zhuǎn)化為線位移或者角位移,是一種機(jī)電一體化的執(zhí)行元件。步進(jìn)電機(jī)的控制方法包括開(kāi)環(huán)控制和閉環(huán)控制,其中開(kāi)環(huán)控制是指控制器每發(fā)送n個(gè)脈沖,步進(jìn)電機(jī)就會(huì)轉(zhuǎn)動(dòng)n步[3]。由于步進(jìn)電機(jī)開(kāi)環(huán)控制方式較為簡(jiǎn)單,大多數(shù)3D打印機(jī)執(zhí)行機(jī)通常都會(huì)選用這種方式,但只能通過(guò)降低打印速度的方式提高打印精度。閉環(huán)控制的步進(jìn)電機(jī)相對(duì)而言具有較高的精度、加速度以及速度等,其原理如圖1所示。

圖1 步進(jìn)電機(jī)閉環(huán)控制原理
在步進(jìn)電機(jī)的閉環(huán)控制方式中,3D打印機(jī)的位置或者速度可以通過(guò)傳感器進(jìn)行檢測(cè),負(fù)載的實(shí)際位置主要是通過(guò)反饋獲得。在此基礎(chǔ)上,3D打印機(jī)會(huì)生成相應(yīng)的脈沖序列,這種序列是通過(guò)控制器內(nèi)部的控制算法實(shí)現(xiàn)的,并且與步進(jìn)電機(jī)的驅(qū)動(dòng)相適應(yīng),同時(shí)這種脈沖序列會(huì)隨著負(fù)載位置的變化而變化[4]。閉環(huán)控制方式可以實(shí)現(xiàn)高精度的位置控制,對(duì)于3D打印精度的提升有重要作用[5]。本次研究為了提高3D打印的精度,提出了一種步進(jìn)電機(jī)位置反饋控制算法。這種算法應(yīng)用于3D打印機(jī)時(shí),主要是將步進(jìn)電機(jī)運(yùn)動(dòng)的每一步定義為一個(gè)事件,并通過(guò)傳感器檢測(cè)步進(jìn)電機(jī)的速度或者位置,實(shí)現(xiàn)打印的當(dāng)前狀態(tài)以及下一步的位置或者速度。設(shè)步進(jìn)電機(jī)第k次的步進(jìn)脈沖頻率為v*(k);p(k)為第k次的位置;v(k)為第k次所測(cè)3D打印機(jī)的速度。假設(shè)v*(k)與p(k)之間滿(mǎn)足式(1)所示的函數(shù)關(guān)系:
v*(k)=φ(p(k))
(1)
則第k+1次的理想速度如式(2)所示。
v*(k+1)=φ(p(k))+sgn(v(k))
(2)
其中sgn是符號(hào)函數(shù),如式(3)所示。

(3)

(4)

3D打印控制系統(tǒng)大多是步進(jìn)電機(jī)開(kāi)環(huán)控制系統(tǒng),由于3D打印機(jī)中皮帶和齒輪之間的間隙會(huì)導(dǎo)致精度不高,因而本次研究利用步進(jìn)電機(jī)的反饋控制算法提高3D打印機(jī)的精度[6-7]。在3D打印機(jī)控制系統(tǒng)中,檢測(cè)步進(jìn)電機(jī)的當(dāng)前一步以確定其下一步的位置或者速度,使得步進(jìn)電機(jī)能夠準(zhǔn)確且快速地跟蹤給定軌跡。3D打印機(jī)的軌跡跟蹤控制算法流程如圖2所示。

圖2 3D打印機(jī)軌跡跟蹤控制算法流程
假如某個(gè)時(shí)刻3D打印機(jī)的噴頭正在讀取第hx個(gè)指令序列,并且移動(dòng)總步數(shù)在x方向上為kx,或者正在讀取第hy個(gè)指令序列,在y方向上移動(dòng)總步數(shù)為ky。打印機(jī)的兩個(gè)讀取模塊讀取指令速度v*(hx)、v*(hy)以及指令位置p*(hx)、p*(hy),其中v*(hx)、p*(hx)分別為3D打印機(jī)噴頭x方向上第hx個(gè)指令序列的理想速度和理想位置,v*(hy)、p*(hy)則分別為3D打印機(jī)噴頭在y方向上第hy個(gè)指令序列的理想速度和理想位置。3D打印機(jī)的打印噴頭在x、y方向上的實(shí)際位置p(kx)和p(ky)主要利用位置傳感器進(jìn)行采集,其中p(kx)、p(ky)分別表示的是3D打印機(jī)噴頭在x、y方向上第kx、ky步的位置。3D打印機(jī)噴頭的位置判斷模塊通過(guò)比較實(shí)際位置與理想位置,進(jìn)行打印機(jī)噴頭的位置判斷,如果p(kx)=p*(hx),p(ky)=p*(hy),則不再進(jìn)行計(jì)算,而是進(jìn)行下一個(gè)指令位置與速度的讀取,分別為p*(hx+1)、p*(hy+1)和v*(hx+1)、v*(hy+1)。位置偏差計(jì)算模塊則根據(jù)實(shí)際位置與所設(shè)定的位置進(jìn)行計(jì)算,得到3D打印機(jī)噴頭的位置偏差,如式(5)和式(6)所示。
Δp(kx)=p(kx)-p*(hx)
(5)
Δp(ky)=p(ky)-p*(hy)
(6)
根據(jù)理想速度與位置偏差,打印機(jī)噴頭的期望速度計(jì)算模塊能夠計(jì)算得到下一步的期望速度,計(jì)算表達(dá)式如式(7)和式(8)所示。
(7)
(8)
其中φ(x)=-αx是速度變化函數(shù),此次研究中設(shè)定α=0.6。3D打印機(jī)噴頭的速度變化模塊根據(jù)期望速度和噴頭的實(shí)際速度,可以得到打印機(jī)噴頭的速度變化率,計(jì)算表達(dá)式如式(9)和式(10)所示。
(9)
(10)

v(ky+1)=v(ky)+sgn(Δ(ky+1))×Δ*
(11)
此次研究利用步進(jìn)電機(jī)反饋控制系統(tǒng)提高3D打印的準(zhǔn)確度,該系統(tǒng)最重要的部分是數(shù)據(jù)傳輸模塊。數(shù)據(jù)傳輸模塊主要由微控制器進(jìn)行控制,且所涉及的變量包括3D打印機(jī)的最小位置、3D打印機(jī)的最大位置、目標(biāo)位置、目標(biāo)速度、歸零方向以及歸零速度[8-9]。與此同時(shí),檢測(cè)打印機(jī)噴頭的位置對(duì)于提高3D打印機(jī)閉環(huán)控制算法的準(zhǔn)確性十分重要。位置數(shù)據(jù)采集系統(tǒng)所用的傳感器是磁柵傳感器AS5311,并且其中的微控制器都設(shè)有同步串行接口,從而微控制器可以通過(guò)這些接口獲取打印機(jī)傳感器的位置數(shù)據(jù),微控制器的同步串行接口輸出時(shí)序如圖3所示。

圖3 同步串行接口輸出時(shí)序
同步串行接口的設(shè)備具有多種特性,主要包括以下幾個(gè)方面:一是同步串行接口設(shè)備可以配置為主機(jī)或者從機(jī);二是同步串行接口具有多種數(shù)據(jù)格式;三是同步串行接口可以進(jìn)行多位數(shù)據(jù)的傳輸;四是可以選擇數(shù)據(jù)的輸出順序,以確定最低位在先還是最高位在先。由同步串行接口輸出時(shí)序可以看出,當(dāng)片選端口由高電平轉(zhuǎn)變?yōu)榈碗娖綍r(shí),傳感器就進(jìn)行數(shù)據(jù)輸出,并且系統(tǒng)完成采集數(shù)據(jù)的讀取在CLK的上升沿。該系統(tǒng)的位置數(shù)據(jù)采集模塊通常用于實(shí)現(xiàn)數(shù)據(jù)讀取、有效性判斷以及數(shù)據(jù)處理。進(jìn)行數(shù)據(jù)讀取時(shí),微控制器會(huì)拉低片選線,以便時(shí)鐘信號(hào)線上的每一處上升沿都可以讀取DO端口的1位數(shù)據(jù),數(shù)據(jù)讀取完后才能再將片選線CSn拉高。
為了驗(yàn)證本次研究中的控制算法在提高3D打印機(jī)精度應(yīng)用上的有效性,本次研究的性能測(cè)試在3D打印機(jī)實(shí)驗(yàn)平臺(tái)上進(jìn)行,測(cè)試內(nèi)容以3D打印機(jī)在開(kāi)環(huán)和閉環(huán)控制下的軌跡跟蹤性能為主。測(cè)試時(shí),3D打印機(jī)在特定的軌跡上運(yùn)行,而后分別采集x軸、y軸控制器的位置數(shù)據(jù),并繪制出相應(yīng)的軌跡點(diǎn)。圖4為x軸和y軸開(kāi)環(huán)控制的軌跡跟蹤圖。

圖4 x軸和y軸開(kāi)環(huán)控制的軌跡跟蹤圖
從圖4可以看出,x軸和y軸開(kāi)環(huán)控制的情況下,實(shí)際位置和理想位置之間都存在一定的偏差。其中,x軸開(kāi)環(huán)控制時(shí),實(shí)際位置和理想位置之間在1.25s左右產(chǎn)生位置誤差,并且實(shí)際位置和理想位置在-30mm左右產(chǎn)生偏差,x軸開(kāi)環(huán)控制的軌跡誤差在3.452mm左右。y軸開(kāi)環(huán)控制時(shí),實(shí)際位置和理想位置之間在2.5s左右產(chǎn)生位置偏差,且二者同樣在-30mm左右產(chǎn)生位置偏差,y軸開(kāi)環(huán)控制的軌跡誤差在3.575mm左右。3D打印機(jī)在開(kāi)環(huán)控制狀態(tài)下會(huì)產(chǎn)生較為明顯的誤差,這是由于打印機(jī)在折返處時(shí),步進(jìn)電機(jī)需要轉(zhuǎn)變方向。同樣地,x軸和y軸閉環(huán)控制下的軌跡跟蹤情況如圖5所示(本刊黑白印刷,相關(guān)疑問(wèn)咨詢(xún)作者)。

圖5 x軸和y軸閉環(huán)控制的軌跡跟蹤圖
從圖5中可以看出,3D打印機(jī)在閉環(huán)控制下的軌跡跟蹤實(shí)際位置和理想位置基本重合,誤差較小。對(duì)于x軸閉環(huán)控制的軌跡跟蹤而言,3D打印機(jī)在打印開(kāi)始后的2s,實(shí)際位置和理想位置之間存在一定的偏差,但在約2.3s以后,打印機(jī)的實(shí)際位置和理想位置基本重合;對(duì)于y軸閉環(huán)控制的軌跡跟蹤而言,3D打印機(jī)在打印開(kāi)始后的3s,實(shí)際位置和理想位置之間存在一定的偏差,但在約3.3s以后,打印機(jī)的實(shí)際位置和理想位置同樣近乎重合。閉環(huán)控制下的軌跡跟蹤誤差大大減小,其中x軸閉環(huán)控制的軌跡誤差約為0.413mm,y軸閉環(huán)控制的軌跡誤差約為0.504mm,二者相對(duì)于開(kāi)環(huán)控制而言,平均誤差分別減小了88%和85%。
為了更加直觀地說(shuō)明打印機(jī)速度和精度的變化,本次研究在速度為90mm/s、120mm/s的情況下得到3D打印機(jī)x軸的開(kāi)環(huán)控制和閉環(huán)控制軌跡跟蹤效果,如圖6所示。圖6為x軸開(kāi)環(huán)控制、閉環(huán)控制下的軌跡跟蹤結(jié)果,速度分別為90mm/s和120mm/s。從圖中可以看出,x軸開(kāi)環(huán)控制下的3D打印機(jī)實(shí)際位置和理想位置之間的偏差較大,其中速度為90mm/s時(shí),x軸開(kāi)環(huán)控制實(shí)際位置和理想位置約在1.0s左右產(chǎn)生偏差,且在圖像上升階段的偏差大于圖像下降階段的偏差。速度為120mm/s時(shí),x軸開(kāi)環(huán)控制時(shí)3D打印機(jī)的實(shí)際位置和理想位置約在6.5s左右產(chǎn)生偏差,并且軌跡偏差相對(duì)于速度90mm/s時(shí)更大,由此說(shuō)明打印機(jī)的速度越大,其軌跡偏差也相對(duì)較大。而對(duì)于x軸閉環(huán)控制的情況而言,速度為90mm/s時(shí),實(shí)際位置和理想位置之間在2s左右存在一點(diǎn)偏差,在其余時(shí)間二者基本重合;速度為120mm/s時(shí),x軸閉環(huán)控制的3D打印機(jī)實(shí)際位置和理想位置之間基本完全重合。由此可見(jiàn),本次研究所涉及的反饋控制算法能夠有效提高3D打印機(jī)的打印精度。

圖6 不同速度下x軸開(kāi)環(huán)控制和閉環(huán)控制軌跡
提升3D打印技術(shù)的精度有利于提升企業(yè)生產(chǎn)效率。本次研究在分析3D打印技術(shù)的精度提升問(wèn)題時(shí),以熔融沉積性3D打印機(jī)為研究對(duì)象,利用步進(jìn)電機(jī)反饋控制算法設(shè)計(jì)了3D打印系統(tǒng)。在此基礎(chǔ)上,對(duì)該反饋控制算法下3D打印機(jī)系統(tǒng)的性能進(jìn)行測(cè)試,主要測(cè)試內(nèi)容包括打印機(jī)的位置和速度。研究結(jié)果表明:對(duì)于位置測(cè)試而言,開(kāi)環(huán)控制下的3D打印機(jī)系統(tǒng)實(shí)際位置和理想位置之間存在較大的偏差,而閉環(huán)控制下3D打印機(jī)的理想位置與實(shí)際位置的軌跡基本重合;對(duì)于速度性能測(cè)試而言,開(kāi)環(huán)控制時(shí)打印機(jī)的速度越大,其軌跡偏差也越大,而3D打印機(jī)閉環(huán)控制下的實(shí)際位置和理想位置的軌跡基本重合。由此說(shuō)明該反饋控制算法能夠有效提高3D打印機(jī)的打印精度。本次研究雖然驗(yàn)證了基于反饋控制的3D打印系統(tǒng)的有效性,但其廣泛適用性還有待進(jìn)一步研究。