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

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

3天内不再提示

电源转换应用控制算法的快速原型设计和部署

星星科技指导员 来源:ADI 作者:Bijesh Poyil and Mart 2022-12-21 15:16 次阅读

作者:Bijesh Poyil and Martin Murnane

模型驱动开发已被业界采用,作为快速原型设计和缩短上市时间的解决方案。但是,在最终实现阶段通常必须投入大量时间和精力,以使产品的性能与模型的性能相匹配。因此,模型驱动开发的全部潜力在实践中并未实现。在本文中,我们将讨论如何在模型开发过程中遵循一些准则和技术来解决这一差距。我们还介绍了如何从模型中生成有效的代码,以缩短产品的上市时间。

介绍

分布式能源(如并网太阳能逆变器)的渗透深度不断提高,导致电力转换社区为这些市场寻找更好、更高效和具有成本效益的解决方案。文献中有许多算法和拓扑可以提高功率转换过程的输出质量和效率。芯片供应商正在推出具有功能和硬件支持的新控制处理器,以有效地实现这些算法。构建完整逆变器的硬件原型并在各种条件下试验其性能是非常昂贵的。此外,在实验过程中算法的任何故障都可能损坏整个系统。这些市场中的产品还需要满足相关的安全标准。因此,电源转换行业在将这些创新技术应用于最终产品方面一直很慢。

模型驱动开发已被采用作为此问题的解决方案。在模型驱动开发中,在生成硬件原型之前构建和仿真系统的完整模型。这验证了算法功能并显着降低了风险。此外,当前的建模工具支持直接从模型生成代码,从而简化和放宽安全认证标准。然而,业界尚未接受完整的模型驱动开发,主要是因为1)最终产品和模型的性能差异很大,2)生成的代码对于目标控制处理器来说效率不高,需要手动修改才能将其带到产品中。

在本文中,我们将讨论可以使模型性能非常接近最终产品性能的技术和方法,以最大程度地降低硬件更改和延迟的风险。我们还讨论了如何从这些模型中有效地生成代码,以使产品更快地进入市场。

模型开发指南

模型驱动开发

考虑并网住宅太阳能逆变器的简化图,如图1所示。太阳能电池板上的太阳辐射产生与辐射强度成比例的直流电。转换器将这种直流电转换为交流电,可用于家用电器,也可以馈送到电网。来自信号链中各个点的电流和电压由适当的传感器检测,并将馈送到逆变器中的控制处理器。在控制处理器上运行的算法分析这些信号并控制功率模块,使产生的电流和电压达到电网所需的频率、幅度和相位。在这种情况下,太阳能电池板充当电源,电网和家用电器充当水槽。在不同的电源转换系统中,源和灌电流会有所不同,但大多数将落入图2所示的结构中。

poYBAGOiss-ASkeYAABmDQPiwVo035.jpg?h=270&hash=F40D201DA4703522633EE5C3484EDC70D98679D0&la=en&imgver=1

图1.太阳能逆变器系统。

pYYBAGOistCAbuc1AABgaMPLC9g418.jpg?h=270&hash=290AEAF6D2070CB63A144DB59559633381985572&la=en&imgver=1

图2.电源转换组件。

电源转换系统/算法设计人员的主要目的是为模块的控制处理器和转换器硬件(如图2所示)找到合适的组件和算法,并满足所有源极和负载变化所需的性能。因此,在设计系统时,清楚地了解系统将要运行的环境非常重要。例如,在为系统设计太阳能逆变器时(如图1所示),设计人员应该知道逆变器的预期安装位置、太阳辐射强度的变化、太阳能电池板的效率、电网条件等。在模型驱动开发中,设计人员首先创建转换器的模型,模拟预期的变化,并验证模型是否按预期工作。大多数情况下,建模工具将提供用于对源和汇进行建模的模型和库块。例如,Simscape Power Systems™来自 Mathworks 有网格、光伏 (PV) 面板和各种负载的模型。这些可用于模拟和验证系统的各种用例。

系统性能取决于系统的所有组件。在某些情况下,设计人员可以自由地从头开始设计,并决定系统的所有组件,以满足对源和负载的限制。在其他一些情况下,由于设计人员无法控制的原因,系统的一部分可能已经修复,并且他们的自由度仅限于少数组件。在本文中,我们假设设计人员的主要目的是为现有拓扑选择和实现正确的控制算法,但所解释的大多数准则也可以应用于一般情况。

构建模型

使用正确的接口以模块化方式构建模型非常重要。结构良好的模型有助于快速分析和调整模型以适应各种用例。建模工具通常提供各种选项,以在适当的抽象级别对组件进行分组并重用。例如,Simulink 具有创建子系统、库模型或参考模型的规定。考虑图2所示的电源转换系统。图 3 给出了 Simulink 模型的顶层视图作为示例。在此图中,电源转换器和控制处理器封装在标记为ADIInverter的子系统中。Simscape Power Systems 提供的太阳能电池板和电网模型用于对电源进行建模,并配置强度和温度。图中的ADIInverter子系统可以进一步分层划分为控制处理器和控制算法模块。

pYYBAGOistGARpznAACY_RSji6U938.jpg?h=270&hash=362C9AEBBFB398C1DEC3CC1BE23A173179939355&la=en&imgver=1

图3.示例 Simulink 模型。

除控制处理器上运行的控制算法之外的所有块都是硬件块。因此,反映这些组件的所有约束的仿真精度是最重要的标准。

这些模块的接口是模拟信号,最合适的选择是连续模型。块控制算法用于在微控制器上运行,应仅使用离散状态和固定步长。最好将其保留为具有不同配置和求解器设置的单独模型,并从顶级模型中引用该模型。这也将有助于算法的代码生成和处理器在环 (PIL) 测试,如下文所述。

求解器步长和数据类型

仿真的速度和精度主要取决于求解器的类型和步长。较小的步长将提供更准确的结果,但会使模拟运行速度变慢。我们希望以最大的精度模拟硬件组件。在大多数情况下,具有可变步长的连续求解器应该可以工作。但是,当开关频率较高时,可能需要手动调整最大步长。例如,如果步长较大,开关频率为100 kHz(如图4a所示)下的PWM产生可能会失真(如图4b所示)。检查快速开关器件的输出以确认步长是否足够始终是一个好主意。由于控制算法在微控制器上运行,因此应使用具有固定步长的离散模型。使用的步长应该是系统中使用的采样周期的最大公约数(GCD)。大多数情况下,建模软件会自动选择它。

poYBAGOistOAYwQNAACgEo0J_Zo678.jpg?h=270&hash=E851118DBB04E5DF56837868F733E47C2212354C&la=en&imgver=1

(a). 具有正确步长的输出。

pYYBAGOistWALHiuAACl-uIWjlg358.jpg?h=270&hash=C004872B76A9BC945F5695107C7ECA5010A495E2&la=en&imgver=1

(b). 大步长输出。

图4.100 kHz 的模拟 PWM 输出。

使用的数据类型也决定了模拟的准确性。使用双精度算术的模拟始终比使用单精度算法的模拟更准确。对于仿真硬件块,建议使用建模软件支持的最高数据类型。但是对于控制算法,我们希望获得与在控制处理器上运行相同的算法的性能,而不是更准确。因此,我们应该使用控制处理器支持的数据类型。例如,如果控制处理器是ADI公司的ADSP-CM41x处理器,则适当的数据类型是单精度浮点数,因为它带有带有浮点单元(FPU)的Cortex-M4处理器。如果控制处理器是定点处理器,例如 Cortex-M3,则应以定点数据类型设计和实现算法。建模软件可能支持从浮点数据类型到定点的自动转换,这将有助于加快开发速度。®

采样周期和精度

传感器在功率转换信号链中各个点感测的电流和电压信号通过控制处理器的模数转换器ADC)提供给算法。ADC的采样速率主要取决于功率模块的开关频率以及应控制的速度。采样频率对控制算法的性能和动态有显著影响。因此,仿真应通过为系统选择合适的采样率来完成。用于控制处理器的ADC仅接受预定义范围内的输入。传感器的输出应归一化,使检测信号的范围完全适合ADC的范围,以获得最佳性能。

ADC的分辨率和精度也因处理器而异,这对算法性能起着重要作用。高精度ADC有助于更好地控制输出,并有助于简化算法并降低指定控制标准的控制频率。为了获得准确的仿真,这些特征应反映在模型中。例如,ADI公司的ADSP-CM41x处理器配备有效位数(ENOB)以上的16位ADC。ADC模块的建模应使其以所需的采样频率和精度将连续信号作为输入和输出离散信号。如果ADC模型支持选择在某些当前采样场景中很重要的采样点,则可以进一步提高仿真精度。

代码生成

