آموزش رباتیک به زبان ساده و ساخت ربات

آموزش رباتیک

آموزش رباتیک به زبان ساده و ساخت ربات

در این صفحه شما آموزش رباتیک را خواهید دید. ربات های مقدماتی که در این صفحه آموزش داده شده اند را هر شخصی می تواند به راحتی بسازد.

Robot

برای ساخت ربات باید چند چیز را حتی در حد مبتدی بدانید:

1) الکترونیک (برای طراحی مدارات)

2) برنامه نویسی (برای برنامه دادن به ربات)

3) کنترل (برای کنترل حرکات ربات)

4) مکانیک (برای بستن قسمت های متحرک و مکانیکی)

سوالی در اینجا پیش می آید و آن این است که چرا برنامه نویسی باید بدانیم؟

اکثر ربات های امروزی دارای آی سی هستند که تمام عملیات ربات را انجام می دهد. نام این آی سی، میکروکنترلر می باشد. میکروکنترلر را با نام کامپیوتر تک تراشه ای می توان نام گذاری کرد. همانطور که می دانید کامپیوتر خانگی شامل CPU، RAM، ROM، Hard Disk، I\O(ورودی خروجی) و بعضی قسمت های داخلی دیگر است به طوری که می توان بسته به نیاز خودمان مقادیر آنها را تغییر داد ولی میکروکنترلر مقدار ثابتی از حافظه های بالا را شامل میشود. فرق میکروکنترلر (یا به اختصار میکرو) با کامپیوتر به صورت زیر می باشد:

1) مصرف توان: در کامپیوتر توان زیادی در حد 200 تا 300 وات تلف می شود و ولتاژ کاری کامپیوتر خیلی بالا است ولی میکرو مصرف توانی در حد صفر دارد و با ولتاژ بسیار پایین در حد 5 ولت کار می کند.

2) قیمت: برای ساخت یک دماسنج، قیمت کامپیوتر بسیار بالا است در حالی که می توان با قیمت ناچیز یک دماسنج با میکرو ساخت

3) اندازه: کامپیوتر حجم بسیار زیادی را اشغال می کند و وزن زیادی دارد بنابراین نمی توان از کامپیوتر در روبات نور یاب و رباتهای دیگر استفاده کرد.

4) فرکانس کاری کامپیوتر فوق العاده بالاست که به این فرکانس بالا در ساخت خیلی از ربات ها نیاز نداریم.

5) غالبا کامپیوتر برای انجام کارهای پیشرفته که میکرو و FPGA جوابگو نیستند استفاده می شود (مثلا برای انجام کارهای گرافیکی و یا استفاده از اینترنت)

6) به میکرو تک منظوره می گویند یعنی فقط یک عملیات انجام می دهد (مثلا فقط برای کنترل ربات استفاده می شود و یا فقط برای نمایش ساعت استفاده می شود) ولی کامپیوتر همه منظوره است و می تواند همزمان عملیات بسیار مختلفی را انجام دهد.

ما می توانیم با چند زبان برنامه بنویسیم:

1) بیسیک: این زبان به دلیل آنکه کلمات کلیدی زیادی دارد، فهمش برای کاربر آسان است بنابراین به اشخاص مبتدی یادگیری این زبان توصیه می شود. عمده اشکال این زبان این است که در نرم افزار های گوناگون دستورات مختلفی دارد. سطح این زبان بالا است و حدود 150 کلمه ی کلیدی دارد. (کلمات کلیدی مانند IF در زبان بیسک نمی توانند به جای اسم متغیر ها استفاده شوند)

2) زبان سی C: این زبان ساخت یافته است به این صورت که در نرم افزار های گوناگون دستورات مشابه دارد. این زبان سطح میانی دارد و حدود 30 کلمه ی کلیدی دارد.

3) پاسکال: این زبان مانند سی است ولی با آمدن زبان سی منسوخ شده است.

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

ما چند مدل میکروکنترلر داریم:

1)AVR: برای افراد مبتدی استفاده از این میکرو را توصیه می کنم

