大致学习了前面的 micro-ROS 之后,我们就可以开始动手实践了。那么我们现在就使用 micro-ROS 来让我们的小车动起来。其作用就是让我们的小车的控制器——ESP32,能够接入我们的 ROS 机器人系统,方便我们的编程和使用。 移动机器人 硬件设备 使用的移动小车,需要两个电机和一个驱动模块,驱动模块使用的是 L298N,用 PWM 来控制电机转速和方向。 配置文件 那么还是一
四驱四转移动机器人 web移动端显示 在进行四驱四转机器人控制过程中,由于使用手柄进行进行控制,为了更加清晰的观测到摄像头采集的数据,经过查阅资料 ,以及古月居泡泡论坛的提问,本人将使用手机作为移动端,使用手机Web端查看USB摄像头图像,搭配手柄支架,将手机固定的方式。 硬件如下 Xbox手柄一个,手机一个,移动机器人(ros2 foxy版本) 步骤如下: 1、摄像头画面获取 在
上一篇已经讲述了如何创建一个micro-ROS节点,那么之后便是需要使用Topic、Service等进行节点间的通讯。下面将会对Publisher- Subscriber,Server-Client的详细用法进行讲解。 Publisher 若想使用 Publisher 进行通信,那么需要进行初始化 Publisher,之后便可以使用 Publisher 进行消息的发送。使用 Publisher
旭日X3派连接蓝牙与控制小海龟 非常感谢古月居平台推出的高校合作计划,我有幸能够使用旭日X3派进行学习和制作毕业设计。本周使用旭日X3派作为主控芯片,与手柄进行连接,通信,并控制小海龟进行运动。 硬件准备 XBOX one 手柄一个,旭日X3派 (ubuntu20.04 ros2 foxy) 旭日X3派蓝牙开启 开发板蓝牙功能默认没有开启,需要执行 /usr/bin/startb
简介:接触过ROS1的同学对launch肯定不陌生,在ROS1中,我们常用launch实现node和master同时启动、多节点同时启动配置等功能,ROS2中的launch也是用于多节点启动、配置功能,但是在使用方法上有了很多不同,ROS1只支持xml格式的.launch文件配置,ROS2在兼容xml的基础上,还支持yaml和python格式,而python格式的launch是我的学习重点
简介:ROS2提供了ros2 bag命令,可以记录指定主题的数据到文件中,也可以将记录下的内容再发布出来,相当于是数据的回放,除了通过命令行的方式实现数据记录以外,也可以通过编程实现主题数据记录以及而合成的主题数据记录 目录 1、ros2 bag命令行工具 1.1 ros2 bag record 1.2 ros2 bag info 1.3 ros2 bag play 2、ros2 b
官方文档的示例可以在这里找到 Programming with rcl and rclc 这篇博客主要讲述 micro-ROS C API,也就是 rclc 的一些基础用法。它的主要理念与 ROS2 相同(publishers, subscriptions, services, timers, …),它们甚至依赖于相同的实现,因为 micro-ROS C API 基于 ROS 2客户端支持库(r
使用 ROS2 进行图像传输 尽管在想要实现这个功能之前,我就了解到使用ROS2进行无线图像传输会消耗较大的资源,且很难达到实时显示的效果,但是仍然想尝试去测试一下,看看最终呈现的效果;下面是我在测试ROS2发布未压缩和压缩图像的记录。 发布未压缩图像 地平线官方提供了mipi_cam功能包,可发布sensor_msgs::msg::Image图像消息,通过以下命令启动: ros2 lau
本文记录Ubuntu 22.04虚拟机上安装ROS2的过程以及遇到的问题。 1. 确定Ubuntu和ROS版本 Ubuntu和ROS2存在一个版本的对应关系,具体可以看官网的这个页面:REP 2000 – ROS 2 Releases and Target Platforms (ROS.org)其中ROS2的humble版本(即截止到2022年10月初的最新版本)要求如下: 所以 Ubu
简介:参数也是ROS2系统中很重要的一项功能,主要是用来对节点进行配置,一般用在调试过程中,通过命令行的方式修改节点的一些配置,用以辅助调试,另外节点参数也支持导入和导出,调试好的参数可以导出到本地保存,再次启动时可以加载调试好的参数直接使用。 目录 1、问题描述 2、解决思路 3、编码实现 4、命令行操作示例 1、问题描述 小车自动行驶时,需要对道
在上一个博客已经搭建好旭日 X3 派的远程开发环境和 esp32 的开发环境。那么如何建立旭日 X3 派与 esp32 之间的通信呢?这里就要引出 micro-ROS, Micro-ROS是一个轻量级的ROS2(Robot Operating System 2)实现,旨在为嵌入式系统和物联网设备提供ROS2功能。ROS2是一款用于机器人和智能系统开发的开源操作系统,但是它的大小和复杂性往往使得它难
简介:ROS2底层通信机制有主题(Topic)和服务(Service)两种,两种通信机制可以解决大部分问题,但是还有一些问题用这两种机制解决起来比较复杂,以无人驾驶虚拟仿真环境中的应用举例,在十字路口或者丁字路口要实现转弯,因为在路口并没有给出转弯车道线,车辆转弯将没有任何依据,通过主题或者服务可以实现强制指挥小车转弯,但是什么时候结束强制指挥又是一个问题,像这类情况,我们就可以通
第十八届中国研究生电子设计竞赛“地平线”企业命题 X3用户手册 旭日X3派用户手册 机器人平台用户手册 ip说明 旭日X3派的ip设置为192.168.1.10虚拟机的ip设置为192.168.1.11PC的ip设置为192.168.1.12 旭日X3派资源介绍: 接口说明: 40PIN拓展接口: 配置静态IP vi /etc/network/i
ROS2学习笔记(九)— ROS2命令行操作常用指令总结(二) 简介:在第六、七、八章节中介绍了自定义消息(Message)、服务(Service)、动作(Action)的实现过程,另外还介绍了参数的应用,在学习过程中我们穿插了部分命令行操作用来调试或者验证相关功能,这一节详细介绍这些内容相关的命令行操作,通过虚拟仿真环境下已经实现的功能来验证。 消息、服务、动作在ROS2中统一称之为接口(i
显示状态信息 在实际项目开发中,我们往往需要从机器人上得到各种数据,然后进行可视化显示;这一步在ROS2中一般通过发布和订阅自定义消息实现; 关于ROS2如何自定义消息我这里就不再赘述了,可以直接参考官方文档;在 OriginBot 的功能包里就有一个自定义的消息包:originbot_msgs,在这个包里定义了一个msg文件和三个srv文件; "msg/OriginbotStatus.msg
[TOC] 背景:虽然ROS本身就是一种网络通讯,但是一个项目需要不同的人进行配合,考虑到不同模块的接口对齐,有时基础的TCP和UDP通讯也是一些必要的通讯手段,例如上位机的开发如果需要适配多种环境,此时ROS接口或许就不太适用了,另外也不能要求每一个合作的小伙伴都会ROS开发对吧。此时在机器人的开发过程中,就要留出TCP通讯的接口,本文主要探讨一下Python下如何进行TCP通讯,以及如何
在Ubuntu18.04上安装ros2的环境,ros2的常用命令:播放包、录制包等 1 添加密钥和ros2下载 2 更新源和安装ros-eloquent-desktop及其依赖 3 配置环境 3.1 添加环境变量 3.2 如何让ros1和ros2切换使用 3.3 安装自动补全命令 3.4 安装ros2bag命令 4 测试ros2的安装环境 5 安装ros1的桥
最近报名了古月居的【 高校合作计划 】活动,拿到了一个旭日 X3 派来开发。由于最近换了台 Macbook ARM 芯片,官网的用户手册都是基于 Windows 环境,在 MacOS 中或多或少会有写问题。那么用这篇博客记录一下使用旭日 X3 派开发中的记录和遇到的一些问题(持续更新)。 环境搭建 开发前必不可少的是东西要全,活动赠送的只有单个主板,所以需要购入一些硬件设备。 硬件条件
把ros2录制的bag包转换为ros1格式的bag包 1 安装ros2和ros1之间通信的库包 2 把录制的ros2的bag包转换ros1格式的bag包 2.1 启动ros2到ros1的桥 2.2 使用ros2播放ros2的bag包 2.3 使用ros1录制包 2.4 转换之后的结果 2.5 其他注意事项 1 安装ros2和ros1之间通信的库包 安装ro
环境:ubuntu20.04 ,ros-foxy(ros2),vscode 背景:项目需要,一直折腾把ros1下面的包升级到ros2版本.以下纯属个人查找资料摸索,自我理解所得,有错误的地方,望大佬们不吝赐教. 1.消失的句柄 ros1里面有成员句柄,里面还分各种命名空间啥的,然后跟话题,参数息息相关,而在ros2里面就没有句柄成员了,个人感觉是可采用节点指针来取代其功能. ros1句柄
第三方账号登入
看不清?点击更换
第三方账号登入
QQ 微博 微信