
در این پروژه قصد داریم نحوه آموزش ساخت ربات با آردوینو باقابلیت کنترل از طریق گوشی تلفن همراه در قالب ارتباط wifi را آموزش دهیم.در این آموزش فرض بر این است که خواننده با آردوینو و برنامه نویسی آن به زبان C++ و برنامه نویسی در محیط Android Studio و کدهای جاوا آشنا است . به همین دلیل از توضیحات اضافه در رابطه با مباحث پایه ای آردوینو و اندروید استودیو صرف نظر کرده ایم.
توصیف پروژه آموزش ساخت ربات با آردوینو
در این پروژه هدف برقراری ارتباط بین گوشی تلفن و ربات وایفای است.در این پروژه از یک ربات ۲ موتوره که موتورهای آن از نوع DC هستند استفاده می شود . همچنین برای راه اندازی موتورهای این ربات نیاز به یک راه انداز یا درایور است که این درایور ماژول L298NLH است . ماژول ارتباط وایفای نیز ESP8266 است که از برد راه انداز آن یعنی NODEMCU 1.0 استفاده می شود .کدهای ماژول وایفای در محیط نرم افزار آردوینو و کدهای برنامه اندروید در محیط اندروید استودیو نوشته شده است.
قطعات مورد نیاز برای ساخت ربات وایفای با آردوینو :
- شاسی ربات دوموتوره دارای گیربکس :
- ماژول L298N
- برد وایفای NODEMCU 1.0
- سیم های جامپر برای اتصال بین قطعات
- یک باتری کتابی ۹ ولتی (استفاده از باتری با ولتاژ بالاتر ممکن است به موتورها آسیب بزند- حد اقل ولتاژ برای راه اندازی ۶ ولت است)
سیم های جامپر ماژول وایفای nodemcu باتری ۹ ولتی ماژول درایور موتور L298N شاسی ربات به همراه موتور
ماژول esp8266
ماژول های esp8266 انواع مختلفی دارند که اساس کارکرد آن ها شبیه به هم است .همچنین ورژن های مختلفی نیز از این ماژول در بازار وجود دارد که با یک پسوند بعد از esp8266 بیان می شود . استفاده از ماژول به تنهایی کار مشکلی است و برای راه اندازی آن نیاز به ولتاژ ۳.۳ ولت و قطعات دیگر برای راه اندازی و برنامه ریزی است.به همین دلیل برای استفاده از این ماژول در این پروژه از یک برد راه انداز به نام nodemcu 1.0 استفاده می شود که با قیمتی مناسب در بازار یافت می شود. ماژول مورد استفاده در این برد esp8266-12E است.این برد را دقیقا شبیه به یک برد آردوینو می توانید پروگرام و استفاده کنید.

ترتیب پایه های ماژول برد NodeMcu به شرح زیر است :

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

تغذیه ماژول یک باتری ۹ ولتی است که ابتدا وارد ماژول l298n می شود .بر روی L298N یک رگولتور +5V وجود دارد که برای تغذیه ماژول ESP8266 مورد استفاده قرار گرفته است .هر چند می توانید یک انشعاب از تغذیه +9V را به ماژول ESP8266 بدهید .
درایور L298N

ماژول درایور موتور برای کنترل سرعت و جهت چرخش موتور ها استفاده می شود . این ماژول ۴ خروجی (out1 تا out4 ) برای اتصال به موتورها و ۶ پین کنترلی برای اتصال به ماژول esp8266 دارد که قابلیت کنترل دو موتور را دارد . نام این پین ها عبارت اند از:
- IN1
- IN2
- EN1
- IN3
- IN4
- EN2
سه پین اول برای کنترل موتور اول و سه پین دوم برای کنترل موتور دوم.IN1 و IN2 برای کنترل جهت و EN1 برای فعال کردن موتور است که باید به یکی از پین های PWM ماژول esp8288 وصل شود.
مثال: اگر IN1=0 و IN 2=1 باشد به محض یک شدن پین EN1 موتور شروع به چرخش در یک جهت می کند و به محض جابه جایی IN1 و IN2 جهت چرخش موتور عوض می شود. حال اگر EN1 به یک پین PWM وصل شود می توان دور موتور راکنترل کرد.
کدهای برنامه آموزش ساخت ربات با آردوینو
برای نوشتن برنامه ابتدا باید کدهای مربوط به هسته ماژول esp8288 را به برنامه آردوینو اضافه کنید . برای این منظور مراحل زیرا انجام دهید:

۲- در فیلد مشخص شده عبارت زیر را وارد کنید و ok را بزنید.

۳-مطابق شکل زیر مراحل را دنبال کنید