2)8051: قیمت پایینی دارد و برای کارهای کوچک تر استفاده می شود.

3)PIC: در ایران چندان محبوب نیست.

4) ARM: این میکروکنترلر در همه ی تلفن های همراه- کارت های گرافیک و غیره استفاده می شود و امکان نصب ویندوز روی آن وجود دارد. قیمت این میکروکنترلر گران تر از سایر میکروکنترلر ها است.

 

ربات نوریاب

این ربات چهار سنسور دارد که در شکل زیر چیدمان آنها را مشاهده می کنید:

 Robot

دانلود نقشه ی این ربات به همراه فایل HEX و فایل Proteus 

Robot

وقتی به سنسور یک، نور بتابد، ربات به سمت جلو (یا عقب) حرکت می کند و وقتی به سنسور چهار نور بتابد، ربات به سمت عقب (یا جلو) حرکت می کند. و دو سنسور دو و سه هم برای چرخش به سمت راست و یا چپ هستند. اگر به همه ی سنسور ها نور بتابد، ربات متوقف خواهد شد و اگر هیچ نوری هم به ربات نتابد، مجددا ربات متوقف می شود. این چهار سنسور باید به شکل L قرار بگیرند یعنی باید افقی قرار بگیرند نه عمودی. در ضمن مقدار حساسیت به نور برای هر چهار LDR قابل تنظیم است که با تغییر مقدار پتانسیومتر های 20K اهمی امکان پذیر است.

آی سی که موتور ها را راه اندازی می کند (به آن آی سی درایور می گویند) مدل L293D می باشد که باید پایه ی  8 آن را به تغذیه ی دوازده ولت متصل کنید. البته این تغذیه کمتر هم می تواند باشد (مثلا 9 ولت). این پایه را به سر خروجی آی سی 7805 وصل نکنید چون این آی سی داغ می شود و تلفات ایجاد می کند.

Robot

Robot

خازن های وصل شده به آی سی 7805 که یکی از آنها 100uFو دیگری 220uF است به این دلیل است که موتور های ربات هنگام روشن شدن جریان زیادی از باتری می کشند که همین باعث افت ولتاژ باتری در مدت کوتاهی می شود که در این صورت ممکن است میکرو هنگ کند به همین دلیل هنگام افت ولتاژ باتری این خازنها تخلیه می شوند و مانع از هنگ کردن میکرو خواهند شد.

پایه های 8 و 22 میکرو را به زمین وصل کنید (منظور از زمین در اینجا سر وسطی آی سی 7805 می باشد و سر وسطی آی سی 7805 به سر منفی باتری وصل می شود). پایه ی 7 میکرو را به خروجی آی سی 7805 که یک ولتاژ 5 ولت ثابت است وصل کنید (وقتی که قسمت فلزی آی سی 7805 به سمت پشت ما قرار دارد، پایه ی خروجی این آی سی سمت راست ما قرار دارد و پایه ی ورودی سمت چپ ما است).

برنامه ی این ربات به زبان بیسیک است و با برنامه ی Bascom AVR کامپایل شده است. اگر دستورات موجود در این برنامه را ببینید، متوجه می شوید که این دستورات بسیار ساده هستند.

6 thoughts on “آموزش رباتیک به زبان ساده و ساخت ربات

  1. آرزو says:

    سلام . کلاسها برای خانمها هم هست ؟؟؟
    چه مرکزی برای خانمها PCB و AVR آموزش میده
    ممنون میشم جواب بدید.

  2. ماهرخ صحرایی says:

    آقای بیگی ممنون از سایت عالی و خوبتون فقط اینکه من در سایت برای کلاس fpga ,و arm  و ,,ثبت نام کردم اما هنوز تماس نگرفتند باید چکار کنم؟ خودم باید حضوری بیایم؟

     

    • محمد رضا بیگی says:

      سلام

      کسی تماس نمیگیرد

      فقط هر هفته به ایمیل ها پاسخ داده می شود

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

  3. saeed says:

    سلام ممنون بابت مدار خیلی جالب بود .اگر امکانش هست فایل pcb  این مدار رو هم قرار بدید.

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *