🌡️ ترموستات
سنسور دما، رله روی D7 و LED «بخاری» روی D8.
سطح: چالشی ⭐⭐⭐ · مود: آردوینو (سهبعدی + کد)
قطعات لازم
کد کامل پروژه
const int RELAY = 7, HEAT_LED = 8;
const float ON_BELOW = 20.0; // turn heater on under 20 C
const float OFF_ABOVE = 22.0; // turn it off over 22 C
bool heaterOn = false;
float readTemperature() {
int raw = analogRead(A0);
return raw * 5.0 / 1023.0 * 100.0; // LM35
}
void setup() {
pinMode(RELAY, OUTPUT);
pinMode(HEAT_LED, OUTPUT);
Serial.begin(9600);
}
void loop() {
float t = readTemperature();
// two thresholds: between 20 and 22 we keep what we had
if (!heaterOn && t < ON_BELOW) {
heaterOn = true;
} else if (heaterOn && t > OFF_ABOVE) {
heaterOn = false;
}
digitalWrite(RELAY, heaterOn);
digitalWrite(HEAT_LED, heaterOn);
Serial.print("temp: ");
Serial.print(t);
Serial.println(heaterOn ? " heater ON" : " heater OFF");
delay(500);
}
چطور اجرایش کنم؟
- شبیهساز تینکرکد فارسی را باز کن و «مود آردوینو» را انتخاب کن.
- از پنل «نمونهها»، «ترموستات» را بارگذاری کن — مدار و کد با هم میآیند.
- دکمهی اجرا ▶ را بزن و خروجی Serial و رفتار قطعات را تماشا کن.
- حالا کد را تغییر بده — عددها، پینها، ترتیب — و دوباره اجرا کن!