PWM脉冲调制直流电机的simulink仿真

PWM脉冲调制直流电机的simulink仿真

仿真模型构建

电机原理

直流电机的4个动态特性方程式分别为:
PWM脉冲调制直流电机的simulink仿真
对上述式子去拉普拉斯变换并整理得:
PWM脉冲调制直流电机的simulink仿真
其中 T c T_c Tc​为电机轴上的总阻转矩。画出电机的系统传递函数框图:PWM脉冲调制直流电机的simulink仿真
代入相应数据后,结合实际情况,我们考虑使用如下改进从而进一步增加实用性。
PWM脉冲调制直流电机的simulink仿真
将其封装作为一个子模块如图:
PWM脉冲调制直流电机的simulink仿真

H桥原理

  H桥电机驱动电路的核心包括4个MOSFET管和1个电机,如下图所示。
  电路工作原理如下:为了使电机运转,必须导通对角线上的一对MOSFET管。根据不同MOSFET管对的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机的转向。当Q3管和Q6管导通时,电流从电源正极经Q3从左至右穿过电机,再经Q6回到电源负极,该流向的电流将驱动电机顺时针转动。当MOSFET管Q4和Q5导通时,电流将从右至左流过电机,驱动电机逆时针转动。通过控制PWM波形的占空比,达到对电机调速的目的。我们使用单极性PWM波和方向信号控制电机的转速和转向。
PWM脉冲调制直流电机的simulink仿真
  H桥左边的附加电路的作用是方便单极性PWM波控制H桥4个MOSFET管的通断。其中V_GND模块是测量电路中该点相对GND的电势。分析可知通过R1,R11的上拉,电路在附加电路的MOSFET管未导通时,输出高电平。所以Dir1,Dir2输入端口输入LOW,HIGH信号即可使Ua端口输出正值。
  电路中所有的N沟道MOSFET饱和导通电压阈值为1v,P沟道MOSFET饱和导通电压阈值为-1;H桥中的二极管起到续流的作用。附加电路的二极管的作用是保证只接受正电压。
  我们将该电路封装成一个子模块如下图。其中Vcc是电机能达到的最大工作电压。
PWM脉冲调制直流电机的simulink仿真

方向信号控制原理

  如图,方向信号为正时只有Dir1会输出PWM信号,而Dir2端口输出低电平信号。同理,方向信号为负时,只有Dir2会输出PWM信号,Dir1端口输出低电平信号。结合H桥及其附属电路模块,我们可以用Dir信号控制电机转动方向。
PWM脉冲调制直流电机的simulink仿真
  我们上图封装成一个子模块如下图:
PWM脉冲调制直流电机的simulink仿真

电机驱动模块原理

  结合方向模块和H桥及其附属电路模块,我们得到电机驱动的模块。接上48V的Vcc后,我们得到如下图模块。
PWM脉冲调制直流电机的simulink仿真
我们将其封装成子模块如图:
PWM脉冲调制直流电机的simulink仿真

PWM生成原理

  在本次模拟实验中,我们直接使用simulink中的一个PWM模块:
PWM脉冲调制直流电机的simulink仿真
PWM脉冲调制直流电机的simulink仿真

它的原理是:
  我们输入一个阈值DC,选择载波类型(单边锯齿波和双边锯齿波)。然后当高于DC的时刻就输出低电平,低于阈值的时刻就输出高电平。这里我们选择上升沿的单边锯齿波(如上图)。由于载波的幅值为1,所以我们的阈值就是占空比值。载波的频率就是我们PWM波的频率。
  最后,我们需要将PWM波的幅值变换到0~5V,以便我们控制使用。

电机仿真总模型

  综上,我们得到了PWM驱动的直流电机的仿真图(如图1.12)。输入PWM波(通过调节duty circle来调节占空比的值)和方向信号(输入正值就正转,负值就反转),可以通过Scope观察各个输出量的信号。
  其中theta是转过的角度,omega是转动的角速度,Magnet_Torque是产生的电磁力矩(减去阻力矩之前的值),Ia是电机的电流,Ua是电机的外部输入电压。
  所分析的直流电机, k e = k t = 1 V / ( r a d / s ) k_e=k_t=1V/(rad/s) ke​=kt​=1V/(rad/s),R=1.6欧,L=16mH,驱动电压48V,轻负载时转动惯量 0.02 k g ⋅ m 2 0.02kg\cdot m^2 0.02kg⋅m2,重负载时转动惯量 0.4 k g ⋅ m 2 0.4kg\cdot m^2 0.4kg⋅m2,轻载时阻力矩 1.6 N ⋅ m 1.6N\cdot m 1.6N⋅m,重载时阻力矩 8 N ⋅ m 8N\cdot m 8N⋅m。PWM开关频率16kHz。

PWM脉冲调制直流电机的simulink仿真

simulink源文件供下载

  文中分析的模型完全可以自己搭建。所有部分均已提及。另外MATLAB自带有PWM调制的直流电机模型,不过直流电机模型是一个模块实现。本文是通过传递函数实现。
这里是simulink的源文件供下载,使用的是MATLAB2018a

上一篇:「SImulink调试错误」Invalid object id.Component: Simulink | Category: Model error


下一篇:CRUISE与Simulink联合仿真介绍