以下记录的是,我在学习中的一些学习笔记,这篇笔记是自己学习的学习大杂烩,主要用于记录,方便查找

一、概述

##1、机器人概念简介

##2、机器人的应用已经到渗透到方方面面了

##3、机器人的现状和开发的难度大幅度降低

主要学习开源的机器人操作系统ROS平台

二、ROS与开发环境

##1、什么是ROS

https://www.ros.org/

##2、搭建ROS开发环境

在Ubuntu上安装ROS:http://wiki.ros.org/cn/noetic/Installation/Ubuntu

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

sudo apt update

sudo apt install ros-noetic-desktop-full

##3 、ROS 的那些命令

@@1、文件操作

@@2、创建工作空间,软件包

  1. 工作空间

  1. 软件包

如:catkin_create_pkg beginner_tutorials std_msgs rospy roscpp

构建 :

@@3、查看依赖

rospack depends1 beginner_tutorials

rospack depends1 rospy

@@4、ros 计算图

  1. 节点

  1. 客户端

  1. roscore

  1. 使用rosnode看看roscore运行时干了些什么

三、学习资料

##1、ROS官网-初级资料

  1. 安装和配置 ROS 环境

本教程将引导您完成安装 ROS 并在计算机上设置 ROS 环境的过程。

  1. 导航 ROS 文件系统

本教程介绍了 ROS 文件系统的概念,并介绍了如何使用 roscd、rosls 和 rospack 命令行工具。

  1. 创建 ROS 包

本教程介绍如何使用 roscreate-pkg 或 catkin 创建新软件包,以及使用 rospack 列出软件包依赖项。

  1. 构建 ROS 包

本教程介绍了构建包的工具链。

  1. 了解 ROS 节点

本教程介绍了 ROS 图概念,并讨论了 roscore、rosnode 和 rosrun 命令行工具的使用。

  1. 了解 ROS 主题

本教程介绍了 ROS 主题以及 rostopic 和 rqt_plot 命令行工具的使用。

  1. 了解 ROS 服务和参数

本教程介绍了 ROS 服务和参数,以及使用 rosservice 和 rosparam 命令行工具。

  1. 使用rqt_console和启动

本教程介绍使用 rqt_console 和 rqt_logger_level 进行调试的 ROS,以及一次启动多个节点的 roslaunch。如果您使用 ROS fuerte 或 rqt 不完全可用的发行版,请参阅此页面以及使用此基于 rx 的旧工具的页面。

  1. 使用 rosed 在 ROS 中编辑文件

本教程展示了如何使用 roseed 使编辑更容易。

  1. 创建 ROS 消息和 srv

本教程介绍如何创建和构建 msg 和 srv 文件以及 rosmsg、rossrv 和 roscp 命令行工具。

  1. 编写简单的发布服务器和订阅服务器 (C++)

本教程介绍如何在C++中编写发布方和订阅方节点。

  1. 编写一个简单的发布者和订阅者(python)

本教程介绍如何在 python 中编写发布者和订阅者节点。

  1. 检查简单发布服务器和订阅服务器

本教程介绍如何运行简单的发布服务器和订阅服务器。

  1. 编写简单的服务和客户端 (C++)

本教程介绍如何在 C++ 中编写服务和客户端节点。

  1. 编写简单的服务和客户端 (Python)

本教程介绍如何在 python 中编写服务和客户端节点。

  1. 检查简单服务和客户端

本教程介绍如何运行简单服务和客户端。

  1. 记录和回放数据

本教程将教您如何将正在运行的ROS系统中的数据记录到.bag文件中,然后回放数据以在正在运行的系统中产生类似的行为

  1. 从包文件中读取消息

了解在 bag 文件中读取所需主题消息的两种方法,包括使用 ros_readbagfile 脚本。

  1. 开始使用 roswtf

roswtf 工具的基本介绍。

  1. 浏览 ROS 维基

本教程讨论了 ROS wiki (wiki.ros.org) 的布局,并讨论了如何找到您想知道的内容。

  1. 下一步在哪里?

本教程讨论了有关在真实或模拟机器人上使用 ROS 的更多信息的选项。

##2、ROS官网-中级资料

更多客户端 API 教程可以在相关包中找到(roscpp、rospy、roslisp)

  1. 手动创建 ROS 包。

本教程介绍如何手动创建 ROS 包。

  1. 管理系统依赖关系

这解释了如何使用 rosdep 来安装系统依赖项。

  1. 大型项目的启动提示

本教程介绍了为大型项目编写 roslaunch 文件的一些技巧。重点是如何构建启动文件,以便在不同情况下尽可能多地重用它们。我们将使用 2dnav_pr2 包作为案例研究。

  1. 跨多台机器运行 ROS

本教程介绍如何使用两台机器启动 ROS 系统。它解释了如何使用ROS_MASTER_URI将多台计算机配置为使用单个主计算机。

  1. 定义自定义消息

本教程将向您展示如何使用 ROS 消息描述语言定义您自己的自定义消息数据类型。

  1. 在 Python 中使用 C++ 类

本教程说明了一种在 Python 中使用带有 ROS 消息的 C++ 类的方法。

  1. 快速打包您的 ROS 项目

本教程介绍如何快速打包和部署 ROS 项目。

  1. 如何编写教程

本教程介绍了用于编写教程的有用模板和宏,以及可用于指导 ros.org 的示例教程

##3、外部 ROS 学习资源

@@1、视频课程

  • Udemy Course (~16.5 hours): Muhammed Oğuz TAŞ - Temelden Gelişmişe Python ile Uygulamalı ROS Eğitimi (Turkish)

  • 初学者的ROS教程:机器人(免费)

  • 初学者的ROS教程:米兰亚达夫(付费/英语)

  • 关于Udemy的新课程,“ROS教程”(英语)

  • Sıfırdan Uygulamalı ROS Eğitimi, Ali ÖZCAN, Udemy(土耳其语)

  • 机器人为机器人教程和 ROS 解释视频

  • Temel ROS Eğitimi (土耳其语)

  • ROS - Urdf ve Xacro ile Robot Modelleme (土耳其语)

  • Uygulamalar ile ROS Eğitimi (土耳其语)

  • Udemy课程:Anis Koubaa,“初学者的ROS:本地化,导航和SLAM”(新)

  • Udemy课程:Anis Koubaa,“ROS2 How To: Discover Next Generation ROS”,ROS2上的第一个在线课程

  • Udemy课程:Anis Koubaa,“ROS for Beginners: Basics, Motion, and OpenCV”最高评分

  • ROS 在线课程库

  • ROS每周直播课

  • 关于 ROS 的 Udemy 课程:关于从头开始学习机器人编程的视频教程

  • 在线ROS教程:通过编程在线模拟机器人学习ROS

  • ROS问答视频教程

  • 澳大利亚国立大学的 ROS 教程视频演示

  • NooTriX 分步 ROS 教程

  • Clearpath Robotics的知识库

  • 二乐机器人 - 学习 ROS

  • ROS-工业培训班课程

  • 乔纳森·博伦的 ROS 教程

  • 机器人操作系统(ROS)简介

  • 使用 ROS 对机器人进行编程:简介(阿拉伯语)

  • 从基础知识到SLAM使用URDF仿真模型学习ROS - Husarion提供

  • 使用 ROS(波斯语)为机器人学习和开发

  • ROS初学者教程,YouTube播放列表(阿拉伯语)

  • 如何在 Ubuntu 中安装 ROS Melodic(英语:Ros Melodic)

  • ROS2 on IBM Cloud Kubernetes

  • https://zhangrelay.blog.csdn.net/?type=blog 【机器人领域优质创作者】

@@2、外部研讨会/讲座

  • 系统与机器人研究所2020年ROS编程短期课程 - 里斯本技术

  • ROS Meetup by The Construct(英语:The Construct)

  • TORK在东京为企业举办的免费入门研讨会

@@3、外部书籍

  • 电子书: 穆罕默德·奥乌兹 TAŞ - 耶尼·巴斯拉扬拉尔 伊钦 乌古拉马拉拉 机器人 İşletim 西斯特米(ROS) (土耳其语)

##4、主要方向

四、机器人的视觉与计算机视觉

##1、图像处理与计算机视觉简介

##2、图像处理与计算机视觉的发展历史

##3、图像处理与计算机视觉的系统构成

##4、数字图像处理

五、机器人的建图和定位与导航

##1、地图构建

##2、机器人定位

##3、路径规划

##4、导航和gazebo仿真器

六、跟踪机器人Turtlebot

##1、跟踪机器人【仿真平台Stage】

https://www.jianshu.com/p/e006a897c775

http://doc.tianbot.com/ros2go/2473814#Turtlebot_Stage_65

https://space.bilibili.com/451561151/channel/series

##2、需求分析

##3、Turtlebot结构与在仿真器上的构建

##4、实际机器人结构

##4、基于ROS把TLD算法封装成package

##5、在实际环境中开发跟踪机器人

七、行为机器人【Nao】

##1、机器人如何协调内部行为

##2、多主体系统概念

##3、多主体理论为机器人行为协调提供支撑

2022年杂学之机器人篇相关推荐

  1. 杂学第十篇:这几天,在毕业论文调整格式中踩过的坑,满满的干货助你快速解决格式调整的烦恼

    以下内容,来自我的公众号. 你是来看论文格式,还是来看我奄奄一息的爱情?? 这几天,为了我的论文,殚精竭虑.历经生死.悲欢离合.甚至错了一个重要的节日,真是赔了夫人还好没折兵.看来我要多哄哄我家那美若 ...

  2. 杂学Linux-基础篇

    对于Java程序员来说,了解一定的Linux系统的知识是必须的,因为大部分服务器都是用Linux作为操作系统的,这篇文章作为我学习Linux系统的一个笔记来分享给大家,或许概念理解不是那么准确,但这是 ...

  3. 杂学第八篇:最近成功实现用applescript检测手机号码是否注册imessage,有需要的带价联系

    先放上一张gif,是我在处理时候的图片 不需要连续打开新信息,只需要输入框内check即可,check完后,可清除继续下一个check. 有意者联系

  4. 杂学第十三篇:内网centos7安装软件或者其他动态库的依赖,本文章以安装openoffice为例(包含解决思路,可能适用其他系统)

    需求 本来内网安装openoffice是很简单的事,解压,安装rpm文件就行,但是麻烦的是openoffice的运行环境,提示缺少库无法启动.如果你安装的机器比较新,毕竟装系统的时候并不会把所有动态依 ...

  5. 杂学Linux-IO篇

    本文来介绍一下Linux系统IO相关知识,内容为自己所学所感,或许不是那么的准确,仅供参考,希望对初学者有一定的帮助,对于下面文章中提到的pageCache请参考我的另一篇文章杂学Linux-基础篇 ...

  6. 2022黑马Redis跟学笔记.实战篇(二)

    2022黑马Redis跟学笔记.实战篇 二 实战篇Redis 开篇导读 4.1短信登录 4.1.1. 搭建黑马点评项目 一.导入黑马点评项目 二.导入SQL 三.有关当前模型 四.导入后端项目 相关依 ...

  7. 百趣代谢组学资讯:4篇经典案例助力科研不费力,均IF>12

    百趣代谢组学资讯:4篇经典案例助力科研不费力,均IF>12 2022年百趣生物的靶向代谢组学客户文章平均影响因子高达12分,本期小编就带大家看看我们近期发表的高分文章: 第一篇 微生物代谢组学产 ...

  8. 如果你不知道做什么,那就学一门杂学吧

    序言 这篇文章没有代码,请放心阅读. 多年以后,面对人工智能研究员那混乱不堪的代码,我会想起第一次和S君相见的那个遥远的下午.那时的B公司,还是一个仅有6个人的小团队,Mac和显示器在桌上依次排开,大 ...

  9. 如果你不知道学什么,就学一门杂学吧

    序言 这篇文章没有代码,请放心阅读. 多年以后,面对人工智能研究员那混乱不堪的代码,我会想起第一次和S君相见的那个遥远的下午.那时的B公司,还是一个仅有6个人的小团队,Mac和显示器在桌上依次排开,大 ...

最新文章

  1. ()shi linux字符设备,Linux字符设备驱动基础(三)
  2. [译]Mimic, 轻量级Web Service测试桩
  3. 【机器学习】降维技术-PCA
  4. Java 正则表达式匹配模式[贪婪型、勉强型、占有型]
  5. java编写一个程序_计算已知长和宽的长方形的周长,请教一下大佬们,我们java留了一个作业,编写程序,定义一个接口Comput,声明计算周长和面积的方法...
  6. typora高亮_用Typora实现写作排版一体化
  7. svn 覆盖更新_使用SVN钩子强制提交日志和限制提交文件类型
  8. debian 电脑屏幕放大镜 控制
  9. 【考研复习】《操作系统原理》孟庆昌等编著课后习题+答案——第四章
  10. WebS WebStorm WebStorm WebS官方版下载
  11. 关于传递函数的频率响应和低通滤波器
  12. C++中mian中的参数
  13. Java 中Lambda表达式的使用详解
  14. html5行走的机器人,HTML5 不倒翁体型的机器人
  15. 解决 Redis Desktop Manager 黑屏问题
  16. 惠普27亿美元收购3Com 两大硬件巨头竞争升级
  17. ffmpeg win10 ffmpeg 采集数据
  18. epplus保存为流_通过EPPlus导出Excel文件
  19. html5课程设计论文,课程设计论文
  20. word的使用——邮件合并

热门文章

  1. 单机游戏的各种游戏类型的经典
  2. 游戏3D建模行业怎么样?3dsMAX和MAYA该如何选择
  3. 2-基于51单片机的蓝牙智能台灯设计
  4. redhat 红帽 centos 7 中文文件夹改英文
  5. vue反向代理解决跨域及部署nginx端口转发解决跨域
  6. 华为nova3是鸿蒙,今天发布!华为nova 3亮点汇总:不止是颜值党
  7. java:数组的冒泡排序
  8. 评论回复功能 asp.net_一键抠图 更快 更强!六月新版 PS 2020 21.2 新增功能测试报告...
  9. 论文阅读:CRA-CNN对比增强的注意力卷积神经网络
  10. scu仿真机器人足球常用函数