فهرست مطالب:

ForgetMeNot - بستر اطلاع رسانی خانه هوشمند: 14 مرحله (همراه با تصاویر)
ForgetMeNot - بستر اطلاع رسانی خانه هوشمند: 14 مرحله (همراه با تصاویر)

تصویری: ForgetMeNot - بستر اطلاع رسانی خانه هوشمند: 14 مرحله (همراه با تصاویر)

تصویری: ForgetMeNot - بستر اطلاع رسانی خانه هوشمند: 14 مرحله (همراه با تصاویر)
تصویری: The Wrap, the Blanket, and the Missing Yarn - Crochet Podcast 118 2024, سپتامبر
Anonim
ForgetMeNot - پلت فرم اطلاع رسانی خانه هوشمند
ForgetMeNot - پلت فرم اطلاع رسانی خانه هوشمند

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

دوستان عزیز نگران نباشید - ما به نجات می رسیم.

ForgetMeNot یک پلت فرم اطلاع رسانی خانه هوشمند است که بر اساس یک نیاز واقعی ایجاد شده است که در زندگی روزمره خود با آن روبرو بودیم (و اگر کاملاً صادق باشیم ، کمی در پروژه علوم کامپیوتری در پروژه نهایی هدایت می شویم).

در اصل ، ترکیبی از سخت افزار و نرم افزار است. این امر به شما اطمینان می دهد که در مورد کارهایی که هنگام خروج از خانه فراموش کرده اید انجام دهید (و می توانید عمل کنید!)

ریمیکس؟

در حالی که ما فقط از چند سنسور (مواردی که مشاهده می کنند) و فعال کننده ها (چیزهایی که انجام می دهند) استفاده می کنیم ، کلیت هر جزء آن را برای موارد مختلف استفاده با حداقل تغییرات سخت افزاری و نرم افزاری مناسب می کند. اگر برخی (یا همه!) پروژه را ریمیکس کرده اید ، به ما اطلاع دهید - ما دیوانه همکاری هستیم!

سازمان بهداشت جهانی؟

با افتخار توسط (زیرمجموعه ای) از تیم Red Panda از IDC Herzliya در McCann Valley ، Mizpe Ramon ایجاد شده است. یک کوله پشتی واقعی از زویکا مارکفلد ، از ForRealTeam ، دریافت می کند که با ما به صحرا رفت تا چیزهای شگفت انگیزی را در وسط زیباترین قسمت کشورمان بسازیم.

تشکر ویژه

برای افرادی که در Random Nerd Tutorials به خاطر جریان بی پایان مفاهیم جالب و جدید خود می توانند با Node-RED و ESP8266s خود آزمایش کنند ، به ویژه در اینجا.

تدارکات

وای خیلی چیزها…

این یک پروژه بسیار گسترده است و ما در زمینه سخت افزار ، نرم افزار و سایر مواردی که استفاده می کنیم ، برخی از طراحی های اولیه را انجام دادیم.

در حالی که ما قصد داریم لیست زیر را توصیه کنیم ، بسیاری از قطعات را می توان با مواردی که به راحتی به دست می آید جایگزین کرد. یکی از نمونه ها تخته های WeMos است - هر نسخه ارزان هیئت مدیره ای که دور آن نشسته اید ، احتمالاً می توانید بدون ایجاد تغییرات زیاد ، آن را کار کنید.

یک نمونه از نوع دیگر ، محفظه Smart Outlet است. در حالی که زیبا و محکم است ، هر جعبه ای (غیر فلزی) مناسب است. ما به طور اتفاقی به دستگاه برش لیزری دسترسی داشتیم و هرکسی که به دستگاه برش لیزری دسترسی دارد ناگهان کاربردهای بسیار زیادی برای برش لیزری دارد. همه چیز. در مورد قطعات چاپ سه بعدی ما نیز همینطور است.

بنابراین - فقط وسایل خود را تکان دهید و در صورت نیاز به کمک برای جایگزینی بخشی از قسمت دیگر ، نظر خود را در زیر بگذارید.

میکروکنترلرها ، تخته ها و سپرها

  • 4 تخته ESP8266 (ما از مینی های WeLos D1 ساخته LoLin استفاده کردیم)
  • 1 x D1 مینی رله سپر
  • 1 x L293N Hbridge (برای موتور DC Door Activator استفاده می شود)

قدرت

  • 50 کابل بلوز به سبک آردوینو (بسته به تخته ای که استفاده می کنید ، ممکن است به زن یا مرد بیشتری نیاز داشته باشید. فقط از هر کدام یک دسته تهیه کنید ، همیشه مفید هستند)-توجه داشته باشید که برخی از آنها برای Door Activator برداشته شود
  • 3 مقاومت 10 اهم
  • حداکثر 1 عدد Xuanshi XS-XB6 16A ~ 250 ولت نوار برق 3500 وات + سیم فرمت (هر سیم اضافی + شکاف برای پریزهای 220 ولت باید انجام شود) - توجه داشته باشید که برای خروجی هوشمند حذف می شود
  • 3 عدد کابل میکرو USB
  • 3 عدد USB شارژر دیواری
  • 1 x DY-0120200 (ورودی: 100-240V ، 50-60Hz خروجی: 12V --- 2A) آداپتور AC/DC با سر نر بشکه DC (یا آداپتور معادل)
  • 1 عدد جک بشکه DC زنانه
  • ترانسفورماتور 1 x 220V به 5V (برای تأمین برق به برد خروجی هوشمند مستقیماً از نوار برق ، بدون منبع تغذیه اضافی)

سنسورها

  • 1 عدد سنسور نور LDR
  • 1 عدد Reed Relay (به عنوان سنسور برای پنجره عمل می کند)
  • 1 عدد سنسور دما DHT

موتورها

  • 1 x موتور DC (ما از یک موتور برس فلزی بدون هسته استفاده کردیم ، اما هر موتوری که با پوشش فعال کننده درب چاپ شده 3D شما مطابقت داشته باشد)
  • 1 موتور سروو (احتمالاً هر اندازه ای وجود دارد ، اما مطمئن شوید که از یک موتور قوی برای چرخاندن سوئیچ مورد نیاز استفاده کنید)

قطعات برش لیزری

1 عدد جعبه خروجی هوشمند

قطعات چاپ سه بعدی

1 عدد محفظه فعال کننده درب

تلفن همراه

این آموزش با در نظر گرفتن تلفن های Android ساخته شده است و در حال حاضر به نظر می رسد که Integromat از دستگاه های iOS پشتیبانی نمی کند. بنابراین ، متأسفانه ، این دستورالعمل نیاز به یک تلفن Android دارد.

نرم افزار

  • Arduino IDE (محیط توسعه یکپارچه - اساساً یک ویرایشگر کد فانتزی)

    • برای بارگذاری آسان ، برد خود را در IDE بارگذاری کنید
    • به طرحهای پیوست شده برای همه کتابخانه های مربوطه مراجعه کنید
  • پلت فرم ادغام Node-RED

    ما بیشتر از گره های سهام استفاده می کنیم ، به استثنای چند مورد - برای همه گره های مربوط به جریان پیوست مراجعه کنید

  • Integromat.com (اتصال سرویس ، امکان اتصال چندین سرویس با هم - در مورد ما ، و برنامه Android و سرور Node -RED ما)

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

  • PushBullet.com (سرویس اطلاع رسانی فشار)

    ما از نسخه رایگان استفاده کردیم ، که برای استفاده روزانه از پلتفرم کافی است

  • گرمک (سرویس تونل سازی امن)

    ما از این نرم افزار رایگان تونل زنی استفاده می کنیم تا پیوند داشبورد خود را به صورت جهانی در معرض دید عموم قرار دهیم ، بنابراین می توانیم از آدرس اینترنتی در اعلان فشار به داشبورد دسترسی داشته باشیم

  • کارگزار Mosquitto MQTT

    MQTT یک پروتکل است که برای انتقال پیام بین دستگاه های متصل ما و Node-RED استفاده می شود. از آنجا که Node-RED سرور MQTT داخلی ندارد ، باید از یک سرور خارجی استفاده کنیم

مرحله 1: جریان را درک کنید

Image
Image

برای نمایش سیستم ، با فیلم بالا مشورت کنید. توجه داشته باشید که جریان کلی سیستم (پس از آن جریان Node-RED ایجاد می شود) به شرح زیر است:

  1. شما خانه خود را ترک کنید
  2. تلفن شما وای فای خانه شما قطع می شود
  3. Integromat کلمه را دریافت می کند و به Node-RED اطلاع می دهد
  4. Node-RED وضعیت سنسورها در خانه شما و سوئیچ ها در داشبورد شما را بررسی می کند
  5. اگر چیزی روشن یا باز بماند ، PushBullet را مطلع می کند
  6. PushBullet یک اعلان برای تلفن شما ارسال می کند ، با پیوندی به داشبورد Node-RED
  7. می توانید به داشبورد بروید و موارد مربوطه را ببندید/خاموش کنید

در اصل ، ما یک رویکرد متمرکز برای مدیریت اجسام مختلف در خانه شما و تأیید صحت آنها در هنگام خروج از خانه ارائه می دهیم.

در عمل ، ما قابلیت های زیر را در این پروژه داریم:

  1. وضعیت پنجره - باز/بسته (نشان داده شده با وضعیت رله رید)
  2. وضعیت چراغ ها - روشن/خاموش (نشان داده شده با وضعیت LDR)
  3. وضعیت گرمکن فضایی - روشن/خاموش (نشان داده شده توسط سنسور دمای DHT)
  4. فعال کننده درب-باز/بسته (قاب سه بعدی سفارشی برای موتور DC)
  5. Smart Outlet Activator - روشن/خاموش (رله D1 متصل به نوار قدرت)
  6. Switch Press Activator - روشن/خاموش (سروو متصل به برد)

