فهرست مطالب:
- مرحله 1: طراحی ESP8266-01
- مرحله 2: منبع تغذیه
- مرحله 3: مونتاژ برد PC
- مرحله 4: آزمایش برد PC
- مرحله 5: محوطه
- مرحله 6: برنامه نویسی ESP8266-01/NodeMCU
- مرحله 7: راه اندازی اولین بار
- مرحله 8: راه اندازی تایمر اینترنت اشیا
تصویری: ESP8266-01 تایمر هوشمند IoT برای اتوماسیون خانگی: 9 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:56
به روز رسانی
2018-09-30: سیستم عامل به نسخه 1.09 به روز شد. اکنون با پشتیبانی اولیه Sonoff
2018-10-01: نسخه آزمایشی سیستم عامل نسخه 1.10 برای آزمایش در ESP8266-01 با مشکلات موجود است
با استفاده از کلمات کلیدی جدید Internet Of Things (اینترنت اشیا) و اتوماسیون خانگی ، تصمیم گرفتم اقلام فعلی داخل و اطراف خانه خود را که از طریق نوعی دستگاه کنترل می شود ، بررسی کنم. موارد برجسته ، موارد زیر است:
- پمپ استخر
- پرکننده آب استخر
- استخر و چراغ های اطراف
- چراغ های کابینت تلویزیون/سیستم سرگرمی
موارد رایج مورد استفاده برای کنترل این دستگاهها ، تایمرهای معمولی پلاگین دیواری هستند. هر دستگاه مجهز به تایمر مخصوص به خود است و همه در مکان های مختلف قرار دارند. بنابراین ممکن است بپرسید چرا من این موارد را برای شروع پروژه های اینترنت اشیاء یا اتوماسیون خانگی انتخاب کردم؟
خوب ، زندگی در آفریقای جنوبی به این معنی است که قطع برق یک اتفاق معمولی است. با توجه به آمار خانه من ، در سال گذشته 35 بار قطع برق داشتم ، در مجموع 40 ساعت. این معمولاً مشکلی نیست ، زیرا همه تایمرهای نصب شده در حال حاضر مجهز به باتری پشتیبان هستند تا در زمان قطع برق ، زمان را حفظ کنند. اما برخی مسائل وجود دارد:
- این باتری های پشتیبان فقط یک یا دو سال دوام می آورند ، سپس تایمر باید تعویض شود. تایمرها به گونه ای ساخته شده اند که برای دسترسی به باتری داخلی Ni-Cad باید تایمر از بین برود.
- هر بار که برق قطع می شود ، تایمرهایی که باتری معیوب دارند باید دوباره برنامه ریزی شود و زمان تعیین شود.
- مکان فیزیکی تایمر ، هنگامی که به پریز دیواری متصل می شود ، خواندن نمایشگرهای LCD که تایمر را از بالا مشاهده می کنند تقریباً غیرممکن می سازد. این بدان معناست که تایمر باید از برق جدا شود ، یا من باید روی زمین دراز بکشم تا تایمرها را بعد از قطع برق تنظیم یا تنظیم کنم.
با توجه به دلایل فوق ، تصمیم گرفتم امکان تعویض تایمرها را با یک تایمر هوشمند اینترنت اشیا ، متصل به شبکه خانگی محلی امتحان کنم.
ایده طراحی یک زمان سنج مستقل بود که می تواند:
- تنظیم خودکار زمان فعلی با استفاده از اینترنت (اینترنت اشیا)
- بدون هیچ گونه اقدام کاربر (هوشمند)
- روشن/خاموش کردن خروجی با توجه به زمان های تعیین شده (تایمر)
- قابل برنامه ریزی و کنترل از طریق شبکه (اتوماسیون خانگی)
مرحله 1: طراحی ESP8266-01
طراحی با استفاده از ماژول WiFi ESP8266-01 انجام شد ، زیرا این چیزی است که من در دسترس داشتم. در ساده ترین شکل ، ESP8266-01 دارای چهار پین I/O است:
- GPIO0
- GPIO2
- TX
- RX
ESP8266-01 حالت های قدرت
حالت منطقی پین های ورودی/خروجی برای تعیین اینکه ESP8266-01 در کدام حالت بوت می شود استفاده می شود. اولین قدم این بود که مشخص شود کدام یک از پین های ورودی/خروجی می تواند برای هدایت رله خروجی استفاده شود.
- برای روشن شدن معمولی ، GPIO0 و GPIO2 باید روی منطق HIGH تنظیم شوند. بنابراین واضح است که از این دو پین نمی توان به عنوان خروجی دیجیتال استفاده کرد.
- پین Tx به عنوان خروجی هنگام روشن شدن و خروجی بالا تنظیم شده است. این پین Tx همچنین برخی از داده های سریال را در حین برق رسانی منتقل می کند. بنابراین ، این پین همچنین نمی تواند به عنوان خروجی استفاده شود.
تنها پین باقی مانده پین Rx است. این پین به عنوان ورودی در هنگام روشن شدن تنظیم شده است و نیازی نیست هنگام بالا بردن آن بالا کشیده شود. بنابراین این پین مناسب ترین مورد برای استفاده به عنوان پین خروجی است.
راه اندازی
برای اطمینان از حالت بوت صحیح ESP8266-01 در هنگام روشن شدن ، پین های زیر با استفاده از مقاومتهای 10K به بالا کشیده می شوند:
- GPIO0
- GPIO2
- RST
- CH_PD
این اطمینان می دهد که دستگاه هر بار به درستی بوت می شود.
رله خروجی
RX تنها پین مناسب برای استفاده به عنوان خروجی است. بنابراین این پین برای هدایت رله خروجی از طریق ترانزیستور NPN استفاده می شود. مقاومت استاندارد دیود فلایویل و ترانزیستور اضافه شد.
دکمه MODE/SET
این دکمه به GPIO2 متصل است و با دکمه آزاد شده ، یک مقاومت 10K GPIO2 را به سمت بالا می کشد. با فشار دادن دکمه ، GPIO2 به 0V کشیده می شود.
این دکمه برای دو عملکرد استفاده می شود:
- راه اندازی اولیه برای اتصال دستگاه به شبکه WiFi محلی
- برای کنترل دستی خروجی در طول عملیات عادی
LED نشانگر
LED به GPIO0 متصل است و موارد زیر را نشان می دهد:
- با روشن شدن اولیه ، FAST چشمک می زند تا حالت راه اندازی WiFi را نشان دهد
- وقتی زمان دستگاه تنظیم نشده باشد چشمک می زند
- وضعیت روشن/خاموش بودن رله خروجی را نشان می دهد
مرحله 2: منبع تغذیه
من از تایمر هوشمند IoT در سطوح مختلف ولتاژ استفاده خواهم کرد ، بنابراین دو گزینه منبع تغذیه در دسترس است:
12 - 24 ولت DC
مبدل DC-DC مورد استفاده برای منابع تا 28 ولت DC مناسب است. خروجی مبدل قابل تنظیم است و روی 5 ولت تنظیم شده است. این کار باید قبل از اتصال ماژول ESP8266 انجام شود.
یک دیود برای محافظت در برابر قطبیت معکوس در ورودی منبع اضافه شد.
برای این گزینه ، من توانستم یک منبع تغذیه کوچک 220V/5V را در eBay دریافت کنم.
صرف نظر از ولتاژ ورودی ، تایمر هوشمند IoT به دو منبع تغذیه نیاز دارد:
ریل 5 ولت
با هر دو گزینه ، 5V DC از منبع تغذیه حالت سوئیچ به دست می آید و نه تنظیم کننده خطی. این بدان معناست که حداقل گرما توسط منبع تغذیه تولید می شود. 5 ولت برای هدایت رله خروجی استفاده می شود
ریل 3.3 ولت
3.3V برای ESP8266-01 از تنظیم کننده ASM1117 3.3 به دست می آید. ASM1117 3.3 یک تنظیم کننده خطی است و می تواند تا 500 میلی آمپر کار کند. با این حال ، گرمای تولید شده توسط ولتاژ ورودی ASM1117 تعیین می شود. برای کاهش گرما ، ASM1117 از ریل 5 ولت تغذیه می کند.
فیلتر نویز
برای کاهش موج ولتاژ در ESP8266-01 ، ریل 3.3V دارای یک خازن 100 - 1000uf است. هر دو ریل 5V و 3.3V نیز توسط خازن های 0.1uf از تداخل فرکانس بالا محافظت می شوند.
مرحله 3: مونتاژ برد PC
PC Board با استفاده از نسخه رایگان Eagle طراحی شده است. این یک تخته یک طرفه است که می توان آن را به راحتی در خانه با استفاده از روش انتقال تونر تهیه کرد.
پس از ساخت PC Board ، برد PC را به ترتیب زیر مونتاژ کنید:
- تنظیم کننده ASM1117 و سه جزء SMD 0.1uf را به قسمت لحیم برد بچسبانید
- بلوز منفرد را به قسمت اجزای تخته اضافه کنید
- مقاومتها و دیودها را در جای خود لحیم کنید
- سرصفحه های ماژول ESP8266-01 را اضافه کنید
- پین هدر LED و دکمه را اضافه کنید
- پایانه های پیچ را اضافه کنید
- با استفاده از پین های هدر ، مبدل DC/DC را به برد وصل کنید.
- رله را در جای خود لحیم کنید
- با لحیم کاری ترانزیستور و خازن 100uf ، برد را کامل کنید.
هنگامی که همه اجزا به صفحه لحیم می شوند ، تمام نقاط لحیم کاری را بررسی کنید و از اتصال کوتاه بین پدها اطمینان حاصل کنید.
! ! ! یادداشت مهم ! ! ! برای اطمینان از اینکه برد PC می تواند جریانهای زیادی را روی مخاطبین خروجی کنترل کند ، مقداری مناسب از لحیم کاری را در مسیرهای بین مخاطبین رله و پایانه های پیچ اعمال کنید
مرحله 4: آزمایش برد PC
! ! ! قبل از اعمال قدرت! ! !
ماژول ESP8266-01 را از دستگاه جدا کنید. این کار برای جلوگیری از گرم شدن بیش از حد تنظیم کننده ASM1117 قبل از تنظیم منبع تغذیه 5V انجام می شود.
پس از مونتاژ آزمایش های زیادی نمی توان انجام داد. مهمترین مرحله اطمینان از سطوح صحیح ولتاژ است.
- 12 - 24V DC را به دستگاه وصل کنید.
- ولتاژ خروجی مبدل DC/DC را اندازه گیری کنید
- خروجی مبدل را بین 5.0 تا 5.5 ولت تنظیم کنید.
- در مرحله بعد ، منبع تغذیه 3.3 ولت را اندازه گیری کنید.
- اگر منابع خوب هستند ، برق را از دستگاه جدا کنید
اکنون می توانید ماژول ESP8266-01 را در هدرهای ارائه شده وارد کنید.
! ! ! توجه داشته باشید !
هنگامی که تایمر اینترنت اشیا را آزمایش کردید و کار کرد ، از لاک شفاف برای پوشاندن قسمت لحیم کاری برد PC استفاده کنید. این امر از اکسید شدن مسیرها جلوگیری می کند و عایق اضافی بین مخاطبین رله و بقیه مدار ایجاد می کند
مرحله 5: محوطه
محفظه چندان مهم نیست ، به شرطی که برد PC و تمام سیم کشی ها به خوبی و ایمن در آن قرار بگیرند.
برای سهولت ساخت ، من یک کابل با دکمه LED و MODE/SETUP متصل به آن ساخته ام. این به من انعطاف پذیری بیشتری در نصب LED و دکمه به محفظه داد. سپس این کابل به هدر روی برد PC وصل می شود.
عکسها یکی از واحدهای 12 ولت مورد استفاده برای چراغ های LED را نشان می دهد.
مرحله 6: برنامه نویسی ESP8266-01/NodeMCU
برای برنامه ریزی ESP8266-01 ، ابتدا باید Arduino IDE را تنظیم کنید. من وارد این جزئیات نمی شوم ، زیرا دستورالعمل های بسیار زیادی در این زمینه موجود است. من پیوندهای زیر را در Instructables برای مرجع ، بدون هیچ گونه دستور خاصی به نویسندگان ، انتخاب کرده ام. با تشکر از دستورالعمل های فردی آنها.
برای راه اندازی Arduino IDE برای ماژول ESP8266 ، این ESP8266 و Arduino IDE را دنبال کنید.
در مرحله بعد ، برای برنامه ریزی ESP8266 به یک برنامه نویس نیاز دارید. در اینجا دو لینک وجود دارد:
استفاده از آردوینو اونو
هیئت برنامه نویسی DIY
کتابخانه ها
برای اینکه بتوانید کد را کامپایل کنید ، باید کتابخانه های بیشتری نصب کنید. مجدداً به این دستورالعمل مراجعه کنید:
کتابخانه های آردوینو را نصب و استفاده کنید
من نمی توانم به یاد داشته باشم که باید کدام کتابخانه ها را نصب کنم ، اما می دانم که WiFiManager باید جداگانه بارگیری شود. من اینها را در فایل Libraries.zip قرار داده ام.
مرحله 7: راه اندازی اولین بار
وقتی برای اولین بار استفاده می شود ، تایمر هوشمند اینترنت اشیا باید به یک شبکه WiFi متصل شود. این کار با استفاده از کتابخانه WiFiManager انجام می شود ، بنابراین نیازی به وارد کردن کد SSID یا رمز عبور در کد نیست.
این چند مرحله را دنبال کنید:
- واحد را روشن کنید
- LED به سرعت شروع به چشمک زدن می کند
- دکمه MODE/SETUP را فشار دهید
- وقتی LED خاموش شد ، دکمه را رها کنید
- چند ثانیه صبر کنید ، سپس اتصالات تلفن هوشمند یا دستگاه خود را باز کنید
- کلمه کلیدی جدید WiFi به نام IoT Timer قابل مشاهده است
- این نقطه دسترسی را انتخاب کنید
- ورود به تایمر اینترنت اشیا (نیازی به رمز عبور نیست)
- منتظر بمانید تا دستگاه شما به شبکه تایمر اینترنت اشیا متصل شود
- هر مرورگر اینترنتی را باز کنید
- در نوار آدرس ، آدرس IP زیر را وارد کنید - 192.168.4.1
- کنسول WiFiManager باز می شود
- Configure WiFi را انتخاب کنید
- لیستی با نقاط شبکه های WiFi موجود نمایش داده می شود
- شبکه WiFi مورد نیاز را انتخاب کرده و رمز عبور را وارد کنید
- در مرحله بعد ، آدرس IP مورد نظر خود را برای اتصال به تایمر اینترنت اشیا وارد کنید
- آدرس IP Default Gateway و سپس ماسک را وارد کنید
- پس از انجام همه تنظیمات ، روی دکمه ذخیره کلیک کنید
- یک پنجره جدید باز می شود تا تأیید شود اعتبارنامه جدید ذخیره شده است
- مرورگر خود را ببندید
پس از ذخیره ، شبکه IoT Timer خاموش می شود و دستگاه سعی می کند به شبکه WiFi شما متصل شود.
- تلفن هوشمند یا دستگاه خود را به همان شبکه WiFi متصل کنید که برای تایمر IoT استفاده شده است.
- مرورگر خود را باز کنید
- در نوار آدرس ، آدرس IP تایمر IoT خود را وارد کنید
- صفحه پیکربندی تایمر اینترنت اشیا باز می شود
تایمر IoT شما اکنون آماده استفاده است
مرحله 8: راه اندازی تایمر اینترنت اشیا
صفحه وب داخلی تایمر IoT از پنج بخش تشکیل شده است:
وضعیت
این نام دستگاه و همچنین زمان فعلی و وضعیت خروجی تایمر را نشان می دهد
علاوه بر این ، حالت عملکرد تایمر در این قسمت تنظیم شده است. سه حالت وجود دارد:
- خودکار - خروجی توسط برنامه های مختلف تایمر کنترل می شود
- روشن - خروجی به صورت اجباری روشن است و تا زمانی که حالت تغییر نکند ، روشن می ماند
- خاموش - خروجی بصورت اجباری خاموش است و تا تغییر حالت خاموش می ماند.
برنامه ها
این بخش شامل زمان های روشن و خاموش زمان سنج است. هفت برنامه در دسترس است و هر برنامه می تواند به صورت جداگانه تنظیم شود.
قبل از تغییر برنامه بعدی ، دکمه SAVE را فشار دهید تا تغییرات ایجاد شده در برنامه فعلی ذخیره شوند.
عملکرد دکمه
از دکمه MODE/SETUP می توان برای کنترل رله خروجی در حالت عادی استفاده کرد. در اینجا ، دکمه ای که باید فشار داده شود را انتخاب کنید.
برای ذخیره تنظیمات جدید ، قبل از فشار دادن دکمه ذخیره ، کادر "عملکرد دکمه به روز رسانی" را علامت بزنید.
پیکربندی
در اینجا می توانید نام تایمر IoT را تغییر دهید. این امر به آسانی می تواند بین چندین تایمر تشخیص دهد.
زمان استفاده از دستگاه از طریق سرور زمان NTP از اینترنت به دست می آید. برای نمایش زمان صحیح ، لطفاً منطقه زمانی را در منطقه خود به روز کنید.
اگر می خواهید از سرور زمان NTP دیگری استفاده کنید ، آدرس IP جدید را در فضای ارائه شده وارد کنید.
برای ذخیره تنظیمات جدید ، قبل از فشار دادن دکمه ذخیره ، کادر "Update Configuration" را علامت بزنید.
توجه داشته باشید
هنگام تغییر منطقه زمانی ، زمان جدید فقط در طول درخواست زمان بعدی درست تنظیم می شود. دستگاه تنظیم شده است که زمان را هر 5 دقیقه به روز کند.
تنظیم زمان
گاهی اوقات ، اتفاق می افتد که سرور زمان NTP در هر پرس و جو پاسخ نمی دهد. اگر زمان زیادی برای تنظیم زمان از طریق سرور NTP طول بکشد ، می توانید ساعت و تاریخ را به صورت دستی وارد کنید.
برای ذخیره زمان و تاریخ جدید ، قبل از فشار دادن دکمه ذخیره ، کادر "Update Time" را علامت بزنید.
همگام سازی زمان
آخرین قسمت صفحه زمان و تاریخ آخرین زمان همگام سازی را از طریق سرور زمان NTP نشان می دهد.
توصیه شده:
تلفن همراه با آردوینو و بلوتوث اتوماسیون خانگی بدون تماس خانگی: 5 مرحله
تلفن همراه آردوینو بلوتوثی اتوماسیون خانگی بدون تماس: تبریک در زمان همه گیری کووید 19 برای اجتناب از تماس و حفظ فاصله اجتماعی ضروری است ، اما برای روشن و خاموش کردن وسایل شما باید تابلوهای برق را لمس کنید اما دیگر برای معرفی سیستم تماس کمتر منتظر نمانید برای کنترل
نحوه ساخت خانه هوشمند با استفاده از ماژول رله کنترل آردوینو - ایده های اتوماسیون خانگی: 15 مرحله (همراه با تصاویر)
نحوه ساخت خانه هوشمند با استفاده از ماژول رله کنترل آردوینو | ایده های اتوماسیون خانگی: در این پروژه اتوماسیون خانگی ، ما یک ماژول رله خانه هوشمند طراحی می کنیم که می تواند 5 لوازم خانگی را کنترل کند. این ماژول رله را می توان از طریق تلفن همراه یا تلفن هوشمند ، ریموت IR یا ریموت تلویزیون ، سوئیچ دستی کنترل کرد. این رله هوشمند همچنین می تواند r
دیوار نصب برای IPad به عنوان کنترل پنل اتوماسیون خانگی ، با استفاده از آهنربای کنترل شده سروو برای فعال کردن صفحه: 4 مرحله (همراه با تصاویر)
دیوار نصب برای IPad به عنوان کنترل پنل اتوماسیون خانگی ، با استفاده از آهنربای کنترل شده سروو برای فعال کردن صفحه: اخیراً من زمان زیادی را صرف خودکارسازی وسایل داخل و اطراف خانه ام کرده ام. من از Domoticz به عنوان برنامه اتوماسیون خانگی خود استفاده می کنم ، برای جزئیات به www.domoticz.com مراجعه کنید. در جستجوی یک برنامه داشبورد که تمام اطلاعات Domoticz را نشان می دهد
ساختن دستگاههای Homie برای IoT یا اتوماسیون خانگی: 7 مرحله (همراه با تصاویر)
ساختن دستگاه های Homie برای اینترنت اشیاء یا اتوماسیون خانگی: این بخش قابل آموزش بخشی از سری DIY Automation Home من است ، مقاله اصلی & quot؛ برنامه ریزی سیستم اتوماسیون خانگی DIY & quot؛ را بررسی کنید. اگر هنوز نمی دانید Homie چیست ، نگاهی به homie-esp8266 + homie ماروین راجر بیندازید. تعداد زیادی سن وجود دارد
ساده ترین اتوماسیون خانگی با استفاده از بلوتوث ، تلفن هوشمند Android و آردوینو .: 8 مرحله (همراه با تصاویر)
ساده ترین اتوماسیون خانگی با استفاده از بلوتوث ، تلفن هوشمند اندرویدی و آردوینو: سلام به همه ، این پروژه درباره ساخت ساده ترین دستگاه اتوماسیون خانگی با استفاده از آردوینو و ماژول بلوتوث است. ساخت این یکی بسیار آسان است و می تواند ظرف چند ساعت ساخته شود. در نسخه ای که در اینجا توضیح می دهم ، می توانم