- 博客(582)
- 收藏
- 关注

原创 【机械臂模块项目实战】机械臂轨迹规划、跟踪控制方向
认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!本文先对机械臂轨迹规划、跟踪控制方向做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容复杂机器人系统(人形机器人、多足机器人和移动物体的机械臂等)【防盗标记–盒子君hzj】的运动规划轨迹和控制是富有挑战性的问题,机器人不仅需要时刻控制多个关节的自由度,还需要处理和环境物体之间的接触、摩擦以及碰撞,这些环境交互给机器人系统带来了非常复杂的运动约束。
2022-11-08 19:16:14
3976

原创 【局部规划模块项目实战】基于Frenet车道线坐标系,结合DP探索、QP优化实现无人车速度轨迹生成并优化
本文先对基于Frenet车道线坐标系,采用DP探索、QP优化进行速度解耦局部规划做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。
2022-11-06 23:22:44
2539
4

原创 【局部规划模块曲线算法】路径曲线插值、拟合和逼近的区别
全局路径由一系列路径点构成,这些路径点包含空间位置信息,也可以包含姿态信息,但不需要与时间相关。轨迹则在路径的基础上加入了时间约束,轨迹点是一种特殊形式的路径点,它在路径点的基础上加入了时间信息。本文先对路径插值与抽稀篇做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容在选择插值、拟合或逼近方法时,需要考虑路径的用途、所需的精度以及计算资源的限制。对于需要高精度的应用场景,如精密制造或医疗手术,插值方法可能是首选。
2022-11-06 17:52:23
1089
1

原创 【局部规划模块曲线算法】曲线平滑介绍
本文先对轨迹平滑问题做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容(1)适合给移动机器人运动的路径【满足运动学,高阶平滑】(2)高阶的运动学不能够突变的【至少三阶的加速度不能突变,最好四阶的jerk和五阶的snap也不能突变】(3)在转弯的地方不会停下来(4)加减速均衡,节省能量(5)节省时间的。
2022-04-15 16:12:58
5066
3

