-
VREP簡介
VREP已改名為CoppeliaSim,但是功能並沒有變化。CoppeliaSim有三種證書CoppeliaSim Player、CoppeliaSim Edu、CoppeliaSim Pro。
VREP是一款支持機器人運動學及動力學仿真的軟件。該軟件采用分布式控制架構,場景中每個對象都可以通過嵌入式腳本、插件、ROS節點、BluezZero節點、API客戶端控制。所以它不僅可以用於機器人原型機的開發及算法驗證,也可以應用於多機器人協作場景。VREP還可以用於硬件控制,讓仿真場景與實物相互交互。
VREP支持的API客戶端包含C/C++、Python、MATLAB、Java、Octave或者Urbi。VREP場景中的對象的嵌入式腳本采用Lua編寫。VREP還支持在Windows、MasOS、Linux中使用。
VREP官網中給出的所有支持的功能。
· 跨平台 (Windows、MacOS、Linux)
· 六種編程方法 (嵌入式腳本、插件、附加組件、ROS節點、遠程客戶端應用編程接口、BlueZero節點)
· 6種編程語言 (C/C++、Python、Java、Lua、Matlab、和Octave)
· 超過400種不同的應用編程接口函數
· 4個物理引擎 (ODE, Bullet, Vortex, Newton)
· Integrated ray-tracer (POV-Ray)
· 完整的運動學解算器 (對於任何機構的逆運動學和正運動學)
· Mesh, OC tree, point cloud-網孔干擾檢測
· Mesh, OC tree, point cloud-網孔最短距離計算
· 路徑規划 (在2到6維中的完整約束、對於車式車輛的非完整約束)
· 嵌入圖像處理的視覺傳感器 (完全可拓展)
· 現實的接近傳感器 (在檢測區域中的最短距離計算)
· 嵌入式的定制用戶接口、包括編輯器
· 完全集成的第四類Reflexxes運動庫 + RRS-1 interface specifications
· 數據記錄與可視化 (時距圖、X/Y圖或三維曲線)
· 整合圖形編輯模式
· 支持水/氣體噴射的動態顆粒仿真
· 帶有拖放功能的模型瀏覽器 (在仿真中依舊可行)
· 多層 取消/重做、影像記錄、油漆的仿真、詳盡的文檔等
關鍵詞: 機器人、機器人學、仿真器、仿真、運動學、動力學、路徑規划、最短距離計算、碰撞檢測、視覺傳感器、圖像處理、接近傳感器、油漆分散仿真.
-
-
基本元素
-
VREP中的場景是機器人仿真時所在的環境,一切仿真過程都在場景中發生。采用不同的物理引擎時,場景中的重力、摩擦力、空氣等都會發生變化。對象包含相機、光線、幾何體、關節、圖像、各類傳感器、路徑、OC樹以及點雲。由這些對象就能夠組合出所需的機器人外形,若是對機器人的外形不滿意,還可以采用三維建模軟件繪制再將其存為STL文件,之后再導入至VREP中使用。
1.1.1 場景(scene)
場景如下圖兩部分組成。標1部分作為場景中的資源管理窗口,添加一個對象至標2中,同樣會在左側添加對象的名稱類型等信息,供后續操作。右側標2部分作為仿真時的視覺場景,可供研究人員操作和觀察。

場景中的UR5機械臂資源樹如下圖。根據各對象的依附關系,可整理成樹形結構。UR5資源樹中可以看到存在關節、幾何體、dummy和傳感器。這些資源放置的位置存在約束。關節和關節不能直接相連,需要在兩者之間加入一個幾何體,一般為了外形好看會加入兩個幾何體,其中一個作為連接體,將其動力學屬性激活;另外一個僅僅作為外觀顯示,將其動力學屬性關閉。在對象的可以添加嵌入式腳本<分為線程和非線程:多機器人協作時采用多線程運行>。

1.1.2 對象(object)
對象包含相機、光線、幾何體、關節、圖像、各類傳感器、路徑、OC樹以及點雲。采用這些對象可以組合出符合預期的機器人。例如六足機器人。
其資源樹如下圖所示。

在資源樹中可以看到,六個腿分別采用六個子資源樹構成。一條腿包含三個旋轉關節,每一條腿的結構一樣,區別在放置的位置不同。圖中六條箭頭紅線表示IK group的連接位置。每條腿的逆運動學求解采用VREP自帶的逆運動學解算器完成。當然,也可以自己編寫代碼求解單條腿逆運動學。

在六足機器人的上平台上添加如視覺傳感器,可為機器人的路徑規划於路徑導航提供相關數據。

