یکشنبه, آذر 18, 1403
ادامه منو
    خانهپروژه های اردوینو Arduinoپروژه با انواع LCDراه اندازی سنسور دما DS18B20 با آردوینو و lcd

    راه اندازی سنسور دما DS18B20 با آردوینو و lcd

    در این پست راه اندازی سنسور دمای DS18B20 با استفاده از اردوینو را اموزش خواهیم داد که دمای اندازه گیری شده توسط سنسور روی یک lcd  کاراکتری نمایش داده خواهد شد. از انجایی که این سنسور بسیار دقیق و کاربردی است ما در پروژه هایی که در اینده قرار خواهیم داد حتما از این سنسور استفاده می کنیم.

    DS18B20-LCD

    قبلا راه اندازی این سنسور را با میکروکنترلر avr اموزش داده بودیم که می تونید این پست را در اینجا مشاهده کنید. در ادامه با این سنسور بیشتر اشنا خواهیم شد

    سنسور دما DS18B20 :

    سنسور DS18B20 یک سنسور دمای بسیار دقیق می باشد که می توان از ان در پروژه های مختلفی مانند دستگاه جوجه کشی ، گلخانه های هوشمند ، تنظیم دمای محیط و موارد مشابه استفاده کرد. ما قبلا سنسور دمای LM35 را هم راه اندازی کرده بودیم ولی LM35 یک سنسور انالوگ می باشد و همچنین دقت کمتری نسبت به سنسور سنسور دما DS18B20 دارد. سنسور DS18B20 یک سنسور دمای دیجیتال با دقت اندازه گیری ۰٫۵ درجه سانتی گراد است که می تواند دمای ۵۵- تا ۱۲۵+ درجه را اندازه گیری کند، پروتکل ارتباطی با این سنسور یک سیمه (۱wire) است. با یک سیم می توان تا ۹ سنسور دیجیتال DS18B20 را راه اندازی کرد و طول سیم واسط بین سنسور و میکروکنترلر می تواند تا حداکثر ۷ متر باشد. سنسور DS18B20 یک سنسور خیلی دقیق و عالی برای استفاده در پروژه هایی است که به دقت و اعتماد نیاز دارند. شکل این سنسور و پین های ان به صورت زیر است :

    pin-temperature-sensor-ds18b20

    برای راه اندازی این سنسور با اردوینو ما از دو کتابخانه پروتکل 1wire و کتابخانه سنسور استفاده کرده ایم که می توانید این دو کتابخانه را از طریق لینک زیر دانلود کنید و انها را طبق ادامه توضیحات به برنامه اردوینو اضافه کنید :

    دانلود کتابخانه ارتباط 1wire

    دانلود کتابخانه سنسور DS18B20

    برای اضافه کردن دو کتابخانه بالا به نرم افزار اردوینو کافی است که فایل ها را دانلود کرده و از حالت Zip خارج کنید و هر دو پوشه را به پوشه‌ های libraries موجود در محل نصب برنامه اردوینو اضافه کنید .

     

    شماتیک پروژه :

    prj-DS18B20-LCD

    در تصویر بالا شماتیک این پروژه را مشاهده می کنید که قطعات اصلی ان شامل یک سنسور DS18B20 برای اندازه گیری دما و یک برد اردوینو UNO که مقادیر دما را دریافت کرده و یک LCD کاراکتری 2*16 که این مقادیر دما را نشان می دهد. پتانسیومتر RV1 برای تنظیم کنتراست LCD کاراکتری استفاده شده است. لازم است که پین خروجی سنسور DS18B20 را با یک مقاومت ۴٫۷K(مقاومت بالاکش R1) به مثبت تغذیه متصل کنیم.

     

    برنامه :

    همانطور که در برنامه بالا می بینید ما در خط 6 برنامه پین هایی از برد اردوینو که باید به LCD کاراکتری متصل شوند را مشخص کرده ایم و همچنین در خط 7 پینی از برد اردوینو که باید به سنسور متصل شود را مشخص می کنیم. دلیل اینکه در خط 25 برنامه جلوی دستور sensors.getTempCByIndex داخل پرانتز عدد 0 را وارد کرده ایم این است که ما در این پروژه فقط از یک سنسور استفاده کرده ایم و درصورتی که بخواهیم از تعداد بیشتری سنسور استفاده کنیم, باید این عدد تغییر کند. برنامه بسیار ساده می باشد و توضیحات کامل نوشته شده است, شما باتوجه به نیاز خود می توانید تغییرات لازم را در برنامه انجام دهید. سوالات خودتون رو می تونید در قسمت نظرات مطرح کنید.

     

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

     

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

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

     

     

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

    عابد رازانی
    عابد رازانیhttps://emic.ir/
    فارغ التحصیل کارشناسی الکترونیک از دانشکده باهنر شیراز و علاقمند به برنامه نویسی و طراحی مدارات الکترونیکی, در حال حاضر به تولید محتوای آموزشی و طراحی و انجام پروژه مشغول هستم.

    3 نظرات

    1. سلام برای پروژه تب سنج دانشگاه برنامه شمارو وارد کردم
      با این متن روبرو شدم درسته همه چیز ؟
      Sketch uses 5488 bytes (17%) of program storage space. Maximum is 32256 bytes.
      Global variables use 122 bytes (5%) of dynamic memory, leaving 1926 bytes for local variables. Maximum is 2048 bytes.

    2. سلام
      مهندس میشه همین پروژه با همین سنسور برای کنترل سرعت فن انجام بدی ؟؟؟
      یا برای من انجام بده هزینش بگیر .، من احتیاج به سنسور دقیق و حساسDS18B20 برای پروژه دارم
      لطفا در سریعترین زمان پاسخ بدین ،،،،خیلی عجله دارم

    3. باسلام و احترام این سنسور اگر در موقع نصب سه سیم منفی دیتا و مثبت سیم های منفی و مثبت برعکس زده بشه میسوزه

      و اگر هم در هر صورت مقاومت نباشه سر راهش کار نخواهد کرد

    ارسال دیدگاه

    لطفا نظر خود را وارد کنید!
    لطفا نام خود را اینجا وارد کنید

    spot_img