آردوینو برد ESP8266 برد ویموس Wemos

آموزش اتصال برد آردوینو با ربات پیام رسان بله Bale App

نوشته شده توسط آرش کدخدایی

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

 


نحوه ساخت ربات در بله


پیام رسان بله Bale محیطی مشابه با پیام رسان تلگرام دارد. برای اینکه از این پیام رسان به برد آردوینو ارتباط برقرار کنیم، لازم به ساخت ربات داریم. طبق مستندات وبسایت توسعه دهندگان بازوی بله در اولین مرحله باید با بازوی پدر به نشانی @botfather در بله گفتوگو کنید. بازوی خودتان را بسازید و token مربوطه را دریافت کنید. دقت داشته باشید که توکن بسیار اهمیت دارد و همان بخشی است که برای ارتباط با پیام رسان به آن نیاز داریم.  برای اطلاعات بیشتر میتوانید به وبسایت توسعه دهندگان بازوی بله مراجعه کنید.

 


آماده سازی پروژه


 

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

 

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

 


ارتباط برد Wemos D1 Mini با ربات بله


برای کنترل برد ویموس از طریق ربات پیام رسان بله، کافیست کدهای زیر را کپی کرده و داخل نرم افزار آردوینو قرار دهید. با آپلود این برنامه روی برد خود و ارسال ۰ و ۱ به بات ساخته شده خواهید دید که ال ای دی داخلی خاموش و روشن خواهد شد. به این روش با یک برنامه چت ساده، میتوانیم با اشیا مختلف چت کنیم و آن‌ها را در بستر اینترنت کنترل کنیم.

 

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

 

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

 

 

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

 


پروژه و دریافت بن ارسال رایگان


برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و یا حتی مدار جدیدی تعریف کنید. سپس از اجرای کار فیلم گرفته و در شبکه‌های اجتماعی از جمله آپارات و اینستگرام، با هشتگ‌های دیجی_اسپارک دانشجوکیت digispark daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۲۰۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.

 

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

 

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

آرش کدخدایی

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

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

