Turtlebot仿真-编码实现前进和避障
编码实现前进和避障
我们已经学会了如何启动和在本课中修改现有的Python脚本。
我们已经学会了如何发送机器人一个命令说:“前进,直到我们给你一个停止信号”。
在这一课中,我们将学习更复杂的命令:“我们想结束在位置三米,无论什么路径需要我们在那里”。
我们将从GitHub库文件工作。
你可以找到的信息如何克隆GitHub库“写你的第一个脚本”。
我们假设你的文件都位于这里~/helloworld/turtlebot。
启动Gazebo and Rviz
- 启动Gazebo
roslaunch turtlebot_gazebo turtlebot_world.launch
- 启动导航演示
roslaunch turtlebot_gazebo amcl_demo.launch
- 启动Rviz
roslaunch turtlebot_rviz_launchers view_navigation.launch
- 改变turtlebot方向。
- 送一个导航目标改变turtlebot取向。
- 它必须面对的是长的物体。
- 改变turtlebot位置。
- 发送一个导航目标,在turtlebot的前面是站有其他物体。
- 例如,像这样:
启动脚本
- 启动脚本
python ~/helloworld/turtlebot/goforward_and_avoid_obstacle.py
- 在Rviz查看结果
- turtlebot会发现一条小路,停在另一面的对象。
- 中断进程。关闭终端。
完成指令后打开文件
goforward_and_avoid_obstacle.py
并试图理解的命令阅读评论的意义。注:在脚本goforward_and_avoid_obstacle.py也有限制时间的任务执行(线49-50):
#allow TurtleBot up to 60 seconds to complete task
success = self.move_base.wait_for_result(rospy.Duration(60))
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号