اندازه گیری و مدیریت دما یکی از اولین پارامترهای مهم اندازه گیری در مدیریت مکان میباشد. تا به امروز آموزش های منتوعی از راه اندازی سنسور های دما و نمایش آن در LCD/OLED منتشر شده است اما در این آموزش از برد رزبری پای Raspberry Pi و نمایشگر OLED استفاده خواهیم کرد. در ادامه با مرجع تخصصی رزبری پای Raspberry Pi، دیجی اسپارک همراه باشید.
راه اندازی OLED بدون کدنویسی
بدون شک وقتی از نمایشگر OLED صحبت میکنیم، با توجه به نوع درایور به دنبال کتابخانه مرتبط با آن خواهیم گشت مانند SSD1306. بر خلاف گذشته این بار توسط Node-Red و بدون نیاز به کدنویسی نمایشگر OLED و سنسور دما را راه اندازی خواهیم کرد. انتخاب های متنوعی برای سنسور وجود دارد مانند سنسور دما رطوبت DHT سری DHT11 و یا DHT22، سنسور سری DS18B20 که در این آموزش از سنسور DS18B20 استفاده خواهیم کرد.
اتصالات
- پایه Data سنسور DS18b20 را به GPIO4 اتصال دهید.
- پایه GND , VCC سنسور را به ترتیب به ۳٫۳ و GND رزبری پای اتصال دهید.
- بین دو پایه دیتا Data و پایه VCC از یک مقاومت ۴٫۷ کیلو استفاده کنید.
- پایه SDA نمایشگر OLED را به پایه GPIO2 که همان پایه SDA است، اتصال دهید.
- پایه SCK نمایشگر OLED را به پایه GPIO3 اتصال دهید.
- پایه GND , VCC نمایشگر OLED را به ترتیب به ۳٫۳ و GND رزبری پای اتصال دهید.
راه اندازی سنسور DS18b20 در Node-Red
جهت تست و راه اندازی سنسور دما DS18B20 نود رد Node-Red چند نود اختصاصی برای ابن سنسور در نطر گرفته است. برای یافتن نودهای مربوطه کافیست کلید واژه DS18B20 را فیلتر کنید.
نودها را نصب install کنید تا به لیست نودهای مورد استفاده اضافه شود. با اتصال سنسور به رزبری پای نود DS18B20 به صورت اتوماتیک سنسور را شناسایی و آی دی را نمایش میدهد.
استفاده از نود Function
نود فانکشن Function جهت اجرای دستورات جاوااسکریپت برای تبدیل به پیام های با فرمت شی استفاده میشود. نود فانکشن پیام مبتنی بر شی object را به عنوان ورودی تایید کرده و سپس در خروجی ۰ و یا پیام های object بیشتری را برمیگرداند. در این آموزش از سه نود فانکشن استفاده میشود.
-
تبدیل عدد به رشته:
با توجه به اینکه در خروجی عدد دریافت میشود، بایستی به string و یا همان رشته تبدیل شود. برای اینکار از دستور زیر جهت تبدیل عدد به رشته استفاده میکنیم:
msg.payload=String(msg.payload); return msg;
-
نمایش کاراکتر دلخواه در مقابل دیتا
جهت نمایش کاراکتر و با هر اسم دلخواه در مقابل دیتا میتوانید با دستور زیر آن را اضافه نمایید. با توجه به اینکه دما بر حسب سانتی گراد خوانده و نمایش داده میشود، از کاراکتر C* در مقابل دما استفاده میکنیم:
msg.payload +=" *C"; return msg;
-
انتخاب ابعاد نمایش داده شده در OLED
حال در مرحله آخر بایستی ابعاد نمایش دیتا در oled را مشخص کنیم. برای اینکار از دستور زیر استفاده میکنیم. این مقادیر با توجه به نوع oled و نیاز شما در پروژه قابل تغییر است:
msg.payload = { "size":3, "x":3,"y":3,"text":msg.payload}; return msg;
استفاده از نود OLED
نود oled کار و راه اندازی نماییشگر OLED را بسیار برای ما ساده کرده است. نود را از منو manage palette فیلتر و نصب کنید.
جهت نمایش رشته مورد نیاز از نود String استفاده میکنیم. نود را انتخاب و وارد صفحه کنید. سپس با توجه به نوع OLED مورد استفاده تنظیمات را انجام دهید.
اتصال تمامی نودها
همانند تصویر زیر نود ها را به یکدیگر اتصال داده و Deploy کنید.
به دلخواه میتوانید از یک نود UI جهت نمایش دما در محیط Dashboard استفاده کنید.
چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریعترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند میتوانید از همین طریق اطلاع رسانی کنید.
پروژه و دریافت بن ارسال رایگان
برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و یا حتی مدار جدیدی تعریف کنید. سپس از اجرای کار فیلم گرفته و در شبکههای اجتماعی از جمله آپارات و اینستگرام، با هشتگهای دیجی_اسپارک دانشجوکیت digispark daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۲۰۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.
سلام پس اتمام اجرای تمام نود ها دما برروی نمایشگر نشان داده می شود
با سلام
بله نمایش داده خواهد شد.
عالی بود یه سوال گزینه وایفای و بقیه گزینه برای نمایش در نمایشگر به چه صورت هستش؟
اون ها رو چطور میتونیم راه اندازی کنیم؟
با سلام
متوجه سوال شما نشدم. لطفا شفاف تر توضیح دهید تا راهنمایی شود.
یه سوال دیگ چطور میشه چند تا نمایشگر دیگ به رزبری پای وصل کرد ؟
طوری که هر نمایشگر متن ویا شکل مجزایی نمایش بده
سلام
در خصوص اتصال نمایشگر بایستی از طریق i2c ارتباط برقرار کنید.
سلام من یه مشکل دارم
مشکل اینه که تو محیط ابر (وایلیودرین)برد رو نمیشناسه.یعنی به ابر وصل نمیشه
با سلام
کاربر گرامی متاسفانه متوجه سوال شما نشدم، لطفا دقیق و کامل مشکلتان را شرح دهید. تا امکان راهنمایی وجود داشته باشد.
سلام
موقع نصب من چند تا نود Ds دارم لطفا راهنمایی کنید
با سلام
تمامی نودهای مربوط به DS18B20 یکسان هستند و در صورت برقراری ارتباط یک دیتای مشخص ارسال میکنند. بررسی و نتیجه را اعلام نمایید.
سلام
ببخشید درایور برای راه اندازی oled نیاز نداریم؟؟
با سلام
خیر نیازی به استفاده از درایور نیست.
سلام وقت بخیر
چطور میتونم با node red از شیلد ال سی دی ۳٫۵ یا ۳٫۲ اینچی رزبری استفاده کنم؟
با سلام
تفاوتی وجود ندارد. شیلد ال سی دی ۳٫۵ یا ۳٫۲ هر دو جهت نمایش دسکتاپ رزبری پای استفاده میشود و دسترسی به تمامی نرم افزارها و تنظیمات وجود دارد.
سلام وقت بخیر
دما و رطوبت را از محیط بگیرد (با استفاده از قطعات)و در دیتابیس ذخیره کند.
میشه راجب حلش راهنمایی کنید
بدون قطعات هم میشه؟
با سلام
کاربر گرامی سوال شما شفاف نیست. واضح تر بفرمایید تا بررسی شود.
باسلام
من وقتی نود edit sensor-ds18b20 node
را باز میکنم طبق گفته شما باید ای دی سنسور را به طور خودکار بشناسه
ولی از من هیچی ننوشته و امکان ویرایش ندارد
لطفا راهنماییم کنید
با سلام
در صورتیکه تنظیمات ۱-wire را فعال نکنید، تغییراتی مشاهده نمیکنید. همچنین اتصاالات را بررسی کنید.
باسلام
تنظیمات wire-1 را چیه و چگونه میتوان فعال کرد؟
با سلام
در منو Raspbian بر روی Raspberry Pi Configuration کلیک کرده و سپس در بخش Interface گزینه ۱-Wire فعال Enable کنید.
سلام
ببخشید ۳ نود آبی، سبز و خاکستری رنگ هست
شما توضیحی در این باره ندادید
لطفا راهنمایی کنید
با سلام
دقت داشته باشید در صورتیکه تا به حال با نرم افزار نود رد کار نکرده اید، بایستی در ابتدا بخش های ابتدایی آموزش ها را اجرا کنید که به ترتیب بخش بندی شده است و تمامی این نودهای ساده آموزش داده شده است.
نود سبز رنگ نود Debug برای نمایش خروجی است.
نود آبی نود UI جهت نمایش دیتا در محیط گرافیکی UI است و نود دیگر نود Inject ورودی برای ارسال فرمان است.
با سلام
بخش های آموزشی چیه و کجاست و چگونه باید اجرا کرد؟
تمامی آموزش های نود رد بخش بندی شده است. لینک زیر را بررسی کنید.
دسته بندی -نرم افزار Node Red
سلام
وقتی نود oled را برای نصب انتخاب میکنیم
کدام گزینه را نصب کنیم؟
با سلام
نود زیر را نصب کنید.
node-red-contrib-oled 0.2.1
چجوری میشه نودی را که نصب کردیم پاک کنیم؟
با سلام
این مورد در دورههای عملی آموزش داده میشود.