国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于OpenGL的3-RSS/S并聯(lián)機(jī)器人動(dòng)態(tài)仿真

2015-11-27 03:41:19王瑞利丁慶增
精密制造與自動(dòng)化 2015年3期
關(guān)鍵詞:并聯(lián)編程圖形

王瑞利 丁慶增

基于OpenGL的3-RSS/S并聯(lián)機(jī)器人動(dòng)態(tài)仿真

王瑞利1丁慶增2

(1. 黃河科技學(xué)院工學(xué)院 鄭州450063;2. 中鐵工程裝備集團(tuán)有限公司 鄭州450002)

通過(guò)對(duì)機(jī)器人仿真技術(shù)的探討,開發(fā)一個(gè)成功的機(jī)器人仿真系統(tǒng)需要強(qiáng)有力的開發(fā)工具,在VC++6.0仿真軟件開發(fā)平臺(tái)上,基于OpenGL聯(lián)合開發(fā)了一套3-RSS/S型并聯(lián)機(jī)器人的仿真系統(tǒng)軟件,并對(duì)該系統(tǒng)的計(jì)算機(jī)動(dòng)態(tài)仿真實(shí)現(xiàn)原理做了詳細(xì)的介紹。

并聯(lián)機(jī)器人 計(jì)算機(jī)仿真 OpenGL

隨著機(jī)器人研究的不斷深入和機(jī)器人領(lǐng)域的不斷發(fā)展,機(jī)器人仿真系統(tǒng)作為機(jī)器人設(shè)計(jì)和研究的安全可靠、靈活方便的工具,發(fā)揮著重要的作用。本文通過(guò)對(duì)3-RSS/S并聯(lián)機(jī)器人的三維實(shí)時(shí)仿真系統(tǒng)的研究、開發(fā)和分析,探討了在Windows環(huán)境下利用OpenGL和VisualC++混合編程,實(shí)現(xiàn)機(jī)器人三維實(shí)時(shí)動(dòng)態(tài)仿真的具體方法和步驟。

1 仿真技術(shù)簡(jiǎn)介

機(jī)器人仿真是機(jī)器人研究的一項(xiàng)很重要的內(nèi)容,它涉及機(jī)器人機(jī)構(gòu)學(xué)、機(jī)器人運(yùn)動(dòng)學(xué)、機(jī)器人零件建模、仿真機(jī)器人三維實(shí)現(xiàn)和機(jī)器人運(yùn)動(dòng)控制,是一項(xiàng)綜合性的有創(chuàng)新意義和實(shí)用價(jià)值的研究課題。仿真利用計(jì)算機(jī)可視化和面向?qū)ο蟮氖侄?,模擬機(jī)器人的動(dòng)態(tài)特性,幫助研究人員了解機(jī)器人工作空間的形態(tài)及極限,揭示機(jī)構(gòu)的合理運(yùn)動(dòng)方案及有效的控制算法,從而解決在機(jī)器人設(shè)計(jì)、制造以及運(yùn)行過(guò)程中的問題,避免了直接操作實(shí)體可能會(huì)造成的事故或者不必要的損失。

要開發(fā)一個(gè)成功的機(jī)器人仿真系統(tǒng),需要強(qiáng)而有力的開發(fā)工具。在眾多的開發(fā)工具中,OpenGL是非常實(shí)用方便的一種。OpenGL被計(jì)算機(jī)工業(yè)界認(rèn)為是當(dāng)前最先進(jìn)的三維圖形API,幾乎所有的三維圖形都能見到OpenGL的影子。OpenGL是在SGI、Microsoft、DEC、IBM、Intel等多家世界著名計(jì)算機(jī)公司的倡導(dǎo)下,基于SGI的GL(Graphical Library)標(biāo)準(zhǔn),制定的一個(gè)通用共享的開發(fā)三維圖形標(biāo)準(zhǔn)。Microsoft公司首先將OpenGL圖形庫(kù)鏈接到Windows NT中和Windows9x上,這使得廣大PC機(jī)用戶可以使用OpenGL開發(fā)功能強(qiáng)大的圖形程序。以前,在Windows9x/NT操作系統(tǒng)中開發(fā)的OpenGL應(yīng)用程序只能在昂貴的圖形工作站上才能運(yùn)行,但隨著支持OpenGL的圖形加速卡的出現(xiàn)和微機(jī)性能的提高,OpenGL在微機(jī)平臺(tái)上得到了廣泛的應(yīng)用,這使得快速開發(fā)高效、低成本的機(jī)器人仿真系統(tǒng)成為了可能。由于OpenGL的作用機(jī)制是客戶(Client)/服務(wù)器(Server)機(jī)制,因此他的網(wǎng)絡(luò)是透明的,可以十分方便的在網(wǎng)絡(luò)環(huán)境下使用。

