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

?

基于Lab VIEW的LEGO Mind storms輪式機(jī)器人運(yùn)動(dòng)軌跡實(shí)時(shí)繪制系統(tǒng)

2013-08-21 03:32陳洪亮
關(guān)鍵詞:輪式直角三角形夾角

摘 要:本文設(shè)計(jì)了一個(gè)基于Lab VIEW平臺(tái)的LEGO Mind storms輪式機(jī)器人運(yùn)動(dòng)軌跡實(shí)時(shí)繪制系統(tǒng),本系統(tǒng)采用上下位機(jī)結(jié)構(gòu),使用Lab VIEW的圖形化編程功能,設(shè)計(jì)了簡單易用的上位機(jī)人機(jī)界面,并通過相關(guān)的函數(shù)模塊化實(shí)現(xiàn)了對輪式機(jī)器人的控制和運(yùn)動(dòng)軌跡實(shí)時(shí)繪制功能。本文重點(diǎn)探討了基于機(jī)器人移動(dòng)方向的角度值和移動(dòng)距離值,對繪制運(yùn)動(dòng)軌跡所需的平面坐標(biāo)值的計(jì)算和機(jī)器人運(yùn)動(dòng)軌跡的繪制。

關(guān)鍵詞:Lab VIEW;運(yùn)動(dòng)軌跡;實(shí)時(shí)繪制;LEGO Mind storms;輪式機(jī)器人

中圖分類號(hào):TP242 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2013) 09-0000-04

機(jī)器人運(yùn)動(dòng)軌跡的跟蹤繪制是機(jī)器人學(xué)的一個(gè)非常重要的問題,是移動(dòng)機(jī)器人所需具備的一種重要功能,利用機(jī)器人運(yùn)動(dòng)軌跡的跟蹤繪制功能可以使機(jī)器人能夠完成對一些未確定的行走路徑進(jìn)行初步探索和規(guī)劃。在完成機(jī)器人運(yùn)動(dòng)軌跡的跟蹤和繪制后,可以將其應(yīng)用到機(jī)器人的全局路徑規(guī)劃中,使機(jī)器人能夠更容易和更準(zhǔn)確的沿規(guī)劃的路徑運(yùn)動(dòng),達(dá)到指定的目的地和完成給定的任務(wù)。

Lab VIEW (laboratory virtual instrument engineering work-bench)是美國NI公司開發(fā)的優(yōu)秀的圖形化編程軟件,是一個(gè)虛擬儀器工程平臺(tái),具有編程直觀、快捷、高效等特點(diǎn)[1]。對于使用虛擬儀器技術(shù)應(yīng)用于機(jī)器人數(shù)據(jù)采集和運(yùn)動(dòng)控制方面的研究,目前已有很多的學(xué)者進(jìn)行了大量的研究[2]-[5],并發(fā)表了相關(guān)的文章或論文,但對于如何使用Lab VIEW實(shí)時(shí)跟蹤繪制機(jī)器人的運(yùn)動(dòng)軌跡的探討卻不是很多。

本文針對輪式機(jī)器人運(yùn)動(dòng)軌跡的跟蹤繪制問題,通過角度傳感器獲取伺服電機(jī)的旋轉(zhuǎn)角度和驅(qū)動(dòng)輪的周長計(jì)算出機(jī)器人的移動(dòng)距離,再利用電子羅盤傳感器上獲取的機(jī)器人運(yùn)動(dòng)方向角度,實(shí)現(xiàn)了對輪式機(jī)器人的運(yùn)動(dòng)軌跡進(jìn)行跟蹤和繪制。

1 系統(tǒng)構(gòu)成

本實(shí)驗(yàn)平臺(tái)總體上包含上位機(jī)和下位機(jī)兩部分:上位機(jī)的硬件部分主要由帶藍(lán)牙通訊模塊的PC機(jī)構(gòu)成,軟件部分采用Lab VIEW編寫完成;下位機(jī)硬件部分主要采用LEGO Mind storms機(jī)器人套件,利用它只需要進(jìn)行簡單的硬件連接就可以快速的搭建出實(shí)驗(yàn)用輪式機(jī)器人硬件平臺(tái),而且還可以使用內(nèi)置的藍(lán)牙通訊模塊與上位機(jī)進(jìn)行通訊。系統(tǒng)的整體框架,如圖1所示。

