1. <button id="i0egk"><acronym id="i0egk"><input id="i0egk"></input></acronym></button>
      <dd id="i0egk"><track id="i0egk"></track></dd>
        <dd id="i0egk"><pre id="i0egk"></pre></dd>

          1. 技術文章

            當前頁面: 首頁 >技術文章 >SCARA機器人二維避障的智能控制算法與仿真

            SCARA機器人二維避障的智能控制算法與仿真

            --SCARA機器人二維避障的智能控制算法與仿真

            供稿:深圳眾為興技術股份有限公司 2010/6/13 14:40:00

            0 人氣:3470

            • 關鍵詞: 機械手 六自由度機器人 智能算法
            • 摘要:針對SCARA機器人在水平面內躲避障礙物的軌跡規劃問題,基于幾何學與人工智能學理論,提出一種智能控制算法,用于生成SCARA機器人避障路徑上的關節坐標值序列。仿真結果表明,該控制算法能快速有效地實現SCARA機器人在X-Y平面內的二維避障,具有較強的工程實用性。

            摘要:針對SCARA機器人在水平面內躲避障礙物的軌跡規劃問題,基于幾何學與人工智能學理論,提出一種智能控制算法,用于生成SCARA機器人避障路徑上的關節坐標值序列。仿真結果表明,該控制算法能快速有效地實現SCARA機器人在X-Y平面內的二維避障,具有較強的工程實用性。
            關鍵詞:SCARA機器人; 二維避障; 智能控制; A*算法

            1. 引 言
            當前,SCARA機器人廣泛應用于電子、汽車、塑料、食品等工業領域,其主要職能是完成搬運和裝配工作。隨著加工工藝的復雜性與精確性不斷提升,SCARA機器人在流水線上經常需要與其他工業設備協同作業,難免會出現與障礙物發生碰撞的危險。因此,對工作范圍內存在障礙物的SCARA機器人的運動軌跡進行規劃便顯得尤為重要。

            軌跡規劃(Path Planning)是指給定環境的障礙物條件,以及起始點和目標點位置,要求選擇一條從起始點到目標點的路徑,使SCARA機器人能安全、無碰撞地通過所有的障礙物。這種自主地躲避障礙物并完成作業任務是SCARA機器人研究中的一個重要內容。軌跡規劃的實質是預先給定SCARA機器人作業路徑上的關節坐標值序列,使其沿預定路徑運動。對于四軸機器人而言,關節3的縱向運動與關節4的帶夾具運動均具有較強的靈活性,可以根據實際情況用簡單的運動指令實時控制以躲避障礙物;而關節1與關節2在水平面內的關聯運動在很大程度上決定了SCARA機器人的主要位姿,是障礙物避碰的主導因素。所以,合理規劃關節1與關節2在水平面內的關節坐標值序列是實現避障的前提和關鍵。本文即是針對SCARA機器人的二維避障問題,基于幾何學與人工智能學理論,提出了一種智能控制算法并加以仿真驗證。

            2. 二維避障智能控制算法設計
            工業現場的實際障礙物雖具有多種平面形狀,但任何形狀的障礙物均可用其外接圓柱體包圍。為簡化對問題的描述又不失一般性,文中假定實際障礙物為圓柱體結構,映射到X-Y水平面上即為一圓形區域。本算法的總體思路為:先將關節1與關節2構成的關節空間q1-q2柵格化為有限個小方塊,并對每個小方塊編號,設定坐標值;然后將直角坐標系X-Y下的圓形障礙區域轉化為關節空間中不可達的小方塊群,求出它們的編號,并給可達矩陣賦值;再采用人工智能理論中具有啟發式搜索的A*算法在關節空間中求出避障路徑點的編號序列;最后將該編號序列轉換為對應的關節坐標值序列,關節1與關節2依次取對應的關節角度值運動即可實現二維避障控制.

            2.1 關節空間q1-q2柵格化
            假定SCARA機器人關節1和關節2的運動范圍均為[-120 ,120 ],取細分精度為6 (可根據實際情況靈活選擇細分精度),可將關節坐標軸q1、q2均劃分為[120-(-120)] / 6 = 40條相等的小線段,分別在每條小線段的端點作q1軸與q2軸的平行線,所有平行線相交,可將關節空間平面劃分為40*40 = 1600個面積相等的小方塊,從而實現了關節空間q1-q2的柵格化,如圖3所示。
            然后,對每個小方塊進行編號并設定關節坐標值,按照從左至右、從下至上依次增大的原則,編號取[1,1600]之間的整數,在圖3中,左下角小方塊編號為1,右上角編號為1600,1號小方塊正上方的小方塊編號為41,依此類推,可得出所有小方塊的唯一相異編號值。
            最后對每個小方塊賦坐標值,為使坐標值分布均勻,取每個小方塊的中心坐標(q1,q2)為其坐標值。則1號小方塊的坐標值為(-117 ,-117 ),1600號小方塊的坐標值為(117 ,117 ),41號小方塊的坐標值為(-117 ,-111 ),依此類推,可得出所有小方塊的唯一相異坐標值。

            2.2 確定障礙區域
            在圖1中的直角坐標系下,O為坐標原點,OA2與A2B2分別為SCARA機器人的大臂與小臂,由右手螺旋法則易知,實線OA2B2表示本體處于關節坐標為(-117 ,-117 )的位姿,對應關節空間中的1號小方塊;虛線OMN表示本體與X軸正向重合時的位姿;虛線OA1B1則表示本體處于關節坐標為(117 ,117 )的位姿,對應關節空間中的1600號小方塊。圖中藍色與黑色虛線包圍的空間即為本體的活動區域,在該區域內假設存在兩個圓形障礙物圓K1與圓K2,兩圓半徑均已知。由于本算法要求在關節坐標系下規劃避障路徑,所以要先將直角坐標系下的障礙區域轉換為關節坐標系下對應的編號群。


            當大臂處于OG1與OJ1之間時,小臂可能與圓K1發生碰撞。僅考慮右手關節坐標系時,這一區間內的任一q1值均有兩個q2值:q20與q21與之對應。其中q20為碰撞開始時的關節2角度,q21為碰撞結束時的關節2角度。兩者相差為類似于角Q1G1F1的兩倍的某個角度值。采用幾何學方法,設位姿OG1F1為小臂末端與圓K1發生碰撞的一個極限狀態,而OG1Q1為小臂延長線與圓K1相切時的位姿,切點為Q1。由圖中所示的幾何關系,可求出角Q1G1F1的角度值,同時在q20的基礎上加上兩倍的Q1G1F1的角度值,即為q21。
            左手關節坐標系下的情況完全相似,不再驁述。據此可求出在q1在可能碰撞區間內的每個q2的最大最小值,從而確定障礙物K1在關節空間中的邊界值。
            同法也可求出圓形障礙物K2在關節空間中的邊界值。
            根據連通性原理,直角坐標中連通閉合的圓形區域在關節空間中必然也是連通閉合的區域。只要將求出的邊界值連接起來,閉合的范圍就是關節坐標系下的障礙區域,而這些區域覆蓋到的小方塊群即為圓形障礙區域映射到關節空間內的障礙區域。

            在算法中需設定一個可達矩陣,其維數為1600*1600,各元素取0或1,0表示兩個小方塊之間不可達,1表示可達。將障礙區域編號群中的每個編號值在可達矩陣中對應的行和列均取為0。同時為了保證每個小方塊只能與其緊鄰的八個小方塊相通(關節空間四角的小方塊只與其緊鄰的三個小方塊相通,四邊的小方塊只與其緊鄰的五個小方塊相通),而不出現跳步,還應在可達矩陣的相應位置賦0值。

            2.3 搜索避障路徑編號序列
            在關節空間中搜索避障路徑是本算法的根本所在,而搜索方式又具有決定性影響,本算法中采用A*算法實現搜索。A*算法是人工智能中的一種典型的啟發式搜索算法,在實時系統、智能控制等方面應用較廣,其智能性主要體現在僅需已知起始點S、目標點G的編號與障礙區域的編號群,無需外部條件與人為判斷即可實現最優避障路徑的自動搜索。

            本算法中先建立兩個表OpenList與ClosedList,分別存放搜索過程中已生成而未擴展的小方塊編號與擴展后的小方塊編號;再定義估價函數 f(n) = g(n) + h(n) 用于決定搜索方向和擴展對象,其中g(n)表示起始點S與當前小方塊N之間的關節坐標距離,h(n)表示當前小方塊N與目標點G之間的距離;在每一步搜索時取對應f(n)值最小的小方塊進行擴展,并將該路徑的編號依次存放在表ClosedList中;當搜索到的當前小方塊N的編號等于目標點G的編號時結束搜索;最后將ClosedList中的編號回溯即為所求的避障路徑編號序列。

            2.4 確定避障路徑關節坐標值序列
            由關節空間柵格化過程可知,小方塊編號值與關節坐標值是唯一對應的,求出避障路徑編號序列后,只需將編號依次與關節坐標對應,即可求出最終的避障路徑關節坐標值序列。當SCARA機器人的關節1和關節2依次取該序列中的每一個坐標值運動時,反映在直角坐標系下即為從起始位姿到目標位姿的二維智能避障全過程。

            3. 仿真實例
            以深圳市眾為興數控技術有限公司自主研發的SCARA機器人MR-401-600為例,進行仿真驗證。MR-401-600的大臂、小臂長度分別為350mm、250mm,關節1和關節2的取值范圍及空間劃分參照2.1小節中的數據,設關節空間中的起始點S為1號小方塊,目標點G為1600號小方塊。圓形障礙物K1、K2在直角坐標系下的圓心坐標分別為(350,400)、(200,-420),半徑分別為80mm、60mm。將可能發生碰撞的關節1取值區間劃分為180個離散點,以充分逼近關節空間內的障礙區域。采用MATLAB語言進行仿真試驗,本二維避障智能控制算法進行路徑規劃的搜索時間為1.5449秒,仿真結果如圖2至圖4所示。其中,圖2為左右手系下的障礙區域;圖3為關節坐標空間中二維避障路徑的規劃結果,左下角的綠色五角星為起始點,右上角的紅色五角星為目標點,紅色點陣為障礙區域,綠色點陣連線為避障路徑,表示MR-401-600從大小臂均為負最大角度的位姿開始運動并依次躲避兩個圓形障礙物,到達大小臂均為正最大角度的位姿;圖4為MR-401-600在直角坐標系下實現二維避障的動態演示過程,圖中黑色為大臂每時刻狀態,藍色為小臂每時刻狀態,綠色虛線為小臂末端的實際運動軌跡。仿真結果表明,SCARA機器人MR-401-600能成功躲避障礙物并完成預定的路徑任務,實現從起始點到目標點的無碰撞運動。






            4. 結 論
            本文提出的二維避障智能控制算法能有效規劃出優化路徑,成功解決SCARA機器人在平面內的障礙物避碰問題,具有一定的理論研究價值與較強的實際應用潛力。需要指出的是,由于本算法基于圖形中小方塊的搜索,關節空間的細分精度對算法的效率影響較大。細分精度過高會降低搜索速度,過少則會降低搜索精度。因此,用戶應根據工藝要求與實際情況適中取值,以使算法發揮其最大效用。

            參考文獻
            [1] 黃獻龍,梁斌等. 機器人避碰規劃綜述[J]. 控制工程. 2000(6), pp. 28-35.
            [2] 丁富強, 費燕瓊等. 雙臂SCARATES機器人實時無碰撞運動規劃[J]. 上海交通大學學報. 37(11), pp. 1690-1693, 2003.
            [3] 錢東海<

            更多內容請訪問 深圳眾為興技術股份有限公司(http://c.gongkong.com/?cid=48516)

            手機掃描二維碼分享本頁

            工控網APP下載安裝

            工控速派APP下載安裝

             

            我來評價

            評價:
            一般
            嘿嘿影院_嘿嘿影院日本精品视频_嘿嘿影院成人观看试验区