در این پست از سایت اِمیک, سنسور بسیار دقیق و صنعتی SHT10 را با استفاده از برد اردوینو راه اندازی خواهیم کرد. سنسورهای سری SHT از دقیق ترین سنسورها برای اندازه گیری دما و رطوبت می باشند. قبلا این سنسور را با استفاده از میکروکنترلر AVR نیز راه اندازی کرده بودیم که این پست را می توانید در اینجا مطالعه کنید, در ان پست بطور کامل در مورد سنسورهای سری SHT و پایه های انها توضیح داده شد که توصیه می کنم مطالعه کنید.
همانطور که گفته شد ما سنسور SHT10 را در این پست راه اندازی خواهیم کرد ولی شما بدون هیچ گونه تغییری در شماتیک و یا برنامه می توانید این پروژه را برای سنسورهای SHT11 و SHT15 نیز استفاده کنید.
پایه های سنسورهای SHT11 , SHT10 و SHT15 که ما در این پست راه اندازی خواهیم کرد به صورت زیر می باشد:
پایه 1 : اتصال به Ground یا زمین منبع تغذیه
پایه 2 : پایه DATA
پایه 3 : پایه SCK
پایه 4 : اتصال به مثبت منبع تغذیه
نکته: پایه هایی که با NC مشخص شده اند لازم نیست بجایی وصل شوند
توجه : از انجایی که ابعاد این سنسور بسیار کوچک است, توصیه می شود ماژول این سنسور را تهیه کنید یا اینکه به همراه سنسور یک هدر برد مناسب برای ان نیز تهیه کنید تا بتوانید به راحتی از سنسور استفاده کنید.
پروژه راه اندازی سنسور دما و رطوبت SHT1x با آردوینو :
در ادامه شماتیک این پروژه را مشاهده می کنید که علاوه بر سنسور SHT10 و برد اردوینو UNO از یک LCD کاراکتری نیز برای نمایش متن استفاده شده است.
عملکرد این پروژه به این صورت است که مقدار دما و رطوبت محیط را با استفاده از سنسور SHT10 اندازه گیری کرده و بر روی نمایشگر LCD کاراکتری نمایش میدهد. همانطور که گفته شده بدون هیچ گونه تغییری در شماتیک و یا برنامه می توانید این پروژه را برای سنسورهای SHT11 و SHT15 نیز استفاده کنید.
سنسور SHT10 دارای 4 پایه است که در شماتیک بالا پایه های تغذیه سنسور ( VCC و GND ) که وجود ندارد را به تغذیه متصل کنید. دو پایه دیگر طبق شماتیک بالا به برد اردویتو یونو متصل می شوند. توجه کنید که لازم است پایه DATA سنسور با استفاده از یک مقاومت 10K اهم پول آپ شود.
پتانسیومتر RV1 برای تنظیم کنتراست (درخشندگی) ال سی دی کاراکتری می باشد, در صورتی که پتانسیومتر نداشتید می تونید پین 3 ال سی دی کاراکتری را به زمین (منفی تغذیه) متصل کنید.
برنامه:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
////////// WWW.EMIC.IR ////////// #include <SHT1x.h> //SHT1x اضافه کردن کتابخانه سنسورهای// #include <LiquidCrystal.h> /* lcd معرفي کتابخانه */ //متصل شود LCD تابع زیر مشخص می کند که کدام پین های اردوینو به// LiquidCrystal lcd(13, 12, 11, 10, 9, 8, 7); SHT1x sht1x(5, 6); //از سنسور متصل شوند sck و data تعیین پایه هایی از اردوینو که باید به پین های// void setup() { lcd.begin(16, 2); /*(LCD بررسي اتصال) LCD پيکره بندي */ } void loop() { float temp; //برای ریختن مقادیر دما در ان float از نوع temp تعریف متغیر// float humidity; //برای ریختن مقادیر دما در ان float از نوع humidity تعریف متغیر// temp = sht1x.readTemperatureC(); //می ریزد temp دستور روبرو مقادير دما را از سنسور خوانده و درون متغير// humidity = sht1x.readHumidity(); //می ریزد humidity دستور روبرو مقادير رطوبت را از سنسور خوانده و درون متغير// lcd.clear(); //پاک کردن ال سی دی// lcd.setCursor(0, 0); //رفتن به سطر 0 و ستون 0 از ال سی دی کاراکتری// lcd.print("T="); //روی ال سی دی T= نوشتن عبارت// lcd.print(temp); //روی ال سی دی temp نوشتن مقادیر دمای موجود در متغیر// lcd.print("C"); //نوشتن علامت سانتیگراد بعد از دما زوی ال سی دی// lcd.setCursor(0, 1); //رفتن به سطر 1 و ستون 0 از ال سی دی کاراکتری// lcd.print("H="); //روی ال سی دی H= نوشتن عبارت// lcd.print(humidity); //روی ال سی دی humidity نوشتن مقادیر رطوبت موجود در متغیر// lcd.print("%"); //نوشتن علامت % بعد از مقادیر رطوبت روی ال سی دی// delay(300); //ایجاد تاخیر به مدت 300 میلی ثانیه// } |
در این پروژه برای راه اندازی سنسور SHT10 از کتابخانه ان استفاده شده است. کتابخانه این سنسور به همراه دیگر فایل های پروژه را می توانید از انتهای مطلب دانلود کنید.
پس از دانلود فایل ها برای استفاده از این کتابخانه لازم است که فایل کتابخانه SHT1x موجود در پوشه Library را اکسترکت کرده, حال فولدر مربوطه را در محل نصب نرم افزار درون فولدر Libraries کپی نمایید. توجه کنید که نام فولدر کتابخانه SHT1x باشد و ان را تغییر ندهید.
در صورتی که می خواهید پایه های DATA و SCK را به دلخواه به پین دیگری از اردوینو متصل کنید, باید شماره پین های مورد نظر خود را بجای پین های فعلی در خط 7 برنامه وارد کنید.
توضیحات قسمت های مهم برنامه نوشته شده, اگر سوالی داشتید می تونید در قسمت نظرات مطرح کنید.
کلیپ تست عملی پروژه :
پسورد فایل زیپ : www.emic.ir
نظر یادتون نره…
سلام ممنون از سایت خوبتون
اگر بخوایم ازیه سنسور دیگه استفاده کنیم باید چیکار کنیم؟
سلام دوست من
من همین فایل های شما رو اجرا میکنم ولی در پروتئوس مقادیر دما و رطوبت منفی نشان داده میشه.توی توضیحات کتابخانه هم نوشته این مشکل بخاطر ایراد در ارتباط سنسور با برد میباشد.درصورتی که من دقیقا فایل های شما رو اجرا کردم.ممنون میشم راهنمایی کنید🙏🙏
سلام, احتمالا سنسور در شبیه سازی پروتئوس بدرستی کار نمیکنه در عمل تست کنید
ممنون خیلی خوب بود کمکم کرد کتابخانه های دیگه مشکل داشتن اذیت میکردن👍👍👍👍👍👍
باسلام .تشکر از سایت بسیار خوبتون
من این برنامه رو نوشتم دوتا ماژول توو پروژه دارم mq7 و sht20 .اما خطا داره و نمیدونم خطا کجاست .ممنون میشم راهنماییم کنید
سلام, برنامه را در پیکوفایل یا پرشین گیگ اپلود کن و لینکشو بفرست تا بررسی کنم و دقیقا بگو که چه مشکلی داری