本發(fā)明涉及機(jī)械臂仿真技術(shù),具體涉及一種用于繩驅(qū)動(dòng)冗余機(jī)械臂運(yùn)動(dòng)學(xué)模型的仿真平臺(tái)及仿真方法。
背景技術(shù):
繩驅(qū)動(dòng)是一種新興的驅(qū)動(dòng)方式,通過(guò)使用鋼絲繩直接傳遞動(dòng)力,減少了傳動(dòng)機(jī)構(gòu),使原本位于機(jī)械臂關(guān)節(jié)處的驅(qū)動(dòng)結(jié)構(gòu)能夠放置于其他位置,減輕了機(jī)械臂的關(guān)節(jié)重量和轉(zhuǎn)動(dòng)慣量,提高了機(jī)械臂的靈活性,因此越來(lái)越多的研究者將繩驅(qū)動(dòng)應(yīng)用到多關(guān)節(jié)機(jī)械臂的設(shè)計(jì)中。
但由于繩驅(qū)動(dòng)改變了關(guān)節(jié)直接驅(qū)動(dòng)的方式,使得機(jī)械臂的運(yùn)動(dòng)學(xué)模型與原先的成熟理論產(chǎn)生較大差異,變得非常抽象而復(fù)雜,同時(shí)對(duì)機(jī)械臂的控制方式也變得更加復(fù)雜,在沒(méi)有制造出機(jī)械臂實(shí)物的情況下,研究者難以對(duì)其運(yùn)動(dòng)效果進(jìn)行感性和數(shù)據(jù)上的檢驗(yàn),更難以對(duì)其控制方式進(jìn)行優(yōu)化和改進(jìn),這無(wú)疑增加了研究時(shí)間和成本。
目前較少有將三維圖形顯示和多方式人機(jī)交互控制結(jié)合應(yīng)用于機(jī)械臂設(shè)計(jì)的輔助工具。作為設(shè)計(jì)輔助工具,仿真平臺(tái)的應(yīng)用能夠讓研究人員更直觀方便地檢驗(yàn)?zāi)P偷恼_性,更快捷地體驗(yàn)交互控制效果,更高效地進(jìn)行優(yōu)化改進(jìn),縮短研發(fā)周期,提高研發(fā)效率,節(jié)約成本。
技術(shù)實(shí)現(xiàn)要素:
為了能夠讓研究人員從接近真實(shí)的三維圖形直觀驗(yàn)證機(jī)械臂的運(yùn)動(dòng)效果,更直接高效地進(jìn)行機(jī)械臂的設(shè)計(jì)和控制策略的優(yōu)化改進(jìn),縮短研發(fā)周期,提高研發(fā)效率,節(jié)約成本,本發(fā)明的目的在于提供用于繩驅(qū)動(dòng)冗余機(jī)械臂運(yùn)動(dòng)學(xué)模型的仿真平臺(tái)及仿真方法。
為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明采用的技術(shù)方案為:
一、用于繩驅(qū)動(dòng)冗余機(jī)械臂運(yùn)動(dòng)學(xué)模型的仿真平臺(tái)
包括相互依次連接的用戶單元、計(jì)算機(jī)交互控制系統(tǒng)、機(jī)械臂控制器和機(jī)械臂;計(jì)算機(jī)交互控制系統(tǒng)由數(shù)據(jù)模塊、求解模塊、顯示模塊和通信模塊組成;用戶單元配置計(jì)算機(jī)交互控制系統(tǒng)的數(shù)據(jù)模塊,所述數(shù)據(jù)模塊將數(shù)據(jù)信號(hào)傳輸?shù)角蠼饽K,求解模塊將解算結(jié)果信號(hào)傳輸?shù)斤@示模塊和通信模塊,通信模塊將控制信號(hào)傳輸?shù)綑C(jī)械臂控制器,機(jī)械臂控制器驅(qū)動(dòng)機(jī)械臂運(yùn)動(dòng)。
二、用于繩驅(qū)動(dòng)冗余機(jī)械臂運(yùn)動(dòng)學(xué)模型的仿真平臺(tái)的仿真方法,該方法的步驟如下:
1)配置:用戶單元配置好所需的配置數(shù)據(jù)并在數(shù)據(jù)模塊中存儲(chǔ)更新;
2)計(jì)算:數(shù)據(jù)模塊將數(shù)據(jù)信號(hào)傳輸?shù)角蠼饽K,求解模塊解算完成后將解算結(jié)果信號(hào)傳輸?shù)斤@示模塊和通信模塊;
3)輸出:顯示模塊將解算結(jié)果信號(hào)轉(zhuǎn)換為可視化三維圖形和實(shí)時(shí)狀態(tài)數(shù)據(jù),然后在仿真平臺(tái)的交互界面中顯示;
4)反饋:可視化三維圖形和實(shí)時(shí)狀態(tài)數(shù)據(jù)反饋到用戶單元;
5)執(zhí)行:通信模塊將解算結(jié)果信號(hào)轉(zhuǎn)換為控制信號(hào)并傳輸?shù)綑C(jī)械臂控制器,然后機(jī)械臂控制器驅(qū)動(dòng)機(jī)械臂進(jìn)行運(yùn)動(dòng),在單獨(dú)使用計(jì)算機(jī)交互控制系統(tǒng)的情況下跳過(guò)該步驟;
6)操作:用戶單元根據(jù)步驟4)的反饋信息進(jìn)行回應(yīng),進(jìn)行交互控制,實(shí)現(xiàn)所需的后續(xù)操作;
7)重復(fù)以上流程直至結(jié)束。
步驟1)中所述配置數(shù)據(jù)包括可視化三維圖形的觀察視角、仿真過(guò)程的機(jī)械臂模型的運(yùn)動(dòng)優(yōu)化方式和期望的機(jī)械臂模型的末端的空間坐標(biāo)。
步驟2)中所述求解模塊解算的具體方法為根據(jù)三繩均布驅(qū)動(dòng)萬(wàn)向節(jié)關(guān)節(jié)的幾何關(guān)系推導(dǎo)各關(guān)節(jié)的空間位姿與驅(qū)動(dòng)繩位移的約束關(guān)系,獲得機(jī)械臂的運(yùn)動(dòng)學(xué)模型,然后進(jìn)行正向求解或逆向求解;所述正向求解具體為對(duì)相應(yīng)的驅(qū)動(dòng)繩位移計(jì)算出對(duì)應(yīng)的關(guān)節(jié)空間位姿,從而得到整個(gè)機(jī)械臂模型的空間位姿數(shù)據(jù);所述逆向求解具體為對(duì)相應(yīng)的期望的機(jī)械臂模型的末端的空間坐標(biāo)計(jì)算出對(duì)應(yīng)的整個(gè)機(jī)械臂模型的空間位姿,進(jìn)而計(jì)算出相應(yīng)的驅(qū)動(dòng)繩位移;
解算結(jié)果包括整個(gè)機(jī)械臂模型的空間位姿數(shù)據(jù)、機(jī)械臂模型的各關(guān)節(jié)的絕對(duì)和相對(duì)空間位姿數(shù)據(jù)、驅(qū)動(dòng)繩位移和實(shí)時(shí)計(jì)算的機(jī)械臂模型的末端的空間坐標(biāo)。
步驟3)中所述仿真平臺(tái)的交互界面中顯示的方法為在仿真平臺(tái)的交互界面上將實(shí)時(shí)狀態(tài)數(shù)據(jù)數(shù)值顯示在相應(yīng)位置并實(shí)時(shí)動(dòng)態(tài)更新,其中將驅(qū)動(dòng)繩位移數(shù)據(jù)轉(zhuǎn)換為圖線的形式并動(dòng)態(tài)顯示,同時(shí)在仿真平臺(tái)的交互界面上調(diào)用matlab軟件的VR工具箱,根據(jù)求解得到的整個(gè)機(jī)械臂模型的空間位姿數(shù)據(jù)獲得可視化三維圖形并動(dòng)態(tài)顯示到界面中;
所述可視化三維圖形具體為機(jī)械臂模型的三維模型,所述實(shí)時(shí)狀態(tài)數(shù)據(jù)具體包括機(jī)械臂模型的所有關(guān)節(jié)相對(duì)姿態(tài)角度數(shù)據(jù)、實(shí)時(shí)計(jì)算的機(jī)械臂模型的末端的空間坐標(biāo)、所有仿真過(guò)程的機(jī)械臂模型的運(yùn)動(dòng)優(yōu)化方式下的各項(xiàng)比較參數(shù)數(shù)據(jù)和驅(qū)動(dòng)繩位移;
所述所有仿真過(guò)程的機(jī)械臂模型的運(yùn)動(dòng)優(yōu)化方式,具體包括固定初值無(wú)優(yōu)化、迭代初值無(wú)優(yōu)化、運(yùn)動(dòng)過(guò)程中關(guān)節(jié)角度和最小優(yōu)化、運(yùn)動(dòng)過(guò)程中最大關(guān)節(jié)角度最小優(yōu)化;所述各項(xiàng)比較參數(shù)數(shù)據(jù)具體包括運(yùn)動(dòng)過(guò)程中當(dāng)前關(guān)節(jié)角度和數(shù)據(jù)、運(yùn)動(dòng)過(guò)程中當(dāng)前最大關(guān)節(jié)角度數(shù)據(jù)、運(yùn)動(dòng)過(guò)程中累計(jì)關(guān)節(jié)角度和數(shù)據(jù)和運(yùn)動(dòng)過(guò)程中平均最大關(guān)節(jié)角度數(shù)據(jù)。
步驟6)中所述交互控制的具體方法為改變可視化三維圖形的觀察視角、正向控制機(jī)械臂模型運(yùn)動(dòng)、逆向控制機(jī)械臂模型運(yùn)動(dòng)、改變仿真過(guò)程的機(jī)械臂模型的運(yùn)動(dòng)優(yōu)化方式和終止仿真并退出。
步驟6)中所述改變可視化三維圖形的觀察視角的具體方法為將觀察位置沿x軸或y軸或z軸平移固定距離、將觀察視角繞x軸或y軸或z軸旋轉(zhuǎn)固定角度、直接定向到主視圖觀察視角、直接定向到左視圖觀察視角、直接定向到俯視圖觀察視角和還原到默認(rèn)觀察視角。
步驟6)中所述正向控制機(jī)械臂模型運(yùn)動(dòng)的具體方法,包括單擊相應(yīng)的按鈕或拖動(dòng)相應(yīng)的滑塊控制條兩種方式,所述兩種方式均通過(guò)改變機(jī)械臂模型對(duì)應(yīng)的關(guān)節(jié)的驅(qū)動(dòng)繩位移使相應(yīng)的關(guān)節(jié)轉(zhuǎn)動(dòng),從而控制整個(gè)機(jī)械臂模型的空間位姿,區(qū)別在于單擊相應(yīng)的按鈕更精確,拖動(dòng)相應(yīng)的滑塊控制條更快捷;
所述逆向控制機(jī)械臂模型運(yùn)動(dòng)的具體方法,包括直接控制機(jī)械臂模型的末端和改變期望的機(jī)械臂模型的末端的空間坐標(biāo)兩種方式;直接控制機(jī)械臂模型的末端需要單擊相應(yīng)的按鈕使機(jī)械臂模型的末端沿x軸或y軸或z軸平移固定距離;改變期望的機(jī)械臂模型的末端的空間坐標(biāo)需要在相應(yīng)的編輯框內(nèi)輸入所需的坐標(biāo)值,確認(rèn)后機(jī)械臂模型的末端會(huì)按照從當(dāng)前位置到目標(biāo)位置的連線逐步移動(dòng)到目標(biāo)位置;所述兩種方式的區(qū)別在于直接控制機(jī)械臂模型的末端更直觀快捷,并且能單步進(jìn)行;改變期望的機(jī)械臂模型的末端的空間坐標(biāo)更精確,并且能連續(xù)進(jìn)行。
本發(fā)明具有的有益效果是:
1、結(jié)合了三維模型的圖形顯示,將抽象的機(jī)械臂運(yùn)動(dòng)學(xué)模型可視化,可以在仿真運(yùn)動(dòng)過(guò)程中隨時(shí)改變?nèi)S觀察視角,相比于圖表能讓研究人員更直觀方便地從多角度檢驗(yàn)?zāi)P偷恼_性,從感官上更直接地觀察機(jī)械臂的模擬運(yùn)動(dòng)效果,加深理解,更易于進(jìn)行軌跡規(guī)劃和控制策略的改進(jìn)。
2、多種人機(jī)交互控制方式,能夠從正向或逆向進(jìn)行運(yùn)動(dòng)控制,并且均能夠自由選擇快速或精確的方式,讓研究人員更靈活地進(jìn)行控制。此外仿真平臺(tái)的交互界面實(shí)時(shí)反饋各項(xiàng)參數(shù)數(shù)據(jù),提高了調(diào)試效率。
3、仿真過(guò)程中同步進(jìn)行多種優(yōu)化方式的實(shí)時(shí)對(duì)比,能夠從瞬態(tài)和終態(tài)兩個(gè)層面進(jìn)行橫向和縱向更全面的比較,更有助于確定所要采用的優(yōu)化方式。
4、根據(jù)仿真過(guò)程能夠檢驗(yàn)路徑規(guī)劃和控制策略的直觀效果,更直接高效地進(jìn)行機(jī)械臂的設(shè)計(jì)和優(yōu)化,縮短研發(fā)周期,提高研發(fā)效率,節(jié)約成本。
附圖說(shuō)明
圖1是本發(fā)明的結(jié)構(gòu)示意圖。
圖2是本發(fā)明的工作流程圖。
圖3是軟件程序流程圖。
圖4是交互界面中的可視化三維圖形示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的描述。
如圖1所示,用于繩驅(qū)動(dòng)冗余機(jī)械臂運(yùn)動(dòng)學(xué)模型的仿真平臺(tái),包括相互依次連接的用戶單元、計(jì)算機(jī)交互控制系統(tǒng)、機(jī)械臂控制器和機(jī)械臂;計(jì)算機(jī)交互控制系統(tǒng)由數(shù)據(jù)模塊、求解模塊、顯示模塊和通信模塊組成;用戶單元配置計(jì)算機(jī)交互控制系統(tǒng)的數(shù)據(jù)模塊,所述數(shù)據(jù)模塊將數(shù)據(jù)信號(hào)傳輸?shù)角蠼饽K,求解模塊將解算結(jié)果信號(hào)傳輸?shù)斤@示模塊和通信模塊,通信模塊將控制信號(hào)傳輸?shù)綑C(jī)械臂控制器,機(jī)械臂控制器驅(qū)動(dòng)機(jī)械臂運(yùn)動(dòng)。
如圖2所示,用于繩驅(qū)動(dòng)冗余機(jī)械臂運(yùn)動(dòng)學(xué)模型的仿真平臺(tái)的仿真方法,包括以下步驟:
1)配置:用戶單元配置好所需的配置數(shù)據(jù)并在數(shù)據(jù)模塊中存儲(chǔ)更新;
2)計(jì)算:數(shù)據(jù)模塊將數(shù)據(jù)信號(hào)傳輸?shù)角蠼饽K,求解模塊解算完成后將解算結(jié)果信號(hào)傳輸?shù)斤@示模塊和通信模塊;
3)輸出:顯示模塊將解算結(jié)果信號(hào)轉(zhuǎn)換為可視化三維圖形和實(shí)時(shí)狀態(tài)數(shù)據(jù),然后在仿真平臺(tái)的交互界面中顯示;
4)反饋:可視化三維圖形和實(shí)時(shí)狀態(tài)數(shù)據(jù)反饋到用戶單元;
5)執(zhí)行:通信模塊將解算結(jié)果信號(hào)轉(zhuǎn)換為控制信號(hào)并傳輸?shù)綑C(jī)械臂控制器,然后機(jī)械臂控制器驅(qū)動(dòng)機(jī)械臂進(jìn)行運(yùn)動(dòng),在單獨(dú)使用計(jì)算機(jī)交互控制系統(tǒng)的情況下跳過(guò)該步驟;
6)操作:用戶單元根據(jù)步驟4)的反饋信息進(jìn)行回應(yīng),進(jìn)行交互控制,實(shí)現(xiàn)所需的后續(xù)操作;
7)重復(fù)以上流程直至結(jié)束。
步驟2)中所述求解模塊解算的具體方法為根據(jù)三繩均布驅(qū)動(dòng)萬(wàn)向節(jié)關(guān)節(jié)的幾何關(guān)系推導(dǎo)各關(guān)節(jié)的空間位姿與驅(qū)動(dòng)繩位移的約束關(guān)系,獲得機(jī)械臂的運(yùn)動(dòng)學(xué)模型,然后進(jìn)行正向求解或逆向求解;所述正向求解具體為對(duì)相應(yīng)的驅(qū)動(dòng)繩位移計(jì)算出對(duì)應(yīng)的關(guān)節(jié)空間位姿,從而得到整個(gè)機(jī)械臂模型的空間位姿數(shù)據(jù);所述逆向求解具體為對(duì)相應(yīng)的期望的機(jī)械臂模型的末端的空間坐標(biāo)計(jì)算出對(duì)應(yīng)的整個(gè)機(jī)械臂模型的空間位姿,進(jìn)而計(jì)算出相應(yīng)的驅(qū)動(dòng)繩位移;
解算結(jié)果包括整個(gè)機(jī)械臂模型的空間位姿數(shù)據(jù)、機(jī)械臂模型的各關(guān)節(jié)的絕對(duì)和相對(duì)空間位姿數(shù)據(jù)、驅(qū)動(dòng)繩位移和實(shí)時(shí)計(jì)算的機(jī)械臂模型的末端的空間坐標(biāo)。
步驟3)中所述仿真平臺(tái)的交互界面中顯示的方法為在仿真平臺(tái)的交互界面上將實(shí)時(shí)狀態(tài)數(shù)據(jù)數(shù)值顯示在相應(yīng)位置并實(shí)時(shí)動(dòng)態(tài)更新,其中將驅(qū)動(dòng)繩位移數(shù)據(jù)轉(zhuǎn)換為圖線的形式并動(dòng)態(tài)顯示,同時(shí)在仿真平臺(tái)的交互界面上調(diào)用matlab軟件的VR工具箱,根據(jù)求解得到的整個(gè)機(jī)械臂模型的空間位姿數(shù)據(jù)獲得可視化三維圖形并動(dòng)態(tài)顯示到界面中;
所述可視化三維圖形具體為機(jī)械臂模型的三維模型,所述實(shí)時(shí)狀態(tài)數(shù)據(jù)具體包括機(jī)械臂模型的所有關(guān)節(jié)相對(duì)姿態(tài)角度數(shù)據(jù)、實(shí)時(shí)計(jì)算的機(jī)械臂模型的末端的空間坐標(biāo)、所有仿真過(guò)程的機(jī)械臂模型的運(yùn)動(dòng)優(yōu)化方式下的各項(xiàng)比較參數(shù)數(shù)據(jù)和驅(qū)動(dòng)繩位移;
所述所有仿真過(guò)程的機(jī)械臂模型的運(yùn)動(dòng)優(yōu)化方式,具體包括固定初值無(wú)優(yōu)化、迭代初值無(wú)優(yōu)化、運(yùn)動(dòng)過(guò)程中關(guān)節(jié)角度和最小優(yōu)化、運(yùn)動(dòng)過(guò)程中最大關(guān)節(jié)角度最小優(yōu)化;所述各項(xiàng)比較參數(shù)數(shù)據(jù)具體包括運(yùn)動(dòng)過(guò)程中當(dāng)前關(guān)節(jié)角度和數(shù)據(jù)、運(yùn)動(dòng)過(guò)程中當(dāng)前最大關(guān)節(jié)角度數(shù)據(jù)、運(yùn)動(dòng)過(guò)程中累計(jì)關(guān)節(jié)角度和數(shù)據(jù)和運(yùn)動(dòng)過(guò)程中平均最大關(guān)節(jié)角度數(shù)據(jù)。
步驟6)中所述交互控制的具體方法為改變可視化三維圖形的觀察視角、正向控制機(jī)械臂模型運(yùn)動(dòng)、逆向控制機(jī)械臂模型運(yùn)動(dòng)、改變仿真過(guò)程的機(jī)械臂模型的運(yùn)動(dòng)優(yōu)化方式和終止仿真并退出。
步驟6)中所述改變可視化三維圖形的觀察視角的具體方法為將觀察位置沿x軸或y軸或z軸平移固定距離、將觀察視角繞x軸或y軸或z軸旋轉(zhuǎn)固定角度、直接定向到主視圖觀察視角、直接定向到左視圖觀察視角、直接定向到俯視圖觀察視角和還原到默認(rèn)觀察視角。
步驟6)中所述正向控制機(jī)械臂模型運(yùn)動(dòng)的具體方法,包括單擊相應(yīng)的按鈕或拖動(dòng)相應(yīng)的滑塊控制條兩種方式,所述兩種方式均通過(guò)改變機(jī)械臂模型對(duì)應(yīng)的關(guān)節(jié)的驅(qū)動(dòng)繩位移使相應(yīng)的關(guān)節(jié)轉(zhuǎn)動(dòng),從而控制整個(gè)機(jī)械臂模型的空間位姿,區(qū)別在于單擊相應(yīng)的按鈕更精確,拖動(dòng)相應(yīng)的滑塊控制條更快捷;
所述逆向控制機(jī)械臂模型運(yùn)動(dòng)的具體方法,包括直接控制機(jī)械臂模型的末端和改變期望的機(jī)械臂模型的末端的空間坐標(biāo)兩種方式;直接控制機(jī)械臂模型的末端需要單擊相應(yīng)的按鈕使機(jī)械臂模型的末端沿x軸或y軸或z軸平移固定距離;改變期望的機(jī)械臂模型的末端的空間坐標(biāo)需要在相應(yīng)的編輯框內(nèi)輸入所需的坐標(biāo)值,確認(rèn)后機(jī)械臂模型的末端會(huì)按照從當(dāng)前位置到目標(biāo)位置的連線逐步移動(dòng)到目標(biāo)位置;所述兩種方式的區(qū)別在于直接控制機(jī)械臂模型的末端更直觀快捷,并且能單步進(jìn)行;改變期望的機(jī)械臂模型的末端的空間坐標(biāo)更精確,并且能連續(xù)進(jìn)行。
實(shí)施例1
結(jié)合一種關(guān)節(jié)型六節(jié)串聯(lián)的機(jī)械臂,該機(jī)械臂每節(jié)均由改進(jìn)的胡克鉸連接,每節(jié)由三根均布的驅(qū)動(dòng)繩獨(dú)立控制,因此需要十八個(gè)伺服電機(jī)對(duì)整個(gè)機(jī)械臂進(jìn)行控制。如圖1所示,計(jì)算機(jī)通過(guò)USB接口連接CAN控制器,由CAN控制器向機(jī)械臂控制器傳輸數(shù)據(jù),完成計(jì)算機(jī)交互控制系統(tǒng)與機(jī)械臂控制器的連接;機(jī)械臂控制器通過(guò)電機(jī)驅(qū)動(dòng)器向機(jī)械臂的伺服電機(jī)發(fā)送指令,完成機(jī)械臂控制器與機(jī)械臂的連接。計(jì)算機(jī)交互控制系統(tǒng)硬件環(huán)境采用臺(tái)式計(jì)算機(jī),軟件環(huán)境采用matlab搭建。采用matlab的GUI搭建仿真平臺(tái)的交互界面,采用matlab的VR工具箱實(shí)現(xiàn)交互界面中的三維圖形顯示輸出。
具體軟件程序的流程圖如圖3所示:
在完成計(jì)算機(jī)交互控制系統(tǒng)、機(jī)械臂控制器和機(jī)械臂的線路連接后,啟動(dòng)計(jì)算機(jī)交互控制系統(tǒng),用戶通過(guò)交互界面進(jìn)行操作:首先設(shè)定機(jī)械臂的物理參數(shù),本例中為關(guān)節(jié)型六節(jié)串聯(lián)的機(jī)械臂,因此設(shè)定機(jī)械臂關(guān)節(jié)數(shù)為6,完成配置后程序進(jìn)入獲取用戶控制命令后執(zhí)行命令的循環(huán)。
然后用戶可以確定仿真模式,包括正向驅(qū)動(dòng)繩耦合位移控制模式、逆向末端位置控制模式和逆向末端軌跡控制模式。
在正向驅(qū)動(dòng)繩耦合位移模式下,程序獲取用戶對(duì)驅(qū)動(dòng)繩位移的控制命令,例如第一個(gè)關(guān)節(jié)的第一根驅(qū)動(dòng)繩向后拉動(dòng)1mm,獲取控制命令后程序自動(dòng)計(jì)算其余所有關(guān)節(jié)的所有驅(qū)動(dòng)繩的位移變化量,然后通過(guò)建立好的機(jī)械臂運(yùn)動(dòng)學(xué)模型求解出整個(gè)機(jī)械臂模型的空間位姿數(shù)據(jù),解算完成后在仿真平臺(tái)的交互界面上輸出結(jié)果數(shù)據(jù)、圖表和可視化三維圖形,完成一個(gè)程序控制循環(huán)。用戶得到反饋的輸出后,根據(jù)需要進(jìn)行操作,輸入下一個(gè)控制命令。
在逆向末端位置控制模式下,程序獲取用戶對(duì)機(jī)械臂末端位置的控制命令,例如末端沿x軸正向平移1mm,獲取控制命令后程序自動(dòng)計(jì)算機(jī)械臂末端移動(dòng)到目標(biāo)位置所需的關(guān)節(jié)角數(shù)據(jù),然后求解出整個(gè)機(jī)械臂模型的空間位姿數(shù)據(jù),解算完成后在仿真平臺(tái)的交互界面上輸出結(jié)果數(shù)據(jù)、圖表和可視化三維圖形,完成一個(gè)程序控制循環(huán)。用戶得到反饋的輸出后,根據(jù)需要進(jìn)行操作,輸入下一個(gè)控制命令。
在逆向末端軌跡控制模式下,程序獲取用戶設(shè)定的目標(biāo)坐標(biāo)和優(yōu)化方式,例如x坐標(biāo)值、y坐標(biāo)值和z坐標(biāo)值均設(shè)定為50,以運(yùn)動(dòng)過(guò)程中關(guān)節(jié)角度和最小優(yōu)化方式進(jìn)行優(yōu)化。完成配置后,計(jì)算機(jī)交互控制系統(tǒng)的求解模塊開(kāi)始分析,進(jìn)行軌跡規(guī)劃,確定機(jī)械臂模型的末端從當(dāng)前位置逐步移動(dòng)到目標(biāo)位置的運(yùn)動(dòng)過(guò)程為仿真過(guò)程,形成小的程序循環(huán),在循環(huán)中將運(yùn)動(dòng)過(guò)程分解為若干步,每一步機(jī)械臂模型的末端位置都會(huì)比上一步更靠近目標(biāo)位置,進(jìn)而逐步朝目標(biāo)位置移動(dòng)。計(jì)算機(jī)交互控制系統(tǒng)的求解模塊對(duì)每一步進(jìn)行求解,根據(jù)當(dāng)前機(jī)械臂模型的末端位置的空間坐標(biāo)計(jì)算出機(jī)械臂模型的所有關(guān)節(jié)角度,從而得到整個(gè)機(jī)械臂模型的空間位姿數(shù)據(jù),解算完成后在仿真平臺(tái)的交互界面上更新輸出的結(jié)果數(shù)據(jù)、圖表和可視化三維圖形,然后通信模塊將解算結(jié)果信號(hào)轉(zhuǎn)換為控制信號(hào),如電機(jī)的轉(zhuǎn)速,然后傳輸?shù)綑C(jī)械臂控制器,再由機(jī)械臂控制器驅(qū)動(dòng)機(jī)械臂進(jìn)行同步運(yùn)動(dòng),完成執(zhí)行步驟。由于存在制造誤差,實(shí)際機(jī)械臂在運(yùn)動(dòng)過(guò)程中的位置和姿態(tài)會(huì)與可視化三維圖形有一定差異。最后程序檢測(cè)機(jī)械臂是否到達(dá)目標(biāo)位置,若否則繼續(xù)小循環(huán),對(duì)下一步計(jì)算求解;若是則結(jié)束小循環(huán),完成一個(gè)程序控制循環(huán)。用戶得到反饋的輸出后,根據(jù)需要進(jìn)行操作,輸入下一個(gè)控制命令。
計(jì)算機(jī)交互控制系統(tǒng)在運(yùn)行過(guò)程中,用戶能夠觀察所需要的實(shí)時(shí)狀態(tài)數(shù)據(jù)和可視化三維圖形,得到反饋信息,如機(jī)械臂第一個(gè)關(guān)節(jié)的關(guān)節(jié)角度,第一個(gè)關(guān)節(jié)第一根驅(qū)動(dòng)繩的位移等??梢暬S圖形如圖4所示,所顯示的是關(guān)節(jié)型六節(jié)串聯(lián)的機(jī)械臂模型,該機(jī)械臂有六節(jié),每節(jié)由三根均布的驅(qū)動(dòng)繩獨(dú)立控制,可視化三維圖形中包含了機(jī)械臂的整體空間姿態(tài)以及機(jī)械臂末端的空間位置等信息。在每次程序控制循環(huán)結(jié)束后,用戶可以輸入退出控制命令來(lái)結(jié)束仿真,退出程序。
通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。