結(jié)合計(jì)算機(jī)可編程自動(dòng)化控制器(CPAC)平臺(tái)集成的P2P運(yùn)動(dòng)控制模式和DDA插補(bǔ)算法,運(yùn)用otostudio軟件設(shè)計(jì)相應(yīng)的兩軸運(yùn)動(dòng)控制程序和HMI界面,經(jīng)過調(diào)試,程序運(yùn)行良好,定位準(zhǔn)確,實(shí)現(xiàn)了CPAC平臺(tái)對(duì)兩軸伺服系統(tǒng)運(yùn)動(dòng)軌跡的精確控制。 ?
引言 ?
隨著科學(xué)技術(shù)的發(fā)展,以液壓控制電動(dòng)化的運(yùn)動(dòng)控制為代表的制造業(yè),正經(jīng)歷著深刻的創(chuàng)新和改革。隨著電力電子技術(shù)的進(jìn)步,出現(xiàn)了多種多樣的控制技術(shù),研究運(yùn)動(dòng)控制技術(shù)的應(yīng)用具有十分重要的實(shí)用價(jià)值。
? CPAC平臺(tái)可以運(yùn)行windows操作系統(tǒng),在實(shí)現(xiàn)高性能多軸相互協(xié)作運(yùn)動(dòng)和高速Point-to-Point運(yùn)動(dòng)控制的同時(shí),實(shí)現(xiàn)常規(guī)工控機(jī)的功能。CPAC運(yùn)動(dòng)控制平臺(tái)應(yīng)用更加廣泛,適用于有高速、高精度位置控制要求的場(chǎng)合,如CNC數(shù)控機(jī)床、激光雕刻機(jī)、機(jī)器人等設(shè)備。 ? 1CPAC控制平臺(tái)的組成結(jié)構(gòu) ? CPAC運(yùn)動(dòng)控制系統(tǒng)由運(yùn)動(dòng)控制器(GUC)、觸摸屏(HMI)、伺服驅(qū)動(dòng)器、伺服電機(jī)、步進(jìn)驅(qū)動(dòng)器、步進(jìn)電機(jī)、I/o模塊組、端子接線板組成,其中硬件平臺(tái)由運(yùn)動(dòng)控制器(GUC)、人機(jī)HMI界面和遠(yuǎn)程輸入/輸出模塊[1]組成,其核心控制器為由FPGA和DsP組成的運(yùn)動(dòng)控制器(GUC)。支持多種運(yùn)動(dòng)模式,如點(diǎn)位模式、Jog模式、電子齒輪模式、Fo11ow模式和PT模式等,帶有16路通用數(shù)字輸入、16路通用數(shù)字輸出[2]。
? CPAC軟件平臺(tái)otostudio是一種組態(tài)化、圖形化的開發(fā)工具,基于IEC61131-3編程標(biāo)準(zhǔn),支持指令表語言(IL)、功能塊圖(FBD)、連續(xù)功能圖(CFC)、梯形圖(LD)、結(jié)構(gòu)化文本(sT)、順序功能圖(sFC)六種編程語言,同時(shí)集成了HMI編程工具,便于用戶設(shè)計(jì)開發(fā)HMI界面。
? 2運(yùn)動(dòng)控制設(shè)計(jì)
? 2.l運(yùn)動(dòng)控制設(shè)計(jì)
? CPAC控制系統(tǒng)中,P2P模式可以很好地實(shí)現(xiàn)點(diǎn)位控制,Jog模式可以控制加、減速度的恒速運(yùn)動(dòng),Gear和Fo11ow模式是在主軸運(yùn)動(dòng)的基礎(chǔ)上做相對(duì)運(yùn)動(dòng),PT模式則是做預(yù)訂軌跡的周期運(yùn)動(dòng)。本文選擇具有定位準(zhǔn)確、控制簡(jiǎn)單等特點(diǎn)的P2P模式作為系統(tǒng)的運(yùn)動(dòng)模式。
? 為了達(dá)到兩軸和多軸的合成軌跡的精度要求,需要在普通運(yùn)動(dòng)模式的基礎(chǔ)上引入插補(bǔ)算法,實(shí)現(xiàn)多軸運(yùn)動(dòng)的控制。插補(bǔ)就是根據(jù)給定進(jìn)給速度、給定輪廓線形的要求,在輪廓已知點(diǎn)之間,確定一些中間點(diǎn)的方法,稱為插補(bǔ)方法或插補(bǔ)原理[4]。限于文章篇幅,選用數(shù)字積分法(DDA)作為本設(shè)計(jì)的插補(bǔ)控制算法。
? 2.2數(shù)字積分法工作原理 ?
數(shù)字積分法是利用數(shù)字積分原理建立起來的一種插補(bǔ)方法[5],基本原理是將曲線在各軸的進(jìn)給量分段收集起來,當(dāng)某個(gè)軸的值累加到一個(gè)指定的量時(shí)就將這個(gè)軸的進(jìn)給量進(jìn)給一步。 ? 從幾何意義上可知,函數(shù)y=f(l)對(duì)l的積分結(jié)果,是此函數(shù)曲線與坐標(biāo)軸l所包圍的面積F,如圖1所示,即:
若把自變量區(qū)間[a,b]等分成由許多有限的小區(qū)間△l(其中△l=li+1-li)組成的區(qū)間,求面積F可以轉(zhuǎn)換為求小區(qū)間面積之和,即:
數(shù)字運(yùn)算時(shí),△t一般取單位1,即一個(gè)脈沖當(dāng)量。式(2)可簡(jiǎn)化為:
當(dāng)所選取的間隔△t足夠小時(shí),可以用求和運(yùn)算代替積分運(yùn)算的方法,其誤差在允許的誤差范圍內(nèi)。
3運(yùn)動(dòng)控制的實(shí)現(xiàn)
3.1數(shù)字積分法的仿真
3.1.1兩軸運(yùn)動(dòng)直線插補(bǔ)算法及仿真
DDA插補(bǔ)的第一象限兩軸直線插補(bǔ)過程簡(jiǎn)單描述如下:假設(shè)一直線的起點(diǎn)為(0,0),終點(diǎn)為(xe,ye),合成軌跡方向的切向速度為,X軸和y軸方向上的速度分量分別是,x和,y,則兩方向上對(duì)應(yīng)時(shí)間△t的移動(dòng)位置增量為:
式(4)可整理為:
在△t時(shí)間內(nèi),x和y的位置增量參數(shù)方程為:
動(dòng)點(diǎn)從起點(diǎn)走向終點(diǎn)的過程,可以看作是經(jīng)過一個(gè)個(gè)時(shí)間間隔A芒,增量Kλe和KYe累加的結(jié)果。經(jīng)過1次累加后,λ和Y分別都到達(dá)終點(diǎn)E(Xe,Ye),下式成立:
令mK=1,則:
由式(10)可知,比例系數(shù)K與累加次數(shù)m互為倒數(shù)。由于m必須是整數(shù),所以K一定是小于1的小數(shù)。在選取K時(shí)要考慮每次增量Aλ或AY不大于1,以保證坐標(biāo)軸上進(jìn)給脈沖不超過一
個(gè)進(jìn)給步長(zhǎng),即:
若假定存儲(chǔ)寄存器是n位,則λe和Ye的最大允許寄存容量應(yīng)為2n-1(各位全1時(shí))。若取K=1則:
由式(13)(14)可以得出Kλe和KYe小于1。這樣,決定了系數(shù)K=,就保證了Aλ和AY小于1的條件。因此,軌跡從原點(diǎn)到達(dá)結(jié)束點(diǎn)的累加次數(shù)m就有m==2n次。
實(shí)現(xiàn)兩軸運(yùn)動(dòng)DDA直線插補(bǔ)時(shí),需要在程序中設(shè)定幾個(gè)存儲(chǔ)單元[7],分別用于存放λe和Ye及其累加值Zλe和ZYe。將Zλe和ZYe賦一初始值,在每次插補(bǔ)循環(huán)過程中,進(jìn)行以下求和的
運(yùn)算過程:
將運(yùn)算結(jié)果的溢出脈沖Aλ和AY用來控制伺服電機(jī)轉(zhuǎn)動(dòng),兩軸運(yùn)動(dòng)控制系統(tǒng)合成軌跡即所需的直線軌跡。
Mat1ab驗(yàn)證兩軸運(yùn)動(dòng)DDA直線插補(bǔ)仿真流程如圖2所示,DDA直線插補(bǔ)結(jié)果如圖3所示。取程序中累加值的寄存器位數(shù)為4位,用Zλe-16來代表溢出。圖3中起點(diǎn)坐標(biāo)為0(0,0),終點(diǎn)坐標(biāo)為A(7,10),插補(bǔ)步長(zhǎng)為1。
3.1.2兩軸運(yùn)動(dòng)圓弧插補(bǔ)算法及仿真
以第I象限逆圓為例,設(shè)兩軸合成運(yùn)動(dòng)軌跡圓弧運(yùn)動(dòng)軌跡為AB,半徑為R,運(yùn)動(dòng)軌跡的切向速度為⑦,P(λ,Y)為動(dòng)點(diǎn),如圖4所示,經(jīng)過整理可得:
式中,K為比例常數(shù)。
由于圓弧運(yùn)動(dòng)的半徑R為常數(shù),并且切向速度為勻速,所以K可認(rèn)為是常數(shù)。
從式(18)(19)可以看出:由于速度分解關(guān)系的不同,兩軸運(yùn)動(dòng)的圓弧插補(bǔ)時(shí)的位置增量與兩軸運(yùn)動(dòng)的直線插補(bǔ)時(shí)相比,位移的參量參數(shù)發(fā)生了變化,λ和Y產(chǎn)生了對(duì)調(diào)。DDA圓弧插補(bǔ)方法里的位置增量是由當(dāng)前合成位置坐標(biāo)(λ,Y)所決定的變量,而直線插補(bǔ)是由終點(diǎn)坐標(biāo)決定的定值。
DDA圓弧插補(bǔ)進(jìn)行Mat1ab仿真,仿真流程如圖5所示,仿真結(jié)果如圖6所示,得到以原點(diǎn)為圓心、半徑為5的第一象限的1/4逆圓圓弧。
由Mat1ab仿真結(jié)果可以看出,直線插補(bǔ)和圓弧插補(bǔ)程序?qū)嶋H運(yùn)行軌跡和理論運(yùn)行軌跡始終在一定的范圍內(nèi)貼近,誤差不超過一個(gè)步長(zhǎng)。實(shí)際運(yùn)行軌跡被分成小段,每段內(nèi)可以分解為x、y軸兩個(gè)方向的恒定速度的運(yùn)行。
3.2兩軸運(yùn)動(dòng)控制程序的設(shè)計(jì)
根據(jù)上述Mat1ab仿真的插補(bǔ)算法設(shè)計(jì)的DDA直線插補(bǔ)程序流程圖如圖7所示,DDA圓弧插補(bǔ)程序流程圖如圖8所示。
3.3可視界面(HMl)的設(shè)計(jì)
合理的可視界面設(shè)計(jì),能讓程序的運(yùn)行更加高效。
4運(yùn)行結(jié)果與分析
4.1程序的運(yùn)行結(jié)果
經(jīng)過對(duì)otostudio軟件的使用,發(fā)現(xiàn)在數(shù)據(jù)監(jiān)控時(shí),不能監(jiān)控兩軸平面和三軸空間及以上的多維空間位置。下面程序的運(yùn)行結(jié)果采用單軸監(jiān)控的模式,即一條線代表一個(gè)軸的位置狀態(tài)。
兩軸運(yùn)動(dòng)直線插補(bǔ)算法運(yùn)行結(jié)果如圖9所示,兩軸運(yùn)動(dòng)圓弧插補(bǔ)算法運(yùn)行結(jié)果如圖10所示。
4.2結(jié)果分析
從運(yùn)行結(jié)果可以看出,針對(duì)不同的坐標(biāo),即使程序中設(shè)置的各軸運(yùn)行速度相同,兩個(gè)軸也是幾乎同時(shí)到達(dá)終點(diǎn)位置。對(duì)比DDA直線插補(bǔ)和DDA圓弧插補(bǔ)的Mat1ab仿真實(shí)例,可知實(shí)際運(yùn)行軌跡始終在理論運(yùn)行軌跡附近不超過一個(gè)步長(zhǎng)的范圍內(nèi),證明該程序提高了兩軸及多軸運(yùn)動(dòng)軌跡的控制精度。
5結(jié)語
本文基于CPAC運(yùn)動(dòng)控制平臺(tái)來實(shí)現(xiàn)對(duì)兩軸伺服電機(jī)的控制,為提高合成運(yùn)動(dòng)軌跡的精度,選取了P2P運(yùn)動(dòng)模式,引入了兩軸直線插補(bǔ)和圓弧插補(bǔ)算法,采用Mat1ab仿真驗(yàn)證了DDA插補(bǔ)算法對(duì)于精確運(yùn)動(dòng)控制的可行性。在0tostudio軟件平臺(tái)上,實(shí)現(xiàn)了P2P運(yùn)動(dòng)模式和DDA插補(bǔ)算法控制程序,實(shí)現(xiàn)了兩軸伺服系統(tǒng)的高精度運(yùn)動(dòng)軌跡控制,且程序運(yùn)行良好,運(yùn)動(dòng)軌跡定位準(zhǔn)確。
編輯:黃飛
?
評(píng)論
查看更多