蘇 娜,張華勝,俞竹青
(常州大學(xué)機械工程學(xué)院,江蘇 常州 213100)
在大型發(fā)電供熱企業(yè)中,由于鍋爐壁面長期受到液體侵蝕、磨損,使壁厚變薄,所以需定期檢測壁面磨損程度以保證鍋爐的安全可靠[1]。目前,鍋爐壁面磨損檢測主要由人工搭建腳手架完成檢測,而人工檢測效率低,費用高且危險系數(shù)高,因此研制一種能自主檢測壁面磨損的爬壁機器人是化工行業(yè)發(fā)展的趨勢。
在鍋爐內(nèi)部,磨損檢測機器人的移動作業(yè)環(huán)境較為復(fù)雜,確保爬壁機器人按照預(yù)定的軌跡爬行是完成壁厚檢測任務(wù)的重點。機器人在正常工作爬行過程中,在理想情況下,控制左右兩電機速度完全相同,則可以始終直線爬行。但實際上,由于制造誤差以及環(huán)境等因素的影響,爬壁機器人的位姿會出現(xiàn)偏差,所以對其路徑控制的研究是研究爬壁機器人的重點。針對路徑控制的研究,相關(guān)學(xué)者根據(jù)具體情況提出了各自的解決方案。張揚名[2]等基于滑模控制方法來實現(xiàn)路徑控制,但由于滑模控制方法的特性使其存在“抖振”,且無法避免,控制效果欠佳。李林琛[3]等通過遺傳算法對比例積分微分(proportion integration differentiation,PID)參數(shù)整定來實現(xiàn)路徑控制。但遺傳算法編程比較復(fù)雜,需要較長時間的訓(xùn)練得到精確解。
針對上述問題,本文提出一種基于自適應(yīng)模糊PID算法的運動路徑控制方法,即根據(jù)爬壁機器人實時的位姿角度偏差對PID參數(shù)進行模糊化在線增量調(diào)節(jié),以應(yīng)對系統(tǒng)的實時變化。通過選擇合適的參數(shù)對機器人左右電機速度進行模糊PID控制,進而控制機器人的運動方向,保證其運動的穩(wěn)定性。通過MATLAB試驗仿真,驗證了該算法魯棒性好、自適應(yīng)性強,控制效果顯著提升。該方法能夠快速、準確地控制左右電機的轉(zhuǎn)速,進而糾正機器人的位姿偏差,達到運動路徑控制的目的。
本文研究的爬壁機器人由爬行驅(qū)動機構(gòu)、超聲波檢測機構(gòu)、磁吸附機構(gòu)等組成,采用永磁吸附、鏈條式傳動和電機驅(qū)動的機器人原理設(shè)計。
爬壁檢測機器人靜止時,通過履帶上的永磁鐵吸附在壁面。運動時,通過驅(qū)動電機正反轉(zhuǎn),經(jīng)減速器減速后鏈輪轉(zhuǎn)動,帶動與之嚙合的鏈條,使機器人沿著壁面上下爬行。
建立爬壁機器人運動模型,系統(tǒng)結(jié)合傾角傳感器和編碼器測速傳感器以及自適應(yīng)模糊PID控制算法,實現(xiàn)爬壁機器人運動控制。
本文研究的基于STM32的爬壁機器人驅(qū)動控制系統(tǒng),主要由電源、電機驅(qū)動、速度檢測、位置檢測等部分組成。爬壁機器人系統(tǒng)框架如圖1所示。
圖1 爬壁機器人系統(tǒng)框架Fig.1 Framework of a wall-climbing robot system
爬壁機器人系統(tǒng)采用的是位置角度誤差外環(huán)和速度誤差內(nèi)環(huán)的雙閉環(huán)控制方式[4],如圖2所示。
圖2 雙閉環(huán)控制方式Fig.2 Double closed-loop control mode
在爬壁機器人爬行過程中:首先,位置誤差作為外環(huán),通過傾角傳感器不斷獲取位置角度偏差信息,進行外環(huán)位置誤差的模糊 PID控制;其次,通過推導(dǎo)的運動學(xué)方程,得到轉(zhuǎn)向的輸出速度,轉(zhuǎn)差給速度內(nèi)環(huán),利用速度閉環(huán)控制,檢測實際運行速度,通過模糊PID控制算法對目標速度進行誤差診斷;最后,控制脈沖寬度調(diào)制(pulse width modulation,PWM)不斷調(diào)節(jié)電機轉(zhuǎn)速,使爬壁機器人運動得到控制,更加快速、平穩(wěn)地在雙閉環(huán)系統(tǒng)下按照規(guī)定軌跡爬行,完成檢測工作。
爬壁機器人運動分析如圖3所示。
圖3 爬壁機器人運動分析圖Fig.3 Motion analysis diagram of wall-climbing robot
針對上述爬壁機器人,對其進行運動學(xué)分析,并建立爬壁機器人運動模型[5],掌握其運動規(guī)律,為下文控制器的設(shè)計奠定基礎(chǔ)。
設(shè)在XOY參考平面上,爬壁機器人以平行于規(guī)定軌跡L的位姿運動,左右履帶的理論運動速度分別為vL和vR,合成速度為v,爬壁機器人的質(zhì)心運動到C點(xc,yc),傾斜角度為0°,則爬壁機器人的位姿表示為Pc=[xc,yc,0]T。當機器人繼續(xù)向前運動,質(zhì)心運動到K點,機器人的位姿表示為Pk=[xk,yk,θk]T。所以爬壁機器人位姿可由式(1)表示:
(1)
本文研究的爬壁機器人在其運動過程中幾乎不發(fā)生滑動,即vL=vL′和vR=vR′,求得kL=kR=0。故可以將式(1)改寫為:
(2)
在理想情況下,偏差角度始終保持在0°,移動速度vR=vL=v,對式(2)求導(dǎo),得到爬壁機器人在理想情況下的運動學(xué)方程:
(3)
而實際上,兩側(cè)履帶因制造差異及工作環(huán)境等因素的影響,速度無法完全一致,故機器人運動方向發(fā)生變化,位姿發(fā)生偏差。不妨假設(shè)其質(zhì)心運動到K點時, 爬壁機器人傾斜角度為θk, 則可得到在K點時的動力學(xué)方程:
(4)
式中:D為兩履帶內(nèi)側(cè)的距離;d為履帶的寬度。本文研究的爬壁機器人D=210 mm,d=45 mm。由運動學(xué)方程可知,爬壁機器人位姿偏差與左右履帶運動速度和偏差角度之間的關(guān)系。
綜上所述,爬壁機器人在運動過程中,可以通過對兩側(cè)驅(qū)動輪的速度vL和vR的差速控制,實現(xiàn)對機器人的運動速度和偏轉(zhuǎn)角度的實時調(diào)節(jié),得到位置誤差外環(huán)的輸出,進而實現(xiàn)爬壁機器人預(yù)期位置的調(diào)節(jié)。
自適應(yīng)模糊PID算法相較于普通PID的先進之處在于跟據(jù)系統(tǒng)的跟蹤誤差,運用模糊推理的策略對PID的3個參數(shù)進行實時調(diào)節(jié)[6],以滿足不同時刻的要求。這樣既能夠保持普通PID控制系統(tǒng)的簡單易用的優(yōu)點,又具備一定的自適應(yīng)性,可進一步提高控制的精確性[7]。模糊PID控制器框圖如圖4所示。
圖4 模糊PID控制器框圖Fig.4 System diagram of fuzzy PID controller
模糊控制器的輸入為系統(tǒng)設(shè)定的期望位置偏轉(zhuǎn)角度,反饋值為傳感器模塊反饋得到的實際位置偏轉(zhuǎn)角度。模糊系統(tǒng)的輸入通過模糊推理,找出與輸出的PID 3個參數(shù)的模糊關(guān)系,實時更改,使控制器具有一定的自適應(yīng)能力和良好的控制效果。速度內(nèi)環(huán)和位置誤差外環(huán)的控制原理相似,下文控制器的設(shè)計以位置誤差外環(huán)控制為例。
將位置誤差外環(huán)的輸入變量方向偏差θ和方向偏差變化率θc變化范圍定義為模糊集上的論域[-30,30],輸出量Δkp、Δki、Δkd的論域為[-3,3],模糊子集分別為{NB,NM,NS,ZO,PS,PM,PB},對應(yīng)為{負大,負中,負小,零,正小,正中,正大}??紤]調(diào)節(jié)難易程度以及靈敏度的問題,以三角形函數(shù)建立隸屬度函數(shù)[8],隸屬度函數(shù)如圖5所示。
圖5 隸屬度函數(shù)Fig.5 Membership function
根據(jù)實際操作經(jīng)驗和相關(guān)的專業(yè)知識,建立合適的模糊規(guī)則[9]。本文根據(jù)Δkp、Δki、Δkd對系統(tǒng)的影響,采用條件語句if-then的推理規(guī)則,即:If (θis NB) and (θcis NM) then (Δkpis PB) (Δkiis NB) (Δkiis NS) ,得出相應(yīng)的結(jié)果,如表1~表3所示。
表1 Δkp模糊控制規(guī)則表Tab.1 Δkp fuzzy control rules table
表2 Δki模糊控制規(guī)則表Tab.2 Δki fuzzy control rules table
表3 Δkd模糊控制規(guī)則表Tab.3 Δkd fuzzy control rules table
經(jīng)過模糊推理規(guī)則得到的結(jié)果是一個模糊集,需要通過解模糊,將其轉(zhuǎn)化成一個精確值后才能使用。本文采用加權(quán)平均法[10],將控制量中的各元素和它對應(yīng)的隸屬度加權(quán)平均值,計算公式如式(5)所示:
(5)
式中:u′為解模糊后的精確值;ui為模糊變量的元素;μ(ui)為ui元素相對應(yīng)的隸屬度。
根據(jù)上文建立的模糊規(guī)則表,執(zhí)行相應(yīng)的運算,將結(jié)果轉(zhuǎn)化處理后代入式(6)中,得出整定后的PID實際參數(shù)。
(6)
式中:kp′、ki′、kd′為PID的初始參數(shù);Δkp、Δki、Δkd為模糊控制器根據(jù)系統(tǒng)的輸入方向偏差θ和方向偏差變化率θc實時調(diào)節(jié)的增量;kp、ki、kd為系統(tǒng)最終整定的參數(shù)值。
PID參數(shù)實時改變體現(xiàn)了本文控制算法的自適應(yīng)性。
為了驗證自適應(yīng)模糊PID算法對本文爬壁機器人運動路徑控制的電機驅(qū)動的控制效果,爬壁機器人采用直流無刷電機驅(qū)動。通過相關(guān)軟件,將傳遞函數(shù)簡化為二階系統(tǒng)[11],表示為:
(7)
在Simulink中,根據(jù)上文研究分析的控制規(guī)則,建立控制器的仿真模型。
本文根據(jù)以往經(jīng)驗,通過不斷的試驗,得到一組比較合適的PID參數(shù)值:P=60,I=8,D=0.05。為了便于比較兩種算法對輸入信號的跟蹤效果,將初始參數(shù)值設(shè)定為相同。試驗過程中,在1 s時加入階躍信號,兩種控制算法的階躍信號響應(yīng)線和仿真數(shù)據(jù)對比如圖6和表4所示。
圖6 階躍信號響應(yīng)曲線Fig.6 Step signal response curves
表4 仿真數(shù)據(jù)對比表Tab.4 Comparison table of simulation data
在加入階躍響應(yīng)后,傳統(tǒng)算法在1 s后達到穩(wěn)定狀態(tài)并保持,而本文采用的自適應(yīng)模糊PID算法只需要0.65 s就能夠保持穩(wěn)定。其次,算法在響應(yīng)過程中的最大超調(diào)量,前者達到了8.5%,而后者則大幅降低為2%。
利用模糊PID算法對目標速度進行誤差跟蹤。爬壁機器人爬行過程中,通過不斷改變左右電機的轉(zhuǎn)速,進而改變爬壁機器人的運動方向,達到運動路徑控制的目的。為了驗證模糊PID算法對變化的輸入信號的跟蹤響應(yīng)效果,本文通過編程給定一個變化的輸入信號(0→1→0.2→0.5→1→0.4),設(shè)定相應(yīng)的參數(shù)值。輸入變化的響應(yīng)曲線如圖7所示。通過響應(yīng)過程得出,模糊PID控制器相比于傳統(tǒng)PID控制器對動態(tài)變化的輸入信號的跟隨性較好,超調(diào)量較低,達到穩(wěn)態(tài)的時間較快,具有較好的自適應(yīng)性。
圖7 輸入變化的響應(yīng)曲線Fig.7 Response curve of input change
本文針對爬壁機器人爬行檢測過程中出現(xiàn)的位姿偏差問題,提出一種基于自適應(yīng)模糊PID算法的運動路徑控制方法。該算法可根據(jù)實際情況在線調(diào)整PID的參數(shù)值,實現(xiàn)爬壁機器人的雙閉環(huán)模糊控制。通過Simulink模塊仿真分析,自適應(yīng)模糊PID控制效果明顯優(yōu)于普通PID控制,對輸入信號的跟隨性較好,達到穩(wěn)態(tài)的時間較快,超調(diào)量較低,控制效果顯著提高。本文提出的雙閉環(huán)運動路徑控制方法能夠快速、準確地控制爬壁機器人左右電機的轉(zhuǎn)速,不斷糾正其位姿偏差進而控制運動方向,使爬壁機器人沿目標軌跡穩(wěn)定爬行。