圖1 系統(tǒng)整體框架圖

2 系統(tǒng)硬件結(jié)構(gòu)

本研究的系統(tǒng)硬件由PC機(jī)(帶藍(lán)牙通訊模塊)、LEGO Mind storms機(jī)器人套件等構(gòu)成。PC機(jī)作為上位機(jī),可以向下位機(jī)傳送指令完成機(jī)器人運(yùn)動(dòng)控制、實(shí)時(shí)傳感器值顯示、實(shí)時(shí)繪制運(yùn)動(dòng)軌跡、實(shí)驗(yàn)參數(shù)設(shè)置等任務(wù)。下位機(jī)采用由LEGO NXT 9797搭建的雙驅(qū)輪式移動(dòng)機(jī)器人,由NXT32位中央控制器、帶旋轉(zhuǎn)角度傳感器的伺服電機(jī)、電子羅盤傳感器和超聲波傳感器等組成。機(jī)器人的運(yùn)動(dòng)方式,通過控制左右輪速差的方式來完成前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)等基本運(yùn)動(dòng)動(dòng)作。NXT 32位中央控制器采集機(jī)器人上的伺服電機(jī)旋轉(zhuǎn)角度、機(jī)器人行進(jìn)方向(角度)、超聲波傳感器等數(shù)據(jù)信息,使用內(nèi)置的藍(lán)牙通訊模塊(從機(jī))將數(shù)據(jù)發(fā)送出去,與之配對上位機(jī)上的藍(lán)牙通訊模塊(主機(jī))接收數(shù)據(jù)后,由Lab VIEW對接收到的數(shù)據(jù)進(jìn)行處理顯示,實(shí)現(xiàn)實(shí)時(shí)繪制機(jī)器人的運(yùn)動(dòng)軌跡。

3 系統(tǒng)軟件設(shè)計(jì)

本系統(tǒng)軟件設(shè)計(jì)以Lab VIEW 2012作為開發(fā)平臺(tái),完成輪式機(jī)器人運(yùn)動(dòng)軌跡的實(shí)時(shí)繪制功能。在Lab VIEW平臺(tái)上,可以方便而快速的利用模塊化函數(shù)建立上位機(jī)與LEGO NXT主控制器之間的通信,并可以指定USB或藍(lán)牙等通信方式。同時(shí)對LEGO Mind storms機(jī)器人的控制和常用傳感器值的獲取,也同樣可以直接調(diào)用模塊化的函數(shù),從而使機(jī)器人的運(yùn)動(dòng)控制和調(diào)用相關(guān)傳感器值變的非常簡單,因此本文重點(diǎn)對實(shí)驗(yàn)項(xiàng)目中的機(jī)器人運(yùn)動(dòng)軌跡實(shí)時(shí)繪制部分的設(shè)計(jì)進(jìn)行探討。

在Lab VIEW中,利用圖形控制可以快捷的建立直觀的操控界面,本系統(tǒng)軟件的上位機(jī)操控界面包括機(jī)器人運(yùn)動(dòng)控制區(qū)、前方障礙物雷達(dá)圖示區(qū)、機(jī)器人方位顯示羅盤和運(yùn)動(dòng)軌跡繪制區(qū)及參數(shù)設(shè)置顯示區(qū)等部分組成,如圖2所示。其中機(jī)器人運(yùn)動(dòng)控制區(qū),用于對機(jī)器人的運(yùn)動(dòng)進(jìn)行控制,包括前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)和功率的設(shè)置顯示;前方障礙物雷達(dá)圖示區(qū),用于顯示前方超聲波傳感器測到障礙物的距離并以雷達(dá)圖示的方式顯示,以方便對機(jī)器人運(yùn)動(dòng)的操控;機(jī)器人方位顯示羅盤,用于顯示當(dāng)前機(jī)器人行進(jìn)的方向及角度值;運(yùn)動(dòng)軌跡繪制區(qū),用于實(shí)時(shí)繪制機(jī)器人的運(yùn)動(dòng)軌跡;參數(shù)設(shè)置顯示區(qū),用于設(shè)置軌跡繪制比例和機(jī)器人輪胎直徑等參數(shù),并顯示繪制坐標(biāo)等一些常用的實(shí)時(shí)參數(shù)。

