国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

GDUT自動(dòng)化創(chuàng)卓機(jī)器人學(xué)課程大作業(yè):機(jī)械臂工作空間繪制

這篇具有很好參考價(jià)值的文章主要介紹了GDUT自動(dòng)化創(chuàng)卓機(jī)器人學(xué)課程大作業(yè):機(jī)械臂工作空間繪制。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

目錄

一、機(jī)器人選型

二、機(jī)器人DH參數(shù)和正運(yùn)動(dòng)學(xué)

(一)、DH參數(shù)

?(二)、正運(yùn)動(dòng)學(xué)

三、工作空間繪制

四、構(gòu)型分析

五、附錄繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

一、機(jī)器人選型

????????UR協(xié)作機(jī)器人系列是優(yōu)傲公司的代表產(chǎn)品,也是目前比較通用的產(chǎn)品級(jí)機(jī)械臂。選取UR系列的UR5協(xié)作機(jī)器人,產(chǎn)品參數(shù)如下:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

二、機(jī)器人DH參數(shù)和正運(yùn)動(dòng)學(xué)

(一)、DH參數(shù)

????????機(jī)械臂的正運(yùn)動(dòng)學(xué)是把機(jī)械臂的關(guān)節(jié)變量作為自變量,描述機(jī)械臂末端執(zhí)行器的位置和姿態(tài)與機(jī)械臂基座之間的函數(shù)關(guān)系。

????????將各關(guān)節(jié)簡(jiǎn)化為圓柱體,將如下?tīng)顟B(tài)視為初始狀態(tài),用標(biāo)準(zhǔn)DH法建立坐標(biāo)如下:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????坐標(biāo)系1,2,3,4,5,6是各個(gè)關(guān)節(jié)的坐標(biāo),其中坐標(biāo)系2,3,4,5,6由于Zn-1和Zn?共面而導(dǎo)致坐標(biāo)系偏離實(shí)際關(guān)節(jié)中心(坐標(biāo)系應(yīng)建立在Zn-1 和Zn 的交點(diǎn)處),坐標(biāo)系7是機(jī)械臂末端點(diǎn)的位姿。

????????得到下列DH參數(shù)表:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?????????其中,由機(jī)械臂參數(shù)可得:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?保留?t?heta????變量,將常量代入DH參數(shù)表,即:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?(二)、正運(yùn)動(dòng)學(xué)

????????下面根據(jù)DH表推導(dǎo)UR5機(jī)器人正運(yùn)動(dòng)學(xué)。

????????標(biāo)準(zhǔn)DH法坐標(biāo)系n到n+1的變換矩陣如下:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????觀察DH參數(shù)表,可以知道α 均為0或±90°,故cos?????α 、sinα 均為0或±1,這里先將其帶入其次變換矩陣,這一步是為了方便后續(xù)編程進(jìn)行符號(hào)運(yùn)算。?

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

???則有:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?????????利用matlab在畫(huà)布上畫(huà)出機(jī)器人驗(yàn)證DH法推導(dǎo)過(guò)程是否正確,繪制出的機(jī)器人構(gòu)型和模擬運(yùn)動(dòng)符合預(yù)期(完整視頻可見(jiàn)附錄):

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

三、工作空間繪制

????????將正運(yùn)動(dòng)學(xué)得到的齊次變換矩陣輸入matlab代碼文件中,利用matlab符號(hào)運(yùn)算得出夾具末端位置坐標(biāo)點(diǎn)的計(jì)算公式:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????為了減少函數(shù)調(diào)用的時(shí)間,可以先將所有點(diǎn)的位置計(jì)算出來(lái),這樣只需調(diào)用一次繪圖函數(shù)即可繪制所有的點(diǎn)。這樣的做節(jié)省的是調(diào)用繪圖函數(shù)的時(shí)間。即使先計(jì)算點(diǎn)的坐標(biāo),算法的時(shí)間復(fù)雜度仍然沒(méi)有下降。

