自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(657)
  • 资源 (1)
  • 收藏
  • 关注

原创 【思考】技术复合型人才使用之道

目录:1-前言 2-复合型人才用人之道 3-技术复合型人才在智能装备研发领域的优势(BingChat撰写功能)1. 前言很多用人单位并不会使用技术复合型人才或者创新复合型人才,或者说用不好这类人才,最终导致了人才流失。首先这类人才有一两个精通专业,多个入门专业。如果让这类人才同时做两个或者多个专业底层的工作(这不叫重用),他们往往不能胜任入门专业的岗位,不能发挥他们的多专业复合能力。假如把这类人...

2024-01-05 17:54:28 924

原创 【仿真动画】仿真动画(Simulation Animation) vs 仿真(Simulation -模拟 )

概述仿真动画报价一般都在每分钟一万以上,很多人容易混淆仿真动画与仿真。本文将借助AI工具,根据机器人与自动化领域、机械设计领域、工业工程领域分析了仿真与动画的区别。之后从难易度、仿真度角度对比了仿真与动画的区别,最后给出了“不同领域的仿真需要不同的专业技术和算法能力”的结论。机器人与自动化产线领域 仿真与动画的区别在机械设计领域,仿真与动画的区别在工业工程领域,仿真与动画的区别根据以上AI的陈述,...

2023-12-25 18:00:51 1195

原创 【ROS2】高级:安全-部署指南

目标:了解将安全工件部署到生产系统时的最佳实践。教程级别:高级时间:20 分钟内容背景先决条件一般准则构建部署场景生成 Docker 镜像理解 compose 文件运行示例检查容器背景典型的部署场景通常涉及将容器化的应用程序或软件包发送到远程系统。在部署启用安全性的应用程序时应特别注意,要求用户考虑打包文件的敏感性。遵循 DDS 安全标准 https://www.omg.org/s...

2024-07-21 12:06:59 194

原创 【ROS2】高级:安全-设置访问控制

目标:限制节点可以使用的主题。教程级别:高级时间:20 分钟内容背景修改permissions.xml签署策略文件启动节点使用模板背景在继续之前,请确保您已完成设置安全教程。权限非常灵活,可以用来控制 ROS 图中的许多行为。在本教程中,我们演示了一项仅允许在默认chatter主题上发布消息的策略。这将防止,例如,在启动侦听器时重新映射主题或将相同的安全飞地用于其他目的。为了...

2024-07-21 10:23:27 322

原创 【ROS2】高级:安全-检查网络流量

目标:捕获和检查原始 ROS 2 网络流量。教程级别:高级时间:20 分钟内容概述先决条件运行演示安装tcpdump启动说话者和听者显示未加密的发现数据包显示未加密的数据包启用加密显示加密的发现数据包显示加密数据包概述ROS 2 通信安全是关于保护节点之间的通信。之前的教程启用了安全性,但你如何真正判断流量是否被加密?在本教程中,我们将通过捕获实时网络流量来展示加密和未加密流量...

2024-07-20 22:53:37 429

原创 【ROS2】高级:安全-确保跨机器的安全性

目标:使两台不同的机器安全地通信。教程级别:高级时间:5 分钟内容背景创建第二个密钥库复制文件启动节点背景在继续之前,请确保您已完成设置安全教程。之前的教程使用了同一台机器上的两个 ROS 节点,通过本地主机接口发送所有网络通信。让我们将这种情况扩展到涉及多台机器,因为此时身份验证和加密的好处会变得更加明显。假设在上一个演示中创建密钥库的机器具有主机名Alice,并且我们还希望...

2024-07-20 22:27:32 524

原创 【ROS2】高级:安全-理解安全密钥库

目标:探索位于 ROS 2 安全密钥库中的文件。教程级别:高级时间:15 分钟内容背景安全工件位置公钥材料私钥材料域治理政策安全飞地参加测验!背景在继续之前,请确保您已完成设置安全教程。sros2包可以用来创建启用 ROS 2 安全性所需的密钥、证书和策略。然而,安全配置非常灵活。对 ROS 2 安全密钥库的基本理解将允许与现有的 PKI(公钥基础设施)集成,并根据组织政策管...

2024-07-20 21:36:25 884

原创 【ROS2】高级:安全-设置安全性