圖2 輪式機(jī)器人運(yùn)動(dòng)軌跡繪制系統(tǒng)上位機(jī)操控界面

本文提出的機(jī)器人運(yùn)動(dòng)軌跡是指操控輪式機(jī)器人在前進(jìn)或后退移動(dòng)時(shí)的運(yùn)動(dòng)路徑,該運(yùn)動(dòng)路徑是由一系列的具有起點(diǎn)和終點(diǎn)的線段組成,每條線段是指機(jī)器人移動(dòng)時(shí)的距離。線段的起點(diǎn)和終點(diǎn),用一個(gè)平面坐標(biāo)(X,Y)來表示,其中(XS,YS)和(XT,YT)分別代表起點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo)。在機(jī)器人移動(dòng)時(shí)根據(jù)當(dāng)前的起點(diǎn)和終點(diǎn)坐標(biāo)值繪制出運(yùn)動(dòng)軌跡線段。機(jī)器人運(yùn)動(dòng)軌跡實(shí)時(shí)繪制的基本工作流程,如圖3所示。

圖3 運(yùn)動(dòng)軌跡實(shí)時(shí)繪制的基本工作流程示意

在上位機(jī)系統(tǒng)軟件中,是使用Lab VIEW的二維圖片控件來實(shí)現(xiàn)運(yùn)動(dòng)軌跡的繪制。由于Lab VIEW的二維圖片控件的默認(rèn)坐標(biāo)基點(diǎn)(0,0)是位于圖形繪制區(qū)的左上角,因此為了便于機(jī)器人運(yùn)動(dòng)軌跡的繪制,把二維圖片控件的中心坐標(biāo)點(diǎn),作為每次啟動(dòng)繪制機(jī)器人運(yùn)動(dòng)軌跡的基點(diǎn)(如圖4所示),即在初始狀態(tài)下,運(yùn)動(dòng)軌跡的當(dāng)前坐標(biāo)值為(XS=X/2,YS=Y/2)。

圖4 二維圖片控件圖形繪制區(qū)中運(yùn)動(dòng)軌跡初始繪制基點(diǎn)示意

機(jī)器人實(shí)際移動(dòng)距離是實(shí)時(shí)運(yùn)動(dòng)軌跡繪制的基礎(chǔ),只有獲取正確的移動(dòng)距離才能夠計(jì)算出需要繪制軌跡的長度。機(jī)器人在前進(jìn)或后退時(shí),利用伺服電機(jī)上內(nèi)置的角度傳感器獲取當(dāng)前伺服電機(jī)的旋轉(zhuǎn)度數(shù)值和設(shè)置的輪胎直徑參數(shù)(以毫米為單位),就可以計(jì)算出機(jī)器人當(dāng)前的移動(dòng)距離。

在二維圖片控件上繪制機(jī)器人的運(yùn)動(dòng)軌跡是需要以像素為單位進(jìn)行繪制的,因此在程序中需要根據(jù)當(dāng)前所設(shè)置的比例參數(shù),計(jì)算出以像素為單位的需要繪制的運(yùn)動(dòng)軌跡的長度,程序框圖如圖5所示。

圖5 機(jī)器人實(shí)際移動(dòng)距離和繪制運(yùn)動(dòng)軌跡長度的程序框圖

在啟動(dòng)機(jī)器人后,上位機(jī)通過機(jī)器人上的電子羅盤傳感器,可以實(shí)時(shí)的獲取當(dāng)前機(jī)器人移動(dòng)方向的角度值。利用當(dāng)前的起點(diǎn)坐標(biāo)值、運(yùn)動(dòng)軌跡的長度值和機(jī)器人移動(dòng)方向的角度值,在繪圖區(qū)域中構(gòu)建出對應(yīng)的直角三角形計(jì)算模型,如圖6所示。在圖6的繪圖區(qū)域中,A表示為機(jī)器人移動(dòng)方向角度值;D表示為繪制軌跡的長度值,也是直角三角形的斜邊;a表示為直角三角形的夾角;E表示為直角三角形的夾角對邊;F表示為直角三角形的夾角對邊;(XS,YS)表示為起點(diǎn)坐標(biāo);(XT,YT)表示為終點(diǎn)坐標(biāo)。

