turtlebot4机器人-实操教程

这篇具有很好参考价值的文章主要介绍了turtlebot4机器人-实操教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

准备:下载Ubuntu20.04,网线一根,路由器设置 2.4G、5G 双频段发射

一、PC 端在ubuntu20.04下安装ROS2 Galactic(如已安装可跳过)

终端输入:

wget http://fishros.com/install -O fishros && bash fishros  

安装成功后可以尝试一些示例。在一个终端中,运行 C++:

ros2 run demo_nodes_cpp talker

在另一个终端源中,运行 Python:

ros2 run demo_nodes_py listener

应该出现talker 在终端显示它正在发布消息,并且listener 在终端显示我听到了这些消息。这验证了 C++和 Python API 是否正常工作。

turtlebot4 mtr灯不亮,机器人turtlebot4 mtr灯不亮,机器人

二、连接机器人

2.1 自主充电开机:

拿出充电桩将机器放入充电桩中,机器人进入自主充电,下方按纽会发出白光且伴随声音,这意味机器人已开始启动。

开机可能出现的情况:led屏幕与信号灯均不亮的情况如图1。

解决方法1:离开充电桩,长按关机键关机,过两分钟再次开机,可多次尝试直至led与信号灯正常亮起。

解决方法2:有线连接后,在树莓派终端输入sudo systemctl restart turtlebot4。

五个指示灯中通讯灯和电池指示灯不亮、电池电量指示为 0如图2。

turtlebot4 mtr灯不亮,机器人

图 1

turtlebot4 mtr灯不亮,机器人

图 2 正常情况

2.2 安装相关依赖

 $ sudo apt update && sudo apt install -y \

  build-essential \

  cmake \

  git \

  python3-colcon-common-extensions \

  python3-flake8 \

  python3-pip \

  python3-pytest-cov \

  python3-rosdep \

  python3-setuptools \

  python3-vcstool \

  wget

##添加CycloneDDS配置

$ echo "export CYCLONEDDS_URI='<CycloneDDS><Domain><General><DontRoute>true</></></></>'" >> ~/.bashrc

##apt安装相关包

$ sudo apt update

$ sudo apt install ros-galactic-turtlebot4-description \

ros-galactic-turtlebot4-msgs \

ros-galactic-turtlebot4-navigation \

ros-galactic-turtlebot4-node \

ros-galactic-turtlebot4-robot \

ros-galactic-turtlebot4-desktop \

ros-galactic-turtlebot4-simulator \

ros-galactic-irobot-create-nodes

##源码安装相关包

$ mkdir -p ~/ros2_tb4_ws/src

$ cd ~/ros2_tb4_ws/src

$ git clone -b galactic  https://ghproxy.com/https://github.com/turtlebot/turtlebot4.git

$ git clone -b galactic  https://ghproxy.com/https://github.com/iRobotEducation/create3_sim.git

$ git clone -b galactic  https://ghproxy.com/https://github.com/iRobotEducation/irobot_create_msgs.git

$ git clone -b galactic  https://ghproxy.com/https://github.com/turtlebot/turtlebot4_robot.git

$ git clone -b main  https://ghproxy.com/https://github.com/luxonis/depthai-ros

$ git clone -b main  https://ghproxy.com/https://github.com/luxonis/depthai-ros-examples.git

$ git clone -b galactic  https://ghproxy.com/https://github.com/turtlebot/turtlebot4_desktop.git

$ git clone -b galactic  https://ghproxy.com/https://github.com/turtlebot/turtlebot4_simulator.git

$ cd ~/ros2_tb4_ws

$ rosdep install --from-path src -yi

$ source /opt/ros/galactic/setup.bash

$ colcon build --symlink-install

$ echo "source ~/ros2_tb4_ws/install/local_setup.bash" >> ~/.bashrc

2.3 网络连接

2.3.1 用户PC连接路由器

路由器插电,用户 PC 连接路由器 5G 频段网络如果路由器还未设置双频段发射,则在连接后转入路由器登录页面进行设置。