????????實(shí)際上,在Matlab或Pyhton等語(yǔ)言中,調(diào)用庫(kù)函數(shù)或者自帶的矩陣運(yùn)算操作會(huì)比自己寫(xiě)for循環(huán)快得多,因?yàn)閹?kù)函數(shù)和矩陣變換一般會(huì)有更底層語(yǔ)言的代碼支持。

????????利用上述思想,我的做法是使用ndgrid函數(shù)建立網(wǎng)格坐標(biāo),省去for循環(huán)優(yōu)化處理的速度。再使用plot3或scatter3函數(shù)進(jìn)行工作空間繪制。ndgrid是一個(gè)網(wǎng)格坐標(biāo)生成函數(shù),和python的meshgrid異曲同工。對(duì)于傳入的多個(gè)向量,函數(shù)返回由這些向量中的點(diǎn)所構(gòu)成給的網(wǎng)格點(diǎn)的坐標(biāo)。如調(diào)用如下語(yǔ)句:

[x1,x2]=ndgrid([1,2,3],[4,5,6])

????????則函數(shù)會(huì)返回:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????當(dāng)我們把x1和x2中每個(gè)位置的數(shù)匹配起來(lái)看:

????????會(huì)得到:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?????????我們將Ans展開(kāi)即可得到:分別從數(shù)列1,2,3和數(shù)列4,5,6中各取一個(gè)數(shù)的所有可能情況。故我們可以將六個(gè)角度的范圍傳入ndgrid來(lái)得到所有角度的組合,來(lái)得到角度所有可能的組合。再利用對(duì)矩陣取cos、sin以及加減等操作,得到最終包含所有點(diǎn)的x,y,z坐標(biāo)的向量。

? ? ? ? 使用此方式繪制得到的工作空間如下:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????上述的優(yōu)化始終改變不了算法的時(shí)間復(fù)雜度,一切的投機(jī)取巧終究還是班門(mén)弄斧,改變不了算法復(fù)雜本質(zhì)。想要加快繪制的速度,除非換個(gè)算法,這里有一個(gè)更快而且能更好的擬合工作空間的算法:蒙特卡洛法。?

?????????當(dāng)我們隨機(jī)地取一定數(shù)量的θ?,當(dāng)取的數(shù)量“足夠多”時(shí),就可以很好得描述工作空間的形狀。顯然這里的“足夠多”可以遠(yuǎn)遠(yuǎn)小于十的九次方? 。相比之前的方法,本方法得到的點(diǎn)云雖然稀疏,但很均勻。更能描述工作空間的形狀。而且算法實(shí)現(xiàn)也很簡(jiǎn)單。當(dāng)取1000個(gè)點(diǎn)時(shí),效果如下:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????查閱官方的數(shù)據(jù)手冊(cè):UR5機(jī)器人的工作空間是指機(jī)座關(guān)節(jié)周?chē)欢臻g內(nèi)的球形區(qū)域除去機(jī)械臂上方的圓柱形區(qū)域。

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?????????觀察上述圖像,可以推斷,如果?θ?很小時(shí),得出的工作空間確實(shí)是一個(gè)球。這里還有一個(gè)問(wèn)題,除去的圓柱形區(qū)域在我們所繪制的空間中沒(méi)有體現(xiàn),這一點(diǎn)將在關(guān)節(jié)構(gòu)型處分析。

? ? ? ? 上述算法的流程圖如下:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????蒙特卡洛法雖然又快又準(zhǔn),但形態(tài)上卻看不出變化的過(guò)程。暴力枚舉法雖然難以達(dá)到理想的結(jié)果,但每一次的蛻變都會(huì)帶來(lái)形態(tài)上變化。好比生活并不只看結(jié)果,享受過(guò)程又何嘗不是一種快樂(lè)。

四、構(gòu)型分析

?????????對(duì)于UR5機(jī)器人,先只考慮機(jī)器人的第六個(gè)關(guān)節(jié):

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?????????由于最后一個(gè)關(guān)節(jié)的旋轉(zhuǎn),它的軌跡是一個(gè)點(diǎn)。