通过开发模型和运行用例模拟来验证算法的性能,可显著降低风险并缩短上市时间。但是,当前的建模工具提供了在我们进入硬件原型之前执行更多操作的功能。所有芯片供应商都提供评估平台,用于在其处理器上开发算法。如果我们可以在评估硬件上运行并验证算法性能,这将为算法的性能提供额外的信心,但嵌入式处理器的编译器通常只接受C / C++代码,并且在建模和验证阶段手动开发这些代码通常非常耗时。所以在过去,这个阶段被推到了发展的后期。幸运的是,大多数建模软件现在都支持从模型自动生成代码。可以将控制算法的模型配置为使用预定义的 API 生成代码。仿真工具还提供 PIL 选项,用于直接从建模环境在目标上运行生成的代码。在PIL仿真中,控制算法的输入和输出通过UART等接口与评估板交换。此选项可用于比较在目标上运行算法和在主机上运行算法的性能。

通常,建模和仿真软件支持生成 C 代码,面向更广泛的处理器。硬件供应商将在处理器上具有差异化功能,以加快处理器设计的应用程序的执行速度。例如,ADSP-CM41x处理器带有数学单元加速器,可加快正弦、余弦和平方根等数学运算。利用这些功能以获得最佳处理器性能非常重要。建模工具提供将部分代码替换为自定义代码或将整个算法块替换为其他代码的功能。对于功率转换算法,可以通过为常见算法模块(如直接正交零点(DQZ)变换、锁相环(PLL)等)提供手写优化例程来生成优化代码。代码生成可以配置为使用这些手写例程,而不是默认的泛型例程。芯片供应商可以提供模型库,以加快算法在其处理器上的执行速度。可以利用这些选项为控制处理器生成优化的代码。

除了控制算法代码外,控制处理器还需要用于配置外设(如ADC、PWM等)的代码,以及用于维护系统时序和其他功能的框架代码。建模工具也可用于生成这些代码。但是,框架代码应该做的不仅仅是运行控制算法。为所有这些关联任务开发模型并从中生成代码可能不是一种有效的方法。在这种情况下,框架和外设配置代码可以单独开发,并规定集成生成的控制算法代码。

硬件在环 (HIL) 仿真

电源模块和系统的仿真通常在主机PC上运行。即使在PIL仿真中,也只有控制算法在目标控制处理器上运行。系统的所有其他部分都由主机上的建模软件进行仿真。由于这种模拟需要如此多的资源和执行时间,因此不可能在软件中实时运行这些资源和时间。ADC和PWM的系统动态和性能未在此类测试中得到验证。HIL 仿真 硬件 使用 现场 可 编 程 门 列 (FPGA) 来 仿真 转换 器 组 件、 源 极 和 吸收 器 , 从而 克服 了 这一 缺点。它有助于实时运行整个仿真,并查看ADC采样和PWM控制的实际效果。HIL 硬件 通常 由 不同 的 供应 商 提供, 并 提供 接口 控制 处理 器。应该注意的是,HIL平台无法模拟电源模块的详细开关特性。应单独分析这些影响,以在将其带入最终产品时将风险降至最低。

结论

近年来,建模工具有了很大的改进。在本文中,我们讨论了使模型输出非常接近最终产品输出的各种方法。但是,应该注意的是,有些特性(例如电磁兼容性(EMC))无法在仿真环境中进行验证。识别这些特征并通过替代方法进行分析和验证非常重要。

本文中介绍的步骤(HIL级除外)已成功用于设计和开发针对ADSP-CM41x处理器的控制算法,用于具有3电平ANPC拓扑的逆变器。

审核编辑:郭婷

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

    关注

    37

    文章

    3216

    浏览量

    113108
  • adc
    adc
    +关注

    关注

    95

    文章

    5653

    浏览量

    539508
  • 逆变器
    +关注

    关注

    270

    文章

    4253

    浏览量

    201709
收藏 人收藏

    评论

    相关推荐

    混合动力车的快速控制原型、仿真及远程监控系统报告

    混合动力车的快速控制原型、仿真及远程监控系统报告报告内容1.HEV及FCV的发展2.虚拟仪器技术与V型开发模式3.燃料电池混合动力系统测试/仿真/RCP/HIL4.FCV车载测试系统 [hide]
    发表于 12-16 09:23

    安森美半导体开发方案助力客户快速开发及部署物联网设备

    、云联接扩展及操作系统 (OS) 升级,使客户能更快开发及部署不同的IoT方案,应用于各种领域包括:工业4.0、物流4.0及服务4.0,具有联接的资产跟踪器,联接的工具和机器,预测性维护及流程控制个人
    发表于 10-26 08:48

    依靠Energia生态系统快速进行24位Δ-Σ ADC原型设计评估

    内开始进行快速原型设计评估。之后会按步骤进行普通快速原型设计以建立针对通用温度输入的示例实施。 主要特色 对 ADS1220 进行 Energia
    发表于 11-08 16:48

    用户界面原型设计

    。LabVIEW能够帮助用户在设计和建模的周期中轻松添加功能性,最小化设计中的重复工作。通过LabVIEW,您可以快速进行UI的原型设计,在整个原型设计过程中进行修改,并将它部署到成品
    发表于 04-29 09:40

    【安合科技BB4808G4数字电源开发板试用连载】便携数字电源原型设计

    的设计工作,能通过这个项目评测BB4808G4的电源开发板测试基于安合科技技术方案的快速开发和快速部署能力。项目计划①开箱测试,测试开发板的基本功能和性能,安装并测试软件开发环境。②通
    发表于 03-19 13:57

    TESTBASE-ARP高级快速控制原型介绍

    TESTBASE-ARP高级快速控制原型
    发表于 01-01 06:51

    如何在嵌入式系统或快速原型构建板上实现即交即用式部署

    如何在嵌入式系统或快速原型构建板上实现即交即用式部署
    发表于 11-22 07:25

    快速原型中SIMULINK模型的代码自动生成

    快速原型仿真是实时仿真的一种,它处于产品研发的算法设计阶段与具体实现阶段之间,是产品研制过程中一个重要环节。本文介绍了在快速原型系统中如何利
    发表于 04-17 22:16 69次下载

    基于PAC的电机控制快速控制原型研究

    电机控制器的开发是电动汽车开发中的重要环节。文中提出了一种基于NI Compact RIO可编程自动化控制器(PAC)的电机控制快速控制
    发表于 03-22 12:09 50次下载
    基于PAC的电机<b class='flag-5'>控制</b>器<b class='flag-5'>快速</b><b class='flag-5'>控制</b><b class='flag-5'>原型</b>研究

    基于赛灵思Kintex-7 FPGA设计或硬件原型快速部署方法

    PLDA集团的990美元XpressK7 PCIe板卡,为系统设计师提供了一个基于赛灵思Kintex-7 FPGA设计或硬件原型快速部署方法。这个主板支持1代、2代和3代PCIe,同时带有一个端点卡缘连接器,可以支持多达四个P
    发表于 02-10 16:58 2191次阅读

    MBED快速原型控制

    ARM的MBED快速成型解决方案对NXP LPC1768微控制器,支持组件和基于云的工具智能USB接口,使单片机功能和应用原型的有效评估。
    发表于 08-04 14:28 7次下载
    MBED<b class='flag-5'>快速</b><b class='flag-5'>原型</b><b class='flag-5'>控制</b>器

    讲述快速原型在各领域的成功案例

    NI工程师将带您领略快速原型在各个领域的成功应用,包括思维车原型设计、实时监测、摩托车ECU原型设计、风洞测试控制、无人驾驶车设计等。 详
    的头像 发表于 06-25 08:45 2729次阅读
    讲述<b class='flag-5'>快速</b><b class='flag-5'>原型</b>在各领域的成功案例

    基于电机算法控制技术的MCU快速原型开发平台

    意昂神州联合美国RMS 公司,为国内外厂家提供完善的电机控制算法( 功率级) 快速原型开发平台,实现从研发至样车生产的一体化解决方案- D2P ( From Development
    发表于 06-27 09:34 454次阅读

    基于SoftSSD的快速固态硬盘固件原型开发

    本文提出SoftSSD,一个面向软件的用于快速闪存固件原型开发的固态硬盘开发平台。SoftSSD的核心是一个具有事件驱动编程模型的新型框架。通过该编程模型,新的闪存转换算法可以被直接集成到全功能
    的头像 发表于 06-07 17:06 673次阅读
    基于SoftSSD的<b class='flag-5'>快速</b>固态硬盘固件<b class='flag-5'>原型</b>开发

    如何使用DC电源模块进行快速原型开发

    BOSHIDA DC电源模块是一种用于转换电源电压的电子元件,它可以把输入的直流电压转换为不同的输出电压,让我们可以在无需改变设备硬件的情况下,实现电压的升降。它广泛应用于不同的电子设
    的头像 发表于 12-11 13:48 247次阅读
    如何使用DC<b class='flag-5'>电源</b>模块进行<b class='flag-5'>快速</b><b class='flag-5'>原型</b>开发