سنسور DS18B20 یک سنسور دمای دیجیتال قابل برنامه ریزی است که می تواند دمای محیط را با دقت ۹ تا ۱۲ بیت اندازه گیری کند. تعیین میزان دقت با ارسال دستوری خاص به سنسور صورت می گیرد. این سنسور قادر است تا در محدوده دمایی -۵۵ تا +۱۲۵ درجه سانتیگراد کار کند. میزان خطای این سنسور در دمای ۲۵ درجه سانتیگراد در حدود ۰٫۵ درجه است. از دیگر امکانات سنسور این است که می توان برای آن، حداقل و حداکثر دما تعیین کرد تا با خروج از این محدوده، سنسور پیغام آلارم دهد. سنسور دارای یک حافظه ی دائمی بوده که در صورت تنظیم حداقل و حداکثر دما، یا تنظیم دقت اندازه گیری، این مقادیر را در صورت قطع جریان برق نیز نگهداری خواهد کرد. همچنین این سنسور یک کد منحصر به فرد ۸ بایتی(۶۴ بیتی) دارد که در داخل حافظه ROM آن قرار گرفته و در هنگام کار کردن با میکروکنترولر این کد بسیار مهم خواهد بود.
تبادل اطلاعات بین سنسور و میکروکنترولر بر پایه ی پرتکل تک سیمه(One Wire) صورت می گیرد. طبق این پروتکل می توان چندین وسیله را از طریق یک سیم مشترک به یکدیگر مرتبط نمود. این موضوع برای سنسور دمای DS18B20 نیز صادق است. یعنی می توان تا تعداد ۸ عدد از این سنسور را با یک سیم مشترک بین همه ی آنها به یک پایه میکرو متصل نمود.
[divider]
اتصال به میکرو
برای اتصال این سنسور به میکروکنترولر می توانید از مدار شکل زیر استفاده نمایید:
برای تغذیه این سنسور دما می توانید از منابع با ولتاژ ۳٫۰V تا ۵٫۵V استفاده کنید. این سنسور اندازه گیری و تبدیل دما به عدد را ظرف مدت ۷۵۰ میلی ثانیه انجام می دهد.
بلاک دیاگرام داخلی این سنسور را می توانید در تصویر زیر مشاهده کنید:
ساختمان داخلی سنسور دما DS18B20
ساختمان داخلی سنسور به اینگونه است که ابتدا دما توسط یک سنسور آنالوگ داخلی اندازه گیری شده، سپس این مقدار اندازه گیری شده توسط واحد آنالوگ به دیجیتال(ADC) که در سنسور تعبیه شده، با دقت بالا به عدد تبدیل می شود. تمام این عملیات در بخش Temprature Sensor صورت می گیرد. در ادامه نتیجه کار در بخش Scratchpad ذخیره می شود. در انتها این عدد توسط پردازنده داخلی و با پرتکل ارتباطی One Wire برای میکرو ارسال می شود. همچنین دستورات دریافتی از میکروکنترولر نیز توسط این پردازنده داخلی پردازش می شوند.
موفق و پیروز باشید…
عالی بود توضیحات. ممنون خسته نباشید