????????接著考慮第五、第六兩個(gè)關(guān)節(jié):

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????上一步中的點(diǎn)繞一個(gè)軸純旋轉(zhuǎn),最后得到的是軌跡是一個(gè)圓形的軌跡線(xiàn)。

????????設(shè)如圖所示P點(diǎn)的坐標(biāo)為初始坐標(biāo),旋轉(zhuǎn)的半徑為r1,則軌跡為:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????再考慮倒數(shù)第三個(gè)關(guān)節(jié):

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????即一個(gè)圓形線(xiàn)繞著一根平行于該線(xiàn)所在平面的線(xiàn)旋轉(zhuǎn),主視圖如上,最終的軌跡應(yīng)該是一個(gè)帶孔的圓柱:?

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

? ? ? ? ?其中:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????最終得到軌跡如下:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?????????考慮倒數(shù)第四個(gè)關(guān)節(jié):

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?????????將帶孔圓柱繞著一條平行于帶孔圓柱軸線(xiàn)的直線(xiàn)進(jìn)行旋轉(zhuǎn),這里有兩種可能:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

(1)

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

(2)

? ? ? ? ?情況(1)關(guān)節(jié)在帶孔圓柱內(nèi)部,旋轉(zhuǎn)的結(jié)果是一個(gè)不帶孔的圓柱;

? ? ? ? ?情況(2)關(guān)節(jié)在帶孔圓柱外部,旋轉(zhuǎn)的結(jié)果仍然是一個(gè)帶孔的圓柱

? ? ? ? ?對(duì)于UR5來(lái)說(shuō)這里屬于第二種情況:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

? ? ? ? ?有

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????得到的仍然是帶孔圓柱。

????????再考慮倒數(shù)第五個(gè)關(guān)節(jié),此種情況同上種情況類(lèi)似,但此時(shí)屬于情況(1),故得到是一個(gè)完整的圓柱:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

? ? ? ? ?有:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

? ? ? ? 再考慮最后一個(gè)關(guān)節(jié),俯視圖:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????圖中的矩形代表上一環(huán)節(jié)圓柱的側(cè)視圖,這種情況下的俯視圖是一個(gè)矩形繞一個(gè)點(diǎn)進(jìn)行旋轉(zhuǎn),最后得到的結(jié)果應(yīng)該是一個(gè)帶圓柱形通孔的球狀區(qū)域,注意這里并不是一個(gè)標(biāo)準(zhǔn)的球形區(qū)域,因?yàn)楦┮晥D和主視圖的半徑并不一樣

????????(1)對(duì)于俯視圖:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?????????其中,圓柱形通孔的半徑為:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?????????外圓形的半徑為:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????(2)對(duì)于主視圖?:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

?????????代入?yún)?shù)計(jì)算可得:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????觀察上述式子可以看到:

繪制機(jī)械臂工作空間,機(jī)器人,矩陣,matlab

????????由于主視圖橫豎近似相等,故可將主視圖看成一個(gè)標(biāo)準(zhǔn)圓形。

????????由于俯視圖內(nèi)外半徑差距極大,故可將俯視圖看出一個(gè)標(biāo)準(zhǔn)的圓形。

????????我認(rèn)為這也是使用Matlab繪制出來(lái)的工作空間看不出空心圓柱的原因。

五、附錄

????????UR5機(jī)器人運(yùn)動(dòng)模擬文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-775700.html

