本發(fā)明涉及一種服務(wù)機(jī)器人運(yùn)動(dòng)功能自動(dòng)測(cè)試系統(tǒng),屬于機(jī)器人制造技術(shù)領(lǐng)域。
背景技術(shù):
多數(shù)服務(wù)機(jī)器人采用輪式行走機(jī)構(gòu),其運(yùn)動(dòng)性能是評(píng)價(jià)品質(zhì)的重要指標(biāo)。在服務(wù)機(jī)器人的批量生產(chǎn)中,出廠功能與性能檢驗(yàn)是一項(xiàng)必備的生產(chǎn)環(huán)節(jié)。服務(wù)機(jī)器人具有離散性個(gè)體特征,其出廠測(cè)試通常是在模擬實(shí)用環(huán)境的空曠場(chǎng)地內(nèi)進(jìn)行,運(yùn)動(dòng)功能測(cè)試是出廠測(cè)試的主要內(nèi)容之一。在運(yùn)動(dòng)功能測(cè)試中,受命令控制的服務(wù)機(jī)器人應(yīng)對(duì)不同運(yùn)動(dòng)命令做出正確的響應(yīng)。實(shí)際生產(chǎn)中,服務(wù)機(jī)器人部件的安裝與接線可能出現(xiàn)錯(cuò)誤,進(jìn)而導(dǎo)致服務(wù)機(jī)器人的運(yùn)動(dòng)響應(yīng)錯(cuò)誤,此類錯(cuò)誤無(wú)法通過(guò)讀取機(jī)器人rc正確反映。目前,運(yùn)動(dòng)功能測(cè)試是通過(guò)測(cè)試人員在現(xiàn)場(chǎng)逐一進(jìn)行觀察、判斷,進(jìn)而得出結(jié)論,此類方法無(wú)疑效率低下。因此,設(shè)計(jì)一套服務(wù)機(jī)器人運(yùn)動(dòng)功能自動(dòng)測(cè)試系統(tǒng)勢(shì)在必行,是在服務(wù)機(jī)器人批量生產(chǎn)、出廠群測(cè)的場(chǎng)景下提高測(cè)試效率、準(zhǔn)確性與自動(dòng)化水平的最佳手段。
技術(shù)實(shí)現(xiàn)要素:
為了克服現(xiàn)有技術(shù)中存在的不足,本發(fā)明目的是提供一種服務(wù)機(jī)器人運(yùn)動(dòng)功能自動(dòng)測(cè)試系統(tǒng)。該系統(tǒng)能夠通過(guò)計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)采集安裝在服務(wù)機(jī)器人上的運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊的數(shù)據(jù),測(cè)試出服務(wù)機(jī)器人運(yùn)動(dòng)功能的正確性,自動(dòng)、高效的完成服務(wù)機(jī)器人出廠群測(cè)目標(biāo)。
為了實(shí)現(xiàn)上述發(fā)明目的,解決己有技術(shù)中存在的問(wèn)題,本發(fā)明采取的技術(shù)方案是:一種服務(wù)機(jī)器人運(yùn)動(dòng)功能自動(dòng)測(cè)試系統(tǒng),包括運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊和計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái),所述運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊包括數(shù)據(jù)采集單元、mcu單元、數(shù)據(jù)交互單元及電源管理單元,其中,所述數(shù)據(jù)采集單元包括三軸地磁傳感器、三軸角速度傳感器、三軸加速度傳感器并與其相連的模擬信號(hào)調(diào)理電路,所述mcu單元包括信號(hào)采集接口并與其依次相連的數(shù)據(jù)融合、運(yùn)動(dòng)姿態(tài)判斷及數(shù)據(jù)交互接口,所述數(shù)據(jù)交互單元包括usb電路及wifi電路,所述電源管理單元分別與數(shù)據(jù)采集單元、mcu單元及數(shù)據(jù)交互單元相連,所述模擬信號(hào)調(diào)理電路通過(guò)ad轉(zhuǎn)換接口與信號(hào)采集接口相連,所述三軸角速度傳感器和三軸地磁傳感器分別通過(guò)iic總線與信號(hào)采集接口相連,所述數(shù)據(jù)交互接口通過(guò)usb總線與usb電路相連,另外,數(shù)據(jù)交互接口還通過(guò)spi接口與wifi電路相連,所述計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)包括rc綁定模塊并與其依次相連的運(yùn)動(dòng)設(shè)定模塊、運(yùn)動(dòng)采集模塊、運(yùn)動(dòng)展示模塊、測(cè)試分析模塊及存儲(chǔ)模塊,所述運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊通過(guò)usb或wifi與計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)相連。
本發(fā)明有益效果是:一種服務(wù)機(jī)器人運(yùn)動(dòng)功能自動(dòng)測(cè)試系統(tǒng),包括運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊和計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái),所述運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊包括數(shù)據(jù)采集單元、mcu單元、數(shù)據(jù)交互單元及電源管理單元,其中,所述數(shù)據(jù)采集單元包括三軸地磁傳感器、三軸角速度傳感器、三軸加速度傳感器并與其相連的模擬信號(hào)調(diào)理電路,所述mcu單元包括信號(hào)采集接口并與其依次相連的數(shù)據(jù)融合、運(yùn)動(dòng)姿態(tài)判斷及數(shù)據(jù)交互接口,所述數(shù)據(jù)交互單元包括usb電路及wifi電路,所述電源管理單元分別與數(shù)據(jù)采集單元、mcu單元及數(shù)據(jù)交互單元相連,所述模擬信號(hào)調(diào)理電路通過(guò)ad轉(zhuǎn)換接口與信號(hào)采集接口相連,所述三軸角速度傳感器和三軸地磁傳感器分別通過(guò)iic總線與信號(hào)采集接口相連,所述數(shù)據(jù)交互接口通過(guò)usb總線與usb電路相連,另外,數(shù)據(jù)交互接口還通過(guò)spi接口與wifi電路相連,所述計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)包括rc綁定模塊并與其依次相連的運(yùn)動(dòng)設(shè)定模塊、運(yùn)動(dòng)采集模塊、運(yùn)動(dòng)展示模塊、測(cè)試分析模塊及存儲(chǔ)模塊,所述運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊通過(guò)usb或wifi與計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)相連。與已有技術(shù)相比,本發(fā)明是將多臺(tái)服務(wù)機(jī)器人的rc分別與對(duì)應(yīng)的運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊相綁定后,計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)能通過(guò)運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊的反饋數(shù)據(jù)判斷出向各個(gè)服務(wù)機(jī)器人rc發(fā)出的指令是否被正確執(zhí)行,從而實(shí)現(xiàn)服務(wù)機(jī)器人批量生產(chǎn)時(shí)自動(dòng)、高效的群測(cè)目標(biāo)。
附圖說(shuō)明
圖1是本發(fā)明系統(tǒng)的原理框圖。
圖2是本發(fā)明系統(tǒng)的整體工作流程圖。
圖3是本發(fā)明系統(tǒng)中運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊的軟件程序流程圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
如圖1所示,一種服務(wù)機(jī)器人運(yùn)動(dòng)功能自動(dòng)測(cè)試系統(tǒng),包括運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊和計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái),運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊主要負(fù)責(zé)服務(wù)機(jī)器人運(yùn)動(dòng)姿態(tài)的采集、判斷及上傳;計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)主要負(fù)責(zé)服務(wù)機(jī)器人“群測(cè)”目標(biāo)的實(shí)現(xiàn)。所述運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊包括數(shù)據(jù)采集單元、mcu單元、數(shù)據(jù)交互單元及電源管理單元,其中,所述數(shù)據(jù)采集單元由一個(gè)三軸加速度傳感器adxl335、一個(gè)三軸角速度傳感器itg3050、一個(gè)三軸地磁傳感器ak8963及一路模擬信號(hào)調(diào)理電路組成,負(fù)責(zé)采集運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊坐標(biāo)系下的三軸加速度數(shù)據(jù)、三軸角速度數(shù)據(jù)、三軸地磁數(shù)據(jù);adxl335、itg3050、ak8963布放時(shí)軸向必須一致,以確保能精確、高效完成坐標(biāo)系的融合與轉(zhuǎn)換。itg3050與ak8963輸出為數(shù)字信號(hào),輸出接口為iic總線,與mcu的i2c1_scl(pb6)、i2c1_sda(pb7)引腳相連;兩者通過(guò)不同的iic地址區(qū)別。adxl335輸出為模擬電壓信號(hào),電壓大小表示加速度大小,經(jīng)過(guò)模擬信號(hào)調(diào)理電路后,與mcu的adc1_1(pa1)、adc1_2(pa2)、adc1_1(pa3)引腳相連,由mcu的內(nèi)部adc模塊完成模擬量到數(shù)字量的轉(zhuǎn)換。模擬信號(hào)調(diào)理電路主要包括帶寬為1000hz的低通rc濾波器和以ad8603為核心的放大電路。
所述mcu單元包括信號(hào)采集接口并與其依次相連的數(shù)據(jù)融合、運(yùn)動(dòng)姿態(tài)判斷及數(shù)據(jù)交互接口,mcu采用stm32f411ceu6,首先通過(guò)iic總線和ad轉(zhuǎn)換接口采集得到運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊坐標(biāo)系下的三軸加速度數(shù)據(jù)、三軸角速度數(shù)據(jù)、三軸地磁數(shù)據(jù),其次將九軸數(shù)據(jù)融合為地理坐標(biāo)系下的姿態(tài)數(shù)據(jù)和加速度數(shù)據(jù),然后根據(jù)融合后的數(shù)據(jù)判斷服務(wù)機(jī)器人的運(yùn)動(dòng)姿態(tài),最后將結(jié)果通過(guò)usb總線和spi接口輸出。數(shù)據(jù)融合算法采用基于擴(kuò)展卡爾曼濾波器的兩階段修正算法,第一階段依據(jù)三軸加速度數(shù)據(jù)修正姿態(tài)角,第二階段依據(jù)三軸地磁數(shù)據(jù)修正姿態(tài)角。姿態(tài)的表示方式有歐拉角、旋轉(zhuǎn)矩陣、四元數(shù)等三種,其中歐拉角存在萬(wàn)向鎖問(wèn)題,不能用于迭代計(jì)算。兩階段修正算法的迭代過(guò)程如下:
第一步,根據(jù)三軸角速度數(shù)據(jù)計(jì)算姿態(tài)角四元數(shù),式(1)為一階畢卡法迭代公式,
其中,
ωx,ωy,ωz表示三軸角速度數(shù)據(jù);
δt表示采樣間隔;
第二步,根據(jù)式(1)已求出的四元數(shù),可求出地理坐標(biāo)系到無(wú)線運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊坐標(biāo)系下的旋轉(zhuǎn)矩陣
第三步,根據(jù)式(2),將恒定重力加速度g從地理坐標(biāo)系分解到無(wú)線運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊坐標(biāo)系,
對(duì)式(3)求雅克比矩陣hk1
第四步,以式(1)中ak為系統(tǒng)陣,式(4)中hk1為觀測(cè)陣,構(gòu)造卡爾曼濾波器,完成第一階段修正;
第五~六步,同樣以式(1)中ak為系統(tǒng)陣,以地磁數(shù)據(jù)構(gòu)造觀測(cè)陣,構(gòu)造卡爾曼濾波器,完成第二階段修正,循環(huán)至第一步。
運(yùn)動(dòng)姿態(tài)判斷采用基于經(jīng)驗(yàn)的特征匹配算法,基本運(yùn)動(dòng)姿態(tài)包括左轉(zhuǎn)45°、右轉(zhuǎn)45°、左轉(zhuǎn)90°、右轉(zhuǎn)90°、左轉(zhuǎn)180°、右轉(zhuǎn)180°、前進(jìn)、后退等八種。根據(jù)數(shù)據(jù)融合結(jié)果中水平方向姿態(tài)角數(shù)據(jù)的變化,即可判斷出前六種轉(zhuǎn)向情況;再結(jié)合水平方向加速度數(shù)據(jù)的變化,即可區(qū)分前進(jìn)、后退情況。在運(yùn)動(dòng)姿態(tài)判斷中,水平方向姿態(tài)角數(shù)據(jù)是判斷運(yùn)動(dòng)姿態(tài)的主要依據(jù)。數(shù)據(jù)融合結(jié)果中水平方向姿態(tài)角誤差一般在±3°以內(nèi),對(duì)于間隔最小45°的轉(zhuǎn)向容易區(qū)分。
數(shù)據(jù)交互單元包括usb和wifi兩部分,usb是無(wú)線運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊出廠信息、應(yīng)用信息的配置接口,usb除用于數(shù)據(jù)傳輸外,還具有供電、充電功能,充電芯片采用鋰電池管理芯片bq24086。usb通信使用mcu內(nèi)部總線控制器,數(shù)據(jù)傳輸引腳為usb_fs_dm(pa11)、usb_fs_dm(pa12)。wifi是無(wú)線運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊與計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)數(shù)據(jù)交互的接口;計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)通過(guò)該接口讀取運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊的運(yùn)動(dòng)姿態(tài)數(shù)據(jù);在運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊與計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)通過(guò)wifi組網(wǎng)成功的情況下,wifi接口可以實(shí)現(xiàn)和usb接口相同的應(yīng)用信息配置功能。wifi通信使用rs110-n-11-02模塊,與mcu通過(guò)spi接口連接,連接引腳為spi1_nss(pa4)、spi1_sck(pa5)、spi1_miso(pa6)、spi1_mosi(pa7)。
電源管理單元由四路可控電源組成,電源控制芯片型號(hào)為tps78230,1路控制數(shù)據(jù)采集單元的供電,1路控制mcu單元的供電,1路控制usb電路的供電,1路控制wifi電路的供電。各路電源通斷控制基本規(guī)則如下:
①如果一定時(shí)間內(nèi)未接收到來(lái)自u(píng)sb的指令,關(guān)閉usb電路的供電;
②如果一定時(shí)間內(nèi)未接收來(lái)自wifi的指令,同時(shí)關(guān)閉wifi電路和數(shù)據(jù)采集單元的供電;
③如果長(zhǎng)時(shí)間內(nèi)未接收到來(lái)自u(píng)sb或wifi的指令,關(guān)閉模塊內(nèi)所有供電;
④如果操作人員外部觸發(fā)模塊啟動(dòng)按鍵,打開mcu單元和數(shù)據(jù)交互單元的供電;
⑤如果接收到來(lái)自wifi的數(shù)據(jù)采集指令,打開數(shù)據(jù)采集單元的供電。
經(jīng)分析、測(cè)試,此方案主要功耗集中在無(wú)線數(shù)據(jù)傳輸,全速工作時(shí),電流約為80ma,使用1000mah電池,可保證無(wú)線運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊有效工作12~13小時(shí),完全滿足實(shí)際需求。
計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)主要由rc綁定模塊、運(yùn)動(dòng)設(shè)定模塊、運(yùn)動(dòng)采集模塊、運(yùn)動(dòng)展示模塊、測(cè)試分析模塊及存儲(chǔ)模塊組成。
rc綁定模塊用于將服務(wù)機(jī)器人rc與其上安裝的運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊綁定。進(jìn)場(chǎng)測(cè)試機(jī)器人開機(jī)后,通過(guò)無(wú)線網(wǎng)絡(luò)與運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊、計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)組網(wǎng)連接,由于每個(gè)服務(wù)機(jī)器人rc與運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊都有唯一的ip地址,故利用ip地址將服務(wù)機(jī)器人rc與對(duì)應(yīng)的運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模綁定。綁定信息存儲(chǔ)在服務(wù)機(jī)器人計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)的綁定信息表中。
運(yùn)動(dòng)設(shè)定模塊用于設(shè)定向服務(wù)機(jī)器人rc下發(fā)指令的類型和順序,運(yùn)動(dòng)設(shè)定信息為左轉(zhuǎn)45°、右轉(zhuǎn)45°、左轉(zhuǎn)90°、右轉(zhuǎn)90°、左轉(zhuǎn)180°、右轉(zhuǎn)180°、前進(jìn)、后退等八種基本運(yùn)動(dòng)模式的任意綜合。設(shè)定信息存儲(chǔ)在計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)的運(yùn)動(dòng)設(shè)定信息表中,是判斷服務(wù)機(jī)器人是否正確執(zhí)行下發(fā)指令的依據(jù)。
運(yùn)動(dòng)采集模塊用于從無(wú)線運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊獲取待測(cè)服務(wù)機(jī)器人響應(yīng)指令時(shí)的測(cè)試數(shù)據(jù)。測(cè)試數(shù)據(jù)必然是左轉(zhuǎn)45°、右轉(zhuǎn)45°、左轉(zhuǎn)90°、右轉(zhuǎn)90°、左轉(zhuǎn)180°、右轉(zhuǎn)180°、前進(jìn)、后退、錯(cuò)誤動(dòng)作等九種中的一種。運(yùn)動(dòng)采集信息存儲(chǔ)在服務(wù)機(jī)器人計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)的運(yùn)動(dòng)采集信息表中。
運(yùn)動(dòng)展示模塊使用基于opengl的三維驅(qū)動(dòng)模型,利用運(yùn)動(dòng)采集信息表中的數(shù)據(jù),在服務(wù)機(jī)器人計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)端模擬服務(wù)機(jī)器人的實(shí)際運(yùn)動(dòng)。該模塊作用為讓操作人員現(xiàn)場(chǎng)測(cè)試時(shí)更加直觀、清晰的了解測(cè)試流程和結(jié)果。
測(cè)試分析模塊對(duì)比運(yùn)動(dòng)設(shè)定信息表內(nèi)容與運(yùn)動(dòng)采集信息表內(nèi)容,其真實(shí)反映了向服務(wù)機(jī)器人rc下達(dá)的指令與服務(wù)機(jī)器人實(shí)際運(yùn)動(dòng)的一致性。根據(jù)對(duì)比結(jié)果,生成測(cè)試報(bào)告及報(bào)警信息等。
存儲(chǔ)模塊使用mysql5.6數(shù)據(jù)庫(kù),作用為存儲(chǔ)并維護(hù)運(yùn)動(dòng)設(shè)定信息、運(yùn)動(dòng)采集信息、測(cè)試報(bào)告等。mysql5.6數(shù)據(jù)庫(kù)與c++集成開發(fā)環(huán)境的連接使用connector/c++1.1驅(qū)動(dòng)程序。
如圖2,整個(gè)系統(tǒng)工作流程大致如下:
①操作人員將各個(gè)運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊安裝在各個(gè)待測(cè)機(jī)器人之上;
②操作人員依次將各對(duì)待測(cè)機(jī)器人和運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊綁定,綁定操作為:將一對(duì)待測(cè)機(jī)器人和運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊開機(jī),計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)自動(dòng)掃描并發(fā)現(xiàn),將兩者id標(biāo)識(shí)記錄,人工確認(rèn)綁定;
③計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)按預(yù)設(shè)測(cè)試流程向各個(gè)服務(wù)機(jī)器人rc依次發(fā)出各類測(cè)試指令;基本測(cè)試指令包括左轉(zhuǎn)45°、右轉(zhuǎn)45°、左轉(zhuǎn)90°、右轉(zhuǎn)90°、左轉(zhuǎn)180°、右轉(zhuǎn)180°、前進(jìn)、后退等八種;
④運(yùn)動(dòng)姿態(tài)客觀監(jiān)測(cè)模塊連續(xù)監(jiān)測(cè)服務(wù)機(jī)器人運(yùn)動(dòng)狀態(tài),并向計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)反饋數(shù)據(jù);
⑤計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)對(duì)比反饋數(shù)據(jù)與發(fā)送的測(cè)試指令;
⑥計(jì)算機(jī)自動(dòng)測(cè)試平臺(tái)自動(dòng)生成測(cè)試報(bào)告,并存儲(chǔ)相關(guān)數(shù)據(jù)。