این در کتاب ما برای نشان دادن قابلیت های پلتفرم کافی است. در صورت لزوم می توان آن را به راحتی گسترش داد (با استفاده از Node-RED) برای افزودن شاخص ها / فعال کننده های وضعیت بیشتر.

مرحله 2: Ngrok

نگروک
نگروک

گرمک یک سرویس تونل زنی است. این به ما امکان می دهد یک سرویس محلی (در مورد ما ، Node -RED) را در معرض دید دنیای خارج قرار دهیم - بدون هیچ گونه زحمتی برای ایجاد سرور یا برخورد با سوابق DNS. شما به سادگی Node-RED را در رایانه خود اجرا کرده و سپس گرمک را بر روی همان پورت Node-RED در حال اجرا است. این تمام است - شما یک URL دریافت خواهید کرد که می توانید از آن در هر نقطه از جهان بدون در نظر گرفتن اینکه به چه شبکه ای وصل است از Node -RED استفاده کنید.

نصب و پیکربندی

  1. گرمک سیستم عامل خود را از اینجا بارگیری کنید.
  2. مرحله را در صفحه بارگیری ، تا مرحله "Fire it up" دنبال کنید.
  3. در "Fire it up step" ، 80 را با 1880 عوض کنید - مانند ،./ngrok http 1880 یا ngrok http 1880 ، بسته به سیستم عامل شما.
  4. آدرس http را که در خط فرمان خود مشاهده می کنید یادداشت کنید - بعداً به آن نیاز داریم. برای نمونه تصویر را ببینید.

مرحله 3: Node-RED

Node-RED
Node-RED
Node-RED
Node-RED
Node-RED
Node-RED

نصب و پیکربندی

Node-RED ، کنترل کننده منطقی اصلی پروژه ، یک محیط برنامه نویسی بصری است که به شما امکان می دهد خدمات مختلف نرم افزاری (و سخت افزاری!) را به یکدیگر متصل کرده و یک برنامه واحد ایجاد کنید. به عنوان یک امتیاز ، امکان ایجاد داشبورد های زیبا را فراهم می کند که می توانند از خدمات مختلف اطلاعات دریافت کرده و حتی آنها را کنترل کنند.

اگر با Node-RED آشنا هستید ، فقط جریان ما را از این Gist دریافت کنید و شناسه گرمک خود را از مرحله 8 زیر اضافه کنید.

اگر با Node-RED آشنایی ندارید یا آن را نصب نکرده اید ، مراحل زیر را برای بارگیری جریان Node-RED در رایانه محلی خود دنبال کنید:

  1. Node-RED به Node.js نیاز دارد ، که یک زبان برنامه نویسی با محیط توسعه خاص خود است. نصب کننده مربوط به سیستم عامل خود را از اینجا بگیرید ، سپس دستورالعمل ها را دنبال کنید.
  2. اکنون می توانید خود Node-RED را با استفاده از دستورالعمل های اینجا نصب کنید. لطفاً به محل نصب Node-RED توجه داشته باشید ، زیرا در مرحله بعدی به آن نیاز دارید.
  3. اکنون که Node-RED را نصب کرده اید ، آن را با استفاده از دستورالعمل های مرحله بالا اجرا کنید و اعتبار سنجی کنید که می توانید یک صفحه بوم خالی را مشاهده کنید. باید در https://127.0.0.1:1880 واقع شود.
  4. اکنون باید چند گره اضافی (که Node-RED پسوندها یا ماژول های آن را می نامد) در این پروژه استفاده کنید. لطفاً دستورالعمل های اینجا و اینجا را دنبال کنید و هر دو این ماژول ها را نصب کنید.
  5. اکنون که گره ها نصب شده اند ، سرور node-red را مجدداً راه اندازی کنید (به سادگی کشتن سرویس و راه اندازی مجدد آن باید ترفند را انجام دهد). اکنون باید هر دو گره را در جریان خود داشته باشید.
  6. جریان Node-RED این پروژه را از اینجا بارگیری کنید و دستورالعمل های اینجا را دنبال کنید تا آن را به نصب Node-RED خود وارد کنید.
  7. مطمئن شوید که می توانید تصویر جریان را همانطور که در صفحه بالا به نظر می رسد مشاهده کنید.
  8. آدرس گرمک را از آخرین مرحله به خاطر دارید؟ آن را در گره Build Push Notification وارد کنید. این به ما امکان می دهد پیوند مستقیم داشبورد (که در دستگاه محلی ما اجرا می شود) را در هر دستگاهی که برای دریافت اعلانات استفاده می کنیم مشاهده کنیم.

توضیح جریان

توجه داشته باشید که جریان به دو قسمت تقسیم می شود - قسمت فوق منطق اصلی و قسمت پایینی منطق جزء است.

