張福建,黃宗衛(wèi)
(中國(guó)船舶重工集團(tuán)公司第七二三研究所,江蘇揚(yáng)州 225001)
在伺服機(jī)構(gòu)中,若需將運(yùn)動(dòng)機(jī)構(gòu)從當(dāng)前位置運(yùn)動(dòng)到指定位置時(shí),傳統(tǒng)的控制方法是通過(guò)將目標(biāo)指令直接給到P(PI或PID)控制器并限制控制器的輸出(對(duì)于小慣量或極小慣量控制系統(tǒng)可以不加限制)實(shí)現(xiàn)[1-3]。這種控制方法易于實(shí)現(xiàn),但可能引起結(jié)構(gòu)上的沖擊,長(zhǎng)期工作易導(dǎo)致結(jié)構(gòu)件損壞,對(duì)于大慣量伺服系統(tǒng)[4-6]尤為明顯。
本文介紹了一種被控對(duì)象以可變速度向目標(biāo)位置運(yùn)動(dòng)的算法。該算法根據(jù)被控對(duì)象與目標(biāo)的實(shí)際距離實(shí)時(shí)改變運(yùn)動(dòng)速度,實(shí)現(xiàn)被控對(duì)象啟動(dòng)和停止時(shí)平穩(wěn)過(guò)渡。
實(shí)現(xiàn)被控對(duì)象的平穩(wěn)啟動(dòng),核心就是控制被控對(duì)象的加速度,使其以不超出設(shè)計(jì)能力的加速度或以規(guī)定的加速度從0開(kāi)始運(yùn)動(dòng),在接近目標(biāo)時(shí),使其以不超出被控對(duì)象設(shè)計(jì)能力的減速度或以規(guī)定的減速度減速至0。被控對(duì)象理想的運(yùn)動(dòng)軌跡和速度軌跡如圖1和圖2所示。
如圖1和圖2所示,在整個(gè)工作階段,被控對(duì)象速度從0開(kāi)始,逐漸加速至允許的最高速度,保持該速度,最后減速,直至速度重新減為0。
圖1 理想的運(yùn)動(dòng)軌跡
假設(shè)要求被控對(duì)象的加速度和減速度分別為a1和a2,最大速度為Vmax,最小速度為Vmin,當(dāng)前速度為V,目標(biāo)點(diǎn)距離被控對(duì)象的位移為S(a1、a2、V和S均為矢量)。首先,當(dāng)前速度大于等于0時(shí),判斷被控對(duì)象在當(dāng)前位置以當(dāng)前速度勻減速至0時(shí)的位移是否大于S,是則被控對(duì)象此刻開(kāi)始勻減速,否則被控對(duì)象繼續(xù)加速(未達(dá)最大速度)或保持當(dāng)前速度(已達(dá)最大速度);其次,當(dāng)前速度小于0時(shí),判斷被控對(duì)象在當(dāng)前位置以當(dāng)前速度勻加速至0時(shí)的位移是否小于S,是則被控對(duì)象此刻開(kāi)始勻加速,否則被控對(duì)象繼續(xù)減速(未達(dá)最小速度)或保持當(dāng)前速度(已達(dá)最小速度)。在解算時(shí)需確保當(dāng)前速度不超過(guò)Vmax和Vmin。軌跡算法流程如圖3所示。
圖2 理想的速度軌跡
圖3 軌跡算法流程圖
由圖3可以看出,實(shí)現(xiàn)該算法主要包含兩個(gè)部分。首先,當(dāng)前速度大于等于0時(shí),判斷被控對(duì)象從當(dāng)前位置以當(dāng)前速度勻減速至0時(shí),其位移是否會(huì)大于目標(biāo)位置。其次,當(dāng)前速度小于0時(shí),判斷被控對(duì)象從當(dāng)前位置以當(dāng)前速度勻加速至0時(shí),其位移是否會(huì)小于目標(biāo)位置。
根據(jù)位移公式:
可以推導(dǎo)出被控對(duì)象在當(dāng)前位置以當(dāng)前速度勻加(減)速至速度0時(shí)的位移是:其中vt為當(dāng)前速度;a為加(減)速度,vt大于等于0時(shí),a取a2,即減速度,vt小于0時(shí),a取a1,即加速度。以上判斷過(guò)程可以表述為:
(1)若vt≥ 0且-≥s時(shí),即被控對(duì)象以當(dāng)前速度勻減速至0,其位移大于等于目標(biāo)位置,則vt+1=vt+a2,做減速運(yùn)動(dòng);
(2)若v≥ 0且t若v+a≤V,即加速t1max后不大于最大速度,則vt+1=vt+a1,繼續(xù)做加速運(yùn)動(dòng),否則保持當(dāng)前速度;
(3)若vt<0且 -≤s時(shí),即被控對(duì)象以當(dāng)前速度勻加速至0,其位移小于等于目標(biāo)位置,則vt+1=vt+a1,做加速運(yùn)動(dòng);
(4) 若 vt<0且>s時(shí),若vt+a2≥Vmin,即減速后不小于最小速度,則vt+1=vt+a2,做減速運(yùn)動(dòng),否則保持當(dāng)前速度。
圖4、圖5為該算法的Simulink∕Matlab[7-8]仿真結(jié)果。圖4中,橫軸為時(shí)間,縱軸為位置∕軌跡,實(shí)線表示目標(biāo)位置,在70°和-30°之間不斷發(fā)生變化,虛線為該算法計(jì)算后的軌跡。圖5中橫軸為時(shí)間,縱軸為速度。由圖可以看出,當(dāng)目標(biāo)位置發(fā)生變化時(shí),輸出的目標(biāo)軌跡始終按照設(shè)定的加(減)速度變化,在開(kāi)始加速和接近目標(biāo)位置時(shí),速度均沒(méi)有發(fā)生突變。
圖4 仿真結(jié)果(位置∕軌跡)
圖5 仿真結(jié)果(速度)
該算法支持被控對(duì)象在運(yùn)動(dòng)過(guò)程中的任意時(shí)刻修改目標(biāo)位置,而不會(huì)使被控對(duì)象產(chǎn)生沖擊。
該算法非常適合于大慣量伺服系統(tǒng)的位置閉環(huán)控制或被控量的變化率受限的應(yīng)用場(chǎng)合,并且,結(jié)合前饋控制方式,對(duì)被控對(duì)象運(yùn)動(dòng)軌跡可以實(shí)現(xiàn)較高的控制精度。對(duì)角度做簡(jiǎn)單的處理,該算法也可應(yīng)用于可360°連續(xù)旋轉(zhuǎn)的運(yùn)動(dòng)機(jī)構(gòu)的控制。該算法已經(jīng)應(yīng)用于多型設(shè)備中對(duì)旋轉(zhuǎn)機(jī)構(gòu)扇掃及調(diào)舷的控制,效果良好。