URDF,即统一机器人描述格式(Unified Robot Description Format),是一种用于描述机器人模型的XML文件格式。URDF文件包含了机器人的物理和关节属性,使得机器人可以在仿真环境中被准确地表示和模拟。URDF是ROS(机器人操作系统)中广泛使用的一种格式,但它也可以独立于ROS使用。
URDF文件的主要组成部分包括:
URDF文件使得开发者能够在不同的仿真环境中重用机器人模型,同时也方便了机器人设计和仿真的交流。URDF文件可以被转换成其他格式,以适应不同的仿真软件或机器人控制系统。
mkdir -p catkin_ws/src
cd catkin_ws/src
catkin_init_workspace
catkin_create_pkg jubot_demo urdf xacro
cd jubot_demo/
mkdir urdf
mkdir launch
mkdir meshes
mkdir config
urdf:
先编译配置launch文件,退到主目录catkin_ws下,执行catkin_make。
成功之后,再执行 catkin_make install。
然后在主目录catkin_make下配置环境变量source devel/setup.bash。
检测环境变量是否配置成功echo $ROS_PACKAGE_PATH。
再启动launch文件,完成可视化的建立:
创建启动文件:
cd ~/catkin_ws/src/mbot_description/launch
sudo gedit display_mbot_base_urdf.launch
在打开的文件中写入
建立可视化
roslaunch jubot_demo box_launch.launch
得到模型:
在urdf文件夹下建一个xacro文件夹,在终端打开。
在文件夹中新建my_base.urdf.xacro文件,编写xacro文件:
vim my_base.urdf.xacro
在打开的文件中写入
加载robot_description时使用command属性,属性值就是调用 xacro 功能包的 xacro 程序直接解析 xacro 文件,然后启动launch文件
box_launch
将launch修改为
在xacro文件夹中新建my_camera.urdf.xacro
my_car_camera.urdf.xacro
my_laser.urdf.xacro文件
修改碰撞属性和惯性矩阵,导入到gazebo中。
my_base.urdf.xacro:
my_camera.urdf.xacro:
Gazebo/Blue
my_car_camera.urdf.xacro:
Gazebo/White
Gazebo/Black
my_laser.urdf.xacro:
在终端进入launch目录
vim gazebo_car.launch
在打开的文件中写入:
下载依赖:https://gitcode.com/raulmur/ORB_SLAM2/overview?tab=readme-ov-file&utm_source=csdn_github_accelerator&isLogin=1
下载Pangolin
cd Pangolin
mkdir build && cd build
cmake ..
sudo make -j8
sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3 libgflags-dev libgoogle-glog-dev libgtest-dev
cd ceres-solver
mkdir build && cd build
cmake ..
sudo make -j8
sudo make install
sudo apt-get install qt5-qmake qt5-default libqglviewer-dev-qt5 libsuitesparse-dev libcxsparse3 libcholmod3
cd g2o
mkdir build && cd build
cmake ..
sudo make -j8
sudo make install
mkdir build
cd build/
cmake ..
make
sudo make install
(1)下载ORB_SLAM2的安装包
sudo apt-get install ORB_SLAM2
(2)配置环境
cd ~/catkin_ws/src/ORB_SLAM2
sudo chmod +x build.sh
./build.sh
(3)使用ROS编译
sudo chmod +x build_ros.sh
./build_ros.sh
下载数据集:https://www.cvlibs.net/datasets/kitti/eval_odometry.php
运行ORB_SLAM2