منطق اصلی مراقبت از این است که آیا شما خانه را ترک کرده اید (با دریافت درخواست GET از Integromat در گره Integromat WiFi Leave Endpoint) ، ارسال پاسخ موفقیت آمیز (بنابراین Integromat در داخل ارسال پیام موفقیت به Integromat متوقف نمی شود)) ، و سپس بررسی همه سنسورها و فعال کننده ها برای بررسی وضعیت فعلی آنها (این امر در داخل گره تابع Build Push Notification ، با استفاده از ذخیره سازی زمینه جهانی برای به دست آوردن اطلاعات اتفاق می افتد). اگر آن چک تشخیص دهد که چیزی روشن است یا باز است ، یک اعلان فشار PushBullet (در بالا ترین گره Send Push Notification) را فعال می کند. پایین ترین نود Send Push Notification Notification مراقب ارسال اعلان های تأخیری است (برای گرمکن فضا - برای اطلاعات بیشتر در مورد منطق پشت آن ، مرحله آن را ببینید). توجه داشته باشید که یک گره اشکال زدایی نیز وجود دارد (به نام Get Request) که تمام درخواست های وارد شده را ثبت می کند ، بنابراین ما می توانیم هر مشکلی را در سمت نرده از Integromat بگیریم.

جریان منطق کامپوننت مراقب به روز رسانی ذخیره سازی جهانی با وضعیت هر فعال کننده/حسگر است ، بنابراین ما می توانیم تصمیم بگیریم که چه اطلاعاتی (در صورت وجود) در اعلان فشار خود ارسال کنیم. توجه داشته باشید که دو نوع مجزا از این جریانها وجود دارد:

جریانهای فعال کننده (Switch Press/ Door/ Smart Outlet) - اینها جریانهایی هستند که پس از چرخاندن یک سوئیچ در داشبورد ، باید داشبورد را به روز کنید + برخی فعالیتها را در دنیای واقعی ایجاد کنید. به طور خاص ، هر دو منتظر هستند تا عملی روی داشبورد (در گره های Switch) اتفاق بیفتد ، سپس حالت را در داخل گره های تابع Logic State تغییر داده و داشبورد را مطابق با سوئیچ معکوس به روز می کند (LED را روشن یا خاموش کنید گره های LED را حالت دهید و متن را در گره های نشانگر حالت تغییر دهید). علاوه بر این ، پس از چرخاندن سوئیچ ، یک پیام MQTT به کنترل کننده های WeMos که فعال کننده ها را کنترل می کنند (با استفاده از گره های MQTT-out Activator) برای ایجاد یک عمل در دنیای فیزیکی (یعنی باز کردن/بستن درب یا کشتن/فعال کردن Smart) ارسال می شود. پریز).

جریانهای سنسور (نور/پنجره/بخاری فضا) - اینها جریانهایی هستند که پس از دریافت پیام سنسور از طریق MQTT باید داشبورد را به روز کنید. به طور خاص ، هر دو منتظر می مانند تا پیام MQTT وارد شود (با استفاده از گره های حسگر MQTT) ، سپس اطلاعات را تجزیه کرده و وضعیت را در داخل گره های تابع Logic State تغییر می دهد. پس از آن ، داشبورد را با توجه به پیام دریافتی به روز می کنند (LED را در گره های LED حالت روشن یا خاموش کنید و متن را در گره های State State تغییر دهید).

گره های تزریق متصل به هر جزء را مشاهده می کنید؟ اینها مراقبت از پیش فرض های عاقلانه برای dasboard هنگامی که اولین بار چرخانده می شود ، هستند تا اطمینان حاصل شود که هیچ کار خنده داری در اولین بار اتفاق نمی افتد.

