فهرست مطالب:

اتوماسیون خانگی با اندروید و آردوینو: وقتی به خانه می آیید دروازه را باز کنید: 5 مرحله
اتوماسیون خانگی با اندروید و آردوینو: وقتی به خانه می آیید دروازه را باز کنید: 5 مرحله
Anonim
اتوماسیون خانگی با اندروید و آردوینو: وقتی به خانه می آیید دروازه را باز کنید
اتوماسیون خانگی با اندروید و آردوینو: وقتی به خانه می آیید دروازه را باز کنید

این دستورالعمل در مورد راه اندازی یک سیستم اتوماسیون خانگی است که از طریق تلفن هوشمند با استفاده از اتصال به اینترنت کنترل می شود ، به طوری که از هر کجا که نیاز دارید قابل دسترسی است. علاوه بر این ، هر زمان که معیارهایی برآورده شود ، اقدامات خاصی را انجام می دهد (برای مثال ، روشن کردن چراغ هنگام اتصال تلفن هوشمند به شبکه wifi خانگی ، باز کردن دروازه هنگام ورود به منطقه تعیین شده GPS ، یا هر چیز دیگری که ممکن است بخواهید).

از یک برنامه اندرویدی موجود استفاده می شود که نیاز به کمترین میزان کدگذاری ممکن دارد: فقط کد را بارگذاری کنید و کار شما تمام شده است. مغز - میکروکنترلر - یک برد سازگار با آردوینو یا Arduino خواهد بود ، مانند Aruino Uno با سپر اترنت یا NodeMCU ESP8266.

برای فعال کردن سیستم در صورت برآورده شدن شرایط (موقعیت GPS ، زمان ، ecc …) از Tasker بدنام استفاده می کنیم. بعداً در مورد آن بیشتر

در تحقق سیستم نکات کلیدی زیر در نظر گرفته شده است:

  • باید ارزان باشد.
  • باید از خارج از شبکه خانگی محلی (یعنی وای فای شما) قابل دسترسی باشد.
  • ساخت و راه اندازی آن باید واقعاً آسان و سریع باشد.
  • باید قابل اعتماد باشد.

گفته می شود ، کل پروژه حدود 20 یورو (7.50 یورو برای ESP8266 ، 8 یورو برای برد رله ، مابقی برای سخت افزار اضافی) هزینه خواهد داشت و برای تنظیم همه چیز حدود 30 دقیقه طول می کشد - به هیچ وجه بد نیست به

بنابراین ، اگر علاقه دارید ، این راهنمای ساده و سریع را دنبال کنید و خودتان تنظیم کنید!

مرحله 1: راه اندازی سخت افزار

راه اندازی سخت افزار
راه اندازی سخت افزار

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

در این مثال ما یک لامپ را به ESP8266 متصل می کنیم. به خاطر داشته باشید که هنگام کار با ولتاژهای اصلی باید بسیار مراقب باشید - خانه ها از 220 ولت استفاده می کنند که می تواند شما را بکشد! همیشه قبل از کار روی برق را قطع کنید ، و اگر مطمئن نیستید به دنبال کمک متخصص باشید!

گفته می شود: برای مدیریت چنین سطوح کشش و جریان (که ESPR8266 کوچک را می سوزاند) ما باید از یک رله مناسب استفاده کنیم (مانند منطق 5 ولت ، مناسب برای آردوینو استاندارد یا این رله سطح منطقی 3.3 ولت) ، مناسب برای پین 3.3 ولت ESP82666) ؛ اتصالات بسیار آسان هستند ، از نمودارهایی که پیوست کرده ایم پیروی کنید.

توجه داشته باشید که برخی از تابلوهای رله (مانند آنچه که پیوند داده ایم) ACTIVE LOW هستند. این بدان معناست که شما باید رله را به زمین وصل کنید تا روشن شود و بالعکس. اگر این مورد شما است ، Homotica یک راه حل خوب ارائه می دهد. کدام را در پاراگراف بعدی خواهیم دید.

مرحله 2: پیکربندی ESP8266

پیکربندی ESP8266
پیکربندی ESP8266
پیکربندی ESP8266
پیکربندی ESP8266
پیکربندی ESP8266
پیکربندی ESP8266

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

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

پس از بارگیری ، آن را نصب کنید.

اکنون که IDE خود را نصب کرده ایم ، به کتابخانه مورد نیاز برای کار طرح نیاز داریم. برای نصب آن ، برنامه Github Repo را باز کنید و بارگیری را از دکمه سبز رنگ در سمت راست انتخاب کنید.

به پوشه بارگیری در رایانه خود بروید و با استفاده از نرم افزاری مانند WinRar یا WinZip فایل را از حالت فشرده خارج کنید. پوشه تازه ایجاد شده "homotica-master" را باز کرده و پوشه داخلی به نام "Homotica" را در پوشه کتابخانه های ویرایشگر Arduino کپی کنید (معمولاً می توانید آن را در C: / Users / your_user_name / Documents / Arduino / libraries پیدا کنید). فایلهای باقی مانده را در "homotica-master" حذف کنید ، ما به آنها نیاز نداریم

