راه‌اندازی سنسور DS18B20 با AVR

blog
۱۴۰۲-۰۵-۱۶
7 دقیقه

در این مطلب، با راه‌اندازی سنسور DS18B20 با avr آشنا می‌شویم. بدین منظور، نحوه راه‌اندازی چند سنسور دمای DS18B20 با کمک یکی از سری میکروکنترلرهای AVR، یعنی میکروکنترلر ATmega328، را بررسی می‌کنیم. شاید در نگاه اول راه‌اندازی چند سنسور کار سختی به نظر برسد، اما همان‌طور که در این مطلب خواهیم دید، به‌سادگی چندین سنسور دمای DS18B20 را به پین ​​میکروکنترلر AVR متصل می‌کنیم و مقادیر دمای همه سنسورها را برحسب درجه سانتیگراد یا فارنهایت نمایش می‌دهیم. برای اتصال چند سنسور دمای DS18B20، فقط یک پین دیجیتال میکروکنترلر ATmega328 لازم است. لازم به ذکر است که می‌توانیم حداکثر ۱۰۲۴ سنسور را با استفاده از پروتکل I2C متصل کنیم. اما در اینجا اتصال و راه‌اندازی ۳ سنسور دمای DS18B20 را با میکروکنترلر ATmega328 بررسی می‌کنیم.

سنسور DS18B20 یک سنسور دمای دیجیتال 1-Wire است. این سنسور امکان اندازه‌گیری دقیق دما را در محیط‌های مرطوب با رابط ساده 1-Wire فراهم و از طریق باس مشترک ارتباط برقرار می‌کند. ارتباط از طریق باس مشترک به این معنی است که می‌تواند چندین دستگاه را به هم متصل کند و مقادیر آن‌ها را فقط با استفاده از یک پین دیجیتال میکروکنترلر بخواند.

شاید برای شما مفید باشد: آموزش AVR از 0 تا 100

سنسور دمای دیجیتال ضد آب DS18B20

این نوع سنسور یک نسخه سیم‌کشی شده و ضد آب از سنسور DS18B20 بوده و برای زمانی که نیاز به اندازه‌گیری چیزی در فاصله دور یا در شرایط مرطوب داریم، گزینه مناسبی است. این نوع سنسور می‌تواند دمای بین ۵۵- تا ۱۲۵ درجه سانتی‌گراد (۶۷- تا ۲۵۷ درجه فارنهایت) را اندازه‌گیری کند. جنس کابل سنسور PVC است.

ازآنجاکه سنسور دیجیتال است، هیچ‌گونه تخریب و افت سیگنال حتی در فواصل طولانی وجود ندارد. این سنسورهای دمای دیجیتال 1-Wire نسبتاً دقیق هستند و خطای آن‌ها در حد ۰٫۵± درجه سانتی‌گراد است. همچنین، سنسور DS18B20 می‌تواند تا ۱۲ بیت دقت را از مبدل دیجیتال به آنالوگ آن‌بورد ارائه دهد. این سنسور با هر میکروکنترلری با استفاده از یک پین دیجیتال عملکرد بسیار خوبی دارد.

راه‌اندازی سنسور DS18B20 با AVR

تنها نقطه‌ضعف این سنسور استفاده از پروتکل Dallas 1-Wire است که تا حدودی پیچیده است و برای تجزیه‌وتحلیل ارتباطات نیاز به یک سری کد دارد. دقت کنید که در مدار از یک مقاومت ۴٫۷ کیلو اهم استفاده می‌کنیم که هنگام استفاده از سنسور به‌عنوان pull-up از خط DATA به خط VCC موردنیاز است.

در ادامه، تجهیزات و قطعات موردنیاز را برای راه‌اندازی سنسور بیان می‌کنیم.

قطعات موردنیاز برای راه‌اندازی سنسور DS18B20 با avr

قطعات لازم برای مدار راه‌اندازی سنسور DS18B20 با avr عبارت‌اند از:

  • میکروکنترلر ATmega328
  • چند سنسور دمای ضد آب DS18B20
  • نمایشگر LCD سایز ۱۶ در ۲
  • مقاومت‌های ۴٫۷ کیلو اهم، ۱ مگااهم و ۱۰۰ اهم
  • خازن‌های ۲۲ پیکوفاراد، ۱۰ میکروفاراد
  • اسیلاتور کریستالی ۱۶ مگاهرتز
  • منبع تغذیه یا باتری ۵ ولت

مدار اتصال سنسورها و میکروکنترلر

شماتیک مداری و اتصال بین قطعات مدار سنسور در شکل زیر نشان‌داده‌شده است.

راه‌اندازی سنسور DS18B20 با AVR

سخت‌افزار و طراحی مدار

با اتصال تمام سنسورها به یک پین دیجیتال میکروکنترلر ATmega328، دماسنج دیجیتالی برای اندازه‌گیری دماهای متعدد به‌سادگی طراحی می‌شود. تصویر زیر نشان می‌دهد که چگونه چندین سنسور دمای DS18B20 به میکروکنترلر ATmega328 متصل شده و دما را چگونه نمایش می‌دهند.

راه‌اندازی سنسور DS18B20 با AVR

راه‌اندازی سنسور DS18B20 با AVR

راه‌اندازی سنسور DS18B20 با AVR

راه‌اندازی سنسور DS18B20 با AVR

کد میکروکنترلر

