机器人基本知识和ROS介绍

目标
• 了解基本原则和实践当代机器人和ROS系统
• 培养对事实的认识编程机器人需要一个对相关原则的理解和实践(不仅仅是“黑客”代码)
• 将原则和实践应用于协作实验室环境

为什么选择机器人?
• 为了省钱
• 去赚钱
• 为了省时间
• 省力
• 做的事情是困难、肮脏、危险或沉闷
• 提高生活质量

• 消费者Consumer
娱乐,打扫,教育,安全,家庭应用
• 商业的Commercial
医疗/外科,农业,建造
• 工业的Industrial
焊接,部件,绘画,材料处理
• 军队Military
无人驾驶车辆,侦察,外骨骼

公众对机器人的恐惧
“不要再害怕机器人了——不要再把他当人了!只是请记住,缝纫机(sewing machine)是机器人,汽车是机器人、电动汽车和留声机(phonograph),电话都是机器人。
每个男人都为了减轻负担而发展,自己完成了一些繁重的任务,然后去做更好的事情。
每个人都做一项特定的工作,仅此而已。为什么开始现在在我们享受的时候担心机器人,他们服务了几个世纪?”

什么是机器人?
“我无法定义机器人,但当我看到一个时,我就知道一个。”
约瑟夫·恩格尔伯格,1925-2015(第一个工业机器人的开发者在1950 年代的美国)

什么是机器人?
“机器人是一种可编程的驱动机构,两个或多个具有一定程度自主性的轴,移动,在其环境中执行预期任务。”

自主性Autonomous:
能够操作在恒定的人类干涉的条件下
启动机制Actuated Mechanism:
能够移动(真实/模拟)
可编程的Programmable:
能够被重新配置

机器人随着技术的发展而发展:
MECHANICAL -> ELECTRICAL ->ELECTRONIC -> DIGITAL

