风扇模块
May 24, 2023About 2 min
简介
130直流电机风扇模块是个很趣的模块,该模块不需要额外的电机驱动板,就可以使用Arduino轻松驱动起来,你也可以使用PWM脉冲宽度来调节电机转速,适合轻应用或者DIY小制作。可以通过IO口高点电平来控制转动和停止,可以通过PWM端口驱动,控制风扇模块的转速,马达有最低电流要求,电压低于一定值时马达无法转动。
产品参数
- 工作电压: 3.3V~5V
- 接口:PH2.0 3P
- 尺寸: 24mm*52mm
引脚说明
![风扇模块](/assets/img/sensor/FanModule/FanModule.png)
序号 | 名称 | 功能描述 |
---|---|---|
1 | VCC | 电源正极 |
2 | GND | 电源负极 |
3 | S | 模拟信号输出 |
Arduino示例代码
控制风扇转动
// 定义风扇控制引脚
const int fanPin = 9;
// 设置初始风扇状态为关闭
bool fanState = false;
void setup() {
// 设置风扇控制引脚为输出模式
pinMode(fanPin, OUTPUT);
}
void loop() {
// 改变风扇状态
fanState = !fanState;
// 控制风扇开关
if (fanState) {
digitalWrite(fanPin, HIGH); // 将风扇控制引脚设置为高电平,风扇打开
} else {
digitalWrite(fanPin, LOW); // 将风扇控制引脚设置为低电平,风扇关闭
}
// 等待1秒钟
delay(1000);
}
控制扇转速
// 定义风扇控制引脚
const int fanPin = 9;
// 定义风扇转速增量
const int speedIncrement = 25;
// 定义风扇转速初始值
int fanSpeed = 0;
// 定义风扇转速方向(true表示逐渐增加转速,false表示逐渐减小转速)
bool increasingSpeed = true;
void setup() {
// 设置风扇控制引脚为输出模式
pinMode(fanPin, OUTPUT);
}
void loop() {
// 逐渐增加或减小风扇转速
if (increasingSpeed) {
fanSpeed += speedIncrement;
if (fanSpeed >= 255) {
fanSpeed = 255;
increasingSpeed = false;
}
} else {
fanSpeed -= speedIncrement;
if (fanSpeed <= 0) {
fanSpeed = 0;
increasingSpeed = true;
}
}
// 控制风扇转速
analogWrite(fanPin, fanSpeed);
// 等待一段时间
delay(1000);
}
Micropython示例代码
控制风扇转动
from machine import Pin, PWM
import time
# 定义风扇控制引脚
fan_pin = Pin(9, Pin.OUT)
fan_pwm = PWM(fan_pin)
# 定义风扇转速增量
speed_increment = 25
# 定义风扇转速初始值
fan_speed = 0
# 定义风扇转速方向(True表示逐渐增加转速,False表示逐渐减小转速)
increasing_speed = True
while True:
# 逐渐增加或减小风扇转速
if increasing_speed:
fan_speed += speed_increment
if fan_speed >= 255:
fan_speed = 255
increasing_speed = False
else:
fan_speed -= speed_increment
if fan_speed <= 0:
fan_speed = 0
increasing_speed = True
# 控制风扇转速
fan_pwm.duty(fan_speed)
# 等待一段时间
time.sleep(1)
控制风扇转速
from machine import Pin
import time
# 定义风扇控制引脚
fan_pin = Pin(9, Pin.OUT)
while True:
# 控制风扇开启
fan_pin.on()
time.sleep(1) # 延迟1秒
# 控制风扇关闭
fan_pin.off()
time.sleep(1) # 延迟1秒
疑难解答
更多问题及有趣的应用,请访问论坛 或加入QQ技术交流群:522420541