توجه: Node-RED دارای دو "حالت" است: canvas و UI. Canvas جایی است که شما گره ها را ایجاد و ویرایش می کنید (در https://127.0.0.1:1880 یا https://YOUR_NGROK_ID.ngrok.io است) و UI جایی است که داشبوردهای خود را مشاهده می کنید (در https://127.0.0.1: 1880/ui یا

مرحله 4: Integromat

انتگرمات
انتگرمات
انتگرمات
انتگرمات
انتگرمات
انتگرمات

ثبت نام

Integromat ، که خود را "چسب اینترنت" توصیف می کند ، سرویسی است که قطعات مختلف نرم افزار را به طرق جالب به هم متصل می کند. در مورد ما ، ما از برنامه Android آن برای بررسی زمان قطع اتصال وای فای خانه خود و سپس درخواست HTTP به سرور Node-Red استفاده می کنیم. این درخواست کل جریان تصویر شده در مرحله قبل را فعال می کند.

  1. در اینجا برای یک حساب Integromat ثبت نام کنید.
  2. برنامه اندروید را از اینجا بارگیری کنید.
  3. در کنسول وب Integromat (پس از ثبت نام در Integromat باید آن را مشاهده کنید) ، برگه Devices را در سمت چپ ، در وسط باز کنید.
  4. با کلیک روی "افزودن دستگاه" در بالا سمت چپ و پیروی از مراحل نشان داده شده ، دستگاه خود را اضافه کنید.
  5. پس از اتمام مجوز برنامه با کنسول وب ، آن را باز کرده و وارد تنظیمات در پایین سمت راست شوید.
  6. روی WiFi کلیک کنید ، و سپس (در قسمت Events) کادر رویداد اتصال WiFi را علامت بزنید. این به برنامه اجازه می دهد وقتی تلفن شما از شبکه WiFi جدا شده است را مشاهده کند.

ایجاد سناریوی ما

جریان اعمال در Integromat را سناریو می نامند. ما قصد داریم سناریویی را ایجاد کنیم که منتظر قطع هرگونه شبکه WiFi باشد ، سپس فقط آنهایی را که با شبکه WiFi خانه ما مطابقت دارند فیلتر کند.

  1. برای توضیح سناریو به تصویر بالا مراجعه کنید.
  2. هر یک از گره ها ("حباب") را با کلیک روی علامت "+" پایین در نزدیکی Favorites و افزودن سه گره مورد نیاز - Android (قطع اتصال WiFi) ، JSON (ایجاد JSON) و HTTP (ایجاد درخواست) ایجاد کنید.
  3. گره Android را به گره JSON و گره JSON را به گره HTTP وصل کنید.
  4. مطابق تصویر بالا ، فیلتر را بین گره های Android و JSON پیکربندی کنید.
  5. مطابق تصاویر بالا هر گره را پیکربندی کنید. توجه به استفاده از آدرس ngrok ایجاد شده در مرحله قبل برای گره HTTP. اگر آدرس گرمک شما https://ac72hs.ngrok.io است ، پس شناسه گرمک شما ac72hs است.

مرحله 5: پشه

پشه
پشه

از آنجا که Node-RED کارگزار MQTT مختص به خود را ندارد و ما باید از طریق MQTT با حسگرها و فعال کننده های خود ارتباط برقرار کنیم ، از یک کارگزار اختصاصی MQTT استفاده خواهیم کرد. از آنجا که Node-RED Mosquitto را توصیه می کند ، این موردی است که ما از آن استفاده خواهیم کرد. برای اطلاعات بیشتر در مورد MQTT و اینکه چرا اغلب در پروژه IoT استفاده می شود ، اینجا را ببینید.

نصب و پیکربندی

  1. Mosquitto را از اینجا بارگیری کرده و مطابق سیستم عامل خود نصب کنید.
  2. به طور معمول ، برای اتصال Node-RED به Mosquitto باید دستورالعمل های اینجا را دنبال کنید. با این حال ، اگر از جریان ما استفاده کردید ، قبلاً برای شما پیکربندی شده است. تا زمانی که جریان و Mosquitrro را به درستی نصب کنید و Mosquitto روی پورت 1883 اجرا شود (که به طور پیش فرض روی آن کار می کند) ، باید از جعبه خارج شود.
  3. توجه داشته باشید که این بدان معناست که کارگزار MQTT و سرور Node-RED شما بر روی یک دستگاه اجرا می شوند. این برای ساده سازی ارتباطات درون سیستم مفید است. برای اطلاعات بیشتر به یادداشت زیر مراجعه کنید.

در مورد شبکه های محلی توجه داشته باشید

برای اینکه دستگاه های شما با Node-RED به درستی کار کنند ، باید به کارگزار دسترسی داشته باشید. در حالی که ما می توانیم یک پروکسی تعریف کنیم و از آن برای ارتباط با Mosquitto استفاده کنیم ، اما برای عوارض شدید راه حل ساده ای را پیشنهاد می کنیم: مطمئن شوید رایانه شما (در حال اجرا Node-RED و Mosquitto) و بردهای ESP8266 شما به یک WiFi متصل هستند. به این ترتیب دستگاه های شما می توانند مستقیماً و بدون واسطه با کارگزار شما ارتباط برقرار کنند.

ممکن است یکی بپرسد چرا از گرمک برای این کار استفاده نمی کنید ، به همان روشی که از آن برای مرور داشبورد از دستگاه دیگر استفاده می کنیم. پاسخ ساده این است که شما می توانید - اما گرمک (در نسخه رایگان) محدود به یک تونل از هر کاربر است. این بدان معناست که شما فقط می توانید یک پورت را به دنیای خارج باز کنید ، که در مورد ما برای افشای Node-RED استفاده می شود. بنابراین ، در عوض ، ما از شبکه محلی برای دور زدن این مورد استفاده می کنیم.

این بدان معناست که در هر طرح باید آدرس IP کارگزار را تغییر دهید تا آدرس IP رایانه شما در شبکه محلی مناسب باشد. با اجرای ipconfig (در Windows) و ifconfig (در Mac / Linux) و جستجوی رابط WiFi مربوطه می توانید به این آدرس دسترسی پیدا کنید. باید در آدرس inet ذکر شود.

با این حال ، ممکن است در طول راه هنوز با مشکلات MQTT روبرو شوید. به همین دلیل ، نظارت بر تمام ترافیک ورودی و خروجی MQTT مفید است.

نظارت بر ترافیک MQTT

در حالی که Mosquitto این قابلیت را بدون استفاده از mosuitto_sub در اختیار جعبه قرار می دهد ، برای افراد GUI بیشتر می توان از یک سرویس گیرنده با رابط گرافیکی راحت تر استفاده کرد. MQTTfx یک ابزار عالی است که ما در طول کار روی این پروژه به طور گسترده از آن استفاده کردیم ، و ما آن را از صمیم قلب توصیه می کنیم. با تشکر از Jens Deters برای این ابزار عالی!

مرحله 6: Pushbullet

Pushbullet
Pushbullet
Pushbullet
Pushbullet

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

ثبت نام و پیکربندی

  1. در اینجا با استفاده از حساب Google خود برای یک حساب Pushbullet ثبت نام کنید.
  2. برنامه Android Pushbullet را از اینجا بارگیری کنید.
  3. پس از ورود به Pusbullet ، اینجا را کلیک کنید و دستگاه خود را با استفاده از دکمه سمت چپ اضافه کنید.
  4. سپس به اینجا بروید و Create Access Token را انتخاب کنید. به این رمز توجه داشته باشید ، در مرحله بعد به آن نیاز داریم.
  5. به Node-RED بروید و روی گره Send Push Notification کلیک کنید.
  6. در نوار کناری (تصویر را ببینید) "PushBullet Config" و سپس نماد مداد را انتخاب کنید.
  7. رمز دسترسی را از مرحله 4 به قسمت "کلید API" اضافه کنید.
  8. اکنون باید بتوانید نوتیفیکیشن های تلفن خود را دریافت کنید.

مرحله 7: Arduino IDE

آردوینو IDE
آردوینو IDE

ما در این آموزش از تخته های ESP8266 برای کنترل سخت افزارهای مختلف استفاده می کنیم. برای بارگذاری نرم افزار بر روی بردها ، باید آنها را با استفاده از کابل USB فلش کنیم.این فرایند بسیار ساده است: شما برد را به رایانه خود وصل کرده و سپس یک دکمه را فشار دهید. با این حال ، برای رسیدن به آنجا ، باید تنظیمات اولیه را انجام دهیم.

نصب و پیکربندی

  1. برای نصب Arduino IDE راهنمای زیر را دنبال کنید.
  2. برای نصب "درایور" مربوط به بردهای ESP8266 در Arduino IDE خود ، راهنمای اینجا را دنبال کنید.
  3. هنگام بارگذاری طرح ها (فایل های.ino) روی تخته های خود ، مطمئن شوید که از کابل USB مناسب (نه از طریق برق ، از طریق داده) استفاده می کنید.

بارگذاری طرح ها روی تخته ها

در مراحل بعدی - که مربوط به اتصال سخت افزار به رابط نرم افزاری موجود ماست - ما فقط می گوییم "طرح را روی برد بارگذاری کنید". به منظور حفظ هر یک از مراحل زیر بیشتر در مورد سخت افزار و کمتر در مورد نرم افزار ، ما بارگذاری جریان بارگذاری را یک بار در اینجا توضیح می دهیم:

  1. با استفاده از کابل USB ، برد را به رایانه خود وصل کنید.
  2. Arudiono IDE را باز کنید.
  3. طرح موردنظر را برای مرحله مربوطه بارگیری کنید.
  4. در منوی "Tools" ، برد مربوطه را در زیر گزینه "Board" انتخاب کنید.
  5. در همان منو ، مطمئن شوید که گزینه "Port" پورتی را انتخاب کند که برد شما به آن متصل است. باید به طور پیش فرض این کار را انجام دهد ، اما اگر نه فقط اطمینان حاصل کنید که این کار را می کند. اگر مطمئن نیستید کدام پورت در کامپیوتر شما کدام است ، مرحله بعدی را ببینید.
  6. با کلیک روی دکمه فلش در سمت چپ بالای صفحه (درست در کنار نماد علامت چک) ، طرح را روی صفحه بارگذاری کنید. با این کار می توانید طرح را روی تخته بارگذاری کرده و بارگذاری کنید.
  7. اگر مرحله زیر شکست خورد ، سعی کنید پورت یا برد دیگری را در منوی ابزار انتخاب کنید.
  8. اگر هنوز گیر کرده اید ، سعی کنید این مراحل Quora را برای مراحل بعدی بررسی کنید.

مرحله 8: داشبورد

داشبورد
داشبورد

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

مرحله 9: سنسور نور

حسگر روشنایی
حسگر روشنایی
حسگر روشنایی
حسگر روشنایی
حسگر روشنایی
حسگر روشنایی

این سنسور نور به شما امکان می دهد بفهمید چراغ را در یکی از اتاقهای خانه خود روشن یا خاموش گذاشته اید. هنگامی که به درستی در یک جعبه قرار داده شود و نزدیک نور قرار گیرد ، نمی تواند بزرگتر از دو جعبه کبریت به هم چسبیده باشد.

Assmebly + پیکربندی

  1. مدار را مطابق طرح شمارش Fritzing وصل کنید.
  2. طرح را باز کرده و متغیرهای زیر را تغییر دهید:

    • mqtt_server - آدرس IP محلی رایانه شما (به عنوان Mosquitto ، کارگزار MQTT)
    • ssid - نام شبکه WiFi که رایانه شما به آن متصل است و می خواهید برد شما به آن متصل باشد
    • رمز عبور - رمز شبکه WiFi گفته شده
  3. طرح موجود را روی برد خود بارگذاری کنید.
  4. آن را روی داشبورد آزمایش کنید!

داشبورد به LED برگه "Light" نگاه کنید - روشن یا خاموش بودن چراغ را نشان می دهد.

مرحله 10: Smart Outlet Activator

فعال کننده خروجی هوشمند
فعال کننده خروجی هوشمند
فعال کننده خروجی هوشمند
فعال کننده خروجی هوشمند
فعال کننده خروجی هوشمند
فعال کننده خروجی هوشمند

Smart Outlet یک نوار برق معمولی (با سیم طولی مناسب) می گیرد و آن را به یک Smart Object تبدیل می کند-یعنی یک رله مجهز به WiFi مراقب روشن و خاموش کردن آن با کلیک یک دکمه از Node-RED است. داشبورد. به این ترتیب ، اگر فراموش کرده اید چیزی را که به پریز متصل است خاموش کنید ، می توانید آن را به صورت دستی خاموش کنید!

اسمبلی + پیکربندی

  1. سیم برق را وسط ببرید و سیم ها را جدا کنید.
  2. مطابق Fritzing Schematic سیم های جدا شده را در ترمینال پیچ وارد کنید.
  3. طرح را باز کرده و متغیرهای زیر را تغییر دهید:
  4. mqtt_server - آدرس IP محلی رایانه شما (به عنوان Mosquitto ، کارگزار MQTT)
  5. ssid - نام شبکه WiFi که رایانه شما به آن متصل است و می خواهید برد شما به آن متصل باشد
  6. رمز عبور - رمز شبکه WiFi گفته شده
  7. طرح را روی تخته بارگذاری کنید.
  8. سپر رله را به برد وصل کنید.
  9. مدار را مطابق طرح Fritzing مونتاژ کنید.
  10. آن را روی داشبورد آزمایش کنید!

امتیازهای اضافی - پوشش

  1. در صورت امکان ، با استفاده از تصویر SmartOutletCasing که به آن چسبیده است ، بدنه را با لیزر برش دهید. اگر برش های لیزری کم است ، یک جعبه مقوایی بردارید ، تصویر را در یک طرف آن بچسبانید و قطعات را برش دهید.
  2. دو سوراخ در کنار جعبه بریده و مانند تصویر ضمیمه در نوار برق بکشید.
  3. انتهای نوار را داخل جعبه ببندید تا مطمئن شوید مدار از سوراخ ها خارج نمی شود.

داشبورد

به LED برگه "Smart Outlet" نگاه کنید - نشان می دهد که Smart Outlet روشن یا خاموش است. علاوه بر این ، برای سرگرمی و سود ، کلید را روشن و خاموش کنید!

مرحله 11: فعال کننده درب

فعال کننده درب
فعال کننده درب
فعال کننده درب
فعال کننده درب
فعال کننده درب
فعال کننده درب

این مکانیزم زیبا یک کلید را به جلو و عقب می چرخاند و ما را قادر می سازد تا در را قفل کرده و باز کنیم. به طور خاص ، اگر هنگام خروج از خانه قفل در را باز گذاشته اید ، می توانید آن را از راه دور قفل کنید!:)

