晶体管和 PWM

电器工程 晶体管 脉宽调制
2022-01-13 18:03:12

我对这个有点困惑,不知道从哪里开始。这个想法是让微控制器或FPGA输出PWM信号(5V或3.3V,PWM为100%),然后使用晶体管为需要12V运行的呼吸机供电。

我知道我需要将呼吸机电源和FPGA(或μC)电源的接地连接在一起。之后,我使用与晶体管集电极串联的电阻来限制电流。

困扰我的部分是如何连接底座和 PWM 输出引脚?如果我想让 3.3V 为 100%,我需要选择哪个电阻值?如果我希望 5V 为 100%,需要哪个值?我的意思是,当它需要以 100% 的容量为呼吸机供电时,我如何“告诉”晶体管 3.3V(或我正在运行的任何其他电压)?

我希望你能理解我的问题。谢谢你的任何答案!

4个回答

一个(两级)PWM 信号有两种状态:高电平和低电平。无论您的 FPGA/MCU 的电源是 5 V 还是 3.3 V,您都希望风扇的低状态变成 0 V,而高状态变成风扇的 12 V(反之亦然)。这样,通过改变 PWM 信号的占空比,您将能够在整个工作范围内驱动风扇。

晶体管(可以是 BJT 或 MOSFET)必须完全关闭或完全打开,以尽可能降低功耗。如果电源为 12 V,则不需要与风扇串联任何电阻。晶体管的集电极或漏极将直接连接到风扇。此外,使用与风扇并联的肖特基二极管,使阴极位于 +12 V 节点,阳极位于集电极或漏极。风扇是感性负载,一旦关闭晶体管,就需要为其电流提供路径。否则,晶体管的集电极/漏极可能会积聚过大的电压,您可能会损坏它。

假设 BJT:您只需要与基极串联一个电阻,即可限制基极电流。我们需要知道您的风扇在 12 V 时消耗了多少电流(我们称之为),以及(从的电流增益)。以这种方式选择电阻:IfanβIbaseIcollector

R1=Vsupply0.710Ifanβ

Vsupply为 3.3 或 5。因子 10 是为了有足够的余量以确保 BJT 永远不会在线性区域中工作。

示意图

我看到 Telaclavo 为您提供了双极晶体管的好答案。以下是使用正确类型的 FET 时的样子:

对于 12 V 之类的低电压,可以使用 FET 开启得足够好,而栅极上只有 5V 甚至 3.3V。这些有时称为逻辑电平FET。然后可以直接从 CMOS 数字输出驱动门。

二极管对于不损坏 FET 至关重要。电机看起来是感应式的,因此当您尝试将其关闭时,它会将其电压提高到维持电流所需的任何电压,直到产生的反向电压最终导致电流变为 0。这有时称为感应反冲如果没有二极管,反冲电流将无处可去,并将 FET 漏极升高到高电压,从而使 FET 最终击穿,从而允许电流流动。这对 FET 不利。肖特基二极管在这里是一个好主意,因为它们速度很快,并且在您的低电压下,它们很容易获得合适的特性。

如果我正确理解您的问题,您正在寻求使用 PWM 控制呼吸机的电源。

在这种情况下,通过 100% 的占空比,晶体管将开启,您的呼吸机将在 12V 时开启

http://www.electronics-tutorials.ws/transistor/tran_4.html

这个问题的另一个角度是使用带有专用 PWM 输入的风扇。许多供应商将此作为标准功能提供。

根据我的经验,许多无刷直流风扇不喜欢在输入功率被斩波的情况下运行——你无法很好地控制 RPM。使用专用 PWM 输入可以很好地控制速度,并且由于您控制的是数字输入(而不是斩波功率),因此您只需要一个适度的 MOSFET 而不需要钳位二极管。