選擇一個(gè)方便、高效、快捷并且功能強(qiáng)大的開發(fā)平臺(tái)對(duì)于仿真軟件的開發(fā)至關(guān)重要,在此,選擇了VC++6.0作為開發(fā)仿真軟件的平臺(tái)。VisualC++6.0緊密結(jié)合了面向?qū)ο蠓治?OOA)、面向?qū)ο笤O(shè)計(jì)(OOD)和面向?qū)ο缶幊?OOP)的思想,從而為大型復(fù)雜的應(yīng)用程序開發(fā)提供了一種比傳統(tǒng)的過(guò)程式編程方法更為有效的方法。

2 仿真軟件系統(tǒng)

2.1 軟件系統(tǒng)原理

機(jī)器人仿真系統(tǒng)的軟件系統(tǒng)原理圖,如圖1所示,下面介紹組成該軟件體系相關(guān)模塊的功能。

圖1 系統(tǒng)原理圖

(1)控制模塊。包括運(yùn)動(dòng)控制、狀態(tài)控制、工況控制、變換視角、視圖縮放、實(shí)用技術(shù)幾個(gè)部分,這些部分分別控制機(jī)器人的啟動(dòng)、停止,機(jī)器人作業(yè)方式,顯示窗口中圖像的放大、縮小以及視角的變換等。

(2)運(yùn)動(dòng)學(xué)原理模塊。以機(jī)器人運(yùn)動(dòng)學(xué)正解、逆解算法為原理,編寫末端執(zhí)行器位姿與各輸入桿件位姿之間的數(shù)學(xué)關(guān)系。

(3)圖形建模模塊。分別建立機(jī)器人各零部件模型,確定出每個(gè)零部件與相臨零部件連接的關(guān)節(jié)點(diǎn),以便組裝機(jī)器人時(shí)進(jìn)行定位。

(4)圖形接口模塊。根據(jù)各個(gè)零件的空間位置、角度等信息組合零部件,最終顯示機(jī)器人整體形狀。

(5)圖形繪制模塊。根據(jù)各零件幾何信息用OpenGL繪圖指令繪制零件,添加顏色、紋理及光照處理。

(6)數(shù)據(jù)庫(kù)模塊。存儲(chǔ)必要的仿真計(jì)算數(shù)據(jù),用于保證在動(dòng)態(tài)仿真過(guò)程中各種信息能夠時(shí)時(shí)顯示。

(7)數(shù)據(jù)顯示模塊。顯示仿真過(guò)程中系統(tǒng)的各種信息,包括末端執(zhí)行器坐標(biāo)、速度、受力等。

(8)文檔說(shuō)明模塊。存儲(chǔ)仿真分析結(jié)論,并為系統(tǒng)提供必要的幫助和說(shuō)明。

2.2 3-RSS/S并聯(lián)機(jī)器人仿真技術(shù)

3-RSS/S并聯(lián)機(jī)器人機(jī)構(gòu),如圖2所示,由上、下兩個(gè)平臺(tái)和三個(gè)R-S-S支鏈及連接兩平臺(tái)中心的一根支撐桿S組成,其上平臺(tái)為活動(dòng)平臺(tái),下平臺(tái)為基座。連桿上端經(jīng)球鉸與上平臺(tái)(即動(dòng)平臺(tái))相連,下端經(jīng)球鉸與電機(jī)曲柄相連,電機(jī)被封裝起來(lái)。支撐桿的作用是約束和支撐上平臺(tái),它的上端通過(guò)球鉸與上平臺(tái)中心相連,這一結(jié)構(gòu)使上平臺(tái)僅有三個(gè)自由度轉(zhuǎn)動(dòng),并且能承受較大的負(fù)載,從而減小連桿的受力。

圖2 3—RSS/S并聯(lián)機(jī)器人機(jī)構(gòu)簡(jiǎn)圖

機(jī)器人運(yùn)動(dòng)學(xué)的基本任務(wù)之一就是要建立起各構(gòu)件與末端操作器的位置、姿態(tài)之間的關(guān)系,為機(jī)器人的控制和應(yīng)用研究提供分析的方法和手段,運(yùn)動(dòng)建模在并聯(lián)機(jī)器人的研究中占有重要的地位。在本例中,為了和OpenGL中的坐標(biāo)系統(tǒng)保持一致,基座坐標(biāo)系仍采用世界坐標(biāo),原點(diǎn)位于基座平臺(tái)的形心,軸自左向右,軸自下而上,軸由里及外。

本系統(tǒng)仿真的目的是為了實(shí)時(shí)觀察、控制機(jī)器人的運(yùn)動(dòng)過(guò)程,因此必須有機(jī)器人圖像顯示和運(yùn)動(dòng)控制兩部分。為此本例采用MFC的MDI結(jié)構(gòu),用CsplitterWnd類對(duì)象把窗口分為兩部分,左邊用于控制的輸入和輸出,右邊用于顯示機(jī)器人位姿圖像。由于要計(jì)算機(jī)器人的正反解和軌跡規(guī)劃,為了使這三方面互不影響,本文在左視圖采用了基于CFormView類的對(duì)話框設(shè)計(jì),用按鈕進(jìn)行控制,可以方便地在各實(shí)驗(yàn)間進(jìn)行切換、開發(fā)的軟件界面如圖3所示。

圖3 3-RSS/S并聯(lián)機(jī)器人系統(tǒng)仿真界面

3-RSS/S并聯(lián)機(jī)器人的仿真系統(tǒng)左邊的控制界面中,如圖4所示,分別設(shè)置了系統(tǒng)控制和運(yùn)動(dòng)控制兩大項(xiàng)目。系統(tǒng)控制中主要是對(duì)整個(gè)仿真系統(tǒng)的設(shè)置,如仿真的啟動(dòng)、暫停和終止。另外,還可以通過(guò)控制面板及快捷菜單當(dāng)中的旋轉(zhuǎn)(視角變換)和視圖縮放按扭,對(duì)顯示窗口中的圖形進(jìn)行操作,以期達(dá)到最佳視覺效果的目的。

在運(yùn)動(dòng)控制中,設(shè)立了簡(jiǎn)單運(yùn)動(dòng)和復(fù)合運(yùn)動(dòng)。簡(jiǎn)單運(yùn)動(dòng)通過(guò)打擊X、Y、Z軸按鈕來(lái)實(shí)現(xiàn)運(yùn)動(dòng),而且右邊仿真運(yùn)動(dòng)的數(shù)據(jù)可以在左邊相應(yīng)的對(duì)話框中顯示出來(lái)。復(fù)合運(yùn)動(dòng)則是三個(gè)軸共同作用,顯示框中都顯示出相應(yīng)的數(shù)據(jù)。這樣對(duì)加工仿真演示過(guò)程中的各種數(shù)據(jù)信息進(jìn)行實(shí)時(shí)顯示。

圖4 控制界面

3 結(jié)語(yǔ)

首先對(duì)機(jī)器人仿真技術(shù)進(jìn)行了簡(jiǎn)要的介紹,然后在VC++6.0環(huán)境下嵌套OpenGL開發(fā)出了一套該機(jī)器人的仿真系統(tǒng)軟件,并對(duì)該系統(tǒng)的結(jié)構(gòu)和功能做了較為詳細(xì)的描述,經(jīng)過(guò)測(cè)試證明,該系統(tǒng)運(yùn)行可靠、功能完備、效果逼真。

[1] 孫家廣,楊長(zhǎng)貴.計(jì)算機(jī)圖形學(xué)[M].北京:清華大學(xué)出版社,1995.

[2] 朱亞軍,白健軍.OpenGL編程實(shí)例[M].北京:人民郵電出版社,1999.

[3] 葉志祥,冀春榮,寧偉.OpenGL在機(jī)器人仿真系統(tǒng)中的應(yīng)用[J].機(jī)床與液壓,2000,2:38.

[4] 徐坤,言勇華.機(jī)器人運(yùn)動(dòng)控制仿真系統(tǒng)研究與實(shí)現(xiàn)[J].機(jī)器人技術(shù)與應(yīng)用,2000,2:28-30.

[5] 賈志剛編著.精通OpenGL6[M].北京:電子工業(yè)出版社,1999.

[6] 李勁,鄭浩編著.5C++Builder5.0技術(shù)內(nèi)幕大公開[M].北京:中國(guó)青年出版社,2000.

[7] 吳瑞祥編著.機(jī)器人技術(shù)與應(yīng)用[M].北京:北京航空航天大學(xué)出版社,1994.

[8] 和平鴿工作室.OpenGL高級(jí)編程與可視化系統(tǒng)開發(fā)(系統(tǒng)開發(fā)篇)[M].北京:中國(guó)水利水電出版社,2002.

[9] 和平鴿工作室.OpenGL高級(jí)編程與可視化系統(tǒng)開發(fā)(高級(jí)編程篇)[M].北京:中國(guó)水利水電出版社,2002.

猜你喜歡
并聯(lián)編程圖形
識(shí)別串、并聯(lián)電路的方法
編程,是一種態(tài)度
元征X-431實(shí)測(cè):奔馳發(fā)動(dòng)機(jī)編程
編程小能手
紡織機(jī)上誕生的編程
審批由“串聯(lián)”改“并聯(lián)”好在哪里?
分圖形
找圖形
并聯(lián)型APF中SVPWM的零矢量分配
一種軟開關(guān)的交錯(cuò)并聯(lián)Buck/Boost雙向DC/DC變換器
揭东县| 宁波市| 鄯善县| 林芝县| 金阳县| 乌什县| 汕头市| 军事| 庆安县| 汨罗市| 治多县| 凌海市| 卢湾区| 胶南市| 遂溪县| 龙陵县| 延长县| 温泉县| 宝坻区| 黄浦区| 三门峡市| 乐业县| 施甸县| 陇南市| 金堂县| 蓬溪县| 赣州市| 固阳县| 海原县| 隆回县| 万荣县| 高州市| 北辰区| 郓城县| 泸西县| 尚志市| 宜春市| 淅川县| 玉山县| 新泰市| 嘉善县|