单芯片控制多个高性能伺服电机

devtools/2025/1/18 5:25:41/

在我上学的时候,STM32+FPGA的架构是论文或者研究的一个热点。直到Xilinx的ZYNQ和Altera的Cyclone V 出现大家才把研究的重点放到ZYNQ上,但是ZYNQ等架构成本较高及PS或者HPS端通常需要DDR,板子较大,同样的功耗也不低。从这几方面来说,ZYNQ等架构不是为了替代STM32+FPGA的架构,所以这种架构目前还是有自己的应用场景,比如工控领域,今天我们就聊聊伺服电机控制方案。

999da6dd3aae18dbb149b67f20743a17.png

目前电机控制是MCU常用应用,下图就是其实现的方案:

8d4234f404511962151e1ab41d018bf7.png

但是在一些高精度的情境下,MCU也有自己的局限性,即使是高端 MCU 也难以满足全部功能。按顺序执行线程指令是 MCU 的固有特性;但电机控制需要实时确定性地控制电机位置/速度和电机电流。因此,低端 MCU 通常只能控制单个伺服电机。

对于需要控制多个伺服电机的应用,FPGA 可以提供更合适的硬件环境,因为它能够并行执行两个或多个时间关键型功能。

然而,FPGA 市场上的商业选择过去曾使设计人员陷入困境:在实施要求严格的电机系统设计时,OEM 倾向于单芯片解决方案,但可以同时运行位置、速度和电流控制程序的 FPGA 属于高密度端,而这些高端 FPGA 既庞大又昂贵。

在多电机设计中,单个MCU性能不足,而单个高端FPGA性能足够,但成本较高。

然而,目前国产FPGA的崛起,为该领域带来了新鲜“血液”,为设计师提供了一种解决问题的方法,即实现一种经济实惠的单芯片解决方案来解决控制多个伺服电机的问题。

将 MCU 引入 FPGA 的各种方法

由于基于高端 FPGA 实现单芯片电机控制系统的成本较高,设计人员通常采用双芯片方案(即XX32+FPGA),将 MCU 与小型、低密度、价格实惠的 FPGA 相结合。在这种架构中(见图 1),MCU 通常处理位置和速度控制功能,而 FPGA 管理电流控制环路和与电机位置传感器(编码器、霍尔传感器或光学位置传感器)的接口。

f7671aa40928c1c7b982f3fdec2eae81.png图 1:用于高性能电机控制的典型双芯片架构

这种双芯片解决方案提供了确定性控制,但与同等的单芯片解决方案相比,其电路板布局更为困难,供应链更为复杂,物料清单成本也更高。

9bab68d3a83e62851150b8afb03254ac.png

低端和中端 FPGA 制造商已通过将 MCU 引入其产品来应对这一困境(尤其国产FPGA厂商),通常采用内置于 FPGA 中的 Arm® Cortex®-M MCU IP 形式(M0和M3内核已开源)。在某些应用中,提供在 FPGA 结构中实现的 MCU 内核可能非常有用,但对于电机控制,这种软核 MCU 难以提供所需的确定性性能和时序。在软核 MCU 实现中,控制环路的更新速率通常会降低,从而限制了这种单 FPGA 解决方案保持可靠和平稳性能的能力。

8991ab204505a07d1d0054989a1b0129.png

新型混合单芯片电机解决方案

为了解决软核的缺陷,低密度FPGA厂商也积极创新,今天介绍一款来自高云半导体的芯片-GW5AS25。该芯片结合了 288MHz Arm Cortex-M4 的 MCU(来自 Artery 的 AT32F437)和包含 23,040 个逻辑元件的 Arora-V FPGA,这些逻辑元件封装在一个 256 针芯片中,尺寸为 14mm x 14mm。该 FPGA 采用低功耗台积电 22nm 工艺制造。芯片手册:

https://cdn.gowinsemi.com.cn/DS1105-1.0_GW5AS%E7%B3%BB%E5%88%97FPGA%E4%BA%A7%E5%93%81%E6%95%B0%E6%8D%AE%E6%89%8B%E5%86%8C.pdf

e9e180d5c1f7095cc9a2add378dac234.png