什么构成了机器人?
• 身体(或身体, 材料, 形态学)Body
• 传感器 => “感知”Sensor
• 效应器 => '动作’Senso
• 控制机制 => “大脑”, 智力, 认识, 负责“行为”(例如互动)Control mechanism
• 能源/电源, 电, 气体(气动, 液体(液压)Energy/power source

身体
•设计原则“机械对称”(类似机器),“动物形态”(类动物、仿生、仿生),“拟人”(类人)
•材料:硬,柔软
•一个/多个(群集)
•形态学:车身布局,自由度”

自由度(DoF)•等于独立
定义配置的参数
•三维空间中的刚体对象有六个自由度,三个用于定位,三个用于定向
•操纵器需要至少六个关节,以任意方向定位末端效应器
•冗余(即超过需要的自由度)促进优化,例如…
–能量最小化
–避障
•人的手臂有七个自由度(肩=3,肘=1,腕=3)
•机器人蛇将有许多自由度

传感器Sensors
–摄像头、麦克风、力/压力
–红外、超声波、激光雷达(“光探测和测距”)
–罗盘、陀螺仪、GPS等。
•感知Percepts
–低水平(例如,光线、颜色、声音、温度、接近度、接触、纹理、气味、倾斜、位置、加速度、,
电压、电流等)
–高级(例如对象、人物、场景等)
–抽象(例如意图、含义、情感状态等)
•外部感知与内部本体感觉
(例如方向、效应器关节角度、功率水平等)
•直接感知与推理External perception vs. internal proprioception
(例如,使用光流与。
使用假设和测试进行对象识别)

启动Actuation
•效应器Effectors

–车轮、履带、支腿、机翼等。
–夹具、刀具、钻头等。
–灯、扬声器、激光器等。
•产生运动、光线、声音等。
•行动Action
–移动
–操作(例如夹持、焊接、喷涂、推动等)
–信令(简单低电平vs.协调高电平)
•致动器Actuators
–电动机、伺服装置等。
–气动或液压缸等。
–形状记忆合金等。

相互作用Interaction
•同步传感+驱动Simultaneous Sensing + Actuation

–与环境的互动
–与其他代理的交互
–与自身的互动
•机器人可能能够感知自己的
行动
–优势…
•它可能能够确定它是否在做它想做的事情
应该做的事情(例如使用其视觉系统
检查是否已成功拾取对象)
–缺点…
•干扰(例如,来自电机的噪音掩盖了所有其他
声音)

控制
•机器人的“大脑”
•其“情报”来源
•对其行为负责
•关注…
–推理
–规划
–学习
–感知
–正在进行
•方法受到不断变化的“人工智能”(AI)的范例

操作系统为什么存在?
操作系统提供标准化接口,方便硬件无关的软件。
用户,应用,操作系统,硬件

机器人操作系统的诞生(ROS)
ROS: “the Linux of Robotics”

什么是ROS?
• 开源伪操作系统(位于标准操作系统)
• 用于编程的设计/开发工具集机器人(模拟和可视化工具)
• 分布式架构——不仅仅是通信流程以及机器(例如 PC 到机器人)
• 数据处理和分析
• 独立于语言 – C++、Python(& Java、lisp、
MATLAB等…)
• 实施标准工具和接口以可重用性为目的的不同问题
• 不是操作系统、编程语言或IDE。

关键 ROS 功能:
提供发布-订阅消息
基础设施设计,支持快速和易于施工分布式计算系统。

用于配置、启动、自省、调试、可视化、记录、测试和停止分布式计算系统。

已验证的实施有用的机器人功能,专注于操纵,流动性和感知。

“……根据 ABI研究,大约 55%世界上的机器人将包括到 2024 年 ROS 包

ROS基本图结构ROS Basic Graph Structure

ROS大师 ROS Master
处理分布式通信连接(线程间/计算机)。注册并查找ROS 资源。

ROS 节点 ROS Node
执行计算的进程。例如避障节点:适配电机速度与激光位移数据成比例

ROS主题 ROS Topic
节点交换的命名总线消息。异步。发布/订阅模型。例如订阅 /laser 主题并发布到 /velocity 主题。

机器人基本知识和ROS介绍相关推荐

  1. 机器人开发--Apollo ROS介绍

    机器人开发--Apollo ROS介绍 1 介绍 1.1 概述 1.2 历程 2 ROS的不足 大数据传输性能瓶颈 单中心的网络存在单点风险(ROS2为分布式避免该问题) 数据格式缺乏向后兼容 3 A ...

  2. 如何给定两个gps坐标 算出航向角_机器人开发如何配置ROS中的TF变换关系?

    当我们进行机器人开发时,常常需要面对TF坐标转换,本文以 Autolabor Pro1 与思岚激光雷达为例,介绍ROS TF的使用. Autolabor Pro1是什么? Autolabor Pro1 ...

  3. ROS学习笔记基础2(基础知识和ROS架构)

    ROS学习笔记1(基础知识和ROS架构) 文章目录 ROS学习笔记1(基础知识和ROS架构) 1. 什么是ROS 2. ROS和其他机器人平台有什么不同 3. ROS架构组成 3.1 文件系统级别 3 ...

  4. 【ROS入门教程】---- 01 ROS介绍

    ROS,机器人系统的不二选择 文章目录 ROS,机器人系统的不二选择 ROS是什么 ROS的强大之处 ROS的学习方法 总结 ROS是什么 作为新世纪的孩子们,可能从出生以来,我们就伴随着机器人的飞速 ...

  5. 进阶无人驾驶—百度Apollo ROS介绍

    知识回顾 -上周我们介绍了Apollo控制技术--控制器的类型.主要介绍控制器的类型,大致分为三类,分别是开环控制.前馈环控制和后馈环控制. 其中详细地讲解了前馈环控制器的分类以及控制策略,控制策略主 ...

  6. 微软认知服务应用秘籍 – 与机器人聊知识

    在本篇博客中,我们将会学习到零代码情况下,如何利用已有的技术建立自己的知识问答系统,这种系统的可以广泛适用于学校.企业.客服.政府公开信息等领域,代替传统的电话咨询.电子邮件沟通等高人工负荷的方式. ...

  7. 机器人学习——姿态表达,ros通讯机制

    目录 一.机器人自由度 二.机器人姿态的表达方式 1.旋转矩阵 2.坐标轴旋转--欧拉角 2.1 固定转轴欧拉角 转 旋转矩阵 2.2 非固定旋转轴的欧拉角 3.等效轴角 4.四元数 三.ros基础知 ...

  8. 小学生机器人编程知识

    小学生机器人编程知识?现在的家长在培养孩子的学习方面也是非常的认真的.会给孩子选择一些能够有利于孩子成长的课程,就拿现在很多的家长给孩子选择少儿编程的课程来说,他们想要孩子去学习机器人编程的课程,但是 ...

  9. 机器人编程基础-ETH ROS 2022-Programming for Robotics

    高校中最佳ROS机器人课程之一: rsl.ethz.ch/education-students/lectures/ros.html 2021(noetic): 机器人编程基础-ETH ROS 2020 ...

最新文章

  1. fftw库在windows下的的编译和配置
  2. 前端学习(2043)vue之电商管理系统电商系统之优化web.config.js的配置文件
  3. python执行效果_使用tqdm显示Python代码执行进度功能
  4. php隐藏IP最后位,替换手机号中间数字为*号
  5. 剑灵火龙区服务器位置,剑灵双线火龙新区活动介绍
  6. OBS录制的avi能够被imageJ打开吗?
  7. VPS搭建HTTP代理
  8. 提高电火炉使用安全,微波雷达模组感应控制,雷达感应技术方案
  9. 【Java】面向对象编程题
  10. Java咖啡馆(4)——品味第一杯咖啡
  11. 如何判断手机浏览器是否有安全隐患?
  12. [R分析] 描述统计:频数和频率分布直方图
  13. MySQL Workbench使用教程简介
  14. GBase8s数据库REFERENCES 子句
  15. linux mint必装软件,Linux mint 系统实用软件推荐和安装
  16. 如何使用Metasploit对安卓手机进行控制
  17. 微信不会把关注取消事件推送给服务器,微信公众平台开发关注及取消关注事件的方法...
  18. 西施果蔬彩色保健豆腐
  19. “子弹短信也压根撼动不了腾讯” | 畅言
  20. sd卡不小心格式化怎么恢复,sd卡格式化后恢复数据

热门文章

  1. Windows11 开发者版尝鲜安装教程
  2. uvalive 7480 Association for Control Over Minds
  3. 天声同化oracle,PLOS COMPUT BIOL:Glucoracle——糖尿病患者控制血糖的好帮手!
  4. 《破坏之王:DDoS攻击与防范深度剖析》思维导图
  5. 百信银行架构解密:如何构建全云系统
  6. Java毕设项目大型商场应急预案管理系统(java+VUE+Mybatis+Maven+Mysql)
  7. ProXmoX下使用QM命令部署黑群晖DSM6.1.7
  8. 【Proteus仿真】【STM32单片机】玩转TFTLCD彩屏设计
  9. 解决74ls192无法正常使用。
  10. python处理行情数据_Python获取股票历史、实时数据与更新到数据库