开环控制总体思路:
两种方案,
方案一:用霍尔或者编器获取转子角度
方案二:用定时器自增的模式来模拟转子角度自增(我用的)
角度自增的方式:两种方式本质上都是在改变进入中断的时间长短(注:参考了B站UP:微微课嵌入式学堂)
方式一:定时器的ARR不变,通过改变预分频PSC来改变进入中断的时间长短
方式二:定时器的预分频PSC不变,通过改变装载值ARR来改变进入中断的时间长短
theta具体多少的计算:计算方法如下
接下来是STM32的底层配置:基于STM32CubeMX + Keil,配置的内容大概如下:
ADC开环目前还没用到,但是还是先配置了。
一开始为了验证PWM是否正常生成,可以设置占空比为50%,但是在运行电机的时候初始值最好是0。
关于死区时间的设置:5个时钟周期,两个开关之间间隔5个定时器的时钟周期。
扇区判断的值:315462
VOFA显示生成的马鞍波
Uα和Uβ
给定Ud=0,Uq=2V,电机开环可以正常跑起来。
注:Uq太大电机转不起来,原因的话也不是特别明白,希望知道的可以告诉我一下下。