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

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

3天内不再提示

利用数字ASIC或FPGA技术的无传感器电机控制算法的实现

电子设计 来源:电子工程网 作者:电子工程网 2021-03-28 11:26 次阅读

如今越来越多的电器制造商采用变速永磁(PM)同步电机来提高能效、增加产品特性。工业驱动器制造商很早就认识到PM电机具有高能效和高功率重量比,但控制电子技术的最新进展才使得PM电机被电器制造商广泛采纳。

只需采用直流环节电流反馈技术的定向控制(FOC)可最小化系统成本,对电器驱动器应用非常有吸引力。电机的正弦控制可产生平滑的扭矩输出,输出的声学噪声很低。因此,FOC适合用在风扇、水泵、洗衣机和干衣机等低噪声和高能效非常重要的设备中。

空调和洗衣干衣机等许多电器设备必须独立控制两个电机的速度,以优化它们的性能。这些系统所采用的传统方法是使用带串行通信链路的电机控制处理器来实现同步。但是,如果用一个器件控制两个电机,就可以大大简化硬件和系统设计。最近推出的电器控制平台可仅利用直流母线电流反馈技术同时控制两个PM交流电机,该芯片采用嵌入式FOC算法,可缩短开发时间,并推动电器制造商快速采纳这种技术。

1 无传感器电机控制算法的实现

FOC在工业驱动系统中很常见,它一般采用编码器或分解器测量转子的位置。闭环电流控制算法利用转子的角坐标校正电机电流和转子磁通,从而实现扭矩输出的最大化。电器控制系统中先进的转子位置估算算法无需使用高分辨率位置传感器(图1)。

利用数字ASIC或FPGA技术的无传感器电机控制算法的实现

图1:定向控制(FOC)系统通过使用直流环节电流反馈技术消除了对位置传感器的需求。

估算算法根据采用绕组电压和电流的电机模型,获得PM的转子磁通位置。这种方法非常合适,因为转子上的磁体决定了转子磁通的位置。绕组电流测量数据是利用基于功率变换器的状态知识的正确的ADC采样时序,从直流环节电流中获得的。

系统框图表明,绕组电流测量数据和绕组电压驱动值是计算转子角位置和角速度的转子磁通模型的输入。扭矩和磁通控制环路不仅能在较低速度范围内实现最大的扭矩输出,还可以实现弱磁下的高速操作。

在第一代FOC电机驱动系统中,这些功能是由模拟和数字器件的组合电路实现的。如今,这些电机驱动系统中的大部分已采用高速DSPRISC处理器在单个器件上实现相关算法。软件实现不仅带来了灵活和硬件简单的优点,也给驱动系统开发人员带来重要的软件开发任务。生成控制算法的软件代码需要许多步骤。第一步,系统工程师将控制原理图转换成代表各种控制功能的微分方程组。第二步,软件工程师将这些微分方程转换成代表处理器执行指令的C代码。这个过程出错,从而延长开发时间,除非代码具有很好的结构和文档,并有长期软件维护小组。RISC处理器和DSP供应商可以提供一整套FOC软件实例来帮助电机驱动公司加快开发进程。这是很有可能的,因为FOC控制技术非常成熟,所以算法结构也可以定义得非常完善。然而,软件实现在目前是没有特别优势的,因为算法结构的灵活性不是必需的。

控制系统设计工程师可以利用数字ASICFPGA技术,以硬件方式实现FOC算法。开发过程的第一步与软件方法没太大区别,但在第二步中不再使用C代码,而是由硬件工程师将微分方程转换成代表逻辑门互连的Verilog代码。这种设计可以在控制寄存器中定义并存储控制参数,以提供灵活性,但在数字ASIC中实现算法结构的硬连线。这种方法在要求高速处理的电信系统中非常普遍,许多电机控制ASIC可以实现FOC和其它电机控制功能。这种方法的优点不仅在于执行速度,还在于它能显著缩短系统的开发时间。

运动控制引擎(MCE)则提供另一种方法,该方法兼有专用ASIC硬件的高速性能和可编程处理器的灵活性。这种方法特别有效,因为FOC算法使用了许多标准函数,比如误差放大器、比例积分(PI)补偿器,以及会多次出现在控制电路中的矢量旋转器。MCE由硬件电机控制函数库组成,通过将输入和输出存储器地址分配给相应的系统变量,可高效地实现运动控制定序器与这些函数的互连。

控制系统工程师不需要将控制原理图转换成微分方程组,因为在MCE库中具有经过充分优化的ASIC实现。相反,控制系统工程师采用原理图编辑工具,以图形化的方式通过互连运动控制库中的标准函数来确定控制原理图。图形化编译器将控制原理图转换成用于互连硬件控制函数的MCE定序器命令。编译器将MCE的共享RAM区中的各个地址,分配给控制节点定义的每个算法变量。MCE定序器命令定义每个控制函数块以及输入输出变量的存储器地址。因为MCE将这些命令存储在存储器中,所以具有与RISC处理器和DSP一样的灵活性。

PWM开关频率设置算法执行的时序、ADC采样率和输出电压的更新速率。MCE库元件代表空间矢量调制器和ADC输入,但它们在控制原理图中只出现一次,因为它们与物理的输入输出引脚相对应。另一方面,矢量旋转器或PI补偿器等MCE库控制函数可以多次出现在控制算法中,因为MCE将它们的输入输出存储在数据存储器中。库函数的每次实例化都会占用数据存储器空间来存储变量和MCE指令,因此存储器容量限制了算法的复杂性。每个库函数在每次执行时都会占用一定的系统时钟周期,因此控制环路总的时钟周期数必须小于PWM周期中的时钟周期数。

转子角度估算器和电流控制环路大约要消耗1,400个系统时钟周期,相当于128MHz最大系统时钟频率下的11μs时间。这样,在相当于20kHz开关频率的50μs PWM周期下,可以同时实现对两个电机的控制。当然,为控制两个电机,芯片需要两套空间矢量PWM调制器和用于电流采样的额外模拟输入端。图2是一个双电机控制IC的结构图,它包含嵌入式运动控制引擎和用于执行应用层代码的8位微控制器内核。这种方法的优势是它能将在微控制器上执行的慢速系统级功能与MCE执行的高速电机控制算法分隔开来。

图2:包含用来执行应用层任务的8位微控制器的双电机控制芯片。

2 MCE库函数

高速执行控制算法的关键是MCE库函数在ASIC中的实现效率。两个重要的反馈控制单元(PI控制补偿器和矢量旋转块)可以作为库函数的典型例子。ASIC实现需要优化硅片和时钟周期的使用,并同时不牺牲鲁棒性和可靠性。

图3:比例积分(PI)控制补偿器可高效地使用MCE硬件资源和时钟周期。

众所周知的PI控制补偿器的ASIC实现(图3)基于连续时域转移函数:

将这个表达式转换到离散时间域就可以产生一组定义ASIC实现的微分方程:

为保持低输入电平时的精度,并将输出重新调节到16位变量,积分项的总和具有32位分辨率。抗饱和模块可以在输出达到系统的物理极限时,防止积分项饱和。

矢量旋转模块是一个二维矩阵函数,用来实现旋转和固定参考系之间的电压转换。

前向旋转具有正弦和余弦项:

有多种三角恒等式可以将正弦和余弦项的运算简化为0到90?范围的正弦函数运算,但根据可用硬件的不同,该项的运算会有所变化。在一些微控制器实现中,快速乘法函数的缺乏将迫使软件开发人员依赖简单的查找表。在具有单周期乘法指令的DSP或RISC处理器中,可用泰勒展开式计算正弦函数。

针对基于一系列加法、减法和移位函数,仅在13个周期内就可实现12位精度的ASIC实现,开发被称为CORDIC算法的矢量旋转函数(图4)。这种运算要比在32位RISC处理器上使用泰勒展开式进行运算快10倍。

图4:CORDIC算法计算矢量旋转的速度比使用泰勒展开式的方法快一个数量级。

3 简化电机控制

尽管可能存在许多种配置,但图5所示的采用单个控制IC操作双电机平台的配置是最高效的。这种配置不仅能消除用来控制第二个电机的第二个IC(该IC导致了不必要的冗余设计),还使得两个电机的复杂接口设计成为可能。例如,当一个电机发生故障(比如短路或闭锁),第二个电机可以立即像反射动作一样被去激励,从而减少与主控制系统通讯相关的延迟。以空调应用为例,压缩机电机的速度和蒸发器风扇要求相互跟踪以优化工作效率,控制系统通过直接写入MCE寄存器设置电机速度,并避免多个IC之间的复杂通讯。

