01 前言
當我們想在gazebo中仿真一個比較逼真的機器人時,光有機器人的樣子是遠遠不夠的,一個真實的機器人往往附帶著各種各樣的傳感器,比如用來估計機器人位置的編碼器、IMU;用來感知外部環境的攝像頭、雷達等等,如果我們想自己在電腦中完全復現出一個逼真的傳感器,這是很難得一件事,幸運的是gazebo為我們提供了用來仿真傳感器的插件,最常用的有相機、kinect、激光雷達等等,這極大地方便了用戶在仿真環境中機器人的構建。
本文以三種常見且難度中等的傳感器仿真為例,介紹如何在gazebo中搭建我們自己的傳感器模型。
02RGB相機
1.urdf建模
相機的urdf模型還是分為三部分,視覺模型、碰撞模型、慣性模型,在前面的文章中簡要介紹了關于urdf建模的知識,在相機的建模中,我們簡單的將它建模為一個盒子(box),然后賦予它一些真實的特性。
然后我們使用xacro格式的建模方法,將傳感器單獨列為一個文件,然后在主文件中調用它。
2.gazebo物理特性
在gazebo中的顏色顯示和在rviz中的顏色顯示有所不同,在上述視覺模型中設定的"black"顏色顯示,只能顯示在rviz中,因此我們先通過以下代碼,設置模型在gazebo中的顏色。
< gazebo reference="${prefix}_link" >
< material >Gazebo/Black< /material >
< /gazebo >
下面這一部分給出相機的參數,這些參數可以根據現實生活中我們購買的相機參數填入
下面將我們的相機鏈接到插件庫,實現真正的相機仿真
相關的仿真教程可以在gazebo官網教程找到
03 深度相機
1.urdf建模
kinect是ROS中常用的深度相機,在gazebo建模中我們將它建模為一個盒子,但是由于kinect模型的通用性,作為微軟的一個品牌,人們為其配置了模型渲染文件
仍然使用了xacro文件格式,然后在主文件中調用它
2.gazebo物理特性
第一部分仍然是根據我們購買的相機參數填入它們,其實現在比較流行的一種建模方法是使用.sdf文件,比如kinect的官方教程中就是根據提供的sdf再進行建模
然后再鏈接到插件庫,進行更詳細的設置
最后附上了gazebo中使用kinect的教程和如何制作自己sdf模型的教程
04 激光雷達
1.urdf建模
在激光雷達建模部分,我們將其建模為一個圓柱體,通過固定關節(fixed)連接在機器人上方,描述了它的視覺模型、慣性模型以及碰撞模型
2.gazebo物理特性
在官方教程中,說以下參數都是不說自明的,其實根據我們真實的雷達參數進行修改即可,我對它們進行簡單解釋。
其中,這一條如果為真,則在 gpu 激光器的掃描區域內可以看到半透明的激光射線
< visualize >false< /visualize >
然后我們將雷達鏈接到插件庫
最后,我們在主文件中,調用我們寫好的傳感器文件,然后建立關節將他們與我們的主體連接起來即可。
05 差速驅動
在我們的移動機器人中電機關節往往需要搭配減速器使用,而且通常需要對其進行PID控制,ROS為我們提供了差速驅動插件,以及傳動機構的配置。
1.傳動機構
ROS中的傳動機構主要是在urdf文件中,通過transmission標簽體現,這一部分其實是屬于ros提供的通用硬件接口ros_control,有幾種類型的transmission可以使用,如:TransmissionInfo、TransmissionLoader、SimpleTransmission等,我們常用的就是SimpleTransmission,transmission標簽分為兩部分-joint和actuator。
joint部分主要是針對要設置的關節,hardwareInterface標簽指定的是關節空間的接口類型。
actuator部分主要是針對驅動器部分進行設置,mechanicalReduction標簽指定關節/執行器傳動裝置處的機械減速;hardwareInterface標簽指定的是關節空間的接口類型。
關于接口類型的更多說明參考ros的官方解釋。
2.差速驅動插件
差速驅動插件也是通過plugin標簽鏈接到相應的差速驅動庫,下面對它的一些參數進行了解釋。
06 總結
本文介紹了ROS仿真中常用的三種傳感器-RGB相機、Kinect深度相機、激光雷達的仿真建模方式以及其中參數的含義,最后介紹了SLAM中常見的載體-移動機器人的差速驅動器建模方式,并簡單介紹了ros_control硬件接口中關節的傳動機構的配置。
-
傳感器
+關注
關注
2553文章
51407瀏覽量
756654 -
機器人
+關注
關注
211文章
28646瀏覽量
208436 -
編碼器
+關注
關注
45文章
3669瀏覽量
135258 -
仿真
+關注
關注
50文章
4124瀏覽量
134005 -
ROS
+關注
關注
1文章
280瀏覽量
17102
發布評論請先 登錄
相關推薦
評論