不可不看的干货——机器人自主系统的技术构建:感知、决策和执行

来源:机器人大讲堂

近年来,随着工业 4.0 标准的不断推进和人工智能、物联网、大数据等技术的快速发展,机器人产业迎来新一轮浪潮,正逐步向系统化、模块化、智能化的方向发展。除了传统的工业机器人外,在特种机器人和服务机器人领域,如水下机器人、娱乐机器人、医疗机器人、教育机器人、物流机器人等也都得到了大量的应用。

那么如何利用机器视觉、多传感器融合、自主导航、交互系统等技术进一步加速机器人产品的智能化融合,如何快速有效地提高产品开发效率,促进产品迭代周期就成为业界产品研发的重要课题。本文聚焦于感知、决策和执行等机器人系统开发全面环节,阐述如何利用MATLAB& Simulink将机器人构想、概念转变为自主系统的相关技术环节,并展示系统级建模、仿真、测试及自动代码生成技术在产品开发中的实际应用。

(自主机器人的路径规划和导航)

使用 MATLAB 和 Simulink,您能够:

▶使用您开发的算法连接并控制机器人。

▶开发跨硬件的算法并连接到机器人操作系统 (ROS)。

▶连接到各种传感器和作动器,以便您发送控制信号或分析多种类型的数据。

▶可采用多种语言,如 C/C++、VHDL/Verilog、结构化文本和 CUDA,为微控制器、FPGA、PLC和 GPU 等嵌入式目标自动生成代码,从而摆脱手动编码。

▶使用预置的硬件支持包,连接到低成本硬件,如 Arduino 和 Raspberry Pi。

▶通过创建可共享的代码和应用程序,简化设计评审。

▶可利用遗留代码,并与现有机器人系统集成。

 

使用 MATLAB 和 Simulink 简化机器人路径规划和导航的复杂任务。此演示介绍了如何仿真自主机器人,只使用三个组件:路径、汽车模型和路径跟踪算法。

一、机器人物理系统建模

在机器人系统开发中,通过对被控物理系统进行准确的建模仿真,可以帮助开发人员更加容易设计出实现预定控制目标的控制器并且评估机器人物理系统的行为。

在设计机器人硬件平台时,利用MATLAB和Simulink可以设计和分析三维刚体机械机构(如汽车平台和机械臂)和执行机构(如机电或流体系统)。通过直接向 Simulink 中导入URDF文件或利用 SolidWorks和Onshape等CAD 软件,可以直接使用现有CAD文件,添加摩擦等约束条件,使用电气、液压或气动以及其他组件进行多域系统建模。运行后,可将设计模型重用为数字映射。

在机器人物理系统设计领域,MathWorks的Simscape产品系列提供全面的物理系统设计组件,包括机械、电器、磁场、液压、气压和热等,可跨越复合物理区域进行建模。

二、机器人环境感知

机器人环境感知是智能机器人的神经中枢,作用是获取机器人内外部环境信息,并把这些信息反馈给控制系统进行决策。

开发人员可以开发跨硬件的算法并连接到机器人操作系统 (ROS),通过 ROS 连接到传感器。摄像机、LiDAR 和 IMU 等特定传感器有ROS消息,可转换为MATLAB数据类型进行分析和可视化。设计人员可以实现常见传感器处理工作流程自动化,比如导入和批处理大型数据集、传感器校准、降噪、几何变换、分割和配准。

在获取到传感器的数据之后,利用内置的 MATLAB 应用程序,可交互地执行对象检测和追踪、运动评估、三维点云处理和传感器融合。使用卷积神经网络 (CNN),运用深度学习进行图像分类、回归分析和特征学习。将算法自动转换为 C/C++、定点、HDL 或 CUDA 代码。

三、机器人路径规划和轨迹控制

运动规划是机器人控制的重要决策依据,是确保机器人达到目的的最优路径并不与任何障碍物碰撞的手段。

在进行机器人运动规划和轨迹控制时,可以通过以下的方式实现

1)使用 LiDAR 传感器数据,通过 Simultaneous Localization and Mapping (SLAM) 创建环境地图;

