خانه » ارتباط سنسور دمای LM35 با آردوینو
آخرین بروز رسانی: 14 آذر 1401

ارتباط سنسور دمای LM35 با آردوینو

برای سنجش دما توسط آردوینو، یکی از ساده‌ترین و ارزان‌ترین راه‌ها، استفاده از سنسور دمای LM35 است. این سنسورها نسبتا دقیق هستند و برای فعال­سازی نیازی به قطعه­ جانبی ندارند. بنابراین، تنها با چند اتصال و تعدادی دستور آردوینو، در کمترین زمان، دما را اندازه­ گیری خواهید کرد.

اجزای مورد نیاز

شما به اجزای زیر نیاز دارید:

سنسور دما LM35

سنسور LM35 محصول شرکت Texas Instruments  میباشد و یک سنسور ولتاژ پایین بوده که دما را بر حسب درجه سانتی گراد اندازه­گیری میکند. خروجی این سنسور ولتاژی است که به طور خطی با دما (بر حسب درجه سانتی گراد) متناسب است؛ بنابراین استفاده از آن، در آردوینو بسیار آسان است.

سنسور دمای LM35 نسبتا دقیق ، ‌پایدار در انواع شرایط محیطی و بدون نیاز به قطعات جانبی برای استفاده است. علاوه بر آن، این سنسور به کالیبراسیون نیاز ندارد و دقت اندازه­گیری آن در دمای اتاق 0.5± درجه­ی سانتی­گراد و در محدوده­ی دمایی 155+ تا 55- درجه سانتی­گراد، ۱± درجه میباشد.

ولتاژ کاری این سنسور بین ۴ تا ۳۰ ولت میباشد و در زمان اندازه­گیری دما، دارای جریان مصرفی کمتر از 60 میکروآمپر است. در حالیکه افزایش دما در سنسور بسیار اندک میباشد (در جریان هوای ثابت، کمتر از 0.08 درجه ی سانتی گراد است).

در ادامه، جدول تکمیلی مشخصات این سنسور آورده شده است:

ولتاژ کاری ۴ تا ۳۰ ولت
جریان مصرفی ۶۰ میکرو آمپر
محدوده دمایی -55 تا 155 درجه سانتی گراد
دقت اندازه گیری ±0.5 درجه سانتی گراد
مقیاس خروجی 10mV/ᵒC
مقدار خروجی در دمای ۲۵ درجه سانتی گراد 250میلی ولت

تنها نکته­ منفی درباره­ی سنسوردمای LM35  آن است که برای اندازه گیری دماهای منفی لازم است که سنسور در بایاس منفی قرار بگیرد. پس اگر قرار است که از این سنسور برای اندازه­گیری دماهای منفی استفاده کنید، به شما پیشنهاد میشود که از سنسور دمای TMP36 به عنوان جایگزین استفاده کنید. سنسور دمای TMP36 از شرکت Analog  Devices است که نسبتا دقیق بوده (40- تا ۱۲۵+ درجه سانتی­گراد) و برای اندازه­گیری دماهای منفی نیازی به بایاس منفی ولتاژ ندارد. شما میتوانید اطلاعات آموزشی اختصاصی این سنسور را در لینک زیر مشاهده کنید:

جایگزین مناسب­تر برای سنسور LM35، سنسورهای دماسنجی دیجیتال مانند DS18B20 می باشند که در ادامه، پروژه­ی مربوط به آن آورده شده­است. زمانی که قرار است که سنسور در فاصله ای دور باشد و یا در محیط­ هایی که نویز الکتریکی دارند قرار بگیرد، استفاده از سنسورهای دیجیتال مناسب­تر است؛ چرا که سنسورهای دماسنجی دیجیتال در مقایسه با سنسورهای آنالوگ، حساسیت کمتری نسبت به نویز دارند (در برابر نویز ایمن تر هستند).

نحوه ی عملکرد سنسور

LM35 از تکنیک حالت جامد برای اندازه­گیری دما استفاده می­کند. به عبارتی، این سنسور بر پایه­ این اصل که در ترانزیستورهای با اتصال دیودی، افت ولتاژ بین پایه بیس و امیتر (ولتاژ پیشرو – Vbe) با افزایش دما با سرعت مشخصی کاهش می یابد، ساخته شده است. با تقویت دقیق این تغییر ولتاژ، به راحتی می­توان یک سیگنال آنالوگ را که به طور مستقیم با دما متناسب است تولید کرد.