圖6 利用起點(diǎn)坐標(biāo)值、運(yùn)動(dòng)軌跡的長度值和機(jī)器人移動(dòng)方向的角度值構(gòu)建的直角三角形計(jì)算模型示意

根據(jù)圖6的計(jì)算模型就可以計(jì)算出繪制線段的終點(diǎn)坐標(biāo)(Lab VIEW程序框圖,如圖7所示),具體的計(jì)算步驟如下:

(1)根據(jù)機(jī)器人移動(dòng)方向角度值A(chǔ),計(jì)算出直角三角形的夾角a的值:

a=A-(90*「(A/90)」

(2)根據(jù)直角三角形的夾角a的值和斜邊D的值,計(jì)算出直角三角形夾角a對邊E的長度值:

E=sinα*D

(3)根據(jù)直角三角形的夾角a的值和斜邊D的值,計(jì)算出直角三角形夾角a鄰邊F的長度值:

F=cosα*D

(4)根據(jù)直角三角形直角邊E和F的長度值,通過起點(diǎn)坐標(biāo)(XS,YS)和機(jī)器人移動(dòng)方向角度值,就可以計(jì)算出終點(diǎn)坐標(biāo)(XT,YT):

1)當(dāng)符合0>A<90且機(jī)器人處于前進(jìn)移動(dòng)狀態(tài)和180>A<270且機(jī)器人處于后退移動(dòng)狀態(tài)條件時(shí),終點(diǎn)坐標(biāo)(XT,YT)為:

XT=Xs+E,YT=Ys-F

2)當(dāng)符合90>A<180且機(jī)器人處于前進(jìn)移動(dòng)狀態(tài)和270>A<360且機(jī)器人處于后退移動(dòng)狀態(tài)條件時(shí),終點(diǎn)坐標(biāo)(XT,YT)為:

XT=XS+F,YT=YS+E

3)當(dāng)符合180>A<270且機(jī)器人處于前進(jìn)移動(dòng)狀態(tài)和0>A<90且機(jī)器人處于后退移動(dòng)狀態(tài)條件時(shí),終點(diǎn)坐標(biāo)(XT,YT)為:

XT=XS-E,YT=YS+F

4)當(dāng)符合270>A<360且機(jī)器人處于前進(jìn)移動(dòng)狀態(tài)和90>A<180且機(jī)器人處于后退移動(dòng)狀態(tài)條件時(shí),終點(diǎn)坐標(biāo)(XT,YT)為:

XT=XS-F,YT=YS-E

圖7 直角三角形夾角a的值不等于0時(shí)計(jì)算終點(diǎn)坐標(biāo)的程序框圖示意

在步驟(1)中,如果計(jì)算出直角三角形夾角a的值為0,那么表示當(dāng)前機(jī)器人的移動(dòng)方向角度值A(chǔ)可能等于0、90、180或360,如圖8所示。

圖8 直角三角形夾角a的值為0時(shí)機(jī)器人移動(dòng)方向示意

當(dāng)出現(xiàn)圖8所示的情況,就不需要步驟(2)~步驟(4)的計(jì)算,而是直接依據(jù)當(dāng)前起點(diǎn)坐標(biāo)(XS,YS)的值、機(jī)器人移動(dòng)方向角度值A(chǔ)和繪制軌跡的長度值D,計(jì)算終點(diǎn)坐標(biāo)(XT,YT)的值(Lab VIEW的程序框圖,如圖9所示):

1)當(dāng)符合A=0或A=360且機(jī)器人處于前進(jìn)移動(dòng)狀態(tài)和A=180且機(jī)器人處于后退移動(dòng)狀態(tài)條件時(shí),終點(diǎn)坐標(biāo)(XT,YT)為:

XT=XS,YT=YS-D

2)當(dāng)符合A=90且機(jī)器人處于前進(jìn)移動(dòng)狀態(tài)和A=270且機(jī)器人處于后退移動(dòng)狀態(tài)條件時(shí),終點(diǎn)坐標(biāo)(XT,YT)為:

XT=XS+D,YT=YS

