找回密码
 立即注册
搜索
查看: 6363|回复: 3

【自主导航】我想知道ros中自主导航是怎么控制小车移动的

[复制链接]

55

主题

266

帖子

476

积分

中级会员

Rank: 3Rank: 3

积分
476
发表于 2021-11-22 08:49:49 | 显示全部楼层 |阅读模式
你好,我想知道ros中自主导航是怎么控制小车移动的,目前我查到的资料是先是使用了move_base来进行路径规划,然后发布/path的topic,但是我查了是没有哪个话题有订阅path的,那么这是怎么利用的呢?从图中也可以看到。第二个问题是我查到的资料是使用/cmd_vel通过发布速度来控制小车的,那么/cmd_vel就是jetson nano和stm32的通信通道么?是不是可以理解ROS先将路径信息等整合转为速度信息发给stm32就完成任务了?然后我看到图中还有很多话题都是在/cmd_vel之后连接的,是不是可以理解/cmd_vel之后的连接都是在stm32中执行的?最终速度信号又是转化为pid来控制电机驱动小车的驱动轮进行前进的么

回复

使用道具 举报

9

主题

72

帖子

143

积分

注册会员

Rank: 2

积分
143
发表于 2021-11-22 08:51:17 | 显示全部楼层
导航有全局路径和局部路径之分,可以参考这个图,有了当前位置和目标位置后,先用全局路径进行一个大致的规划,再根据全局路径进行局部路径规划,局部路径有很多算法,可以基于优化(teb),可以把全局路径分成很多小段,再在每一小段重新局部规划(DWA算法)

图片2.png
回复

使用道具 举报

9

主题

72

帖子

143

积分

注册会员

Rank: 2

积分
143
发表于 2021-11-22 08:52:09 | 显示全部楼层
第二个问题中,你的理解基本正确,nano中ROS先将路径信息等整合转为速度信息发到/cmd_vel,这个理解是正确;后面/cmd_vel之后连接的的理解就不正确,/cmd_vel之后的连接可以理解nano与STM32的通信桥,wheeltec_robot这个节点就是接收/cmd_vel话题,再将速度信息打包通过串口发送给stm32。然后stm32收到这个目标速度就通过PID控制电机,32的工作比如说pid控制部分在你发的图上是不会显示出来的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

粤ICP备20017043号|小黑屋|手机版|Archiver|轮趣科技(东莞)有限公司  

GMT+8, 2024-12-23 13:34 , Processed in 0.061228 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表