一、选择风扇类型:Qualtek FAD1-06020CSHW11 12V/0.16A
只有VCC和GND两根线外接,内部采用AH276霍尔磁性传感器。(DIODES or Anachip)
实测数值:
12V-85mA 11V-78mA 10V-72mA 9V-66mA 8V-59mA
7V-53mA 6V-47mA 5V-42mA 4V-36mA 3V-29mA 2V-2mA(OFF)
二、内部电路
4个线圈,两两串联,一端接+12V,一端分别接DO/DOB。 根据hall-sensor感应到的信号,output-driver控制两个三极管(DO和DOB互补交替开关)。
这款风扇跑固定转速,当hall感应到转速变低,会加大coil两端电压。迫使风扇停转时,DO端直接拉GND,DOB是+12V,相当于强制restart。
三、控制方法
1)直接用开关管切换电源,形成一个平均电压值。
如果是从mcu出pwm,3.3V电平的,一般都能打开Vgs,实际Ids电流需求是85mA,也不要太大的开启电压。
2)让MOS管工作在放大区,通过Vgs电压控制Ids电流,前端将PWM波转换成可调电压,控制BJT后级压降。
以常见的NTF2955举例,想控制在放大区的36~85mA之间,实际Vgs只能在3.2~3.5V之间,范围太小!推算到前端BJT就更难把控!
3)使用类似1117的LDO电源,R2换成电位器之类的可控元件。
这种方式有两个问题,a) TLV1117工作电流100mA是,drop压降有1.1V,实际到风扇电压不满12V;
b) 处于R2位置,如果选mcu可控制的电位器,没有能耐压12V的;
四、实验
最终选择了方案1的开关切换原理,但是电路采用方案2的BJT-PMOS,把频率转电压的2.2uF电容去掉了。
使用103的mcu,用其timer1出pwm波形。固定频率调占空比。频率设在1Khz时管子有鸣叫,估计是频率太低才出现可听见声音。
然后将频率提高到10Khz就好了,这个频率声音听不到。最终工作在20khz。