LM35 چطور دما را میسنجد؟ آموزش ساخت دماسنج با Arduino
سنسور دما LM35 آردوینو یکی از سادهترین گزینهها برایاندازهگیری دما در پروژههای الکترونیکی است. این سنسور یک خروجی آنالوگ
تولید میکند که ولتاژ آن بهصورت خطی با دمای محیط تغییر میکند؛ بنابراین
اتصال آن به ورودی آنالوگ Arduino و تبدیل ولتاژ به دما کار نسبتاً سادهای است.در این آموزش ابتدا با عملکرد LM35 و پایههای آن آشنا میشویم، سپس سیمکشی
با Arduino، فرمول تبدیل ولتاژ به دما، کد عملی و یک روش برای بهبود دقت
اندازهگیری را بررسی میکنیم.
📌 LM35 در یک نگاه
آنالوگ
10mV/°C
4 تا 30V
TO-92
حدود ±0.5°C در 25°C
Analog Input
LM35 دقیقاً چه کاری انجام میدهد؟
LM35 یک سنسور دمای آنالوگ از Texas Instruments است که ولتاژ خروجی آن
متناسب با دمای بر حسب درجه سانتیگراد تغییر میکند. ضریب تبدیل این سنسور
برابر 10 میلیولت به ازای هر درجه است؛ برای مثال در 25°C خروجی تقریباً
250mV خواهد بود. :contentReference[oaicite:2]{index=2}
یکی از مزیتهای مهم LM35 این است که برای تبدیل مستقیم خروجی به دمای
سانتیگراد به محاسبات پیچیده نیاز ندارد. به همین دلیل این سنسور برای
آموزش Arduino، دیتالاگر و پروژههای اندازهگیری دما انتخاب مناسبی است.
🌡️ رابطه ولتاژ و دما
هر 1°C افزایش دما ≈ 10mV افزایش خروجی
مثلاً 25°C → حدود 0.25V و 100°C → حدود 1V خروجی.
پایه های LM35 را اشتباه نگیرید
نسخه رایج LM35 در پکیج TO-92 سه پایه دارد. هنگام استفاده، جهت قرار گرفتن
سنسور را با دیتاشیت یا مدل واقعی قطعه تطبیق دهید، چون ترتیب پایهها باید
دقیقاً بر اساس همان نسخهای باشد که در اختیار دارید. :contentReference[oaicite:3]{index=3}
| پایه | وظیفه |
|---|---|
| +Vs | تغذیه |
| Vout | خروجی آنالوگ |
| GND | زمین |
اتصال LM35 به Arduino چطور انجام میشود؟
برای یک راهاندازی ساده فقط به سه اتصال نیاز دارید: تغذیه سنسور، زمین
و مسیر خروجی. در نمونه مرجع، +Vs به 5V، پایه GND به زمین و Vout به A0
آردوینو وصل شده است. :contentReference[oaicite:4]{index=4}
| LM35 | Arduino Uno |
|---|---|
| +Vs | 5V |
| GND | GND |
| Vout | A0 |