برای بارگذاری کد در ESP8266 یک مرحله باقی نمانده است: ما باید کتابخانه را دریافت کنیم تا Arduino IDE با برد ارتباط برقرار کند ، زیرا به طور رسمی پشتیبانی نمی شود.

برای انجام این کار ، این مراحل را دنبال کنید (اعتبار: Github ES8266 Arduino Repo):

  • آردوینو را راه اندازی کنید و پنجره Files> Preferences را باز کنید.
  • "https://arduino.esp8266.com/stable/package_esp8266com_index.json" (بدون نقل قول) را در قسمت آدرس های اضافی مدیر هیئت مدیره وارد کنید. می توانید چندین نشانی اینترنتی اضافه کنید و آنها را با کاما جدا کنید.
  • مدیر تخته ها را از منوی Tools> Board باز کرده و پلت فرم esp8266 را نصب کنید (عبارت "esp8266" را جستجو کرده و "esp8266 را توسط ESP8266 Community بارگیری کنید").

همه چیز تنظیم شده است. بیایید از کد طرح مراقبت کنیم.

فایل> مثال> Homotica> Homotica ESP8266 را باز کنید ، تمام کد را در یک طرح جدید کپی کرده و پارامترهای زیر را اصلاح کنید:

  • ssid: نام شبکه بی سیم خود را در اینجا وارد کنید
  • رمز عبور: رمز وای فای شما
  • ip ، gateway ، subnet: احتمالاً مجبور نخواهید بود این تنظیمات را لمس کنید. اگر می خواهید ESP8266 شما آدرس دیگری داشته باشد ، ip را تغییر دهید
  • mUdpPort: پورتی که بعداً در روتر باز می کنیم. اگر نمی دانید چیست ، به آن دست نزنید
  • کد: یک کد 8 کاره منحصر به فرد که برای احراز هویت برنامه شما استفاده می شود. شما می توانید هر آنچه را که می خواهید انتخاب کنید

اگر از تنظیمات ACTIVE LOW استفاده می کنید ، فراموش نکنید که همانطور که در کد مثال نشان داده شده است با homotica.setActiveLow () تماس بگیرید!

برای به پایان رساندن آن: homotica.addUsedPin (5) (همانطور که در مثال نشان داده شده است) را اضافه کنید تا به ESP8266 بگویید که GPIO باید بین حلقه while و homotica.set (mUdpPort ، کد) ؛ همه خطوط homotica.simulateUdp (…) را حذف کنید.

این کدی است که باید برای شما باقی بماند:

#عبارتند از

#include #include const char* ssid = "mywifiname"؛ const char* رمز عبور = "wifipassword"؛ IP IP (192 ، 168 ، 1 ، 20) ؛ دروازه IPAddress (192 ، 168 ، 1 ، 1) ؛ زیر شبکه IPAddress (255 ، 255 ، 255 ، 0) ؛ بدون امضا int mUdpPort = 5858؛ کد رشته استاتیک = "aBc159"؛ Homotica homotica؛ void setup () {WiFi.config (ip ، gateway ، subnet) ؛ WiFi.begin (ssid ، رمز عبور) ؛ while (WiFi.status ()! = WL_CONNECTED) {تأخیر (500)؛ } homotica.addUsedPin (5) ؛ homotica.setActiveLow ()؛ // <- فقط در صورت نیاز به homotica.set (mUdpPort ، کد) ؛ } void loop () {homotica.refresh ()؛ }

وقتی همه چیز به درستی تنظیم شده است ، تنظیمات کامپایلر را از منوی Tools با توجه به تصویر ضمیمه شده تغییر دهید و پورت ESP8266 را که در رایانه شما به کامپیوتر متصل است ، در Tools> Port انتخاب کنید.

اکنون ، روی بارگذاری کلیک کنید. میکروکنترلر شما آماده و آماده اجرا است!

مرحله 3: روتر و IP

روتر و IP
روتر و IP
روتر و IP
روتر و IP

برای برقراری ارتباط با ESP8266 از هر شبکه ، باید به روتر بگوییم که فرمان ارسال شده به آن را وارد کند.

برای انجام این کار ، به صفحه پیکربندی روتر خود (معمولاً 192.168.1.1) بروید و به دنبال چیزی مانند "سرور مجازی" یا "حمل و نقل پورت" باشید. می توانید تنظیمات دقیق برای مدل روتر خود را در Google جستجو کنید.

در حمل و نقل پورت ، یک قانون جدید ایجاد کنید که به تمام اتصالات ESP8266 (همان پیکربندی قبلی) از طریق پورت ESP8266 (دوباره ، همان پیکربندی قبلی) اجازه می دهد. نام آن را Homotica بگذارید ، ESP8266 IP را در قسمت IP وارد کنید و ذخیره کنید.

