热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ROS相关学习资源汇总

文章目录PartI:学习资源汇总0.ROS配置1.课程2.书籍教程3.相关基础4.开源项目4.1ROS无人车4.2ROS自动驾驶PartII:学习笔记R


文章目录

  • Part I:学习资源汇总
  • 0. ROS配置
  • 1. 课程
  • 2. 书籍/教程
  • 3. 相关基础
  • 4. 开源项目
    • 4.1 ROS 无人车
    • 4.2 ROS自动驾驶
  • Part II:学习笔记
  • ROS-Learning
    • 01. Git Basic Usage
    • 02. Vim Basic Usage
    • 03. Shell Basic Usage
    • 04. Linux Tutorial Notes
    • 05. ROS Introduction
    • 06. ROS Tutorial Notes




Part I:学习资源汇总
0. ROS配置

Ubuntu20.04安装ROS教程(虚拟机/双系统,含报错解决)



1. 课程
  1. 机器人ROS操作系统入门-中科院软件所

  2. ROS入门21讲

  3. 零基础玩转机器人操作系统ROS

  4. ROS机器人入门课程《ROS理论与实践》零基础教程




2. 书籍/教程
  1. ROS官网:ros.org

  2. 官方文档:ros.wiki

  3. 古月居:homepage




3. 相关基础

语言基础

1.C语言:

  • The Algorithms

2.C++:

  • C++ 那些事

3.Python


开发工具

  1. Git
  2. Roboware Studio
  3. VS Code


服务端

1.Linux

  • Linux教程(千万级学习人次,linux最新升级版)
  • 史上最牛的Linux视频教程

2.Docker

  • Docker最新超详细版教程通俗易懂(基础),(进阶)
  • Docker核心技术(基础篇)



4. 开源项目

4.1 ROS 无人车


  • ROS 无人车



4.2 ROS自动驾驶


  • ros使用自动驾驶数据集kitti教程





Part II:学习笔记
ROS-Learning

The current repository mainly includes knowledge about linux shell and robot operating system (ROS).

机器人操作系统学习笔记。



Contributer: datamonday

Github Repo: https://github.com/datamonday/ROS-Learning



  • ROS-Learning
  • 01. Git Basic Usage
  • 02. Vim Basic Usage
  • 03. Shell Basic Usage
  • 04. Linux Tutorial Notes
  • 05. ROS Introduction
  • 06. ROS Tutorial Notes


01. Git Basic Usage

  • 1. Git 简介
  • 2. Git 工作流程
  • 3. Git 基本概念
  • 4. Git 创建仓库
    • 4.1 git init
    • 4.2 git clone
    • 4.3 git config
  • 5. Git 基本操作
  • 6. Git 分支管理
    • 6.1 branch 列出/创建分支
    • 6.2 checkout 切换分支
    • 6.3 branch -d 删除分支
    • 6.4 merge 合并分支
    • 6.5 合并冲突
  • 7. log 查看提交历史
  • 8. Git 标签
  • 9. Git 服务器搭建
    • 9. 1 安装Git
    • 9. 2 创建证书登录
    • 9.3 初始化Git仓库
    • 9.4 克隆仓库
  • 10. Github 使用
    • 10.1 基础功能
      • 1)创建提交
      • 2)合并
      • 3)常用指令
    • 10.2 高阶功能
      • 1)Amend——提交改写
      • 2)Branch——分支
      • 3)Merge Branch——合并分支
      • 4)Stash——暂存
      • 5)Rebase——变基
      • 6)Checkout——签出功能
      • 7)Undoing——撤销操作
      • 8)图形化Git客户端
    • 10.3 常用操作


02. Vim Basic Usage

  • 1. Vim 介绍
  • 2. Vim 的三种模式
    • 2.1. 命令模式 (Command mode)
    • 2.2. 输入模式 (Insert mode)
    • 2.3. 底线命令模式 (Last line mode)
  • 3. Vim 按键说明
    • 3.1. 命令模式按键操作
    • 3.2. 输入模式按键操作
    • 3.3. 底线命令模式按键操作
  • 4. Vim 实例
    • 4.1. 基本使用
    • 4.2. 配置文件 vimrc
    • 4.3. 常用命令
  • 5. Vim 扩展
    • 5.1. 代码自动补全
    • 5.2. 插件配置
    • 5.3. 插件删除
    • 5.4. 插件 colorscheme


03. Shell Basic Usage

  • Shell Basic Usage
  • 1. Shell 简介
    • 1.1 Shell 环境
    • 1.2 Shell 连接用户和内核
    • 1.3 Shell 连接其它程序
    • 1.4 Shell 支持编程
    • 1.5 Shell 是脚本语言
      • 1)什么是脚本语言?
      • 2)进入 Shell 命令的方式
    • 1.6 Perl、Python 和 Shell
      • 1)Perl
      • 2)Python
      • 3)Shell
  • 2. Shell 命令的基本格式
    • 2.1 使用参数
    • 2.2 选项附带参数
    • 2.3 第二层命令提示符
  • 3. 运行 Shell 脚本
    • 3.1 作为可执行程序
    • 3.2 作为解释器参数


04. Linux Tutorial Notes

  • 1. Linux 系统目录结构
    • 1.1. 树状目录结构
    • 1.2. 重要系统目录
  • 2. Linux 系统启动过程
    • 2.1. 内核引导
    • 2.2. 运行 init
      • 2.2.1. 运行级别
    • 2.3. 系统初始化
    • 2.4. 建立终端
    • 2.5. 用户登录
      • 2.5.1. 图形与文字模式切换
      • 2.5.2. 关机命令与流程
  • 3. 文件基本属性
    • 3.1. 文件权限组合表示
    • 3.2. 文件属主和属组
    • 3.3. 更改文件属性
      • 3.3.1. chgrp:更改文件属组
      • 3.3.2. chown:更改文件属主
      • 3.3.3. chmod:更改文件9个属性
      • 3.3.4. 符号类型改变文件权限
  • 4. 文件与目录管理
    • 4.1. 处理目录常用命令
      • 4.1.1. ls (列出目录)
      • 4.1.2. cd (切换目录)
      • 4.1.3. pwd (显示当前所在目录)
      • 4.1.4. mkdir (创建新目录)
      • 4.1.5. rmdir (删除空的目录)
      • 4.1.6. cp (复制文件或目录)
      • 4.1.7. rm (移除文件或目录)
      • 4.1.8. mv (移动文件与目录,或修改名称)
      • 4.1.9. ln (创建链接)
      • 4.1.10. which (查找文件)
      • 4.1.11. whereis (指定查找命令)
      • 4.1.12. touch (修改时间属性)
    • 4.2. 文件内容查看命令
      • 4.2.1. cat (正序显示内容)
      • 4.2.2. tac (倒序显示内容)
      • 4.2.3. nl (显示行号)
      • 4.2.4. more (一页一页翻动)
      • 4.2.5. less (一页一页翻动)
      • 4.2.6. head (取文件前面几行)
      • 4.2.7. tail (取文件后面几行)
      • 4.2.8. wc (统计文档字数)
      • 4.2.9. look (查询单词)
    • 4.3. 软链接与硬链接
  • 5. 用户和用户组管理
    • 5.1. 用户账号的管理
      • 5.1.1. )useradd 添加用户
      • 5.1.2. )userdel 删除用户
      • 5.1.3. )usermod 修改账号
      • 5.1.4. )passwd 用户口令管理
    • 5.2. 用户组的管理
      • 5.2.1. )groupadd 增加新用户组
      • 5.2.2. )groupdel 删除已有用户组
      • 5.2.3. )groupmod 修改用户组属性
      • 5.2.4. )newgrp 切换用户组
    • 5.3. 与用户账号有关的系统文件
      • 5.3.1. )/etc/passwd
      • 5.3.2. )/etc/shadow
      • 5.3.3. )/etc/group
      • 5.3.4. )添加批量用户
  • 6. 磁盘管理
    • 6.1. df 检查文件系统的磁盘使用
    • 6.2 du 检查文件和目录磁盘使用
    • 6.3 fdisk 磁盘分区表
    • 6.4 mkfs 磁盘格式化
    • 6.5 fsck 磁盘检验
    • 6.6 mount 磁盘挂载与卸载


05. ROS Introduction


Ref:





06. ROS Tutorial Notes


Ref:





推荐阅读
  • 使用在线工具jsonschema2pojo根据json生成java对象
    本文介绍了使用在线工具jsonschema2pojo根据json生成java对象的方法。通过该工具,用户只需将json字符串复制到输入框中,即可自动将其转换成java对象。该工具还能解析列表式的json数据,并将嵌套在内层的对象也解析出来。本文以请求github的api为例,展示了使用该工具的步骤和效果。 ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • 本文介绍了解决github无法访问和克隆项目到本地的问题。作者建议通过修改配置文件中的用户名和密码来解决访问失败的问题,并提供了详细步骤。同时,还提醒读者注意输入的用户名和密码是否正确。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
  • 云原生应用最佳开发实践之十二原则(12factor)
    目录简介一、基准代码二、依赖三、配置四、后端配置五、构建、发布、运行六、进程七、端口绑定八、并发九、易处理十、开发与线上环境等价十一、日志十二、进程管理当 ... [详细]
  • 初探PLC 的ST 语言转换成C++ 的方法
    自动控制软件绕不开ST(StructureText)语言。它是IEC61131-3标准中唯一的一个高级语言。目前,大多数PLC产品支持ST ... [详细]
  • 1.利用node实现页面实时更新,主要 ... [详细]
  • 初始化初始化本地空版本库,仓库,英文名repositorymkdirtest&&cdtestgitinit克隆项目到本地gitclone远程同 ... [详细]
  • Sublime P4语法高亮设置
    Github插件链接:p4-syntax-highlighter首先安装PackageControl。进入Package界面,我的目录:U ... [详细]
  • 这篇文章给大家介绍怎么从源码启动和编译IoTSharp ,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。IoTSharp项目是 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 关于我们EMQ是一家全球领先的开源物联网基础设施软件供应商,服务新产业周期的IoT&5G、边缘计算与云计算市场,交付全球领先的开源物联网消息服务器和流处理数据 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 本文讨论了在使用Git进行版本控制时,如何提供类似CVS中自动增加版本号的功能。作者介绍了Git中的其他版本表示方式,如git describe命令,并提供了使用这些表示方式来确定文件更新情况的示例。此外,文章还介绍了启用$Id:$功能的方法,并讨论了一些开发者在使用Git时的需求和使用场景。 ... [详细]
  • Python15行代码实现免费发送手机短信,推送消息「建议收藏」
    Python15行代码实现免费发 ... [详细]
author-avatar
single
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有