0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MCU在机器人中的规范注意事项

jf_pJlTbmA9 来源:jf_pJlTbmA9 作者:jf_pJlTbmA9 2023-07-24 14:10 次阅读

机器人MCU有独特的需求。经过优化用于机器人的 MCU 通常包含多种功能,包括内置互联网协议 (IP) 连接、信息安全和功能安全保护以及高级控制算法。将 MCU 内核与现场可编程门阵列 (FPGA) 集成是优化机器人应用的一种手段。机器人操作系统 (ROS) 最初针对更高性能的中央处理器 (CPU) 进行了优化,现在已被简化并作为微型 ROS 发布,以便在嵌入式 MCU 和其他资源较少的环境中运行,进一步提高了 MCU 在机器人技术中的实用性。

用于机器人的 MCU 采购继续成倍增加。本 FAQ 将回顾基本的机器人平台架构,特别强调 MCU 的使用;它回顾了 MCU 内核与 FPGA 集成时打开的性能选项,并回顾了使用 micro-ROS 的好处。 MCU 是机器人设计中的重要元素。即使是简单的消费类机器人也可以包含多个 MCU,用于实现通信、用户界面、USB电机控制等专用功能(图 1)。

wKgZomS-FVqAJ2ckAAA5oKgWcA4368.jpg
图 1:即使是相对简单的机器人真空吸尘器,也可以有多个 MCU 来处理专门的用户界面、连接和电机控制任务。 (图片:Microchip

智能工厂和工业 4.0 的出现正在推动对日益精密和复杂的工业机器人的需求。包括网络通信、功能安全需求和预测性维护等需求增长,需要更高性能外设和加速器的 MCU 。通常运行频率为 800 MHz 至 1GHz 的异构多核 MCU。处理速度对于支持多轴机器人中电机位置、方向、速度和扭矩的高精度控制至关重要。

用于机器人的高性能 MCU 包括支持伺服控制所需计算的专用加速器硬件。在某些情况下,电流控制环路计算可以在 1.5µs 内完成。在伺服电机驱动系统中,控制回路可以分为多个层次,包括更高级别的运动控制回路、位置回路、速度回路和转矩/电流回路,以级联拓扑结构排列(图 2)。上游控制回路倍数于下游控制回路,并为下游提供参考数据,其中转矩或电流回路是最严密的控制回路。

wKgaomS-FWSAcHgOAAA98dejSls031.jpg
图 2:伺服电机控制回路级联拓扑。 (图片:德州仪器

上述架构中的控制回路可以在多核 MCU 中的不同内核实现,也可以在 MCU 内核和 FPGA 之间进行划分。分区的优化通过在独立计算资源之间扩展循环来最大化可用处理带宽。每个处理核心都可以快速运行其特定算法,将结果向下传递以供下一个循环使用。同时,它根据需要继续提供其他功能,直到下一组输入数据到达,算法再次开始。

单个 MCU 内核需要高水平的性能才能拥有可用于快速处理基本算法和提供系统所需的附加功能的带宽。由于循环时间在 32 kHz 控制回路中接近 31.25 µs,或者必须几乎同时处理来自多轴的输入,因此必须进行快速处理。有时,它可能需要一个或多个高性能 MCU 加上一个 FPGA 的组合。

MCU、FPGA 和 eFPGA

在机器人系统中,MCU 和 FPGA 的组合可以提供比单一产品更合适的解决方案。其中MCU 灵活且易于编程。 MCU 也可以处理某种级别的并行运算,但最终内核可能成为更高级别并行性能的瓶颈。 FPGA 由数千个逻辑块组成,这些逻辑块可以配置为大规模并行处理。 FPGA 还可以提供更高级别的灵活性,但它们往往更昂贵。

MCU 非常适合处理多轴伺服控制等常规功能。 FPGA 可包含大量 DSP 模块和可编程逻辑,可支持人工智能 (AI)、机器学习 (ML) 和卷积神经网络 (CNN) 推理算法所需的并行处理。机器人平台上需要的 AI/ML/CNN 功能越多,将 FPGA 与 MCU 一起结合的好处就越大。

用户可以使用多种微控制器软件开发工具中的一种。在 FPGA 的情况下,逻辑不是固定的,而是通过在硬件中设计互连结构来“编程”设备以执行特定功能。这些差异导致了 MCU 和 FPGA 之间的成本和性能权衡(图 3)。

wKgaomS-FWiAUetaAAAw9_MqNpI607.jpg
图 3:FPGA 和 MCU 为机器人平台设计人员提供了多种性能和成本权衡。 (图片:Digilent)

根据具体设计的需要,MCU和FPGA的结合方式有以下三种:

MCU 和 FPGA 可以组合为两个分立组件
FPGA 可以包含一个集成的 MCU 内核
MCU 可以包括一个集成的 FPGA 部分

这些方法中的每一种都有其优点。对于同时需要高性能伺服控制能力和大量 AI/ML/CNN 功能的应用,高性能 MCU 可以与单独的大型 FPGA 相结合。 MCU 可能用于控制功能,而 FPGA 用于机器人平台上更密集的人工智能和机器学习活动。在需要大规模并行处理和 AI/ML/CNN 占主导地位的情况下,MCU 内核可以与大型 FPGA 集成。在 MCU 占主导地位且需要相对少量并行处理的情况下,可以将较小的嵌入式 FPGA (eFPGA) 与高性能 MCU 集成。

在许多机器人应用中,通常首选其中一种集成解决方案,集成解决方案可以提供更高的性能水平。当分立的 FPGA 与单独的 MCU 结合使用时,每个设备都需要其内存缓冲区来处理它们之间的数据传输。如果需要在 MCU 和 FPGA 之间传输大量数据,系统性能会受到影响。另一方面,如果 FPGA 和 MCU 集成在一块芯片中,它们可以共享 DDR 内存,并且数据传输不需要缓冲。在这种情况下,数据传输只涉及在 MCU 和 FPGA 之间传输存储器指针。

MCU 机器人操作系统

基本机器人操作系统 (ROS) 是一个用于机器人应用程序开发的开源软件框架,针对运行 Ubuntu Focal、macOS 和 Windows 10 等操作系统的微处理器进行了优化。ROS 2 是新一代的 ROS。 ROS 2 采用分层架构设计,将 ROS 客户端层与 ROS 中间件层分开。 ROS 领域的最新发展是 micro-ROS,它将 ROS 2 带入中档和更高级别的 MCU。需要具有数十 KB RAM 的 MCU 来实现微型 ROS。 MCU 中还需要支持 micro-ROS 客户端到代理通信的通信外围设备。

micro-ROS 提供了一个 ROS 2 开发生态系统,可以在实时操作系统 (RTOS) 之上运行,使它们能够满足需要时间期限或确定性响应的机器人系统任务的时间关键要求。FreeRTOS 是 micro-ROS 项目支持的首批 RTOS 之一,并已集成到其软件堆栈中。 FreeRTOS 社区开发的所有实现和工具都可以与 micro-ROS 兼容(图 4)。

wKgZomS-FWyALWWMAABC2uW9Ll4249.jpg
图 4:微型 ROS 堆栈显示与 FreeRTOS 环境的兼容性。 (图片:FreeRTOS)

FreeRTOS 具有最小的内存和处理开销,RTOS 内核二进制映像仅需要 6K 到 12K 字节,非常适合运行 micro-ROS。除了 FreeRTOS 之外,micro-ROS 还可以与 Zepher RTOS 一起运行,并且 Zepher 由 micro-ROS 客户端库及其中间件支持。

总结

为机器人平台指定 MCU 是一个复杂的过程。通常需要多个 MCU 或具有多个内核的单个 MCU,以及可能添加的 FPGA,作为外部设备或 MCU 内的嵌入式元件。在考虑 MCU 和 FPGA 的集成时,需要进行多种权衡。例如,MCU 可用于控制功能,而 FPGA 则用于机器人平台上更密集的人工智能和机器学习。在 MCU 上运行的微型 ROS 机器人操作系统的发布是高级机器人平台设计人员可用的另一个重要工具。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19156

    浏览量

    229083
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16984

    浏览量

    350263
  • 机器人
    +关注

    关注

    210

    文章

    28191

    浏览量

    206478
收藏 人收藏

    评论

    相关推荐

    PCB参考设计规范 PCB设计注意事项

    PCB参考设计规范 PCB设计注意事项 [/hide]
    发表于 11-30 17:03

    max485专用总线使用中的规范、标准以及注意事项是什么?

    max485专用总线使用中的规范、标准以及注意事项是什么?
    发表于 05-20 07:11

    工业机器人中面对的控制问题是什么

    刚开始接触机器人的时候,我师兄的机器人代码里死活找不到有关控制计算的函数,作为常年和控制框图打交道的我,很是疑惑控制回路去哪里了?因此本文介绍一下工业机器人中的控制问题。参考华科贺磊
    发表于 06-28 09:29

    关于库卡机器人保养注意事项

    关于kuka库卡机器人保养注意事项——库卡机器人发表时间:2020-07-15一、库卡工业机器人本体维护保养1、普通维护1)清洗机械手定期清洗机械手底座和手臂;可使用高压清洗设备,但应
    发表于 09-08 07:02

    工业机器人中有哪些控制问题

    工业机器人中的伺服驱动的目的是什么?工业机器人中的关节内部驱动结构是怎样构成的?
    发表于 10-11 08:37

    HDMITV应用中的注意事项

    HDMITV应用中的注意事项HDMI TV 应用中的注意事项HDMI 做为一种新的数字视频接口规范,其应用越来越广泛。应
    发表于 10-22 08:45 2353次阅读
    HDMI<b class='flag-5'>在</b>TV应用中的<b class='flag-5'>注意事项</b>

    工业机器人电器系统注意事项

    工业机器人电器系统注意事项:系统设计流程
    发表于 02-25 18:11 1次下载

    桁架机器人使用注意事项

    山东康道智能资讯:桁架机器人使用注意事项,本文重点说说桁架机器人在使用过程中要注意的一些事项,除此之外在机械手关机时需要使其手臂
    发表于 12-25 15:11 561次阅读

    仙知机器人的使用注意事项及安全防护措施浅析

    今天,小仙为自己带盐(代言),向大家介绍仙知机器人的使用注意事项及安全防护措施。
    发表于 01-28 15:27 1697次阅读

    ups电池柜安装规范注意事项

    本文主要介绍了ups电池柜安装规范注意事项
    发表于 11-14 10:38 1.1w次阅读

    AN092GD32MCU GPIO结构与使用注意事项

    AN092 GD32 MCU GPIO结构与使用注意事项
    发表于 03-01 18:48 0次下载
    AN092GD32<b class='flag-5'>MCU</b> GPIO结构与使用<b class='flag-5'>注意事项</b>

    焊接机器人的操作流程和操作注意事项是什么?

    焊接机器人的操作流程和操作注意事项是什么?焊接机器人的操作流程:需要对焊接对焊接机器人进行设置、安装工件装夹、启动开机、启动预热功能、执行和检查焊接质量。需要
    的头像 发表于 03-29 08:59 2414次阅读
    焊接<b class='flag-5'>机器人</b>的操作流程和操作<b class='flag-5'>注意事项</b>是什么?

    机器人码垛机的搬运注意事项

    造成工人伤害.码垛机器人的搬运注意事项:  1.当使用起重机或叉车转移码垛机器人时,肯定不能人工支撑码垛机器人控制箱.  2.转移中不要趴在码垛机器
    发表于 07-18 11:02 273次阅读
    <b class='flag-5'>机器人</b>码垛机的搬运<b class='flag-5'>注意事项</b>

    中8位MCU EEPROM使用注意事项

    中颖8位MCU EEPROM使用注意事项
    的头像 发表于 09-27 15:34 1109次阅读
    中8位<b class='flag-5'>MCU</b> EEPROM使用<b class='flag-5'>注意事项</b>

    使用复合机器人需要注意哪些事项

    复合机器人在各领域得到广泛应用,具有高效、精准、灵活等优势。使用时需注意安装要求、使用注意事项和保养注意事项等方面,以确保安全有效地使用。
    的头像 发表于 10-26 17:42 709次阅读