🌡️ ماموریت ۵۲: ترموستات هوشمند
سنسور دما روی A0، رله روی D7. زیر ۲۰ درجه روشن، بالای ۲۲ خاموش؛ بینشون دست نزن تا رله تقتق نکنه.
سطح: چالشی ⭐⭐⭐ · مود: آردوینو — با کد
هدفها
- ☐ یه آردوینو روی صحنه باشه
- ☐ یه سنسور دما
- ☐ یه رله
- ☐ کد analogRead داشته باشه
- ☐ کد دو آستانهی جدا داشته باشه (پایین و بالا)
- ☐ شبیهسازی در حال اجرا
قطعههای لازم
- Arduino Uno
- حسگر دما TMP36
- رله
💡 گیر کردی؟ داخل شبیهساز راهنما را ببین، و اگر باز هم نشد دکمهی «برام حلش کن» مدار را برایت میچیند تا ببینی چطور کار میکند.
جواب کامل
اول خودت امتحان کن! بعد جواب را ببین 👀
سیمکشی
- Arduino Uno (VCC5) ⟷ Temperature Sensor (LM35) (VCC)
- Temperature Sensor (LM35) (OUT) ⟷ Arduino Uno (A0)
- Temperature Sensor (LM35) (GND) ⟷ Arduino Uno (GND1)
- Arduino Uno (VCC5) ⟷ Relay (5V) (VCC)
- Arduino Uno (D7) ⟷ Relay (5V) (IN)
- Relay (5V) (GND) ⟷ Arduino Uno (GND2)
کد
const int RELAY = 7;
const float LOW_T = 20.0; // heater on below this
const float HIGH_T = 22.0; // heater off above this
bool heating = false;
void setup() {
pinMode(RELAY, OUTPUT);
Serial.begin(9600);
}
void loop() {
float volts = analogRead(A0) * 5.0 / 1023.0;
float tempC = (volts - 0.5) * 100.0; // TMP36
if (tempC < LOW_T) heating = true;
if (tempC > HIGH_T) heating = false; // between 20 and 22: keep the old state
digitalWrite(RELAY, heating ? HIGH : LOW);
Serial.println(tempC);
delay(500);
}
ماموریتهای مشابه
🏆
ماموریت ۴۹: پروژهی آزاد
🏡
ماموریت ۴۸: خانهی هوشمند
🎲
ماموریت ۴۷: بازی سایمون
⏲️
ماموریت ۴۶: بازی سرعت واکنش
📚 برای یاد گرفتن پایهها سری به دورهی آموزش آردوینو بزن · 🎯 همهی ماموریتها