1.问题描述:
MATLAB仿真中的SHEPWM的发波采用S函数编写,S函数是一种用于描述Simulink仿真模块的计算机语言,它结合了m文件和Simulink仿真模块的优点,可以极大地增强和扩展Simulink仿真能力,用户可以通过编写S函数来构造用户自己的模块,以实现一些复杂的功能。
为了方便开关角的动态切换,SHEPWM发波函数分为3个S函数,分别实现A、B、C单相发波,S函数的输入为1/4周期的开关角度值以及调制波频率,输入的1/4周期的SHEPWM开关角数最大为15个,最小为0个,当输入0个开关角时,S函数输出为方波。S函数的输入为16维,前15个为1/4周期内的SHEPWM开关角度值输入,开关角值按顺序输入,不足的补零;第16个输入为电压矢量角度输入,用于发波。
S函数状态变量设置为离散型,状态变量数为SHEPWM一周期内的开关数,状态变量是通过输入的1/4周期的开关角来计算出全周期的SHEPWM的开关角,
三相的S函数中的输入和开关角的计算方法都一样,只是在方波方式中采用移相的方法,当正转的时候,B相相位滞后120度,C相相位滞后240度,当反转的时候,B相相位滞后240度,C相相位滞后120度,其SHEPWM的高低电平根据开关角数和开关时刻段来判断,如图1和图2所示,当开关角数为奇数时,开关时间段为奇数时,输出低电平。
1.问题描述:
MATLAB仿真中的SHEPWM的发波采用S函数编写,S函数是一种用于描述Simulink仿真模块的计算机语言,它结合了m文件和Simulink仿真模块的优点,可以极大地增强和扩展Simulink仿真能力,用户可以通过编写S函数来构造用户自己的模块,以实现一些复杂的功能。
为了方便开关角的动态切换,SHEPWM发波函数分为3个S函数,分别实现A、B、C单相发波,S函数的输入为1/4周期的开关角度值以及调制波频率,输入的1/4周期的SHEPWM开关角数最大为15个,最小为0个,当输入0个开关角时,S函数输出为方波。S函数的输入为16维,前15个为1/4周期内的SHEPWM开关角度值输入,开关角值按顺序输入,不足的补零;第16个输入为电压矢量角度输入,用于发波。
S函数状态变量设置为离散型,状态变量数为SHEPWM一周期内的开关数,状态变量是通过输入的1/4周期的开关角来计算出全周期的SHEPWM的开关角,
三相的S函数中的输入和开关角的计算方法都一样,只是在方波方式中采用移相的方法,当正转的时候,B相相位滞后120度,C相相位滞后240度,当反转的时候,B相相位滞后240度,C相相位滞后120度,其SHEPWM的高低电平根据开关角数和开关时刻段来判断,如图1和图2所示,当开关角数为奇数时,开关时间段为奇数时,输出低电平。
举报