打算做一个51单片机驱动IGBT产生0.5到50HZ可调正弦波的程序
打算做一个51单片机驱动IGBT产生0.5到50HZ可调正弦波的程序,SPWM波形怎样生成呢?现在没头绪,有经验的兄弟指点下。正弦波做个表,定时查表输出到PWM... lcw_swust 发表于 2016-7-15 16:21
正弦波做个表,定时查表输出到PWM...
查表得出正选值之后,如何对应PWM呢,脉宽和占空比怎么得出?? 是要做变频器吗? sdtean 发表于 2016-7-16 09:48
查表得出正选值之后,如何对应PWM呢,脉宽和占空比怎么得出??
你的单片机型号是啥? 本帖最后由 foxpro2005 于 2016-7-16 15:16 编辑
1) 使用两个定时器, 一个专门用来产生PWM, 另一个用来做频率控制(正如: lcw_swust所说定时中断查SPWM表 来更新 PWM输出)
2) 要注意死区处理(硬件或软件上)
3) IGBT后再接个LC滤波 {:titter:} 选带 SPWM模块的mcu,更省事 死区处理非常重要! foxpro2005 发表于 2016-7-16 15:11
1) 使用两个定时器, 一个专门用来产生PWM, 另一个用来做频率控制(正如: lcw_swust所说定时中断查SPW ...
0.5hz到50hz频率变化,那得需要多少个spwm的表? 查快点和慢点的区别 dadian 发表于 2016-7-24 11:46
0.5hz到50hz频率变化,那得需要多少个spwm的表?
就一个表啊, 也就是查表时间的快慢变化, 取点时尽量多一些, 以确保低频率时不会失真(及谐波过重)
foxpro2005 发表于 2016-7-24 13:47
就一个表啊, 也就是查表时间的快慢变化, 取点时尽量多一些, 以确保低频率时不会失真(及谐波过重)
...
你意思是每个频率曲的点数不一样呗 dadian 发表于 2016-7-24 17:13
你意思是每个频率曲的点数不一样呗
不是的,就用一个SPWM表,只是把它的点取多一些 需要看下源码, 速度是个问题。
页:
[1]