از آردوینو برای نوشتن کد و آپلود آن در میکروکنترلر استفاده کرده‌ایم. برای آپلود برنامه یا همان پروگرام کردن میکروکنترلر، ATmega328 را در برد Arduino UNO قرار دهید. ابتدا بوت لودر (bootloader) را آپلود کنید. سپس، به‌سادگی کد زیر را کامپایل کرده و در میکروکنترلر آپلود کنید. اکنون می‌توانید میکروکنترلر را خارج کرده و آن را در PCB قرار دهید.

برای اتصال راه‌اندازی سنسور DS18B20 با avr به دو کتابخانه زیر نیاز داریم:

۱. دانلود کتابخانه 1 Wire

۲. دانلود کتابخانه Dallas Temperature

کد میکروکنترلر در ادامه آورده شده است.

 

راه‌اندازی چند سنسور DS18B20 با AVR

سنسور DS18B20 می‌تواند دما را از ۹ تا ۱۲ بیت (قابل‌تنظیم) روی نمایشگر نمایش دهد. همچنین، از طریق یک باس 1-Wire ارتباط برقرار می‌کند که طبق تعریف فقط به یک خط داده (و زمین) برای ارتباط با یک ریزپردازنده مرکزی نیاز دارد. علاوه بر این، می‌تواند مستقیماً از خط داده (“توان پارازیتی”) توان دریافت کند و نیاز به منبع تغذیه خارجی را از بین ببرد.

عملکرد اصلی DS18B20 سنسور دمای مستقیم به دیجیتال بودن آن است. وضوح سنسور دما توسط کاربر قابل‌تنظیم به ۹، ۱۰، ۱۱ یا ۱۲ بیت است که به ترتیب متناظر با افزایش ۰٫۵ درجه سانتی‌گراد، ۰٫۲۵ درجه سانتی‌گراد، ۰٫۱۲۵ درجه سانتی‌گراد و ۰٫۰۶۲۵ درجه سانتی‌گراد به مکان. رزولوشن پیش‌فرض هنگام روشن‌شدن ۱۲ بیت است.

هر سنسور DS18B20 دارای آدرس دستگاه خاصی با فرمت HEX مانند {0x28، 0x1D، 0x39، 0x31، 0x2، 0x0، 0x0، 0xF0} است؛ بنابراین، برنامه بر اساس دمای خواندن از یک آدرس دستگاه خاص طراحی شده است. در نتیجه، ابتدا میکروکنترلر تعداد سنسورها را اسکن می‌کند. فرض کنید ۳ سنسور در اینجا متصل هستند؛ بنابراین، فقط مقادیر ۳ دمای مختلف را نمایش می‌دهد. اگر سنسورهای بیشتری متصل شوند، تعداد قرائت‌ها به مقادیر متعدد تغییر خواهد کرد. مقدار دمای خوانده‌شده توسط هر سنسور پس از فاصله زمانی ۲ ثانیه به‌عنوان دمای سنسور شماره ۱، سنسور شماره ۲ دمای سنسور و بزرگ‌تر از آن برای شماره سنسورهای متصل بیشتر نمایش داده می‌شود.

منبع: How To Electronics

اطلاعات
4
0
لینک و اشتراک
profile

فضیله حمیدی

متخصص الکترونیک

مقالات بیشتر
slide

پالت | بازار خرید و فروش قطعات الکترونیک

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

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. وقتی شما در این سامانه، قطعه الکترونیکی را جستجو می‌کنید؛ آی سی به سرعت نتایج جستجوی شما در اکثر فروشگاه‌های آنلاین در حوزه قطعات الکترونیک را نمایش می‌دهد. جستجو در آیسی
family

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند. پرسش در سیسوگ فرم
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
خانواده سیسوگ

پالت | بازار خرید و فروش قطعات الکترونیک

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

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. وقتی شما در این سامانه، قطعه الکترونیکی را جستجو می‌کنید؛ آی سی به سرعت نتایج جستجوی شما در اکثر فروشگاه‌های آنلاین در حوزه قطعات الکترونیک را نمایش می‌دهد.
family

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند.
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

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

دیدگاه ها

profile
علی گفت :
۱۴۰۳-۰۹-۲۷ ۱۶:۳۹

آیا سفارش ساخت دیتالاگر برای سنسور ds18b20 رو قبول میکند؟ من رشته مهندسی مکانیک هستم و برای پایان نامه ام نیاز یه دیتالاگر دارم. ده سنسور و ذخیره و نمایش داده ها

profile
Zeus ‌ گفت :
۱۴۰۳-۱۰-۰۱ ۱۶:۴۰

قکر میکنم پروژه آماده برای این کار وجود داشته باشه
لطفا سوال خودتون رو در سامانه https://ask.sisoog.com مطرح کنید دوستان اونجا بهتر میتونن کمک کنند.

profile
Essi گفت :
۱۴۰۲-۱۲-۰۷ ۱۶:۵۵

سلام یه برد دما و تایمر دارم که با اتمگا ۸ بوده و ای سی پوکیده برنامشو ندارم میشه راهنمایی کنید پروگرامرش کنم سنسور دماش همین سنسور هستش

profile
Zeus ‌ گفت :
۱۴۰۳-۰۱-۰۶ ۰۹:۴۹

سلام دوست عزیز
متاسفانه مساله به این سادگی ها هم نسیت و خیلی پیچیده تره
باید شماتیک وجود داشته باشه باید کارکرد مشخص شده باشه و …..
بعد در صورت وجود همه اینها باید برنامه بازنویسی بشه که خودش کلی ماجرا داره

become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله