亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ROS的六自由度機械臂避障研究

        2018-01-23 12:35:16
        制造業(yè)自動化 2017年12期
        關鍵詞:運動學開源坐標系

        (江西理工大學 機電工程學院,贛州 341000)

        0 引言

        機器人的運動規(guī)劃一直是機器人研究的重點,目前工業(yè)上使用的機器人大多數(shù)為工人點對點示教實現(xiàn)的,人為來示教即費時又費力。要想機器人能夠生成一條無碰撞的最優(yōu)軌跡,必須解決機器人避障的難題。

        計算機虛擬控制及仿真平臺為機器人運動規(guī)劃的研究提供了方便,SolidWorks、Ansys、MATLAB、Adams等是目前使用較為普遍的軟件平臺,這些平臺各有千秋,但對完成復雜環(huán)境下的機器人運動不夠方便直接。MATLAB作為一款數(shù)學計算軟件,能夠利用其強大的算法來完成仿真實驗,但對3D模型的表現(xiàn)力較差,且很難與外部系統(tǒng)和其他功能需求相結合[1]。SolidWorks等三維建模軟件雖然可以出色的完成機械的建模,但卻不能實現(xiàn)算法的驗證[2]。現(xiàn)階段,大多都使用C、C++、Java等編程語言與Open Inventor或OpenGL想結合編寫圖形仿真系統(tǒng),但是操作起來比較復雜,其仿真系統(tǒng)也主要是觀察系統(tǒng)的運動過程,數(shù)據參數(shù)不具有參考性[1]。在跨平臺,分布式處理,代碼復用,多語言支持與硬件抽象等一些共性問題上也支持不夠。而ROS開源操作系統(tǒng)能夠很好的解決這些問題,且能夠直接應用于實際系統(tǒng)[3]。本文基于ROS開源平臺,以ABB公司IRB1410型工業(yè)機器人為研究對象進行避障運動規(guī)劃的仿真研究。

        1 機械臂運動學分析

        正運動學問題主要涉及機械臂的各個關節(jié)與工具或末端執(zhí)行器的位置和姿態(tài)之間的關系。正運動學的求解過程就是根據機器人已知關節(jié)變量,來求解末端執(zhí)行器的位姿。運用D-H參數(shù)法進行串聯(lián)機器人正運動學求解,就是通過坐標轉換的思想把末端執(zhí)行器的位姿在坐標系里表示出來[4]。根據D-H參數(shù)法建立的ABBIRB1410機械臂坐標系如圖1所示。

        圖中基坐標系為X0Y0Z0組成的坐標系,末端執(zhí)行處的坐標系為X6Y6Z6組成的坐標系。根據IRB1410機械臂的相關參數(shù)可以列出機械臂的D-H參數(shù)表,i表示連桿,di表示連桿偏置,ai表示連桿長度,αi表示連桿扭曲,θi表示變量關節(jié)角度,如表1所示。

        圖1 ABB IRB1410機械臂連桿坐標系

        表1 機械臂D-H參數(shù)表

        對全部連桿規(guī)定坐標系后,由兩個旋轉和兩個平移來建立相鄰兩連桿i-1與i之間的相對關系,且可由四個其次變換來描述,可表示為A矩陣:

        式(1)中cθi=cosθi,sθi=sinθi,cαi=cosαi,sαi=sinαi,進一步得到機器人的運動學方程為:

        式(2)中n,o,a表示末端執(zhí)行器相對于基坐標的姿態(tài);p表示末端執(zhí)行器相對于基坐標的位置關系。把表1中的參數(shù)分別代入式(1)、式(2),便可得到機器人運動學正解[5]。

        2 運動規(guī)劃功能包配置

        2.1 開源機器人操作系統(tǒng)ROS

        ROS操作系統(tǒng)是一款開源的機器人后操作系統(tǒng),為了提高機器人研發(fā)領域的代碼復用率,提高開發(fā)效率,ROS對機器人硬件進行了封裝,使得不同的機器人和不同的傳感器都能夠在ROS里通過一樣的形式來表示,從而給上層的功能包(運動規(guī)劃,三維導航等)提供調用。且ROS可以在不同的計算機,不同的操作系統(tǒng)和不同的機器人上使用,做到真正的跨平臺[6]。

        ROS操作系統(tǒng)集成了許多的開源工具與先進的算法,如MoveIt移動機械臂運動規(guī)劃模塊,Rviz 3D可視化工具,Player二維仿真平臺,OpenRave運動規(guī)劃平臺,OpenCV視覺開源項目,OMPL運動規(guī)劃開源項目,Gazebo機器人開源仿真平臺,PCL開源點云處理庫等。且能夠支持多種編程語言,如C++、Python、Octave等,采用模塊化的通訊機制,開發(fā)者對各模塊中的代碼能夠單獨編譯。ROS系統(tǒng)免費且開源,這是其快速發(fā)展的主要因素之一[6]。

        2.2 由SolidWorks制作URDF文件

        統(tǒng)一機器人描述格式(Unified Robot Description Format)是一種用于描述機器人結構,關節(jié),自由度等的XML格式文件。URDF文件描述了機器人的各個部件與相關關節(jié)的連接關系,確定了從基座到執(zhí)行末端各個部件的坐標系和坐標原點。制作URDF文件,首先需要通過SolidWorks對機械臂進行三維建模,然后通過SW2urdf插件對機械臂的各個關節(jié)和連接進行設置,最后導出URDF文件。

        2.3 由MoveIt!配置功能包

        MoveIt!是ROS中專門針對移動機械臂操作的功能包,它結合了運動規(guī)劃,三維感知,運動學,碰撞檢測,控制和導航等,它為開發(fā)先進的機器人提供了一個簡單,實用,開放的平臺。使用MoveIt Setup Assisant可生成MoveIt!配置功能包。具體步驟如圖2所示。

        在添加運動鏈的時候,我們需要對求解正運動學與逆運動學的求解工具進行選擇,本文選擇KDL(The Kinematics and Dynamics Library)作為運動學求解工具。KDL是一個運動學與動力學的庫,其優(yōu)勢在于能夠輕易的解決多自由度單鏈機械結構的正逆運動學問題。配置好相關參數(shù)就可以對機械臂進行運動規(guī)劃。

        3 機械臂避障規(guī)劃

        3.1 避障規(guī)劃算法

        圖2 MoveIt!配置步驟

        避障路徑規(guī)劃問題就是在具有障礙物的特定環(huán)境中,依照相關評價標準(找到最優(yōu)解或找到有效解),規(guī)劃出一條從起始點到目標點的無碰撞路徑。對于找到最優(yōu)解,大多數(shù)算法使用最優(yōu)規(guī)劃,對于快速找到有效解,一般使用采樣規(guī)劃。ROS平臺中的OMPL是一個包含了許多運動規(guī)劃領域前沿算法的開源運動規(guī)劃庫,其中大部分算法基于采樣原理。本文以RRT及其擴展算法作為規(guī)劃算法對機械臂進行仿真分析[7]。

        RRT算法是一種基于隨機采樣的快速搜索算法,它首先通過采樣得到一個隨機樣本,然后把它存儲在一個樹狀的結構中,通過樹狀結構的分支繼續(xù)往未知空間搜索,直到到達目標點為止。RRT算法的運動樹如圖3所示。

        圖3 RRT算法運動樹

        RRT迅速的在各個方向擴展,快速的擴展到空白區(qū)域的四個角落。給定一個初始狀態(tài)qinit,和一個活動區(qū)域C,我們可以建立一個樹狀結構G來探索如何在C中活動,并最終到達目的地。假設當前G中共有K個頂點(vertex)。那么RRT可以表示為以下流程:

        RRT算法的構建過程為:給出起始點qstart,隨機的選取一個新狀態(tài)qrand,找出樹G上離隨機點qrand最近的點qnear,最后把qnear沿著qrand的方向移動Δq,得到新的節(jié)點qnew,不停地搜索下去,直到達到目標點為止。

        3.2 ROS避障規(guī)劃實現(xiàn)

        在新的終端中啟動前面MoveIt!所配置的功能包中的demo文件,進入Rviz界面,可以自己編輯添加障礙物文件,通過拖動機械臂末端來設置機械臂的起始位置與目標位置,選擇OMPL運動規(guī)劃庫中的規(guī)劃算法RRT,并發(fā)布到當前環(huán)境中,點擊Plan規(guī)劃按鈕,系統(tǒng)就會生成了一種可能的規(guī)劃路徑,并顯示在Rviz窗口中。圖4所示為配置好的仿真環(huán)境,深色為設置好的機械臂起始位置,淺色為目標位置。機械臂必須繞過小桌平面上的長方體型障礙物到達目標位置才算完成規(guī)劃。當沒有使用RRT規(guī)劃算法時,機械臂會直接穿過障礙物到達目標位置。圖5所示為通過RRT算法進行避障規(guī)劃形成的路徑,可以非常直觀的看到機械臂成功避開了障礙物。

        圖4 機械臂起始位置與目標位置

        圖5 機械臂避障規(guī)劃路徑

        【】【】

        在終端輸入rqt_plot命令,在地址欄里輸入節(jié)點joint_states,能夠得到各個關節(jié)運動曲線圖,圖6所示為關節(jié)的位置曲線圖,橫坐標為時間變化,縱坐標為關節(jié)位置變化,可以較為清楚的看出各個關節(jié)位置變化曲線。

        圖6 MoveIt!各關節(jié)位置曲線圖

        我們也可以通過rosbag record–a命令記錄下機械臂運動過程中相關的參數(shù)數(shù)據,并利用MATLAB進行二次分析,圖7圖8為MATLAB分析得到的曲線圖??梢钥闯雠crqt_plot所繪制的曲線基本相同。

        圖7 MATLAB關節(jié)位置曲線

        4 結束語

        本文利用ROS平臺,結合隨機采樣算法對機械臂進行避障路徑規(guī)劃,較為形象的展示了機械臂的運動過程,并可以導出相關數(shù)據利用MATLAB進行二次分析,相比其他平臺,ROS平臺直觀高效,具有很高的開放性與擴展性,極大的方便了機器人的研究。

        圖8 MATLAB各關節(jié)位置曲線

        [1]祁若龍,周維佳,劉金國,等.VC平臺下機器人虛擬運動控制及3D運動仿真的有效實現(xiàn)方法[J].機器人,2013,35(5):594-599.

        [2]陳盛龍,平雪良,曹正萬,等.基于ROS串聯(lián)機器人虛擬運動控制及仿真研究[J].組合機床與自動化加工技術,2015(10):108-111.

        [3]Bihlmaier A,W?rn H. ROS-Based Cognitive Surgical Robotics[C].Workshop Proceedings of, Intl.Conf. on Intelligent Autonomous Systems.2014:253-255.

        [4]馬克W.斯龐.機器人建模和控制[M].機械工業(yè)出版社,2016.

        [5]韓秀姝,王吉岱,魏軍英,等.碼垛機器人運動學分析[J].機械傳動,2014(9):109-112.

        [6]陳金寶.ROS開源機器人控制基礎[M].上海交通大學出版社,2016.

        [7]代彥輝,梁艷陽,謝鋼.基于RRT搜索算法的六自由度機械臂避障路徑規(guī)劃[J].自動化技術與應用,2012,31(10):31-37.

        猜你喜歡
        運動學開源坐標系
        基于MATLAB的6R機器人逆運動學求解分析
        五毛錢能買多少頭牛
        基于D-H法的5-DOF串并聯(lián)機床運動學分析
        解密坐標系中的平移變換
        坐標系背后的故事
        基于重心坐標系的平面幾何證明的探討
        大家說:開源、人工智能及創(chuàng)新
        開源中國開源世界高峰論壇圓桌會議縱論開源與互聯(lián)網+創(chuàng)新2.0
        開源計算機輔助翻譯工具研究
        基于運動學原理的LBI解模糊算法
        国产免费的视频一区二区| 女人被男人躁得好爽免费视频| 亚洲av无码乱码国产精品fc2| 欧美成人高清手机在线视频| 青青草视频免费在线播放| 老熟妇乱子交视频一区| 欧美艳星nikki激情办公室| 国产精品高清视亚洲乱码有限公司| 日本熟妇视频在线中出| 中文字幕亚洲精品高清| 亚洲国产精品一区二区久久恐怖片| 欧美黑人群一交| 99精品一区二区三区免费视频| 色噜噜精品一区二区三区| 人妻少妇进入猛烈时中文字幕| 国产午夜福利片| 中文字幕AⅤ人妻一区二区 | 国产区精品| 人成视频在线观看免费播放| 亚洲av区,一区二区三区色婷婷| 色一情一区二区三区四区| 国产精品三级一区二区按摩| 精品中文字幕久久久人妻| 精人妻无码一区二区三区| 久久人人爽人人爽人人片av麻烦| 欧美人妻日韩精品| 亚洲春色视频在线观看| 看日本全黄色免费a级| 国产97色在线 | 亚洲| 亚洲中文字幕巨乳人妻| 日本一区二区三区四区在线视频| 精品久久久久香蕉网| 亚洲成a人片在线| 成人在线视频亚洲国产| 每日更新在线观看av| 久久中文精品无码中文字幕| 精品久久久亚洲中文字幕| 国产av剧情一区二区三区| 亚洲国产美女精品久久久| 最新在线观看精品国产福利片| 久久久国产精品黄毛片|