turtlebot4 mtr灯不亮,机器人

图 3 设置路由器

注意不要勾选 5G 优选,会使得频段混合发射,连接后则会出现下图所示的情况。

turtlebot4 mtr灯不亮,机器人

图 4 连接混合频段会出现ip显示但是两个指示灯依旧不亮且电池电量指示为0

2.3.2 用户 PC 使用网线连接 TB4 的树莓派

turtlebot4 mtr灯不亮,机器人

2图 5 使用网线连接计算机和tb4的树莓派

设置用户 PC 有线网固定IP 为 192.168.185.5

turtlebot4 mtr灯不亮,机器人

图 6 设置pc有线网固定ip

用户 PC 开终端输入 ssh ubuntu@192.168.185.3,密码是 turtlebot4

turtlebot4 mtr灯不亮,机器人

图 7 有线ssh进树莓派

(树莓派设置与PC相同网络)在树莓派的终端输入

sudo wifi.sh -s 'wifi名称' -p 'wifi密码' && sudo reboot
turtlebot4 mtr灯不亮,机器人

图 8 给树莓派联网

等待树莓派重启,用户PC 再开终端输入ssh ubuntu@192.168.185.3,密码是turtlebot4(网线还未拔出,还可继续用有线 ssh)

树莓派的终端输入 ifconfig,wlan0 有IP 地址即可,记录这个 ip

(即树莓派的ip地址)

turtlebot4 mtr灯不亮,机器人

图 9 树莓派查看无线ip

用户 PC 终端输入 ssh ubuntu@ip,这里的 ip 就是上一步记录下来的 ip,ssh 能进入即可无线连接,用户与树莓派处于同一网络。

2.3.3 配置Create3底座网络

按住 Create3 灯环两边的按钮,直至灯环变蓝色,用户 PC 搜索以create 开头的wifi 并连接。

turtlebot4 mtr灯不亮,机器人

图 10 连接到creat3的WiFi

在用户 PC 浏览器中进入 192.168.10.1

点击 connect 页面,在下方输入自己所用路由器 2.4G 频段网络的名称及密码,其他默认即可。

turtlebot4 mtr灯不亮,机器人

图 11 creat3连接2.4G频段网络

连接成功后灯环灯闪一下黄色变白色,连接失败灯环会闪黄色。

turtlebot4 mtr灯不亮,机器人

图 12 连接网络灯环连接状态

以上联网步骤操作均完成后, 可通过查看路由器网站地址判断是否树莓派与create3底座均在同一局域网中,注意底座需要连接2.4G频段网络

turtlebot4 mtr灯不亮,机器人

图 13 查看树莓派与底座是否均联网

3.实机测试

3.1 启动键盘控制程序

ros2 run teleop_twist_keyboard teleop_twist_keyboard

注意:TB4的底盘不支持持续后退操作

turtlebot4 mtr灯不亮,机器人
  1. 对于配有手柄的标准版,可以手柄连接控制移动
  2. 联网后标准版五个指示灯均亮起,ui 面板上显示 ip 和电量指示示数,也可以按按钮 3、4 上下进行菜单选择,1 是选择,2 是返回。

turtlebot4 mtr灯不亮,机器人

图 14 成功联网之后的面板

3.2 A1激光雷达检测

ros2 launch turtlebot4_viz view_model.launch.py

turtlebot4 mtr灯不亮,机器人

图 15 查看模型及传感器数据

3.3 OAK深度相机检测

ros2 launch turtlebot4_viz view_model.launch.py

turtlebot4 mtr灯不亮,机器人

图 16 查看OAK相机所拍摄画面

3.4 turtlebot4-SLAM

3.4.1 同步建图

启动同步建图

ros2 launch turtlebot4_navigation slam_sync.launch.py

再开终端,启动可视化界面

ros2 launch turtlebot4_viz view_robot.launch.py

再开终端,启动键盘控制

ros2 run teleop_twist_keyboard teleop_twist_keyboard

turtlebot4 mtr灯不亮,机器人

图 17 slam与rviz扫描机器人周围环境

