آموزش رزبری پای رزبری پای پایتون Python پروژه رزبری پای

بخش پنجم برنامه نویسی DHT پایتون Python با رزبری پای سنسور DHT

آموزش برنامه نویسی پایتون برای IoT با برد رزبری پای - دیجی اسپارک
نوشته شده توسط پریسا پوربلورچیان

در بجث اتوماسیون خانگی و هوشمند سازی اندازه گیری دما و رطوبت با دقت بالا بسیار حائز اهمیت است. به همین دلیل شرکت‌های معتبر شروع به تولید و طراحی گجت‌های هوشمند در این حوزه کرده‌اند. از جدیدترین آن‌ها می‌توان به ترموستات هوشمند و حرفه‌ای Nest اشاره کرد. طراحی منحصر به فرد آن از نظر ابعاد، ظاهر محیط گرافیکی UI ساده با نرم افزار Node-RED دست به دست هم داده اند تا به یکی از قدرتمندترین ترموستات‌های هوشمند دنیا تبدیل گردد. در این آموزش سنسور دما رطوبت DHT را با پایتون راه اندازی خواهیم کرد. در ادامه با مرجع تخصصی پایتون رزبری پای به زبان فارسی، دیجی اسپارک همراه باشید.

 


انتخاب سنسور دما


با یک جستجوی ساده در شاخه دما رطوبت دانشجو کیت متوجه خواهید شد که سنسورهای مختلف با دقت اندازه گیری کم و زیاد، ظاهر متفاوت، ابعاد کوچک تا بزرگ، تک سیم و چند سیمه در بازار معرفی شده است. در نگاه اول شاید در انتخاب سنسور مناسب دچار سردرگمی شویم و نتوانیم انتخاب مناسبی با توجه به محیط مورد نظر خود داشته باشیم. ما برای برطرف شدن این موضوع راه حل های زیادی را در برابر شما قرار داده‌ایم. نکته اول در انتخاب سنسور مناسب، بررسی دیتاشیت و پارامترهای معرفی شده برای آن سنسور است. از جمله رنج اندازه‌گیری دما، دقت اندازه گیری، ابعاد سنسور، ضد آب بودن و یا نبودن آن، طول کابل سنسور و بسیاری دیگری از ویژگی ها که همه و همه در دیتاشیت کالا نوشته شده و در اختیار ما قرار گرفته شده است. نکته دوم بررسی محیط مورد استفاده، نویز پذیری محیط، شرایط آب و هوایی، بزرگ و کوچک بودن محیط است که بایستی عواملی که منجر به خطا در اندازه گیری خواهد شد، را کامل بررسی و سپس نسبت به خرید اقدام نمایید. در این آموزش از سنسور دما رطوبت DHT مدل DHT22 با رنج اندازه گیری – ۴۰ تا +۱۲۵ درجه سانتی گراد استفاده می‌کنیم. سنسور DHT22 از چهار پایه تشکیل شده است که فقط از سه پایه آن جهت راه اندازی استفاده می‌کنیم. دقت داشته باشید، سنسور DHT دارای پایه‌های بسیار نازک و نویز پذیر است و در صورتیکه در محل مورد نظر به درستی نصب نگردد، سبب ایجاد خطا و عدم شناسایی توسط میکروکنترلر می‌گردد.

 


اتصالات DHT پایتون


سنسورهای سری DHT اکثرا ۴ پایه هستند. دو مدل DHT11 و DHT22 هر دو از نظر ظاهر و اتصالات مشابه بوده و فقط در رنگ سنسور با هم تفاوت دارند. جهت اتصال سنسور DHT22 به رزبری پای همانند زیر عمل کنید:

 


نصب کتابخانه DHT پایتون


جهت راه اندازی سنسور DHT پایتون ، نیاز به نصب کتابخانه و آپدیت تنظبمات خواهیم داشت. همانند زیر به ترتیب دستورات را در ترمینال وارد کرده و منتظر بمانید تا دستورات نصب گردد.

  • مرحله اول نصب کتابخانه openssl جهت دسترسی به openssl است.
  • مرحله دوم نصب کتابخانه Adafruit جهت خواندن دیتا از سنسورهای سری DHT است:
  • مرحله سوم توزیع کتابخانه های نصب شده در پیکج کتابخانه های مربوط به پایتون است:

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

 

 


تست سنسور DHT و دریافت اطلاعات


اگر مراحل نصب کتابخانه و دستورات به درستی انجام شده باشد، با ساخت یک مثال ساده DHT پایتون میتوانیم دما و رطوبت را در ساده ترین و سریع ترین روش ممکن بخوانیم.

  • در مرحله اول یک مثال ایجاد می‌کنیم. برای اینکار دستور زیر را در ترمینال وارد کنید.
  • در مرحله دوم با توجه به اینکه از کتابخانه Adafruit استفاده می‌کنیم، بایستی نوع سنسور مورد استفاده و پایه GPIO استفاده شده در دستور مشخص گردد. به عنوان مثال در این آموزش از سنسور DHT22 و پایه ۳۷ رزبری پای یعنی GPIO26 استفاده شده است. پس دستور خواندن دیتا از پایه ۳۷ بایستی به صورت زیر نوشته شود:
  • با وارد کردن دستور در صورتیکه اتصالات را به درستی انجام داده باشید، دما و رطوبت به صورت زیر برای شما نمایش داده می‌شود.
اتصال سنسور DHT پایتون و برد رزبری پای - دیجی اسپارک

 


کد DHT22 پایتون بدون استفاده ترمینال


در این مرحله در صورتیکه بخواهید در محیط پایتون، کدنویسی سنسور DHT را انجام دهید، همانند زیر عمل کنید:

  • فراخوانی کتابخانه Adafruit

در خط اول کتابخانه Adafruit sensor را فراخوانی کنید:

  • فراخوانی کتابخانه Time برای ایجاد Delay

کتابخانه time sleepجهت ایجاد Delay بر حسب میکرو ثانیه در برنامه فراخوانی می‌شود:

  • خواندن دما و رطوبت

در این مرحله از تابع try که در بخش های قبل آموزش داده شد، جهت ایجاد حلقه و تکرار داده ها در برنامه استفاده می‌کنیم. در این مرحله دیتا از پایه سنسور توسط دستور زیر خوانده می‌شود:

دقت کنید در صورتیکه از سنسور DHT11 استفاده می‌کنید، به جای DHT22 در کدها DHT11 جایگزین گردد.

  • نمایش دیتا print

در مرحله بعد، دیتای دریافتی توسط تابع print در محیط پایتون نمایش داده می‌شود:

  • مرحله آخر ایجاد Delay بین ارسال دیتا است:
 

 


کد کامل DHT پایتون Python


 

 

 

کد را به پایتون انتقال داده و سپس RUN کنید. دیتا به صورت زیر نمایش داده می‌شود:

 


وسایل مورد نیاز


خرید رزبری پای Raspberry Pi از دانشجوکیت

خرید سنسور دما رطوبت DHT22 از دانشجوکیت

خرید کابل فلت از دانشجوکیت

 

 

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

 


پروژه و دریافت بن ارسال رایگان


برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و یا حتی مدار جدیدی تعریف کنید. سپس از اجرای کار فیلم گرفته و در شبکه‌های اجتماعی از جمله آپارات و اینستگرام، با هشتگ‌های دیجی_اسپارک   دانشجوکیت    digispark    daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۲۰۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.

درباره نویسنده

پریسا پوربلورچیان

تولید کننده محتوا / کارشناس IOT

زندگی یعنی پژوهش و فهمیدن چیزی جدید

تلاشم بر این است تجربیاتم در زمینه IOT‌ را به بهترین شکل با شما در میان بگذارم.

تبادل نظر و رفع عیب با ثبت دیدگاه