این رابطه­ خطی بین ولتاژ پیشرو (Vbe) و دما، دلیل استفاده از ترانزیستورها با اتصال دیودی به عنوان المان های اندازه­ گیری دما است. اگرچه در طول سال­ها، پیشرفت­هایی در این روش وجود داشته­است؛ اما همچنان اساس اندازه­ گیری دما، این روش می­باشد. اطلاعات بیشتر در مورد این تکنیک را می­توانید در اینجا بیابید.

خوشبختانه، تمام این محاسبات پیچیده در داخل LM35 انجام می­شود و ولتاژی را که به طور خطی با دما متناسب است، به عنوان خروجی به ما ارايه میدهد.

روش عملکرد سنسور

استفاده از LM35 آسان است. کافیست پایه سمت چپ را به برق (4 تا 30 ولت) و پایه سمت راست را به زمین (با فرض اینکه سمت صاف سنسور رو به شما باشد) وصل کنید. در نتیجه، پایه­ میانی که پایه­ی خروجی است، دارای ولتاژ آنالوگی خواهد بود که نسبت مستقیم و خطی با دما (بر حسب درجه سانتیگراد) دارد. این را می­توان به راحتی در مشخصه­ ولتاژ خروجی در برابر دما مشاهده کرد. توجه داشته باشید که ولتاژ خروجی آنالوگ مستقل از منبع تغذیه است.

برای تبدیل ولتاژ به دما، به سادگی میتوان از فرمول زیر استفاده نمود:

دما(Cᵒ)= ولتاژ خروجی *‌۱۰۰

به عنوان مثال اگر ولتاژ خروجی 0.5 ولت باشد، دما 50 درجه سانتی گراد به دست می­آید.

 تست سنسور LM35

تست LM35 بسیار آسان است، فقط کافی است سمت صاف سنسور رو به شما باشد، در این صورت، بایستی پایه سمت چپ به منبع تغذیه 4 تا 30 ولت (چهار باتری AA نیزعملکرد بسیار خوبی دارد) و پایه سمت راست به زمین متصل گردد. سپس، بایستی مولتی متر که در حالت ولتاژ DC می باشد به زمین و پایه وسط متصل شود. ولتاژ خوانده شده در دمای اتاق (25 درجه سانتیگراد)، باید حدود 0.25 ولت باشد.

میتوان با به آرامی فشار دادن محفظه پلاستیکی سنسور، شاهد افزایش دما بود.

یا با استفاده از یک قطعه یخ و تماس آن با سنسور  (بهتر است که یخ در یک کیسه پلاستیکی قرار داده شود تا مدار با آب تماس پیدا نکند) کاهش دما را مشاهده نمود.

پایه های سنسور LM35

LM35 در سه شکل مختلف عرضه می­شود، اما رایج ترین نوع آن، پکیج 3 پین TO-92 است که دقیقاً شبیه ترانزیستور است. بیایید نگاهی به پایه­ های آن بیندازیم.

+VS  تغذیه­ی سنسور است که می­تواند بین 4 تا 30 ولت باشد.

Vout یک ولتاژ آنالوگ تولید می­کند که با دما نسبت مستقیم (خطی) دارد و باید به ورودی آنالوگ (ADC) متصل شود.

GND پایه اتصال به زمین است.

اتصال سنسور دماسنجی LM35 به آردوینو

اتصال LM35 به آردوینو بسیار ساده است. کافی است که سه پایه­ سنسور به آردوینو متصل شود: دو پایه برای تغذیه و یکی برای خواندن مقدار سنسور.

سنسور را می توان با پایه­ی  5 ولت برد آردوینو فعال کرد. ولتاژ مثبت به “+Vs” و زمین به “GND” وصل می­شود. پین میانی “Vout” که سیگنال خروجی آنالوگ از سنسور است، به ورودی آنالوگ A0 آردوینو متصل می شود.

در شکل زیر می­توان نحوه­ اتصال سنسور به آردوینو را مشاهده کرد:

برای اندازه‌گیری دمای هوا، سنسور بایستی در هوای آزاد و یا در تماس با جسمی که دمای آن قرار است اندازه‌گیری شود، (مانند هیت سینک) باشد.

خواندن داده های دمای آنالوگ

همانطور که در نمودار بالا مشاهده می­شود، خروجی LM35 به یکی از ورودی های آنالوگ آردوینو متصل است. مقدار این ورودی آنالوگ را می توان با تابع analogRead() خواند.