اسمبلی + پیکربندی

  1. طرح را باز کرده و متغیرهای زیر را تغییر دهید:
  2. mqtt_server - آدرس IP محلی رایانه شما (به عنوان Mosquitto ، کارگزار MQTT)
  3. ssid - نام شبکه وای فای که رایانه شما به آن متصل است و می خواهید برد شما به آن متصل باشد
  4. رمز عبور - رمز شبکه WiFi گفته شده
  5. طرح را روی برد ESP8266 بارگذاری کنید.
  6. مدار را مطابق شماتیک جمع کنید. توجه داشته باشید که ما برای کنترل موتور DC (نسبتاً قوی) از منبع تغذیه خارجی استفاده کردیم. این مورد نیاز به یک L298-N HBridge و منبع تغذیه خارجی دارد. ما نیازی به لحیم کاری نداریم زیرا جک بشکه زن و HBridge دارای پایانه های پیچ پیچ خوبی بودند که می توانستیم از آنها استفاده کنیم - ما به خاطر این اتصالات یک سر چند کابل بلوز را جدا کردیم. باشد که در آرامش باشند.
  7. آن را روی داشبورد آزمایش کنید!

امتیاز پاداش - پوشش

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

داشبورد به LED زبانه "Door" نگاه کنید - باز یا بسته بودن درب را نشان می دهد. علاوه بر این ، برای سرگرمی و سود ، کلید را روشن و خاموش کنید!

