码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Turtlebot3-burger入门教程#foxy版#-PC安装


     系列文章目录

    • Turtlebot3-burger入门教程#foxy版#-目录
    • Turtlebot3-burger入门教程#foxy版#-硬件清单
    • Turtlebot3-burger入门教程#foxy版#-软件清单
    • Turtlebot3-burger入门教程#foxy版#-PC安装
    • Turtlebot3-burger入门教程#foxy版#-树莓派4安装
    • Turtlebot3-burger入门教程#foxy版#-OpenCR安装
    • Turtlebot3-burger入门教程#foxy版#-网络设置
    • Turtlebot3-burger入门教程#foxy版#-雷达测试
    • Turtlebot3-burger入门教程#foxy版#-键盘控制
    • Turtlebot3-burger入门教程#foxy版#-cartographer建图
    • Turtlebot3-burger入门教程#foxy版#-slam toolbox建图
    • Turtlebot3-burger入门教程#foxy版#-自主导航

    说明:

    • 本教程介绍如何在在PC上安装对应的系统和软件
    • 测试环境: Ubuntu 20.04 + ROS2 Foxy Fitzroy

    相关设备

    • TB3套件:采购地址

    前提说明

    • 对于在创客智造上购买的foxy版系统的tb3是已经配置好系统,不需要重复安装配置

    • 若是创客智造上购买的默认是Noetic系统的tb3且想要切换到Foxy环境,则需要进行环境切换

    • [Remote PC] 若当前需要从Noetic切换到Foxy环境,需要将文档末端的两项环境变量全部注释,保存退出关闭此终端

    1. $ vim ~/.bashrc
    2. #source ~/tools/environment/noetic/setRosNoeticEnvironment.sh
    3. #source ~/tools/environment/foxy/setRos2FoxyEnvironment.sh
    4. $ exit
    • [Remote PC] 打开新终端,将文档末端Foxy的环境变量的注释标志去掉,再保存退出
    1. $ vim ~/.bashrc
    2. #source ~/tools/environment/noetic/setRosNoeticEnvironment.sh
    3. source ~/tools/environment/foxy/setRos2FoxyEnvironment.sh
    4. $ source ~/.bashrc && rosversion -d
    5. foxy

    系统安装

    • Ubuntu系统入门教程-安装ubuntu20.04

    ROS2 Foxy Fitzroy安装

    • [Remote PC] apt安装
    1. # 设置编码
    2. $ locale # check for UTF-8
    3. $ sudo apt update && sudo apt install locales
    4. $ sudo locale-gen en_US en_US.UTF-8
    5. $ sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
    6. $ export LANG=en_US.UTF-8
    7. $ locale # verify settings
    8. # 添加key
    9. $ sudo apt update && sudo apt install curl gnupg2 lsb-release
    10. $ sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
    11. # ros2源
    12. $ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
    13. # 安装ros2
    14. $ sudo apt update
    15. $ sudo apt install ros-foxy-desktop
    16. # 设置环境
    17. $ echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc
    • [Remote PC] 测试
    1. # 新终端,订阅话题
    2. $ ros2 run demo_nodes_py listener
    3. [INFO] [1634527167.275393800] [listener]: I heard: [Hello World: 1]
    4. [INFO] [1634527168.204285069] [listener]: I heard: [Hello World: 2]
    5. [INFO] [1634527169.204316087] [listener]: I heard: [Hello World: 3]
    6. # 新终端,发布话题
    7. $ ros2 run demo_nodes_cpp talker
    8. [INFO] [1634527098.551044682] [talker]: Publishing: 'Hello World: 1'
    9. [INFO] [1634527099.550897311] [talker]: Publishing: 'Hello World: 2'
    10. [INFO] [1634527100.550894548] [talker]: Publishing: 'Hello World: 3'

    安装TurtleBot3及相关依赖包

    • [Remote PC] 安装相关依赖包
    1. $ sudo apt install -y python3-argcomplete python3-colcon-common-extensions python3-vcstool git
    2. $ sudo apt-get install ros-foxy-gazebo-* ros-foxy-cartographer ros-foxy-cartographer-ros \
    3. ros-foxy-nav2-bringup ros-foxy-navigation2 ros-foxy-slam-toolbox
    • [Remote PC] 安装TurtleBot3包
    1. $ mkdir -p ~/turtlebot3_ws2/src
    2. $ cd ~/turtlebot3_ws2/src/
    3. $ git clone -b foxy-devel https://github.com/ROBOTIS-GIT/DynamixelSDK.git
    4. $ git clone -b foxy-devel https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
    5. $ git clone -b foxy-devel https://github.com/ROBOTIS-GIT/turtlebot3.git
    6. $ git clone -b foxy-devel https://github.com/ROBOTIS-GIT/hls_lfcd_lds_driver.git
    7. $ cd ~/turtlebot3_ws2
    8. $ colcon build --symlink-install
    9. $ echo 'source ~/turtlebot3_ws2/install/setup.bash' >> ~/.bashrc
    10. $ source ~/.bashrc
    • [Remote PC] 环境配置
    1. $ echo 'export ROS_DOMAIN_ID=30 #TURTLEBOT3' >> ~/.bashrc
    2. $ source ~/.bashrc
  • 相关阅读:
    【MySQL】日志详解
    k8s--基础--22.2--storageclass--类型--AWS EBS
    OJ第三篇
    【Java】jdk9为何要将String的底层实现由char[]改为byte[]
    视频产品介绍:AS-VCVR-N多协议视频接入网关
    强化学习DQN系列算法做的应用问题
    【Java项目】如何设计一个用户签到系统?并且这个签到系统支持7天,14天等不同天数的连续签到功能?
    知识工程---neo4j 5.12.0+GDS2.4.6安装
    巧妙设计状态+不断对拍寻找合适贪心策略:P8341
    【Andriod】使用adb命令安装和卸载apk的通用python脚本
  • 原文地址:https://blog.csdn.net/ncnynl/article/details/125798097
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号