
ROS入门
文章平均质量分 78
作为一名从 Java 架构转向 ROS 和机器学习的新手,我将在这里分享我的学习过程和心得。通过实战案例,逐步深入 ROS(机器人操作系统)开发的各个环节,探索机器人编程与机器学习的结合。无论你是初学者还是有一定基础,希望我们能一起成长,共同掌握这些前沿技术。
可乐泡枸杞·
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【ROS2入门】如何在本机上连接到虚拟机上的 ROS
在机器人开发中,ROS(Robot Operating System)是一个非常流行的框架。很多开发者选择在虚拟机上安装 ROS 以便于管理和实验。然而,虚拟机的磁盘空间往往有限,为了更好地利用资源,我们可以选择在本机上运行 Python 代码,并通过网络与虚拟机上的 ROS 进行通信。原创 2024-12-13 15:52:27 · 701 阅读 · 0 评论 -
【入门 ROS2】:带你走进机器人操作系统的世界
ROS(Robot Operating System,机器人操作系统)是一个为机器人软件开发提供的开源框架。它不仅仅是一个操作系统,还包括硬件抽象、底层设备控制、常用功能实现、消息传递以及包管理等功能。自2007年推出以来,ROS迅速成为了机器人领域的重要工具。原创 2024-12-13 10:46:49 · 2678 阅读 · 0 评论 -
【入门 ROS2】ROS TF发布与监听
TF是ROS中的一个库,它允许用户跟踪多个坐标系之间的相对变换。给定时刻t,某个点在不同坐标系中的位置是什么?如何将传感器数据从一个坐标系转换到另一个坐标系?原创 2024-12-13 13:18:31 · 1063 阅读 · 0 评论 -
【入门 ROS2】ROS通信方式概述
在ROS(Robot Operating System)中,通信机制是其核心功能之一。ROS提供了多种通信方式,以满足不同场景下的需求。本文将详细介绍ROS中的几种主要通信方式,包括话题(Topics)、服务(Services)、动作(Actions)和参数服务器(Parameter Server)。原创 2024-12-13 13:11:01 · 725 阅读 · 0 评论 -
【入门 ROS2】ROS中的客户端、服务端、发布者、订阅者、话题及其关系
它提供了硬件抽象、设备驱动、库、可视化工具、消息传递和包管理等功能。为了更好地理解ROS中的一些核心概念,如客户端、服务端、发布者、订阅者和话题,以及它们之间的关系,我们以一个机械臂的应用为例来进行详细说明。在这个示例中,我们有一个服务端节点,它提供移动机械臂的服务。客户端节点可以调用这个服务,以移动机械臂到指定位置。为了更好地理解这些概念之间的关系,我们来看一下机械臂应用中的具体示例。在这个示例中,我们有一个发布者节点,它发布机械臂的位置数据到。另一个订阅者节点订阅这个话题,以获取机械臂的位置数据。原创 2024-12-13 11:46:45 · 699 阅读 · 0 评论 -
【入门 ROS2】ros常用命令
清理已经关闭但仍在ROS Master中注册的节点。:发布消息到某个话题(一次性或以固定频率)。:将参数服务器中的参数保存到YAML文件中。:显示某个话题的信息,包括发布者和订阅者。:打印某个话题的消息内容到终端。:打印指定数量的消息后退出。:以CSV格式打印消息内容。:列出当前运行的所有节点。:列出当前存在的所有话题。:显示某个话题的发布频率。:列出当前存在的所有服务。:调用某个服务并传递参数。原创 2024-12-13 11:40:32 · 1108 阅读 · 0 评论 -
【入门 ROS2】发布者Publisher
发布者,顾名思义就是起到发布消息的作用。这里的消息,可以是下位机传给上位机的传感器信息,然后通过上位机打包封装好发送到订阅了该话题的订阅者;也可以是上位机的数据做了运算后打包封装好发送给订阅该话题的订阅者。原创 2024-12-13 11:26:46 · 748 阅读 · 0 评论 -
【入门 ROS2】常用命令与工具
Launch文件是ROS中用于启动多个节点的XML文件。它可以同时启动多个节点,并且可以设置参数、重映射话题等。原创 2024-12-13 11:19:35 · 1305 阅读 · 0 评论 -
【入门 ROS2】项目文件结构(Python)
每个功能包都需要一个setup.py文件来指定如何安装该包。下面我们详细介绍setup.py文件的各个部分。setup.py是Python安装脚本,用于定义如何安装该包。包信息:包括包名、版本、描述等。作者信息:包括作者姓名和邮箱。包含路径:指定源代码所在的目录。安装脚本:指定要安装的脚本及其安装路径。package.xml是每个功能包必须包含的元数据文件,用于描述包的信息和依赖关系。包名:唯一标识该包。描述:简要描述该包的功能。作者:包的作者信息。维护者:负责维护该包的人。原创 2024-12-13 11:14:01 · 744 阅读 · 0 评论 -
【入门 ROS2】项目文件结构(C++)
每个功能包都需要一个CMakeLists.txt文件来指定如何构建该包。下面我们详细介绍CMakeLists.txt文件的各个部分。CMakeLists.txt是CMake构建系统的配置文件,用于定义项目的构建过程。在ROS中,CMakeLists.txt用于指定如何编译源代码、链接库和生成可执行文件。项目信息:包括项目名称和版本。包含路径:指定头文件所在的目录。库路径:指定库文件所在的目录。可执行目标:定义要生成的可执行文件。链接库:指定要链接的库。原创 2024-12-13 11:10:33 · 1466 阅读 · 0 评论