ROS
文章平均质量分 94
ROS
yuan〇
逆水行舟用力撑,一篙松劲退千寻。领域方向:【决策规划】
展开
-
【ROS-Navigation】—— DWA路径规划算法解析
最近在学习ROS的navigation部分,写些东西作为笔记,方便理解与日后查看。本文从Astar算法入手,对navigation源码进行解析。PS:ros navigation源码版本DWA具体的算法原理在之前的博客(见自动驾驶路径规划——DWA(动态窗口法))中已有阐述,本文就不多做赘述了.原创 2023-02-01 13:22:37 · 8612 阅读 · 7 评论 -
【ROS-Navigation】—— Astar路径规划算法解析
最近在学习ROS的navigation部分,写些东西作为笔记,方便理解与日后查看。本文从Astar算法入手,对navigation源码进行解析。PS:ros navigation源码版本对于Astar算法,想必大家都非常熟悉了。自动驾驶路径规划——A*(Astar)算法。原创 2023-01-24 17:58:09 · 5770 阅读 · 19 评论 -
【ROS】—— 机器人导航(仿真)—导航实现(十八)[重要][重要][重要]
安装相应功能包:创建功能包,暂时只需用到以下依赖:gmapping map_server amcl move_basegmapping 是ROS开源社区中较为常用且比较成熟的SLAM算法之一,gmapping可以根据移动机器人里程计数据和激光雷达数据来绘制二维的栅格地图,对应的,gmapping对硬件也有一定的要求:该移动机器人可以发布里程计消息机器人需要发布雷达消息(该消息可以通过水平固定安装的雷达发布,或者也可以将深度相机消息转换成雷达消息)gmapping 功能包中的核心节点是。为了方便调用,需要先了原创 2023-01-16 18:16:51 · 4711 阅读 · 11 评论 -
【ROS】—— 机器人导航(仿真)—导航原理(十七)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。机器人是如何实现导航的呢?或换言之,机器人是如何从 A 点移动到 B 点呢?ROS 官方为了提供了一张导航功能包集的图示,该图中囊括了 ROS 导航的一些关键技术:假定我们已经以特定方式配置机器人,导航功能包集将使其可以运动。上图概述了这种配置方式。白色的部分是必须且已实现的组件,灰色的部分是可选且已实现的组件,蓝色的部分是必须为每一个机器人平台创建的组件。全局地图自身定位路径规划。原创 2023-01-15 19:16:48 · 2233 阅读 · 2 评论 -
【ROS】—— 机器人系统仿真 —RDF、Gazebo与Rviz综合应用(十六)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。保证 ROS 程序的可移植性:是一组软件包,它包含了控制器接口,控制器管理器,传输和硬件接口。ros_control 是一套机器人控制的中间件,是一套规范,不同的机器人平台只要按照这套规范实现,那么就可以保证 与ROS 程序兼容,通过这套规范,实现了一种可插拔的架构设计,大大提高了程序设计的效率与灵活性。原创 2023-01-14 19:24:31 · 1087 阅读 · 0 评论 -
【ROS】—— 机器人系统仿真 —Rviz中控制机器人模型运动与URDF集成Gazebo(十五)
Arbotix:Arbotix 是一款控制电机、舵机的控制板,并提供相应的 ros 功能包,这个功能包的功能不仅可以驱动真实的 Arbotix 控制板,它还提供一个差速控制器,通过接受速度控制指令更新机器人的 joint 状态,从而帮助我们实现机器人在 rviz 中的运动。实现流程:1.2 创建新功能包,准备机器人 urdf、xacro 文件参考上一讲.【ROS】—— 机器人系统仿真 —URDF优化_xacro (十四)config文件夹中放置1.4 编写 launch 文件配置 Arbotix1原创 2023-01-14 16:30:42 · 3078 阅读 · 0 评论 -
【ROS】—— 机器人系统仿真 —URDF优化_xacro (十四)
前面 URDF 文件构建机器人模型的过程中,存在若干问题。问题1:设计易出错。问题2:代码复用性问题。…如果在编程语言中,可以通过变量结合函数直接解决上述问题,在 ROS 中,已经给出了类似编程的优化方案,称之为:Xacro概念Xacro 是 XML Macros 的缩写,Xacro 是一种 XML 宏语言,是可编程的 XML。原理Xacro 可以声明变量,可以通过数学运算求解,使用流程控制控制执行顺序,还可以通过类似函数的实现,封装固定的逻辑,将逻辑中需要的可变的数据以参数的方式暴露出去,从而提高代码原创 2023-01-13 14:24:25 · 1088 阅读 · 0 评论 -
【ROS】—— 机器人系统仿真 —URDF语法 (十三)
机器人系统仿真:是通过计算机对实体机器人系统进行模拟的技术,在 ROS 中,仿真实现涉及的内容主要有三:对机器人建模(URDF)、**创建仿真环境(Gazebo)以及感知环境(Rviz)**等系统性实现。URDF是 Unified Robot Description Format 的首字母缩写,直译为统一(标准化)机器人描述格式,可以以一种 XML 的方式描述机器人的部分结构,比如底盘、摄像头、激光雷达、机械臂以及不同关节的自由度…,该文件可以被 C++ 内置的解释器转换成可视化的机器人模型,是 ROS 中原创 2023-01-12 19:36:39 · 1712 阅读 · 0 评论 -
【ROS】—— ROS常用组件—rosbag与rqt工具箱(十二)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。原创 2023-01-10 23:22:47 · 2106 阅读 · 0 评论 -
【ROS】—— ROS常用组件_TF坐标变换_多态坐标变换与TF坐标变换实操(十一)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。原创 2023-01-10 19:03:37 · 809 阅读 · 0 评论 -
【ROS】—— ROS常用组件_TF坐标变换_静态坐标变换与动态坐标变换(十)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。ROS中内置有小乌龟跟随实践案例,输入以下命令roslaunch turtle_tf2 turtle_tf2_demo_cpp.launch或roslaunch turtle_tf2 turtle_tf2_demo.launch带cpp的是用C++实现的,另一个则是python实现的.概念TransForm Frame,坐标变换ROS 中是通过坐标系统开标定物体的,确切的将是通过右手坐标系。原创 2023-01-09 20:06:30 · 1084 阅读 · 0 评论 -
【ROS】—— ROS重名问题(九)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。原创 2023-01-07 18:59:10 · 1626 阅读 · 1 评论 -
【ROS】—— ROS运行管理 ——元功能包与launch文件(八)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。原创 2023-01-05 15:08:22 · 754 阅读 · 0 评论 -
【ROS】—— ROS通信机制进阶(七)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。设计头文件,可执行文件本身作为源文件。编写头文件;编写可执行文件(同时也是源文件);编辑配置文件并执行。public :};} # endif在 VScode 中,为了后续包含头文件时不抛出异常,请配置 .vscode 下 c_cpp_properties.json 的 includepath属性.配置方法与以前一致.ROS_INFO("自定义头文件的使用....");原创 2023-01-04 19:10:51 · 953 阅读 · 1 评论 -
【ROS】—— ROS通信机制——实践与练习(六)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。原创 2023-01-03 16:58:32 · 672 阅读 · 0 评论 -
【ROS】——常用命令(五)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。rosnode : 操作节点rostopic : 操作话题rosservice : 操作服务rosmsg : 操作msg消息rossrv : 操作srv消息rosparam : 操作参数作用和之前介绍的文件系统操作命令比较,文件操作命令是静态的,操作的是磁盘上的文件,而上述命令是动态的,在ROS程序启动后,可以动态的获取运行中的节点或参数的相关信息。原创 2023-01-03 14:31:17 · 3685 阅读 · 0 评论 -
【ROS】—— ROS通信机制——参数服务器(四)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。参数服务器在ROS中主要用于实现不同节点之间的数据共享。参数服务器相当于是独立于所有节点的一个公共容器,可以将数据存储在该容器中,被不同的节点调用,当然不同的节点也可以往其中存储数据。概念以共享的方式实现不同节点之间数据交互的通信模式。作用存储一些多节点共享的数据,类似于全局变量。原创 2023-01-02 20:18:51 · 709 阅读 · 0 评论 -
【ROS】—— ROS通信机制——服务通信(三)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。srv = 请求 +相应按照固定格式创建srv文件编辑配置文件编译生成中间文件服务通信中,数据分成两部分,请求与响应,在 srv 文件中请求和响应使用—分割,具体实现如下:# 客户端请求时发送的两个数字int32 num1int32 num2---# 服务器响应发送的数据int32 sum编写服务端实现;编写客户端实现;编辑配置文件;编译并执行。原创 2023-01-02 16:04:40 · 1016 阅读 · 2 评论 -
【ROS】—— ROS通信机制——话题通信(二)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。机器人是一种高度复杂的系统性实现,在机器人上可能集成各种传感器(雷达、摄像头、GPS…)以及运动控制实现,为了解耦合,在ROS中每一个功能点都是一个单独的进程,每一个进程都是独立运行的。更确切的讲,ROS是进程(也称为Nodes)的分布式框架。话题通信(发布订阅模式)服务通信(请求响应模式)参数服务器(参数共享模式)原创 2023-01-01 22:50:00 · 3422 阅读 · 1 评论 -
【ROS】—— ROS快速上手(一)
📢本系列将依托赵虚左老师的ROS课程,写下自己的一些心得与笔记。📢 文章可能存在疏漏的地方,恳请大家指出。原创 2022-12-31 22:21:19 · 2156 阅读 · 2 评论 -
【ROS-melodic Learning】——机器人导航(古月居代码报错与解决方案)
古月居《ROS机器人开发实践》机器人SLAM与导航运行代码遇到的问题及解决方案原创 2022-12-31 15:47:36 · 3271 阅读 · 9 评论 -
【解决方案】WSL2下rviz启动不了(Segmentation fault)
【解决方案】WSL2下rviz启动不了(Segmentation fault)到处搜寻解决方案,最后终于解决啦!!参考文章首先启动rviz,出现上述问题。执行查看详细的运行消息,可以看到进入到环境配置文件中`在最后加上这条最后成功搞定。若仍然无法解决,可以参考以下文章1.Segmentation fault when running rviz on wsl in Windows102.rviz segmentation fault at launch3.Segmentation原创 2022-12-05 19:27:46 · 2202 阅读 · 3 评论