关于ROS+Gazebo通过cmd_vel或键盘控制节点发布速度消息时,仿真小车运动速度相反问题
本人初学ros,在做仿真小车的时候,通过soildworks2018建立四轮小车模型,并通过插件soildworks to urdf导出urdf文件。
将该文件移入虚拟机中,并将urdf修改为xacro文件,运行Gazebo进行仿真。
通过发布速度控制指令,小车往反方向运动。
rostopic pub -r 10/cmd_vel geometry_msgs/Twist
通过键盘控制节点进行控制,运动全部相反。
rosrun teleop_twist_keyboard teleop_twist_keyboard.py
到rviz中,查看tf坐标,检查是否建模的时候坐标系给错了,发现坐标系全部正常。
通过各种途径查找解决方法,没有发现能够解决的办法,但是在github上下载的别人的模型,可以正常运行,因此确定是建模出现问题,故在xacro文件中检查。
随后发现,只要将四个轮子的axis数值,修改为相反的即可,如下图所示,-1改为1或者1改为-1。
同理,如果出现发布直行的消息,仿真小车确实左转或者右转,也是修改该参数,因为在soildworks到处urdf过程中,出现为参数错误的问题,使轮子的axis数值错误,从而无法正常移动。
关于ROS+Gazebo通过cmd_vel或键盘控制节点发布速度消息时,仿真小车运动速度相反问题相关推荐
- 「ROS Kinetic」发布速度消息cmd_vel
文章目录 Twist 终端发布Twist消息控制机器人 节点发布Twist消息控制机器人 Twist 发布Twist消息控制机器人,其实这个Twist消息,它的Topic是/cmd_vel,base ...
- Qt Quick 3D学习:使用鼠标键盘控制节点位置和方向
(注意,开源版的 Qt Quick 3D 是狗都不用的 GPL 协议) Qt Quick 3D 模块提供了 WasdController 类型来控制节点的位置和方向,受控节点一般是 Camera.( ...
- ROS中键盘控制节点功能包下载(下载过程中git时出现拒绝连接的最终处理办法)
在ros中运行sudo teleop_twist_keyboard teleop_twist_keyboard.py时,出现找不到功能包错误,如下 解决问题过程: 1.首先,我现在文件中搜一下这个功能 ...
- 小车yolo机械臂(一)ros下gazebo搭建小车(可键盘控制)安装摄像头仿真 加载yolo检测识别标记物体
ros下gazebo搭建小车(可键盘控制)安装摄像头仿真 加载yolo检测识别标记物体 目录总览 一,项目代码下载 二,ros下实现darknet_ros(YOLO V3)检测 2.1 编译整个项目 ...
- ROS探索总结(七)(八)(九)——smartcar源码上传 键盘控制 操作杆控制
ROS探索总结(七)--smartcar源码上传 看到前面写的博客还是帮助了很多ROS的学习者,我感到非常荣幸.其实我也是一名ROS的新手,ROS的相关资料少,上手难度大,我现在也在摸索着学习,还希望 ...
- ROS小车打造(12)--Arduino订阅cmd_vel实现差速控制
基本思路: 上一篇已经能实现arduino对ROS节点的订阅与发布,所以只要订阅到ROS的移动控制消息,并把它转换为小车的移动命令即可实现ROS对小车的移动驱动. ROS小车打造(十一)--ardui ...
- TIANBOT MINI机器人在gazebo中使用键盘控制运动
在上一节,我们配置好了xacro文件,那么这一节我们实现小车在gazebo环境中通过键盘控制节点动起来,并且使用rviz可视化工具. 01 配置各个文件 第一步首先是要修改描述文件,修改的目的是增加c ...
- 机器人操作系统ROS(8)arbotix控制器控制小车运动
本文内容:在 Ubuntu 18.04 虚拟机中,基于安装配置好 ROS Ketinc上,进行 URDF 机器人建模的详细步,同时配置摄像. 说明:本文是之前的延伸,该节需要参考上节机器人操作系统RO ...
- 在Jetson Nano上学习ROS的记录(版本Ubuntu18.04,课程来源赵虚左老师的《ROS理论与实践》)第十二章 机器人导航(仿真)
系列文章目录 第一章 ROS空间创建.helloworld的实现.开启多个节点 第二章 话题通信 第三章 服务通信 第四章 参数服务器 第五章 常用指令 第六章 通信机制实操 第七章 ROS通信机制进 ...
最新文章
- 神器:REST测试工具[wiztools.org restclient]客户端Jar依赖Java安装环境
- 微信公众号数据2019_公众号年度数据报告怎么写?2019年公众号年报可一键生成啦!...
- PHP预防XSS攻击,ajax跨域攻击的方法
- 日志规范之为什么要使用SLF4J
- ux的重要性_颜色在UX中的重要性
- Android7.0反射类找不到的问题
- 棒棒糖 宏_棒棒糖图表
- 第八篇Django分页
- OpenSSL 创建自签名证书
- 计蒜客 28437.Big brother said the calculation-线段树+二分-当前第k个位置的数 ( ACM训练联盟周赛 M)...
- find 命令示例_数组find()方法以及JavaScript中的示例
- APUE习题[实现dup2函数功能,不使用fcntl]
- Unity移动物体时,当接近目的地时自动吸附
- dns域名解析原理及过程
- Canvas彩色樱花图案背景js特效
- Virtual Dub——一个令人爱不释手的小工具
- php怎么实现收藏夹功能,前端--收藏功能的实现
- 微信开发网页授权获取用户信息
- 学画画要花多少钱_孩子学画画大约需要多少钱呢?
- Web开发应了解的5种设计模式(转)