turtlebot4 mtr灯不亮,机器人

注:周围红黑部分表示激光雷达所扫描的障碍物

控制机器人移动开辟地图

保存地图,这将生成map_name.yaml 和 map_name.pgm文件

ros2 run nav2_map_server map_saver_cli -f map

查看生成的地图

eog ~/map_name.pgm

如果没有地图输出,在终端输入

ros2 launch turtlebot4_bringup rplidar.launch.py
3.4.2 异步建图

启动异步建图

ros2 launch turtlebot4_navigation slam_async.launch.py

再开终端,启动可视化界面

ros2 launch turtlebot4_viz view_robot.launch.py

再开终端,启动键盘控制

ros2 run teleop_twist_keyboard teleop_twist_keyboard

保存地图,这将生成map_name.yaml 和 map_name.pgm文件

ros2 run nav2_map_server map_saver_cli -f map

查看生成的地图

eog ~/map_name.pgm
3.4.3 自主导航

运行导航程序,map.yaml为加载的地图名。

 ros2 launch turtlebot4_navigation nav_bringup.launch.py slam:=off localization:=true map:=map.yaml

启动可视化界面

ros2 launch turtlebot4_viz view_robot.launch.py

地图加载完成后,使用RViz2左上侧工具栏的2D Pose Estimate 工具进行初始化机器人在地图的位姿

单击该工具,然后单击并拖动地图上的箭头以大致确定机器人的位置和方向

设置完位姿后,使用RViz2左上侧工具栏的Nav2 Goal 工具设置导航目标点

演示视频:

【TurtleBot4-自主导航】 TurtleBot4-自主导航_哔哩哔哩_bilibili

3.4.4 边建图边导航

启动建图程序

ros2 launch turtlebot4_navigation nav_bringup.launch.py slam:=sync

启动可视化界面

使用RViz2左上侧工具栏的Nav2 Goal 工具设置导航目标点

演示视频:

【TurtleBot4-slam_toolbox边建图边导航】 TurtleBot4-slam_toolbox边建图边导航_哔哩哔哩_bilibili

3.5 自主充电/断电

  1. 执行自动充电操作时,TB4与充电桩的距离过远则无法进行自动充电
  2. 据测试,机器人与充电桩的距离在1米左右时,TB4能稳定接收到充电桩的红外信号
  3. 使用底盘按钮启动自动充电
  4. 按下开关键旁的1按钮,TB4会执行自动充电操作;按下开关键旁的2按钮,TB4会执行脱离充电桩操作

turtlebot4 mtr灯不亮,机器人

使用命令行启动自动充电

查看/dock话题内容

$ ros2 topic echo /dock

header:

  stamp:

    sec: 1660797682

    nanosec: 847721287

  frame_id: ''

dock_visible: false

is_docked: true

dock_visible参数为在启动自动充电程序时,是否找到充电桩

is_docked参数为是否已与充电桩对接

启动自动充电程序

ros2 action send_goal /dock irobot_create_msgs/action/DockServo "{}"

启动脱离充电桩程序文章来源地址https://www.toymoban.com/news/detail-857803.html

ros2 action send_goal /undock irobot_create_msgs/action/Undock "{}"