مرحله 12: سنسور پنجره

سنسور پنجره
سنسور پنجره
سنسور پنجره
سنسور پنجره
سنسور پنجره
سنسور پنجره

اجازه ندهید گربه بیرون برود! این سنسور از رله Reed برای بررسی باز یا بسته بودن پنجره استفاده می کند. توجه داشته باشید که ما فقط به خاطر مثال پنجره ای را انتخاب کردیم - از آن می توان برای موارد دیگر استفاده کرد ، از جمله بررسی باز بودن یا عدم باز شدن در ، از جمله درهای خانه ، اتاق و یخچال.

مونتاژ و پیکربندی

  1. مدار را مطابق شماتیک Fritzing بالا مونتاژ کنید.
  2. طرح را باز کرده و متغیرهای زیر را تغییر دهید:
  3. mqtt_server - آدرس IP محلی رایانه شما (به عنوان Mosquitto ، کارگزار MQTT)
  4. ssid - نام شبکه WiFi که رایانه شما به آن متصل است و می خواهید برد شما به آن متصل باشد
  5. رمز عبور - رمز شبکه WiFi گفته شده
  6. طرح خود را روی تخته بارگذاری کنید.
  7. یک قسمت از رله نی را به طاقچه و یک قسمت دیگر را به خود پنجره وصل کنید (یا به هر دهانه ای که تصمیم گرفته اید سنسور را به آن وصل کنید).
  8. روی داشبورد تست کنید!

