使用 Arduino 控制直流电机

电器工程 Arduino 直流电机 发动机
2022-01-09 01:04:13

这可能是一个简单而愚蠢的问题,但我想知道为什么我不能将直流电机连接到 arduino 板以使其运行。一个引脚接地,另一个引脚连接到 PWM 输出之一。

我刚刚为伺服电机做了扫描教程http://arduino.cc/en/Tutorial/Sweep,它工作正常。我知道伺服器中有更多的电子设备,可以提供反馈。

据我了解,即使是驱动小型直流电机,我也需要更多电路(H 桥?)或另一个专用于驱动电机的屏蔽。如果我驾驶一些​​相对较大的直流电机,我可以理解这一点。

但我试图理解为什么带有接地和 PWM 输入的小型直流电机不起作用。特别是对于像这样的有刷电机http://music.columbia.edu/~douglas/classes/motor_mania/DC_simple2.jpg

当然,这只是直流电流通过电线的问题。是不是线圈中积累的感应电荷会导致反向电流返回电路板,这就是问题所在。

基本上,从概念上讲,鉴于我有一个接地和一个电压(虽然是脉冲的),我需要做什么才能使它驱动直流电机。

4个回答

这是因为驱动电机所需的电流量,arduino 不能提供太多。

除了其他人所说的之外,您还需要保护电路来确保来自电机的感应反冲不会破坏您的 Arduino 上的引脚,如果它没有受到保护,最终会发生这种情况。

如前所述,即使是小型直流电机,Arduino PWM 引脚也无法提供/吸收运行所需的电流量。最好的方法是在 Arduino 和电机之间使用 H 桥。一种较便宜的替代方案是使用能够提供电机所需电流的功率 MOSFET。Microchip 的应用笔记描述了这些电机控制方法。

您需要对直流电机进行旁路控制吗?如果是这种情况,我强烈推荐以下电路(即使您会为每个方向使用一个 PWM 引脚,但您将从电源中获得足够的电流放大,而 Arduino 无法提供): alt text http:// /imagebin.ca/img/CKdfPB6n.png