SPWM三相逆变
date: 2021-07-20 09:34:06
PWM
选三路IO配置为PWM输出模式,PWM的频率就是载波频率,载波频率一般不要超过20kHz。
中断控制PWM占空比按正弦规律变化
因为要保证每一个PWM周期完整,所以用到了外部中断控制边沿触发。
因实时计算占空比会耗用处理器资源影响输出速度,故占空比的值提前计算好,采用查表的方式在中断内改变PWM的占空比。
在PWM2模式下,高于比较值输出高电平,所以PWM输出先是低电平再是高电平,所以设置外部中断下拉输入与PWM初始状态保持一致,控制外部中断下降沿触发,保证每一个点完整输出。
注:PWM输出比较值不要设置为0,否则按照PWM2的输出规则,外部中断只存在上升沿,而不存在下降沿,会导致外部中断不触发。
外接RC滤波
搭建一个简单的RC滤波电路,这里R我用的是10kΩ和104电容。
1Hz步进调频
根据影响输出频率(f)的因素可知,f = 载波频率 / 一个周期内的点数,可以通过改变载波频率或总点数来改变输出频率,但是改变载波频率不能保证1Hz步进,并且后面的RC滤波电路参数还得随之调整,故采用改变一个周期内的点数更为合理。
f = 载波频率 / 一个周期内的点数
一个周期内的点数(n)= 载波频率 / f
步进的点数(x)= 数组内总点数 / 一个周期内的点数
第一项正弦波的点的位置 = j
第二项正弦波的点的位置 = 步进的点数 * 一个周期内的点数 / 3
第三项正弦波的点的位置 = 第二项正弦波的点的位置 * 2

波形


浙公网安备 33010602011771号