亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

25 kHz 4 Pin PWM 风扇控制与 Arduino Uno

组件和用品

轴流风扇,12 VDC
× 1
Arduino UNO
× 1
USB-A 转 Mini-USB 线缆
× 1
跳线(通用)
× 1

应用和在线服务

Arduino IDE

关于这个项目

我一直想知道这个项目以及如何控制我的 4 针 PWM 风扇。我有 5 个躺着,并认为我的也试一试。频率值可以在 125 HZ - 8 MHZ 以及可变占空比之间调整。该电路利用定时器 1 OCR1A(引脚 9)和 ICR1(引脚 10)上的模式 10 PWM 相位校正。需要进行一些调试才能弄清楚这一点,我确实拥有一台手持式示波器。它使查看频率和占空比变得更加容易,并且不涉及猜测。这是链接:示波器。

我强烈建议您查看风扇的数据表,因为在我的情况下,控制引脚是黄色的(通常称为转速线)。一定还要找到可接受的频率范围(或“CENTERING FREQUENCY ") 为您选择的风扇。您可能需要更改代码频率以适应您的需要。最后,您将需要一个好的电源(我的是从旧 PC 转换而来的 ATX PSU)。

注意:我尝试使用另一个计时器并独立控制 2 个风扇。它不起作用。原因是第二个定时器的分辨率较低(16 位对 8 位)。这意味着频率和占空比调整的步骤有噪声,波形越来越变形。这在输入值时也不是那么简单。

代码

  • 代码
代码Arduino
下载这个文件在Arduino IDE下运行。
const byte OC1A_PIN =9;const byte OC1B_PIN =10;const word PWM_FREQ_HZ =25000; //调整这个值来调整频率(Frequency in HZ!)(当前设置为25kHZ)const word TCNT1_TOP =16000000/(2*PWM_FREQ_HZ);void setup() { pinMode(OC1A_PIN, OUTPUT); // 清除 Timer1 控制和计数寄存器 TCCR1A =0; TCCR1B =0; TCNT1 =0; // 设置 Timer1 配置 // COM1A(1:0) =0b10 (输出 A 清除上升/设置下降) // COM1B(1:0) =0b00 (输出 B 正常操作) // WGM(13:10) =0b1010 (相位校正 PWM)// ICNC1 =0b0(禁用输入捕获噪声消除器)// ICES1 =0b0(禁用输入捕获边沿选择)// CS(12:10) =0b001(输入时钟选择 =时钟/1)TCCR1A | =(1 < 

示意图


制造工艺

  1. 使用按钮通过 PWM 调光灯光
  2. 对吊扇启用 Alexa Control
  3. 带有伊斯兰祈祷时间的 Arduino 时钟
  4. 使用 Arduino 控制硬币接收器
  5. Arduino 带蓝牙控制 LED!
  6. Arduino Nano:使用操纵杆控制 2 个步进电机
  7. 使用 Arduino UNO 在 LCD TFT 屏幕上显示图像!
  8. 使用 Arduino Uno 控制 LED 矩阵
  9. 4x4x4 LED 立方体,带有 Arduino Uno 和 1sheeld
  10. ThimbleKrox - 用手指控制鼠标
  11. 用 30 美元以下的 Arduino 控制蟑螂
  12. 使用 Arduino Uno 和蓝牙进行汽车控制