李卓然
(羅定職業(yè)技術(shù)學院 電子信息系,廣東 羅定 527200)
隨著科學技術(shù)的發(fā)展,采摘機器人在水果、蔬菜等采摘方面取得了廣泛的應(yīng)用。由于采摘機器人工作環(huán)境復(fù)雜、零部件眾多,故障率也較高,而一旦其發(fā)生故障,會對用戶、工作空間和采摘對象造成傷害。因此,實現(xiàn)對采摘機器人的故障診斷,一直是一個非常重要的研究領(lǐng)域。本文研究的基于貝葉斯網(wǎng)絡(luò)分類算法的采摘機器人故障診斷,將貝葉斯網(wǎng)絡(luò)和故障特征分析結(jié)合起來,能夠?qū)崿F(xiàn)采摘機器人動力故障和執(zhí)行器的故障診斷。
貝葉斯網(wǎng)絡(luò)是基于概率理論的統(tǒng)計模型,是一種非常重要的定量模型求解方法,具有豐富邏輯理論和數(shù)學模型。
1)條件概率理論:假設(shè)存在A、B兩個獨立的事件,其中A事件發(fā)生的概率大于0,則
(1)
其中,P(B|A)為A事件發(fā)生的基礎(chǔ)上B也同時發(fā)生的概率。
2)聯(lián)合概率理論:假設(shè)存在A、B兩個獨立的事件,其中A事件發(fā)生的概率大于0,則兩個事件的聯(lián)合概率為
P(A·B)=P(A)P(A|B)
(2)
其中,P(A·B)為兩個事件同時發(fā)生時的概率。
(3)
4)貝葉斯分類理論:根據(jù)前面介紹的3種概率公式,可以推導(dǎo)出貝葉斯分類計算公式,即
(4)
以上公式是貝葉斯分類的基礎(chǔ)。
1)貝葉斯網(wǎng)絡(luò)分類概述。采摘機器人故障診斷的基礎(chǔ)是建立從故障征兆到故障特征的映射關(guān)系,其理論基礎(chǔ)是根據(jù)故障征兆變量確定故障類型。貝葉斯網(wǎng)絡(luò)分類算法是一種典型的統(tǒng)計學分析方法,根據(jù)貝葉斯理論,研究故障發(fā)生的先驗概率與后驗概率結(jié)合起來,根據(jù)先驗概率和樣本集求出后驗概率值。
假設(shè)U={X1,X2,…,Xn,C}為離散變量的集合,Xi為屬性變量,C為類變量集合,xi是Xi的取值。實例Ii=(x1,x2,…,xn)為類cj的概率,可以用貝葉斯公式表示為
(5)
其中,P(cj)為cj的先驗概率,P(ci|x1,x2,…,xn)為cj的后驗概率。式(5)可以改寫為
(6)
其中,α為正則參數(shù)。從式(6)可以看出:貝葉斯算法選擇P(ci|x1,x2,…,xn)最大的類cj為Ii的類標簽,因此貝葉斯算法的核心是求解P(ci|x1,x2,…,xn)的值。
本文將介紹樸素(NaiveBayes,NB)和TAN(Tree Augmenetd Naive Bayesian,ATN)兩種貝葉斯分類方法。
2)NB貝葉斯網(wǎng)絡(luò)分類器。NB貝葉斯網(wǎng)絡(luò)分類器的原理是設(shè)定其變量條件之間相互獨立,每個屬性只和類變量C關(guān)聯(lián),這一條件極大程度地降低了貝葉斯算法的復(fù)雜度,其計算公式可以表示為
(7)
雖然存在著一個變量相互獨立的假設(shè),但是NB貝葉斯網(wǎng)絡(luò)分類器仍具有相當高的健壯性和有效性,分類精度也非常高。NB貝葉斯網(wǎng)絡(luò)分類器模型如圖1所示。
圖1 NB貝葉斯網(wǎng)絡(luò)分類器模型
3)TAN貝葉斯網(wǎng)絡(luò)分類器。TAN貝葉斯網(wǎng)絡(luò)分類器是針對NB模型的進一步優(yōu)化改進,其假設(shè)變量之間符合樹狀結(jié)構(gòu),而不要求變量條件之間相互獨立,允許多個節(jié)點變量同時依賴一個節(jié)點變量,滿足學習速度和精度之間的一種平衡,其計算公式可以表示為
(8)
其中,Pαi為xi的父節(jié)點,分為類節(jié)點與屬性變量等兩類。
TAN貝葉斯網(wǎng)絡(luò)分類器也同樣具有高效性和較高的分類精度,模型如圖2所示。
圖2 TAN貝葉斯網(wǎng)絡(luò)分類器模型
采摘機器人是一個零部件多、機械結(jié)構(gòu)復(fù)雜的系統(tǒng),由行走機構(gòu)、電機驅(qū)動、末端執(zhí)行器、傳感器結(jié)構(gòu)、控制器和機器人本體構(gòu)成。行走機構(gòu)為采摘機器人提供行進動力;電機驅(qū)動用來控制采摘機器人的前進、后退、轉(zhuǎn)彎及采摘手臂的姿態(tài)控制等;末端執(zhí)行器用于采摘目標水果,傳感器結(jié)構(gòu)用于獲取采摘機器人采摘手臂的姿態(tài)信息。采摘機器人結(jié)構(gòu)如圖3所示。
圖3 采摘機器人結(jié)構(gòu)示意圖
采摘機器人行走機構(gòu)包括轉(zhuǎn)向輪、推力器,以及傳感器結(jié)構(gòu)位置、力度和角度等姿態(tài)傳感器;末端執(zhí)行器是采摘機器人之重要部件,采摘機器人能夠完成采摘任務(wù)主要依靠末端執(zhí)行器,因此末端執(zhí)行器的故障會影響整個系統(tǒng)的性能。
綜上,本文選取轉(zhuǎn)向輪、推力器、位置傳感器、力度傳感器、角度傳感器和末端執(zhí)行器為故障診斷參數(shù)。
在實際的故障分析中,采集到的數(shù)據(jù)都是連續(xù)的,先需要進行數(shù)據(jù)離散處理,然后利用貝葉斯網(wǎng)絡(luò)分類器進行分析。本文研究的故障診斷參數(shù)離散化如表1所示。
從表1可以看出:故障診斷參數(shù)分為正常、故障和嚴重故障3個等級, “正?!北硎静烧獧C器人運行正常,“故障”表示采摘機器人運行壽命縮短,“嚴重故障”表示采摘機器人功能將異?;蛲耆?。
表1 采摘機器人故障診斷參數(shù)離散化
為了實現(xiàn)對采摘機器人故障進行分析和診斷,本節(jié)在上一節(jié)的基礎(chǔ)上,建立采摘機器人故障診斷貝葉斯網(wǎng)絡(luò)模型。根據(jù)采摘機器人運動控制、末端執(zhí)行器執(zhí)行原理,可以分層建立采摘機器人故障診斷貝葉斯網(wǎng)絡(luò)的拓撲圖。第一步,建立貝葉斯網(wǎng)絡(luò)的根節(jié)點,即為轉(zhuǎn)向輪、推力器、位置傳感器、力度傳感器、角度傳感器和末端執(zhí)行器等6個節(jié)點;第二步,通過邏輯分析,確定以上6個節(jié)點和行走機構(gòu)、傳感器結(jié)構(gòu)、末端執(zhí)行器之間的連接方向。本文建立的采摘機器人故障診斷貝葉斯網(wǎng)絡(luò)模型如圖4所示。
圖4 采摘機器人故障診斷貝葉斯網(wǎng)絡(luò)模型
確定貝葉斯網(wǎng)絡(luò)節(jié)點參數(shù)的實質(zhì)是確定節(jié)點的條件概率分布,但在這之前需要提前確定節(jié)點的驗前分布。在實際研究中,一般會假設(shè)系統(tǒng)參數(shù)的驗前分布狀態(tài)是已知條件。本文取Beta(p,a,b)分布作為采摘機器人故障診斷貝葉斯網(wǎng)絡(luò)中節(jié)點的驗前分布,具體的驗前分布信息如下:
1)節(jié)點p的均值P0條件已知,則
(9)
2)驗前分布節(jié)點參數(shù)a、b或者p的最小值已知,則
a≥a-,b≥b-或p≥p-
(10)
3)點參數(shù)p的置信區(qū)間[p1,p2]已知,則
(11)
假設(shè)P0條件已知,可以根據(jù)驗前概率密度獲取a和b,即
(12)
確定節(jié)點的條件概率分布主要是計算參數(shù)a、b的最優(yōu)值及π(p)的熵,則
H(Beta(p,a,b))=HB(a,b)=
(13)
假設(shè)P0已知,則聯(lián)立式(9)和式(13)可得
a/(a+b)=p0
(14)
因此,可以將a*、b*最優(yōu)求解問題轉(zhuǎn)換成多個約束條件下求極值的問題,則
(15)
利用式(15)可以求出節(jié)點參數(shù)驗前分布的概率分布參數(shù),通過SOC神經(jīng)網(wǎng)絡(luò)算法進行訓練后,即能夠為采摘機器人故障診斷提供依據(jù)。
采用TAN貝葉斯網(wǎng)絡(luò)分類器模型和SOC神經(jīng)網(wǎng)絡(luò)結(jié)合的方式對采摘機器人特征參數(shù)進行故障診斷分析。
SOC神經(jīng)網(wǎng)絡(luò)是一種無監(jiān)督的網(wǎng)絡(luò)算法,其可以對輸入的數(shù)據(jù)參數(shù)進行聚類分析。SOM神經(jīng)網(wǎng)絡(luò)整體架構(gòu)如圖5所示。
圖5 SOM神經(jīng)網(wǎng)絡(luò)整體架構(gòu)
SOM神經(jīng)網(wǎng)絡(luò)實現(xiàn)的流程主要有:
1)設(shè)置初始權(quán)值。SOM神經(jīng)網(wǎng)絡(luò)的初始權(quán)值為Wi,j(t)為a,介于0~1之間,同時設(shè)置算法的初始領(lǐng)域N(0),學習率為η(t),迭代次數(shù)為T。
2)選出輸入神經(jīng)元。在采集到參數(shù)節(jié)點的數(shù)據(jù)中選出一組Xk作為輸入的初始神經(jīng)元,即
(16)
3)計算歐式距離。利用SOC神經(jīng)網(wǎng)絡(luò)算法,計算出Xk與各個神經(jīng)層之間的歐式距離dj,k,即
(17)
其中,j為神經(jīng)元個數(shù)。
4)求出最優(yōu)的神經(jīng)元,即
dj,k=min(d1,k,d2,k,…,dp,k)
(18)
5)修正權(quán)值W為
Wi,j(t+1)=Wi,j(t)+η(t)hb,j(t)[Xi(t)-Wi,j(t)]
(19)
(20)
其中,b為最優(yōu)領(lǐng)域節(jié)點,rb、rj為輸出節(jié)點在點b、j的位置。
一直重復(fù)步驟1)~步驟5),直到t從0到T。
為驗證本文設(shè)計的基于貝葉斯網(wǎng)絡(luò)分類算法的采摘機器人故障診斷系統(tǒng)設(shè)計的可行性和可靠性,利用上訴診斷流程,對NB和TAN2種貝葉斯分類方法進行了對比分析,故障診斷結(jié)果如表2所示。
表2 采摘機器人故障診斷結(jié)果對比
由表2可以看出:無論從故障診斷平均正確率還是耗時時間,TAN貝葉斯網(wǎng)絡(luò)算法相比于NB算法都有很大的提高;在故障診斷正確率方面,TAN貝葉斯網(wǎng)絡(luò)算法高達95.92%,比NB貝葉斯網(wǎng)絡(luò)算法高了近7個百分點;在耗時時間方面,TAN貝葉斯網(wǎng)絡(luò)算法僅需要0.063 7s,比NB貝葉斯網(wǎng)絡(luò)算法縮短近40ms。因此,基于貝葉斯網(wǎng)絡(luò)分類算法的采摘機器人故障診斷系統(tǒng),不僅適用于采摘機器人動力故障,對執(zhí)行器故障也具有相同效果,且能較大地提高故障診斷正確率和效率。
針對貝葉斯網(wǎng)絡(luò)算法進行了介紹和研究,并在此基礎(chǔ)上建立了采摘機器人故障診斷貝葉斯網(wǎng)絡(luò)模型,能夠?qū)崿F(xiàn)采摘機器人的動力故障和執(zhí)行器故障的診斷檢測。實驗結(jié)果表明:在故障診斷正確率方面,TAN貝葉斯網(wǎng)絡(luò)算法比NB算法高了近7個百分點;在耗時時間方面,TAN貝葉斯網(wǎng)絡(luò)算法NB算法縮短近40ms,說明該系統(tǒng)不僅適用于采摘機器人動力故障和執(zhí)行器故障診斷,且能夠較大的提高故障診斷正確率和效率。