ePWM设置C2000 DSP、输出不正确的频率

28日视图(30天)
你好,
我试图为三相逆变器生成PWM脉冲使用C28335 DSP和Matlab仿真软件。金宝app我的开关频率设置为6 kHz和DPS是150 Mhz(定时器周期TBPRD = 12500)。我发送一个 50赫兹 正弦参考,但是我测量交流电压输出 12、5赫兹 !为什么会这样?我错过了在ePMW块有设置。
同样,如果我看 ePWMA和ePWMB窗格 设置,ePWMB输出窗格中有一个错误——应该CMPA来数(标出)被设置为 什么都不做 而不是 吗?我不知道这四次低频率是从哪里来的。我认为即使阶段不是120°度的转变。
有趣的是,当我联系外部模式和记录数据,输出电压是50赫兹。但在一个示波器微分探针是12,5赫兹!

接受的答案

马纳尔Chilapur
马纳尔Chilapur 2018年7月16日
嗨,迈克,
关于你的观点的同时,如果我看着ePWMA ePWMB窗格设置,ePWMB输出窗格中有一个错误——应该CMPA来数(标出)被设置为无所事事而不是准备好了吗?标出的配置字段为ePWMA ePWMB是独立的领域。所以这个配置在一个输出不会影响输出。
和你的模型很可能因为你用仿真软件“正弦波”块,它将生成的代码并不是针对嵌入式应用程序进行了优化。金宝app这会导致溢出情况明确确定。我们鼓励您使用TI数学库生成正弦值。
以下链接提供了一些见解相同。
https://e2e.ti.com/金宝appsupport/microcontrollers/c2000/f/171/t/40262?Sine-function-on-F28335
接口,外部C / c++代码从仿真软件,像在这种情况下,您将需要从数学库调用Sin金宝app()函数,请以下链接:
https://in.mathworks.com/matlabcentral/answers/51908-how-can-i-implement-coder-ceval-in-金宝appsimulink
你也可以很快做实时执行分析生成的代码的链接:
https://in.mathworks.com/help/金宝appsupportpkg/texasinstrumentsc2000/examples/real-time-code-execution-profiling.html
HTH,

答案(1)

马纳尔Chilapur
马纳尔Chilapur 2018年7月13日
请分享你的模型并提供MATLAB版本细节,和硬件版本细节进一步调查。
1评论
迈克雅司病
迈克雅司病 2018年7月13日
编辑:迈克雅司病 2018年7月14日
嗨Venkatesh来说,
请在附件中找到简单的模型。它包含了参考电压乘以正弦波形,这是PWM的输入。开关频率是4 kHz和DPS基础频率150 MhZ使定时器周期TBPRD = 18750。我用正弦调制三相逆变器。
PWM块C28335 C2000 DSP图书馆的处理器(你需要这个调查块)。我在运行所有这些TMS320F28335实验者工具包。Matlab是R2015a和代码作曲家工作室是5.5。
亲切的问候
更新 :
如果我每组样本时期两倍(Tcontrol * 2)我可以接近50 Hz但仍不完全是。我引用100 Hz记录通过仿真软件,但输出电压频率~ 45赫兹金宝app
ePWM settigns:
更新二世 :
当我运行只开环三相逆变器(简化代码,只有引用和PWM如附件)我可以得到频率大约40 Hz(初始设置Tcontrol = 5 e-5 sec)。
如果这个任务不执行在Tcontrol但是与其他样品的时间? !“小”的代码越近我去50 Hz输出频率!所有输入Tcontrol PWM块与样品时间。这也许可以解释为什么我的软件重新编码总是50 Hz,但产出变化频率的大小更改代码。
我可以看看我是否有溢出或检查代码是完全执行样品时间?
我不能解释为什么我的参考是50赫兹频率和输出变化的大小更改代码。PWM开关频率总是4千赫(由示波器测量),仅参考频率变化。你能请提供任何解释和建议如何解决这个问题。

登录置评。

下载188bet金宝搏


释放

R2015a

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!