ROS
文章平均质量分 72
Amos_Lee1987
精简阿萨德
展开
-
Cannot load message class for .... Are your messages built?
1.新建msg编译成功,确定在<工作空间>/devel/include路径下生成对应的.h文件!2.可以rostopic list 和rostopic type 查询到对应话题的信息;3.rostopic echo和rostopic hz时出现以上的错误!采用网上的以下办法,问题未解决!网上基本都是这个办法!roscd or cd ~/catkin_wsso...原创 2018-08-24 17:22:27 · 4197 阅读 · 1 评论 -
eband_local_planner源码安装流程
1.下载源码维基官网:http://wiki.ros.org/eband_local_plannergit地址:https://github.com/utexas-bwi/eband_local_planner2.编译源码catkin_make -DCATKIN_WHITELIST_PACKAGES="eband_local_planner"2.1 安装依赖包使用以...原创 2019-04-24 09:42:03 · 837 阅读 · 0 评论 -
规划器之base_local_planner算法汇总
global_planner:A*、Dijstra、prm、人工势场、单元分解、快速搜索树(RRT)等local_planner:base_local_planner、dwa_local_planner、teb_local_planner、eband_local_planner、asr_ftc_local_planner、dwb_local_planner-------------...原创 2019-04-11 16:46:54 · 6392 阅读 · 1 评论 -
ROS : 参数服务器之动态调参(dynamic_reconfigure)
参数服务器实现的功能:修改参数后,不需要重新编译,节点启动时生效;动态调参实现的功能:修改参数后,不需要重新编译,无需重新启动节点;这个一元堆栈包含dynamic_reconfigure包,它提供了一种方法,可以在任何时候更改节点参数,而无需重新启动节点。目前,dynamic_reconfigure的重点是提供一种标准方法,将节点参数的子集公开给外部重新配置。客户机程序,例如GUIs,...原创 2019-01-15 11:00:00 · 5140 阅读 · 0 评论 -
在程序中重新启动move_base功能包
当前需求:问题出现在《[原创]ROS : 参数服务器之动态调参(dynamic_reconfigure)》测试过程中,从激光雷达数据的角度来看,当临时障碍物与机身相交时,机器人回人为自己被“卡住”,局部规划器规划的速度为0,机器人停止运动;即使更换新的任何目标点,机器人均停止不动; 还是当前位置,但是重启整个程序后,设置新的可行的目标点时,机器人能够抵达目标!!!这个重启的本质是重启了...原创 2019-01-15 10:28:55 · 2013 阅读 · 0 评论 -
6.创建一个话题以及自建一个msg
6.ROS中创建一个话题以及自建一个msgROS通信方式有三种,现在我们讲解其中一种通信方式:话题(Topic);话题(Topic)的传递实际上传递的是消息(msg),如果将消息(msg)比喻成需要运输的物体,那么话题是运输工具;ROS消息通信中使用的...原创 2018-12-24 18:00:28 · 284 阅读 · 0 评论 -
角蜂鸟AI视觉套件1:开箱和开发环境搭建
角蜂鸟开箱和开发环境搭建1.开箱展示 图1材料清单: 1.套件包含亚克力外壳、定制1080P摄像头及角蜂鸟AI视觉板卡(已拼装) 2.Type-C USB3.0导线1根 3.产品说明书卡片1张 电气参数: 供电电压...原创 2018-12-24 17:41:26 · 650 阅读 · 0 评论 -
ROS动作actionlib中ActionServer和ActionClient的状态机
本文件是讲解actionlib的内部运作机制,对想进一步应用actionlib的用户有帮助,特别是简单的例程已无法满足需求的用户!Part1:Action Service goal状态的转变主要由server端程序发起,可以使用下面一系列的命令: setAccepted - After inspecting a goal, decide to start processing...原创 2018-12-24 16:39:10 · 2762 阅读 · 0 评论 -
ROS中为什么用四元数描述运动控制
旋转矩阵用9个量来描述3自由度的旋转,具有冗余性;欧拉角虽然用3个量来描述3自由度的旋转,但是具有万向锁的问题,因此我们选择用四元数,(ROS当中描述转向的都是采用的四元数)。一个四元数拥有一个实部和三个虚部组成。 q=w+xi=yj+zk...转载 2018-11-24 18:09:56 · 2102 阅读 · 2 评论 -
ROS tf转换中三维空间刚体运动----欧拉角
什么是欧拉角? 用一句话说,欧拉角就是物体绕坐标系三个坐标轴(x,y,z轴)的旋转角度。 1,静态:即绕世界坐标系三个轴的旋转,由于物体旋转过程中坐标轴保持静止,所以称为静态。 2,动态:即绕物体坐标系三个轴的旋转,由于物体旋转过程中坐标轴随着物体做相同的转动,所以称为动态。对于分别绕三个坐标轴旋转的情况,下述定理成立:物体的任何一种旋转都可分解为分...转载 2018-11-24 17:53:02 · 1172 阅读 · 0 评论 -
ROS C++ tf库具有哪些功能?
C++中给我们提供了很多TF的数据类型,如下表:名称 数据类型 向量 tf::Vector3 点 tf::Point 四元数 tf::Quaternion 3*3矩阵(旋转矩阵) tf::Matrix3x3 位姿 tf::pose 变换 tf::Transform 带时间戳的以上类型 tf::Stamped 带时间...转载 2018-11-24 15:16:36 · 1214 阅读 · 0 评论 -
ROS TF树的数据类型
TF tree是由很多的frame之间TF拼接而成。那么TF tree是什么类型呢?如下:tf/tfMessage.msg tf2_msgs/TFMessage.msg这里TF的数据类型有两个,主要的原因是版本的迭代。自ROS Hydro以来,tf第一代已被“弃用”,转而支持tf2。tf2相比tf更加简单高效。此外也添加了一些新的功能。由于tf2是一个重大的变化,tf API一直保持现...原创 2018-11-24 11:50:41 · 905 阅读 · 0 评论 -
[原创]Navigation执行move_base失败“Unable to get starting pose of robot, unable to create global plan”分析
move_base打印输出LOG如下://进入planThread[ INFO] [1533878479.616677684]: MOVE_BASE makeplan ............//进入makePlan[ WARN] [1533878479.616771892]: Unable to get starting pose of robot, unable to crea...原创 2018-10-29 11:46:23 · 5352 阅读 · 3 评论 -
eband_local_planner源码架构分析
一、文件结构(代码组成)由5部分组成,第一部分负责数据类型的转换;第二部分负责具体的局部规划的具体实现,是核心代码;第三部分是move_base局部规划器和本局部规划器具体实现的中间转换接口;第四部分是将局部规划转成速度(cmd_vel或twist_cmd)控制指令;第五部分是RVIZ可视化设置,方便调试;程序流程:eband_local_planner_ros ----->eb...原创 2019-04-30 18:26:27 · 1355 阅读 · 1 评论