معماری

آموزش DS18B20 سنسور دماسنج دقیق در بسکام

DS18B20 یک سنسور دمای بسیار دقیق است که چند نمونه از آن می توانند تنها با یک سیم و به صورت دیجیتال با میکرو ارتباط برقرار کنند. در این آموزش راه اندازی یک سنسور را با Bascom-AVR خواهید آموخت. در ادامه آموزش DS18B20 با خانه الکترونیک همراه باشید …

آموزش ds18b20
آموزش DS18B20

اهداف پروژه:

  • آشنایی با سنسور دما DS18B20
  • راه اندازی یک سنسور توسط Bascom-AVR-ATmega8

قطعات مورد نیاز:

  • بورد آموزشی نما M8 tester
  • سنسور دما DS18B20
  • مقاومت 4.7k

آموزش DS18B20

آشنایی با سنسور DS18B20

این سنسور می تواند دمای بین -55 تا +150 درجه را با خطای 0.5 درجه نمایش دهد. شما می توانید چندین سنسور را تنها توسط یک سیم (صرف نظر از تغذیه سنسور) به میکرو متصل کنید و طول سیم می تواند چندین متر باشد. این سنسور گزینه مناسبی برای ساختن دما سنج های صنعتی می باشد!

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

هر چند در این آموزش تنها یک سنسور را آزمایش خواهیم کرد ولی باید به یاد بسپارید که پایه Data تمام سنسور ها که به یکدیگر و به میکروکنترلر متصل است در نهایت باید با یک مقاومت 4.7kΩ پول آپ (Pull Up) شود. یعنی پایه دیتا به وسیله این مقاومت به +5 ولت نیز متصل شود. بهتر است این کار را در نزدیکی میکرو انجام دهید.

DS18B20

DS18B20-pinout

im130327002_2

محیط پروتئوس و توضیح کد ها

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

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

 دانلود سورس کد بسکام 

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

آموزش ds18b20
آموزش ds18b20

همانطور که مشاهده می کنید بستن مدار این سنسور بسیار ساده می باشد!

حالا میریم سراغ بررسی کد های بسکام.

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

4tv92bmaqu8zr1rfwqvr2-300x28

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

Config Lcdpin
Config Lcd = 16 * 2

این کد ها پایه های ال سی دی و تعداد کارکتر های آن را مشخص می کند. پایه های ال سی دی با M8 tester نیز هماهنگ می باشند.

Config 1wire = Portc.5 

پایه ای از میکرو که پایه دیتا سنسور/ها به آن متصل شده است را مشخص می کند.

Dim I1 As Byte
Dim I2 As Byte
Dim I As Integer

متغیر های مورد نیاز برای خواندن مقدار سنسور را تعیین میکند.

Dim Temp As Single

متغیر Temp را برای زخیره سازی مقدار سنسور تعیین می کند.

Config Single = Scientific , Digits = 1

این دستور تمام اعداد اعشاری در طول برنامه را به یک رقم اعشار کاهش می دهد. برای مثال 27.684 را به 27.6 تبدیل می کند.

Do

شروع دوره بی نهایت

1wreset

ارتباط با سنسور را از سر میگیرد

ادامه مطلب…

ادامه این مطلب و نسخه کامل کد بسکام و PDF آموزشی (شامل توضیح کامل و خط به خط کد ها) را از لینک زیر دانلود فرمایید:

رایگان شد، دانلود همه فایل ها کلیک کنید

درباره ی نوید مهاجری

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

پاسخ دهید

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

قالب وردپرس