بر روی install کلیک کنید و منتظر بمانید تا فایل های مورد نیاز دانلود شود.پس از دانلود از نو آردوینو را اجرا کنید.
کدهای برنامه ماژول esp8266 در آردوینو

نکته : ارتباط با ماژول esp8266 از طریق udp صورت می گیرد.
نکته : پورت ارتباطی 4210 است که می توانید آن را تغییر دهید . البته در صورت تغییر باید این پورت را در برنامه اندروید نیز تغییر دهید.


نکته :این قسمت از برنامه قابل شخصی سازی است و هر کسی بسته به نوع اطلاعات ارسالی می تواند این خطوط را دستکاری کند و پکت خود را در سمت برنامه اندروید و آردوینو قرار دهد .



برای بارگذاری کدهای فوق ابتدا تنطیمات زیر را در آردوینو انجام دهید.

-کدهای برنامه اندروید :

کدهای اندروید در محیط Android Studio 2.0 نوشته شده است.فایل برنامه اندروید و دیگر فایل های پروژه در زیر آورده شده است که می توانید آن را دانلود کنید.
ویديو پروژه
سلام وقت بخیر رمز فایل مورد نظر چیست؟؟
سلام
پسورد تمامی فایل ها http://www.farselectronic.ir می باشد.
سپاس بابت پاسخگویی.
امکانش هست اپلیکیشن android برای کنترل ربات لینک دانلود قرار دهید.
بعضی ها کامپایل کردن کد برنامه بلد نیستن با تشکر
سینا راست میگه. ممنون میشیم
دوتا سوال داشتم
1- user و Password وای فای رو در کدام خط از برنامه باید بزاریم؟
2- فایل کدهای اندروید رو دانلود کردم ولی نمیدونم کدها در کدوم پوشه قرار دارن؟ اصولا باید دو سری کد وجود داشته باشه یکی کدهای جاوا و دیگری کدهای ساده Html برای design اپ؟
ممنون میشم راهنمایی بفرمایید
سلام
۱-برای تغییر SSID و PASS باید خط WiFi.SoftAP() رو تغییر بدید
۲-اگر پروژه اندروید رو با اندروید استودیو باز کنید تمامی فایل ها قابل مشاهده است در غیر اینصورت مسیر زیر رو دنبال کنید.
WiFi_Robot_Esp8266_Android.zip\WiFi_robot_esp8266\app\src\main
سلام مجدد
با تشکر از پاسخگویی دقیق شما
اون دوتا مشکل حل شد. ولی حالا دو تا سوال دیگه دارم خدمتتون
1- وقتی حالا می خوام با خود برنامه Android Studio فایل پروژه رو باز کنیم پیغام زیر را نشان می دهد
No toolchains found in the NDK toolchains folder for ABI with prefix: mipsel-linux-android
آیا امکانش هست خود اپلیکیشن رو Share بفرمایید یا ایمیل کنید
2- اگر بخوام از کدهای شما برای develop کردن اپلیکیشن در یک پروژه جدید استفاده کنم باید بجز کدهای java و کدهای xml از کدام کدهای دیگری که در فایلهای دیگر قرار دارد استفاده کنم
1-پیغام خطا مربوط به نصب اندروید استودیو می باشد و باید توی فروم های مربوطه مطرح کنید
۲-تمامی فایل های مورد نیاز موجود هست برای نصب فایل برنامه مسیر زیر را دنبال کنید
WiFi_Robot_Esp8266_Android.zip\WiFi_robot_esp8266\app\build\outputs\apk
سلام خسته نباشید
ببخشید گوشی من سامسونگ a10 هستش و وقتی با نرم افزار به ربات وصل میشم فقط حرکت جلو و عقب دارم و دور زدنی در کار نیست!
و چرا نمیتونم با نرم افزار دیگه ای به ماژول وصل بشم؟
سلام
برای من هم همین مشکل را دارد.
نرم افزار را روی دو گوشی مختلف تست کردم اما باز فقط عقب و جلو می رود و امکان دور زدن یا تغییر سرعت و ایست ندارد.
لطفا راهنمایی فرمایید
خیلی ممنون
سلام فایل رو دانلود کردم؛ موقع اکسترکت کردن خطا میده:
! : Checksum error in the encrypted file \WiFi_Robot_Esp8266_Android\WiFi_robot_esp8266\build\generated\mockable-android-23.jar. Corrupt file or wrong password.
! The archive is corrupt
سلام ببخشید برای ماژول وای فای نباید به اینترنت وصل شویم. وقتی که برنامه را روی ماژول وای فای کمی کردم یک lpبه من دارد ولی ولی lp کار نکرد
سلام
نه نیازی نیست.
پس چرا کار نمی کند
اسم پسورد رو میشه بگین ممنون میشوم ؟
سلام
پسورد همه فایل ها http://www.farselectronic.ir می باشد.