- Mastering ROS for Robotics Programming
- Lentin Joseph
- 145字
- 2021-07-30 10:03:24
Creating our first URDF model
After learning about URDF and its important tags, we can start some basic modeling using URDF. The first robot mechanism that we are going to design is a pan and tilt mechanism as shown in the following figure.
There are three links and two joints in this mechanism. The base link is static, in which all other links are mounted. The first joint can pan on its axis and the second link is mounted on the first link and it can tilt on its axis. The two joints in this system are of a revolute type.

Figure 4 : Visualization of a pan and tilt mechanism in RViz
Let's see the URDF code of this mechanism. Navigate to chapter_2_code/mastering_ros_robot_description_pkg/urdf
and open pan_tilt.urdf
. The code indentation in URDF is not mandatory for URDF but it keeping indentation can improve code readability:
<?xml version="1.0"?> <robot name="pan_tilt"> <link name="base_link"> <visual> <geometry> <cylinder length="0.01" radius="0.2"/> </geometry> <origin rpy="0 0 0" xyz="0 0 0"/> <material name="yellow"> <color rgba="1 1 0 1"/> </material> </visual> </link> <joint name="pan_joint" type="revolute"> <parent link="base_link"/> <child link="pan_link"/> <origin xyz="0 0 0.1"/> <axis xyz="0 0 1" /> </joint> <link name="pan_link"> <visual> <geometry> <cylinder length="0.4" radius="0.04"/> </geometry> <origin rpy="0 0 0" xyz="0 0 0.09"/> <material name="red"> <color rgba="0 0 1 1"/> </material> </visual> </link> <joint name="tilt_joint" type="revolute"> <parent link="pan_link"/> <child link="tilt_link"/> <origin xyz="0 0 0.2"/> <axis xyz="0 1 0" /> </joint> <link name="tilt_link"> <visual> <geometry> <cylinder length="0.4" radius="0.04"/> </geometry> <origin rpy="0 1.5 0" xyz="0 0 0"/> <material name="green"> <color rgba="1 0 0 1"/> </material> </visual> </link> </robot>
- Advanced Quantitative Finance with C++
- Mastering Concurrency Programming with Java 8
- AngularJS深度剖析與最佳實踐
- Mastering OpenCV 4
- MySQL數據庫管理與開發(慕課版)
- HDInsight Essentials(Second Edition)
- Cocos2d-x學習筆記:完全掌握Lua API與游戲項目開發 (未來書庫)
- C++面向對象程序設計習題解答與上機指導(第三版)
- 圖數據庫實戰
- App Inventor創意趣味編程進階
- Django 3.0入門與實踐
- C++ System Programming Cookbook
- Mastering HTML5 Forms
- 軟件設計模式(Java版)
- 編程的原則:改善代碼質量的101個方法