- 博客(118)
- 资源 (1)
- 收藏
- 关注
原创 NDT 代价函数
在SLAM(同步定位与地图构建)中,NDT(Normal Distributions Transform)是一种常用的点云配准方法。NDT代价函数用于评估点云配准的质量。
2025-03-06 22:18:38
328
原创 nmcli 命令行工具
nmcli connection shownmcli device statusnmcli device connect <device_name>nmcli device disconnect <device_name>nmcli connection add type ethernet ifname <interface_name> con-name <connection_name> ip4 <ip_address>/<prefix_length> gw4 nmcli connection dele
2025-03-06 22:15:29
310
原创 创建或扩展交换分区Swap File
如果你的系统使用 Swap File(更灵活且不涉及分区调整),可以直接增加 Swap File 的大小。,说明使用 Swap File。
2025-03-06 10:23:27
182
原创 ROS2版本
ROS 发行版是一组有版本号的 ROS 包。它们类似于 Linux 发行版(例如 Ubuntu)。ROS 发行版的目的是让开发人员在相对稳定的代码库上工作,直到他们准备好将所有内容向前推进。因此,一旦发行版发布,我们会尽量将更改限制为核心包(ros-desktop-full 下的所有内容)的错误修复和非破坏性改进。这通常适用于整个社区,但对于“更高级别”的包,规则不那么严格,因此避免破坏性更改的责任落在特定包的维护者身上。
2025-01-13 14:47:21
788
原创 目标:本教程将向您展示如何准备 ROS 2 环境。 教程级别:初学者
在使用之前,需要正确配置 ROS 2 开发环境。这可以通过两种方式完成:在每次打开新 shell 时源化设置文件,或将源命令添加到启动脚本中。如果您在使用 ROS 2 查找或使用包时遇到任何问题,首先应该检查您的环境变量,并确保它们设置为您预期的版本和发行版。
2025-01-13 13:44:27
700
原创 Ubuntu-Install-Ros2
ROS 2 {DISTRO_TITLE_FULL} 的 deb 包目前可用于 Ubuntu Jammy (22.04)。ROS 1 桥可以连接 ROS 1 和 ROS 2 的话题。配置您的环境,创建自己的工作区和包,并学习 ROS 2 核心概念。ROS-Base 安装(基础):通信库、消息包、命令行工具。桌面安装(推荐):ROS、RViz、演示、教程。开发工具:编译器和其他构建 ROS 包的工具。__ 了解如何构建和使用 ROS 1 桥。,但中间件(RMW)可以在运行时替换。通过源以下文件设置您的环境。
2025-01-13 10:51:51
829
原创 ROS 2安装
推荐使用包安装方法,因为它会自动安装必要的依赖项,并且会随着系统更新一起更新。适用于希望修改或明确省略 ROS 2 基础部分的开发人员。从源码构建还可以让您安装最新版本的 ROS 2。从二进制包或源码安装都将得到一个功能齐全且可用的 ROS 2 安装。选择从二进制包安装的 Windows 用户只有二进制存档选项(deb 包仅适用于 Ubuntu/Debian)。适用于一般用途,提供已构建的 ROS 2 安装。如果您计划直接贡献到 ROS 2 核心包,可以安装。在您的平台上运行 ROS 2。
2025-01-13 10:49:09
360
原创 ubuntu NVIDIA 驱动程序安装指南
看起来你的 NVIDIA 驱动程序没有正确安装或运行。nvidia-smi如果问题仍然存在,请确保你的系统已经禁用了 Nouveau 驱动程序,并且内核模块已经正确加载。重启后,再次尝试运行nvidia-smi以检查驱动程序是否正常工作。
2025-01-10 15:44:42
842
原创 使用 journalctl 查询服务日志
是一个强大的工具,用于查询和管理 systemd 日志。以下是一些常用的 命令示例。要查询特定服务的日志,可以使用 选项指定服务名称。例如,查询 的日志:常用 命令显示系统日志:显示当前用户的日志:显示从特定日期之后的日志:显示到特定日期之前的日志:显示当前启动的日志:按优先级显示日志:按模式显示日志输出:跟随日志输出(类似于 ):
2025-01-06 10:25:50
206
原创 Truncated Signed Distance Function: Experiments on Voxel Size
https://www.researchgate.net/publication/268513443_Truncated_Signed_Distance_Function_Experiments_on_Voxel_Size
2024-10-25 17:58:22
107
原创 map_server
图像文件描述世界中每个单元格的占用状态,并使用相应像素的颜色表示。在标准配置中,较白的像素表示空闲,较黑的像素表示被占用,而介于两者之间的像素表示未知。当前实现将地图图像数据中的颜色值转换为三值占用状态:空闲(通常,大多数流行的图像格式都被广泛支持。值得注意的是,PNG 格式在 OS X 上不受支持。此软件包中的工具处理的地图以两个文件的形式存储。YAML 文件描述地图的元数据,并命名图像文件。,可以使用 PNG 的 alpha 通道,任何透明度都将被解释为未知。之间的值来表示占用的细微差别。
2024-10-12 14:58:13
930
原创 Ubuntu USB设备绑定
在 Ubuntu 中,可以通过创建udev规则为 USB 设备设置别名。这样你可以通过自定义的别名访问设备,而不是使用随机分配的设备节点
2024-09-20 12:26:27
532
原创 dwa_local_planner
这些参数分为几类:机器人配置、目标容差、前向仿真、轨迹评分、摆动预防和全局规划。大多数这些参数也可以使用 dynamic_reconfigure 进行更改,以便在运行系统中调整本地规划器。这些注释详细说明了 DWA 本地规划器的各种参数和主题配置,帮助用户了解如何调整和使用该规划器。C++ API 和 ROS API 都是稳定的。可以设置大量的 ROS 参数来自定义。
2024-07-31 10:21:36
529
原创 - Found g2o headers in: /opt/ros/melodic/include/g2o
【代码】- Found g2o headers in: /opt/ros/melodic/include/g2o。
2024-07-27 12:53:48
392
原创 path_tracking_pid
Path Tracking PID 提供一个可调节的 PID 控制回路,将转向和前向速度分离开来。前向速度通过使用目标速度和加速度以开放回路的方式生成。其中一个跟踪选项使用一个长度为 l 的虚拟点(carrot)在机器人前方,以当前全局点(GP)和控制点(CP)之间的横向误差确定转向动作:如果提供的是平滑路径,控制器可以选择直接用 base_link 跟踪路径,而不是滞后于虚拟点。在这种情况下,还会计算一个投影全局点(PGP),由 CP 跟踪。在这种模式下,偏航误差也可以作为控制输入。
2024-07-26 14:31:46
787
原创 Cartographer ROS API 参考文档
此工具对于保持需要单个整体地图的旧节点是有用的,直到新的导航栈可以直接处理 Cartographer 的子地图。是一个简单节点,它从序列化的 Cartographer 状态(pbstream 格式)创建静态占用网格。如果不需要实时更新,这是一个高效的替代方案。例如,这可以用于从单独的节点观察 Cartographer 的状态。支持 2D 和 3D(例如使用轴向旋转的平面激光扫描仪)。支持 2D 和 3D(例如使用轴向旋转的平面激光扫描仪)。所有子地图的列表,包括每个子地图的位姿和最新版本号,跨所有轨迹。
2024-07-18 09:03:51
429
原创 Cartographers Lua配置参考文档
对于一个激光扫描仪,订阅 sensor_msgs/MultiEchoLaserScan 主题“echoes”,对于多个激光扫描仪,订阅“echoes_1”、“echoes_2”等主题。对于一个测距仪,订阅 sensor_msgs/PointCloud2 主题“points2”,对于多个测距仪,订阅“points2_1”、“points2_2”等主题。对于一个激光扫描仪,订阅 sensor_msgs/LaserScan 主题“scan”,对于多个激光扫描仪,订阅“scan_1”、“scan_2”等主题。
2024-07-18 08:57:30
1447
原创 git安装使用gitlab
比如家里一台公司一台那你就把任意一台电脑的这个秘钥。复制到另一台电脑的这个位置,就是保证两台电脑的这个秘钥相同,问题解决!此时在你的用户目录下检查有没有.ssh目录,刚安装应该是没有的。不用任何操作,连续敲击回车键,三下会出现如下图结果。目录中点击鼠标右键,如果出现上面的截图证明你的。根据你的操作系统选择对应的版本,我的是。接下来打开浏览器打开你的gitlab。此时再次查看你的用户目录下回出现。此时找到刚才你的用户目录下。,此时在你的任意一个系统。根据你的系统选择对应的。点Downloads。
2024-07-13 16:18:51
580
原创 graphicsView与svg库
适用于需要复杂图形操作、多个 SVG 项和集成到图形场景中的应用。提供更多的灵活性和控制。QSvgWidget:适用于需要简单显示 SVG 文件的小部件,不需要复杂的图形场景管理。易于使用和集成。选择哪种方式取决于你的应用需求。如果你的应用需要在一个图形视图中管理和操作多个图形项,是更好的选择。如果只需要简单地显示一个 SVG 文件,QSvgWidget更为简便。
2024-07-12 17:24:37
1251
原创 rosdep2.core.CachePermissionError: Failed to write cache file: [Errno 13] Permission denied:
数据库的权限,以便当前用户可以正确地更新和使用。
2024-07-11 09:02:30
294
原创 ros_control hardware_interface硬件接口
在这种情况下,您为机器人定义一个hardware_interface::RobotHW ,它应该提供标准的JointPositionInterface和JointStateInterface,以便它可以重用所有已编写的与JointPositionInterface和JointStateInterface一起使用的控制器。同时,您可以在特定于机器人的界面中公开特定于机器人的功能。这些机器人特定的功能仅适用于专门为您的机器人设计的控制器,但与此同时,您的机器人仍将使用机器人的标准接口与标准控制器配合使用。
2024-05-15 16:35:23
1836
原创 C++进程间通信共享内存
共享内存是一种允许两个或多个进程共享一个给定存储区域的进程间通信(IPC)方法。它是实现进程间数据交换的最快方法之一,因为数据不需要在进程间复制,只需映射到共享内存即可。
2024-05-14 08:59:31
847
原创 转速与线速度
在物理学和工程中,转速是指物体单位时间内的旋转次数。通常用每分钟旋转 的圈数(rpm)来表示转速。转速的计算公式为:转速(rpm)= 60 / 周期时间(s)其中,周期时间是物体完成一次旋转所需要的时间。线速度是指物体上某一点在单位时间内所经过的距离。通常用米每秒(m/s) 来表示线速度。线速度的计算公式为:线速度(m/s)= 圆周距离(m)/ 周期时间(s)转速与线速度的关系 转速和线速度之间存在简单的线性关系。
2024-05-07 11:16:55
6778
原创 在 C++ 代码中处理角度
当使用特定的角度表示形式(0-360 度或 -180 - 180 度(或等效的弧度))并且包裹该角度时,会发生角度包裹。例如,假设角度为 -170,则减去 50 度。数学上加起来是 -220,但实际上应该是 +140 度。例如,假设我有一个 -170 度和 160 度的角度,我想要它们之间的中间位置。但在我提供的示例中,它会导致角度为 -5 度,而实际角度应为 175 度。但首先你需要大量的检查,其次如果你包装两次它就不起作用。第二种普遍存在的情况是两个角度之间的插值。
2024-04-26 10:28:53
399
原创 差速底盘pid
AGV/AMR的运动规划和导航:A*、JPS、D*、LPA*、D* Lite、Theta*、RRT、RRT*、RRT-Connect、Informed RRT*、ACO、PSO、Voronoi的ROS规划器插件实现、PID、LQR、MPC、DWA、APF、Pure Pursuit等ros_motion_planning。
2024-04-24 13:56:01
270
原创 yocs_velocity_smoother速度平滑处理
参考链接:yocs_velocity_smoother/hydro - ROS Wiki
2024-04-24 13:40:57
396
原创 laser_filters
scan_to_scan_filter_chain 是一个非常小的节点,它包装了filters::FilterChain的实例。scan_to_cloud_filter_chain 是一个非常小的节点,它包装了filters::FilterChain和filters::FilterChain的实例。
2024-04-02 09:36:05
1573
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人