到了這里,關(guān)于GDUT自動(dòng)化創(chuàng)卓機(jī)器人學(xué)課程大作業(yè):機(jī)械臂工作空間繪制的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【機(jī)器人學(xué)】逆運(yùn)動(dòng)學(xué)

    【機(jī)器人學(xué)】逆運(yùn)動(dòng)學(xué)

    逆運(yùn)動(dòng)學(xué) 是一個(gè)非線(xiàn)性的求解問(wèn)題,相對(duì)于正運(yùn)動(dòng)學(xué)較為復(fù)雜,主要是因?yàn)榭山庑蕴骄?、多重解以及多重解的選擇等問(wèn)題。例如,形如【機(jī)器人學(xué)】正運(yùn)動(dòng)學(xué)詳解-6.4 一個(gè)簡(jiǎn)單例子中所用的六自由度機(jī)器人,其 逆運(yùn)動(dòng)學(xué) 可以描述為:假設(shè)我們已經(jīng)知道其次變換矩陣 R T H ^RT

    2023年04月08日
    瀏覽(25)
  • 機(jī)器人學(xué)-正運(yùn)動(dòng)學(xué)

    機(jī)器人學(xué)-正運(yùn)動(dòng)學(xué)

    提示:文章寫(xiě)完后,目錄可以自動(dòng)生成,如何生成可參考右邊的幫助文檔 文章目錄 前言 DH約定 正運(yùn)動(dòng)學(xué) 總結(jié) 本文介紹串聯(lián)機(jī)械臂基礎(chǔ)算法,并使用python和matlab進(jìn)行算法設(shè)計(jì)、建模仿真。 標(biāo)準(zhǔn)DH配置 ?坐標(biāo)系示意圖 ?DH參數(shù) 代碼如下(python):

    2024年02月15日
    瀏覽(17)
  • 【機(jī)器人學(xué)】一、從線(xiàn)性變換的角度理解機(jī)器人坐標(biāo)變換

    【機(jī)器人學(xué)】一、從線(xiàn)性變換的角度理解機(jī)器人坐標(biāo)變換

    實(shí)際應(yīng)用: 為什么要標(biāo)定旋轉(zhuǎn)中心 在機(jī)器視覺(jué)實(shí)際應(yīng)用過(guò)程中,有這樣的案例:機(jī)械手要抓取物料,物料每次的角度不一樣,機(jī)械手的末端工具中心與其自身的旋轉(zhuǎn)中心不重合,如果想完成這個(gè)抓取的工作,有兩種解決方案: 方案一:TCP標(biāo)定(Tool Center Point) 一般機(jī)械手都

    2024年04月29日
    瀏覽(21)
  • 機(jī)器人學(xué)基礎(chǔ)--運(yùn)動(dòng)學(xué)--2.3 變換矩陣

    機(jī)器人學(xué)基礎(chǔ)--運(yùn)動(dòng)學(xué)--2.3 變換矩陣

    2.3 變換矩陣 (1)齊次坐標(biāo)系變換 2.1,2.1中討論了坐標(biāo)系及其平移,旋轉(zhuǎn)兩種變換。在實(shí)際應(yīng)用中兩個(gè)坐標(biāo)系之間的關(guān)系往往既有平移又有旋轉(zhuǎn),因此這篇文章我們將討論一下如何以一種更為緊湊的方式來(lái)表達(dá)兩個(gè)坐標(biāo)系之間的位置及姿態(tài)關(guān)系。 可以把這個(gè)問(wèn)題分解開(kāi)來(lái)看

    2024年02月11日
    瀏覽(29)
  • 【現(xiàn)代機(jī)器人學(xué)】學(xué)習(xí)筆記十三:配套代碼解析

    【現(xiàn)代機(jī)器人學(xué)】學(xué)習(xí)筆記十三:配套代碼解析

    最近一直忙于工作,每天都在寫(xiě)一些業(yè)務(wù)代碼。而目前工程中的技術(shù)棧并沒(méi)有使用旋量這一套機(jī)器人理論系統(tǒng),因此時(shí)間長(zhǎng)了自己都忘記了。 于是決定把這本書(shū)配套的代碼內(nèi)容也過(guò)一遍,查漏補(bǔ)缺,把這本書(shū)的筆記內(nèi)容完結(jié)一下。 代碼來(lái)源于github:https://github.com/NxRLab/Moder

    2024年02月12日
    瀏覽(29)
  • 【機(jī)器人學(xué)導(dǎo)論】慣性張量旋轉(zhuǎn)和平移變換的推導(dǎo)

    【機(jī)器人學(xué)導(dǎo)論】慣性張量旋轉(zhuǎn)和平移變換的推導(dǎo)

    最近遇到了一些涉及慣性張量的實(shí)際問(wèn)題,比如: 對(duì)兩個(gè)通過(guò)鉸鏈連接在一起的桿,如何計(jì)算整體的慣性張量? 對(duì)于一個(gè)由多個(gè)簡(jiǎn)單部件組合成的系統(tǒng),如何計(jì)算整體的慣性張量? 在網(wǎng)上查找計(jì)算方法的過(guò)程中,難以通過(guò)正確的找到簡(jiǎn)明的數(shù)學(xué)方法。因此我在多番查

    2024年02月08日
    瀏覽(27)
  • 機(jī)器人學(xué)DH參數(shù)及利用matlab符號(hào)運(yùn)算推導(dǎo)

    機(jī)器人學(xué)DH參數(shù)及利用matlab符號(hào)運(yùn)算推導(dǎo)

    重新復(fù)習(xí)了一下機(jī)器人學(xué)DH參數(shù),并且利用matlab符號(hào)運(yùn)算進(jìn)行了推導(dǎo),驗(yàn)證了公式。 圖中的 坐標(biāo)系定義 : 坐標(biāo)系 i {i} i 的 z z z 軸 z i z_i z i ? 和關(guān)節(jié)軸線(xiàn) i i i 共線(xiàn),指向任意規(guī)定。 坐標(biāo)系 i {i} i 的 x x x 軸 x i x_i x i ? 和 a i a_i a i ? 重合,由關(guān)節(jié) i i i 指向關(guān)節(jié) i + 1 i+1 i

    2024年02月02日
    瀏覽(30)
  • 《機(jī)器人學(xué)導(dǎo)論》根據(jù)DH參數(shù)表計(jì)算變換矩陣MATLAB代碼

    《機(jī)器人學(xué)導(dǎo)論》根據(jù)DH參數(shù)表計(jì)算變換矩陣MATLAB代碼

    PUMA560的DH參數(shù)表如下 根據(jù)參數(shù)表可以求出每一個(gè)連桿變換矩陣,求各連桿變換矩陣的MATLAB函數(shù)如下 帶入DH表的最后三行參數(shù),計(jì)算使用樣例如下: 得到的結(jié)果為: 書(shū)上結(jié)果為 ?對(duì)比可得,代碼計(jì)算結(jié)果與書(shū)上結(jié)果一致

    2024年02月06日
    瀏覽(21)
  • 【現(xiàn)代機(jī)器人學(xué)】學(xué)習(xí)筆記四:一階運(yùn)動(dòng)學(xué)與靜力學(xué)

    【現(xiàn)代機(jī)器人學(xué)】學(xué)習(xí)筆記四:一階運(yùn)動(dòng)學(xué)與靜力學(xué)

    這節(jié)課的內(nèi)容主要講速度的正向運(yùn)動(dòng)學(xué)(也就是位置的一階導(dǎo)數(shù),所以叫一階運(yùn)動(dòng)學(xué))和靜力學(xué),這也是本書(shū)首次出現(xiàn)動(dòng)力學(xué)相關(guān)的內(nèi)容(剛體運(yùn)動(dòng)那節(jié)提到的力旋量算是一個(gè)概念的介紹)。 個(gè)人結(jié)合平時(shí)的工程項(xiàng)目看,覺(jué)得這節(jié)課的內(nèi)容是一個(gè)內(nèi)容和難度上的一個(gè)跨越,因

    2023年04月08日
    瀏覽(25)
  • 機(jī)器人學(xué)關(guān)于SE(3)、se(3)、SO(3)、so(3)的理解

    機(jī)器人學(xué)關(guān)于SE(3)、se(3)、SO(3)、so(3)的理解

    SE(3):特殊歐式群 se(3):特殊歐式群的李代數(shù) SO(3): 三維特殊正交群 so(3): 三維特殊正交群的李代數(shù) T(3):三維移動(dòng)群 R : 旋轉(zhuǎn)矩陣 李代數(shù):李群?jiǎn)挝辉幍那锌臻g; SO(3) 和T(3) 都是SE(3)的李子群 SO3——log——so3, 3×1 vector SE3——log——se3, 6×1 vector so3——exp——SO3, 3×3 matrix se3——

    2024年01月17日
    瀏覽(27)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包