赞
踩
当我们通过Solidworks成功导出URDF模型之后,我们当然很希望在ROS中观察到自己导入的模型。ROS中有两个非常好的插件,一个是RViz另一个是Gazebo。其中RViz类似一个可视化平台,而Gazebo则是一个虚拟仿真平台,它两搭配,简直卧龙凤雏。
我们首先看一看自己导出的URDF模型文件:
其中最有用的,当属launch文件夹以及urdf文件夹。
我们打开launch文件夹,如下:
可以看到,launch文件夹中有两个后缀为.launch文件,第一个display.launch是可以在Rviz中展示的文件,gazebo.launch是可以在Gazebo中展示的文件。
我们复制整个robot2600_20到ROS工作空间下,我们放在了catkin_ws里面的src文件夹下:
然后在catkin_ws根目录下执行catkin_make编译一下。注意这里需要首先更新一下路径,既在catkin_ws目录下执行devel/setup.bash,我想这一步大家学了的肯定晓得,只是希望大家保险一点。
双击打开launch文件夹中的display.launch文件,将其中的default="False"改为default="True"并保存文件。
然后在catkin_ws目录下执行roslaunch robot2600_20 display.launch,就可以打开两个窗口,分别如下:为了保险,可以先执行devel/setup.bash更新一下路径,当然后面我会较大家避免每一编译都要先更新路径的方法。
第一个窗口就是可视化窗口,大家看到红色不要怕,确实是报错,但是不要怕,还没设置好。报错的原因在于你还没设置需要固定的坐标系。
我们点击map这里的下拉三角形,选择base_link作为固定,然后随便点一下空白处,红色就会消失,变成绿色。
然后点击左下角的Add
选择RobotModel,然后点击OK
这样模型就能够顺利展示了,哈哈!是不是很棒?
这时候,出现的第二个界面就能够使用了,随便滑动一些,可以看看关节状态。
大家有没有想起来,在我们用Solidworks导出URDF模型的时候,设置了每一个关节的状态为revolute,这是一个限制关节角度的类型,我叫大家都设置成了-3.14到3.14,既360度无死角旋转?
可以通过这个Rviz的这个控件来观察一下我们每一个关节的角度限制范围,记下来,就可以回去重新修改啦!当然,可能不是很准确,但是大差不差的,因为我们操作机械臂的时候不可能每次都旋转到极限吧?
当然,这是个很笨的方法如果有更加准确的方法,记得评论告诉我哦!
在Gazebo中展示机械臂的方法类似,但是请记住,Gazebo它是一个仿真平台,我们就可以把Gazebo中的机械臂当成真实的机械臂
在同样的条件下运行roslaunch robot2600_20 gazebo.launch,请先刷新一下路径,确保顺利执行。然后我们就可以看到我们的仿真机械臂啦!
这样,机械臂就顺利出现在了我们的仿真环境中了,但是的但是的但是,大家可能一下就看到,这个机械臂怎么瘫倒在地上了?而且还不停的抖动,似乎中毒了。有的人的机械臂甚至在天上飞~~
大家千万不要怕!这是很正常的现象!不要心慌慌的去直接搜索如何让机械臂支棱起来!
由于篇幅原因,一下子还写不清楚,我后面会给大家解释如何让它支棱起来,并让它结合Moveit进行路径规划。这一章如果太长,解释不明白,大家记不住!没有印象。绝对不能让大家继续踩我走过的坑。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。