首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

FPGA在电机控制系统设计中的应用(3)

FPGA在电机控制系统设计中的应用(3)

• 输入激励(绿色 )——提供控制输入(位置申请 )

• 电机模型(蓝色)——对PMSM电机进行建模

• DSP Builder位置速度FOC控制器(橙色)——对控制算法进行模型

采用DSP Builder 进行设计调整

设计人员可以从MATLAB 工作空间变量中控制关键系统参数,调整设计:

• 折叠因子——扫描延时、吞吐量以及资源使用情况,找到最佳实现点。

• 定点算法精度——观察算法中不同级精度调整的影响,以提高算法性能和资源利用率。

• 算法调整——相对于设备(电机)的物理模型仿真实际算法,调整PID控制器、滤波器的参数,在模型级进行观察。

基准测试结果

下面详细介绍通过在 Simulink中建模所获得的算法基准测试结果,在 Cyclone® IV器件中使用了单精度浮点和定点类型。结果表明,设计实例满足所需要的 100MHz时钟速率、资源利用率以及算法延时要求。

在Quartus II软件中成功进行编译后,设计人员点击Simulink图中的Quartus模块链接,可以获得正确的资源使用信息。

一般而言,以定点方式来实现不需要浮点大动态范围的设计。但是,浮点实现避免了算法开发和调整过程中出现的算法上溢问题。

默认情况下,DSP Builder建立一个全流水线VHDL表征,可以在每一时钟周期中接收新输入值。然后,对比这一“非折叠”配置结果与“全折叠”配置结果。

如图11所示,表1中的结果表明,由于采用了折叠因子,显著减少了算子数量,因此,可以使用低密度 Cyclone IV器件。而且,对于算法而言,增加的延时是可以承受的。控制环的速度是算法延时加上建立时间。在5ms时,结果是每秒200K循环(或者PWM输出),完全满足所需的规范要求。

表1.折叠因子的优点



表2.定点浮点对比


注释:
(1)浮点结果使用了浮点正弦。使用定点实现,占用的LE资源减少了4K LE,乘法器减少了16个。

DSP Builder同时支持定点和浮点实现。表2和图12对比了“全折叠”定点和浮点实现所需要的资源。使用 MATLAB工作空间变量来控制定点精度,支持设计人员进行简单的试验。

图11 系统资源和延时——没有折叠以及 100倍折叠

图12 系统资源和延时——定点和浮点

结果总结

从基准测试试验中得到了以下结论:

• 使用FOC模型和浮点精度对LE资源使用的确有一些影响。但只是稍微增加了一些延时(不到5ms),对于运算而言,延时是可以接受的。

• 精度降低到16位也减少了对资源的使用,这是因为有较窄的数据通路。

• 折叠因子提高了硬件资源使用率,同时满足了 1-Msps的吞吐量。这样,可以实时处理10通道的100-ksps FOC算法。

总结

在下一代电机控制系统中,对目前的现代 MCU和 DSP模块性能要求越来越高。设计人员要求能够灵活的调整电机控制算法,以降低成本和功耗。商用 DSP解决方案的定点和浮点能力有限,不能适应驱动系统所需其他组件的要求。

相反,Altera FPGA支持组件集成,例如,能够管理所有操作的处理器,灵活方便的连接定制子系统,优化设计流程,从而简化了复杂并行电机控制环和算法。电机系统结合了各种快速控制环、定时输出脉冲频率以及多传感器接口和滤波功能。Altera FPGA内置了并行处理功能,提供高性能精度可调 DSP模块,从而解决了电机控制系统遇到的难题,为其提供良好的解决方案。除了这些内在的 FPGA优势,Altera还提供更好的设计方法。在建模时使用 MathworksSimulink/MATLAB工具,Altera的 DSP Builder对电机算法进行优化,Qsys或者 SOPC Builder实现系统集成,Quartus II软件用于设计综合和布局布线,实现了全面的集成设计方法,从而能够处理复杂的驱动系统。
继承事业,薪火相传
返回列表