机器人理论与实践
文章平均质量分 75
《移动机器人理论与实践》解读
明月满西楼
机器人、机器视觉和人工智能从业人员,主要作品有《机器视觉理论与实践》、《移动机器人理论与实践》、《人工智能理论与实践》。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
在Ubuntu 20.04实现ROS1 Noetic 与 ROS2 Foxy 多版本共存及切换
因为能桥接的前提条件(缺一不可)是:消息/服务在 ROS1 中存在、同名消息/服务在 ROS2 中存在、字段名、字段类型、顺序完全一致、在编译 ros1_bridge 时,两侧都已被 colcon / catkin 正确识别。A. 运行 bridge 时必须先启动 ROS1 的roscore、再启动 ROS2 的/opt/ros/foxy/bin/ros2 daemon start、最后启动 bridge 节点。which ros2 # 应输出 /opt/ros/foxy/bin/ros2。原创 2025-12-24 09:39:01 · 372 阅读 · 0 评论 -
毫米波雷达的测距和测速
但是激光雷达传感器以激光的方式获得点云的深度信息,仍受到光线等外部环境的干扰,对云雾的穿透性不强,在雨天会误识别雨滴而导致传感器失效。毫米波雷达是指工作在毫米波波段探测的雷达,毫米波雷达使用的技术是毫米波(millimeterwave),通常缩写为MMW,波长为1~10毫米,频率为30~300GHz的电磁波。与相机先比,毫米波雷达和激光雷达这两种常用传感器可以获取除了物体纹理信息以外的深度、速度信息,尤其毫米波雷达在3D目标检测、深度估计、分割和点云生成等任务中的应用丰富。原创 2025-07-28 11:55:19 · 507 阅读 · 0 评论 -
MoveIt用于机械臂操作控制的二三五: 两类空间、三种规划以及五个模块
总的来说,关节空间运动更适合于描述机器人的关节运动,不考虑机械臂运动到目标过程的姿态;(1)关节空间运动:在关节空间运动中,运动通过每个关节的角度描述。适用于需要高精度控制末端执行器的运动轨迹的场景,与单点规划(setPoseTarget)不同,它不是简单地规划从起点到终点的运动,而是通过一系列连续位姿序列生成笛卡尔空间的连续路径。具体是在关节空间规划一条从当前关节状态到目标状态的路径,默认使用 OMPL 的 RRTConnect 算法规划,然后执行阶段通过关节插值(例如五次多项式)生成平滑轨迹。原创 2025-07-17 17:14:36 · 1025 阅读 · 0 评论 -
设计机器人运动学控制器和动力学控制器的十八个步骤(控制系统框图)
其中几个模块的作用:全局定位系统,输出机器人\[\left\{ R \right\}\]在世界坐标系\[\left\{ G \right\}\]的位置和姿态\[q = \left( {\begin{array}{*{20}{c}}抗饱和控制器,根据最小转弯半径\[{R_{\min }}\],输出受控输入\[{u_{{\rm{cmd}}}} = \left( {\begin{array}{*{20}{c}}积分器,积分轮速得到位移\[\left( {\begin{array}{*{20}{c}}原创 2025-07-10 15:36:04 · 398 阅读 · 0 评论 -
设计机器人运动学控制器和动力学控制器的十八个步骤(8-13
基于给定参考位姿\[{q_{\rm{r}}}\]和给定输入控制\[{u_{\rm{r}}}\],给出控制向量\[{u_{\rm{d}}} = \left( {\begin{array}{*{20}{c}}\end{array}} \right)\],使跟踪误差\[{q_{\rm{e}}}\]收敛到零,即设计控制律\[{u_{\rm{d}}}\left( \cdot \right)\]。其中斜体符号\[i\]是序列时刻,整正体符号\[{\rm{R}}\]意为参考轨迹(Reference)。原创 2025-07-09 17:34:38 · 846 阅读 · 0 评论 -
设计机器人运动学控制器和动力学控制器的十八个步骤(1-7)
[x\]、$y$和\[\theta $为\[\left\{ R \right\}\]在\[\left\{ G \right\}\]的位置和姿态;\[{v_l}\]、\[{\omega _l}\]、\[{\varphi _l}\]和\[{\tau _l}\]为左轮的线速度、角速度、角度和扭矩,\[{v_r}\]、\[{\omega _r}\]、\[{\varphi _r}\]和\[{\tau _r}\]为右轮的线速度、角速度、角度和扭矩;\[\tau \]为输入,\[\lambda \]为拉格朗日乘子。原创 2025-07-09 13:30:53 · 1756 阅读 · 0 评论 -
机器人的约束以及完整性
容易发现, 如果一阶约束方程\[g = {A_i}\left( {q,t} \right)\],\[\delta {\dot q_i}\]具有可积性, 则上式左端的第一项系数必定为零,从而上式退化为 \[{A_i}\left( {q,t} \right) = 0\],用 \[d{\dot q_i}\]代替 [delta {\dot q_i}\]表示虚位移限制方程,这种在非完整约束方程上进行变分运算的问题并不是确定的。假设加上一些约束后,质点所需的变量减少为\[m\]个,则该系统的自由度数量为\[m\]。原创 2025-07-04 15:49:06 · 687 阅读 · 0 评论 -
一种转向受限型差速机器人的路径规划方法
1,给定目标轨迹 \( (x_{ref}(t), y_{ref}(t)) \) ,需要进行可行性检查,确保合适曲率 \( \kappa(t) \leq 1/R_{min} \)。对于转弯半径存在约束的差速机器人,也就是说只能转动较大的转弯半径,而不能转很小的转弯半径,更不能原地转弯,需要设计一款控制器,实现轨迹跟踪,具体如下。其中 \( R_{min} \) 为最小转弯半径约束,体现为角速度上限。其中 \( \kappa_{ref} \) 为参考轨迹曲率。*B. 基于Lyapunov的控制器。原创 2025-07-02 22:27:02 · 512 阅读 · 0 评论 -
旋转矩阵四元数表示
考虑连续旋转情况,假设:对刚体进行一次欧拉角描述的旋转,记三个欧拉角为\[\left( {{a_1},{a_2},{a_3}} \right)\];这是困难的,例如至少不能简单的将\[\left( {{a_1} + {b_1},{a_2} + {b_2},{a_3} + {b_3}} \right)\]作为要求旋转角度。这正是二维空间旋转公式:$\left( {a' + ib'} \right)$在二维复平面上就是\[\left( {a + ib} \right)\]旋转\[\theta \]角度的位置。原创 2025-07-01 15:23:14 · 678 阅读 · 0 评论 -
关节机械手的两种配置形态
对于深色所示当前状态1,相机在世界的位姿为\[{}_C^W{M_1}\],探头在相机的位姿为${}_T^CM$,根据实线所示,探头在世界的位姿为\[{}_T^W{M_1} = {}_C^W{M_1}{\rm{ }}{}_T^CM\]。对于浅色所示目标状态2,相机在世界的位姿为\[{}_C^W{M_2}\],探头在相机的位姿为${}_T^CM$,根据虚线所示,探头在世界的位姿\[{}_T^W{M_2} = {}_C^W{M_2}{\rm{ }}{}_T^CM\]。图2-9 眼在手的柔性测量。原创 2025-06-26 11:30:34 · 544 阅读 · 0 评论 -
用于描述机器人和机械臂姿态的欧拉旋转角度
记外部坐标系为A、自身坐标系为B,则经过XYZ外旋之后坐标系A至坐标系B的变换即旋转矩阵\[{}_B^A{R_{XYZ}}\]为\[{R_{{X_A}}}\left( \gamma \right)\]、\[{R_{{Y_A}}}\left( \beta \right)\]、\[{R_{{Z_A}}}\left( \alpha \right)\]依次向左乘。为了描述这三个角度的含义,需要明确以下内容:(1)旋转时的参考坐标系,是相对于外部的静态的坐标系还是相对于自身的动态的坐标系;原创 2025-06-26 10:10:54 · 2056 阅读 · 0 评论 -
差速机器人形状与转向能力
具体的,前轮速度方向与轮轴的夹角$\alpha = {\tan ^{ - 1}}\frac{L}{{2R}}$,后轮是$ - a$;以A轮为例,如上图右所示,这个轮子存在纵向分量和横向分量:纵向分速度是由轮胎与支撑面的滚动摩擦产生的,横向分速度是由轮胎与地面的滑动摩擦产生的。核心原因,在于产生于差速控制的滑动转向(Skid Steering)是一个理想化的近似,即一个比较强的假设:在较小邻域内,轮子与支撑面仅有纯滚动而没有侧向滑动。一种是窄而长的,即W<L,如图右。第三章方式,是四轮舵机实现全向控制。原创 2025-06-26 09:54:33 · 376 阅读 · 0 评论 -
机械臂的关节空间规划与笛卡尔空间规划
对于期望状态B的末端位姿${T_{\rm{f}}}$,其对应一组关节角度$\left\{ {\theta _{\rm{f}}^{(i)}} \right\}_{i = 1}^6$。在ABC平面基于不共线三点\[{P_1},{P_2},{P_3}\]可以确定一个圆,记圆心为\[{O_r}\]、半径为\[r\]。(2)基于插补坐标系,对于二维平面${x_r}{o_r}{y_r}$,完成插补坐标\[\left( {{\xi _{i + 1}},{\eta _{i + 1}}} \right)\]。原创 2025-06-25 15:08:18 · 910 阅读 · 0 评论 -
12.3.1 SLAM调试技巧(Tips)
如果没有使用-DCMAKE BUILD TYPE=Release,则默认是未经优化的Debug 版本,基于ROS 的SLAM 框架的地图受限于OpenCV 视觉库,地图最大尺寸为8192x8192,Navi 只运行costmap,此时通过top 指令即可查看负载水平,通过附加参数'1' 查看。可以通过系统负载确定,方法是只打开move_base 节点但是不发送导航目标,这样。定距离,则调大 wheel_diameter 参数,反之调小。大于指定角度,则调大 wheel_track 参数,反之调小。原创 2023-06-19 16:59:06 · 357 阅读 · 0 评论
分享