卡西尤特酒店

ATB Technologies采用TI的C2000单片机代码生成技术,将电机控制器开发时间缩短了50%

挑战

开发控制软件以最大限度地提高永磁同步电机的效率和性能

解决方案

使用MathWorks工具进行基于模型的设计,在目标处理器上对控制系统进行建模、仿真和实现

结果

  • 开发时间减半
  • 设计评估简化
  • 加速目标验证和部署

MathWorks工具使我们能够在多个开发阶段验证设计的质量,并在短时间内生产出高质量的组件。”

Markus Schertler,ATB技术公司
ATB Technologies永磁同步电机。

当ATB Technologies的工程师为燃料电池汽车开发高性能压缩机时,他们必须满足客户的严格要求。压缩机的电动驱动电机必须提供高扭矩、快速加速和最高20000转/分钟的转速。为了满足这些要求,他们选择了一种无刷永磁同步电机(PMSM)进行设计。

为了最大化PMSM的性能和效率,工程师们使用了MathWorks工具进行基于模型的设计,开发了复杂的控制算法,包括三相矢量控制、磁场定向控制(FOC)和磁场弱化技术。团队已经采用了增量式的基于模型的设计——在这个项目中,将生产代码生成添加到已经为早期验证使用了建模和设计仿真的过程中。

ATB Technologies的开发工程师Markus Schertler说:“在过去的项目中,万博1manbetx我们在手工编码实现之前模拟并验证了我们的Simulink设计。“在过渡到自动代码生成之后,质量和模块化都更好了,迭代也更快了,所以我们可以快速地从第一个原型转向最终系列。”

挑战

ATB Technologies需要提供一个完整的压缩机单元,包括电机控制软件、电子、电机和其他机械部件。为了使系统的动力、能量密度和效率最大化,这些部件必须完美地协同工作。

该项目过于复杂,无法使用团队的手动编码控制软件标准实践在积极的时间表内完成。ATB Technologies的开发工程师Georg Staffler指出:“手工编码需要花费大量时间,而且总是存在bug。手工编码也使得我们很难向客户证明我们满足了他们的要求,包括符合某些MISRA C标准。”。

ATB Technologies需要一个能够早期验证控制策略、为其选定的目标处理器系列生成代码以及在整个项目中进行快速设计迭代的开发环境。

解决方案

ATB Technologies使用MathWorks工具进行基于模型的设计,在TI C2000上设计、模拟、验证和部署控制系统软件™ 微控制器单元(MCU)。

使用仿真软件万博1manbetx®,该团队开发了一个驱动装置的植物模型,包括在实验室中测量的物理参数。使用Simu万博1manbetxlink和statflow®,他们开发了控制器的初始模型。然后,他们在Simulink中对控制器和设备模型进行闭环仿真,以评估控制策略的可行性。万博1manbetx

在优化控制器模型时,该团队使用Signal Processing Toolbox™设计了降噪滤波器,并使用fixed-point Designer检查了有问题的定点操作

在通过桌面仿真验证模型后,ATB Technologies使用嵌入式编码器®从模型生成代码,并部署到TI C2000 MCU。他们还为车载外设和嵌入式编码器的调度程序生成设备驱动程序。

在嵌入式编码器中使用RTDX通道,团队通过Simulink测试线束验证了在MCU上运行的代码。团队使用RTDX记录信号,然后在MATLAB中进行频谱分析万博1manbetx®调整过滤器并补充设计文档。

因为控制器是在实际电机可用之前设计的,所以最初的测试是使用具有类似电子器件的可比电机进行的。后来的测试包括了生产电子设备,最后的测试是在生产电机和电子设备上进行的。在每次迭代中,团队都会在Simulink中优化设计,并使用Embedded Coder重新生成代码。万博1manbetx

ATB Technologies按时向客户交付了压缩机电机,目前该电机已生产并嵌入道路上的燃料电池汽车中。

结果

  • 开发时间减半Schertler说:“考虑到处理器系列内部的迁移,自动生成代码使我们能够以两倍于应用基于模型的设计但使用手工编码的类似项目的速度完成压缩机项目。”。“代码生成导致更少的错误、更好的质量和更快的迭代,并且它启用了一种模块化方法,促进了跨项目的模型重用。”

  • 设计评估简化.Schertler指出:“通过在Simu万博1manbetxlink和statflow中的模型,我们可以向我们的汽车客户证明,我们的设计符合他们的要求。“这些模型还提高了内部设计审查的效率,因为它们比代码更容易理解。”

  • 加速目标验证和部署“嵌入式编码器使我们能够轻松验证实时实现。例如,我们可以看到单个过滤器工作,并检查我们是否使用了正确的参数,”Schertler说。“通过使用嵌入式编码器生成设备驱动程序和调度程序,然后将代码下载到我们的目标,我们还节省了大量时间。”