🛒 برای پروژه اندازهگیری دما آمادهاید؟
اگر برای ساخت پروژه LM35 به سنسور، برد Arduino، بردبورد، سیم، نمایشگر
یا سایر قطعات نیاز دارید، میتوانید تجهیزات موردنیاز را در فروشگاه
پژوهشگران بررسی کنید.
چطور ولتاژ LM35 را به دما تبدیل کنیم؟
Arduino ولتاژ ورودی را مستقیماً به درجه سانتیگراد نمیخواند. ابتدا
ADC یک عدد بین 0 تا 1023 تولید میکند و سپس برنامه باید این مقدار را
به ولتاژ تبدیل کند.
در Arduino Uno با مرجع پیشفرض 5V، فرمول به این شکل است:
Vout = analogRead × (5 / 1024)
Temperature = Vout × 100
برای مثال، اگر Arduino مقدار 100 را از A0 بخواند، ولتاژ تقریباً
0.488V خواهد بود و دمای محاسبهشده حدود 48.8°C میشود. این همان
نمونه محاسباتی مقاله مرجع است. :contentReference[oaicite:5]{index=5}
کد LM35 آردوینو؛ اولین دماسنج شما
کد زیر مقدار خروجی LM35 را میخواند و دما را هم بر حسب سانتیگراد و هم
فارنهایت در Serial Monitor نمایش میدهد.
#define sensorPin A0
void setup() {
Serial.begin(9600);
}
void loop() {
int reading = analogRead(sensorPin);
float voltage = reading * (5.0 / 1024.0);
float temperatureC = voltage * 100.0;
float temperatureF =
(temperatureC * 9.0 / 5.0) + 32.0;
Serial.print("Temperature: ");
Serial.print(temperatureC);
Serial.print(" C | ");
Serial.print(temperatureF);
Serial.println(" F");
delay(1000);
}
🧪 یک تست ساده
بعد از آپلود کد، Serial Monitor را روی 9600 قرار دهید. سپس برای چند
ثانیه انگشت خود را نزدیک بدنه سنسور قرار دهید؛ افزایش دمای خواندهشده
باید قابل مشاهده باشد.
اگر دقت بیشتری میخواهید، این نکته مهم است
ADC دهبیتی Arduino Uno بازه 0 تا 5V را به 1024 سطح تقسیم میکند.
از آنجا که LM35 در بازه 0 تا 100°C فقط حدود 0 تا 1V خروجی میدهد،
بخش بزرگی از ظرفیت ADC بلااستفاده میماند. مقاله مرجع پیشنهاد میکند
برای Uno از مرجع داخلی 1.1V استفاده شود تا وضوح اندازهگیری در این
بازه بهتر شود. :contentReference[oaicite:6]{index=6}
🎯 بهبود خواندن ADC
در Uno میتوانید در setup() از
analogReference(INTERNAL) استفاده کنید و در محاسبه ولتاژ
به جای 5V از 1.1V استفاده کنید. این روش برای خروجیهایی مناسب است که
از محدوده مرجع جدید بالاتر نمیروند. :contentReference[oaicite:7]{index=7}
analogReference(INTERNAL);
float voltage = reading * 1.1 / 1024.0;
float temperatureC = voltage * 100.0;
🔧 به دنبال قطعات و تجهیزات آردوینو هستید؟
برای مشاهده انواع بردهای آردوینو، ماژولها، سنسورها و قطعات مورد نیاز پروژههای خود،
به فروشگاه قطعات الکترونیکی پژوهشگران مراجعه کنید.
یک نکته مهم درباره اندازهگیری دمای منفی
مدل LM35 برای بازه دمای گستردهای مشخص شده است، اما اندازهگیری دمای
منفی با مدار ساده و تغذیه تکمنبع میتواند نیاز به بایاس منفی ایجاد کند.
به همین دلیل، برای یک پروژه ساده که فقط دماهای بالای صفر را میسنجد،
اتصال معمول Arduino کافیتر است. :contentReference[oaicite:8]{index=8}
🚨 قبل از ساخت دماسنج منفی
اگر پروژه شما باید دمای زیر صفر را با مدار ساده اندازه بگیرد، فقط به
فرمول نرمافزاری اکتفا نکنید؛ نحوه تغذیه و مدار موردنیاز سنسور را هم
بررسی کنید.
LM35 را کجا میتوان استفاده کرد؟
سادگی خروجی LM35 آن را برای پروژههای آموزشی و اندازهگیری عمومی مناسب
کرده است. از دیتالاگرهای دما تا کنترل فن و نمایش دمای محیط، میتوان از
خروجی آن در مدارهای مختلف استفاده کرد.
- دماسنج دیجیتال با Arduino
- دیتالاگر دما
- کنترل فن بر اساس دما
- مانیتورینگ دمای محیط
- اندازهگیری دمای سطح
- پروژههای آموزشی ADC و سنسورها
چطور یک دماسنج بهتر با LM35 بسازیم؟
قدم بعدی میتواند اضافه کردن نمایشگر I2C، ثبت اطلاعات روی کارت SD یا
کنترل یک رله و فن باشد. این ساختار اجازه میدهد پروژه از یک تست ساده
به یک سیستم اندازهگیری واقعی تبدیل شود.
💡 ایده برای توسعه پروژه
LM35 + LCD: نمایش دما بدون کامپیوتر
LM35 + SD: ثبت دما در طول زمان
LM35 + رله: کنترل فن یا بار بر اساس دما
LM35 + RTC: ثبت دما همراه با زمان
چرا دمای نمایشدادهشده دقیق نیست؟
اگر عدد نمایشدادهشده با دماسنج مرجع اختلاف دارد، فقط سنسور را مقصر
ندانید. مرجع ADC، نوسان تغذیه، سیمکشی، نویز و نحوه قرار گرفتن سنسور
روی نتیجه اثر میگذارند. TI برای LM35 دقت نمونه حدود ±0.5°C در 25°C
را مشخص میکند، اما عملکرد واقعی مدار به شرایط سیستم نیز وابسته است. :contentReference[oaicite:9]{index=9}
| مشکل | مورد بررسی |
|---|---|
| عدد ناپایدار | نویز و مرجع ADC |
| دمای متفاوت | منبع تغذیه و کالیبراسیون |
| افزایش سریع دما | محل قرارگیری سنسور |
برای پروژه LM35 چه قطعاتی لازم دارید؟
برای شروع کار، LM35 و یک برد Arduino کافی هستند. در پروژههای کاملتر
میتوانید بردبورد، سیم، LCD، کارت SD، RTC، رله یا سایر تجهیزات الکترونیکی
را هم به مدار اضافه کنید.
🛒 قطعات پروژه دماسنج را از پژوهشگران تهیه کنید
برای ساخت پروژههای اندازهگیری دما میتوانید سنسور LM35، برد Arduino،
نمایشگر، رله، بردبورد و سایر قطعات موردنیاز را در فروشگاه پژوهشگران بررسی کنید.مشاهده قطعات الکترونیکی
مقالات بیشتر برای پروژههای Arduino
📚 مقالات بیشتر پژوهشگران
آموزشهای بیشتر درباره Arduino، ESP32، سنسورها، نمایشگرها، دیتالاگر
و پروژههای الکترونیکی را در مجموعه مقالات پژوهشگران ببینید.
برای انتخاب قطعه یا طراحی پروژه مشاوره فنی بگیرید
🛠️ در انتخاب قطعات پروژه سؤال دارید؟
اگر درباره انتخاب LM35، Arduino، نمایشگر، رله یا سایر قطعات پروژه
سؤال دارید، قبل از خرید میتوانید برای مشاوره فنی
با مجموعه پژوهشگران در ارتباط باشید.
انتخاب درست قطعات از همان ابتدای پروژه، طراحی مدار و توسعه نرمافزار
را سادهتر میکند.
جمعبندی؛ آیا LM35 برای پروژه شما مناسب است؟
سنسور دما LM35 آردوینو برای پروژههایی که به یک خروجی
آنالوگ ساده و متناسب با دمای سانتیگراد نیاز دارند، گزینهای کاربردی است.
ضریب 10mV/°C باعث میشود تبدیل خروجی سنسور به دما بسیار ساده باشد و
Arduino نیز میتواند آن را از طریق ADC بخواند. :contentReference[oaicite:10]{index=10}
برای شروع، فقط سه اتصال لازم دارید و سپس میتوانید مقدار A0 را به دما
تبدیل کنید. اگر دقت بیشتر لازم دارید، موضوع مرجع ADC را بررسی کنید و
شرایط تغذیه و نویز مدار را هم در نظر بگیرید.
⚡ چکلیست سریع LM35
✔ +Vs را به تغذیه مناسب وصل کنید.
✔ GND را به زمین Arduino متصل کنید.
✔ Vout را به ورودی آنالوگ بدهید.
✔ ضریب 10mV/°C را در محاسبه لحاظ کنید.
✔ مرجع ADC را متناسب با برد بررسی کنید.
✔ محل قرارگیری سنسور را برای اندازهگیری واقعی در نظر بگیرید.
💬 تجربه شما از کار با LM35 چیست؟
اگر قبلاً با LM35 و Arduino کار کردهاید، تجربه خود را
درباره دقت اندازهگیری، کالیبراسیون، نمایشگر یا کنترل فن با ما و سایر
علاقهمندان به الکترونیک به اشتراک بگذارید.
اگر برای افزایش دقت یا حل مشکل خواندن دما راهحل خاصی پیدا کردهاید،
در بخش نظرات همین پایین برای ما بنویسید.
سوالات متداول درباره سنسور دما LM35 آردوینو
LM35 با Arduino چگونه وصل می شود؟
در اتصال ساده، +Vs به 5V، GND به زمین و Vout به یک ورودی آنالوگ مانند A0 وصل میشود.
خروجی LM35 چند میلی ولت به ازای هر درجه است؟
خروجی LM35 با شیب تقریبی 10mV به ازای هر درجه سانتیگراد افزایش پیدا میکند.
آیا LM35 دمای زیر صفر را اندازه می گیرد؟
خود خانواده LM35 برای دماهای زیر صفر نیز مشخص شده است، اما استفاده از
محدوده منفی در مدار تکمنبع میتواند به بایاس منفی و طراحی متفاوت نیاز داشته باشد.




