李銳君,胡代弟,侯維巖
(1.鄭州西亞斯學(xué)院,鄭州 451150;2.鄭州大學(xué) 信息工程學(xué)院,鄭州 450001)
隨著工業(yè)技術(shù)的快速發(fā)展,人類(lèi)在工業(yè)自動(dòng)化方面取得了巨大成就,這主要源于歷史上的工業(yè)革命,自此之后機(jī)械隨之誕生[1]。機(jī)械的到來(lái)給人類(lèi)生活添加了色彩,致使人類(lèi)生活更加便利。21世紀(jì)后,機(jī)械技術(shù)廣泛應(yīng)用于諸多領(lǐng)域,例如生產(chǎn)線(xiàn)中的加工機(jī)器人、醫(yī)院內(nèi)部的手術(shù)機(jī)器人、日常掃地機(jī)器人及分揀機(jī)器人等。在眾多機(jī)器人中[2],分揀機(jī)器人發(fā)揮著重要作用,它可以實(shí)現(xiàn)很多不可完成的復(fù)雜工作,具有較強(qiáng)的靈活性。但過(guò)度使用會(huì)導(dǎo)致分揀機(jī)器人的機(jī)械臂或任意零件發(fā)生故障,使分揀機(jī)器人無(wú)法正常開(kāi)展工作,所以為避免這種問(wèn)題,需要設(shè)計(jì)自動(dòng)化分揀機(jī)械臂故障檢測(cè)系統(tǒng),對(duì)其故障進(jìn)行檢測(cè)。
趙睿楠[3]等人提出基于集值觀(guān)測(cè)器的風(fēng)能轉(zhuǎn)換系統(tǒng)多類(lèi)型故障檢測(cè)的設(shè)計(jì)方法,該方法優(yōu)先對(duì)系統(tǒng)中的狀態(tài)數(shù)值及參數(shù)誤差區(qū)間更改后,再次修改了系統(tǒng)內(nèi)各個(gè)元素的取值范圍,從中得到增益矩陣,利用建立的觀(guān)測(cè)器對(duì)該矩陣開(kāi)展?fàn)顟B(tài)跟蹤,依據(jù)系統(tǒng)的理想誤差及實(shí)際誤差設(shè)計(jì)了故障檢測(cè)策略,以此實(shí)現(xiàn)故障檢測(cè)系統(tǒng)的設(shè)計(jì),該方法設(shè)計(jì)的故障檢測(cè)策略不夠完善,導(dǎo)致該方法存在故障檢測(cè)時(shí)間長(zhǎng)的問(wèn)題。
陳欣昌[4]等人提出基于深度自編碼網(wǎng)絡(luò)的高壓斷路器操作機(jī)構(gòu)機(jī)械故障診斷方法,該方法基于小波包變換法對(duì)提取的機(jī)械振動(dòng)信號(hào)實(shí)行變換,并對(duì)其分析后計(jì)算了各類(lèi)振動(dòng)信號(hào)的能量大小,將其用作機(jī)械故障診斷的特征向量,再通過(guò)構(gòu)建故障檢測(cè)模型對(duì)機(jī)械實(shí)行故障檢測(cè),以此完成故障檢測(cè),該方法獲取的特征向量存有誤差,導(dǎo)致該方法存在故障檢測(cè)漏報(bào)個(gè)數(shù)多的問(wèn)題。
張立鵬[5]等人提出基于注意力BiGRU的機(jī)械故障診斷方法研究,該方法對(duì)獲取的機(jī)械振動(dòng)信號(hào)實(shí)行預(yù)處理后,以此構(gòu)建了故障檢測(cè)模型,并對(duì)其優(yōu)化,達(dá)到提升特征提取效率的目的,根據(jù)歷史機(jī)械故障數(shù)據(jù),利用該模型對(duì)歷史故障數(shù)據(jù)和實(shí)際采集的故障數(shù)據(jù)實(shí)行檢測(cè),根據(jù)檢測(cè)結(jié)果實(shí)現(xiàn)機(jī)械故障檢測(cè)方法,該方法的檢測(cè)結(jié)構(gòu)存有欠缺,導(dǎo)致該方法的故障檢測(cè)效果差。
為解決上述方法中存在的問(wèn)題,提出基于無(wú)線(xiàn)通信技術(shù)的自動(dòng)化分揀機(jī)械臂故障檢測(cè)系統(tǒng)研究。
機(jī)械臂在分揀過(guò)程中主要分為兩部分,第一部分為鏡頭和相機(jī),第二部分則為機(jī)械臂和控制系統(tǒng)。一般情況下相機(jī)會(huì)設(shè)置在機(jī)械臂的末端。
機(jī)械臂在運(yùn)行期間,會(huì)將PC用作系統(tǒng)中的上位機(jī),而機(jī)械臂以及它的控制系統(tǒng)為下位機(jī)。上位機(jī)主要用于對(duì)采集圖像、圖像分割、圖像識(shí)別等操作,下位機(jī)則根據(jù)上位機(jī)采集到的數(shù)據(jù),根據(jù)接收的數(shù)據(jù)信息完成機(jī)械臂的分揀任務(wù),其故障檢測(cè)電路圖如圖1所示。
自動(dòng)化分揀機(jī)械臂在工作過(guò)程中,首先要對(duì)攝像機(jī)和手眼實(shí)行標(biāo)定,以此確認(rèn)相機(jī)模型、相機(jī)坐標(biāo)系與機(jī)械臂末端坐標(biāo)系三者之間的關(guān)系,再對(duì)機(jī)械臂實(shí)行初始化,初始化后要控制機(jī)械臂自動(dòng)運(yùn)行到工作位置上方的拍照點(diǎn),利用機(jī)械臂上的相機(jī)對(duì)工作平面拍照后,取得圖片。對(duì)圖像中的目標(biāo)區(qū)域分割后,需要對(duì)目標(biāo)區(qū)域的中心像素坐標(biāo)點(diǎn)計(jì)算出來(lái),以此取得目標(biāo)與機(jī)械臂之間的位置,依據(jù)目標(biāo)種類(lèi)確立機(jī)械臂姿態(tài)的旋轉(zhuǎn)角度,最終控制機(jī)械臂抓取目標(biāo),將其放在指定位置后,實(shí)現(xiàn)自動(dòng)化分揀。
1.1.1 圖像顯示功能模塊
自動(dòng)化分揀機(jī)械臂在運(yùn)行過(guò)程中,必不可少的一部分就是相機(jī)獲取圖像后的圖像顯示[8]。設(shè)計(jì)的圖像顯示功能模塊如圖2所示。
圖2 圖像顯示功能模塊
依據(jù)圖2可知,圖像顯示功能模塊可與機(jī)器人相互連接,對(duì)相機(jī)的開(kāi)關(guān)實(shí)行開(kāi)啟和關(guān)閉,對(duì)原圖像進(jìn)行處理并將其分割結(jié)果顯示,獲取機(jī)器人的位置,對(duì)機(jī)械臂進(jìn)行定位及識(shí)別等。該功能模塊主要能對(duì)分揀機(jī)械臂的各種分揀結(jié)果可視化,具有較強(qiáng)的便利性。
1.1.2 分揀控制功能模塊
自動(dòng)化分揀機(jī)械臂除可自動(dòng)化分揀外,還可通過(guò)設(shè)置手寫(xiě)指令對(duì)機(jī)械臂的分揀動(dòng)作開(kāi)展控制,其主要包括控制系統(tǒng)、計(jì)算機(jī)、觸摸屏等,可通過(guò)機(jī)械臂抓取分類(lèi)貨物。
其主要控制系統(tǒng)為PC機(jī)。利用手動(dòng)指令對(duì)機(jī)械臂控制前,要先利用觸摸屏對(duì)手動(dòng)指令圖像信息實(shí)行采集,通過(guò)PC機(jī)對(duì)圖像識(shí)別和分類(lèi),將最終結(jié)果輸送到機(jī)械臂控制系統(tǒng)中,機(jī)械臂根據(jù)指令信息開(kāi)展分揀操作。
1.1.3 主控制功能模塊設(shè)計(jì)
機(jī)械臂在分揀期間,主控制系統(tǒng)是它的重要組成部分,它是整個(gè)主控制系統(tǒng)的核心。它的具體功能為觸摸屏采集到指令信息后,開(kāi)始接收數(shù)據(jù);通過(guò)PC機(jī)識(shí)別指令數(shù)據(jù),再發(fā)送識(shí)別出的控制指令;依據(jù)獲取的指令信息,實(shí)現(xiàn)機(jī)械臂的動(dòng)作路線(xiàn)規(guī)劃,令機(jī)械臂完成動(dòng)作路線(xiàn);根據(jù)接收的控制信息,完成對(duì)機(jī)械臂位姿的控制,機(jī)械臂能進(jìn)一步實(shí)現(xiàn)動(dòng)作路線(xiàn),具體的工作流程如圖3所示。
圖3 機(jī)械臂手動(dòng)控制流程
根據(jù)主控制系統(tǒng)的工作流程,設(shè)計(jì)主控制系統(tǒng)的功能模塊,該功能模塊主要分為4個(gè)部分,機(jī)械臂的狀態(tài)控制功能可利用計(jì)算機(jī)對(duì)機(jī)械臂的連接開(kāi)關(guān)和伺服開(kāi)關(guān)控制。
機(jī)械臂在分揀前需要對(duì)機(jī)械臂的坐標(biāo)位置調(diào)整,因而利用手動(dòng)調(diào)試功能對(duì)機(jī)械臂的關(guān)節(jié)坐標(biāo)控制,實(shí)現(xiàn)機(jī)械臂手臂的位置微調(diào)。
機(jī)械臂的各個(gè)位姿狀態(tài)可以利用通信功能直接發(fā)送到應(yīng)用程序中,實(shí)現(xiàn)機(jī)械臂當(dāng)前位置的顯示。
為使機(jī)械臂能夠?qū)崿F(xiàn)分揀作業(yè),需要利用手寫(xiě)指令對(duì)分揀動(dòng)作數(shù)據(jù)輸入、識(shí)別和發(fā)送,以此使機(jī)械臂實(shí)現(xiàn)相關(guān)控制動(dòng)作,完成分揀作業(yè)控制。
根據(jù)上述設(shè)計(jì)的自動(dòng)化分揀機(jī)械臂硬件,使機(jī)械臂能夠自動(dòng)化分揀,基于硬件設(shè)計(jì),利用自動(dòng)化分揀機(jī)械臂軟件設(shè)計(jì)實(shí)現(xiàn)機(jī)械臂故障檢測(cè),將硬件與軟件相結(jié)合后,實(shí)現(xiàn)自動(dòng)化分揀機(jī)械臂故障檢測(cè)系統(tǒng)的整體設(shè)計(jì)。
1.2.1 無(wú)線(xiàn)通信技術(shù)
無(wú)線(xiàn)通信技術(shù)本身有著巨大的便利性,同時(shí)它的維護(hù)簡(jiǎn)單,組件靈活,不會(huì)因?yàn)閼?yīng)用環(huán)境的影響而發(fā)生改變。因此,將無(wú)線(xiàn)通信技術(shù)應(yīng)用到自動(dòng)化分揀機(jī)械臂中,將其作為機(jī)械臂的重要組成部分,而無(wú)線(xiàn)通信技術(shù)通信期間的好壞會(huì)對(duì)機(jī)械臂的整體分揀運(yùn)行情況造成影響。
由于自動(dòng)化分揀機(jī)械臂能夠在任意場(chǎng)合下使用,所以為了降低工作環(huán)境對(duì)機(jī)械臂的影響,要應(yīng)用通用效果強(qiáng)、安全性高、可靠性高的無(wú)線(xiàn)通信方法,因而選取以GPRS技術(shù)和nRF24L01技術(shù)相結(jié)合的無(wú)線(xiàn)通信技術(shù)。其中nRF24L01技術(shù)可以與各個(gè)功能模塊相連,使模塊與模塊之間能夠?qū)崿F(xiàn)信息傳輸,與其相反的是GPRS技術(shù)可以能夠傳輸機(jī)械臂控制中心與現(xiàn)場(chǎng)的遠(yuǎn)程信息傳輸。利用這兩種技術(shù)后,就可以實(shí)現(xiàn)近距離與遠(yuǎn)距離之間的信息傳輸,具有較強(qiáng)的通用性。那么構(gòu)建的無(wú)線(xiàn)通信架構(gòu)如圖5所示。
圖4 無(wú)線(xiàn)通信架構(gòu)
根據(jù)圖5可知,首先將用戶(hù)中心與Internet網(wǎng)相連,使其能夠獲取到公共網(wǎng)絡(luò)的動(dòng)態(tài)IP地址,根據(jù)IP地址的域名對(duì)軟件實(shí)行解析后取得GPRS網(wǎng)絡(luò)可以開(kāi)展訪(fǎng)問(wèn)的域名及端口。利用上機(jī)位對(duì)本地端口監(jiān)聽(tīng)后,需要判定在本地中是否存在GPRS模塊,再向其發(fā)出TCP的連接請(qǐng)求。當(dāng)處于現(xiàn)場(chǎng)的GPRS模塊與移動(dòng)公司的GPRS網(wǎng)絡(luò)相連時(shí),就可對(duì)用戶(hù)中心發(fā)出需要連接的請(qǐng)求。機(jī)械臂組成后,它的任意功能模塊都要存有nRF24L01模塊,這樣上機(jī)位輸送狀態(tài)到GPRS模塊后,就能夠利用串口將輸送狀態(tài)傳輸?shù)絾纹瑱C(jī)中,經(jīng)過(guò)SPI接口輸送完目前的功能模塊。
依據(jù)上述分析,建立現(xiàn)場(chǎng)各個(gè)模塊之間的無(wú)線(xiàn)通信架構(gòu),如圖5所示。
圖5 現(xiàn)場(chǎng)各個(gè)模塊之間的無(wú)線(xiàn)通信構(gòu)架
機(jī)械臂在運(yùn)行期間,若其中某一個(gè)功能模塊結(jié)束了運(yùn)動(dòng),那么系統(tǒng)的當(dāng)前信息就會(huì)通過(guò)nRF24L01傳輸?shù)狡溆嗄K中,其余模塊接收到信息后就能夠?qū)嵭邢乱粍?dòng)作,從而實(shí)現(xiàn)整個(gè)自動(dòng)化分揀機(jī)械臂的分揀工作。
1.2.2 自動(dòng)化分揀機(jī)械臂故障識(shí)別
基于本文的硬件設(shè)計(jì)完成軟件系統(tǒng)設(shè)計(jì),對(duì)機(jī)械臂傳感器中的數(shù)據(jù)進(jìn)行采集并處理。首先對(duì)采集的圖像進(jìn)行去噪處理,利用BP神經(jīng)網(wǎng)絡(luò)提取機(jī)械臂的故障特征值。
將BP神經(jīng)網(wǎng)絡(luò)的隱層輸出設(shè)為Pi,輸入層和隱層之間的權(quán)重為λ,則隱層第n個(gè)單元輸出為:
其中,N=1,2,...,n;ε表示設(shè)定閾值。設(shè)φ表示隱層與輸入層之間的權(quán)重,輸出層第j個(gè)單元的輸出為:
其中,M=1,2,...,m;γh表示預(yù)先設(shè)定的閾值。
設(shè)f表示伸縮因子;g表示變換尺度因子,得到信號(hào)處理函數(shù):
式(3)中,f表示伸縮因子;g表示變換尺度因子。根據(jù)式(3)可確定機(jī)械臂各故障的特征。
計(jì)算故障檢測(cè)計(jì)算權(quán)重為:
其中,t表示樣本數(shù)量;?代表計(jì)算步長(zhǎng);S(z)mj表示故障識(shí)別的誤差傳輸項(xiàng),其檢測(cè)誤差的計(jì)算公式可設(shè)定為:
對(duì)其進(jìn)行運(yùn)算,如誤差在該范圍內(nèi)則代表機(jī)械臂并未發(fā)生故障,如超過(guò)該范圍則代表機(jī)械臂完好,并未發(fā)生故障。
1.2.3 ADC采樣程序設(shè)計(jì)
本文選擇12位單片機(jī)ADC程序,其最高采樣的頻率大致在600ksps,根據(jù)ADC采樣結(jié)果對(duì)數(shù)據(jù)實(shí)行轉(zhuǎn)換,并把轉(zhuǎn)換后的數(shù)據(jù)輸送到DMA區(qū)域內(nèi),以此存儲(chǔ)在A(yíng)DC采樣程序中。通常情況下,采樣的時(shí)間及轉(zhuǎn)換的時(shí)間會(huì)對(duì)ADC的采樣頻率帶來(lái)影響,且采樣的模式也大不相同,具體分為自動(dòng)采樣和手動(dòng)采樣兩種,這兩種模式都依據(jù)ADC時(shí)鐘決定而成,那么ADCS的時(shí)鐘計(jì)算表達(dá)方程式如式(6)所示:
式(6)中,TCY描述的是指令周期,Tosc描述的是時(shí)鐘周期,且TOSC=120MHz,TAD描述的是ADC時(shí)鐘,ADCS描述的是控制寄存器。
根據(jù)式(6)所示,設(shè)置采樣頻率為45KHz,因而設(shè)計(jì)出ADC采樣程序,那么具體的采樣流程如圖6所示。
圖6 ADC采樣流程圖
1.2.4 數(shù)據(jù)處理流程設(shè)計(jì)
在自動(dòng)化分揀機(jī)械臂故障檢測(cè)軟件中,數(shù)據(jù)處理是軟件的核心,它主要分為兩種分析狀態(tài),第一種是時(shí)域分析,第二種是頻域分析。通常情況下時(shí)域分析數(shù)據(jù)具有較強(qiáng)的便利性,它能夠直接分析數(shù)據(jù)。而頻域分析則廣泛應(yīng)用于故障檢測(cè)中,頻域分析能夠依據(jù)機(jī)械臂采集數(shù)據(jù)的頻域信息展現(xiàn)出更多的特征,便于對(duì)故障頻率的提取及檢測(cè)。依據(jù)頻域分析后的機(jī)械臂特征值提取,將各個(gè)特征值比對(duì)后,以此檢測(cè)機(jī)械臂是否發(fā)生故障,若不存在故障,則重新實(shí)行ADC采樣,反復(fù)驗(yàn)證直至發(fā)生到故障為止;若存在故障,就要立即報(bào)警,并把檢測(cè)出的故障類(lèi)型展現(xiàn)在顯示屏中,最終實(shí)現(xiàn)機(jī)械臂故障檢測(cè)。
本文選取用于分揀作業(yè)型號(hào)為YST-ZL-4124的六自由度機(jī)械臂系統(tǒng)進(jìn)行研究,采用D-H坐標(biāo)轉(zhuǎn)換法完成其動(dòng)力學(xué)模型的構(gòu)建,對(duì)每個(gè)關(guān)節(jié)建立一個(gè)坐標(biāo)系,然后進(jìn)行相鄰坐標(biāo)系之間的轉(zhuǎn)換,最后根據(jù)其變換信息得到機(jī)械臂最末端對(duì)于基礎(chǔ)坐標(biāo)系的位置和姿態(tài),其連桿之間的關(guān)系如圖7所示。
圖7 機(jī)械臂相鄰連桿關(guān)系圖
圖中,θ代表關(guān)節(jié)扭角;a代表連桿長(zhǎng)度;α代表連桿扭角;d代表連桿偏距。αi-1代表xi軸旋轉(zhuǎn)重合,zi-1與zi之間的夾角;ai-1代表xi軸旋轉(zhuǎn)重合,zi-1與zi之間的距離;θi代表繞zi軸旋轉(zhuǎn)重合,xi-1與xi之間的角度;di代表繞zi-1軸旋轉(zhuǎn)重合,xi-1與xi之間的距離。
求得其機(jī)械臂各關(guān)節(jié)的D-H參數(shù)如表1所示。
表1 機(jī)械臂各關(guān)節(jié)D-H參數(shù)
將上述機(jī)械臂各連桿的DH參數(shù)導(dǎo)入MATLAB仿真軟件中,搭建Simulink模型,如圖8所示。
圖8 機(jī)械臂仿真模型
仿真過(guò)程中的摩擦力和外界擾動(dòng)分別表示為:
根據(jù)上述完成建模,然后采用本文系統(tǒng)對(duì)其進(jìn)行故障測(cè)試。對(duì)于一個(gè)機(jī)械臂系統(tǒng)而言,可將其故障類(lèi)型分為三種,分別是執(zhí)行器故障、機(jī)械臂硬件結(jié)構(gòu)故障和傳感器故障,本文僅對(duì)其傳感器故障進(jìn)行測(cè)試。在本文的故障測(cè)試過(guò)程中采用的故障信號(hào)都是由波形發(fā)生器產(chǎn)生的,將信號(hào)導(dǎo)入模型之中,進(jìn)行各種模擬測(cè)試。
選取基于深度自編碼網(wǎng)絡(luò)的高壓斷路器操作機(jī)構(gòu)機(jī)械故障診斷方法為對(duì)比方法1,基于注意力BiGRU的機(jī)械故障診斷方法為對(duì)比方法2,與本文系統(tǒng)共同進(jìn)行故障檢測(cè),驗(yàn)證本文方法的實(shí)用性。
利用三種方法共同進(jìn)行同一故障信號(hào)檢測(cè),測(cè)試結(jié)果如圖9所示。
由圖9可知,與對(duì)比方法1和對(duì)比方法2相比,本文方法測(cè)得的故障信號(hào)波形與實(shí)際信號(hào)波形更接近,即本文方法對(duì)于信號(hào)捕捉的精準(zhǔn)度要優(yōu)于對(duì)比方法。
圖9 故障檢測(cè)結(jié)果
基于此,進(jìn)行三種方法檢測(cè)準(zhǔn)確率的對(duì)比。采集機(jī)械臂分揀數(shù)據(jù),設(shè)置本次采集數(shù)據(jù)集共包含600個(gè)數(shù)據(jù)樣本。利用人為技術(shù)在數(shù)據(jù)樣本點(diǎn)中引入故障,通過(guò)三種方法對(duì)設(shè)置的樣本數(shù)據(jù)開(kāi)展故障檢測(cè)準(zhǔn)確率實(shí)驗(yàn),得到測(cè)試結(jié)果如表2所示。
表2 故障檢測(cè)率測(cè)試
分析表2中的數(shù)據(jù)發(fā)現(xiàn),在整體測(cè)試期間,方法1的故障檢測(cè)率持最高值,最小為98.7%,表明本文方法的故障檢測(cè)效果要優(yōu)于其余兩種方法,證明了方法1的故障檢測(cè)效果強(qiáng)。
為對(duì)比三種方法的檢測(cè)效率,通過(guò)三種方法對(duì)設(shè)置的樣本數(shù)據(jù)開(kāi)展故障檢測(cè)時(shí)間測(cè)試,檢測(cè)時(shí)間越短,說(shuō)明故障檢測(cè)效率越高,驗(yàn)證該方法的故障檢測(cè)效果越好。那么具體的測(cè)試結(jié)果如圖10所示。
圖10 故障檢測(cè)時(shí)間測(cè)試
分析圖10中的數(shù)據(jù)發(fā)現(xiàn),由于采樣數(shù)據(jù)中存在故障數(shù)據(jù),所以檢測(cè)故障時(shí),本文方法檢測(cè)故障耗時(shí)明顯低于對(duì)比方法的檢測(cè)耗時(shí),且在后續(xù)測(cè)試中本文方法的故障檢測(cè)時(shí)間持續(xù)在2s,而方法2和方法3還在陸續(xù)上升,因而可判斷本文方法的故障檢測(cè)時(shí)間小,同時(shí)本文方法的故障檢測(cè)效率最佳。
由于自動(dòng)分揀機(jī)械臂的日常工作任務(wù)較重,致使機(jī)械臂的負(fù)擔(dān)較大,容易在內(nèi)部發(fā)生故障,所以針對(duì)自動(dòng)化分揀機(jī)械臂故障檢測(cè)系統(tǒng)方法存在的問(wèn)題,需要對(duì)自動(dòng)化分揀機(jī)械臂故障檢測(cè)系統(tǒng)實(shí)行設(shè)計(jì)。該方法優(yōu)先對(duì)系統(tǒng)的硬件設(shè)計(jì),實(shí)現(xiàn)機(jī)械臂的日常分揀,基于無(wú)線(xiàn)通信技術(shù)設(shè)計(jì)了系統(tǒng)軟件,利用軟件中的數(shù)據(jù)處理程序?qū)崿F(xiàn)分揀機(jī)械臂的故障檢測(cè),從而完成自動(dòng)化分揀機(jī)械臂故障檢測(cè)系統(tǒng)整體設(shè)計(jì)。該方法為自動(dòng)化分揀機(jī)械臂故障檢測(cè)系統(tǒng)方法提供了重要信息基礎(chǔ),在今后有著長(zhǎng)遠(yuǎn)的發(fā)展前景。