目标:使用sros2设置安全性。教程级别:高级时间:15 分钟内容背景安装从源代码安装选择替代中间件运行演示1. 为安全文件创建一个文件夹2. 生成密钥库3. 生成密钥和证书4. 配置环境变量5. 运行talker/listener演示参加测验!了解更多!背景sros2包提供了在 DDS-Security 之上使用 ROS 2 的工具和说明。安全功能已在各个平台(Li...

2024-07-20 12:23:25 167

原创 【ROS2】高级:模拟器-Gazebo-设置机器人仿真(Gazebo)

这套教程将教你如何使用 ROS 2 配置 Gazebo 模拟器。目标:使用 Gazebo 和 ROS 2 启动仿真教程级别:高级时间:5 分钟目录先决条件ROS 2Gazebo快速检查更多资源摘要便条这些说明是关于当前的 Gazebo https://gazebosim.org/home (以前称为 Ignition),而不是 Gazebo Classic。https://clas...

2024-07-19 14:58:21 637

原创 【ROS2】高级:模拟器-Webots-Ros2Supervisor 节点

目标:使用默认的监督机器人扩展接口,命名为Ros2Supervisor。教程级别:高级时间:10 分钟目录背景先决条件Ros2Supervisor时钟主题Clock topic导入一个 Webots 节点删除一个 Webots 导入的节点记录动画摘要背景在本教程中,您将学习如何启用Ros2Supervisor节点,该节点通过创建额外的服务和主题来增强界面,以便与仿真...

2024-07-18 11:56:01 617

原创 【ROS2】高级:模拟器-Webots-设置重置处理程序

目标:使用重置处理程序扩展机器人模拟,以便在按下 Webots 的重置按钮时重新启动节点。教程级别:高级时间:10分钟内容背景先决条件简单情况的重置处理程序(仅限控制器)重置多个节点的处理程序(无需关闭)重置需要节点关闭的处理程序概括背景在本教程中,您将学习如何使用 Webots 在机器人模拟中实现重置处理程序。Webots 重置按钮将世界恢复到初始状态并重新启动控制器。它很...

2024-07-18 11:25:46 377

原创 【ROS2】高级:模拟器-Webots-设置机器人模拟(高级)

目标:用障碍物避让节点扩展机器人模拟。教程级别:高级时间:20 分钟目录背景先决条件任务1 更新my_robot.urdf2 创建一个 ROS 节点以避免障碍物3 更新附加文件4 测试避障代码摘要下一步背景在本教程中,您将扩展教程第一部分中创建的软件包:设置机器人模拟(基础)。目的是实现一个使用机器人距离传感器避开障碍物的 ROS 2 节点。本教程重点介绍使用具有webot...

2024-07-18 10:12:31 706

原创 【ROS2】高级:模拟器-Webots-设置机器人模拟(基础)

目标:设置机器人仿真并通过 ROS 2 控制它。教程级别:高级时间:30 分钟目录背景先决条件任务1 创建包结构2 设置模拟世界3 编辑my_robot_driver插件4 创建my_robot.urdf文件5 创建启动文件6 编辑其他文件7 测试代码摘要下一步背景在本教程中,您将使用 Webots 机器人模拟器来设置和运行一个非常简单的 ROS 2 仿真场景。webot...

2024-07-17 21:09:57 472

原创 【ROS2】高级:模拟器-Webot-安装(Ubuntu)

可以与 ROS 2 一起使用的几种先进的机器人模拟器,如 Gazebo、Webots 等。与 turtlesim 不同,它们依赖于基于物理的机器人、传感器、执行器和物体模型,提供相当真实的结果。因此,您在模拟中观察到的内容与将 ROS 2 控制器转移到真实机器人时的结果非常接近。这套教程将教你如何使用 ROS 2 配置不同的模拟器。Webots这套教程将教你如何配置带有 ROS 2 的 Webot...

2024-07-17 13:49:01 680

原创 【ROS2】高级:如何使用 ros2_tracing 跟踪和分析应用程序

本教程展示了如何使用 ros2_tracing https://github.com/ros2/ros2_tracing来跟踪和分析 ROS 2 应用程序。在本教程中,应用程序将是 performance_test。https://gitlab.com/ApexAI/performance_test概述本教程涵盖:运行和跟踪performance_test运行使用 tracetools_a...

2024-07-17 11:41:33 586

原创 【ROS2】高级:从包文件读取 (C++)

目标:在不使用 CLI 的情况下从包中读取数据。教程级别:高级时间:10 分钟目录背景先决条件任务1 创建一个包裹2 编写 C++ 读取器3 构建并运行摘要背景rosbag2不仅提供ros2bag命令行工具。它还提供了一个 C++ API,用于从您自己的源代码中读取和写入包。这使您可以在不播放包的情况下读取包中的内容,这有时会很有用。先决条件您应该在常规的 ROS 2 设...

2024-07-17 10:56:42 573

原创 【ROS2】高级:从节点记录一个包(Python)

目标:从您自己的 Python 节点记录数据到一个包。教程级别:高级时间:20 分钟目录背景先决条件任务1. 创建一个包2. 编写 Python 节点3. 建立并运行4. 从节点记录合成数据5. 从可执行文件记录合成数据摘要背景rosbag2不仅提供ros2bag命令行工具。它还提供了一个 Python API,用于从您自己的源代码中读取和写入 bag。这使您可以订阅一个主...

2024-07-16 22:18:31 603

原创 【ROS2】高级:从节点记录一个包(C++)

目标:将数据从您自己的 C++ 节点记录到一个包中。教程级别:高级时间:20 分钟目录背景先决条件任务1. 创建一个包2. 编写 C++ 节点3. 建立并运行4. 从节点记录合成数据5. 从可执行文件记录合成数据摘要背景rosbag2不仅提供ros2bag命令行工具,还提供了一个 C++ API,用于从您自己的源代码中读取和写入 bag 文件。这使您可以订阅一个主题,并在对...

2024-07-16 21:41:12 811

原创 【ROS2】高级:改进的动态发现

目标:本教程将展示如何使用改进的动态发现配置。教程级别:高级时间:15 分钟目录概述配置参数示例概述默认情况下,ROS 2 将尝试自动查找同一子网上所有主机上的所有节点。但是,可以使用以下选项来控制 ROS 2 的发现范围。配置参数ROS_AUTOMATIC_DISCOVERY_RANGE:控制 ROS 节点尝试相互发现的距离。有效选项是:SUBNET是默认值,对于基于 DDS ...

2024-07-16 14:38:45 515

原创 【ROS2】高级:解锁 Fast DDS 中间件的潜力 [社区贡献]

目标:本教程将展示如何在 ROS 2 中使用 Fast DDS 的扩展配置功能。教程级别:高级时间:20 分钟目录背景先决条件在同一个节点中混合同步和异步发布创建具有发布者的节点创建包含配置文件的 XML 文件执行发布者节点创建一个包含订阅者的节点执行订阅者节点示例分析使用其他 FastDDS 功能与 XML限制匹配订阅者的数量在主题内使用分区配置服务和客户端使用服务和客户端创建节点为服...

2024-07-16 14:24:16 1553

原创 【ROS2】高级:实现自定义内存分配器

目标:本教程将展示在编写 ROS 2 C++ 代码时如何使用自定义内存分配器。教程级别:高级时间:20 分钟目录背景编写分配器编写一个示例主程序将分配器传递到进程内管道测试和验证代码TLSF 分配器本教程将教您如何为发布者和订阅者集成自定义分配器,以便在您的 ROS 节点执行时从不调用默认堆分配器。本教程的代码可在此处获得。https://github.com/ros2/demos/b...

2024-07-15 16:32:42 645

原创 【ROS2】高级:使用 Fast DDS 发现服务器作为发现协议 [社区贡献]

目标:本教程将展示如何使用 Fast DDS Discovery Server 发现协议启动 ROS 2 节点。教程级别:高级时间:20 分钟目录背景快速 DDS 发现服务器 v2先决条件运行此教程设置发现服务器启动监听节点启动对话节点展示发现服务器执行可视化工具rqt_graph高级用例服务器冗余备份服务器发现分区ROS 2 内省守护进程的相关工具没有虚拟光...

2024-07-15 12:57:04 1180

原创 【ROS2】高级:启用主题统计 (C++)

目标:启用 ROS 2 主题统计topic statistics并查看输出统计数据。教程级别:高级时间:10 分钟目录背景先决条件任务1 编写启用统计信息的订阅者节点1.1 检查代码1.2 CMakeLists.txt2 构建并运行3 观察已发布的统计数据摘要相关内容背景这是一个简短的教程,介绍如何在 ROS 2 中启用主题统计,并使用命令行工具(ros2topic)查看发布的...

2024-07-15 09:09:55 896

原创 【ROS2】中级:RViz-构建自定义 RViz 显示

背景在 RViz 中有许多类型的数据已经有现有的可视化。然而,如果有一种消息类型尚未有插件来显示它,那么有两种选择可以在 RViz 中查看它。将消息转换为另一种类型,例如visualization_msgs/Marker。编写自定义 RViz 显示。使用第一个选项,会有更多的网络流量和数据表示的限制。它也快速且灵活。后一种选择在本教程中进行了说明。虽然需要一些工作,但可以带来更丰富的可视化...

2024-07-14 22:57:17 598

原创 【ROS2】中级:RViz- RViz 用户指南

RViz 是机器人操作系统 (ROS) 框架的 3D 可视化工具。RViz 用户指南https://docs.ros.org/en/jazzy/Tutorials/Intermediate/RViz/RViz-User-Guide/RViz-User-Guide.html构建自定义 RViz 显示器https://docs.ros.org/en/jazzy/Tutorials/Intermed...

2024-07-14 21:44:44 816

原创 【ROS2】中级:URDF-生成 URDF 文件

生成 URDF 文件目标:学习如何导出 URDF 文件教程级别:中级时间:5 分钟大多数机器人专家在团队中工作,这些团队通常包括开发机器人 CAD 模型的机械工程师。与其手工制作 URDF,不如从许多不同的 CAD 和建模程序中导出 URDF 模型。这些导出工具通常由熟悉特定 CAD 程序的个人开发。下面您将找到各种 CAD 和 3D 建模软件系统的可用 URDF 导出器列表。ROS 核心维护者...

2024-07-14 17:44:44 909

原创 【ROS2】中级:URDF-使用 URDF 与 robot_state_publisher

目标:模拟一个用 URDF 建模的行走机器人,并在 Rviz 中查看。教程级别:中级时间:15 分钟目录背景先决条件任务1 创建一个包2 创建 URDF 文件3 发布状态4 创建启动文件5 编辑 setup.py 文件6 安装软件包7 查看结果摘要背景本教程将向您展示如何建模一个行走机器人,将状态发布为 tf2 消息,并在 Rviz 中查看模拟。首先,我们创建描述机器人组装的 URD...

2024-07-14 17:07:55 465

原创 【ROS2】中级:URDF-使用 Xacro 清理您的代码

目标:学习一些使用 Xacro 减少 URDF 文件代码量的技巧教程级别:中级时间:20 分钟目录使用 Xacro常量数学宏简单宏参数化宏实际使用腿宏到目前为止,如果你在家里按照这些步骤设计自己的机器人,你可能已经厌倦了做各种数学运算来正确解析非常简单的机器人描述。幸运的是,你可以使用 xacro 包来简化你的生活。它做了三件非常有用的事情。常量简单数学宏在本教程中,我们...

2024-07-14 16:25:39 1023

原创 【ROS2】中级:URDF-添加物理和碰撞属性

目标:学习如何为连杆(link-被翻译为链接)添加碰撞和惯性属性,以及如何为关节添加关节动力学。教程级别:中级时间:10 分钟目录碰撞物理性质惯性接触系数关节动力学其他标签下一步在本教程中,我们将学习如何为您的 URDF 模型添加一些基本的物理属性以及如何指定其碰撞属性。碰撞到目前为止,我们只用一个子元素visual指定了我们的链接,这个子元素定义了机器人看起来的样子(这并...

2024-07-14 12:30:49 697

原创 【ROS2】中级:URDF-构建一个可移动的机器人模型

目标:学习如何在 URDF 中定义可移动关节。教程级别:中级时间:10 分钟目录头部 Head夹爪Gripper抓取臂 Gripper Arm其他类型的关节指定位姿下一步在本教程中,我们将修改上一个教程中制作的 R2D2 模型,使其具有可移动的关节。在之前的模型中,所有的关节都是固定的。现在我们将探索另外三种重要的关节类型:连续关节、旋转关节和棱柱关节。确保在继续之前已安装所有必备...

2024-07-14 11:57:38 955 1

原创 【ROS2】中级:URDF-从头开始构建可见机器人模型

URDF(统一机器人描述格式)是一种用于在 ROS 中指定机器人几何和组织的文件格式。从头开始构建可见机器人模型构建一个可移动的机器人模型添加物理和碰撞属性使用 Xacro 清理您的代码使用 URDF 与robot_state_publisher生成 URDF 文件从头开始构建visual机器人模型目标:学习如何构建一个可以在 Rviz 中查看的机器人visual模型教程级别:中级时间:20...

2024-07-14 11:44:22 955

原创 【ROS2】测试

为什么要进行自动化测试?以下是我们应该进行自动化测试的许多重要原因之一:您可以更快地对代码进行增量更新。ROS 有数百个包,具有许多相互依赖关系,因此很难预见一个小变化可能引起的问题。如果您的更改通过了单元测试,您可以更有信心地认为您没有引入问题——或者至少问题不是您的错。您可以更自信地重构代码。通过单元测试可以验证您在重构时没有引入任何错误。这让您摆脱了对变化的恐惧,获得了这种美妙的自由!它导...

2024-07-13 14:58:46 756

原创 【ROS2】中级:tf2-使用带有 tf2_ros::MessageFilter 的已标记数据类型

目标:学习如何使用tf2_ros::MessageFilter处理标记的数据类型。教程级别:中级时间:10 分钟目录背景任务1. 编写 PointStamped 消息的广播节点1.1 检查代码1.2 编写启动文件1.3 添加入口点1.4 构建2. 编写消息过滤器/监听器节点2.1 检查代码2.2 添加依赖项2.3 CMakeLists.txt2.4 构建3 运行摘要背景本教...

2024-07-13 14:33:09 815

原创 【ROS2】中级:tf2-四元数基础知识

目标:学习 ROS 2 中四元数使用的基础知识。教程级别:中级时间:10 分钟目录背景先决条件四元数的组成部分ROS 2 中的四元数类型四元数运算1. 首先在 RPY 中思考,然后转换为四元数2 应用四元数旋转3 反转四元数4 相对旋转摘要背景四元数是一种表示方向的四元组,比旋转矩阵更简洁。四元数在分析涉及三维旋转的情况时非常高效。四元数广泛应用于机器人学、量子力学、计算机视觉和 ...

2024-07-13 11:35:13 731

原创 【ROS2】中级:tf2- 调试

目标:学习如何使用系统方法调试与 tf2 相关的问题。教程级别:中级时间:10 分钟目录背景调试示例1 设置和启动示例2 查找 tf2 请求3 检查框架4 检查时间戳摘要背景本教程将引导您完成调试典型 tf2 问题的步骤。它还将使用许多 tf2 调试工具,例如tf2_echo、tf2_monitor和view_frames。本教程假设您已完成学习 tf2 教程。调试示例1...

2024-07-12 22:56:10 539

原创 【ROS2】中级:tf2-时光旅行 (C++)

目标:了解 tf2 的高级时间旅行功能。教程级别:中级时间:10 分钟目录背景时间旅行用于 lookupTransform() 的高级 API检查结果摘要背景在前面的教程中,我们讨论了 tf2 和时间的基础知识https://docs.ros.org/en/jazzy/Tutorials/Intermediate/Tf2/Learning-About-Tf2-And-Time-C...

2024-07-12 21:56:47 799

原创 【ROS2】中级:tf2- 使用时间 (C++)

目标:学习如何在特定时间获取变换,并使用lookupTransform()函数等待 tf2 树上的变换可用。教程级别:中级时间:10 分钟目录背景任务1 更新侦听器节点2.修复监听器节点3 检查结果摘要背景在之前的教程中,我们通过编写 tf2 广播器和 tf2 监听器重新创建了 turtle 演示。我们还学习了如何向变换树添加新帧,并了解了 tf2 如何跟踪坐标帧的树。这个树会随...

2024-07-12 20:40:21 395

原创 【ROS2】中级:tf2-添加框架(C++)

目标:学习如何向 tf2 添加额外的框架。教程级别:中级时间:15 分钟目录背景tf2 树任务1 编写固定帧广播器1.1 检查代码1.2 CMakeLists.txt1.3 编写启动文件1.4构建1.5 运行2 编写动态帧广播器2.1 检查代码2.2 CMakeLists.txt2.3 编写启动文件2.4 构建2.5 运行摘要背景在之前的教程中,我们通过编写 tf2 广播器...

2024-07-12 14:39:22 834

原创 【ROS2】中级:tf2-添加框架(Python)

目标:学习如何向 tf2 添加额外的框架。教程级别:中级时间:15 分钟目录背景tf2 树任务1 编写固定帧广播器1.1 检查代码1.2 添加入口点1.3 编写启动文件1.4 构建1.5 运行2 编写动态帧广播器2.1 检查代码2.2 添加入口点2.3 编写启动文件2.4 构建2.5 运行摘要背景在之前的教程中,我们通过编写 tf2 广播器和 tf2 监听器重新创建了乌龟演示...

2024-07-12 14:12:57 766

原创 【ROS2】中级:tf2-编写监听器 (C++)

目标:学习如何使用 tf2 获取帧变换。教程级别:中级时间:10 分钟目录背景先决条件任务1.编写监听节点2.更新启动文件3.构建4.运行摘要背景在之前的教程中,我们创建了一个 tf2 广播器来发布乌龟的姿态到 tf2。在本教程中,我们将创建一个 tf2 监听器以开始使用 tf2。先决条件本教程假设您已经完成了 tf2 静态广播器教程(C++)https://docs.ros....

2024-07-12 12:12:47 960

opencv 旅行商 模拟退火算法SA

旅行商 模拟退火算法SA

2022-05-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除