پروژه آردوینو کنترل ربات با حرکت دست با سنسور شتاب سنج

محتویات
سلام. پروژه آردوینو کنترل ربات با حرکت دست با سنسور شتاب سنج را آماده کردیم. حتما فیلم عملکرد مدار رو ببینید !
پروژه آردوینو کنترل ربات با حرکت دست

ربات ها نقش مهمی در زندگی امروزی دارند. ربات ها در مبحث ساخت و ساز ، نظامی ، پزشکی ، تولید و … نقش دارند. بعد از ساخت برخی از ربات های مثل ربات های دنبال کننده، ربات کنترل شونده توسط کامپیوتر و … ما این ربات رو آماده کردیم . در این پروژه ما سرعت و جهت حرکت ربات رh با حرکت دستمان انتخاب میکنیم. در این پروژه از شتاب سنج استفاده میکنیم .
آموزش ربات ماشین آردوینو
ربات کنترل شونده با حرکت دست را به 2 قسمت تقسیم میکنیم .
- قسمت فرستنده : ما در قسمت فرستنده یک شتاب سنج و یک فرستنده RF داریم. همانطور که قبلا گفتیم این شتاب سنج خروجی را به صورت آنالوگ به ما میدهد. بنابراین در اینجا باید این داده های آنالوگ را به دیجیتال تبدیل کنیم. با تنظیم ولتاژ مرجع ما یک سیگنال دیجیتال دریافت میکنیم سپس این سیگنال را با رمز گذار HT12E رمز گذاری میکنیم و این اطلاعات رو با فرستنده RF به برد ربات ارسال میکنیم.
- قسمت گیرنده : ما از گیرنده RF برای دریافت اطلاعات استفاده کردیم و سپس این اطلاعات را به رمز گذار HT12D میدیم تا این داده های سریال دریافت شده را رمز گشایی کند و به آردوینو میفرستیم تا خوانده شود. موتور ها با توجه به داده هایی که آردوینو میدهد به حرکت در می آیند.
گیرنده و فرستنده رادیویی RF 433Mhz

اکثر ربات ها با استفاده از دکمه ، جوی استیک و … کنترل میشوند، ولی این ربات تنها نیاز به حرکت دست داریم تا حرکت کند. برای اتصال دست به ربات ما از یک فرستنده و گیرنده RF استفاده میکنیم. فرستنده رادیویی (RF) و شتاب سنج روی دست شما نصب میشوند. وقتی دست حرکت میکند، فرستنده اطلاعات را به آردوینو ارسال میکند تا ربات بتواند کار را انجام بدهد مثل حرکت به جلو ، چرخش ، توقف و … .
همچنین ببینید : آموزش ساخت ربات جوی استیک با آردوینو و نمایش سرعت ، مسافت طی شده و زاویه
شتاب سنج ADXL335

در این پروژه مهم ترین بخش ، شتاب سنج است. این دستگاه با استفاده از حسگر سطح پلی استایرن و سیگنال تهویه سیگنال برای اندازه گیری شتاب ساخته شده است. خروجی این دستگاه آنالوگ و متناسب با شتاب است. این دستگاه شتاب استاتیک گرانش را وقتی که ما به آن شیب دهیم اندازه گیری میکند و نتیجه را به شکل حرکت یا ارتعاش میدهد.
توضیحات پین های شتاب سنج :
- VCC : برق +5V باید به این پین وصل شود.
- X-OUT : این پین خروجی آنالوگ را در جهت x میدهد.
- Y-OUT : این پین خروجی آنالوگ را در جهت y میدهد.
- Z-OUT : این پین خروجی آنالوگ را در جهت z میدهد.
- GND : این پین باید به زمین (-) وصل شود.
- ST : این پین برای حساسیت سنسور استفاده میشود.
قطعات مورد نیاز این پروژه
قطعات مورد نیاز این پروژه را در لیست زیر میتوانید ببینید.
قطعات مورد نیاز فرستنده :
- شتاب سنج adxl335
- HT12E
- فرستنده RF 433MHz
- مقاومت 10 کیلو اهم – چهار عدد
- مقاومت 750 کیلو اهم
- آپ امپ LM324 – چهار عدد
قطعات مورد نیاز گیرنده :
- برد آردوینو Uno
- موتور های DC
- HT12D
- گیرنده RF 433MHz
- موتور درایور L293D
- LED
- مقاومت 1 کیلو اهم
- مقاومت 33 کیلو اهم
توضیحات کد پروژه
کد کامل در فایل دانلودی قرار داده شده است. ابتدا در 4 خط اول کد ما پین های سنسور ها را تعریف میکنیم.
#define FD 16 // حرکت به جلو #define BD 17 // حرکت به عقب #define LD 18 // حرکت به چپ #define RD 19 // حرکت به راست
سپس در 4 خط بعد پین های موتور ها را تنظیم میکنیم.
#define m11 3 // موتور چپ #define m12 4 // موتور جپ #define m21 5 // موتور راست #define m22 6 //موتور راست
در قسمت بعدی ما متغیر ها را برای هر کدام از حرکت ها تعریف میکنیم :
int temp1=digitalRead(FD); // متغیر برای حرکت به جلو int temp2=digitalRead(BD); // متغیر برای حرکت به عقب int temp3=digitalRead(LD); // متغیر برای حرکت به چپ int temp4=digitalRead(RD); // متغیر برای حرکت به راست
حالا ما برای نمونه یکی از اعمال ، به طور مثال چرخش به راست را توضیح میدهیم از قسمت سنسور تا قسمت موتور. ابتدا ما کد زیر را مینویسم. در کد زیر با توجه به متغیر هایی که تعریف کردیم متوجه میشوید که فقط temp4 یعنی حرکت به راست فعال است.
else if(temp1==0 && temp2==0 && temp3==0 && temp4==1) // هر وقت موتور راست قعال بود right(); // حرکت راست اجرا شود
حالا حرکت به راست یعنی right() را باید تعریف کنیم :
void right() // اجرای حرکت راست { digitalWrite(m11, LOW); // موتور سمت چپ غیرفعال digitalWrite(m12, LOW); digitalWrite(m21, HIGH); // موتور سمت راست فعال digitalWrite(m22, LOW); }
برای دانلود فایل ها باید حساب کاربری داشته باشید ثبت نام / ورود
سلام اون مقاومت های ده کیلو به صورت پتانسیو متر هستن یا مقاومت معمولی ؟! و اینکه اتصالشون کجاس چون به سه جا وصل شدن
سلام عزیز
پتانسیومتر هستند
دو پایه کناری پتانسیومتر به – و + منبع تغذیه متصل میشه و پایه وسط خروجی هست
سلام این گیرنده RF و فرستنده که عکسشو اینجا گذاشتید با فرستنده توی سایت فروشگاهتون متفاوته ایا اینا مشابه هم هستن ؟ اونی که توی فروشگاهتون هست پایه های کمتری داره !!!!!
سلام عزیز
عملکردشون یکسان هست اما مدلشون تفاوت داره
یه سوال دیگه هم داشتم این اپ امپ ها سر مثبتشون به بالای مقاومت وصل شده یا پایین ؟ چون توی شماتیک رسم شده تقریبا وسط هستش
سلام مجدد در مورد ht12e و ht12d نگفتید معادلی دارن ؟؟؟ چون توی سایت ها پیدا نکردم معادلی دارن که بشه از اونا استفاده کرد؟؟؟
سلام عزیز
بله میتونید از انکدر دیکدر های مشبه استفاده کنید دیتاشیت این دو قطعه را بخوانید ببینید در سایت های ایرانی نمونه مشابه موجود هست یا خیر
همچنین نوع موتور های DC رو نگفتید و تعدادش که چند تا باشه
به جای HT12D و ht12e از چه دیکدر و اندکدری استفاده کنیم
نوع موتور های دی سی با توجه به منبع تغذیه ای که انتخاب میکنید هست در تصویر شماتیک مشخص هست 2 موتور هست
سلام من میخواستم این پروژه رو بسازم توضیحات مربوط به قطعات یکم ناقصه مثلا برد uno r3 باشه ch همچنین اینکه چرخ ها و بردی که روش قطعات پیاده سازی میشن رو ننوشتید برای تهیه اینا باید چه کار کرد ؟!
سلام وقت بخیر
نوع برد اونو باشه نسخه r3 و ch تفاوتی ندارند
چرخ و ها و برد ها سلیقه ای هست با توجه به خلاقیت و نیاز خودتون مدل مناسب را تهیه کنید.
سلام ببخشید فایل برنامه بارگیری نمیشه
و اینکه فرقی نداره از چه برد اردوینوای استفاده کنیم؟
سلام عزیز
بررسی شد لینک سالم هست با یک مرورگر دیگر تست کنید
پروژه با اکثر برد های آردوینو سازگار هست
سلام خسته نباشید ممحون از سایت خوبتون میخوتستم بدونم که اگر ماکتی که کیت ها بر رویش سگار میشوند به طور دیگری باشد امکان خطا دادن هست یا خیر
ممنون از سایت خوبتون
سلام عزیز
خوشحالم که آیرنکس برای شما مفید بوده، خیر ارتباطی ندارد.
سلام من یه سوال داشتم در این پروژه سرعت هم قابل کنترل با حرکت دست هستش؟
با سلام واحترام
می تونم پی دی اف پروژه رو داشته باشم
چون برای کارشناسی همین پروژه رو ارائه دادم ولی استاد راهنما از پی دی اف آن اراد گرفتم ممنون میشم راهنمایی کنید
سلام مقاومت ها دقیقا باید همین اعداد باشه یا مهم نیست
و انکه HT12 رو ازکجا میشه پیدا کرد من حتی نمایندگی HOLTEK رفتم فقط SMD آی سی رو داشتن به نظرت از کجا بگیرم
سلام جناب. مقاومت ها که همین باشه بهتره. انکودر دیکودر رو فکر کنم از مدل های دیگه هم بتونید استفاده کنید اما مطمئن نیستم. و من بررسی کردم تو سایت های ایرانی موجود هست. و چه مشکلی داره از SMD استفاده کنید.
آخه SMD روی برد هزار سوراخ نمی شه لحیم کرد میشه اسم سایت رو بگید اگه امکان داره بازم ممنون که وقت گذاشتید
به ایمیلتون ارسال شد.
خیلی ممنون
منظورم اینه چند آپ امپ LM324 نیازه تا بگیرم؟
جناب در لیست قطعات نوشته شده 4 عدد آپ امپ Lm324 و در شماتیک هم 4 عدد آپ امپ LM324 مشاهده میشه
سلام
توبقیه سایت ها حتی خود سایت آردوینو برای کنترل با دست بجز این وسایل از آردوینو نانو هم استفاده کرده مطمئنید نیازی نیست؟
و اگر امکانش هست عکس از زیر برد لحیم شده بگذارید یا ایمیل کنید. بسیار ممنون می شم. در ضمن سایتتون فوق العاده است و پروژه هاتون بسیار جذاب
سلام جناب.
بله با توجه به شماتیک و لیست قطعات پیش برید هیچ مشکلی نیست.
مرسی نظر لطف شماست.
ببخشید ممنون بابت پاسخ دهی سریعتون
عکس از زیر برد لحیم شده نداشتید؟
ارادتمندم، نه متاسفانه عکسی نیست
خواهش می کنم فقط آپ امپ LM324 خودش کار 4 تا آپ امپ رو انجام می ده بازم 4 تا ازش بگیرم یا یه دونه؟
سلام. منظورتون رو متوجه نشدم، طبق شماتیک متصل کنید.
ممنونم از راهنمایی.فقط من کتابخانه کامل با حجم 800 مگ برای پروتئوس نصب کردم اما باز هم یک سری از قطعات رو برام نمایش نمیده. مثلا ماژول فرستنده گیرنده و یا انکودر و دیکودر. از کجا باید نصب کنم؟
سلام مجدد سیاوش عزیز. بجای انکودر و دیکودری که در این پروژه استفاده شده از M145026 و M145027 در پروتئوس استفاده کنید همون کار رو انجام میدن
سلام.به موارد زیر احتیاج دارم.
لیست کامل قطعات فرستنده و گیرنده.
کد فرستنده و گیرنده با توضیحات در قالب فایل تکست.
بعد میشه درباره نحوه پیاده سازی پروژه در پروتئوس هم بهم توضیح بدید?
سلام سیاوش عزیز. تمام موارد در فایل دانلودی موجود است. قسمت فرستنده کد ندارد و به صورت آنالوگ است. شماتیک مدار فرستنده و گیرنده در فایل دانلودی موجود است. شما میتوانید بر اساس شماتیک قطعات و اتصالا را در پروتئوس انجام دهید کار سختی نیست. لیست قطعات نیز آپدیت شده و به طور کامل در پست قرار گرفت.
سلام من کد های c این برنامه همراه با لیست قطعات رو لازم دارم اگر بفرستید ممنون میشم.
سلام. به ایمیلتون ارسال شده بخش Spam رو چک کنید
سلام مجدد لطفا لیست قطعات را بفرستید.یا ایمیل کنید.برنامه فرستنده و گیرنده به صورت فایل تکست را هم ممنون میشم ارسال کنید
همچنین اگر میشه ایمیل خودتان را بدهید
قطعات در پست قرار گرفت و برنامه به ایملیتون ارسال شد
سلام لطفا لیست قطعات این پروژه را اعلام بفرمائید
سلام دوست عزیز ، از اعتمادتون ممنونیم
میتونید لیست قطعات رو توی تصاویر شماتیک ببینید .
اگر باز هم نیاز به لیست داشتید همینجا اطلاع بدید تا براتون بفرستیم
روز خوش