آردوینو اینترنت اشیا IOT برد ویموس Wemos خانه هوشمند پروژه های آردوینو

آموزش ساخت کرکره برقی ضد سرقت بر پایه IOT با ربات تلگرام و آردوینو

IOT-Door-Roller-shutter-system-arduino-telegram-Digispark
نوشته شده توسط مهرداد شجاعی

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

 

موتور و ریسیور قابلیت ریموت اینترنتی

با مطالعه موتورهای ساید و توبلار متوجه شدیم که تمامی این موتورها قابلیت اضافه نمودن ریموت اینترنتی را ندارند. برخی از موتورهای کرکره برقی Roller shutter قابلیتی در میکروسوییچ آنها هست که اختلالی در  مدار موازی با ریسیور و برد ویموس ایجاد نمی‌کند. پس خاطرتان باشد حتما در انتخاب موتور و ریسیور در انتهای همین پست با ثبت نظر مشورت بگیرید. می‌توان گفت زمان باز و بسته شدن کرکره ها بین ۲۰ تا ۳۰ ثانیه است، پس هنگام کد نویسی می‌توان به این موارد توجه داشت.

 

 

استفاده از مودم داخل محل کار یا مغازه

امروزه در اکثر محل‌ها اینترنت پرسرعت با امواج وای فای وجود دارد. اغلب این مودم‌ها همیشه روشن هستند. قاعدتا برد Arduino Wemos d1 بایستی به این مودم برای اطلاعات گیری متصل شود. پس در کدنویسی به نام کاربری و پسورد lودم احتیاج هست. در این آموزش قرار است از ربات تلگرامی که روی گوشی و اکانت شخص ساخته می‌شود؛ کرکره برقی Roller shutter از راه دور باز یا بسته شود و احتیاج به آی پی یا هیچ نرم افزاری نیست. ربات تلگرام مدیریت کرکره برقی اینترنتی در ادامه قرار دارد و با آپلود کدها توسط نرم افزار آردوینو Arduino IDE می‌توانید به آن دسترسی پیدا کنید.

 

مراحل آماده سازی کرکره برقی اینترنتی برپایه IOT

 

اتصال برد wemos به ریسیور و کرکره

ابتدا پایه از پایه ۵ولت ویموس یک تغذیه به رله دو کانال بدید،بعد پایه GND ویموس و رله رو بهم متصل کنید،در آخر دوتا از پایه های فرمان ویموس را به IN1 و IN2 رله که من اینجا D1 ویموس رو IN1 رله و D4 ویموس رو رو به IN2 رله متصل کردم.اتصال بین رله و ریسیور هم به این شکل هست که پین های مشترک یا COM رله رو بهم اتصال میدید و  پین های NC  رو به NO ریسیور متصل میکنید.و در نهایت ریسیور رو به موتور و برق شهری متصل میکنید.ضمنا در حالت معمول موتورها دارای ۴ سیم هستند که یکی ارت،یکی نول یا مشترک و دوتای دیگه به اصطلاح چپ گرد یا راست گرد به معنای بالا و پایین رفتن کرکره هست که به ریسیور متصل میشوند.

 

 

وسایل مورد نیاز ریموت و کرکره اینترنتی

ریسیور موتور توبلار یا ساید Motor receiver

برد کنترلر ویموس Wemos D1 Mini

ماژول رله دو کانال Relay

 

 

کدهای مدار کرکره اینترنتی

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

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

 

 

تنظیمات نهایی ربات تلگرام و برد wemos

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

 

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

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

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

مهرداد شجاعی

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

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

۵۷ دیدگاه

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

    • سلام با تشکر از شما
      مدل beta دارای چند ورژن مختلف است و بنده باید از نزدیک بررسی کنم. ولی پیشنهاد میکنم که از ریموت و ریسیورهای جدید استفاده کنید. که هم توسط بنده تست شده هستند و هم امنیت بالاتری دارند.

  • سلام ممنونم از آموزش زیباتون میخواستم در مورد امنیت این پروژه بدونم ؟؟؟ آِا امنیتش بالاست ؟ یا یک هکر میتواند به برنامه دست پیدا کند و به راحتی کرکره رو بالا بکشد

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

  • با عرض سلام و وقت بخیر
    آیا این پروژه با استفاده از WEMOS-LOLIN32 نیز قابل راه اندازی هست ؟

    • ضمن تشکر از توجه شما
      این پروژه با wemos d1 ران شده،اما با احتمالا با دیگر امبدد ها هم قابل راه اندازی میباشد.

  • یعنی الان شما هر وقت بخواهید کرکره را باز و بسته می کنید بدون اینکه در مغاز باشید وبا اینترنت ؟

  • با سلام
    این روش رو برای درب های اتوماتیک پارکینگ هم می شود انجام داد ؟
    اگر می شود در صورت امکان آموزش اون رو هم قرار بدید…
    با تشکر فراوان از ارسال مطالب مفید و آموزنده سایت شما

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

    • سلام
      امکان اجرا وجود دارد، کدها تفاوتی ندارند و میتونید کامپایل کنید.
      فقط ممکنه بخاطر بادریت متفاوتش به مشکل بخورید.

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

  • سلام
    من پروژه بالا رو میخوام با ماژولNodeMCU 1.0 (ESP-12E Module). اجرا کنم
    لطفا راهنمایی کنید
    من اطلاعاتم تو این زمینه کامل نیست

    • اگر دلیل خاصی برای اجرا با nod mcu برای شما وجود ندارد پیشنهاد بنده به شما اجرای پروژه با wemos d1 است دوست عزیز.

      • اخه من این ماژول رو دارم گفتم اگه با همین بتونم راه اندازی کنم مجدد خریداری وهزینه نکنم
        اگه با همین ماژول امکان راه اندازی دارم لطفا راهنمایی کنید

        • آدرس دهی پین ها یکسان است ولی بنده با اون برد کار نکرده ام. به این دلیل که ابعاد بیشتری دارد و ویموس جدیدتر و کوچکتر است.
          اگر شما اسرار دارید، میتوانید پیاده سازی کنید و موارد را از همین طریق اطلاع رسانی کنید.

  • سلام
    من برنامه رو لود کردم
    امکانش هست از رو خود برد الان خرجیها رو تست کنم ببینم درست فرمان میگیره یه نه؟
    با یه ال ای دی چطور تست کنم
    دستوراتمو با ربات تلگرام چطوری بفرستم

    • با سلام و وقت بخیر خدمت شما کاربر گرامی
      جهت تست با ال ای دی پایه ای که به پین فرمان برد مربوطه متصل هست رو به پایه مثبت یا کوتاه ال ای دی و پایه GND برد رو به پایه منفی یا کوتاه ال ای دی متصل کنید.
      در ادامه طبق دستورات در کدنویسی در ربات تلگرام از دستورات /up برای بالا رفتن و /down برای پایین آمدن کرکره استفاده کنید.توجه داشته باشید که برای تست روی ال ای دی با اعمال هردو دستور باید ال ای دی روشن شود یا شوند.

  • سلام ممنون از آموزش خوبتون
    من میخوام این آموزش رو روی درب منزل برای اتصال به پنل دربازکن بسازم. با توجه به اینکه میخوام وب بیس باشه یعنی آی پی رو بزنم تو مرورگر و اونجا با UI که میسازم در رو باز کنم؛ آیا wemos mini حافظه کافی داره و اگه نداره ارزان ترین مدل آردینو که این کار رو برام انجام بده کدوم هست؟ لطف کنین بگین مشخصات منبع تغذیه مورد نیازش روئ هم بگین

    سپاس فراوان

  • ببخشید یه سوال دیگه هم داشتم
    آیا رله وای فای برای رزبری/اورن پای هست که بشه با وای فای بهش دستور داد؟ یعنی با پاور مستقل نصب بشه محل کار و از دور بهش دستور بدیم؟

    تشکر

    • ضمن تشکر از دقت نظر شما،با اتصال ماژول وای فای esp8266 به رله میشه رله بیسیم با پروتکل وای فای داشت و از طریق رزبری پای بهش دستور داد.
      پیروز باشید

      • سلام
        تشکر از شما. سوال دیگه ای که دارم این هست. من wemos mini d1 رو خریداری و راه اندازی کردم و پروژه انجام شد. اما کانکشن وب سرور alive نمیمونه. راه حلی هست؟
        مورد دیگه اینکه میشه روی خود وموس وب سرور را انداخت منظورم اینه که نیاز به مودم نداشته باشه و با وای فای خودش این کار انجام بشه. اگه هست آیا آموزشی وجود داره براش؟

  • با سلام و تشکر از اموزش خوبتان
    در مورد مسئله فیلتر شدن تلگرام برای این پروژه چه جایگزینی را برای تلگرام می توان قرار داد

  • درود و خسته نباشید،بنده نیازی هستم و ۱۰ سال هست در صنف سیستمهای امنیتی و حفاظتی فعالیت دارم،تمام کارها رو میشه با یه رسیور قیمت مناسب و سیمکارتی هم انجام داد حتی با قابلیتهای بیشتر

    • سلام خدمت شما دوست عزیز
      سیستم هایی که از بستر gsm بهره میبرند بشدت امنیت پایینی دارند،ضمنا تکنولوژی بر بستر iot به مراتب پیشرو تر و انعطاف پذیرتر از gsm خواهد بود.به زبان ساده تر gsm و یا اس ام اس از نظر ما منسوخ شده است و مجموعه دیجی اسپارک حداقل ۱۰ سال جلوتر از تکنولوژی روز حرکت میکند.

      • موافقم زیرا که شما با هر بار تعامل با برد و سیستم در بستر gsm هزینه پیام کوتاه برای هر ۲ طرف در صورتی که دستگاه gsm قابلیت اعلان را داشته باشد را دارد
        در حالی که در بستر اینترنت اشیا با داشتن یک بسته حجمی ناچیزی از کل اینترنت شما را با فرمان دادن ۲۴ ساعته به سیستم استفاده می کند
        و انعطاف پذیری آن از gsm بیشتر می باشد

  • سلام این ارور مال چیه؟
    Arduino: 1.8.7 (Windows Store 1.8.15.0) (Windows 10), Board: “LOLIN(WEMOS) D1 R2 & mini, 80 MHz, Flash, 4M (1M SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 921600”

    The sketch name had to be modified.
    Sketch names must start with a letter or number, followed by letters,
    numbers, dashes, dots and underscores. Maximum length is 63 characters.

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp: In member function ‘String UniversalTelegramBot::sendPostToTelegram(String, ArduinoJson::JsonObject&)’:

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:85:26: error: ‘class ArduinoJson::JsonObject’ has no member named ‘measureLength’

    int length = payload.measureLength();

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:92:13: error: ‘class ArduinoJson::JsonObject’ has no member named ‘printTo’

    payload.printTo(out);

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp: In member function ‘bool UniversalTelegramBot::getMe()’:

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:269:3: error: ‘DynamicJsonBuffer’ was not declared in this scope

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:269:21: error: expected ‘;’ before ‘jsonBuffer’

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:270:22: error: ‘jsonBuffer’ was not declared in this scope

    JsonObject& root = jsonBuffer.parseObject(response);

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:272:11: error: ‘class ArduinoJson::JsonObject’ has no member named ‘success’

    if(root.success()) {

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp: In member function ‘int UniversalTelegramBot::getUpdates(long int)’:

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:305:5: error: ‘DynamicJsonBuffer’ was not declared in this scope

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:305:23: error: expected ‘;’ before ‘jsonBuffer’

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:306:24: error: ‘jsonBuffer’ was not declared in this scope

    JsonObject& root = jsonBuffer.parseObject(response);

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:308:14: error: ‘class ArduinoJson::JsonObject’ has no member named ‘success’

    if (root.success()) {

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:316:62: error: invalid initialization of non-const reference of type ‘ArduinoJson::JsonObject&’ from an rvalue of type ‘ArduinoJson::Internals::enable_if<true, ArduinoJson::Internals::JsonObjectSubscript >::type {aka ArduinoJson::Internals::JsonObjectSubscript}’

    JsonObject& message = root[“result”][i][“message”];

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp: In member function ‘bool UniversalTelegramBot::sendMessage(String, String, String)’:

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:379:3: error: ‘DynamicJsonBuffer’ was not declared in this scope

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:379:21: error: expected ‘;’ before ‘jsonBuffer’

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:380:25: error: ‘jsonBuffer’ was not declared in this scope

    JsonObject& payload = jsonBuffer.createObject();

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp: In member function ‘bool UniversalTelegramBot::sendMessageWithReplyKeyboard(String, String, String, String, bool, bool, bool)’:

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:394:3: error: ‘DynamicJsonBuffer’ was not declared in this scope

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:394:21: error: expected ‘;’ before ‘jsonBuffer’

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:395:25: error: ‘jsonBuffer’ was not declared in this scope

    JsonObject& payload = jsonBuffer.createObject();

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:404:70: error: invalid initialization of non-const reference of type ‘ArduinoJson::JsonObject&’ from an rvalue of type ‘ArduinoJson::JsonObject’

    JsonObject& replyMarkup = payload.createNestedObject(“reply_markup”);

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:411:21: error: expected ‘;’ before ‘keyboardBuffer’

    DynamicJsonBuffer keyboardBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:412:29: error: ‘keyboardBuffer’ was not declared in this scope

    replyMarkup[“keyboard”] = keyboardBuffer.parseArray(keyboard);

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp: In member function ‘bool UniversalTelegramBot::sendMessageWithInlineKeyboard(String, String, String, String)’:

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:432:3: error: ‘DynamicJsonBuffer’ was not declared in this scope

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:432:21: error: expected ‘;’ before ‘jsonBuffer’

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:433:25: error: ‘jsonBuffer’ was not declared in this scope

    JsonObject& payload = jsonBuffer.createObject();

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:442:70: error: invalid initialization of non-const reference of type ‘ArduinoJson::JsonObject&’ from an rvalue of type ‘ArduinoJson::JsonObject’

    JsonObject& replyMarkup = payload.createNestedObject(“reply_markup”);

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:444:21: error: expected ‘;’ before ‘keyboardBuffer’

    DynamicJsonBuffer keyboardBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:445:36: error: ‘keyboardBuffer’ was not declared in this scope

    replyMarkup[“inline_keyboard”] = keyboardBuffer.parseArray(keyboard);

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp: In member function ‘String UniversalTelegramBot::sendPhoto(String, String, String, bool, int, String)’:

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:514:3: error: ‘DynamicJsonBuffer’ was not declared in this scope

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:514:21: error: expected ‘;’ before ‘jsonBuffer’

    DynamicJsonBuffer jsonBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:515:25: error: ‘jsonBuffer’ was not declared in this scope

    JsonObject& payload = jsonBuffer.createObject();

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:533:72: error: invalid initialization of non-const reference of type ‘ArduinoJson::JsonObject&’ from an rvalue of type ‘ArduinoJson::JsonObject’

    JsonObject& replyMarkup = payload.createNestedObject(“reply_markup”);

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:535:23: error: expected ‘;’ before ‘keyboardBuffer’

    DynamicJsonBuffer keyboardBuffer;

    ^

    C:\Users\ario\Documents\Arduino\libraries\UniversalTelegramBot\src\UniversalTelegramBot.cpp:536:31: error: ‘keyboardBuffer’ was not declared in this scope

    replyMarkup[“keyboard”] = keyboardBuffer.parseArray(keyboard);

    ^

    exit status 1
    Error compiling for board LOLIN(WEMOS) D1 R2 & mini.

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

  • باسلام و خسته نباشید
    در صورتی که بخواهیم بدون استفاده از رسیور از این برد استفاده کنیم آیا از میکرو سویچ های موتور که مشخص کننده حد بالا و پایین هستند فید بکی به دستگاه رسیور برمی گردد تا مشخص کند کرکره کاملا بسته شده و رله را قطع کنیم و یا صرفا میکرو سوییچ ها خودشان برق موتور را قطع می کنندد و دستگاه رسیور بعد از یه مدت زمان از پیش تعریف شده رله را قطع می کند و تصور می کند درب حداکثر تا آن زمان بسته یا باز شده است ؟
    و اگر چنین است آیا روشن بودن رله بعد از فعال شدن میکرو سوییچ به موتور آسیب نمی رساند ؟
    پیشاپیش ممنون از پاسختون

      • ممنون از پاسختون.تو node-red چون در بستر سیستم عامل کار میکرد میشد قضیه فیلترینگ رو با راهکارهایی که ارایه فرموده بودید حل کرد ولی اینجا که سیستم عاملی نیست چطور مشکل رو باید حل کنیم؟

  • سلام روزتون بخیر
    با خرید این دومحصول
    برد کنترلر ویموس Wemos D1 Mini
    ماژول رله دو کانال Relay
    به همراه کد دستوری میباشد

    • با سلام
      کاربر گرامی درخواست شما شفاف نیست. لطفا دقیق تر توضیح دهید تا راهنمایی شود.