摘要
本篇笔记主要记录基于MBD模型设计的PWM输出步骤和方法。 前期工具箱的安装不在本文档讨论范围内。
准备工作
1,安装好MPC5744基于模型的工具箱和支持包,这个可以在NXP官网下载
2,按照文档配置编译器和设置路径以及license激活,QSG里面写的很清楚,这里不在赘述。
模型设计
正确安装MBD工具箱后,在simulink里面可以看到到MPC5744的外设和例程,这里我们设计三相PWM输出来建立名字为PWM的模型,为后续电机控制打下基础,因为三相PWM互补输出可以用来控制电机运转。
建立的模型如下,根据自己的实际修改管脚和参数,这里使用PWM0,
PWM 配置
因为要控制电机,所以一般我们需要同步输出,使用subsystem 0 同步通道1和通道2. 保证管脚和频率,以及死区配置正确,就可以编译,如果没有错误,就可以生成代码。
编译
建立好模型后,编译如果没有错误就可以生成代码,也可以调整代码生成的配置选项。
生成的代码
烧录bootloader
先将rbf文件bootloader烧进板子,这样就可以直接从simulink里面直接下载了。 bootloader可以是串口,也可以是CAN口引导,如果之前已经烧录过bootloader,则这一步可以省略,如果不想使用bootloader也可以直接使用仿真器下载elf文件到你自己的板子中,或者将xml文件导入S32DS,使用仿真器可以在S32DS里面在线仿真。 后面我们可以抽时间给大家介绍下怎么导入XML文件在S32DS里调试SIMULINK生成的工程。
下载代码
然后就可以重新编译并生成代码下载,
测试
使用示波器观察PWM输出是否符合预期输出,也可以使用freemaster软件上位机观测,这里使用示波器观测三相PWM输出。 通过下图可以看到 PWM A0和PWMB0 输出互补, 10k频率,死区时间也符合设计。
可以看到通过模型很好的控制了PWM输出频率和占空比,可以动态调整模型参数观测输出结果。
总结
至此基于MBD模型设计的PWM输出满足要求,符合设计需求,为后续电机控制模型打下基础,有兴趣的可以研究更多基于模型的PWM功能设计。
-
NXP
+关注
关注
60文章
1295浏览量
185756 -
PWM
+关注
关注
114文章
5206浏览量
215282 -
Simulink
+关注
关注
22文章
536浏览量
62831 -
模型
+关注
关注
1文章
3393浏览量
49367 -
编译器
+关注
关注
1文章
1643浏览量
49372
发布评论请先 登录
相关推荐
基于模型的设计(MBD)的深入讨论
基于模型的高级电机控制系统设计
MBD设计模式
PWM输出原理、PWM工作过程、PWM功能常用函数和PWM输出配置步骤
PWM输出实验步骤,PWM输出代码

CANape/vMeasure exp控制OUTMM输出PWM波的方法

PWM输出配置方法

评论