童佳寧, 李志剛
(1. 河北工業(yè)大學(xué) 電氣工程學(xué)院, 天津 300130; 2. 石家莊職業(yè)技術(shù)學(xué)院 信息工程系, 石家莊 050051)
在港口的清淤工作中,提高機(jī)械設(shè)備的工作效率、降低能耗、預(yù)測設(shè)備故障及糾正操作人員的不規(guī)范操作動(dòng)作等一直是業(yè)內(nèi)追求的目標(biāo)。實(shí)現(xiàn)這些目標(biāo)的關(guān)鍵在于對機(jī)械運(yùn)動(dòng)特別是連續(xù)機(jī)械運(yùn)動(dòng)的準(zhǔn)確識別及分析。準(zhǔn)確識別出清淤設(shè)備關(guān)鍵部位的運(yùn)動(dòng)動(dòng)作,進(jìn)而將運(yùn)動(dòng)動(dòng)作與標(biāo)準(zhǔn)庫的規(guī)范動(dòng)作進(jìn)行比對,同時(shí)做出相應(yīng)的評估。再根據(jù)所得評估結(jié)果得出設(shè)備工作狀態(tài)等級,對所監(jiān)測的清淤船進(jìn)行報(bào)警或?qū)嵤┫鄳?yīng)的干預(yù)或提交操作改進(jìn)意見。
隨著混合傳感器和數(shù)據(jù)傳輸技術(shù)的進(jìn)步及機(jī)器學(xué)習(xí)技術(shù)的發(fā)展,機(jī)械動(dòng)作識別尤其是連續(xù)動(dòng)作的識別與分析已成為可能。通過混合傳感器采集到機(jī)械設(shè)備工作時(shí)的運(yùn)動(dòng)信號,并對這些數(shù)據(jù)進(jìn)行深入的處理和分析,可判斷出設(shè)備所處的工作狀態(tài)。
常用的動(dòng)作采集方法有采集運(yùn)動(dòng)軌跡、物體輪廓和骨架信息等。再通過建立模型對其進(jìn)行分類,典型分類方法有支持向量機(jī)、隱馬爾可夫模型及動(dòng)態(tài)時(shí)間規(guī)整等,其中廣泛應(yīng)用且效果較好的是支持向量機(jī),這是一種有著堅(jiān)實(shí)理論基礎(chǔ)的小樣本學(xué)習(xí)方法。但它需要借助二次規(guī)劃來求解支持向量,而求解二次規(guī)劃將涉及m階矩陣的計(jì)算,當(dāng)m數(shù)目很大時(shí)該矩陣的存儲(chǔ)與計(jì)算將耗費(fèi)大量的機(jī)器內(nèi)存和運(yùn)算時(shí)間,使得該方法在大數(shù)據(jù)量實(shí)時(shí)識別場合中使用有所不及。視頻采集所用Kinect主要應(yīng)用于人體動(dòng)作識別,識別景深范圍小,對于較大型設(shè)備動(dòng)作已超出其識別范圍。
鑒于以上方法的局限性,本文提出一種連續(xù)動(dòng)作的識別方法。通過在機(jī)械臂上安裝三維混合傳感器,采集作業(yè)時(shí)的運(yùn)動(dòng)數(shù)據(jù)。建立機(jī)械臂模型并分析其運(yùn)動(dòng)特性和采集到的運(yùn)動(dòng)數(shù)據(jù),提出一種新的復(fù)合特征參數(shù)用于動(dòng)作分割。在完成連續(xù)動(dòng)作分割的基礎(chǔ)上分析鏟斗作業(yè)動(dòng)作,提出一種位移向量作為BP神經(jīng)網(wǎng)絡(luò)進(jìn)行動(dòng)作識別的特征參數(shù),最終將機(jī)械臂的核心動(dòng)作從整體作業(yè)過程中識別出來。連續(xù)動(dòng)作識別流程見圖1。
清淤船機(jī)械臂完整機(jī)械結(jié)構(gòu)見圖2。機(jī)械臂作業(yè)動(dòng)作全部反應(yīng)在鏟斗上;鏟斗的空間坐標(biāo)(包括位置和角度)及鏟斗的運(yùn)動(dòng)速度和加速度完全取決于機(jī)械臂的動(dòng)作。小臂前端的四連桿機(jī)構(gòu)控制鏟斗的翻轉(zhuǎn)動(dòng)作。
將大臂、小臂和四連桿機(jī)構(gòu)抽象出來,建立機(jī)械臂抽象模型見圖3,其中:b桿為鏟斗;c桿為小臂。
混合傳感器分別安裝于大臂、小臂和四連桿,分別獲得它們與水平方向的夾角。鏟斗鏟齒尖端與四連桿機(jī)構(gòu)的b桿成固定的90°?!螧可通過傳感器獲得;四連桿各桿長度可由各型號挖掘機(jī)手冊得到,最終需求解到的∠I,即斗口面與垂直方向夾角(后稱斗口角)。將核心部分的四連桿機(jī)構(gòu)抽出見圖4。
(1)
由式(1)可求得∠G。
(2)
(3)
由式(2)和式(3)可求得∠H和∠K,得到斗口角∠I為
∠I=∠G-90=∠D+∠F-180
(4)
鏟斗的位移一定在由機(jī)械臂尺寸決定的范圍內(nèi)。鏟斗運(yùn)動(dòng)過程見圖5。圖5中:θ為作業(yè)中大臂繞車身旋轉(zhuǎn)的角度;d為鏟斗運(yùn)動(dòng)位移。求取過程為
(5)
清淤船機(jī)械臂完成一次從挖掘、轉(zhuǎn)運(yùn)到卸載的運(yùn)動(dòng)過程,大臂、小臂和四連桿動(dòng)作通過多個(gè)混合三維速度-加速度傳感器以每秒數(shù)百萬個(gè)數(shù)據(jù)的速度進(jìn)行采集,并不斷地傳至數(shù)據(jù)中心。這些數(shù)據(jù)中摻雜著各種機(jī)械振動(dòng)造成的無效數(shù)據(jù),如發(fā)動(dòng)機(jī)的振動(dòng)、機(jī)械臂和鏟斗振動(dòng)等。為剔除這些無效數(shù)據(jù),面對數(shù)據(jù)量較大和系統(tǒng)要求實(shí)時(shí)性較高的特點(diǎn),選用算法簡便、處理速度較快的快速移窗濾波法進(jìn)行處理。將原始數(shù)據(jù)與濾波后數(shù)據(jù)對比繪制波形曲線見圖6,由圖6可知濾波效果十分顯著。
通過對數(shù)據(jù)的分析發(fā)現(xiàn),在清淤作業(yè)中完成一次完整的連續(xù)挖-移-卸動(dòng)作時(shí),斗口角呈現(xiàn)出周期性的變化(見圖7)。因此,可將斗口角作為特征參數(shù),分割出每個(gè)周期的起止時(shí)間,即將完整的一次連續(xù)動(dòng)作從總時(shí)長中分離出來。
所得到的鏟斗動(dòng)作時(shí)間和鏟斗位移可選作BP神經(jīng)網(wǎng)絡(luò)的輸入特征值。
BP神經(jīng)網(wǎng)絡(luò)強(qiáng)調(diào)的是網(wǎng)絡(luò)采用誤差反向傳播的算法進(jìn)行權(quán)值調(diào)整。它由多層構(gòu)成,層間全連接且層內(nèi)無連接。其中,網(wǎng)絡(luò)的傳遞函數(shù)必須可微。BP基本結(jié)構(gòu)見圖8。
輸入項(xiàng)包含動(dòng)作開始時(shí)間、動(dòng)作結(jié)束時(shí)間、鏟斗位移挖掘坐標(biāo)和卸載坐標(biāo)等4種特征值,因此輸入節(jié)點(diǎn)數(shù)量設(shè)置為4個(gè)。輸出判定為是否為完整動(dòng)作,故設(shè)置輸出節(jié)點(diǎn)為1個(gè)。
隱含層所包含的節(jié)點(diǎn)數(shù)對整體網(wǎng)絡(luò)的性能有著很大的影響,一般來說更多的隱含層節(jié)點(diǎn)數(shù)能帶來更強(qiáng)的網(wǎng)絡(luò)性能,但是所帶來的負(fù)面影響是訓(xùn)練時(shí)間更長。到目前為止,BP網(wǎng)絡(luò)還沒有確定節(jié)點(diǎn)個(gè)數(shù)的明確方式。通常做法是采用如下經(jīng)驗(yàn)公式給出估計(jì)范圍:
(6)
式(6)中:k為樣本數(shù);M為隱含層神經(jīng)節(jié)點(diǎn)個(gè)數(shù);n為輸入層節(jié)點(diǎn)個(gè)數(shù);m為輸出層節(jié)點(diǎn)個(gè)數(shù);a為[0,10]之間的常數(shù)。通過經(jīng)驗(yàn)公式計(jì)算范圍結(jié)合試驗(yàn)結(jié)果,最終將隱層節(jié)點(diǎn)數(shù)設(shè)為4。
訓(xùn)練數(shù)據(jù)歸一化后輸入網(wǎng)絡(luò),每個(gè)樣本的實(shí)際輸出與期望的差為誤差。實(shí)際輸出為
(7)
網(wǎng)絡(luò)的期望輸出為
(8)
在實(shí)驗(yàn)設(shè)計(jì)時(shí)使用誤差的平方和作為誤差參數(shù)。
(9)
由圖8的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖可得到輸入層到隱層的權(quán)重矩陣為
(10)
從隱層到輸出層的權(quán)重矩陣為
(11)
根據(jù)最速下降法,權(quán)值調(diào)整公式為
(12)
(13)
為了提高訓(xùn)練速度,本文使用有動(dòng)量因子的最速下降法,因此除了第一次迭代外,之后所有的迭代都要考慮前一次迭代的權(quán)值修改量為
試驗(yàn)中以斗山DX300LC型挖掘機(jī)為例,在多日的清淤作業(yè)中完成的動(dòng)作包含標(biāo)準(zhǔn)動(dòng)作挖-移-卸和非標(biāo)準(zhǔn)動(dòng)作推卸、搬運(yùn)等。傳感器分別安裝在大臂、小臂、四連桿及底座上,采樣頻率為115.2 kHz,共采集數(shù)據(jù)千余組。機(jī)械臂在作業(yè)的同時(shí),攝像機(jī)同步拍攝全部過程作為驗(yàn)證依據(jù),回看視頻時(shí)人工標(biāo)注各時(shí)間段內(nèi)動(dòng)作是否為完整連續(xù)動(dòng)作,標(biāo)注后數(shù)據(jù)作為訓(xùn)練數(shù)據(jù)及測試數(shù)據(jù)。利用斗口角作為動(dòng)作分割的參數(shù),分割出每個(gè)連續(xù)動(dòng)作的起止時(shí)間及在此時(shí)間段內(nèi)其他對應(yīng)的參數(shù)。部分分割結(jié)果見表1。
針對所分割出的600多組數(shù)據(jù)進(jìn)一步通過BP神經(jīng)網(wǎng)絡(luò)完成識別判定,識別出連續(xù)挖-移-卸動(dòng)作并統(tǒng)計(jì)次數(shù)(見表2)。
表1 動(dòng)作分割結(jié)果
表2 識別結(jié)果
本文使用BP神經(jīng)網(wǎng)絡(luò),完成了從機(jī)械臂多種動(dòng)作中識別出連續(xù)的挖-移-卸動(dòng)作。試驗(yàn)結(jié)果表明:通過引入斗口角作為動(dòng)作分割參數(shù)切實(shí)可行,可將數(shù)據(jù)進(jìn)行有效的時(shí)間段劃分。引入復(fù)合參數(shù)-鏟斗位移作為BP神經(jīng)網(wǎng)的輸入特征,達(dá)到了良好的識別效果,為后續(xù)清淤機(jī)械工況等級劃分、故障預(yù)警及操作指導(dǎo)等工作打下良好的基礎(chǔ)。