خانه / پروژه های میکروکنترلر AVR / پروژه با انواع LCD / راه اندازی سنسور دما و رطوبت SHT1x با میکروکنترلر AVR

راه اندازی سنسور دما و رطوبت SHT1x با میکروکنترلر AVR

در این پست از سایت اِمیک, سنسور بسیار دقیق و صنعتی SHT10 را با استفاده از میکروکنترلر AVR و با نرم افزار کامپایلر کدویژن (CodeVisionAVR) راه اندازی خواهیم کرد. البته این پروژه را بدون هیچ تغییری می توانید برای سنسور های SHT11 و SHT15 نیز استفاده کنید. در ادامه با سنسورهای سری SHT بیشتر اشنا خواهیم شد.

اشنایی با سنسورهای سری SHT :

سنسورهای سری SHT ساخت شرکت سوئیسی Sensirion می باشند و یکی از پرکاربردترین و دقیق ترین سنسورهای دما و رطوبت در انواع حوزه های کاری عمومی تا صنعتی می باشند.

sht-sensor-emic-min

سنسورهای سری SHT شامل سنسورهای SHT71 , SHT75 , SHT21 , SHT25 , SHT10 , SHT11 , SHT15 می باشند که مشخصات این سنسورها به صورت زیر است:

Specifications-sht-sensor

پایه های سنسورهای SHT11 , SHT10 و SHT15 که ما در این پست راه اندازی خواهیم کرد به صورت زیر می باشد:

sht-sensor-pin-emic-min

پایه 1 : اتصال به Ground یا زمین منبع تغذیه

پایه 2 : پایه DATA

پایه 3 : پایه SCK

پایه 4 : اتصال به مثبت منبع تغذیه

نکته: پایه هایی که با NC مشخص شده اند لازم نیست بجایی وصل شوند

یکی از مشکلات استفاده از این سنسورها پکیج بسیار کوچک و حساس آنها می باشد که استفاده از آنها را در بسیاری از کاربردها دشوار کرده است. ماژول های مختلفی برای این سنسورها طراحی شده که این مشکل را برطرف نموده و استفاده از آنها را در بیشتر پروژه ها آسان کرده است. همچنین برای این سنسورها هدر برد هایی هم وجود دارد که می توانید سنسور را بر روی ان نصب کنید و به راحتی در پروژه های مختلف استفاده کنید. برخی از این ماژول ها و هدر بردها را در زیر مشاهده می کنید:

sht-sensor-hb-emic

مشخصات و ویژگی ها :

  • ولتاژ ورودی 2.2 تا 5.5 ولت
  • رنج اندازه گیری دما -5 تا 123.5 درجه سانتی گراد
  • رنج اندازه گیری رطوبت 0 تا 100 درصد
  • عدم نیاز به کالیبراسیون
  • خروجی دیجیتال و قابل اعتماد
  • مصرف کم
  • پایداری بالا و …

پروژه راه اندازی سنسور دما و رطوبت SHT1x با میکروکنترلر AVR :

در ادامه شماتیک این پروژه را مشاهده می کنید, ما در این پروژه از میکروکنترلر ATmega16 و همچنین یک ال سی دی کاراکتری 2*16 برای نمایش متن و سنسور SHT10 استفاده کرده ایم

SHT1X-Test-with-avr-emic

عملکرد این پروژه به این صورت است که مقدار دما و رطوبت محیط را با استفاده از سنسور SHT10 اندازه گیری کرده و بر روی نمایشگر LCD کاراکتری نمایش میدهد. همانطور که گفته شده بدون هیچ گونه تغییری در شماتیک و یا برنامه می توانید این پروژه را برای سنسورهای SHT11 و SHT15 نیز استفاده کنید.

SH-SHT1X-Test-with-avr-emic

سنسور SHT10 دارای 4 پایه است که در شماتیک بالا پایه های تغذیه سنسور ( VCC و GND ) که وجود ندارد را به تغذیه متصل کنید. دو پایه دیگر طبق شماتیک بالا به میکروکنترلر متصل می شوند. توجه کنید که لازم است پایه DATA سنسور با استفاده از یک مقاومت 10K پول آپ شود.

در صورتی که می خواهید پایه های DATA و SCK را به دلخواه به پین دیگری از میکرو متصل کنید, باید شماره پین های مورد نظر خود را بجای پین های فعلی در فایل کتابخانه پروژه وارد کنید.

پتانسیومتر RV1 برای تنظیم کنتراست (درخشندگی) ال سی دی کاراکتری می باشد, در صورتی که پتانسیومتر نداشتید می تونید پین 3 ال سی دی کاراکتری را به زمین (منفی تغذیه) متصل کنید.

برنامه:

در این پروژه برای راه اندازی سنسور SHT10 از کتابخانه ان استفاده شده است. فایل های کتابخانه زیر را دانلود کرده و طبق توضیحات زیر در مسیر نصب نرم افزار کدویژن کپی کنید (در فایل های پروژه موجود در انتهای مطلب نیز این کتابخانه موجود است)

دانلود کتابخانه

  • فایل shtxx.h را در مسیر نصب نرم افزار کدویژن در پوشه inc قرار دهید
  • فایل shtxx.lib را در مسیر نصب نرم افزار کدویژن در پوشه lib قرار دهید

توجه : زمانی که از دستور sprintf در کدویژن استفاده می کنیم باید از مسیر

گزینه ی s}Printf Features}  را روی  float, width, precision  قرار دهیم .

نکته: پایه ای از میکروکنترلر که به پین SCK از سنسور متصل می شود را باید خروجی کنیم. همانطور که در برنامه در خط 14 مشاهده می کنید ما پایه 40 (PA0) از میکرو را که به پین SCK از سنسور متصل است, خروجی کرده ایم.

توضیحات قسمت های مهم برنامه نوشته شده, اگر سوالی داشتید می تونید در قسمت نظرات مطرح کنید.

کلیپ تست عملی پروژه :

 

دانلود فایل ها

پسورد فایل زیپ : www.emic.ir

نظر یادتون نره…

درباره ی عابد رازانی

فارغ التحصیل کارشناسی الکترونیک از دانشکده باهنر شیراز و علاقمند به برنامه نویسی و طراحی مدارات الکترونیکی, در حال حاضر به تولید محتوای اموزشی و طراحی و انجام پروژه مشغول هستم و همچنین درحال اماده شدن برای ارشد

3 دیدگاه

  1. سلام
    میشه به این پروژه علاوه بر lcd کاراکتری 2 تا سون سگمت 4 دیجیت هم اضافه کنید یکی برای دما و یکی برای رطوبت؟

    من همین پروژه رو داشتم با بسکام علاوه بر lcd دما و رطوبت رو روی 2 تا سون سگمنت هم نشون میدادم ولی نتونستم پرش سون سگمنت هارو رفع کنم. میدونم بخاطر وقفه های داخل کدها بود ولی نتونستم رفع کنم.

    سپاس.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *