在使用马达的时候,经常遇到的一个问题就是控制马达的方向,比如控制直流电机、步进电机的正反转,电磁阀的开关。这里就用用到一种叫H桥的电路。
H 桥是一种电子电路,用于切换施加到负载的电压极性。这些电路通常用于机器人和其他应用,以使直流电机向前或向后运行。
大多数 DC-AC 转换器(电源逆变器)、大多数 AC/AC 转换器、DC-DC 推挽转换器、隔离 DC-DC 转换器[2] 大多数电机控制器和许多其他类型的电力电子设备都使用 H 桥。特别是,双极步进电机(bipolar stepper motor)几乎总是由包含两个 H 桥的电机控制器驱动。
首先在Protus中建立如下简单电路,包含一个电源,两个开关和一个马达,当两个开关关闭时,电流从左向右流过马达,马达逆时针转动。

如果我们想让马达顺时针转动该怎么办呢,显而易见,可以增加一个对称的电路:

同时打开新电路的开关,关闭之前电路的两个开关,电流就会从左到右流过电机,驱动马达顺时钟转动。整个电路看起来像一个H的形状,这就是H桥电路的名称来源。

好了,现在我们有了一个电路,可以控制马达的旋转方向,只要分别打开和关闭对向电路的两个开关就可以实现马达的正反转。

但在实际使用中,绝大多数情况下都是要求自动控制的,比如说机器人小车的前进和后退,那有什么办法实现自动打开和关闭开关呢?
第一个方式是使用继电器(Relay)
继电器是一种电动开关。它由一组用于单个或多个控制信号的输入端子和一组操作触点端子组成。开关可以具有任意数量的触点,触点形式多种多样,例如接通触点、断开触点或它们的组合。

继电器工作原理
将四个开关分别用继电器代替,画出以下电路图,两个继电器为一组,分别由单独的电源和按钮开关控制。


第二个方式是使用NPN型三极管(transistor)

NPN三极管工作原理非常简单,基极(Base)用来做接收控制电流,可以是非常小的电流,当有电流从基极和发射极(Emitter)流过时,集电极(Colletor)和发射极之间的电路也导通,允许电路流过,否则不通。
在Protesu中画出以下电路,用三极管代替开开关,基极的电阻是防止电流过大,二极管是用来防止电机关闭时的产生的电动势(EMF)对三极管造成损坏。


最后这个世界上永远不缺乏聪明人,将这个电路打包做成一个IC,卖给大家,比如下面这个L293D驱动芯片,带有两个H桥,可以驱动运行四个电磁阀、两个直流电机或一个双极或单极步进电机。

在单片机的帮助下,可以实现电机旋转方向的完全自动控制。