داشبورد

به LED برگه "Window" نگاه کنید - باز یا بسته بودن پنجره را نشان می دهد.

مرحله 13: سنسور بخاری فضا

سنسور بخاری فضا
سنسور بخاری فضا
سنسور بخاری فضا
سنسور بخاری فضا
سنسور بخاری فضا
سنسور بخاری فضا

روشن نگه داشتن بخاری فضا خطر آتش سوزی تضمین شده است! ایمن بمانید و با استفاده از این مدار ، بخاری فضایی خود را از راه دور کنترل کنید. به طور خاص ، سنسور حرارتی روی مدار برای مدت طولانی مدت حرارت را کنترل می کند - به صورت پیش فرض تا 5 دقیقه سخت کدگذاری شده است - و بعد از آن مدت هنوز بخار می شود ، LED را در داشبورد می چرخاند. این کار برای جلوگیری از اتلاف گرما (مانند بعد از خاموش کردن بخاری فضا) از روشن شدن LED در هنگام تصادف انجام می شود.

مونتاژ و پیکربندی

  1. مدار را مطابق طرح شمارش فریتزینگ متصل کنید.
  2. طرح را باز کرده و متغیرهای زیر را تغییر دهید:
  3. mqtt_server - آدرس IP محلی رایانه شما (به عنوان Mosquitto ، کارگزار MQTT)
  4. ssid - نام شبکه WiFi که رایانه شما به آن متصل است و می خواهید برد شما به آن متصل باشد
  5. رمز عبور - رمز شبکه WiFi گفته شده
  6. طرح پیوست شده را روی برد خود بارگذاری کنید.
  7. نزدیک بخاری فضا قرار دهید ، 5 دقیقه صبر کنید و داشبورد را بررسی کنید!

داشبورد

به LED برگه "بخاری فضا" نگاه کنید - نشان می دهد که بخاری روشن یا خاموش است.

مرحله 14: کلید Activator Press را تغییر دهید

Switch Press Activator
Switch Press Activator
Switch Press Activator
Switch Press Activator

این یک موتور سروو بسیار ساده است که می تواند یک سوئیچ فیزیکی را روشن یا خاموش کند (کلید چراغ ، سوئیچ دیگ آب ، سوئیچ نوار برقی و غیره). اگر یکی از وسایل کنترل کننده سوئیچ را در خانه خود روشن گذاشته اید - برای مثال چراغ یا دیگ آب - می توانید آن را از راه دور خاموش کنید.

مونتاژ و پیکربندی

  1. طرح را باز کرده و متغیرهای زیر را تغییر دهید:
  2. mqtt_server - آدرس IP محلی رایانه شما (به عنوان Mosquitto ، کارگزار MQTT)
  3. ssid - نام شبکه WiFi که رایانه شما به آن متصل است و می خواهید برد شما به آن متصل باشد
  4. رمز عبور - رمز شبکه WiFi گفته شده
  5. طرح را روی صفحه خود بارگذاری کنید.
  6. مدار را مطابق شماتیک Fritzing مونتاژ کنید.
  7. سروو را با استفاده از چسب داغ یا روکش مناسب که خودتان ساخته اید به سوئیچ مربوطه وصل کنید. اگر عکس گرفتید برای ما بفرستید!
  8. داشبورد را آزمایش کنید!

داشبورد

به LED برگه "Switch Press" نگاه کنید - نشان می دهد که پرس کلید روشن یا خاموش است. علاوه بر این ، برای سرگرمی و سود ، کلید را روشن و خاموش کنید!

توصیه شده: