使用urdf完成仿真机器人的简单实现

      前言:

                在学习ros系统过程中,购买实际的机器人价格昂贵,为了降低学习成本,ros提供了一系列的仿真系统和环境搭建,渲染可视化工具,在此使用到的时urdf。

 一.环境搭建

        1.在构建的工作空间下在创建新的功能包,添加依赖urdf,xacro

        2.在功能包下新建如下几个文件夹:

urdf: 存储 urdf 文件的目录

meshes:机器人模型渲染文件(暂不使用)

config: 配置文件

launch: 存储 launch 启动文件

二.具体代码实现

        1.首先在urdf下新建一个urdf文件夹,新建一个urdf文件,注意!后缀是.urdf,如demo01.urdf

        2.紧接着输入以下代码:(这串代码的具体含义在此不做要求)

    

<robot name="mycar">
    <link name="base_link">
        <visual>
            <geometry>
                <box size="0.5 0.2 0.1" />
            </geometry>
        </visual>
    </link>
</robot>

        3.接着在编写launch文件,在launch目录下创建一个新的launch文件,具体实现代码如下:

<launch>
    <!--在这里设置参数,注意param的名字是固定的,就是“robot——description”,后面跟的textfile就是刚才构建的文件-->
    <param name="robot_description" textfile="$(find 创建的功能包名)/urdf/urdf/XXXX.urdf" />
    <!--在这里启动rviz节点-->
    <node pkg="rviz" type= "rviz" name="rviz"/>
</launch>

        4.接着就在终端中输入launch命令即可

        5.但是执行后会出现看不到模型的情况(如图),此时在add中添加robot——model,坐标系设置成上面代码中的base_link即可(效果如图)

三.遇到的问题及其解决方法

        1.显示找不到包,要检查一下代码中的包名有无写错,文件有无保存(按下crtl+s即可快速保存文件)。

        2.显示路径错误,检查launch文件中的textfile一行有无写错,注意!在括号右侧还有一个/

,检查一下根目录结尾的地方有没有多打空格或者/。

        3.如果出现其他问题,可以尝试在终端中刷新一下或者重新构建一个功能包。

目录

 一.环境搭建

二.具体代码实现

三.遇到的问题及其解决方法

四:优化及改进:


        前言:在上述的实现案例中,当我们在次启动节点时会发现robot_model等选项需要我们自己再次配置,为了解决这个问题,在此进行优化与改进

        1.在打开的rivz中,配置好相关的选项,然后点击左上角的file,选择save config as,进行保存,原则上这个文件可以保存到任意地方,但是为了后续方便,我们把它保存到之前创立的config目录下,文件格式默认即可。保存完后应该有图二的效果

        2.进行配置,在launch文件的rviz文件根下,添加args,具体代码实现如下

<launch>
    <!--在这里设置参数,注意param的名字是固定的,就是“robot——description”,后面跟的textfile就是刚才构建的文件-->
    <param name="robot_description" textfile="$(find 创建的功能包名)/urdf/urdf/XXXX.urdf" />
    <!--在这里启动rviz节点-->
    <node pkg="rviz" type= "rviz" name="rviz" args="-d $(find 功能包名)/config/文件名.rviz"/>
</launch>

        3.再次重新启动节点即可实现

        4.注意事项及改进

                1.在代码中要严格控制代码缩进,在-d 后需要有一个空格

                2.注意文件名不要打错。

                3.代码编写完成后,记得保存和刷新环境变量

总结:以上就是一个用urdf和rviz实现仿真机器人可视化的简单案例,如有错误的地方欢迎指出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值