arduino温控风扇代码
时间: 2024-12-25 15:17:08 浏览: 34
在Arduino中编写一个简单的温控风扇控制电路代码,通常涉及到温度传感器(如DS18B20)和继电器来控制风扇开关。以下是一个基本的伪代码示例:
```cpp
#include <OneWire.h> // 引入OneWire库用于处理DS18B20传感器
#include <DallasTemperature.h> // 引入DallasTemperature库
// 定义Pin和变量
const int DS_PIN = 4; // 温度传感器数据线连接到数字 pin 4
const int FAN_PIN = 9; // 继电器控制线连接到数字 pin 9
int currentTemperature = 0; // 当前温度值
bool isFanOn = false; // 初始风扇状态
// 初始化相关库
OneWire oneWire(DS_PIN);
DallasTemperature sensors(&oneWire);
void setup() {
Serial.begin(9600); // 开启串口通信
sensors.begin(); // 初始化温度传感器
pinMode(FAN_PIN, OUTPUT); // 设置FAN_PIN为输出模式
}
void loop() {
if (sensors.requestTemperatures()) { // 读取温度
currentTemperature = sensors.getTempCByIndex(0); // 获取第一个温度传感器的数据
Serial.println("Current Temperature: " + String(currentTemperature) + "C");
if (currentTemperature > YOUR_THRESHOLD_TEMP) { // 如果超过预设阈值
if (!isFanOn) { // 如果风扇未打开
digitalWrite(FAN_PIN, HIGH); // 打开继电器,风扇开始工作
isFanOn = true;
Serial.println("Turning on the fan.");
}
} else { // 温度过低或低于阈值
if (isFanOn) { // 如果风扇正在运行
digitalWrite(FAN_PIN, LOW); // 关闭继电器,风扇停止
isFanOn = false;
Serial.println("Turning off the fan.");
}
}
}
delay(1000); // 每秒检查一次温度
}
```
在这个代码中,你需要将`YOUR_THRESHOLD_TEMP`替换为你想要的触发风扇动作的实际温度阈值。这只是一个基础示例,实际项目中可能需要添加错误检测、延时调整等额外功能。
阅读全文