本發(fā)明涉及機器人操作技術(shù)領(lǐng)域,特別是涉及一種機器人仿真控制方法及裝置。
背景技術(shù):
隨著科學(xué)技術(shù)的不斷發(fā)展,信息技術(shù)、計算機技術(shù)以及人工智能技術(shù)促使機器人在不同領(lǐng)域得到廣泛的應(yīng)用。
機器人控制是機器人研究的一個重要領(lǐng)域,目前,常見的控制方法是將機器人與一個控制設(shè)備連接,在控制設(shè)備中安裝機器人操作控制軟件,用戶通過操作控制軟件的操作控制界面輸入對機器人的控制程序,從而實現(xiàn)對機器人的控制。
現(xiàn)有的機器人操作控制軟件,直接將控制參數(shù)輸出給真實機器人,如果機器人與控制設(shè)備距離較遠(yuǎn)或機器人處于封閉的環(huán)境中,用戶無法觀測到機器人的運動狀態(tài),就容易出現(xiàn)控制參數(shù)設(shè)置不當(dāng)?shù)那闆r,這種情況下有可能造成真實機器人在運動過程中發(fā)生危險。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例的目的在于提供一種機器人仿真控制方法及裝置,以清晰及直觀地觀測機器人的運動狀態(tài)。具體技術(shù)方案如下:
第一方面,本發(fā)明實施例提供了一種機器人仿真控制方法,所述方法包括:
在機器人操作控制界面的預(yù)設(shè)區(qū)域中,顯示所述機器人對應(yīng)的虛擬機器人的立體圖像;
獲取機器人的控制參數(shù);
將所述控制參數(shù)發(fā)送至所述虛擬機器人,以使所述虛擬機器人按照所述控制參數(shù)運動;
在所述預(yù)設(shè)區(qū)域中顯示所述虛擬機器人運動過程的立體圖像;
根據(jù)所述控制參數(shù),在所述虛擬機器人運動過程的立體圖像上繪制所述虛擬機器人的運動軌跡。
可選的,所述獲取機器人的控制參數(shù)的步驟,包括:
接收用戶通過所述操作控制界面的多個預(yù)設(shè)配置選項選擇和/或輸入的控制參數(shù),其中,所述控制參數(shù)包括:位置控制參數(shù)、姿態(tài)控制參數(shù)及沿軸旋轉(zhuǎn)參數(shù);
所述方法還包括:
獲得用戶在所述預(yù)設(shè)區(qū)域選擇的三個不同位置點的坐標(biāo);
根據(jù)所述三個不同位置點的坐標(biāo),確定并顯示所述虛擬機器人的坐標(biāo)平面,并確定所述坐標(biāo)平面的原點。
可選的,在將所述控制參數(shù)發(fā)送至所述虛擬機器人之前,所述方法還包括:
根據(jù)用戶的選擇,確定待控制機器人;
當(dāng)所述待控制機器人為虛擬機器人時,執(zhí)行所述將所述控制參數(shù)發(fā)送至所述虛擬機器人的步驟;
當(dāng)所述待控制機器人包括虛擬機器人和真實機器人時,將所述控制參數(shù)同時發(fā)送至所述虛擬機器人和所述真實機器人,以使所述虛擬機器人和所述真實機器人按照所述控制參數(shù)同步運動。
可選的,所述根據(jù)所述控制參數(shù),在所述虛擬機器人運動過程的立體圖像上繪制虛擬機器人的運動軌跡的步驟,包括:
根據(jù)用戶輸入的預(yù)設(shè)第一控制參數(shù),確定所述虛擬機器人末端到達(dá)的第一位置點為所述虛擬機器人的運動軌跡的起點;
根據(jù)所述用戶輸入的預(yù)設(shè)第二控制參數(shù),確定所述虛擬機器人末端到達(dá)的第二位置點為所述虛擬機器人的運動軌跡的終點;
根據(jù)所述起點的位姿信息及所述終點的位姿信息,確定所述虛擬機器人的運動方程,其中,所述位姿信息包括:位置信息參數(shù)及姿態(tài)信息參數(shù);
根據(jù)所述運動方程,確定所述虛擬機器人從所述起點至所述終點的位移曲線;
在所述虛擬機器人運動過程的立體圖像上繪制所述位移曲線為所述虛擬機器人從所述起點至所述終點的運動軌跡。
可選的,所述方法還包括:
獲取用戶操作真實機器人末端所到達(dá)的預(yù)設(shè)第三位置點,并確定所述預(yù)設(shè)第三位置點為所述虛擬機器人的運動軌跡的起點;
獲取所述用戶操作真實機器人末端所到達(dá)的預(yù)設(shè)第四位置點,并確定所述預(yù)設(shè)第四位置點為所述虛擬機器人的運動軌跡的終點;
根據(jù)所述起點的位姿信息及所述終點的位姿信息,確定所述虛擬機器人的運動方程,其中,所述位姿信息包括:位置信息參數(shù)及姿態(tài)信息參數(shù);
根據(jù)所述運動方程,確定所述虛擬機器人從所述起點至所述終點的位移曲線;
在所述虛擬機器人運動過程的立體圖像上繪制所述位移曲線為所述虛擬機器人從所述起點至所述終點的運動軌跡。
第二方面,本發(fā)明實施例還提供了一種機器人仿真控制裝置,所述裝置包括:
第一顯示模塊,用于在機器人操作控制界面的預(yù)設(shè)區(qū)域中,顯示所述機器人對應(yīng)的虛擬機器人的立體圖像;
獲取模塊,用于獲取機器人的控制參數(shù);
第一發(fā)送模塊,用于將所述控制參數(shù)發(fā)送至所述虛擬機器人,以使所述虛擬機器人按照所述控制參數(shù)運動;
第二顯示模塊,用于在所述預(yù)設(shè)區(qū)域中顯示所述虛擬機器人運動過程的立體圖像;
第一繪制模塊,用于根據(jù)所述控制參數(shù)在所述虛擬機器人運動過程的立體圖像上繪制所述虛擬機器人的運動軌跡。
可選的,所述獲取模塊,包括:
接收子模塊,用于接收用戶通過所述操作控制界面的多個預(yù)設(shè)配置選項選擇和/或輸入的控制參數(shù),其中,所述控制參數(shù)包括:位置控制參數(shù)、姿態(tài)控制參數(shù)及沿軸旋轉(zhuǎn)參數(shù);
所述裝置還包括:
獲得模塊,用于獲得用戶在所述預(yù)設(shè)區(qū)域選擇的三個不同位置點的坐標(biāo);
第六確定模塊,用于根據(jù)所述三個不同位置點的坐標(biāo),確定并顯示所述虛擬機器人的坐標(biāo)平面,并確定所述坐標(biāo)平面的原點。
可選的,所述裝置還包括:
第一確定模塊,用于根據(jù)用戶的選擇,確定待控制機器人;
執(zhí)行模塊,用于當(dāng)所述待控制機器人為虛擬機器人時,執(zhí)行所述將所述控制參數(shù)發(fā)送至所述虛擬機器人的步驟;
第二發(fā)送模塊,用于當(dāng)所述待控制機器人包括虛擬機器人和真實機器人時,將所述控制參數(shù)同時發(fā)送至所述虛擬機器人和所述真實機器人,以使所述虛擬機器人和所述真實機器人按照所述控制參數(shù)同步運動。
可選的,所述第一繪制模塊,包括:
第一確定子模塊,用于根據(jù)用戶輸入的預(yù)設(shè)第一控制參數(shù),確定所述虛擬機器人末端到達(dá)的第一位置點為所述虛擬機器人的運動軌跡的起點;
第二確定子模塊,用于根據(jù)所述用戶輸入的預(yù)設(shè)第二控制參數(shù),確定所述虛擬機器人末端到達(dá)的第二位置點為所述虛擬機器人的運動軌跡的終點;
第三確定子模塊,用于根據(jù)所述起點的位姿信息及所述終點的位姿信息,確定所述虛擬機器人的運動方程,其中,所述位姿信息包括:位置信息參數(shù)及姿態(tài)信息參數(shù);
第四確定子模塊,用于根據(jù)所述運動方程,確定所述虛擬機器人從所述起點至所述終點的位移曲線;
運動軌跡繪制子模塊,用于在所述虛擬機器人運動過程的立體圖像上繪制所述位移曲線為所述虛擬機器人從所述起點至所述終點的運動軌跡。
可選的,所述裝置還包括:
第二確定模塊,用于獲取用戶操作真實機器人末端所到達(dá)的預(yù)設(shè)第三位置點,并確定所述預(yù)設(shè)第三位置點為所述虛擬機器人的運動軌跡的起點;
第三確定模塊,用于獲取所述用戶操作真實機器人末端所到達(dá)的預(yù)設(shè)第四位置點,并確定所述預(yù)設(shè)第四位置點為所述虛擬機器人的運動軌跡的終點;
第四確定模塊,用于根據(jù)所述起點的位姿信息及所述終點的位姿信息,確定所述虛擬機器人的運動方程,其中,所述位姿信息包括:位置信息參數(shù)及姿態(tài)信息參數(shù);
第五確定模塊,用于根據(jù)所述運動方程,確定所述虛擬機器人從所述起點至所述終點的位移曲線;
第二繪制模塊,用于在所述虛擬機器人運動過程的立體圖像上繪制所述位移曲線為所述虛擬機器人從所述起點至所述終點的運動軌跡。
本發(fā)明實施例提供的機器人仿真控制方法及裝置,采用虛擬仿真技術(shù),在機器人操作控制界面的預(yù)設(shè)區(qū)域中,顯示所述機器人對應(yīng)的虛擬機器人的立體圖像,通過該立體圖像來顯示真實機器人的運動情況和軌跡,使得用戶能夠清晰及直觀地觀測機器人的運動狀態(tài)。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例的機器人仿真控制方法的一種流程示意圖;
圖2為本發(fā)明實施例的機器人仿真控制方法的另一種流程示意圖;
圖3為本發(fā)明實施例的機器人操作控制界面示意圖;
圖4為本發(fā)明實施例的機器人坐標(biāo)平面標(biāo)定界面示意圖;
圖5為本發(fā)明實施例的機器人軌跡模擬界面示意圖;
圖6為本發(fā)明實施例的機器人仿真控制裝置的一種結(jié)構(gòu)示意圖;
圖7為本發(fā)明實施例的機器人仿真控制裝置的另一種結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
為了用戶清晰及直觀地觀測機器人的運動情況,本發(fā)明實施例提供了一種機器人仿真控制方法及裝置。
下面首先對本發(fā)明實施例所提供的機器人仿真控制方法進行介紹。
如圖1所示,本發(fā)明實施例所提供的一種機器人仿真控制方法,可以包括如下步驟:
s101,在機器人操作控制界面的預(yù)設(shè)區(qū)域中,顯示真實機器人對應(yīng)的虛擬機器人的立體圖像。
需要說明的是,本實施例的機器人仿真控制方法的執(zhí)行主體為機器人仿真控制系統(tǒng),機器人仿真控制系統(tǒng)可以包括機器人操作控制界面,還可以包括機器人軌跡模擬界面和/或機器人坐標(biāo)平面標(biāo)定界面。機器人操作控制界面可以包括:虛擬機器人顯示區(qū)域、機器人選擇區(qū)域、位置控制區(qū)域、姿態(tài)控制區(qū)域、聯(lián)合控制區(qū)域、狀態(tài)顯示區(qū)域及步長模式設(shè)置區(qū)域。其中,虛擬機器人顯示區(qū)域用于顯示虛擬機器人的運動狀態(tài),機器人選擇區(qū)域用于選擇控制對象為虛擬機器人和/或真實機器人,位置控制區(qū)域用于按步長模式設(shè)置模塊中設(shè)置的單位距離沿水平方向或豎直方向平移虛擬機器人和/或真實機器人,姿態(tài)控制區(qū)域用于按步長模式設(shè)置模塊中設(shè)置的單位弧長旋轉(zhuǎn)虛擬機器人和/或真實機器人,聯(lián)合控制區(qū)域用于按步長模式設(shè)置模塊中設(shè)置的單位角度沿不同軸向旋轉(zhuǎn)虛擬機器人和/或真實機器人,狀態(tài)顯示區(qū)域用于顯示虛擬機器人的位置參數(shù)及姿態(tài)參數(shù)。
其中,機器人操作控制界面中用于顯示虛擬機器人的預(yù)設(shè)區(qū)域為虛擬機器人顯示區(qū)域,該區(qū)域可以位于機器人操作控制界面的任意區(qū)域;虛擬機器人采用現(xiàn)有的虛擬仿真技術(shù),其立體圖像可以是通過3dsmax、maya或solidworks等現(xiàn)有技術(shù)常用的三維軟件建立的;機器人操作控制界面可以是計算機上的軟件界面。
需要說明的是,為了便于用戶操作及觀測,上述預(yù)設(shè)區(qū)域可以設(shè)置在機器人操作控制界面的左上角區(qū)域,并可以根據(jù)需求調(diào)整該預(yù)設(shè)區(qū)域的大?。惶摂M機器人的初始位置、姿態(tài)及旋轉(zhuǎn)角度可以設(shè)置為與真實機器人的初始位置、姿態(tài)及旋轉(zhuǎn)角度相同,也可以設(shè)置為與真實機器人的初始位置、姿態(tài)及旋轉(zhuǎn)角度不同,在機器人操作控制界面啟動運行時,會根據(jù)初始的機器人的控制參數(shù)控制真實機器人和虛擬機器人運動調(diào)整為同樣的狀態(tài)。
s102,獲取機器人的控制參數(shù)。
其中,控制參數(shù)可以包括:位置控制參數(shù)、姿態(tài)控制參數(shù)及沿軸旋轉(zhuǎn)參數(shù);位置控制參數(shù)為機器人沿水平方向或豎直方向移動的距離;姿態(tài)控制參數(shù)為在固定機器人的底端位置不變時,該機器人旋轉(zhuǎn)所產(chǎn)生的弧長;沿軸旋轉(zhuǎn)參數(shù)為機器人沿不同軸向所旋轉(zhuǎn)的角度。機器人仿真控制系統(tǒng)獲取機器人的控制參數(shù),可以是機器人仿真控制系統(tǒng)通過用戶選擇操作控制界面中的多個預(yù)設(shè)配置選項所獲得的,還可以是機器人仿真控制系統(tǒng)通過用戶選擇和/或輸入控制參數(shù)至操作控制界面中所獲得的。
需要說明的是,通過機器人的控制參數(shù)可以直觀的反映機器人的運動情況,例如機器人沿水平方向平移的距離、機器人沿豎直方向移動的距離、機器人轉(zhuǎn)動的弧長、機器人轉(zhuǎn)動的角度等等。機器人仿真控制系統(tǒng)獲取機器人的控制參數(shù)的方式為通過用戶在機器人操作控制界面的位置控制區(qū)域、姿態(tài)控制區(qū)域及聯(lián)合控制區(qū)域的參數(shù)進行選擇或者輸入而獲得。
s103,將控制參數(shù)發(fā)送至虛擬機器人,以使該虛擬機器人按照控制參數(shù)運動。
其中,控制參數(shù)會被加到機器人的運動指令中發(fā)送給機器人,機器人仿真控制系統(tǒng)將用戶選擇和/或輸入的控制參數(shù)發(fā)送給虛擬機器人對應(yīng)的虛擬控制器,虛擬控制器在接收到控制參數(shù)后,按照控制參數(shù)進行運動,包括:按照控制參數(shù)中的位置控制參數(shù)沿沿水平方向或豎直方向移動預(yù)設(shè)距離、按照控制參數(shù)中的姿態(tài)控制參數(shù)旋轉(zhuǎn)預(yù)設(shè)弧長及按照控制參數(shù)中的沿軸旋轉(zhuǎn)參數(shù)沿不同軸向旋轉(zhuǎn)預(yù)設(shè)角度。本實施例中所述的虛擬控制器,是按照現(xiàn)有虛擬仿真技術(shù)設(shè)置的軟件控制器,例如:可以與現(xiàn)有技術(shù)中采用虛擬仿真技術(shù)對動畫中的虛擬人物進行控制的軟件控制器相同,這里不再贅述。
需要說明的是,獲取控制參數(shù)、發(fā)送控制參數(shù)至虛擬機器人,以及虛擬機器人按照控制參數(shù)運動,這些步驟是實時同步進行的,即機器人仿真控制系統(tǒng)每獲取個一組用戶選擇和/或輸入的控制參數(shù),就會發(fā)送給虛擬機器人,機器人根據(jù)接收到的這一組控制參數(shù)運動,以保證虛擬機器人運動的實時性。
s104,在預(yù)設(shè)區(qū)域中顯示虛擬機器人運動過程的立體圖像。
其中,虛擬機器人在每接收到一組控制參數(shù)運動后,為了方便用戶的觀測,該虛擬機器人在預(yù)設(shè)區(qū)域中的顯示也會隨之發(fā)生變化。
需要說明的是,虛擬機器人在按照控制參數(shù)運動后,虛擬機器人的位置、姿態(tài)及旋轉(zhuǎn)角度均發(fā)生了變化,為了方便用戶的觀測,需要在預(yù)設(shè)區(qū)域中實時顯示虛擬機器人的運動狀態(tài),即虛擬機器人運動過程的立體圖像。
s105,根據(jù)控制參數(shù),在虛擬機器人運動過程的立體圖像上繪制虛擬機器人的運動軌跡。
其中,虛擬機器人的運動軌跡為該虛擬機器人從第一位置點到第二位置點按照控制參數(shù)運動所產(chǎn)生的軌跡曲線;第一位置點為預(yù)設(shè)的虛擬機器人初始位置點,第二位置點為所述控制參數(shù)對應(yīng)的終點。
需要說明的是,運動軌跡可以是在機器人操作控制界面的虛擬機器人顯示區(qū)域中繪制的,也可以是在機器人軌跡模擬界面中繪制的,這都是合理的。用戶可以觀測繪制的虛擬機器人的運動軌跡是否滿足實際應(yīng)用場景的運動要求,如果不滿足,則可以調(diào)整輸入的控制參數(shù),直至達(dá)到滿足實際應(yīng)用場景的運動要求為止。
應(yīng)用本實施例,在機器人操作控制軟件中采用虛擬仿真技術(shù),在機器人操作控制界面的預(yù)設(shè)區(qū)域中,顯示所述機器人對應(yīng)的虛擬機器人的立體圖像,通過該立體圖像來顯示真實機器人的運動情況和軌跡,使得用戶能夠清晰及直觀地觀測機器人的運動狀態(tài)。
如圖2所示,本發(fā)明實施例所提供的一種機器人仿真控制方法,在將控制參數(shù)發(fā)送至虛擬機器人的步驟之前,還可以包括如下步驟:
s201,根據(jù)用戶的選擇,確定待控制機器人。
其中,用戶通過機器人操作控制界面中機器人選擇區(qū)域的選擇控件對待控制機器人進行選擇。
需要說明的是,機器人選擇區(qū)域的選擇控件可以有兩種機器人模式選擇,第一種是選擇虛擬機器人,第二種是選擇真實機器人。在第一種模式選擇下機器人仿真控制系統(tǒng)只對虛擬機器人進行控制,用戶選擇第一種模式可以觀測選取的控制參數(shù)是否可以滿足機器人的運動要求,如果不滿足則可以調(diào)整控制參數(shù)直至滿足機器人的運動要求,然后再將滿足運動要求的控制參數(shù)輸出給真實機器人;在第二種模式選擇下機器人仿真控制系統(tǒng)即對虛擬機器人進行控制又對真實機器人進行控制,可以通過虛擬機器人觀測到真實機器人的實時運動情況。
s202,判斷待控制機器人是否為虛擬機器人;如果是,則執(zhí)行s103;否則執(zhí)行s203。
需要說明的是,如果用戶選擇的待控制機器人僅為虛擬機器人,機器人的仿真控制方法與上述的s103至s105的步驟相同,這里不再贅述。
s203,將控制參數(shù)同時發(fā)送至虛擬機器人和真實機器人,以使虛擬機器人和真實機器人按照控制參數(shù)同步運動。
其中,如果用戶選擇的待控制機器人既有虛擬機器人又有真實機器人,則需要將控制參數(shù)既發(fā)送至虛擬機器人,又發(fā)送至真實機器人,虛擬機器人和真實機器人在接收到控制參數(shù)時,按照控制參數(shù)進行運動。
需要說明的是,虛擬機器人在接收到控制參數(shù)后的方法與上述的s103至s105的步驟相同,這里不再贅述。真實機器人在接收到控制參數(shù)后的進行運動的方法屬于現(xiàn)有技術(shù),這里也不再贅述。
并且,可以理解的是,由于控制參數(shù)同時發(fā)送給虛擬機器人和真實機器人,用戶可以通過虛擬機器人與真實機器人的同步運動觀測到真實機器人的運動情況。
應(yīng)用本實施例,根據(jù)用戶的控制需求,選擇不同的待控制機器人進行控制,首先,可以通過先控制虛擬機器人,觀測虛擬機器人的運動情況判斷是否滿足機器人的運動條件,不滿足則調(diào)整控制參數(shù)直至滿足運動條件,能夠有效避免控制參數(shù)的選擇和/或輸入錯誤導(dǎo)致機器人發(fā)生危險;其次,通過虛擬機器人與真實機器人的同步運動觀測到真實機器人的運動情況。
可選的,在一種具體實現(xiàn)方式中,為了準(zhǔn)確繪制虛擬機器人的運動軌跡,所述根據(jù)控制參數(shù),在虛擬機器人運動過程的立體圖像上繪制虛擬機器人的運動軌跡的步驟,可以包括:
首先,根據(jù)用戶輸入的預(yù)設(shè)第一控制參數(shù),確定虛擬機器人末端到達(dá)的第一位置點為該虛擬機器人的運動軌跡的起點;
其次,根據(jù)用戶輸入的預(yù)設(shè)第二控制參數(shù),確定虛擬機器人末端到達(dá)的第二位置點為該虛擬機器人的運動軌跡的終點;
再次,根據(jù)起點的位姿信息及終點的位姿信息,確定虛擬機器人的運動方程,其中,位姿信息包括:位置信息參數(shù)及姿態(tài)信息參數(shù);
然后,根據(jù)運動方程,確定虛擬機器人從起點至終點的位移曲線;
最后,在虛擬機器人運動過程的立體圖像上繪制位移曲線為虛擬機器人從起點至終點的運動軌跡。
需要說明的是,在實際應(yīng)用中,用戶可以通過對控制參數(shù)的輸入設(shè)定用戶所期望的機器人的末端所到達(dá)的起點及終點,通過對機器人從起點至終點的運動軌跡的繪制,用戶可以觀測到虛擬機器人的運動情況,從而得到在該控制參數(shù)下真實機器人的實際運動情況。根據(jù)起點的位姿信息及終點的位姿信息,確定虛擬機器人的運動方程,從而繪制虛擬機器人從起點至終點的位移曲線,屬于現(xiàn)有技術(shù),這里不再贅述。
可選的,在一種具體實現(xiàn)方式中,例如在拖動示教過程中,在用戶對真實機器人操作后,為了能夠通過虛擬機器人觀測真實機器人的運動軌跡,所述機器人仿真控制方法的步驟,還可以包括:
首先,獲取用戶操作真實機器人末端所到達(dá)的預(yù)設(shè)第三位置點,并確定該預(yù)設(shè)第三位置點為虛擬機器人的運動軌跡的起點;
其次,獲取用戶操作真實機器人末端所到達(dá)的預(yù)設(shè)第四位置點,并確定該預(yù)設(shè)第四位置點為虛擬機器人的運動軌跡的終點;
再次,根據(jù)起點的位姿信息及終點的位姿信息,確定虛擬機器人的運動方程,其中,位姿信息包括:位置信息參數(shù)及姿態(tài)信息參數(shù);
然后,根據(jù)上述運動方程,確定虛擬機器人從起點至終點的位移曲線;
最后,在虛擬機器人運動過程的立體圖像上繪制位移曲線為虛擬機器人從起點至終點的運動軌跡。
需要說明的是,用戶在不知道運動軌跡的起點及終點所對應(yīng)的控制參數(shù)的情況下,用戶期望機器人的末端從任一實際位置點移動至另任一實際位置點,則可操作真實機器人。在用戶操作真實機器人的末端到達(dá)期望的運動軌跡的起點時,機器人仿真控制系統(tǒng)接收真實機器人發(fā)送的起點的位置參數(shù),也就采集到該起點的參數(shù),并在機器人操作控制界面的預(yù)設(shè)區(qū)域中確定該起點為虛擬機器人的運動軌跡的起點。在用戶操作真實機器人的末端到達(dá)期望的運動軌跡的終點時,機器人仿真控制系統(tǒng)接收真實機器人發(fā)送的終點的位置參數(shù),也就采集到該終點的參數(shù),并在機器人操作控制界面的預(yù)設(shè)區(qū)域中確定該終點為虛擬機器人的運動軌跡的終點。通過對機器人從起點至終點的運動軌跡的繪制,用戶可以觀測到虛擬機器人的運動情況,從而得到真實機器人從期望的起點至期望的終點的實際運動情況。根據(jù)起點的位姿信息及終點的位姿信息,確定虛擬機器人的運動方程,從而繪制虛擬機器人從起點至終點的位移曲線,屬于現(xiàn)有技術(shù),這里不再贅述。
可選的,在一種具體實現(xiàn)方式中,為了方便用戶觀測機器人的運動情況,需要確定機器人的運動基準(zhǔn)面,即坐標(biāo)平面,所述機器人仿真控制方法的步驟,還可以包括:
首先,獲得用戶在預(yù)設(shè)區(qū)域選擇的三個不同位置點的坐標(biāo);
然后,根據(jù)三個不同位置點的坐標(biāo),確定并顯示虛擬機器人的坐標(biāo)平面,并確定坐標(biāo)平面的原點。
需要說明的是,用戶在預(yù)設(shè)區(qū)域選擇的三個不同位置點的坐標(biāo),可以是任意三個不同位置點的坐標(biāo),根據(jù)三點確定一個平面的理論確定虛擬機器人的坐標(biāo)平面。坐標(biāo)平面的原點,可以是上述三個不同位置點中的任意一個,也可以是上述三個不同位置點中任兩個位置點的連線的終點,這都是合理的。
下面結(jié)合具體的應(yīng)用實例,對本發(fā)明實施例所提供的機器人仿真控制方法進行介紹。
圖3為本發(fā)明實施例的機器人操作控制界面,圖中包括:虛擬機器人顯示區(qū)域301、機器人選擇區(qū)域302、步長模式設(shè)置區(qū)域303、位置控制區(qū)域304、狀態(tài)顯示區(qū)域305、姿態(tài)控制區(qū)域306及聯(lián)合控制區(qū)域307。
假設(shè)用戶選擇機器人選擇區(qū)域302的結(jié)果為虛擬機器人,用戶未對步長模式設(shè)置區(qū)域303進行設(shè)置,假設(shè)虛擬機器人的初始位置在坐標(biāo)系的原點,用戶通過位置控制區(qū)域304設(shè)置虛擬機器人沿y軸負(fù)方向平移215.5mm、沿z軸正方向平移985mm,x軸方向不動,并且通過姿態(tài)控制區(qū)域306設(shè)置虛擬機器人沿x軸正方向旋轉(zhuǎn)707.107mm;并將上述參數(shù)顯示在狀態(tài)顯示區(qū)域305中。對聯(lián)合控制區(qū)域307不做設(shè)置,即虛擬機器人不沿不同軸向進行旋轉(zhuǎn)。
在虛擬機器人顯示區(qū)域301中,虛擬機器人根據(jù)上述控制參數(shù)進行運動,用戶觀測虛擬機器人顯示區(qū)域301中虛擬機器人的運動情況,判斷是否滿足運動要求,如果不滿足則調(diào)整上述控制參數(shù),再觀測虛擬機器人的運動情況直至滿足運動要求。
圖4為本發(fā)明實施例的機器人坐標(biāo)平面標(biāo)定界面。用戶通過點擊按鍵401、按鍵402或按鍵403,跳轉(zhuǎn)至圖3所示的機器人操作控制界面,通過設(shè)置位置控制參數(shù)確定虛擬機器人基座的三個位置點,根據(jù)該三個位置點組成虛擬機器人基座所在的坐標(biāo)平面408。通過點擊按鍵404、按鍵405或按鍵406,可以將虛擬機器人移動至上述確定的三個位置點所對應(yīng)的坐標(biāo)處。通過點擊按鍵407,可保存坐標(biāo)平面408的參數(shù)信息。
圖5為本發(fā)明實施例的機器人軌跡模擬界面,用戶通過鼠標(biāo)選擇虛擬機器人的初始點a及虛擬機器人的終點b,虛擬機器人在接收到控制參數(shù)后,從初始點a運動到終點b,在運動的過程中,根據(jù)參數(shù)設(shè)置,虛擬機器人每運動一步,記錄下當(dāng)前虛擬機器人的位置坐標(biāo),根據(jù)記錄的位置坐標(biāo)繪制出虛擬機器人的運動軌跡501。
與現(xiàn)有技術(shù)相比,本方案中,在機器人操作控制軟件中采用虛擬仿真系統(tǒng),通過虛擬仿真系統(tǒng),利用虛擬機器人實時顯示真實機器人的運動情況,使得用戶能夠清晰及直觀地觀測機器人的運動狀態(tài);并且根據(jù)用戶的控制需求,選擇不同的待控制機器人進行控制,能夠有效避免控制參數(shù)的選擇和/或輸入錯誤導(dǎo)致機器人發(fā)生危險;且通過虛擬機器人與真實機器人的同步運動觀測到真實機器人的運動情況。
相應(yīng)于上述方法實施例,本發(fā)明實施例提供了一種機器人仿真控制裝置,如圖6所述,所述裝置可以包括:
第一顯示模塊610,用于在機器人操作控制界面的預(yù)設(shè)區(qū)域中,顯示所述機器人對應(yīng)的虛擬機器人的立體圖像;
獲取模塊620,用于獲取機器人的控制參數(shù);
第一發(fā)送模塊630,用于將所述控制參數(shù)發(fā)送至所述虛擬機器人,以使所述虛擬機器人按照所述控制參數(shù)運動;
第二顯示模塊640,用于在所述預(yù)設(shè)區(qū)域中顯示所述虛擬機器人運動過程的立體圖像;
第一繪制模塊650,用于根據(jù)所述控制參數(shù)在所述虛擬機器人運動過程的立體圖像上繪制虛擬機器人的運動軌跡。
應(yīng)用本實施例,在機器人操作控制軟件中采用虛擬仿真技術(shù),在機器人操作控制界面的預(yù)設(shè)區(qū)域中,顯示所述機器人對應(yīng)的虛擬機器人的立體圖像,通過該立體圖像來顯示真實機器人的運動情況和軌跡,使得用戶能夠清晰及直觀地觀測機器人的運動狀態(tài)。
可選的,所述獲取模塊620,可以包括:
接收子模塊,用于接收用戶通過所述操作控制界面的多個預(yù)設(shè)配置選項選擇和/或輸入的控制參數(shù)。
需要說明的是,所述控制參數(shù)可以包括:位置控制參數(shù)、姿態(tài)控制參數(shù)及沿軸旋轉(zhuǎn)參數(shù)。
所述裝置還可以包括:
獲得模塊,用于獲得用戶在所述預(yù)設(shè)區(qū)域選擇的三個不同位置點的坐標(biāo);
第六確定模塊,用于根據(jù)所述三個不同位置點的坐標(biāo),確定并顯示所述虛擬機器人的坐標(biāo)平面,并確定所述坐標(biāo)平面的原點。
更進一步的,在包含第一顯示模塊610、獲取模塊620、第一發(fā)送模塊630、第二顯示模塊640、第一繪制模塊650的基礎(chǔ)上,如圖7所示,本發(fā)明實施例所提供的一種機器人仿真控制裝置還可以包括:
第一確定模塊660,用于根據(jù)用戶的選擇,確定待控制機器人;
執(zhí)行模塊670,用于當(dāng)所述待控制機器人為虛擬機器人時,執(zhí)行所述將所述控制參數(shù)發(fā)送至所述虛擬機器人的步驟;
第二發(fā)送模塊680,用于當(dāng)所述待控制機器人包括虛擬機器人和真實機器人時,將所述控制參數(shù)同時發(fā)送至所述虛擬機器人和真實機器人,以使所述虛擬機器人和真實機器人按照所述控制參數(shù)同步運動。
應(yīng)用本實施例,根據(jù)用戶的控制需求,選擇不同的待控制機器人進行控制,首先,可以通過先控制虛擬機器人,觀測虛擬機器人的運動情況判斷是否滿足機器人的運動條件,不滿足則調(diào)整控制參數(shù)直至滿足運動條件,能夠有效避免控制參數(shù)的選擇和/或輸入錯誤導(dǎo)致機器人發(fā)生危險;其次,通過虛擬機器人與真實機器人的同步運動觀測到真實機器人的運動情況。
可選的,所述第一繪制模塊650,可以包括
第一確定子模塊,用于根據(jù)用戶輸入的預(yù)設(shè)第一控制參數(shù),確定所述虛擬機器人末端到達(dá)的第一位置點為所述虛擬機器人的運動軌跡的起點;
第二確定子模塊,用于根據(jù)所述用戶輸入的預(yù)設(shè)第二控制參數(shù),確定所述虛擬機器人末端到達(dá)的第二位置點為所述虛擬機器人的運動軌跡的終點;
第三確定子模塊,用于根據(jù)所述起點的位姿信息及所述終點的位姿信息,確定所述虛擬機器人的運動方程,其中,所述位姿信息包括:位置信息參數(shù)及姿態(tài)信息參數(shù);
第四確定子模塊,用于根據(jù)所述運動方程,確定所述虛擬機器人從所述起點至所述終點的位移曲線;
運動軌跡繪制子模塊,用于在所述虛擬機器人運動過程的立體圖像上繪制所述位移曲線為所述虛擬機器人從所述起點至所述終點的運動軌跡。
可選的,所述裝置還可以包括:
第二確定模塊,用于獲取用戶操作真實機器人末端所到達(dá)的預(yù)設(shè)第三位置點,并確定所述預(yù)設(shè)第三位置點為所述虛擬機器人的運動軌跡的起點;
第三確定模塊,用于獲取所述用戶操作真實機器人末端所到達(dá)的預(yù)設(shè)第四位置點,并確定所述預(yù)設(shè)第四位置點為所述虛擬機器人的運動軌跡的終點;
第四確定模塊,用于根據(jù)所述起點的位姿信息及所述終點的位姿信息,確定所述虛擬機器人的運動方程,其中,所述位姿信息包括:位置信息參數(shù)及姿態(tài)信息參數(shù);
第五確定模塊,用于根據(jù)所述運動方程,確定所述虛擬機器人從所述起點至所述終點的位移曲線;
第二繪制模塊,用于在所述虛擬機器人運動過程的立體圖像上繪制所述位移曲線為所述虛擬機器人從所述起點至所述終點的運動軌跡。
可以理解的是,本發(fā)明實施例的另一實施例中,機器人仿真控制裝置可以同時包括:第一顯示模塊610、獲取模塊620、第一發(fā)送模塊630、第二顯示模塊640、第一繪制模塊650、第一確定模塊660、執(zhí)行模塊670、第二發(fā)送模塊680、第二確定模塊、第三確定模塊、第四確定模塊、第五確定模塊、第二繪制模塊、獲得模塊和第六確定模塊。
需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
本說明書中的各個實施例均采用相關(guān)的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內(nèi)。