2)通过设计路径规划算法进行路径和运动规划,在受约束的环境中导航;

3)使用路径规划器,计算任何给定地图中的无障碍路径;

4)实现状态机,定义决策所需的条件和行动;

5)设计决策算法,让机器人在面对不确定情况时能做出决策,在协作环境中执行安全操作。

四、基于AI的机器人控制系统设计

如何赋予机器人自主学习的能力,是人工智能领域的重要发展方向,为适应日趋复杂的应用场景,需要机器人系统学习大量的输入数据,自动优化控制策略。

利用MATLAB & Simulink可以实现基于强化学习的机器人控制系统设计。设计人员使用算法和应用程序,系统性地分析、设计和可视化复杂系统在时域和频域中的行为。使用交互式方法(如波特回路整形和根轨迹方法)来自动调节补偿器参数。还可以调节增益调度控制器并指定多个调节目标,如参考跟踪、干扰抑制和稳定裕度。并且可以实现代码生成和需求可追溯性,有助于验证设计人员的系统,确认符合要求。

以上部分介绍了机器人系统开发中的关键技术的理论概要,并对如何利用MATLAB & Simulink进行机器人系统的建模、仿真、测试进行了阐述。

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/487811.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php伪数组转换为数组,JavaScript伪数组用法实例

在Javascript中什么是伪数组?伪数组(类数组):无法直接调用数组方法或期望length属性有什么特殊的行为,但仍可以对真正数组遍历方法来遍历它们。本文实例讲述了JavaScript伪数组用法,希望能帮助到大家。1.典型的是函数的 argument参…

前端开发神器 vscode 常用快捷键

主命令框 F1 或 CtrlShiftP: 打开命令面板。在打开的输入框内,可以输入任何命令,例如: 按一下 Backspace 会进入到 CtrlP 模式在 CtrlP 下输入 > 可以进入 CtrlShiftP 模式在 CtrlP 窗口下还可以: 直接输入文件名,跳转到文件?…

前沿科技 | 中科院科学家研究揭示奥陶纪末生命大灭绝新机制

来源:中国科学院火山活动是全球气候变化和海洋化学组成巨变的主要驱动力之一,其中“平流层火山喷发”(即火山物质喷发至平流层-大约离地表20公里)对全球气候有直接的影响。在过去5.4亿年的地质历史中,发生了数次大规模…

php console postman,postman内置脚本说明

.内置脚本说明1. 清除一个全局变量Clear a global variable对应脚本:postman.clearGlobalVariable("variable_key");参数:需要清除的变量的key 2.清除一个环境变量Clear an environment variable对应脚本:postman.clearEnvironmen…

Minimum Path Sum

题目 Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path. Note: You can only move either down or right at any point in time. 方法 从左上方到右下方,仅…

空地通信传输详解——飞机是这样和地面通信的

来源:电子万花筒飞机在空中飞行时是如何与地面联络的呢?飞机在飞行中的数据如何进行空地传输呢?那些部件的数据可以被传输呢?飞机的导航、通信、识别系统主要就是保证飞行的,保障在天上、空对空、空对地、地对空、空对…

win8 oracle10g,win7/win8 下安装oracle10g的方法

我的Oracle 10g版本是10.2.0.1.0,选择高级安装,提示“程序异常终止,发生未知错误”。1.修改Oracle 10G\database\stage\prereq\db\refhost.xml当打开refhost.xml 后会发现有.....只要在 后面添加2.到install目录中找到oraparam.ini文件&#…

​IBM人工智能芯片的新进展

来源:内容由半导体行业观察(ID:icbank)编译自「Venturebeat」,谢谢。IBM苏黎世实验室的研究人员本周在Nature Communications上发表了一篇论文。在文中他们声称,基于相变存储器的技术,他们已经开…

php程序员写bug,程序员的修炼-我们为什么会编写BUG

