![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ROS2
文章平均质量分 66
PIBOT
这个作者很懒,什么都没留下…
展开
-
48.在ROS中实现local planner(1)- 实现一个可以用的模板
本文简单实现了一个的插件,显然实际没啥用,不过可以作为一个模板,基于该模板实现自己的算法。后面我们将基于该模板实现可用的局部规划控制。本文代码见。原创 2023-02-17 23:48:15 · 1403 阅读 · 0 评论 -
PIBOT移植ROS2记录(8)-launch文件的三种格式
1. launch文件格式我们知道ROS1个launch文件是xml格式的,ROS2在前面的文章中我们都是使用python格式实现的,事实上ROS2也是支持xml格式的,而且ROS2还支持yaml格式,参考官方文档分别做了实现1.1 python格式直接可以参考之前的实现bringup_launch.py1.2 xml格式实现:bringup_launch.xml对比ROS1 XML格式和ROS2 XML格式,可以看到有些许的不同点我们直接实现后对比2个文件的差别(左边为ROS1的launch原创 2022-05-07 23:48:54 · 517 阅读 · 0 评论 -
PIBOT移植ROS2记录(9)-键盘与遥控手柄控制
1. 键盘控制同ROS1一样我们只需要安装相应的包后就可以使用teleop_twist_keyboard包发出cmd_vel topic控制我们的机器人小车1.1 安装sudo apt-get install ros-galactic-teleop-twist-keyboard1.2 运行测试➜ ros2 launch pibot_bringup bringup_launch.py➜ ros2 run teleop_twist_keyboard teleop_twist_keyboar原创 2022-05-09 00:38:19 · 1780 阅读 · 1 评论 -
PIBOT移植ROS2记录(7)-launch的参数
launch的参数前文实现的launch较简单,对比ROS1的launch确实了参数传入的功能<launch> <arg name="baudrate" default="$(env PIBOT_DRIVER_BAUDRATE)" doc="pibot driver baudrate"/> <arg name="publish_odom_tf" default="true" doc="pub tf"/> <arg name="use_原创 2022-05-07 23:16:19 · 500 阅读 · 0 评论 -
PIBOT移植ROS2记录(6)-imu的移植
1. imu的移植同之前的类似我们,新增sensor_msg的头文件#include <sensor_msgs/msg/imu.hpp>#iinclude <sensor_msgs/msg/magnetic_field.hpp>修改定义imu和mag的pub定义以及msg定义ros::Publisher ----> rclcpp::Publisher<sensor_msgs::msg::Imu>::SharedPtrros::Publish原创 2022-05-06 23:09:49 · 1006 阅读 · 0 评论 -
PIBOT移植ROS2记录(5)-参数及动态设置
1. pid参数调节的topic1.1 移植pid的输入输出作为topic分别输出,这个只需要创建一个int类型的pub即可void BaseDriver::init_pid_debug() { if (config_.out_pid_debug_enable) { const char* input_topic_name[MAX_MOTOR_COUNT] = {"motor1_input", "motor2_input", "motor3_input", "motor4_input"};原创 2022-05-04 22:10:19 · 1321 阅读 · 1 评论 -
PIBOT移植ROS2记录(4)-odom与tf
1. odom topic修改头文件#include <nav_msgs/Odometry.h>—> #include <nav_msgs/msg/odometry.hpp>修改定义ros::Publisher---->rclcpp::Publisher<nav_msgs::msg::Odometry>::SharedPtrnav_msgs::Odometry---->nav_msgs::msg::Odometry 创建pub对象adve原创 2022-05-04 21:09:47 · 642 阅读 · 0 评论 -
PIBOT移植ROS2记录(3)-新增launch文件
1. 新增launch文件参考https://gitee.com/pibot/ros2_tutorials/blob/master/src/cpp_parameters/launch/cpp_parameters_launch.py不同于ROS1的xml格式的launch文件,ROS2的launch文件直接是一个python文件对照ROS1的launch<node name="pibot_driver" pkg="pibot_bringup" type="pibot_driver" outpu原创 2022-05-04 20:25:21 · 656 阅读 · 0 评论 -
PIBOT移植ROS2记录(2)-添加Node与cmd_vel
前文添加了简单的测试保证编译通过,本文将开始移植实现一个控制下发1. base_driver的移植首先把base_driver.cpp添加到pibot_driver中编译diff --git a/CMakeLists.txt b/CMakeLists.txtindex c1a7568..ea8fa95 100644--- a/CMakeLists.txt+++ b/CMakeLists.txt@@ -10,6 +10,7 @@ find_package(ament_cmake REQUIR原创 2022-05-04 01:25:02 · 1150 阅读 · 0 评论 -
PIBOT移植ROS2记录(1)-环境搭建
pibot_bringup提供了ROS1的交互的node以及相关工具,我们通过移植pibot_bringup至ROS2,学习相关的ROS2开发1. 环境搭建前文RO2的安装与简单测试跑了一个简单的demo,具体环境搭建不再赘述2. 创建包我们创建ROS2的包,再拷贝之前的代码,一步步修复编译异常mkdir -p ~/pibot_ros/ros_ws/srcros2 pkg create --build-type ament_cmake pibot_bringup --dependencies r原创 2022-05-03 23:36:41 · 482 阅读 · 0 评论 -
RO2的安装与简单测试
ROS2已经出了好几个版本,本文尝试安装最新的版本并跑通一个简单的测试安装ROS2我们直接按照官方的文档使用安装包安装(我们修改了使用国内的源加快安装速度)# http://wiki.ros.org/ROS/Installation/UbuntuMirrorssudo sh -c 'echo "deb https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu/ focal main" > /etc/apt/sources.list.d/ros-lates原创 2022-04-29 09:22:04 · 1671 阅读 · 0 评论