بخش ۳-۲ نوشتن اعداد بر روی LCD با برد آردوینو و دیپ سویچ
۱۳ بهمن ۱۳۹۷PMD60 درایور جریان بالا برای موتور دیسی
۱۳ بهمن ۱۳۹۷راه اندازی سنسور دما DS18D20 توسط آردوینو و نمایش آن بروی LCD
هدف از این مقاله راه اندازی سنسور دما توسط برد آردینو و نمایش خروجی سنسور بروی LCD است.
قطعات مورد نیاز
- برد آردوینو
- برد برد
- LCD
- پتانسیومتر
- یک عدد مقاومت 4.7 کیلو اهم
- و یک عدد سنسور دماDS18B20
اطلاعاتی درمورد سنسور DS18B20
DS18B20 یک سنسور دمای دیحیتال ارزان قیمت و با کیفیت بالاست. DS18B20 دارای امکانات و قابلیتهای فوق العاده ایست و میتواند از دمای 55- تا 125+ درجه سانتیگراد عملیات اندازهگیری دما را به خوبی برای شما انجام دهد اما بیشینهی دقت آن (دقت بیشتر از 0.5 درجه سانتی گراد) در رنج دمایی 10- الی 85+ درجه سانتیگراد است.
پروتکل ارتباطی DS18B20 یک سیمه یا 1-Wire است که به شما کمک میکند بتوانید این سنسور را تنها با یک مقاومت 4.7 کیلو اهمی و ۳ سیم شامل VCC، زمین و دیتا به میکرو وصل کنید (این سنسور دارای همبندی ۲ سیمه نیز هست، که در موارد خاص کاربرد دارد).
DS18B20 دارای آدرس ۶۴ بیتی یکتاست و این به شما کمک میکند تا بتوانید مجموعهای از این سنسورها را بر روی تنها یک سیم قرار دهید. دقت خروجی این سنسورها (Resolution) از ۹ تا ۱۲ بیت قابل تنظیم است. تاخیر تبدیل دمای این سنسور به خروجی دیجیتال، کمتر از ۷۵۰ میلی ثانیه است که برای اغلب کاربردهای تحقیقاتی، تجاری و صنعتی عالیست. راه اندازی این سنسور توسط ARDUINO تنها به یک مقاومت 4.7 کیلو اهم و به هیچ قطعه دیگری نیاز نخواهید داشت.
تصویر شماتیک اتصال قطعات به یکدیگر به صورت زیر است.
برای نوشتن این کد نیاز به کتابخانه OneWire.h و DallasTemperature.h که لینک دانلود آن در زیر آورده شده است. در ادامه کد این پروژه آورده شده است که با کمک آن میتوانید براحتی به نتیجه دلخواه برسید.
#include <LiquidCrystal.h> #include <OneWire.h> #include <DallasTemperature.h> #define DS18B20 8 LiquidCrystal lcd (2,3,4,5,6,7); OneWire oneWire(DS18B20); DallasTemperature sensors(&oneWire); void setup() { // put your setup code here, to run once: sensors.begin(); lcd.begin(16,2); lcd.setCursor(0,0); lcd.print("Temperature ="); } void loop() { // put your main code here, to run repeatedly: sensors.requestTemperatures(); lcd.setCursor(0,1); lcd.print(sensors.getTempCByIndex(0)); lcd.setCursor(6,1); lcd.print("centigrade"); }
تهیه کننده: مهندس مسعود غلام زادگان
1 Comment
با سلام و ارز ادب
برای خرید وسایل مورد نیاز این پروژه(سنسور دمای محیط) باید به کجا مراجعه شود