码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • ROS基础


    E: Unable to locate package ros-kinetic-turtle-tf

    ROS Kinetic 学习笔记 (古月居)
    https://www.bilibili.com/video/BV1hc411n7N7/

    一、认识ROS

    • 大纲
      在这里插入图片描述
      在这里插入图片描述

    • ROS的总体设计
      在这里插入图片描述

    • 系统实现
      三个层次
      在这里插入图片描述
      1 主要是话题、服务通信模型的实现;

      • 话题:
        在这里插入图片描述
        RPC介绍:https://zhuanlan.zhihu.com/p/187560185

      • 服务:
        在这里插入图片描述

      • 参数通信机制
        如果talker向Master更新了参数值,但是listerner没有查询,则依旧保持旧的的参数。(目前ROS1中的一个坑)
        在这里插入图片描述

      • 话题服务区别
        在这里插入图片描述

      2 ROS的文件系统
      在这里插入图片描述

      3 社区
      在这里插入图片描述

    • 初次实践

      • 软件源安装(PC端常用方式)源码安装 (ARM上安装)

      • rosinstall rosdep

      • ROS安装目录:/opt/ros在这里插入图片描述

      • bin etc include lib share(功能包接口信息-话题 服务 action)

      • 教程使用的不是bash , 而是zsh

      • roscore

        • ROS_MASTER_URI=http://xxx:11311/ 整个系统只能存在一个,分布式多主机情况下,其他主机上的节点需要知道该URI地址
      • 命令工具

      • ROS例程 turtlesim

        • 计算图 rqt_graph rosnode
        • rosout节点 : 是用来收集和记录节点调试输出信息的,它总是运行。
        • rosservice call /spawn “info”
        • rostopic pub -r 10 xxx
        • rosnode list
        • 小海龟仿真
          在这里插入图片描述
      • ROS应用框架
        在这里插入图片描述
        Nodelet API : 图片、点云等大量数据,以共享内存的方式更高效的传输。

    二、ROS基础

    目录:

    • 1、创建工作空间
    • 2、ROS通信编程
    • 3、分布式通信
    • 4、ROS中的关键组件

    安装:https://zhuanlan.zhihu.com/p/515361781

    1. 创建工作空间

    src build devel install
    ROS2中将devel和install文件夹合并了,devel和install功能上有所重复。
    在这里插入图片描述
    bash和zsh的区别:https://blog.csdn.net/qq_40520596/article/details/104642218

    • 功能包相关
      • 创建功能包 catkin_create_pkg pkg_name depend1 …
      • 编译功能包:cd ~/catkin_ws catkin_make source ~/catkin_ws/devel/setup.bash
      • 同一个工作空间不能存在相同名字的功能包,不同工作空间下可以;
    • 工作空间的覆盖
      • env | grep ros >> ROS_PAKAGE_PATH
      • sudo apt-get install ros-noetic-roscpp-tutorials >> rospack find roscpp_tutorials
      • 将roscpp_tutorials包放到工作空间src中,再使用rospack find可以发现,该包出现在catkin_ws下
      • 覆盖机制
        在这里插入图片描述

    2、ROS通信编程

    http://www.autolabor.com.cn/book/ROSTutorials/di-2-zhang-ros-jia-gou-she-ji.html
    见PPT及相关代码。

    话题

    服务

    Action

    3、分布式通信

    分布式 松耦合

    在这里插入图片描述
    如何实现分布式多极通信

    • 分布式通信需要设置正确的IP , 主要设置 /etc/hosts文件,定义IP地质和主机名的映射关系;
    • 保证多个主机的/etc/hosts文件的主机都有互相的IP - 主机映射关系;
    • 设置从机的ROS_MASTER_URI
      在这里插入图片描述

    4、ROS中的关键组件

    • *在这里插入图片描述

    • launch文件的标签含义

    • TF坐标变换

    • Qt工具箱
      在这里插入图片描述

    在这里插入图片描述

    TF变换相关 Exbot 讲解

    https://blog.csdn.net/ZhangRelay/article/details/108374509

    问题

    1. E: Unable to locate package ros-kinetic-turtle-tf
    2. rospkg importError 主要python版本混乱,将/usr/bin下面python的软连接 由指向python2换为指向pyton3.8
      https://blog.csdn.net/qq_44339029/article/details/121699960

    三、机器人系统设计

    四、机器人仿真

    五、机器人感知

    六、机器人SLAM与自主导航

    七、ROS理论与实践Moveit

    八、ROS机器人综合应用

    九、ROS2.0

  • 相关阅读:
    模式植物GO背景基因集制作
    【运维】执行nvidia-smi有点卡,解决办法
    高效访问数据的关键:解析MySQL主键自增长的运作机制!
    二叉树、二叉搜索树,平衡二叉树(旋转)红黑树(红黑规则)
    华为机试真题实战应用【赛题代码篇】-数组组成的最小数字(附Java和Python代码)
    【计算机网络】http协议
    注解与反射
    单例模式(Java实现)
    WEB 渗透之XXE&XML
    .NET 中的反射
  • 原文地址:https://blog.csdn.net/rayso9898/article/details/133456646
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号