با این حال، تابع analogRead() در واقع ولتاژ خروجی سنسور را بر نمی­گرداند؛ بلکه ولتاژ ورودی که  بین 0 و ولتاژ مرجع ADC (که از لحاظ فنی، ولتاژ عملیاتی است، یعنی 5 ولت یا 3.3 ولت. مگر اینکه این مقدار تغییر داده شده باشد) است را به مقادیر صحیح 10 بیتی از 0 تا 1023 ترسیم می­کند. برای تبدیل مجدد این مقدار به ولتاژ خروجی سنسور، از این فرمول استفاده می­شود:

  (5/1024) * (مقدار خوانده شده از ADC) = Vout

این فرمول عدد خوانده شده از ADC (1023-0 ) را به 5-0 ولت تبدیل می­کند.

سپس برای تبدیل ولت به دما از این فرمول استفاده میشود:

دما(Cᵒ)= ولتاژ خروجی *‌۱۰۰

کد آردوینو دماسنج ساده

در پایین، روشی سریع برای خواندن دمای سنسور LM35 نشان داده شده است و این روش می­تواند به عنوان روش پایه، برای سایر آزمایش­ها و پروژه­های عملی مورد استفاده قرار گیرد. برای این کار میتوان به سادگی، مقدار اندازه­گیری شده توسط LM35 را از پایه­ی آنالوگ A0 خواند و دمای فعلی (در هر دو درجه سانتیگراد و درجه فارنهایت) را روی نمایشگر سریال چاپ نمود. میتوانید این دستورات را در آردوینوی خود آپلود کنید و نتیجه را مشاهده نمایید.

باید خروجی زیر را در مانیتور سریال ببینید.

توضیح کد:

ابتدای کد با تعریف آن پایه ای از آردوینو که پین ​​Vout سنسور به آن متصل است، شروع می­شود.

        define sensorPin A0

در تنظیمات، اتصال سریال با کامپیوتر را تعریف می­کنیم.

}( )void setup

;Serial.begin(9600)

{

در حلقه، ابتدا سیگنال آنالوگ LM35 را با استفاده از تابع analogRead() میخوانیم.

;int reading = analogRead(sensorPin)

در مرحله بعد، از فرمول­هایی که برای تبدیل مقدار آنالوگ خوانده شده به ولتاژ و سپس تبدیل آن به دما، که قبل­تر در این مقاله راجع به آنها صحبت شد،‌ استفاده می­کنیم.

float voltage = reading * (5.0 / 1024.0)

float temperatureC = voltage * 100

سپس، نتایج بر روی مانیتور سریال چاپ می­شود.

Serial.print(“Temperature: “)

Serial.print(temperatureC)

Serial.print(“\xC2\xB0”); // shows degree symbol

Serial.print(“C  |  “)

مقدار دمایی که دریافت می­کنیم بر حسب سانتیگراد (°C)  است که با استفاده از یک فرمول ساده به فارنهایت (°F) تبدیل شده و بر روی مانیتور سریال چاپ می­شود.

T(°F) = T(°C) × 9/5 + 32

float temperatureF = (temperatureC * 9.0 / 5.0) + 32.0

Serial.print(temperatureF)

Serial.print(“\xC2\xB0”); // shows degree symbol

Serial.println(“F”)

پروژه آردوینو دماسنج مستقل با LM35 و LCD I2C

ممکن است ایده ­ای به ذهنتان برسد که در آن بخواهید دما را به صورت آنلاین نمایش دهید و هر زمان که دما خارج از محدوده­ hd تعریف شده باشد، هشداری را نشان دهید. در این صورت احتمالاً به جای نمایشگر سریال، به یک LCD کاراکتری 16×2 نیاز خواهید داشت.

در این مثال، ما I2C LCD را به همراه LM35 به آردوینو متصل می­کنیم. همانطور که در شکل زیر می بینید، اتصال LCD I2C بسیار آسان است.

شکل شماتیک زیر به شما نشان می­دهد که چگونه همه چیز را به یکدیگر متصل کنید.

دستورات زیر، مقادیر دما را روی LCD I2C چاپ می­کند. کد مشابه مثال قبلی است، با این تفاوت که مقادیر روی LCD I2C چاپ شده است.

شما باید خروجی زیر را روی LCD ببینید:

دسته‌بندی: آموزش آردوینو

مقالات مرتبط رو حتما ببینید

نظر شما برای ما با ارزشه

0 دیدگاه