丁度坤
(東莞職業(yè)技術(shù)學(xué)院機(jī)電工程系,廣東東莞523808)
近年來(lái),隨著勞動(dòng)力成本的持續(xù)上漲,機(jī)器人作為一種新興的自動(dòng)化設(shè)備,在社會(huì)各領(lǐng)域均得到了廣泛的應(yīng)用。機(jī)器人在工業(yè)中的應(yīng)用主要用于焊接、搬運(yùn)、噴涂、裝配等,同時(shí)在采礦、農(nóng)業(yè)、物流、軍事等領(lǐng)域也得到了應(yīng)用[1-3]。提高機(jī)器人的運(yùn)動(dòng)速度,可提高其生產(chǎn)效率。但與此同時(shí),也會(huì)使機(jī)器人的機(jī)械系統(tǒng)、控制系統(tǒng)處于一種極不穩(wěn)定的極端狀態(tài),這種狀態(tài)會(huì)影響其運(yùn)動(dòng)精度。如何使高速運(yùn)動(dòng)條件下的機(jī)器人保持一種穩(wěn)定、高精度的狀態(tài),成為自動(dòng)控制領(lǐng)域的一道難題。為此,各國(guó)機(jī)器人領(lǐng)域的專家、學(xué)者進(jìn)行了不懈的努力,分別從機(jī)器人的機(jī)構(gòu)、動(dòng)力學(xué)、控制算法等方面入手,取得了不少階段性的成果[4-7]。目前已有的各種方法,往往較為復(fù)雜,難以滿足機(jī)器人實(shí)時(shí)性控制要求。
作者提出了一種改進(jìn)的免疫PID控制,以傳統(tǒng)的PID控制為主控制器,采用免疫算法可根據(jù)機(jī)器人的控制情況不斷改進(jìn)PID系數(shù) (即比例系數(shù)kp、積分系數(shù)ki、微分系數(shù) kd),以達(dá)到一種最佳的控制效果。
自主研制的垂直關(guān)節(jié)型的6自由度機(jī)器人樣機(jī)可用于搬運(yùn)、焊接、噴涂等領(lǐng)域,其實(shí)物如圖1所示。機(jī)器人的控制系統(tǒng)采用了二級(jí)控制模式,工控機(jī)作為第一級(jí)控制器,負(fù)責(zé)系統(tǒng)的運(yùn)行調(diào)度、機(jī)器人各關(guān)節(jié)的插補(bǔ)運(yùn)算以及對(duì)機(jī)器人的實(shí)時(shí)控制。PMAC運(yùn)動(dòng)控制卡作為第二級(jí)的控制器可根據(jù)上位機(jī)發(fā)送的控制指令,完成對(duì)機(jī)器人各關(guān)節(jié)的運(yùn)動(dòng)控制。兩級(jí)控制器通過PCI總線通訊,示教盒與工控機(jī)通過RS232 總線通訊[8]。
圖1 機(jī)器人樣機(jī)實(shí)物
傳統(tǒng)的PID控制因其簡(jiǎn)單、有效,至今仍在自動(dòng)控制領(lǐng)域得到了廣泛的應(yīng)用,其控制表達(dá)式表述如下:
式中:u為PID控制器的輸出量;
kp為PID比例增益系數(shù);
ki為PID積分增益系數(shù);
kd為PID微分增益系數(shù);
e為輸出誤差。
在機(jī)器人的關(guān)節(jié)傳遞函數(shù)時(shí)變的情況下,如何使得PID控制器的3個(gè)參數(shù) (即比例系數(shù)kp,積分系數(shù)ki,和微分系數(shù)kd)始終保持最優(yōu),成為決定最終控制器性能的關(guān)鍵所在。
為此,提出了一種免疫PID控制的新方法,以PID為主控制器,利用免疫克隆算法構(gòu)建調(diào)節(jié)器,根據(jù)被控對(duì)象對(duì)PID參數(shù)進(jìn)行實(shí)時(shí)調(diào)整,控制原理如圖2所示。
圖2 免疫PID控制原理
(1)編碼與解碼原則
采用二進(jìn)制碼對(duì)PID參數(shù)進(jìn)行編碼,每個(gè)個(gè)體包含30個(gè)二進(jìn)制碼。解碼時(shí),把30個(gè)二進(jìn)制碼斷開成3部分,每一部分包含10個(gè)二進(jìn)制碼,分別對(duì)應(yīng)PID控制器的比例、積分與微分增益系統(tǒng)。首先把每一部分的二進(jìn)制碼轉(zhuǎn)換成對(duì)應(yīng)的十進(jìn)制碼,假設(shè)y1為前10個(gè)二進(jìn)制碼的轉(zhuǎn)換結(jié)果,y2為中間10個(gè)二進(jìn)制碼的轉(zhuǎn)換結(jié)果,y3為最后10個(gè)二進(jìn)制碼的轉(zhuǎn)換結(jié)果,然后按照式 (2)可將隨機(jī)產(chǎn)生的30個(gè)二進(jìn)制碼轉(zhuǎn)化成對(duì)應(yīng) PID 增益系數(shù)[9-10]:
式中:x1為PID的比例增益系數(shù);
x2為PID的積分增益系數(shù);
x3為PID的微分增益系數(shù);
yi為二進(jìn)制轉(zhuǎn)十進(jìn)制換算結(jié)果;
αmin、αmax為PID增益尋優(yōu)范圍。
(2)抗原與抗體定義
定義PID控制器3個(gè)增益系數(shù) (kp、ki、kd),以其經(jīng)過二進(jìn)制編碼之后的字符串為抗體。將控制器的誤差e(t)、系統(tǒng)的上升時(shí)間ta、控制器的輸入量u(t)定義為抗原。
(3)親合度函數(shù)
為使系統(tǒng)具有較快的響應(yīng)時(shí)間、較小的穩(wěn)態(tài)誤差與控制能量,選取誤差e(t)對(duì)時(shí)間的積分、系統(tǒng)的上升時(shí)間ta、控制器的輸入量u(t)為親合度函數(shù)參數(shù),親合度函數(shù)表達(dá)式具體為:
式中:e(t)為采樣時(shí)刻t系統(tǒng)輸出誤差;
u(t)為采樣時(shí)刻t系統(tǒng)輸入量;
ta為PID控制器的上升時(shí)間;
b1,b2,b3為權(quán)系數(shù)。
對(duì)權(quán)系數(shù)數(shù)值的選取,取決于用戶對(duì)系統(tǒng)運(yùn)行性能的需求,如要求機(jī)器人系統(tǒng)具有較高的運(yùn)動(dòng)速度,可適當(dāng)增加b3的權(quán)重,如要求機(jī)器人系統(tǒng)具有較高的精度,則可適當(dāng)提高b1權(quán)重。
(4)選擇策略
根據(jù)抗體的相對(duì)親合度進(jìn)行選擇,抗體的相對(duì)親合度計(jì)算公式如下:
式中:pi為抗體相對(duì)親合度;
di為不同的抗體;
f(di)為抗體與抗原的親合度。
由式 (4)不難看出,抗體的相對(duì)親合度越大,該抗體被選中的機(jī)會(huì)也就越大。
(5)改進(jìn)型的免疫克隆算法流程分析
克隆選擇算法是人工免疫系統(tǒng)中基于群體的免疫算法,是根據(jù)克隆選擇理論和親合度成熟過程提出的一種智能算法。在傳統(tǒng)免疫克隆算法基礎(chǔ)上,進(jìn)行了三方面的改進(jìn):
①引入了注射免疫疫苗的操作
設(shè)個(gè)體x,對(duì)個(gè)體x進(jìn)行疫苗注射操作,是按照某些先驗(yàn)的知識(shí)經(jīng)驗(yàn)來(lái)修改x的某些基因位上的基因或分量,將人類對(duì)于問題的認(rèn)識(shí)經(jīng)驗(yàn)引入,從而使所得個(gè)體以較大的概率具有較高的適應(yīng)度,加快收斂速度。設(shè)有群體c=(x1,x2,…,xn),對(duì)c接種疫苗是指在c中隨機(jī)抽取某個(gè)個(gè)體而進(jìn)行的操作。疫苗來(lái)源于對(duì)問題的先驗(yàn)知識(shí),它所包含的信息量與準(zhǔn)確性對(duì)算法的性能起重要作用。對(duì)個(gè)體進(jìn)行注射疫苗操作,是力求用局部的特征信息以一定的強(qiáng)度干預(yù)全局并行的搜索進(jìn)程,抑制或避免求解過程中的一些重復(fù)和無(wú)效的工作,以克服原策略中交叉和變異算子操作的盲目性。
②對(duì)傳統(tǒng)免疫選擇策略進(jìn)行了改進(jìn)
不對(duì)全部的個(gè)體都進(jìn)行選擇復(fù)制,選取其中最好的若干代個(gè)體,按照其親合度的大小,計(jì)算其相對(duì)親合度,組建新總?cè)?,進(jìn)行下一次的迭代計(jì)算,以提高收斂的速度,總?cè)簜€(gè)體之間的多樣性通過免疫算法的高頻變異來(lái)保證。
③引入了免疫記憶機(jī)制
在每代迭代完畢時(shí),都進(jìn)行一次判斷,判斷當(dāng)代的最佳抗體,其與抗原的親合度是否高于上一代的最佳值。如是,則取其組成記憶抗體群參加下一輪的迭代;反之,則保留上一代的最優(yōu)記憶抗體群不變。
免疫克隆選擇算法的具體流程描述如下[10-11]:
a.產(chǎn)生候選集P,P由記憶細(xì)胞子集M和保持?jǐn)?shù)量集Pr組成,即P=M+Pr;
b.從群體P中基于親合度的大小選擇n個(gè)最好的個(gè)體,組成最優(yōu)個(gè)體集Pn;
c.對(duì)最優(yōu)個(gè)體集Pn進(jìn)行克隆操作,以產(chǎn)生一個(gè)臨時(shí)的群體C,個(gè)體克隆的規(guī)模取決于該個(gè)體對(duì)抗原的親合度;
d.對(duì)群體C進(jìn)行高頻變異,以產(chǎn)生成熟的抗體群體C*,高頻變異的概率與抗體的親合度成反比;
e.判別是否對(duì)群體C*進(jìn)行注射疫苗操作,如果是,則進(jìn)行疫苗的注射;否則轉(zhuǎn)入下一步的操作;
f.對(duì)C*中的最優(yōu)個(gè)體進(jìn)行免疫記憶,組成記憶集M,P中的一些元素將被M中的元素代替。
為驗(yàn)證所提算法的有效性,控制實(shí)驗(yàn)機(jī)器人沿某一軌跡高速運(yùn)動(dòng),運(yùn)動(dòng)速度為1.86 m/s,光電編碼器采樣時(shí)間為10 ms,利用免疫控制算法實(shí)現(xiàn)機(jī)器人在工作軌跡未知的條件下的高速運(yùn)動(dòng)控制。
改進(jìn)后的免疫克隆算法與傳統(tǒng)的遺傳算法的迭代過程如圖3所示。由圖中結(jié)果可見,改進(jìn)后的免疫算法經(jīng)過大約7代的迭代運(yùn)算,確定最小親和度函數(shù)值3.004。遺傳算法需經(jīng)過大約35代的迭代運(yùn)算,其適應(yīng)度函數(shù)值8.68,改進(jìn)后的免疫克隆算法具有更好的尋優(yōu)性能。其對(duì)應(yīng)的PID控制器實(shí)驗(yàn)結(jié)果如圖4所示。
圖3 算法迭代過程對(duì)比
圖4 免疫克隆PID與GA-PID仿真結(jié)果
由此可見,與傳統(tǒng)的遺傳算法相比,改進(jìn)后的免疫克隆算法迭代過程減少,用其整定的PID控制器,上升時(shí)間約為30 ms,且基本上無(wú)超調(diào)。在動(dòng)態(tài)特性方面較傳統(tǒng)的GA-PID算法有明顯提高,最終的軌跡跟蹤結(jié)果如圖5所示,跟蹤精度為±0.08 mm。
圖5 機(jī)器人軌跡跟蹤結(jié)果
(1)搭建了6自由度的機(jī)器人硬件平臺(tái),對(duì)機(jī)器人硬件平臺(tái)結(jié)構(gòu)進(jìn)行了介紹。(2)借鑒生物免疫機(jī)制,設(shè)計(jì)了改進(jìn)的免疫克隆算法,構(gòu)建免疫-PID控制器。(3)進(jìn)行了驗(yàn)證實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,所提出的控制策略,與傳統(tǒng)的算法相比,具有辨識(shí)精度高,迭代次數(shù)少,動(dòng)態(tài)特性好,能滿足高速條件下的機(jī)器人運(yùn)動(dòng)控制要求。
【1】NEARCHOU A C,ASPRAGATHOS N A,SOFOTASSIOS D P.Reducing the Complexity of Robot’s Scene for Faster Collision Detection[J].Journal of Intelligent and Robotic Systems,1999,26(1):79 -89.
【2】NONAMI K.,YUASA R.,WATERMAN D,et al.Preliminary Design and Feasibility Study of a 6-Degree of Freedom Robot for Excavation of Unexploded Landmine[J].Autonomous Robots,2005,18(3):293 -301.
【3】宋健,張鐵中,徐麗明,等.果蔬采摘機(jī)器人研究進(jìn)展與展望[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2006,37(5):158 -162.
【4】韓亞鋒,馬履中,吳偉光,等.Delta并聯(lián)機(jī)器人彈性動(dòng)力學(xué)研究[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2011,42(10):197 -202.
【5】HAKLIDIR Mehmet,TASDELEN Isa.Modeling,Simulation and Fuzzy Control of an Anthropomorphic Robot Arm by U-sing Dymola [J].Journal of Intelligent Manufacturing,2009,20(2):177 -186.
【6】WANG Jianzhong,JI Jiangtao,WANG Hongru.Grey Prediction Fuzzy Control of the Target Tracking System in a Robot Weapon[J].Journal of Beijing Institute of Technology,2007,16(4):424 -429.
【7】VICENTE Parra-Vega,SUGURU Arimoto,LIU Yunhui.Dynamic Sliding PID Control for Tracking of Robot Manipulators:Theory and Experiments[J].IEEE Transactions on Robotics and Automation,2003,19(6):967 -976.
【8】CRAIG John J.機(jī)器人學(xué)導(dǎo)論[M].3 版.贠超,等,譯.北京:機(jī)械工業(yè)出版社,2006:14-159.
【9】肖人彬,曹鵬彬,劉勇.工程免疫計(jì)算[M].北京:科學(xué)出版社,2007:3-105.
【10】焦李成,杜海峰,劉芳,等.免疫優(yōu)化計(jì)算、學(xué)習(xí)與識(shí)別[M].北京:科學(xué)出版社,2006:16-90.