智能风扇
这个 Arduino 项目会自动调节风扇速度,以将温度维持在合适的范围内。 此外,用户可以通过按钮进入手动模式,使风扇以最大速度运行。
所需元件
在这个项目中,我们需要以下元件。
购买整套套件会更方便,以下是链接:
名称 |
套件所含项目 |
链接 |
|---|---|---|
Elite Explorer 套件 |
300+ |
您也可以从下面的链接单独购买。
元件介绍 |
购买链接 |
|---|---|
- |
|
- |
|
- |
接线
备注
电机在工作时需要更多电力,因此在使用时请保持电源模块连接到充电电缆。
原理图
代码
备注
您可以直接打开路径
elite-explorer-kit-main\fun_project\06_smart_fan下的06_smart_fan.ino文件。或者将这段代码复制到 Arduino IDE 中。
工作原理
以下是代码的逐步说明:
常量和变量定义:
使用
#define定义各种硬件连接的引脚。TEMP_THRESHOLD定义为 25°C,这是启动风扇的温度阈值。manualMode:一个布尔变量,指示是否处于手动模式。setup():设置相关引脚的模式(输出、输入、上拉输入)。 初始设置为自动模式,因此
LED_AUTO点亮,而LED_MANUAL熄灭。loop():监测按钮的状态。当按钮被按下时,切换模式并更改 LED 的状态。 在手动模式下,风扇以最大速度运行。 在自动模式下,代码首先读取温度传感器的电压值并将其转换为温度值。 如果温度超过阈值,则根据温度调整风扇的速度。
voltageToTemperature():这是一个辅助函数,用于将温度传感器的电压值转换为温度值(摄氏度)。 该函数使用热敏电阻的标准公式来估算温度。 返回值以摄氏度为单位。