本發(fā)明屬于航空航天技術(shù)領(lǐng)域,特別涉及了一種面向空間站機(jī)器人的遙操作系統(tǒng)。
背景技術(shù):
隨著科技的不斷進(jìn)步,人類的太空活動逐漸頻繁,大量的工作和惡劣的太空環(huán)境給宇航員的操作帶來了巨大的困難,但是目前研制的智能機(jī)器人,由于受到太空條件、傳感控制技術(shù)等限制,讓它們在未知或者復(fù)雜的環(huán)境下全自主式工作還是有風(fēng)險的。因此,利用基于人機(jī)交互設(shè)備的空間站遙操作機(jī)器人來完成大量的太空任務(wù),是長期而且有效的手段??臻g站遙操作機(jī)器人已被廣泛運(yùn)用于空間站段位轉(zhuǎn)位與輔助對接,懸停飛行器捕獲與輔助對接,艙外設(shè)備安裝、更換或維修等空間站艙外任務(wù)。目前,歐美各國已相繼研制出一系列空間站遙操作機(jī)器人,并在國際空間站艙外活動中成功投入使用。在國內(nèi),天宮一號和二號的成功發(fā)射,表明我國空間站的建設(shè)正在有序進(jìn)行,遙操作機(jī)器人技術(shù)將被廣泛應(yīng)用。
人機(jī)交互設(shè)備是空間遙操作機(jī)器人系統(tǒng)中的重要組成部分,操作者可以通過它輸入控制信息,也可以通過它獲得空間機(jī)器人和環(huán)境的信息。輸入的控制信息是通過測量操作者的運(yùn)動和姿態(tài)得到的。目前,最具代表性的空間遙操作機(jī)器人的人機(jī)交互設(shè)備是多自由度力反饋手控器,如phantom七自由度力反饋手控器。但這些設(shè)備對操作者的操作水平要求較高,人機(jī)功效較差,難以滿足日益增長的空間站建設(shè)的需求。
技術(shù)實現(xiàn)要素:
為了解決上述背景技術(shù)提出的技術(shù)問題,本發(fā)明旨在提供一種基于虛擬手臂的面向空間站機(jī)器人的遙操作系統(tǒng),降低系統(tǒng)的操作復(fù)雜度,提高系統(tǒng)的人機(jī)交互能力。
為了實現(xiàn)上述技術(shù)目的,本發(fā)明的技術(shù)方案為:
一種基于虛擬手臂的面向空間站機(jī)器人的遙操作系統(tǒng),包括手臂關(guān)節(jié)運(yùn)動測量模塊、數(shù)據(jù)采集模塊、數(shù)據(jù)傳輸模塊和主運(yùn)算處理模塊,所述主運(yùn)算處理模塊包括數(shù)據(jù)濾波模塊、手臂運(yùn)動解算模塊、機(jī)器人運(yùn)動逆解算模塊和虛擬場景渲染模塊;手臂關(guān)節(jié)運(yùn)動測量模塊設(shè)置在操作者的手臂上,實時采集操作者手臂各關(guān)節(jié)的四元數(shù),數(shù)據(jù)采集模塊讀取該四元數(shù)數(shù)據(jù)并轉(zhuǎn)換為歐拉角,同時通過數(shù)據(jù)傳輸模塊將歐拉角傳輸給數(shù)據(jù)濾波模塊,數(shù)據(jù)濾波模塊將接收到的歐拉角數(shù)據(jù)進(jìn)行濾波后傳送給手臂運(yùn)動解算模塊,手臂運(yùn)動解算模塊根據(jù)濾波后的歐拉角和虛擬手臂的尺寸,解算出虛擬手臂的手掌末端在三維空間坐標(biāo)系中的運(yùn)動軌跡,機(jī)器人運(yùn)動逆解算模塊將虛擬手臂的手掌末端在三維空間坐標(biāo)系中的運(yùn)動軌跡映射到空間站遙操作機(jī)器人的運(yùn)動坐標(biāo)系中,并計算出遙操作機(jī)器人的各部位關(guān)節(jié)角,用于控制空間站遙操作機(jī)器人的運(yùn)動,虛擬場景渲染模塊構(gòu)建虛擬手臂和虛擬遙操作機(jī)器人的三維模型場景,并根據(jù)手臂運(yùn)動解算模塊、機(jī)器人運(yùn)動逆解算模塊輸出的數(shù)據(jù)實施渲染虛擬手臂和虛擬遙操作機(jī)器的運(yùn)動狀態(tài)。
基于上述技術(shù)方案的優(yōu)選方案,所述手臂關(guān)節(jié)運(yùn)動測量模塊包括3組mems傳感器,分別設(shè)置在操作者手臂的肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)處,實時采集這3個關(guān)節(jié)處的四元數(shù)。
基于上述技術(shù)方案的優(yōu)選方案,所述數(shù)據(jù)濾波模塊的濾波方法如下:
設(shè)ui(n)=[x(n),y(n),z(n)]t為輸入數(shù)據(jù)濾波模塊的歐拉角,其中x(n),y(n),z(n)分別為ui(n)的肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)的分量,上標(biāo)t表示轉(zhuǎn)置,則數(shù)據(jù)濾波模塊輸出的歐拉角uo(n)=[x′(n),y′(n),z′(n)]t:
上式中,x′(n),y′(n),z′(n)分別為uo(n)的肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)的輸出分量,ai、bi、ci分別為濾波器系數(shù),n表示當(dāng)前時刻數(shù)據(jù),n表示采樣點數(shù)。
基于上述技術(shù)方案的優(yōu)選方案,所述數(shù)據(jù)傳輸模塊包括2組藍(lán)牙通信接口模塊,2組藍(lán)牙通信接口模塊建立無線連接,其中1組藍(lán)牙通信接口模塊與數(shù)據(jù)采集模塊相連,另1組藍(lán)牙通信接口模塊與數(shù)據(jù)濾波模塊相連,從而將歐拉角數(shù)據(jù)發(fā)送給數(shù)據(jù)濾波模塊。
基于上述技術(shù)方案的優(yōu)選方案,所述虛擬場景渲染模塊采用opengl圖形庫構(gòu)建虛擬手臂和虛擬遙操作機(jī)器人的三維模型場景。
基于上述技術(shù)方案的優(yōu)選方案,所述主運(yùn)算處理模塊還包括數(shù)據(jù)顯示模塊,用于顯示數(shù)據(jù)濾波模塊輸出的操作者手臂的歐拉角數(shù)據(jù)和機(jī)器人運(yùn)動逆解算模塊輸出的遙操作機(jī)器人的各部位關(guān)節(jié)角數(shù)據(jù)。
采用上述技術(shù)方案帶來的有益效果:
(1)本發(fā)明通過操作者的手臂動作直接控制遙操作機(jī)器人,大幅降低了對操作者操作技巧的要求,有效提高系統(tǒng)的人機(jī)功效;
(2)虛擬手臂的引入解決了因操不同作者手臂尺寸不同引起的解算誤差,有效提高操作精度;
(3)數(shù)據(jù)濾波模塊可有效消除由于操作者手臂抖動或mems傳感器零漂帶來的數(shù)據(jù)抖動,使解算數(shù)據(jù)更加穩(wěn)定有利于遙操作機(jī)器人的控制;
(4)虛擬場景渲染模塊顯示的遙操作機(jī)器人運(yùn)動狀態(tài)是根據(jù)機(jī)器人運(yùn)動逆解算模塊的計算結(jié)果實時渲染得到的,與操作者的動作之間基本無時延,可有效輔助操作者快速調(diào)整動作,使遙操作機(jī)器人的控制過程更加直觀,有利于在大時延環(huán)境下的遙操作機(jī)器人控制。
附圖說明
圖1是本發(fā)明的系統(tǒng)組成示意圖。
具體實施方式
以下將結(jié)合附圖,對本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說明。
一種基于虛擬手臂的面向空間站機(jī)器人的遙操作系統(tǒng),如圖1所示,包括手臂關(guān)節(jié)運(yùn)動測量模塊、數(shù)據(jù)采集模塊、數(shù)據(jù)傳輸模塊和主運(yùn)算處理模塊,所述主運(yùn)算處理模塊包括數(shù)據(jù)濾波模塊、數(shù)據(jù)顯示模塊、手臂運(yùn)動解算模塊、機(jī)器人運(yùn)動逆解算模塊和虛擬場景渲染模塊。
手臂關(guān)節(jié)運(yùn)動測量模塊包括3組mems傳感器,分別設(shè)置在操作者手臂的肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)處,實時采集這3個關(guān)節(jié)處的四元數(shù)。數(shù)據(jù)采集模塊由微處理器最小系統(tǒng)構(gòu)成,用于讀取和轉(zhuǎn)換手臂關(guān)節(jié)運(yùn)動測量模塊采集的數(shù)據(jù)。mems傳感器采用mpu6050整合性6軸運(yùn)動處理組件。數(shù)據(jù)采集模塊采用基于armcortex-m3內(nèi)核的stm32f103c8t6微控制器,通過i2c通信控制傳感器工作并收集傳感器采集的數(shù)據(jù),然后將三個關(guān)節(jié)角的四元數(shù)轉(zhuǎn)換為更為直觀的歐拉角。
數(shù)據(jù)傳輸模塊采用hc-05主從機(jī)一體藍(lán)牙串口通信模塊,將主、從機(jī)通過rs232串口與主運(yùn)算處理模塊和數(shù)據(jù)采集模塊相連,將數(shù)據(jù)采集模塊輸出的歐拉角數(shù)據(jù)通過藍(lán)牙發(fā)送至主運(yùn)算處理模塊。
數(shù)據(jù)濾波模塊將接收到的歐拉角數(shù)據(jù)進(jìn)行濾波,消除數(shù)據(jù)抖動,濾波方法如下:
設(shè)ui(n)=[x(n),y(n),z(n)]t為輸入數(shù)據(jù)濾波模塊的歐拉角,其中x(n),y(n),z(n)分別為ui(n)的肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)的分量,上標(biāo)t表示轉(zhuǎn)置,則數(shù)據(jù)濾波模塊輸出的歐拉角uo(n)=[x′(n),y′(n),z′(n)]t:
上式中,x′(n),y′(n),z′(n)分別為uo(n)的肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)的輸出分量,ai、bi、ci分別為濾波器系數(shù),n表示當(dāng)前時刻數(shù)據(jù),n表示采樣點數(shù)。
手臂運(yùn)動解算模塊將濾波后的歐拉角數(shù)據(jù)映射到虛擬手臂的肩、肘、腕三個關(guān)節(jié)上,根據(jù)歐拉角和虛擬手臂的大臂、小臂和手掌的尺寸解算出虛擬手臂的手掌的末端在三維空間坐標(biāo)系中的運(yùn)動軌跡。其中,虛擬手臂各部位尺寸為預(yù)先設(shè)定,采用虛擬手臂解算運(yùn)動軌跡可以避免不同操作者們手臂尺寸的差異造成運(yùn)動軌跡解算的誤差。
機(jī)器人運(yùn)動逆解算模塊將虛擬手臂的手掌末端三維空間坐標(biāo)系中的運(yùn)動軌跡映射到空間站遙操作機(jī)器人的運(yùn)動坐標(biāo)系中,通過逆解算計算出機(jī)器人的關(guān)節(jié)角,將其用于遙操作機(jī)器人控制。在逆解算實現(xiàn)方面,本發(fā)明利用目前已被開發(fā)的基于c++語言的kdl矩陣計算庫函數(shù),結(jié)合實際使用過程中的機(jī)器人各關(guān)節(jié)的連接關(guān)系構(gòu)建對應(yīng)了數(shù)學(xué)模型,完成逆解算過程.
虛擬場景渲染模塊采用opengl圖形庫構(gòu)建虛擬手臂和遙操作機(jī)器人的三維模型場景,根據(jù)操作者手臂的運(yùn)動角度信息和逆解算模塊計算出的機(jī)器人的關(guān)節(jié)角,實時渲染虛擬手臂和遙操作機(jī)器人的運(yùn)動狀態(tài)。具體的,虛擬手臂和遙操作機(jī)器人模型由3dmax建立,然后在visualstudioc++平臺上結(jié)合opengl圖形庫將這些模型導(dǎo)入并組裝,構(gòu)建初始虛擬場景。當(dāng)pc終端接收到操作者手臂運(yùn)動的數(shù)據(jù)且完成所有解算時,虛擬手臂和虛擬機(jī)器人各個關(guān)節(jié)將根據(jù)解算結(jié)果做出相應(yīng)旋轉(zhuǎn)動作,整個場景隨后被重新渲染,保證了虛擬場景中的模型與操作者動作的一致性。
數(shù)據(jù)顯示模塊用于顯示數(shù)據(jù)濾波模塊輸出的操作者手臂的歐拉角數(shù)據(jù)和機(jī)器人運(yùn)動逆解算模塊輸出的遙操作機(jī)器人的各部位關(guān)節(jié)角數(shù)據(jù)等關(guān)鍵數(shù)據(jù)。
以上實施例僅為說明本發(fā)明的技術(shù)思想,不能以此限定本發(fā)明的保護(hù)范圍,凡是按照本發(fā)明提出的技術(shù)思想,在技術(shù)方案基礎(chǔ)上所做的任何改動,均落入本發(fā)明保護(hù)范圍之內(nèi)。