3)當(dāng)符合A=180且機(jī)器人處于前進(jìn)移動(dòng)狀態(tài)和A=0或A=360且機(jī)器人處于后退移動(dòng)狀態(tài)條件時(shí),終點(diǎn)坐標(biāo)(XT,YT)為:

XT=XS,YT=YS+D

4)當(dāng)符合A=270且機(jī)器人處于前進(jìn)移動(dòng)狀態(tài)和A=90且機(jī)器人處于后退移動(dòng)狀態(tài)條件時(shí),終點(diǎn)坐標(biāo)(XT,YT)為:

XT=XS-D,YT=YS

圖9 直角三角形夾角a的值等于0時(shí)計(jì)算終點(diǎn)坐標(biāo)的程序框圖示意

在Lab VIEW的中,使用移動(dòng)畫筆函數(shù)先將畫筆移動(dòng)到起點(diǎn)坐標(biāo)(XS,YS)位置,然后通過繪制直線函數(shù)在二維圖片控件的圖形繪制區(qū)域中繪出到結(jié)束點(diǎn)坐標(biāo)(XT,YT)的直線,即可實(shí)時(shí)的繪制出當(dāng)前機(jī)器人的運(yùn)動(dòng)軌跡,程序框圖如圖10所示。

圖10 機(jī)器人運(yùn)動(dòng)軌跡繪制程序框圖

4 結(jié)束語

本設(shè)計(jì)主要研究的是基于圖形化編程平臺(tái)Lab VIEW,對LEGO Mind storms輪式機(jī)器人在移動(dòng)時(shí)運(yùn)動(dòng)軌跡的實(shí)時(shí)繪制功能,以擴(kuò)展機(jī)器人在未知環(huán)境下對路徑的探索和規(guī)劃,從而進(jìn)一步拓展移動(dòng)機(jī)器人的基礎(chǔ)應(yīng)用。所設(shè)計(jì)的系統(tǒng)按照目標(biāo)要求,使用LEGO NXT作為硬件的基礎(chǔ)平臺(tái),搭載了電子羅盤、超聲波、角度等傳感器,通過Lab VIEW的圖形控件和強(qiáng)大的模塊化函數(shù)快速構(gòu)建上位機(jī)的人機(jī)界面和程序。經(jīng)實(shí)驗(yàn)表明,系統(tǒng)利用當(dāng)前輪式機(jī)器人的移動(dòng)距離和移動(dòng)方向角度值就可以實(shí)現(xiàn)實(shí)時(shí)、快速、準(zhǔn)確地繪制機(jī)器人運(yùn)動(dòng)軌跡功能,并具有工作穩(wěn)定、操控方便、顯示直觀等特點(diǎn)。

參考文獻(xiàn):

[1]雷振山.Lab VIEW 基礎(chǔ)教程[M].北京:中國鐵道出版社,2008.

[2]向科鋒.基于Lab VIEW的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].機(jī)械管理開發(fā),2011(4).

[3]梁全貴,武麗,李長春.基于Lab VIEW的智能車數(shù)據(jù)采集與處理研究[J].工業(yè)控制機(jī)算機(jī),2010,23:31-32.

[4]張衛(wèi)星,趙峰.基于Lab VIEW 的運(yùn)動(dòng)控制系統(tǒng)的研究[J].工業(yè)控制計(jì)算機(jī),2008,21(11):26-28.

[5]余軍.基于虛擬儀器的智能車無線實(shí)時(shí)數(shù)據(jù)采集系統(tǒng)[J].工業(yè)控制計(jì)算機(jī),2010(2).

[作者簡介]陳洪亮(1974-),男,浙江廣播電視大學(xué)縉云分校,講師,研究方向:計(jì)算機(jī)科學(xué)技術(shù)的開發(fā)與應(yīng)用。

猜你喜歡
輪式直角三角形夾角
含30°角直角三角形在生活中的應(yīng)用
輪式裝備搶救搶修車
探究鐘表上的夾角
求解異面直線夾角問題的兩個(gè)路徑
對輪式正面吊輪胎使用
任意夾角交叉封閉邊界內(nèi)平面流線計(jì)算及應(yīng)用
高通過性輪式無人機(jī)平臺(tái)誕生記
拼搭直角三角形
直線轉(zhuǎn)角塔L形絕緣子串夾角取值分析