劉媛媛
(1.無(wú)錫科技職業(yè)學(xué)院 機(jī)電學(xué)院,江蘇 無(wú)錫 214028;2.江南大學(xué) 自動(dòng)化研究所,江蘇 無(wú)錫 214122)
?
基于PLC的絲杠回程誤差檢測(cè)和補(bǔ)償方法*
劉媛媛1,2
(1.無(wú)錫科技職業(yè)學(xué)院 機(jī)電學(xué)院,江蘇 無(wú)錫214028;2.江南大學(xué) 自動(dòng)化研究所,江蘇 無(wú)錫214122)
為了克服梯形絲桿螺母?jìng)鲃?dòng)換向時(shí)回程誤差對(duì)定位精度的影響,對(duì)直角型機(jī)械手的定位問(wèn)題進(jìn)行了研究,提出了一種基于S7-200PLC的定位控制方法,可以快速檢測(cè)絲桿某一位置處的回程誤差,并通過(guò)修改程序參數(shù)達(dá)到克服回程誤差,實(shí)現(xiàn)準(zhǔn)確定位的目的。
絲桿螺母?jìng)鲃?dòng);回程誤差;MAP庫(kù)
準(zhǔn)確的定位控制在自動(dòng)化生產(chǎn)線(xiàn)中有著廣泛的應(yīng)用,由步進(jìn)或伺服電機(jī)帶動(dòng)絲桿螺母實(shí)現(xiàn)定位移動(dòng)是較常見(jiàn)的傳動(dòng)方式。絲桿在正反換向運(yùn)行時(shí)將產(chǎn)生回程誤差,影響傳動(dòng)的精度,常常采用機(jī)械調(diào)整方法來(lái)減小或消除絲桿軸向間隙[1]。目前國(guó)內(nèi)外對(duì)絲桿回程誤差補(bǔ)償方法的研究主要集中于數(shù)控機(jī)床滾珠絲桿螺距誤差的補(bǔ)償問(wèn)題,并針對(duì)不同的數(shù)控系統(tǒng)提出相應(yīng)的解決方法[2-4]。對(duì)于未安裝數(shù)控系統(tǒng)的控制設(shè)備的絲桿回程誤差檢測(cè)和補(bǔ)償方法鮮有文獻(xiàn)研究,本文在不外加機(jī)械調(diào)整機(jī)構(gòu)的前提下,利用PLC軟件編程的方法檢測(cè)回程誤差并彌補(bǔ)其對(duì)定位精度造成的影響。
本課題研究的直角型機(jī)械手X、Z軸方向利用兩相式步進(jìn)電機(jī)帶動(dòng)梯形絲桿螺母副實(shí)現(xiàn)位置移動(dòng),采用西門(mén)子S7-200系列PLC作為控制器,連接觸摸屏實(shí)時(shí)顯示狀態(tài),實(shí)現(xiàn)機(jī)械手從料站到倉(cāng)庫(kù)倉(cāng)位間的自動(dòng)取放料控制,其定位控制系統(tǒng)結(jié)構(gòu)示意圖如圖1所示。本課題要求機(jī)械手能夠準(zhǔn)確定位到倉(cāng)庫(kù)倉(cāng)位,從而實(shí)現(xiàn)物料的取放動(dòng)作,機(jī)械手以X、Z軸兩個(gè)方向的坐標(biāo)原點(diǎn)為參考點(diǎn),再定位移動(dòng)相應(yīng)的距離至指定倉(cāng)位。如果用高速脈沖串輸出PTO(Pulse Train Output),找坐標(biāo)原點(diǎn)編程困難且不準(zhǔn)確,較常用的方法是采用位控模塊EM253或西門(mén)子脈沖輸出指令MAP庫(kù)。本課題采用MAP庫(kù)實(shí)現(xiàn)步進(jìn)電機(jī)的定位控制[5-6]。
圖1 定位控制系統(tǒng)結(jié)構(gòu)示意圖
200系列PLC本體PTO提供了應(yīng)用庫(kù)MAP SERV Q0.0 和 MAP SERV Q0.1,分別用于Q0.0和Q0.1的脈沖串輸出。MAP庫(kù)各個(gè)塊的功能簡(jiǎn)要介紹如下:
Q0_X_CTRL,參數(shù)定義和控制;
Q0_X_MoveRelative,執(zhí)行一次相對(duì)位移運(yùn)動(dòng);
Q0_X_MoveAbsolute,執(zhí)行一次絕對(duì)位移運(yùn)動(dòng);
Q0_X_MoveVelocity,按預(yù)設(shè)速度運(yùn)動(dòng);
Q0_X_Home,尋找參考點(diǎn)位置;
Q0_X_Stop,停止運(yùn)動(dòng)[7-8]。
編程調(diào)試時(shí),首先編寫(xiě)手動(dòng)程序?qū)C(jī)械手進(jìn)行定位移動(dòng),在Q0_0 _CTRL中定義X軸當(dāng)前位置C-Pos對(duì)應(yīng)脈沖值存在VD1000中,如圖2所示,同時(shí)用觸摸屏實(shí)時(shí)顯示VD1000中的脈沖值,將倉(cāng)庫(kù)每個(gè)倉(cāng)位X軸的坐標(biāo)位置記錄下來(lái),倉(cāng)位Z軸坐標(biāo)位置參照以上方法。然后編寫(xiě)自動(dòng)程序,機(jī)械手可以根據(jù)物料的種類(lèi)不同自動(dòng)定位到相應(yīng)的倉(cāng)位,即移動(dòng)到指定的X、Z軸坐標(biāo)位置。
圖2 Q0_0 _CTRL參數(shù)定義
當(dāng)機(jī)械手移動(dòng)方向改變時(shí),由于存在絲桿回程誤差,按手動(dòng)測(cè)量得到的倉(cāng)位坐標(biāo)脈沖數(shù)不能讓機(jī)械手移動(dòng)到準(zhǔn)確的位置。在無(wú)機(jī)械調(diào)整裝置的前提下,可以通過(guò)調(diào)節(jié)程序參數(shù)的方法達(dá)到準(zhǔn)確定位的目的。
圖3 X軸回程誤差檢測(cè)系統(tǒng)示意圖
誤差檢測(cè)的方法如下:以X軸為例回程誤差檢測(cè)系統(tǒng)如圖3所示,在手動(dòng)狀態(tài)下,讓X軸移動(dòng)到某一位置點(diǎn)A,將微動(dòng)開(kāi)關(guān)SM3安裝在機(jī)械手X軸底座上,引起微動(dòng)開(kāi)關(guān)動(dòng)作的滾輪的位置如圖3所示。首先設(shè)定步進(jìn)電機(jī)正向旋轉(zhuǎn),按下啟動(dòng)按鈕電機(jī)旋轉(zhuǎn),并停止于A(yíng)位置處,記錄下滾輪所對(duì)應(yīng)的刻線(xiàn)位置點(diǎn)和VD1000的脈沖值n1。再次按下啟動(dòng)按鈕,步進(jìn)電機(jī)繼續(xù)正向旋轉(zhuǎn),此時(shí)無(wú)間隙誤差,工作臺(tái)直接移動(dòng),微動(dòng)開(kāi)關(guān)SM3的常開(kāi)觸點(diǎn)連接PLC輸入口I1.0,滾輪帶動(dòng)杠桿機(jī)構(gòu)使動(dòng)作簧片位移到臨界點(diǎn)時(shí)常開(kāi)觸點(diǎn)閉合,I1.0有信號(hào)時(shí)調(diào)用Q0_0_Stop,讓X軸停止運(yùn)動(dòng)[8]。再次記錄VD1000的脈沖值n2,n1和n2的差值就是在A(yíng)位置處從電機(jī)轉(zhuǎn)動(dòng)到停止,機(jī)械手工作臺(tái)的實(shí)際位移量對(duì)應(yīng)的脈沖值,記為n3。
與上述過(guò)程相似,設(shè)定步進(jìn)電機(jī)反向旋轉(zhuǎn)并停于位置A,記錄VD1000的脈沖值n4。設(shè)定旋轉(zhuǎn)方向?yàn)檎?,按下啟?dòng)按鈕,X軸步進(jìn)電機(jī)接收脈沖信號(hào)開(kāi)始旋轉(zhuǎn),因回程誤差的存在步進(jìn)電機(jī)轉(zhuǎn)動(dòng)后不會(huì)立即帶動(dòng)工作臺(tái)面移動(dòng),克服回程誤差后工作臺(tái)移動(dòng)并壓合SM3,工作臺(tái)停止移動(dòng),記錄VD1000的脈沖值n5,n4和n5的差值,記為n6,就是在A(yíng)位置處回程誤差與工作臺(tái)位移量之和所對(duì)應(yīng)的脈沖數(shù)。
利用觸摸屏實(shí)時(shí)觀(guān)察X軸位移對(duì)應(yīng)的脈沖值的變化。脈沖值的變化量所對(duì)應(yīng)的X軸的實(shí)際位移量與微動(dòng)開(kāi)關(guān)位移量的差值就是絲桿在這一位置的回程誤差。計(jì)算說(shuō)明:步進(jìn)電機(jī)每轉(zhuǎn)步數(shù)400,觸摸屏VD1000脈沖變化量N=n6-n3,絲桿導(dǎo)程L=2mm,回程誤差Δ(mm)計(jì)算公式:
以“Leetro”品牌的DM4250E二相四線(xiàn)制步進(jìn)電機(jī)為例,設(shè)定細(xì)分?jǐn)?shù)2,步進(jìn)電機(jī)每轉(zhuǎn)步數(shù)400,絲桿導(dǎo)程L=2mm,理論上誤差補(bǔ)償?shù)木瓤蛇_(dá)到5μm,如果增大步進(jìn)電機(jī)細(xì)分?jǐn)?shù),則理論上誤差補(bǔ)償精度還可提高。鑒于本檢測(cè)系統(tǒng)微動(dòng)開(kāi)關(guān)的定位精度不高,故本方法實(shí)際的誤差檢測(cè)精度適用于一般精度的梯形絲桿螺母的準(zhǔn)確定位,如生產(chǎn)線(xiàn)環(huán)節(jié)中的定位控制,不適用于高精度的滾珠絲桿螺母?jìng)鲃?dòng)的螺距誤差補(bǔ)償[9-10]。
經(jīng)過(guò)反復(fù)試驗(yàn),這根梯形絲桿的回程誤差大約是1/4個(gè)絲桿導(dǎo)程,根據(jù)這個(gè)原理,在編寫(xiě)自動(dòng)運(yùn)行程序時(shí),通過(guò)修改X軸坐標(biāo)存儲(chǔ)位VD500和Z軸坐標(biāo)存儲(chǔ)位VD504的值對(duì)回程誤差進(jìn)行補(bǔ)償。在方向改變時(shí)增加或減少100個(gè)脈沖,用軟件方法來(lái)彌補(bǔ)硬件的問(wèn)題。
圖4為機(jī)械手X軸的運(yùn)動(dòng)示意圖,右側(cè)微動(dòng)開(kāi)關(guān)SM1作為坐標(biāo)原點(diǎn),向左運(yùn)動(dòng)為正向,向右運(yùn)動(dòng)為反向。圖中虛線(xiàn)處為二號(hào)倉(cāng)位X軸坐標(biāo)位置。手動(dòng)程序中機(jī)械手自坐標(biāo)原點(diǎn)向左運(yùn)動(dòng),測(cè)得二號(hào)倉(cāng)位對(duì)應(yīng)的VD1000中脈沖值為18600。在機(jī)械手自動(dòng)控制中,要求機(jī)械手移動(dòng)到物料站抓料,然后返回到二號(hào)倉(cāng)位放料,在正向切換到反向運(yùn)行時(shí)設(shè)定X軸坐標(biāo)存儲(chǔ)位VD500值為18600-100=18500,反向多退回100脈沖的位置以彌補(bǔ)回程誤差。如果是由反向切換到正向,則VD500應(yīng)設(shè)定為18600+100=18700。下圖5是自動(dòng)程序中2號(hào)倉(cāng)位的X、Z軸定位程序。
圖4 X軸運(yùn)動(dòng)示意圖
圖5 X、Z軸自動(dòng)定位程序(部分)
本文以直角型機(jī)械手X、Z軸定位移動(dòng)為研究對(duì)象,通過(guò)PLC編程調(diào)試的方法測(cè)量絲桿在某一位置的回程誤差大小,并在機(jī)械手自動(dòng)控制程序中通過(guò)修改程序參數(shù)的方法達(dá)到彌補(bǔ)絲桿回程誤差的目的。實(shí)踐證明該方法方便有效,并可以根據(jù)要求實(shí)時(shí)快速地檢測(cè)絲桿任一位置處的回程誤差值。
[1] 龐振基,黃其圣. 精密機(jī)械設(shè)計(jì)[M]. 北京:機(jī)械工業(yè)出版社,2003.
[2] 陳剛,羌鈴鈴. 數(shù)控系統(tǒng)中螺距補(bǔ)償?shù)脑砼c設(shè)計(jì)[J]. 機(jī)械制造與自動(dòng)化,2015,44(1):25-28.
[3] K.Erkorkmaz, A.Kamalzadeh. High bandwidth control of ball screw drives[J]. CIRP Annals-Manufacturing Technology,2006,55(1):393-398.
[4] Guenter Pritschow, Niko Croon. Ball screw drives with enhanced bandwidth by modification of the axial bearing[J]. CIRP Annals-Manufacturing Technology,2013,62(1):383-386.
[5] 廖偉強(qiáng),何佳兵,李麗秀,等. 步進(jìn)電機(jī)驅(qū)動(dòng)滾珠絲桿傳動(dòng)分析與應(yīng)用[J]. 機(jī)械傳動(dòng), 2014,38(12):171-173.
[6] 劉媛媛,張如萍,張正和,等. 基于伺服電機(jī)和PLC的工作臺(tái)運(yùn)動(dòng)控制[J]. 機(jī)械工程與自動(dòng)化,2012(4):126-128.
[7] 劉穎君,郭偉越. 西門(mén)子MAP庫(kù)在三軸機(jī)械手定位控制中的應(yīng)用[J].裝備制造技術(shù) , 2013(4):73-74.
[8] 王莉莉. 基于PLC控制的氣動(dòng)搬運(yùn)機(jī)械手系統(tǒng)設(shè)計(jì)[J].電子科技, 2013,26(4):50-52.
[9] 李繼中. 數(shù)控機(jī)床螺距誤差補(bǔ)償與分析[J].組合機(jī)床與自動(dòng)化加工技術(shù) , 2010(2):98-101.
[10] 劉煥牢. 數(shù)控機(jī)床螺距誤差自動(dòng)補(bǔ)償技術(shù)[J].工具技術(shù),2004(7):42-43.
(編輯李秀敏)
Detection and Compensation Method of Screw Hysterisis Error Based on PLC
LIU Yuan-yuan1,2
(1.Electro-mechanical School, Wuxi Professional College of Science and Technology,Wuxi Jiangsu 214028,China;2.Institute of Automation, Jiangnan University, Wuxi Jiangsu 214122, China)
In order to overcome the influence on positioning accuracy caused by the hysterisis error when a tradezoidal screw-nut drive change its direction, this paper takes the positioning problem of orthogonal manipulator as the research object, introduces a positioning control system using S7-200 PLC, which can quickly detect screw hysterisis error in a location, overcome hysterisis error by changing the program parameters, and finally achieve the purpose of accurate positioning.
screw- nut drive; hysterisis error;MAP serv lib
1001-2265(2015)11-0065-02DOI:10.13462/j.cnki.mmtamt.2015.11.019
2015-05-07;
2015-06-04
江蘇省產(chǎn)學(xué)研聯(lián)合創(chuàng)新資金項(xiàng)目資助(BY2014023-36);無(wú)錫市名師工作室專(zhuān)項(xiàng)資金(錫教高職[2015]38號(hào))
劉媛媛(1983—),女,山東濱州人,無(wú)錫科技職業(yè)學(xué)院講師,博士研究生,研究方向?yàn)榭刂评碚摵涂刂萍夹g(shù)的綜合應(yīng)用,(E-mail)lyy19831125@126.com。
TH161;TG506
A