- 博客(217)
- 资源 (26)
- 收藏
- 关注

原创 为期两个月的MATLAB与ROS联合仿真探索总结——因为热爱,所以无所畏惧
2021年的9月底收到老师的委托之后,开始着手使用MATLAB探索开发一些实验,控制对象为ROS中的仿真小车 为什么要用MATLAB呢?因为这个实验是面向机器人专业的全体学生的,而不是个别学生,这就意味着如果直接使用ROS开发,那么部分没有接触过ROS,零基础的同学可能会感到比较吃力,而如果仅仅是把程序给他们,让他们运行一下,看看效果,估计收获甚微,为了让全体同学都自己动手去完成实验内容,选择了大家比较熟悉的MALTAB作为开发工具,依托SImulink中的ROS工具箱与ROS建立联系,并在
2021-11-30 14:37:51
14046
37

原创 详细介绍如何在ubuntu20.04中安装ROS系统,超快完成安装(最新版教程)
2020年的10月份,我整理写了一篇名为:详细介绍如何在ubuntu20.04中安装ROS系统,以及安装过程中出现的常见错误的解决方法,填坑!!!的博客,已经经过了很多小伙伴的验证,确实是可行的,该篇博客链接如下:【请点击此处进行跳转】 经过近期的探索,我将安装步骤进行了进一步的优化,使安装变得更加快速,更加简单,我已经验证了其可行性,期待更多的小伙伴们一起来验证 本次安装依旧采用在虚拟机中安装的模式,一年前我用的VMware15.5,现在用的VMware16.1.1,【获取方式(附安装步
2021-10-01 21:14:03
222483
698

原创 优快云博主 慕羽★ 的附件下载方式总结
博主要准备考研了,可能会暂时离开一段时间,在这段时间暂时不再进行技术交流,来优快云快一年了,在一年当中发布了近50篇文章(当然有部分属于学习笔记),与很多小伙伴进行了交流,给大家提供帮助的同时,自己也得到了提升,感谢大家的陪伴与支持,准备考研的这段时间中,我每周会查看一到两次消息,仅发放资料,需要资料的依旧在评论区留言就可以了,有时消息过多,发放时可能有遗漏(绝对不是故意的,或者针对某个人),可以尝试再次留言,期待与小伙伴们再次相遇...
2021-03-16 16:47:20
15449
35

原创 详细介绍如何在ubuntu20.04中安装ROS系统,以及安装过程中出现的常见错误的解决方法,填坑!!!
1、添加ROS软件源 将以下命令复制到ubuntu的终端执行sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' 2、添加密钥 将以下命令复制到ubuntu的终端执行sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.
2020-10-07 19:51:25
73277
199

原创 详细介绍用MATLAB实现基于A*算法的路径规划(附完整的代码,代码逐行进行解释)(一)--------A*算法简介和环境的创建
本系列文章主要介绍基于A*算法的路径规划的实现,并使用MATLAB进行仿真演示。 一、 A*算法简介 A*(A-Star)算法是一种静态路网中求解最短路径最有效的直接搜索方法,也是解决许多搜索问题的有效算法。算法中的距离估算值与实际值越接近,最终搜索速度越快。 公式表示为: f(n)=g(n)+h(n),其中, f(n) 是从初始状态经由状态n到目标状态的代价估计,g(n) 是在状态空间中从初始状态到状态n的实际代价,h(n) 是从状态n到目标状态的最佳路径的估计代价。
2020-10-01 09:30:29
72668
165

原创 详细介绍如何从零开始制作51单片机控制的智能小车(一)———让小车动起来
从本文开始,在之后的一段时间里,我会通过本系列文章,详细介绍如何从零开始用51单片机去实现智能小车的控制,本文作为本系列的第一篇文章,主要介绍如何让小车动起来。一、硬件的选择 1、底盘和电机 底盘的形状呢,大家可以按照自己的需要自主选取,至于电机关注一下工作电压,转速,电机类型就差不多,对于新手,可以尝试以下样式(4WD智能小车底盘,附带4个直流减速电机,电机接线需要自己焊接),也就是本文例子采用的底盘和电机,组装简单,使用方便,特别适合新手。 2、电机驱动模块
2020-06-01 07:10:16
131326
718
原创 新版ROS Motion Planning运动规划库相关介绍
2023年11月份的时候,我发现了这个优质的基于ROS的运动规划库,并写了一篇博客(如下所示)来对其使用方法进行了简单介绍,随着这个运动规划库作者的更新,很多内容和改运动规划库的框架已经发生了变化,为了让实验室的小伙伴们更加快速的上手,用这篇博客更新一下相关内容
2025-03-21 08:00:00
896
3
原创 多无人车协同探索开源包启动文件介绍(下)
model: 定义机器人的模型类型,默认为waffle_pi,也可以设置为burger或waffle。: 控制机器人是否只进行前进动作,默认为false,即机器人可以进行全向运动。first_tb3second_tb3third_tb3: 分别定义了三个机器人的名称,tb3_1tb3_2tb3_3。这些值将作为参数传递给后续的节点和命名空间。eta和Geta: 用于 RRT 算法中的扩展参数,控制算法的探索范围或步长。: 定义在前沿探测中,感知区域的半径。: 用于前沿信息的加权。和。
2025-03-20 15:54:35
1168
原创 多无人车协同探索开源包启动文件介绍(上)
在之前介绍的《多无人车协同探索开源包部署教程及常见报错解决方式》中运行多无人车协同探索时,先后运行了两个launch文件 multiple_tb3_house.launch 和three_robots.launch ,本文来进一步看一下这两个启动文件以及其调用的move_base .launch 和multi_tb3_mapmerge.launch 都做哪些操作以及如何根据自己的需要进行相应的修改。 由于内容较多,拆分成(上)、(下)两篇博客,链接如下: 多无人车协同探索开源包启动文件介绍(上
2025-03-20 15:53:21
828
原创 多无人车协同探索开源包部署教程及常见报错解决方式
本博客将介绍项目的基本概念、部署步骤以及常见问题的解决方案。该项目利用 RRT(Rapidly-exploring Random Tree)算法,通过多机器人协作进行高效的环境探索,适用于自动化与自主导航任务。项目简介:介绍该项目的核心算法、特点及应用场景,展示如何通过多个机器人共同工作来提升探索效率。部署教程:详细讲解如何在 ROS Noetic 环境中部署该项目,安装依赖、创建工作空间、克隆代码并编译项目。项目运行:包括单机器人与多机器人自主探索的示例,帮助读者快速理解和实践项目。
2025-03-19 10:52:51
1101
1
原创 C++中的单例模式及具体应用示例
本文深入探讨了C++中的单例模式及其在机器人自主导航中的应用,特别是如何通过单例模式来管理地图数据。文章详细介绍了单例模式的基本结构、优缺点以及在多线程环境中的应用,强调了其在保证数据一致性和资源管理中的重要性。接着,文章通过一个实际的路径规划系统示例,展示了如何结合单例模式设计地图管理模块。该系统使用了广度优先搜索(BFS)算法来进行路径规划,并通过多线程实现地图更新和路径规划的并行处理。主要的代码模块包括地图管理类MapManager、路径规划类BFSPlanner、以及管理多线程操作。
2025-03-14 14:23:23
1128
原创 Markdown 文件中使用Mermaid绘制状态关系图
Mermaid 是一种基于 Markdown 的可视化图表工具,支持绘制流程图、状态图、甘特图等。**Mermaid**也是 Obsidian 支持的图表绘制语言之一,可以直接在 Obsidian或者其他软件、网页等创建的Markdown 文件中编写 Mermaid 代码来生成状态转换图。比如在 Obsidian 中打开或创建一个笔记或者在优快云中的Markdown编辑器中,插入 Mermaid 代码块,并添加状态关系图的代码后,保存文件后,Obsidian 或者优快云编辑器会自动渲染出关系图,切换至阅
2025-01-04 11:21:02
1229
原创 详细介绍如何使用rapidjson读取json文件
本文主要详细介绍如何使用rapidjson库来实现.json文件的读取,分为相关基础介绍、结合简单示例进行基础介绍、结合复杂示例进行详细的函数实现介绍等三部分。
2024-12-21 14:02:56
1587
原创 ROS的导航功能包navfn中计算单元格的势值的原理介绍
最近看navfn中Dijkstra算法的实现思路时发现与A * 的思路差别还是很大的,所以就仔细看一下源码,NavFn::updateCell(int n)函数中计算节点的势力值的相关部分,第一次看确实很难理解,尤其是多项式v = -0.2301 * d * d + 0.5307 * d + 0.7040的含义,看的一头雾水,所以就仔细研究了一下这部分内容,根据我个人对该英文文档中相关内容的理解,结合源码中的的相关部分,接下来,本文对将该部分展开详细介绍
2024-10-24 00:01:57
1217
原创 【已解决】Ubuntu20.04安装Sophus的方法 & CMake Error at CMakeLists.txt: CMake 3.24 or higher is required解决方法
本文主要介绍在Ubuntu20.04安装中Sophus的方法 以及安装过程中常出现的CMake Error at CMakeLists.txt:1 (cmake_minimum_required):CMake 3.24 or higher is required. You are running version 3.16.3-- Configuring incomplete, errors occurred!的解决方法
2024-09-22 08:40:30
2520
原创 【已解决】Ubuntu20.04安装fmt编译报错:error: no matching function for call to ‘fmt::v11::formatter的解决方法
版本来解决该问题,例如9.1.0版本,首先,我们回到fmt文件夹下,在空白处右键,选择 在终端打开 项,然后在打开的终端下执行以下指令。然后接着按照第一部分中介绍的流程,执行完下面这行语句,就可以完成fmt的安装了。库的编译过程中出现了关于模板推导和类型转换的错误,特别是涉及。库版本和我的编译器或依赖项不兼容,或者是某些模板推导的问题。,可能在该版本中存在一些模板相关的问题。可以尝试回退到稳定的。然后就可以发现报错成功解决了。
2024-09-21 16:57:37
1820
4
原创 【已解决】编译报错:fatal error: Eigen/Core: 没有那个文件或目录 #include <Eigen/Core>
【已解决】编译报错:fatal error: Eigen/Core: 没有那个文件或目录 #include <Eigen/Core>如果,你已经可以看到上面那些文件夹,说明你的Eigen已经成功安装,但是此时编译还报错的话,可以在终端执行以下命令将eigen3库映射到/usr/include 路径。
2024-09-21 16:52:46
2146
1
原创 Git常用指令整理【新手入门级】【by慕羽】
Git 是一个分布式版本控制系统,主要用于跟踪和管理源代码的更改。它允许多名开发者协作,同时提供了强大的功能来管理项目的历史记录和不同版本。本文主要记录和整理,个人理解的Git相关的一些指令和用法
2024-09-16 20:46:41
1470
原创 基于LQR算法的机器人轨迹跟踪控制详解
本文详细介绍了基于线性二次型调节器(LQR)算法的机器人轨迹跟踪控制方法。首先,文章通过建立基于运动学模型的离散状态方程,来描述机器人的当前状态与目标状态之间的关系,并利用此模型进行状态误差的计算。接着,通过设定状态量和控制量的权重矩阵(Q和R),使用LQR算法求解控制输入u,旨在最小化状态偏差和控制成本,以实现精确的轨迹跟踪。此外,文章还分析了LQR算法在ros_motion_planning运动规划库中的实现,通过源代码详解了误差量化、状态方程动态矩阵的建立、反馈控制增益的计算以及最终控制向量的生成等关
2024-08-10 07:14:43
4148
1
原创 车辆/单车运动学建模、线性化、离散化过程详细推导
运动学建模、线性化、离散化过程,是使用控制算法进行控制前常用的操作,本文主要以车辆/单车模型为例,详细介绍运动学建模、线性化、离散化等过程,为后续的使用LQR、MPC等控制算法进行轨迹跟踪或其他控制任务做准备。
2024-08-10 07:11:56
2147
原创 Ego Planner规划算法(下)——Ego Planner程序框架
本系列文章用于学习记录Ego-Planner规划算法的相关内容,本系列文章是在在Fast Planner规划算法系列文章的基础上,展开对Ego Planner的相关介绍,主要包括Ego Planner算法流程和程序框架两部分,主要学习资料是深蓝学院的移动机器人运动规划课程
2024-08-09 08:40:07
3239
1
原创 Ego Planner规划算法(上)——Ego Planner流程介绍
本系列文章用于学习记录Ego-Planner规划算法的相关内容,本系列文章是在在Fast Planner规划算法系列文章的基础上,展开对Ego Planner的相关介绍,主要包括Ego Planner算法流程和程序框架两部分,主要学习资料是深蓝学院的移动机器人运动规划课程
2024-08-09 08:37:14
8105
5
原创 Fast Planner规划算法(四)—— Fast Planner程序框架
fast_planner_node.cpp文件是我们通过launch文件启动Fast Planner程序的接口,也是ROS中Fast Planner的主节点,该文件在完成节点初始化后,会根据参数planner的值选择进行kino_replan或者topo_replan的初始化。kino_replan_fsm.cpp文件中的callKinodynamicReplan函数中,会调用kinodynamicReplan函数,本系列前三篇文章介绍的内容全包含在和这个函数中,即局部的包含前端和后端的规划方法。
2024-08-08 10:06:02
2112
原创 Fast Planner规划算法(三)—— Fast Planner后端之轨迹优化与轨迹优化与时间重分配
本系列文章用于学习记录Fast-Planner规划算法的相关内容,主要学习资料是深蓝学院的移动机器人运动规划课程
2024-08-08 10:04:04
2229
5
原创 Fast Planner规划算法(二)—— Fast Planner后端之贝塞尔曲线与B样条曲线
本系列文章用于学习记录Fast-Planner规划算法的相关内容,主要学习资料是深蓝学院的移动机器人运动规划课程Fast Planner后端的主要任务是基于前端生成的轨迹,生成一条满足其他约束的轨迹,Fast Planner后端包含轨迹优化和迭代时间调整两部分
2024-08-08 10:00:37
2734
1
原创 Fast Planner规划算法(一)—— Fast Planner前端
本系列文章用于回顾学习记录Fast-Planner规划算法的相关内容
2024-07-20 09:43:16
3062
4
原创 无需SLAM建图,直接生成Gazebo仿真环境的二维代价地图的功能包pgm_map_creator适配ROS Noetic编译报错及解决方法
在ROS Noetic中,使用`pgm_map_creator`功能包直接生成Gazebo仿真环境的二维代价地图时,可能会遇到各种编译和运行错误。本篇博客详细解析了在适配ROS Noetic过程中常见的报错及其解决方法,包括Boost文件结构更新、C++版本兼容性、Gazebo函数名变更、链接库缺失以及protobuf文件加载错误。通过逐步排查和修改,如更换头文件路径、调整C++标准、更新CMakeLists.txt文件等,成功解决了这些问题,使得`pgm_map_creator`功能包能够顺利编译和运行。
2024-07-20 09:35:58
1635
4
原创 一文解决图论中有向图、无向图、非负加权图的单源最短路径问题【超详细】【通用模板程序】【深入分析】【无需基础】【c++】
本文致力于提供一种解决图论中所有(或绝大部分)有向图、无向图、非负加权图的单源最短路径问题的通用程序模板,本文提供的模板并不是简单的可行模板,而是经过深入分析解释的一个较高质量和性能的通用程序模版。在每个关键变量存储的数据结构选择上都进行了深入的思考和解释,使得该方面基础较差的小伙伴,依然可以轻松的看懂。最核心的寻路部分封装成函数方便调用。我之前写的路径规划相关的程序基本上都是基于连续空间或者栅格地图的,没有对基于拓扑结构图的寻路算法的实现进行过深入分析,正好借助本文,动手从零开始边实现边分析,实现拓扑结构
2024-06-28 09:30:04
1393
原创 拓扑结构图中寻找最短路径的findpath函数【by慕羽】的函数源码、算法流程概括、函数源码解析
本文是文章《一文解决图论中有向图、无向图、非负加权图的单源最短路径问题【超详细】【通用模板程序】【深入分析】【无需基础】【c++】》的附属文章,用于补充解释,主文章中介绍的解决图论中有向图、无向图、非负加权图的单源最短路径问题的通用程序模板中的核心寻路算法的函数findpath的相关内容,上述主文章的链接如下:
2024-06-28 09:24:55
971
原创 JPS(Jump Point Search)跳点搜索路径规划算法回顾
本篇文章主要回顾一下几年前学的JPS跳点搜索规划算法的相关内容,之前学的时候没有进行概括总结,现在补上
2024-06-17 16:22:48
2578
1
原创 ROS机器人未知环境自主探索功能包explore_lite最全源码详细解析(五)
本系列文章主要针对ROS机器人常使用的未知环境自主探索功能包explore_lite展开全源码的详细解析,并进行概括总结。 本系列文章共包含六篇文章,前五篇文章主要介绍explore_lite功能包中 explore.cpp、costmap_tools.h、frontier_search.cpp、costmap_client.cpp等源码实现文件中全部函数的详细介绍,第六篇文章进行概括总结,包含自主探索功能包explore_lite的简介,实现未知环境自主探索功能的原理及流程总结,效果演示,使用功能包exp
2024-04-11 08:37:21
1119
2
原创 ROS机器人未知环境自主探索功能包explore_lite最全源码详细解析(四)
本系列文章主要针对ROS机器人常使用的未知环境自主探索功能包explore_lite展开全源码的详细解析,并进行概括总结。 本系列文章共包含六篇文章,前五篇文章主要介绍explore_lite功能包中 explore.cpp、costmap_tools.h、frontier_search.cpp、costmap_client.cpp等源码实现文件中全部函数的详细介绍,第六篇文章进行概括总结,包含自主探索功能包explore_lite的简介,实现未知环境自主探索功能的原理及流程总结,效果演示,使用功能包exp
2024-04-10 10:28:43
1099
原创 ROS机器人未知环境自主探索功能包explore_lite总结
本系列文章主要针对ROS机器人常使用的未知环境自主探索功能包explore_lite展开全源码的详细解析,并进行概括总结。 本系列文章共包含六篇文章,前五篇文章主要介绍explore_lite功能包中 explore.cpp、costmap_tools.h、frontier_search.cpp、costmap_client.cpp等源码实现文件中全部函数的详细介绍,第六篇文章进行概括总结,包含自主探索功能包explore_lite的简介,实现未知环境自主探索功能的原理及流程总结,效果演示,使用功能包exp
2024-04-10 09:39:33
3097
3
原创 ROS机器人未知环境自主探索功能包explore_lite最全源码详细解析(三)
本系列文章主要针对ROS机器人常使用的未知环境自主探索功能包explore_lite展开全源码的详细解析,并进行概括总结。 本系列文章共包含六篇文章,前五篇文章主要介绍explore_lite功能包中 explore.cpp、costmap_tools.h、frontier_search.cpp、costmap_client.cpp等源码实现文件中全部函数的详细介绍,第六篇文章进行概括总结,包含自主探索功能包explore_lite的简介,实现未知环境自主探索功能的原理及流程总结,效果演示,使用功能包exp
2024-04-09 08:36:03
1269
原创 ROS机器人未知环境自主探索功能包explore_lite最全源码详细解析(二)
本系列文章主要针对ROS机器人常使用的未知环境自主探索功能包explore_lite展开全源码的详细解析,并进行概括总结。 本系列文章共包含六篇文章,前五篇文章主要介绍explore_lite功能包中 explore.cpp、costmap_tools.h、frontier_search.cpp、costmap_client.cpp等源码实现文件中全部函数的详细介绍,第六篇文章进行概括总结,包含自主探索功能包explore_lite的简介,实现未知环境自主探索功能的原理及流程总结,效果演示,使用功能包exp
2024-04-09 08:34:19
1233
D车模后座支架solidworks及3d打印机识别文件.zip
2020-08-16
博文51单片机汇编语言实验(五)-----AD 0809模数转换和DA0832数模转换实验(附参考代码及注释)附件.zip
2020-07-12
博文51单片机汇编语言实验(四)----串行通信实验(附参考代码及注释)附件.zip
2020-07-12
博文51单片机汇编语言实验(三)-----定时/计数器实验(附参考代码及注释)附件.zip
2020-07-12
博文51单片机汇编语言实验(二)-----中断控制实验(附参考代码及注释)附件.zip
2020-07-12
博文51单片机汇编语言实验(一)-----数字量输入输出(附参考代码及注释)附件.zip
2020-07-12
蓝牙遥控智能小车(纠正本系列第四篇文章介绍的内容加减速异常的错误).zip
2020-06-08
详细介绍如何从零开始制作51单片机控制的智能小车(四)——通过蓝牙模块实现数据传输以及通过手机蓝牙实现对小车运动状态的控制附件.zip
2020-06-07
详细介绍如何从零开始制作51单片机控制的智能小车(四)———通过蓝牙模块实现数据传输以及通过手机蓝牙实现对小车运动状态的控制附件.zip
2020-06-05
用超声波模块和漫反射光电传感器实现小车的自动避障.zip
2020-06-02
详细介绍如何从零开始制作51单片机控制的智能小车(一)———让小车动起来.zip
2020-05-31
博文PID控制器——MATLAB/Simulink仿真以及性能分析附件
2020-05-18
详细介绍如何从0开始写一个数据通信,将数据从单片机发送到上位机的附件.zip
2020-05-09
使用MATLAB完成一个双轮差速驱动的移动机器人“走8字”的仿真附件.zip
2020-04-08
cmake-3.30.3.tar开源包
2024-09-21
Hybrid A * 算法Python源码
2023-08-26
启动move-base时代价地图概率性不出来的带标签相关功能包
2023-07-21
移动机器人路径规划算法-人工势场法MALTAB和Python源码
2023-01-01
PID控制器matlab仿真.zip
2021-03-16
新的A星路径规划matlab文件合集.zip
2020-10-10
动态衡量式A星算法代码中涉及的音乐文件.zip
2020-10-01
动态衡量式A星算法及拐角优化matlab文件.zip
2020-09-30
博文51单片机汇编语言实验(六)-----8255键盘与显示设计(附参考代码及注释)附件.zip
2020-07-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人