MBD实战之MBDT 第02期:MBDT实现电机控制

时间:2022-08-21 12:34:54  热度:1°C

全文约1411字,三段视频,你将看到以下内容:

  • 从MBDT生成电机控制代码

  • MC DevKits的使用

  • MBDT对比

  • 下期预告

1从MBDT生成电机控制代码

本期也属于MBDT(Model-Based Design Tools)上手的一部分,主要是进阶一点的电机控制算法。电机控制很适合基于模型的设计(Model-Based Design,MBD)的练习。关于MBDT的基础内容,可以在文末点击“阅读原文”查看上一期。

MBDT中有很多电机控制的示例模型,可以直接生成代码,并且提供了配置好的FreeMASTER工程,可以查看Hall信号、电流、电压等信息。如下图所示,双击可以打开查看模型。

MBDT提供的电机控制的示例模型 -FromautoMBD

为了不破坏原来的模型,不建议从库中打开模型。下面以MBDT的示例工程BLDC_ClosedLoop_s32k144/mdl为例,展示如何利用MBDT生成并运行电机控制算法,使用到的硬件是MCSPTE1AK144。

MCSPTE1AK144 -FromNXP

找到示例模型BLDC_ClosedLoop_s32k144/mdl的目录位置,将整个目录复制到合适的位置。默认情况下示例模型的位置在这个目录下:

MBDT示例模型的位置路径 -FromautoMBD

路径的前面部分可能会因为安装的位置和电脑配置的不同,而产生差异,注意辨别。然后将MATLAB的工作空间放到你复制的位置,打开BLDC_ClosedLoop_s32k144/mdl模型:

打开示例模型 -FromautoMBD

特别需要注意的是,原始的MBDT的BLDC_ClosedLoop_s32k144/mdl模型配置有点错误,需要进行修改。原始模型中Hall A和Hall B的引脚配置需要修改为如下配置:

  • Hall A:PTD11修改为PTA15

  • Hall B:PTD10修改为PTA16

修改HallA/B的引 -FromautoMBD

具体的修改依据可以查看S324144EVB的原理图,这里给出截图供读者参考:

HallA/B电路图 -FromautoMBD

可以看到PTD11和PTD10是DNP(Do Not Populate)状态,不能使用,能使用的是PTA15和PTA16。

接下来的步骤通过一个视频向大家展示:

利用MBDT生成电机控制代码 - FromautoMBD

这里也给一个电机运行起来的视频。

电机运行状态 - FromautoMBD

至此,MBDT的基本上手就全部结束了。读者还可以查看其他的示例模型,自己尝试一下生成代码和运行,会对MBD有更深的体会。

电机控制模型具有一定的复杂度和丰富度,仔细阅读模型是怎么***的可以了解很多MBD的开发方法,包括状态机的***、事件的控制、算法的实现等。

2MCDevKits的使用

NXP也给了纯代码的电机控制方案,这里做一个简单的介绍,作为MBDT的对比。

免责声明:
1. 《MBD实战之MBDT 第02期:MBDT实现电机控制》内容来源于互联网,版权归原著者或相关公司所有。
2. 若《86561825文库网》收录的文本内容侵犯了您的权益或隐私,请立即通知我们删除。