图5:通过单个平台提供的双电机控制可以消除冗余硬件和对两个分离控制器之间的复杂通讯链路的需求,并能实现两个电机之间的复杂接口。

责任编辑:gt

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

    关注

    2525

    文章

    48069

    浏览量

    739998
  • FPGA
    +关注

    关注

    1602

    文章

    21309

    浏览量

    593130
  • 电机
    +关注

    关注

    139

    文章

    8312

    浏览量

    142059
收藏 人收藏

    评论

    相关推荐

    异步电机速度传感矢量控制设计

    基于转子磁链观测电压模型与电流模型构造转速辨识模 型,算法简单,能实时跟踪电机转速变化。在此结合应用SVPWM技术构建了转子磁场定向速度传感器
    发表于 01-21 15:40

    传感器电刷的电动机控制设计

    传感器造出精确的速度控制,通常需要更昂贵的正交编码测速发电机,因此,创造一个
    发表于 01-25 17:31

    采用56F801X的3相刷直流电机传感器控制参考设计

    该参考设计是3相刷直流(BLDC)电机传感器用于风机,泵和压缩机基于低成本NXP驱动® 56F801X数字信号
    发表于 07-18 14:13

    实现与位置传感器的简单对接

    很多原始设备制造商 (OEM) 已经习惯于依赖现场可编程门阵列 (FPGA) ASIC技术来完善现成可用的产品所不支持的功能。这些功能中的其中一个就是与工业用伺服
    发表于 09-04 14:39

    面向高效电机控制传感器矢量控制技术继续发展

    ,有助于增强矢量控制和弱磁控制。EKF以其简单、最佳、易控制和稳定可靠,成为应用最广泛的非线性系统跟踪和估计方法之一。为实现对凸极IPMSM的
    发表于 10-10 18:16

    基于FPGA SOPC技术传感器非线性软件校正实现

    转换电路之前,由于器件的输入阻抗比较低,而传感器的输出阻抗较高,不能直接把模拟信号送入模拟数字转换电路。本文采用TLC279构成电压跟随实现阻抗变换。考虑到在
    发表于 11-01 17:24

    传感器BLDC电机控制引入低成本应用

    已出现相当长一段时间,但在过去,它们需要昂贵的控制器才能运行除去传感器所需的算法数字信号控制器(DSC)(例如Microchip的dsPI
    发表于 11-08 16:08

    案例分享:位置传感器电机控制

    。那么,位置传感器,是否也能控制电机?答案是可以的。二、方案。方案如下图所示。其中,3Phase Inverter由6个MOS管和MOS管驱动组成。VBUS测量
    发表于 10-14 11:49

    关于BLDC电机控制的所有信息:传感器刷直流电机控制器

    电动机的转速成正比。反电动势可用于确定电动机的转子速度和位置-无需传感器。通过反电动势控制电动机不是一件容易的事。大多数传感器BLDC电机
    发表于 10-25 09:51

    多个永磁电机传感器磁场定向控制

    精准的数字矢量控制算法。 本文档中讨论了这个算法实现。FOC算法在很大速度范围内保持高效,并且
    发表于 12-10 17:17

    传感器BLDC电机控制怎么引入低成本应用?

    传感器系统已出现相当长一段时间,但在过去,它们需要昂贵的控制器才能运行除去传感器所需的算法数字
    发表于 04-15 08:00

    如何将传感器BLDC电机控制引入低成本应用

    传感器系统已出现相当长一段时间,但在过去,它们需要昂贵的控制器才能运行除去传感器所需的算法数字
    发表于 08-28 08:04

    低成本FPGACPLD实现节能型家电电机控制设计

    运行速度。利用数字电路FPGA控制模拟电机电路将使系统成本和功耗大大降低。采用
    发表于 07-14 08:30

    一种传感器刷直流电机控制算法

    Microchip 的应用笔记 AN1083 详细地讲述了一种传感器刷直流电机控制算法,其
    发表于 08-17 06:39

    一种大电流传感器BLDC电机控制器电路

      在这篇文章中,我们将讨论一种大电流传感器 BLDC电机控制器电路,该电路不依赖于霍尔效应传感器来启动操作,而是
    发表于 09-14 16:09