以前一直都是使用GPIO口直接输出给驱动电流,驱动马达。这次准备使用PWM驱动,看看驱动效果。理论上是可以通过PWM可以对电机进行调速的,尤其是对于高速电机。而我准备用来驱动小车的电机本身住宿并不高,个人感觉完全没有必要使用PWM。本次试验仅仅是作为一种尝试,看看PWM驱动电机的效果而已。 本次实验使用PWM例程。根据例程说明,输出PWM的有以下几个PIN:PIO3_6、PIO3_7、PIO3_8、PIO3_10。根据元件布局图,这几个输出PIO口对应于J13的15、13、11、7引脚。电路图和元件布局图如下: 运行后的波形如下: PIO3_6、PIO3_7: PIO3_8、PIO3_10: 从波形看,PIO3_6、PIO3_7是一组互补的波形。 接下来利用这组PWM波控制电机转动的效果,驱动端使用的是L9110 电机驱动模块, 1、将互补的两个输出各自接到一个电机上的控制效果 可以开到,两个电机是交替转动的。 2、将互补的两个输出,接到同一个电机的两个驱动端的效果 可以看到,这个电机实现了正反转的变化。 整体来说控制转速的效果还是挺明显的。但作为实际控制,感觉需要更为复杂的控制输出逻辑,比如输出合适的PWM波,实现从静止到全速转动的自然变化过程。不同的电机,这个过程的调节应该是不一样的。恐怕比较花时间。 以前我都是利用GPIO输出00、01、10 这样的信号直接发给驱动芯片,简单暴力;但通过这次测试,直观地看到PWM波驱动电机的过程,感觉从调节角度而言,还是PWM更适合。而且可以加入更精确的控制。总体而言,算是比较大的收获了。
|