在最近的一周,我维护的业务系统出现了很多坏毛病,一周七天crash掉了4次,每次都需要都是因为一点很小的问题,触发了蝴蝶效应,导致整个系统全盘崩溃,于是产生除了叙述本篇的想法,当然这并不是为了掩盖我在Coding上的一些细节处理和职责疏忽,只是为了从根本的细节上去分…

强人工智能和弱人工智能

来源:人机与认知实验室人工智能的一个比较流行的定义,也是该领域较早的定义,是由当时麻省理工学院的约翰麦卡锡在1956年的达特矛斯会议上提出的(对此有争议):人工智能就是要让机器的行为看起来就像是人所表…

51Nod - 1183 编辑距离

问题:找出字符串的编辑距离,即把一个字符串s1最少经过多少步操作变成编程字符串s2,操作有三种,添加一个字符,删除一个字符,修改一个字符 解析: 首先定义这样一个函数——edit(i, j),…

张亚勤2020寄语哥伦比亚大学毕业生:引领未知时代

(哥伦比亚大学巴特勒图书馆)2020年5月18日,人工智能和数字视频的世界级科学家和企业家,美国艺术与科学院院士、百度前总裁、清华大学智能科学讲席教授张亚勤博士,在哥伦比亚大学工程学院的毕业典礼上发表了主题演讲。张亚勤说:“面…

oracle跳过undo回滚段启动,[Oracle] 解析在没有备份的情况下undo损坏怎么办

如果Oracle在运行中很不幸遇到undo损坏,当然最好的方法是完全恢复,不过如果没有备份,可以采用一种非常规的手段(利用Oracle的隐藏参数),如果此时undo包含未提交的事务,会造成一点点的数据丢失(一般都是可忍受的)&#…

String s=hello;s+=world;s变化了吗?原始的String对象的内容变了吗?

分析: String s"hello";s"world"; 引用变量s 一开始指向String对象("hello" :0x001); ("world":0x002); s拼接后,就重新指向String对象("helloworld":0x003); 答:s改变了,原始的String对象 "hello" 内容并没有改变…

科技部部长:基础研究是科技创新“总开关”

来源:中国新闻网中新社北京5月19日电 (记者 孙自法)“基础研究是科技创新的‘总开关’!”言及基础研究在中国科技发展、增强原始创新能力中的地位与作用,中国科学技术部部长王志刚这样概括道。国务院新闻办公室19日下午在北京举行加快建设创新…

php评论获取时间,WordPress函数comment_date获取评论发布时间

重要:本文最后更新于2019-01-10 08:41:31,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗。一般来说任何一条信息发布,发布时间就是它的重要组成部分。当评论者在你的WordPress网站发布评论留言时&…

从通用到专用,5G时代IP核的新故事

来源:半导体行业观察如同芯片在不断迭代,IP核也在不断进步。集成电路技术60年来基本遵循摩尔定律的演进规律。随着进入后摩尔时代,即两年一代技术更换的节奏开始放缓,设计和制造企业开始更加重视产品的多样化发展,而不…

连续信号与系统频域分析的matlab实现,实验十三 连续信号与系统频域分析的MATLB实现...

实验十三 连续信号与系统频域分析的MATLB实现 实验十三 连续信号与系统频域分析的 MATLAB 实现70实验十三 连续信号与系统频域分析的 MATLAB 实现一、实验目的 1. 掌握连续时间信号频谱特性的 MATLAB 分析方法;2.掌握连续系统的频率响应 MATLAB 分析方法方法。二、实…

[机器学习] Apriori算法

适用场合 Apriori算法包含两部分内容:1,发现频繁项集 2,挖掘关联规则。 通俗地解释一下,就是这个意思:1.发现哪些项目常常同时出现 2.挖掘这些常常出现的项目是否存在“如果A那么B”的关系。 举个例子:网店…

华为发布《自动驾驶网络解决方案白皮书》

来源:华为近日,全球分析师大会HAS 2020期间,华为面向全球发布《自动驾驶网络解决方案白皮书》,系统阐述未来网络架构、运维架构和其关键技术,通过网元、网络和云端的三层AI能力协同,使能网络走向极简超宽、…