۷۹ دیدگاه

  • با سلام و عرض ادب ،
    بسیار عالی بود . من با nodemcu ch340 استفاده کردم و البته یه پیغام خطا دریافت نمودم مبنی بر اینکه ‘class axTLS::WiFiClientSecure’ has no member named ‘setInsecure’ که از دستور client.setInsecure(); گرفته شده بود . خط مذکور رو پاک کردم و برنامه بدون مشکل و اعلام خطا بارگذاری شد و استفاده شد . اگر در خصوص چرایی صدور این خطا و همچنین فرق بود و نبود این خط دستور کمی توضیح دهید ممنون میشوم . با تشکر

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

  • سلام
    ببخشید من توی هیچ کدوم از پروژه های تلگرام و همین بله متوجه نشدم که کد رو کجا آپلود کنم ؟! و ماژول wifi رو کدوم پایه ها بزنم !

    • سلام
      برنامه باید روی یک ماژول وای فای دار (میتواند آردوینو به همراه ماژول esp8266 باشد یا یک بورد بصورت مستقل )
      در این پروژه ما از wemos d1 mini استفاده کردیم
      اگر ماژول وای فای دارید ابتدا نحوه کار با آن را مطالعه کنید

      • یک سوال دارم اینکه میتونم با یک بورد اردوینو هم مدیریت با sms با ماژول sim808 و همین ماژول wifi کار کنم ؟!
        یعنی هر ۲ تا ماژول دستور بگیرند فکر کنم باید پایه های تعیین شده رو تغییر بدم از کدنویسی تا روی هم نباشن ؟
        من پلتفرم کامل مدیریت هردو ماژول رو روی تلگرام و سرور طراحی کردم فقط سر هم کردن دستگاه مونده

  • سلام درود ممنون بابت این اموزش خوبتان
    در پیام رسان بله مثل اموزشی های قبلی که با بات تلگرام داده بودید ایا امکان این هست که حالت تایپ و اینا در بالای بازو بله قرار داد که یعنی بنویسد ربات در حال نوشتن پیام است از و موارد دیگری که در بات بود را قرار داد

  • بعد بله را در خصوص پایتون هم ایا مدلی کدی هست که بشود رزبری پای را با کد پایتون به مسنجر بله وصل اش کرد که مثلا ارسال عکس و و فیلم را داشته باشد

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

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

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

    من این پروژه رو راه اندازی کردم و به یه مشکلی برخوردم و با راهنمایی آرش جان برطرف شد که گفتم باهاتون به اشتراک بذارم
    ممکنه حین compile کد با خطای Error compiling for board …. مواجه بشید.
    اول بردهای دیگه رو تست کنید:
    LOLIN …
    generic esp 8266 module
    NodeMCU 0.9 ESP12 Module
    NodeMCU 0.9 ESP12E Module

    اگر بازم نشد و خطا داد نرم افزار arduino رو به آخرین ورژن آپدیت کنید و مجددا کامپایل کنید.

  • آیا در پیام رسان بله هم مثل پیام رسان تلگرام میشه بر اساس چک کردن id کاربر ربات پاسخگو باشه برای امنیت پروژه؟

  • سلام مهندس من میخوام یه متغیر عددی رو ارسال کنم به ربات از چه دستوری باید استفاده کنم؟
    مثلا یه متغیر v دارم که float هست چطور این متغیر رو بفرستم داخل ربات؟

      • متوجه نشدم مهندس یکم واضح تر توضیح میدید ببینید الان من با دستور

        float t = dht.redTemperature();

        دارم دما رو دریافت میکنم میخوام این متغیر رو بفرستم داخل ربات چطور این کار رو انجام بدم؟

        به این شکل مینویسم خطا میده

        bot.sendMessage (chat_id,t);

      • مهندس من یه سنسور dht11 دارم که به Wemos متصل هست مقدار متغیر دما هم در یه متغیر به نام t که float هم هست ذخیره شده میخوام این مقدار داخل ربات نمایش داده بشه مثلا کاربر دستور dama رو که ارسال کرد Wemos مقدار متغیر دما رو برگشت بده به ربات من نحوه ارسال و دریافت از ربات رو کامل متوجه شدم مشکلم اینه که چطور یه متغیر رو به ربات ارسال کنم.

  • مشکل کاپایل کردن دارم همه برد های مربوطه رو تست کردم و اردوینو هم به اخرین نسخه ارتقا دادم ولی بازم این مشکل برام وجود دارع Multiple libraries were found for “BaleBot.h”
    In file included from C:\Users\ilyajk\Documents\Arduino\libraries\BaleBot-ESP8266-master\examples\FlashLED\FlashLED.ino:3:0:

    C:\Users\ilyajk\Documents\Arduino\libraries\BaleBot-ESP8266-master\src/BaleBot.h:10:26: fatal error: ArduinoJson.h: No such file or directory

    #include

    ^

    compilation terminated.

    Used: C:\Users\ilyajk\Documents\Arduino\libraries\BaleBot-ESP8266-master
    Multiple libraries were found for “ESP8266WiFi.h”
    Used: C:\Users\ilyajk\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.3\libraries\ESP8266WiFi
    Multiple libraries were found for “EEPROM.h”
    Used: C:\Users\ilyajk\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.3\libraries\EEPROM
    exit status 1
    Error compiling for board LOLIN(WEMOS) D1 R2 & mini.

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

  • سلام وقت تون بخیر من این پروژه رو با nodemcu esp12e v1.0 انجام دادم همه کارها مرتب انجام میشه اما led bultin روشن نمیشه پین d1 رو هم خروجی قرار دادم روی آن یک led قرار دادم اما باز هم کار نکرد لطفا راهنمایی کنید؟

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

      • نمیدونم ارتباطش با اپلیکیشن قطع میشه یا خود برد استند بای میشه زیاد زمان میبره تا همچین اتفاقی بیوفته

      • دقیقا نمیدونم برد استند بای میشه یا ارتباطش با ربات قطع میشه.
        زمان میبره تا همچین اتفاقی بیوفته با سریال مانیتور چک نکردم .
        مشکل مشابه این اتفاق نیوفتاده ؟
        چیکار میشه کرد ک این موضوع حل بشه ؟؟؟

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

  • سلام خسته نباشید
    رله مدار بی دلیل خاموش روشن میشه اینقدر این اتفاق میوفته تا کلا برقشو قطع کنم ممنون میشه راهنمای کنید

  • خسته نباشید
    میشه که اطلاعات رو از برد arduino با ار تباط سریال منتقل کنم به برد esp8266_01 و بعد اطلاعات رو بفرستم به پیام رسان بله ؟
    لطفا راهنمایی کنید که دستور خواندن رو در برد esp چطور بنویسم ؟

  • با سلام وعرض ادب
    من برنامه رو درست اپلود کردم و توسریال مانیتور
    WiFi connected
    ***********:IP address
    رو نمایش می دهد و بات بله رو هم با بات فادر درست کردم ولی نه وقتی start/و ۱و۰ رو می فرستم هیچ چیزی رو نمی فرسته توکن که از بات فادر دریافت کردم رو هم در برنامه اضافه کرد

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

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

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

          • سلام مجدد .
            من میخواهم بجای ال ای دی از ماژول رله استفاده کنم .
            و اینکه چجوری میشه لحظه ای کرد ماژول رله را . چون من میخواهم به عنوان درب بازکن استفاده کنم .
            ایا در کد ها باید تغییری ایجاد کنم ؟
            چه تغییری ؟
            لطفاً کامل توضیح دهی.
            ممنون.

  • سلام ببخشید من با ساخت ربات در پیام رسان بله مشکل دارم بعد این که @botfather رو باز میکنم و /newbot رو انتخاب میکنم پاسخی در یافت نمیکنم میشه لطفا راهنمایی کنید

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

  • سلام مهندس
    من داخل پیام‌رسان بله ربات را که می‌سازم توکن را بهم میده
    اما بعدش ربات که ساختم را چجوری پیدا کنم ؟؟

  • سلام شرمنده این کد برای من تو خط۵۰ ارور میده و میگه در این محدوده وای فای تعریف نشده مشکل چیه

  • برام از بله هیچی نمایش داده نمیشه نه وقتی که استارت میزنم نه ۰و۱ توکنشم چند بار عوض کردم دوباره جاگذاری کردم درست نشد مشکل از چیه

      • استاد از تلگرام هم امتحان مردم نمیدونم چرا رباتش جواب نمیده نه برد نه ربات کار نمیکنه بیش از ۱۰۰بار امتحان مردم خواهشا کمک کنید دیونه شدم

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

      • استاد بله و تلگرام هردو اینجوری هستن کار نمیکنه لطفا راهنمایی کنید بیش از ۱۰۰ بار امتحان کردم

  • سلام، من کد رو با موفقیت روی برد آپلور کردم و برد به وای فای وصل شد ولی وقتی از ربات بله پیام /start رو میفرستم، برد هیچ پیامی به من نمی فرسته، میدونید مشکل از کجاست؟

  • سلام من میخواستم ۴ تا رله رو کنترل کنم میخواستم بدونم چطوری باید پین تعریف بکنم ممنون میشم راهنمای بفرمایید