اگر روتر مورد استفاده شما اجازه انجام این کار را نمی دهد ، نگران نباشید: نمی توانید از برنامه تلفن همراه استفاده کنید ، اما از داخل wifi خانه شما کاملاً خوب کار می کند.

اکنون ، برای مراجعه به روتر خود از دنیای خارج ، باید IP عمومی آن را بدانیم. نکته منفی این است که اکثر ارائه دهندگان اینترنت به شما IP ثابت نمی دهند ، بلکه IP پویا را در اختیار شما قرار می دهند که با گذشت زمان تغییر می کند.

اما صبر کنید ، ما می توانیم این را حل کنیم!

به NoIp بروید ، یک حساب جدید ایجاد کنید ، سپس یک نام میزبان جدید ایجاد کنید (تصویر پیوست شده را ببینید). به نام میزبان خود توجه کنید (در مثال من: https://yourhostname.ddns.net) ، و به مرحله بعد بروید.

(توجه: ممکن است بخواهید رایانه شخصی شما به طور خودکار IP روتر شما را با نام میزبان NoIp شما همگام سازی کند: برای انجام این کار برنامه رایگان آنها را بارگیری کنید)

مرحله 4: پیکربندی برنامه

پیکربندی برنامه
پیکربندی برنامه
پیکربندی برنامه
پیکربندی برنامه
پیکربندی برنامه
پیکربندی برنامه

بیایید از برنامه مراقبت کنیم ، آیا؟

برنامه را از صفحه فروشگاه Play بارگیری کرده و باز کنید.

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

  • نام آردوینو: آنچه می خواهید (اجازه دهید این ESP8266 باشد)
  • IP میزبان: این می تواند باشد

    • IP ثابت روتر از طریق پیوند NoIp https://yourhostname.ddns.net ارجاع شده است
    • IP ESP8266 اگر می خواهید از آن فقط از داخل شبکه wifi خانه خود استفاده کنید 192.168.1.20
  • پورت میزبان: پورتی که ما قبلاً راه اندازی کردیم و 5858 را باز کردیم
  • کد Auth: کد 8-char که در طرح aBc195 تعریف کردیم

صرفه جویی. دوباره منو را باز کنید ، یک دستگاه جدید ایجاد کنید ؛ ما برای نشان دادن یک لامپ متصل می کنیم:

  • نام: نور
  • نام دکمه: ما از On استفاده می کنیم ، آنچه را که ترجیح می دهید انتخاب کنید
  • شماره پین: پایه ای که لامپ را به آن وصل کردیم. مراقب باش! در ESP8266 برچسب های پین (D1 ، D2 …) با نام پین GPIO مطابقت ندارد! در Google جستجو کنید تا مشخص شود کدام پین GPIO است (در مثال ما: پین 5 با برچسب D1)
  • رفتار: می توانید بین روشن ، خاموش ، تغییر حالت "فشار" (روشن و خاموش) دستگاه یکی را انتخاب کنید.

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

باحاله ، نه؟

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

اما برای استفاده کامل از آنچه که تازه ایجاد کرده اید ، باید از Tasker استفاده کنیم.

مرحله 5: ادغام Tasker

ادغام Tasker
ادغام Tasker
ادغام Tasker
ادغام Tasker
ادغام Tasker
ادغام Tasker

اگر Tasker دارید یا می خواهید آن را بخرید ، به خواندن ادامه دهید! ما از آن استفاده می کنیم تا به Homotica بگوییم چه کاری انجام دهد و چه زمانی این کار را انجام دهد.

در این مثال ما هر زمان که به وای فای خانه متصل می شویم چراغ را روشن می کنیم و زمان بین 4 بعد از ظهر تا 6 بعد از ظهر است.

باز کردن Tasker ؛ یک Task جدید ایجاد کنید (اجازه دهید نام آن را روشن کنید) ، Add> Plugin> Homotica را انتخاب کنید ، برای پیکربندی افزونه ، روی مداد را فشار دهید. Light> On و Save را انتخاب کنید. بازگشت به منوی اصلی ایجاد یک نمایه جدید ، حالت> WiFi متصل ، نام تور Wifi را در قسمت SSID وارد کنید. به عقب فشار دهید و Turn on Light را هنگام ورود به فعالیت انتخاب کنید. اکنون ، در سمت چپ نمایه ایجاد شده ، طولانی فشار دهید ، افزودن> زمان> از 4 بعد از ظهر تا 6 بعد از ظهر را انتخاب کنید ، سپس ببندید.

کار ما تمام شد. وقتی در زمان تعیین شده وارد خانه می شویم ، چراغ ما روشن می شود.

این مفید است!

حالا نوبت شماست: با Homotica و Tasker خلاق باشید و فراموش نکنید که آنچه را که ایجاد کرده اید به ما نشان دهید!

توصیه شده: