ROS机器人操作系统——什么是ROS(一)
ROS机器人操作系统
文章目录
- ROS机器人操作系统
- 前言
- 一、ROS是什么?
- 二、ROS的发展史
- 三、ROS的特点
- 总结
前言
大一下的时候接触过ROS,也只是单纯的知道这个东西,了解了一点皮毛,并没有系统的去学习。一年过去了,无人驾驶以及机器视觉还是更加吸引我,于是我打算重拾ROS,希望能在别人开源的基础上做到二次开发,实现我想要的功能。
一、ROS是什么?
随着机器人领域的快速发展和复杂化,代码的复用性和模块化的需求原来越强烈,而已有的开源机器人系统又不能很好的适应需求。2010年Willow Garage公司发布了开源机器人操作系统ROS(robot operating system),很快在机器人研究领域展开了学习和使用ROS的热潮。ROS是用于编写机器人软件程序的一种具有高度灵活性的软件架构。它包含了大量工具软件、库代码和约定协议,旨在简化跨机器人平台创建复杂、鲁棒的机器人行为这一过程的难度与复杂度。
二、ROS的发展史
ROS 的主要目标是为机器人研究和开发提供代码复用的支持。ROS是一个分布式的进程(也就是“节点”)框架,这些进程被封装在易于被分享和发布的程序包和功能包中。ROS也支持一种类似于代码储存库的联合系统,这个系统也可以实现工程的协作及发布。这个设计可以使一个工程的开发和实现从文件系统到用户接口完全独立决策(不受ROS限制)。同时,所有的工程都可以被ROS的基础工具整合在一起。
三、ROS的特点
- 通道:ROS提供了一种发布-订阅式的通信框架用以简单、快速地构建分布式计算系。
- 工具:ROS提供了大量的工具组合用以配置、启动、自检、调试、可视化、登录、测试、终止分布式计算系统。
- 强大的库:ROS提供了广泛的库文件实现以机动性、操作控制、感知为主的机器人功能。
- 生态系统:ROS的支持与发展依托着一个强大的社区。ros.org尤其关注兼容性和支持文档,提供了一套“一站式”的方案使得用户得以搜索并学习来自全球开发者数以千计的ROS程序包。
总结
自己是真的很喜欢这个,虽然很难,但是也要坚持毕竟我才大二,可以给大家看看我的ROS学习小车。
这个是我大一下学期学习用的车,树莓派主控,乐视的摄像头,思岚A1的激光雷达,一个简单的3轮小车(这个是平衡小车之家的车,大一下能力还不够,只能买套件用来学习)
当时用激光雷达建出来的地图,毕竟是人家开源的东西,用起来很简单。
给各位看看我的新车,这个车是我组装的,下了血本的一辆车。Jetson nanoB01主控,奥比中光深度相机x2,思岚A1激光雷达,创乐博显示屏,一个高配的麦克纳姆小车。
这个车是我自己组装的,用了两天时间终于让他跑了起来,激光雷达,深度相机都可以使用了,好不容易。接下来就可以好好学习ROS了。
ROS机器人操作系统——什么是ROS(一)相关推荐
- ROS机器人操作系统——如何将ROS与STM32连接(十六)
ROS机器人操作系统 文章目录 ROS机器人操作系统 前言 一.两种控制器的功能 二.硬件连接 总结 前言 前面学习了ROS的基本操作,仅仅只使用这个操作系统并没有什么用处,还需要讲他与硬件相结合从而 ...
- ROS机器人操作系统——创建工作空间与功能包(四)
ROS机器人操作系统 文章目录 ROS机器人操作系统 前言 一.工作空间 1.创建工作空间 2.编译工作空间 3.设置环境变量 4.检查环境变量 二.功能包 1.创建功能包 2.编译功能包 总结 前言 ...
- ROS 机器人操作系统进阶实战
ROS(Robot Operating System) 是一个开源的机器人操作系统,目的是提供开发平台.工具及生态给开发人员,可以让开发人员快速开发.本课程通过精心设计的案例,分析技术要点.理解运行原 ...
- ROS机器人操作系统学习笔记(三)ROS通信架构
ROS机器人操作系统学习笔记(三)ROS通信架构 ROS的通信架构是ROS的灵魂,也是整个ROS正常运行的关键所在.ROS通信架构包括各种数据的处理,进程的运行,消息的传递等等.本章主要介绍了通信架构 ...
- ros机器人操作系统简介
机器人操作系统 (Robot Operating System, 或简称 ROS),它可以帮助提高机器人软件的开发效率. ROS 系统的官方定义如下: ROS是面向机器人的开源的元操作系统(met ...
- 入门ROS机器人操作系统——准备工作
近期入门学习ROS机器人操作系统,有时间记录一下踩坑过程,给后来者提供参考,也方便自己后期查阅. 首先,分享几个软件安装包: 1. 虚拟机VMware16 链接:https://pan.baidu.c ...
- ROS机器人操作系统学习(二)
ROS机器人操作系统学习(二) ROS概念 通信机制+开发工具+应用功能+生态系统 提高机器人研发中的软件复用率 通信机制 松耦合分布式通信 开发工具 应用功能 生态系统 节点与节点管理器 话题与服务 ...
- ROS机器人操作系统底层原理及代码剖析
0 目的 本文介绍ROS机器人操作系统(Robot Operating System)的实现原理,从最底层分析ROS代码是如何实现的. 1 序列化 把通信的内容(也就是消息message)序列化是通信 ...
- ROS机器人操作系统学习笔记(一)--基本概念
ROS机器人操作系统学习教程(一)–基本概念 1. 基本概念 1.1 ROS背景 机器人操作系统(Robot Operating System, ROS)是一个应用于机器人上的操作系统,它操作方便.功 ...
- Windows使用ROS机器人操作系统全面资料汇总
0 摘要: 本文以Win10系统中安装使用ROS1Melodic和ROS2Dashing为基础,并通过开源硬件设备Arduino与ROS的通信为示例,具体介绍机器人操作系统ROS1和ROS2的细节.部 ...
最新文章
- layUI 学习记录
- Git 服务器镜像迁移 - 携带提交日志,tag,branch。。
- python 获取公网 外网 ip 几种方式
- django web 自定义通用权限控制
- java split空字符_java split函数结尾空字符串被丢弃的问题
- Linux 下的Core Dump
- python 用户的画像可视化呈现技术_一人一车一面:解读汽车大数据用户画像背后的AI技术...
- 4399元!苹果2020年终极新品上市就遇麻烦:付款3个月才能到货
- HTML日志抓取,如何使抓取的HTML规范化
- layer 延时设置
- 信鸽 ios tag推送 php,信鸽推送集成
- C#删除word页眉页脚和最后一页
- Linux系统下如果查看用户的UID和GID
- 【一】ODB - C++ 访问数据库的利器--Hello World On Windows(Version-24)
- 群晖qb下载,tr辅种
- go 及 liteIDE 安装
- 在数据结构与算法中 传值方式(C语言)
- VMWare的P2V、V2V使用
- 巨子生物IPO:暴利的面膜生意
- Android开发初期之后怎么提升?怎么才能叫精通?方向在哪?