GW5AS25 的系统级封装 (SiP) 配置允许电机系统设计人员在执行位置/速度控制的 MCU 和运行一个或两个电机的电流控制环路的 FPGA 之间划分系统功能(见图 2)。

3bfdcffa7648ad4f3e34cb805b3cdf35.png图 2:单芯片多电机控制

如图 2 所示,该解决方案提供了足够的控制环路带宽来管理两个高速运行的电机,同时避免了使用高端 FPGA 执行相同功能而产生的高成本和尺寸损失。

这款硬核 MCU 和 FPGA SiP 不仅为高速电机控制提供了硬件平台,还获得了有助于加速单或双永磁同步电机 (PMSM) 设计的资源支持。这些资源包括:

  • 用于实现各种形式的电流环路控制的参考设计 IP。设计人员可利用此 IP 实现超过 20kHz 的 PWM 开关频率。

  • 内置支持通过工业以太网接口进行高速实时通信

此外,编码器制造商还为其产品接口提供 VHDL 和 Verilog 代码,从而简化了它们与基于 FPGA 的控制系统的集成。

496e056ad30d02c0882f8ad7a75a054a.jpeg

总结

目前,国产FPGA厂商除了要规避传统FPGA厂商的专利壁垒,还能在各个领域不断创新,属实不容易,当然今天只是举例一款芯片,其他国内厂商应该也有类似产品,欢迎大家评论区补充~

635ebf3bbaca72698f8f39c748641ac6.jpeg

http://www.ppmy.cn/devtools/151478.html

相关文章

拆分工作簿转换PDF格式文件一步到位-Excel易用宝

今天一大早老板急匆匆的跑进办公室说,快快快,,快把这个工作簿中的工作表拆分出来,然后转换成PDF格式文件发给客户。 我一看这么多工作表,又是拆分表格,又是转换文件,这么复杂的工作&#xff0c…

[0242-06].第06节:SpringBoot对SpringMVC的自动配置

SpringBoot学习大纲 一、搭建web项目环境: 1.1.基于SpringBoot搭建Web工程: a.创建SpringBoot项目 b.选中依赖:选中我们所需要的模块 1.2.SSM中的WEB开发配置与SpringBoot中WEB开发自动配置对比: 1.在SSM 整合时,需…

【Rust自学】12.6. 使用TDD(测试驱动开发)开发库功能

12.6.0. 写在正文之前 第12章要做一个实例的项目——一个命令行程序。这个程序是一个grep(Global Regular Expression Print),是一个全局正则搜索和输出的工具。它的功能是在指定的文件中搜索出指定的文字。 这个项目分为这么几步: 接收命令行参数读取…

从漏洞管理到暴露管理:网络安全的新方向

在网络安全的快速发展中,传统的漏洞管理仍然是防御体系的基石。然而,面对日益复杂的威胁和不断增长的漏洞数量,单靠漏洞优先级评分(如VPR)已经无法满足现代安全需求。暴露管理这一全新的思维模式正在引领企业从被动应对…

MongoDB 大俗大雅,高端的知识讲“通俗” -- 2 嵌套和引用

开头还是介绍一下群,如果感兴趣PolarDB ,MongoDB ,MySQL ,PostgreSQL ,Redis, OceanBase, Sql Server等有问题,有需求都可以加群群内有各大数据库行业大咖,可以解决你的问题。加群请联系 liuaustin3 ,(共2700人左右 1 …

干货答疑分享记录:as导入问题,LSP含义,分屏进入SplashScreen

背景: vip学员群经常会有学员遇到一些常见的android framework开发问题,近期收集整理一些疑问,主要有以下3个: 1、android studio对源码进行导入时候,老是无法跳转到系统source code 2、学员在群里询问dumpOtherPro…

如何优化Elasticsearch大文档查询?

记录一次业务复杂场景下DSL优化的过程 背景 B端商城业务有一个场景就是客户可见的产品列表是需要N多闸口及各种其它逻辑组合过滤的,各种闸口数据及产品数据都是存储在ES的(有的是独立索引,有的是作为产品属性存储在产品文档上)。 在实际使用的过程中&a…

Linux安装docker,安装配置xrdp远程桌面

Linux安装docker,安装配置xrdp远程桌面。 1、卸载旧版本docker 卸载旧版本docker命令 yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine现在就是没有旧版本的d…