原创 【行为决策模块项目实战】解耦控制--多控制器管理与切换的方法(附C++代码)
[请添加图片描述](https://img-blog.csdnimg.cn/c11300d9e4fe421e9070f474a468d1db.jpeg)本文先对多控制器管理与切换的方法做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容VERTICAL_VEL, //垂直速度PID控制器VERTICAL_POS, //垂直位置PID控制器HORIZONTAL, //水平速度PID控制器YAW, //航向角yaw位置逻辑控制器。
2021-12-06 14:37:41
944
1

原创 【控制模块项目实战】车线控底盘开发
无人车&无人机导航合集本文先对无人车线控底盘开发做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容线控系统的主要作⽤是减少复杂的机械传动机构,使整体质量更轻,降低油耗,降低制造成本,控制更简洁同时便于增加计算机辅助控制。线控技术包括很多部分,如线控转向,线控制动,【防盗标记–盒子君hzj】线控油⻔和线控悬架等都属于线控技术范畴。
2021-11-06 16:53:07
3675
2

原创 【规控模块项目实战】决策规划控制方向的架构部署
无人车&无人机导航合集提示:以下是本篇文章正文内容我认为,任务决策模块比较偏业务层了,具体的根据机器人/无人驾驶业务层得需求进行设计根据业务量的复杂程度,选用不同的任务决策工具和方法,实现既能满足现在的业务需求,又能又一定的拓展性全局路径规划算法难度不算复杂,一般根据高精度地图、栅格地图或者其他地图格式,从出发点到目标点之间的纯几何路径规划,无关时间序列,无关车辆动力学(位置速度加速度),得到一条可通行的路径。
2021-10-24 16:35:51
2907
2
原创 【无人机实战】第一章:Ego_planner的算法框架流程与原理
除了构建ESDF地图需要耗费较长时间之外,在建图的时候只能看见障碍物的表面,如下图中的右图所示,看不见障碍物的后面/内部,在优化的过程中会使用ESDF去产生一个排斥轨迹远离障碍物,在下图所示的例子中,上面的障碍物将轨迹往下推,下面的障碍物将轨迹往上推,会出现轨迹卡在障碍物中的情况。如果没有发生碰撞,则继续迭代优化轨迹,如果发生了碰撞,就需要针对这个碰撞,加一个新的推力的cost,此时优化问题发生了变化,不能再针对原问题继续优化下去,需要针对新问题重新开始优化。
2025-04-04 10:10:01
18
原创 【无人机项目实战】第二章:fast_planner的后端轨迹优化
B样条是一种轨迹的表达方式,就像用多项式来表示轨迹也是一种轨迹的表达方式。B样条通过控制点来表示轨迹,如下图中的轨迹上的圆点所示,通过拉动控制点就可以使轨迹发送变化。有了目标函数各个组成部分的具体表达式,总的目标函数的表达式也就知道了,然后使用优化算法的求解器,就可以求解该优化问题了,得到使得目标函数值最小的那个控制点的位置x。Fast Planner中的B样条曲线的表达式,在给定时间区间后,唯一的变量就是控制点的位置。只改变时间分配,不改变控制点的位置,生成轨迹的几何情况是不会发生变化的。
2025-04-04 10:09:36
17
原创 【无人机项目实战】第一章:fast_planner前端Hybrid A* 算法生成路径
然后判断该节点是否在待拓展的开集合中,若不在,则将其加入到开集合中,记录该节点的g值以及父节点,并计算该节点的f值,该节点的评估结束,若已经在开集合中了,则判断该节点上面算出的新g值是否大于原有的g值,若是则不需要进行处理(该节点原有的方案更优),继续评估下一个节点,若不是,则说明该节点的现有方案更优,若不在闭集合中且为可行节点,则继续进行该节点的评估,计算该节点的g值,即其父节点n c的g值加上该节点对应的小轨迹的代价值。将该节点的父节点更新为n c,g值更新为新的g值,并更新计算该节点的总代价f值。
2025-04-04 10:08:52
17
原创 【全覆盖算法】(二)代码实现:Boustrophedon Cellular Decomposition Path Planning区域分解
移动机器人规划控制合集(这个比较全面):https://blog.youkuaiyun.com/qq_35635374/article/details/142830798本文先对Boustrophedon Cellular Decomposition Path Planning区域分解做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容1、构造珊格地图2、计算in、out、middle事件3、计算slice4、进行区域分解
2025-04-04 10:08:14
18
原创 【全覆盖算法】栅格地图实现布氏单元分解算法+栅格地图实现牛耕Boustrophedon Cellular Decomposition Path Planning
本文先对做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。
2025-04-04 10:07:53
18
原创 【全覆盖算法】活力值栅格地图的全覆盖路径规划
最后,使用稀疏后的新地图cellMat_来初始化活力值地图neuralizedMat_,如果新地图中某个栅格处有障碍物,则其对应的活力值地图中存储一个较大的负数-100000,如果没有障碍物,则活力值地图中对应的位置存储的活力值为50/j,其中j是其所在的列数,这种活力值设置模式使得同一列无障碍物点的初始活力值相同,而随着所在列编号的增加,活力值依次降低,在后续的步骤中,机器人会倾向于向活力值高的区域移动,这样初始化活力值,将引导机器人按列形成从弓字型的覆盖路径,且避开障碍物。
2025-04-04 10:07:34
20
原创 【全覆盖算法】通过图形学实现在凸多边形内生成覆盖路径
本文先对做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。
2025-04-04 10:07:10
18
原创 【全覆盖算法】梯形区域分解实现避障路径规划&全覆盖路径规划
本文先对做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。
2025-04-04 10:06:49
17
原创 【全覆盖算法】Boustrophedon Cellular Decomposition(BCD)原理及实现
本文先对做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。
2025-04-04 10:06:26
18
原创 【全覆盖算法】相关Coverage Path Planning的论文整理
本文先对做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。
2025-04-04 10:05:49
16
原创 【全覆盖算法】静态/动态全覆盖路径规划相关技术研究
神经元通过动作电位来传递信号。信号的传递和产生与细胞膜两侧的电势差相关,该电势差称作膜电位。神经元处于休息状态,其膜电位保持恒定,被称为静息电位。在动作电位到达后,膜电位会发生变化并最终衰减回静息电位。如果变化是正的,则是兴奋性信号。如果变化是负的,则是抑制性信号。
2025-04-04 10:05:30
20
原创 【全覆盖算法】Trapezoidal Decomposition(TCD)梯形分解算法
本文先对做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。
2025-04-04 10:05:05
24
原创 【全覆盖算法】(三)代码实现:Boustrophedon Cellular Decomposition Path Planning用珊格地图生成每个cell的覆盖路径
移动机器人规划控制合集(这个比较全面):https://blog.youkuaiyun.com/qq_35635374/article/details/142830798本文先对Boustrophedon Cellular Decomposition Path Planning区域分解做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容1、构造珊格地图2、计算in、out、middle事件3、计算slice4、进行区域分解
2025-04-04 10:04:38
17
原创 【全局路径规划模块全覆盖算法】(一)代码实现:Boustrophedon Cellular Decomposition Path Planning整体代码框架
移动机器人规划控制合集(这个比较全面):https://blog.youkuaiyun.com/qq_35635374/article/details/142830798本文先对Boustrophedon Cellular Decomposition Path Planning整体代码框架做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容
2025-04-04 10:03:28
24
原创 路径优化策略--分段拼接处理与滑动窗口处理
窗口滑动的方式,并对每个窗口内的固定数量路径点进行平滑。避免分段拼接的折角,避免全局路径分段。Savitzky-Golay数字滤波器实现路径平滑,具体参考我以下的博客。路径的多项式拟合算法,具体参考我以下的博客。
2025-04-03 14:10:39
35
原创 【多项式实现路径的插值与平滑】分段三次多项式矩阵形式求解
3次样条曲线(Cubic Spline), 是一种通过一系列三次多项式来逼近给定数据点集的方法。每个多项式定义在两个相邻的数据点之间,且满足在数据点处及其一阶导数和二阶导数都连续的条件。
2025-04-03 14:09:43
32
原创 【多项式求解相关】
三次、五次多项式插值在工程实践中很常见。求解多项式的系数最直接的方法是根据端点处的约束条件,列出线性方程组,再写成矩阵方程AX=B,然后用通用的方法(如高斯消元法、LU分解等)解矩阵方程。 本博文利用matlab符号计算的功能,给出三次、五次多项式插值的系数解析解(不需要解矩阵方程),并尽可能减少运算量。代码运行效果展示我们定义了QuinticPolynomial , 它实现了5次多项式的参数方程的参数求解.我们需要给出多项式在起点和终点的状态约束求解之后, QuinticPolynomi
2025-04-03 14:09:16
36
原创 最小二乘与残差的区别
最小二乘估计具有良好的统计性质,如在一定条件下,它是无偏的、一致的,并且在所有线性无偏估计中具有最小方差(即它是BLUE,Best Linear Unbiased Estimator)。在方差分析(ANOVA)中,残差平方和是总平方和(Total Sum of Squares, TSS)的一部分,用于分析模型中不同因素对因变量的影响。具体来说,它最小化的是误差的平方和,即残差平方和(RSS)。残差是优化目标的一部分:残差是计算残差平方和的基本单元,而残差平方和是最小二乘法优化的目标函数。
2025-04-03 14:08:20
344
原创 ROS2导航算法框架,组合实现具体业务
在 Nav2 中,行为树用于多种任务和状态的管理,例如导航、避障、目标选择等。:常见的优化算法如梯度下降、非线性优化等,用于平滑路径和调整路径,使其更适合于实际的移动。:基于优化的方法,通过考虑机器人的运动学约束、目标路径和障碍物位置来生成平滑的轨迹。:用于局部路径规划,基于机器人当前的速度和加速度限制,动态地生成可行的运动窗口。:用于避开障碍物的简单算法,基于目标的吸引力和障碍物的排斥力生成导航路径。:是 A* 的一个变种,能够生成更平滑的路径,避免不必要的转弯。
2025-04-03 12:45:43
36
原创 【路径平滑--线性回归优化】Savitzky-Golay数字滤波器
最小二乘估计具有良好的统计性质,如在一定条件下,它是无偏的、一致的,并且在所有线性无偏估计中具有最小方差(即它是BLUE,Best Linear Unbiased Estimator)。最小二乘法的数学意义在于它提供了一种系统的方法来最小化观测值与模型预测值之间的误差,从而得到模型参数的最优估计。在统计学和机器学习中,通过最小化残差平方和,可以找到最佳的模型参数,使得模型对数据的拟合最优。使用最小二乘的思想,为了使拟合效果最好,需要使残差的平方和最小,则需要使得所有拟合系数的一阶偏导为零。
2025-04-03 12:44:59
406
原创 【路径平滑】基于无约束的非线性最小二乘优化问题的路径平滑器Constrained Smoother
最小二乘估计具有良好的统计性质,如在一定条件下,它是无偏的、一致的,并且在所有线性无偏估计中具有最小方差(即它是BLUE,Best Linear Unbiased Estimator)。最小二乘法的数学意义在于它提供了一种系统的方法来最小化观测值与模型预测值之间的误差,从而得到模型参数的最优估计。在方差分析(ANOVA)中,残差平方和是总平方和(Total Sum of Squares, TSS)的一部分,用于分析模型中不同因素对因变量的影响。具体来说,它最小化的是误差的平方和,即残差平方和(RSS)。
2025-04-03 12:44:04
117
原创 【多项式实现路径的插值与平滑】分段三次多项式插值与平滑
其中,t i 必须单调递增,i = 0 , 1 , . . . , n。给定n + 1 n+1n+1个点序列( t i , p i ),利用。
2025-04-03 12:30:44
17
原创 【多项式实现路径的插值与平滑】分段五次多项式插值与平滑
给定n + 1个点序列( t i , p i ),利用分段五次多项式插值,使得拼接而成的分段多项式p(t)经过所有点序列。其中,t i必须单调递增,i = 0 , 1 , . . . , n。
2025-04-03 12:30:21
17
原创 【多项式实现路径的插值与平滑】分段七次多项式插值与平滑
给定n + 1个点序列( t i , p i ),利用分段七次多项式插值,使得拼接而成的分段多项式p(t)经过所有点序列。其中,t i必须单调递增,i = 0 , 1 , . . . , n。
2025-04-03 12:29:55
16
原创 【手写下降优化算法训练】梯度下降优化算法与模型训练
线性模型(linear model)是希望通过一个直线的形式来描述模式。线性模型的目标函数如下所示:线性模型的假设函数绘制出来,其实就是一条直线。如h(x)=5+2∗x的图形就是一个具体的例子。
2025-04-03 12:27:28
561
原创 (6)【生成图形相关运算】代码解析下
我们先考虑圆心在原点的圆的生成,对于中心不是原点的圆,可以通过坐标的平移变换获得相应位置的圆。// ROS的右手坐标系。
2025-04-03 12:23:14
17
原创 (3)【直线的相关运算】
判断点是否在线段上,就只需要,多判断一个点积(a · b = |a| |b| cosθ),如果PA和PB的夹角为180,则计算结果<0(因为cos π = -1);当t = 0时,P等于A;在计算上,满足叉积=0,则在直线上,再加上计算点积是否<0, 则可以判断是否在AB之间。u_last_to_pos到向量u_last_to_next上的投影长度L=两向量的数量积/u_last_to_next的模长。计算向量u_last_to_next和向量u_last_to_pos,在计算两向量的数量积(点乘),
2025-04-03 12:05:08
16
原创 (2)【相关向量运算】
点乘的结果表示向量A在向量B方向上的投影与向量B模的的乘积,可表示两个向量的夹角大小程度,向量叉乘是这这两个向量平面上,垂直生成新的向量,大小是两个向量构成四边形的面积,改变向量模大小,不代编向量方向,可以用于线段的延长或缩短。本质上就是两点距离公式。
2025-04-03 12:01:09
20
原创 【图形学】根据离散点拟合直线(附代码实现)
如下图,红色点L i ( x i , y i , z i ) 为给定的一系列三维空间点,根据给定三维空间点,拟合直线方程(3),也就是计算L 0和v ,使得在某种“距离”的度量下,达到最佳的直线拟合效果。可以得到结论:待拟合的直线经过一个点L 0 ,该点的坐标为所有给定点的坐标平均值。如下图所示,一旦确定直线的单位方向向量v \bm{v}v,则直线的方程便确定。f的最小值为矩阵S最小特征值对应的特征向量。直线方向向量v的求解问题转化为矩阵最小特征值对应的特征向量的求解问题!拟合得到迫近的直线方程。
2025-02-09 16:23:49
1224
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人