到了这里,关于turtlebot4机器人-实操教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ubuntu18.04 实现:安装turtlebot3功能包、虚拟机与机器人之间的网络配置、测试机器人Cartographer建图

    终端运行: sudo apt install ros-melodic-desktop-full ros-melodic-joy ros-melodic-teleop-twist-joy ros-melodic-teleop-twist-keyboard ros-melodic-laser-proc ros-melodic-rgbd-launch ros-melodic-depthimage-to-laserscan ros-melodic-rosserial-arduino ros-melodic-rosserial-python ros-melodic-rosserial-server ros-melodic-rosserial-client ros-melodic-rosserial-m

    2024年02月09日
    浏览(74)
  • 木叶飞舞之【机器人ROS2】篇章_第二节、turtlebot3安装

    没有真实小车的情况下,利用gazebo的仿真,操作小乌龟来学习ros2。废话不多说,直接上命令。 假如前一节未安装源码版本的cartographer,那就安装apt版本的。 将pbstream转化为pgm和yaml,在cartographer_pbstream_to_ros_map目录下执行

    2024年02月11日
    浏览(45)
  • Ubuntu18.04 Turtlebot2机器人移动控制 Rviz Gazebo仿真实现

    操作系统为ubuntu18.04 安装ROS Melodic Turtlebot2,很多大佬分享了详细的安装过程,在这里就不多赘述,安装遇到问题多百度,大部分都是可以解决的。 前期学习了赵虚左老师的ROS入门课程,结合Turtlebot2资料这里方便大家打开,放的创客制造的文档,也推荐大家去看官方文档 首先

    2023年04月25日
    浏览(74)
  • ROS仿真软件Turtlebot-Gazebo的安装使用以及错误处理[机器人避障]

            很多时候由于机器人价格比较贵,而且会因为环境因素、操作失误或者摔坏等,所以我们可以先在仿真软件上做测试,也可以避免这些问题,虽然没有那么真实感,可毕竟是免费的嘛。我们可以在这些仿真的机器人身上去学习如何控制机器人,读取它们的传感器数

    2024年02月08日
    浏览(48)
  • 机器人操作系统ROS(11)Turtlebot3自动避障及其地图构建和导航

    该节需要完成前面一节内容实现turtlebot3正常创建新地图,才可以实现本节的自动避障和导航 启动虚拟机器人有环境的仿真 键盘控制 打开新端口 3. 自动避障 打开新端口 4. 调用rviz 注意:可以通过修改size来变化激光扫描边缘的粗细 之前已经启动无需再起世界地图 启动好后可

    2024年02月02日
    浏览(44)
  • ROS2下使用TurtleBot3-->SLAM导航(仿真)RVIZ加载不出机器人模型

    在使用台式机进行仿真时,大部分例程很顺利,但在SLAM导航时,在RVIZ中却一直加载不出机器人模型,点击Navigation2 Goal选择目标点进行导航时,无响应。 启动后在RVIZ2和终端看到一个错误 按照官网的指令试了多次,一直无法加载,在网上赵的解决方案都是修改RVIZ里的各种设

    2024年02月09日
    浏览(54)
  • 202212 青少年等级考试机器人实操真题六级试卷

    2022年12月 青少年等级考试机器人实操真题六级 试卷总分数:100分 试卷及格分:60 分 考试时长:60 分钟 第 1 题 【 问答题 】 实际操作(共1题,共100分) 请考生在实操考试结束前将本题作答程序文件按“说明”要求完成上传。 1. 主题:步进电机转动控制 器件:ESP32主控1块、步

    2024年02月06日
    浏览(45)
  • 【花雕】全国青少年机器人技术一级考试备考实操搭建手册10

    随着科技的不断进步,机器人技术已经成为了一个重要的领域。在这个领域中,机械结构是机器人设计中至关重要的一部分,它决定了机器人的形态、运动方式和工作效率。对于青少年机器人爱好者来说,了解机械结构的基础知识,掌握相关的建模方法和技能,是打造自己的

    2024年02月12日
    浏览(50)
  • 机器人编程教程1机器人简介

    我们将制作一个机器人,并为其创建程序,赋予机器人行为,使其看起来具有智能并能够做出决策。我们将编写代码,使用传感器观察机器人周围的环境,并构建高级主题的实际示例,包括视觉、语音识别和说话。 您将看到简单的构建技术如何与少量代码相结合,使机器感觉

    2024年02月13日
    浏览(62)
  • 机器人编程教程2探索机器人-代码和电子设备

    我们将拆开一个机器人,看看它的部件和系统。我们将探索机器人的各个组成部分,包括软件(代码、命令和程序库)和硬件,以及它们是如何组合在一起的。在开始制作机器人时,考虑你想要的部件以及它们之间的关系是很有价值的。我建议您绘制机器人的草图--框图,作

    2024年02月13日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包