问题10:程序6-5 PWM驱动直流电机——电机不转
最后更新时间:2023.6.26
问题原因
软件程序有问题或者硬件接线有问题。
解决方法
1. 如果不能确保程序无错误,可以先使用视频资料里提供的现成程序运行,观察是否有现象。如果提供的程序有现象,自己写的无现象,请再仔细对照修改程序;如果提供的程序也无现象,则可能是硬件上的问题,请继续看下文排查硬件的问题。
2. 请按照下图仔细检查硬件接线。
![img](img/p1-10-1.jpg)
PWM驱动直流电机接线注意事项
3. 如果整体上检查不出来问题,可以单独测试各部分电路。
首先测试电机和STLINK的5V供电。如下图所示,将电机两端直接接在STLINK的5V和GND,如果电机旋转,说明STLINK的5V供电和电机没问题。
![img](img/p1-10-2.jpg)
测试电机和STLINK的5V供电
其次测试电机驱动模块。如下图所示,将驱动板的PWMA、AIN1、AIN2直接接到3.3V或者GND,手动给输入信号。PWMA和AIN1接3.3V,AIN2接GND;或者PWMA和AIN2接3.3V,AIN1接GND。这两种接法分别对应电机正向满速旋转和反向满速旋转。如果电机是满速旋转且旋转方向受AIN1和AIN2控制,说明电机驱动模块没问题。
![img](img/p1-10-3.jpg)
测试电机驱动模块
最后测试STM32的输出信号。如下图所示,在PA2、PA4和PA5分别接一个LED灯,以指示电平状态。图中接法是:PA4(AIN1)接红色LED,PA5(AIN2)接绿色LED,PA2(PWMA)接蓝色LED,LED均为长脚(正极)接STM32端口,短脚(负极)接GND。按动按钮,调节电机速度,如果输出信号正常,实验现象应为:当速度为正数时,红色LED亮,绿色LED灭;当速度为负数时,红色LED灭,绿色LED亮。速度的绝对值越大,蓝色LED的亮度越高。
![img](img/p1-10-4.jpg)
测试STM32的输出信号
4. 部分芯片可能存在TIM2_CH3无法输出PWM的问题。如果通过上述测试STM32的输出信号的方法,发现PA2的LED亮度无法受控,可能是遇到这个问题了,这需要避免使用TIM2_CH3输出PWM,可以尝试将通道修改到CH1、CH2或者CH4。
5. 部分款式的面包板电源引脚中间是断开的,如下图所示,如果遇到此情况,需要用4根跳线将电源连在一起,否则面包板左侧电源引脚将无法通电。
![img](img/p1-10-5.jpg)
部分款式的面包板电源引脚中间是断开的
< 返回