واضی فایل

دانلود کتاب، جزوه، تحقیق | مرجع دانشجویی

واضی فایل

دانلود کتاب، جزوه، تحقیق | مرجع دانشجویی

مقاله درمورد- ساخت ربات ها

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 22

 

آموزش ساخت ربات (میکروکنترلر) 

میکروکنترلر چیست: میکروکنترلر رو درواقع می توان یه کامپیوتر کوچولو در قالب یه چیپ برای کنترل وسایل الکترونیکی (در اینجا ربات) تلقی کرد. تفاوت میکروکنترلر با میکروپروسسور در اینه که میکروکنترلر دارای یک CPU ٫مقدار محدودی RAM ٬ ROM ٬ پورت های I/O و تایمر در درون خود می باشد در صورتی که میکروپروسسور فقط یه CPU هست و شما باید RAM, ROM ,... رو به صورت اجزای جانبی به اون متصل کنید (درست مثل CPU کامپیوتر). برای همین میکروکنترلرها تک منظوره ولی میکروپروسسورها همه منظوره هستند. با این تفاسیر میکروکنترلرها دارای کارایی های خاص خودشون مثلا در ماشین لباسشویی٬ ماکروویو٬ تلفن و البته ربات هاو... هستند یعنی جایی که استفاده از میکروپروسسور نه از نظر کارایی و نه از نظر اقتصادی عقلانیه! تازه فهمیدیم میکرو یعنی چی

انتخاب میکرو(مناسب ربات ما:

در انتخاب میکرو فاکتورهای زیادی دخیله: ۱-هزینه  ۲-سرعت  ۳-کارایی و قابلیت ها  ۴-راحتی کار با آن و... در حال حاضر در بازار ایران میکروهای متنوعی ازجمله ۸۰۵۱ از اینتل٬ PIC از میکروچیپ تکنولوژی و AVR از شرکت ATMEL هواخواهان زیادی دارن. همچنین آمارها نشون داده که در ساخت ربات اکثرا از PIC استفاده شده (در آمریکا :)) ولی من می خوام این پروژه رو با AVR انجام بدم چون تقریبا کم هزینه (۳۵۰۰) هستش٬ هم کارایی های مناسبی داره٬ هم برنامه نویسی برا اون آسونه (هم C داره هم Basic تازه کلی هم نرم افزار Emulator, Simulator ,... داره) و تازه پروگرمر ائن بسیار ساده و کم خرجه. با این حال فکر نمی کنم نوع میکرو تفاوتی در نقشه مدار و.. بزاره بجز کد و کامپایلر میکرو که سعی می کنم مال PIC یا حتی ۸۰۵۱ رو هم در کنار AVR زمیمه کنم. پس کسایی که با AVR کار نکردن اصلا نگران نباشن.راستی یادم رفت بگم برا این ربات از AVR مدل Atmega32 استفاده خواهم کرد (مفت ۳۵۰۰ و برای آموزش برنامه نویسی اون با وجود کامپایلرهای متنوعی چون Bascom (بیسیک) و CodeVision (سی) من Bascom رو انتخاب می کنم تا تازه کارهای برنامه نویسی هم مشکلی نداشته باشن (بیسیک که دیگه کاری نداره!). فکر نمی کنم چیزی ناگفته مونده باشه! پس از جلسه بعد آموزش ساخت پروگرمر و یکم آموزش برنامه نویسی AVR ٬البته فقط در حد کار خودمون -ربات- رو خواهیم داشت.

جلسه قبل کمی در مورد میکرو و میکروی مناسب کار خودمون صحبت کردیم. این جلسه می خوام به طور کلی تر راجع به قابلیت های میکروی AVR بخصوص مدل Atmega32 صحبت کنم. بزارین بعضی از قابلیت های مهم مربوط به کار خودمون رو بصورت لیست بنویسم:

کارایی بالا و توان مصرف کم

سرعت بسیار بالا نسبت به سایر میکروها

32K حافظه فلش داخلی قابل برنامه ریزی

پایداری حافظه فلش: قابلیت 10000 بار نوشتن و پاک کردن

2K حافظه داخلی SRAM

2 تایمر-کانتر 8 بیتی و یک تایمر-کانتر 16 بیتی

.....

برنامه نویسی

Atmega32:همونطور که گفته بودم برای برنامه نویسی این میکرو از Basic و کامپایلر معروف Bascom استفاده می کنم (لینک دانلود این کامپایر رو آخر پست گذاشتم). چون من می خوام خیلی گزرا به چند تکنیک وتابع این زبان اون که در برنامه نویسی رباتمون استفاده میشه اشاره کنم اصلا وقت نمیشه درباره یکی یکی ابزارهای محیط این کامپایلر توضیح بدم. اما در آینده با آموزش پروپه های دیگه حتما اونا رو هم پوشش خواهم داد.

همونطور می بینید فقط 7 تا منو از قرار File, Edit, Program, Options, Tools, Window, Help داره. منوی File, Edit, Window, Help تمام برنامه های ویندوز که با هم مو نمی زنه پس اینا هیچ :). منوی Options هم که از اسمش پیداست برای تنضیمات کامپایلر و معرفی نوع و مدل میکرو و.. هست که البته هنگام پروگرام کردن میکرومون سراغش میایم و توضیحات کافی رو میدم. می مونه منوی Program که درواقع گزینه هایی برای کامپایل کد, Syntax Check و شبیه سازی داره که به مجرد شروع برنامه نویسی باهمینا باید سروکله بزنیم.حتما Bascom رو دانلود کنید و یکم وارسیش کنید چون پس فردا که برگشتم دیگه تفره نمی رم و دیگه آموزش کد نویسی رو خواهیم داشت که اون هم یکی دو جلسه بیشتر طول نمی کشه و بعد میریم سر مباحث الکترونیکی رباتمون. اما باور کنبد لذت برنامه نویسی و سروکله زدن با میکرو اونم AVR چیزی کم از ساخت ربوت نداره

بدنه یک برنامه در محیط

Bascom:منظور از بدنه حداقل کد یک برنامه هستش بدون هیچ فرمانی)  بدنه یک برنامه در محیط Bascom شامل تعیین نوع میکرو مورد استفاده٬ کریستال٬ پایان و گزینه های اختیاری دیگری است که در زیر معرفی میشن.

معرفی میکرو:

برای شروع یک برنامه در محیط Bascom ابتدا بایستی میکروی مورد نظر تعریف گردد. چون توصیه من در استفاده از مدل ATMEGA16|32|128 بود٬ بنابراین فعلا به علت زیق در همه چی فقط به تعریف همین ۳ مدل بسنده می کنم:

$REGFILE = VAR       'فرم کلی تعریف٫ "وار" یه رشته معرف مدل خاص میکروی مورد نظر هستش$REGFILE =  "M16def.dat"       'MEGA 16 MCU این برا مدل$REGFILE =  "M32def.dat"       'MEGA 32 MCU این برا مدل$REGFILE =  "M128def.dat"     'MEGA 128 MCU این برا مدل

کریستال:

برای مشخص کردن فرکانس کریستال (میکرو ها باید به یه قطعه خارجی بنام کریستال وصل بشن) استفاده شده برحسب هرتز از دستور CRYSTAL = X$ استفاده می نماییم X فرکانس کریستال استفاده شده بر حسب هرتز است. خوشبختانه AVR دارای یک کریستال 1MHZ داخلی هستش که واقعا یک نعمته! اما حتی برای استفاده از اون هم باید این دستور رو بکار ببریم. مثال:

$CRYSTAL = 100000        '1MHz internal$CRYSTAL = 140000        '14MHz external

یاداشت(اختیاری): گاهی نیاز است یاداشتهایی برای اطلاعات بیشتر در برنامه اضافه کنید٬ در Bascom هم مثل بیسیک می تونید با علامت " ' " یا REM اینکارو انجام بدید. درست مثل یادداشت های اضافی که من در مثالهای قسمتهای قبل استفاده کردم! مثال:

Print "Hello World"      'این دستور بعدا معرفی میشه  

REM این هم یه مدل دیگه از یادداشت اختیاریه

همچنین در پایان هر برنامه باید از کلمه END استفاده کنید که مثل یک حلقه بی پایان عمل می کنه (مثلا در سی باید همیشه یه حلقه درست کنی. یه کار تکراری) و دلیل استفادش چه در این کامپایر و برای این میکرو و چه در سایر کامپایلرها و برای میکروهای دیگه٬ اینه که سیستم برنامه میکرو با کامپیوتر فرق فوکوله و اگه از END یا حلقه بی پایان استفاده نکنیم برنامه همینطور میره پایین و سایر آدرس های حافظه میکرو رو به خیال ادامه برنامه میخونه که این باعث Error میشه دیگه! پس End یادتون نره!خوب دیگه از گزینه های اجباری بدنه تغریبا چیزی نموند و برای اینجلسه هم کافیه! جلسه بعد آموزش نحوه تعریف شرط و حلقه و ... در Bascom رو داریم پس حتما مطلب رو دنبال کنید.

پیکربندی پورتها:

همونطور که در شکل مقابل می بینید میکروی AVR (مدل ATMEGA32) داری ۴۰ پایه هستش که ۳۲ تا از پایه های اون می تونه برای چهارتا پورت موجود در اون استفاده میشه. این ۴ پورت مانند شکل به صورت PA, PB, PC, PD نامگزاری شده اند که البته هر کدام از این پورتها دارای ۸ پین (۸X۴=۳۲) هستند. که درواقع هر پورت رو باید به صورت یک بایت در نظر گرفت و هر پین رو به صورت یک بیت (حتما می دونید هر بایت، ۸ بیت هستش!) فرض کرد و هر کدوم از این ۳۲ پایه میکرو مربوط به پین خاصی از یک پورت است. در Bascom نماد پورتها به صورت portx که X یکی از حروف A..D هست بکار میره و نماد پین های هر پورت هم به صورت portx.y که در اینجا X مثل بالا هستش و y شماره پین از ۰ تا ۷ میباشه (۰تا۷ میشه ۸تا). مثال:

 PortB = 10         'set portb to 10 PortC.0 = 0        'Set pin 0 of portC to 0 PortC.4 = 1        'Set pin 4 of PortC to 1

نکته دیگه که باید دقت کنید اینه که پورت ها یک بایتی هستند یعنی نهایت عددی که میشه در اونا قرار داد ۲(۱۱۱۱۱۱۱۱) درمبنای باینری یا ۲۵۵ در مبنای دهدهی خودمون هست. وقتی عدد ۲(۱۱۱۱۱۱۱۱) یا ۲۵۶ رو مثلا در پورت سی قرار بدیم تمام پین های این پورت ۱ میشن و اگر باز عدد ۱۷ معادل ۲(۰۰۰۱۰۰۰۱) رو در اون قرار بدیم (PortC=17) انگاه پینهای ۰ و ۴ این پورت یک خواهند شد. فکر کنم فهمیده باشید قضیه از چه قراره :) فقط باید یکم تبدیل باینری به دهدهی و برعکس رو بلد باشید... اما اگر هنوز کار میکروکنترلر رو درک نکردید و اصلا نمیدونید حالا یک شدن هر پین به چه درد می خوره اصلا نگران نباشید چون به موقع توضیح خواهم داد

روباتیک

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

 

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



خرید و دانلود مقاله درمورد- ساخت ربات ها


تحقیق. ساخت ربات ها

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 22

 

آموزش ساخت ربات (میکروکنترلر) 

میکروکنترلر چیست: میکروکنترلر رو درواقع می توان یه کامپیوتر کوچولو در قالب یه چیپ برای کنترل وسایل الکترونیکی (در اینجا ربات) تلقی کرد. تفاوت میکروکنترلر با میکروپروسسور در اینه که میکروکنترلر دارای یک CPU ٫مقدار محدودی RAM ٬ ROM ٬ پورت های I/O و تایمر در درون خود می باشد در صورتی که میکروپروسسور فقط یه CPU هست و شما باید RAM, ROM ,... رو به صورت اجزای جانبی به اون متصل کنید (درست مثل CPU کامپیوتر). برای همین میکروکنترلرها تک منظوره ولی میکروپروسسورها همه منظوره هستند. با این تفاسیر میکروکنترلرها دارای کارایی های خاص خودشون مثلا در ماشین لباسشویی٬ ماکروویو٬ تلفن و البته ربات هاو... هستند یعنی جایی که استفاده از میکروپروسسور نه از نظر کارایی و نه از نظر اقتصادی عقلانیه! تازه فهمیدیم میکرو یعنی چی

انتخاب میکرو(مناسب ربات ما:

در انتخاب میکرو فاکتورهای زیادی دخیله: ۱-هزینه  ۲-سرعت  ۳-کارایی و قابلیت ها  ۴-راحتی کار با آن و... در حال حاضر در بازار ایران میکروهای متنوعی ازجمله ۸۰۵۱ از اینتل٬ PIC از میکروچیپ تکنولوژی و AVR از شرکت ATMEL هواخواهان زیادی دارن. همچنین آمارها نشون داده که در ساخت ربات اکثرا از PIC استفاده شده (در آمریکا :)) ولی من می خوام این پروژه رو با AVR انجام بدم چون تقریبا کم هزینه (۳۵۰۰) هستش٬ هم کارایی های مناسبی داره٬ هم برنامه نویسی برا اون آسونه (هم C داره هم Basic تازه کلی هم نرم افزار Emulator, Simulator ,... داره) و تازه پروگرمر ائن بسیار ساده و کم خرجه. با این حال فکر نمی کنم نوع میکرو تفاوتی در نقشه مدار و.. بزاره بجز کد و کامپایلر میکرو که سعی می کنم مال PIC یا حتی ۸۰۵۱ رو هم در کنار AVR زمیمه کنم. پس کسایی که با AVR کار نکردن اصلا نگران نباشن.راستی یادم رفت بگم برا این ربات از AVR مدل Atmega32 استفاده خواهم کرد (مفت ۳۵۰۰ و برای آموزش برنامه نویسی اون با وجود کامپایلرهای متنوعی چون Bascom (بیسیک) و CodeVision (سی) من Bascom رو انتخاب می کنم تا تازه کارهای برنامه نویسی هم مشکلی نداشته باشن (بیسیک که دیگه کاری نداره!). فکر نمی کنم چیزی ناگفته مونده باشه! پس از جلسه بعد آموزش ساخت پروگرمر و یکم آموزش برنامه نویسی AVR ٬البته فقط در حد کار خودمون -ربات- رو خواهیم داشت.

جلسه قبل کمی در مورد میکرو و میکروی مناسب کار خودمون صحبت کردیم. این جلسه می خوام به طور کلی تر راجع به قابلیت های میکروی AVR بخصوص مدل Atmega32 صحبت کنم. بزارین بعضی از قابلیت های مهم مربوط به کار خودمون رو بصورت لیست بنویسم:

کارایی بالا و توان مصرف کم

سرعت بسیار بالا نسبت به سایر میکروها

32K حافظه فلش داخلی قابل برنامه ریزی

پایداری حافظه فلش: قابلیت 10000 بار نوشتن و پاک کردن

2K حافظه داخلی SRAM

2 تایمر-کانتر 8 بیتی و یک تایمر-کانتر 16 بیتی

.....

برنامه نویسی

Atmega32:همونطور که گفته بودم برای برنامه نویسی این میکرو از Basic و کامپایلر معروف Bascom استفاده می کنم (لینک دانلود این کامپایر رو آخر پست گذاشتم). چون من می خوام خیلی گزرا به چند تکنیک وتابع این زبان اون که در برنامه نویسی رباتمون استفاده میشه اشاره کنم اصلا وقت نمیشه درباره یکی یکی ابزارهای محیط این کامپایلر توضیح بدم. اما در آینده با آموزش پروپه های دیگه حتما اونا رو هم پوشش خواهم داد.

همونطور می بینید فقط 7 تا منو از قرار File, Edit, Program, Options, Tools, Window, Help داره. منوی File, Edit, Window, Help تمام برنامه های ویندوز که با هم مو نمی زنه پس اینا هیچ :). منوی Options هم که از اسمش پیداست برای تنضیمات کامپایلر و معرفی نوع و مدل میکرو و.. هست که البته هنگام پروگرام کردن میکرومون سراغش میایم و توضیحات کافی رو میدم. می مونه منوی Program که درواقع گزینه هایی برای کامپایل کد, Syntax Check و شبیه سازی داره که به مجرد شروع برنامه نویسی باهمینا باید سروکله بزنیم.حتما Bascom رو دانلود کنید و یکم وارسیش کنید چون پس فردا که برگشتم دیگه تفره نمی رم و دیگه آموزش کد نویسی رو خواهیم داشت که اون هم یکی دو جلسه بیشتر طول نمی کشه و بعد میریم سر مباحث الکترونیکی رباتمون. اما باور کنبد لذت برنامه نویسی و سروکله زدن با میکرو اونم AVR چیزی کم از ساخت ربوت نداره

بدنه یک برنامه در محیط

Bascom:منظور از بدنه حداقل کد یک برنامه هستش بدون هیچ فرمانی)  بدنه یک برنامه در محیط Bascom شامل تعیین نوع میکرو مورد استفاده٬ کریستال٬ پایان و گزینه های اختیاری دیگری است که در زیر معرفی میشن.

معرفی میکرو:

برای شروع یک برنامه در محیط Bascom ابتدا بایستی میکروی مورد نظر تعریف گردد. چون توصیه من در استفاده از مدل ATMEGA16|32|128 بود٬ بنابراین فعلا به علت زیق در همه چی فقط به تعریف همین ۳ مدل بسنده می کنم:

$REGFILE = VAR       'فرم کلی تعریف٫ "وار" یه رشته معرف مدل خاص میکروی مورد نظر هستش$REGFILE =  "M16def.dat"       'MEGA 16 MCU این برا مدل$REGFILE =  "M32def.dat"       'MEGA 32 MCU این برا مدل$REGFILE =  "M128def.dat"     'MEGA 128 MCU این برا مدل

کریستال:

برای مشخص کردن فرکانس کریستال (میکرو ها باید به یه قطعه خارجی بنام کریستال وصل بشن) استفاده شده برحسب هرتز از دستور CRYSTAL = X$ استفاده می نماییم X فرکانس کریستال استفاده شده بر حسب هرتز است. خوشبختانه AVR دارای یک کریستال 1MHZ داخلی هستش که واقعا یک نعمته! اما حتی برای استفاده از اون هم باید این دستور رو بکار ببریم. مثال:

$CRYSTAL = 100000        '1MHz internal$CRYSTAL = 140000        '14MHz external

یاداشت(اختیاری): گاهی نیاز است یاداشتهایی برای اطلاعات بیشتر در برنامه اضافه کنید٬ در Bascom هم مثل بیسیک می تونید با علامت " ' " یا REM اینکارو انجام بدید. درست مثل یادداشت های اضافی که من در مثالهای قسمتهای قبل استفاده کردم! مثال:

Print "Hello World"      'این دستور بعدا معرفی میشه  

REM این هم یه مدل دیگه از یادداشت اختیاریه

همچنین در پایان هر برنامه باید از کلمه END استفاده کنید که مثل یک حلقه بی پایان عمل می کنه (مثلا در سی باید همیشه یه حلقه درست کنی. یه کار تکراری) و دلیل استفادش چه در این کامپایر و برای این میکرو و چه در سایر کامپایلرها و برای میکروهای دیگه٬ اینه که سیستم برنامه میکرو با کامپیوتر فرق فوکوله و اگه از END یا حلقه بی پایان استفاده نکنیم برنامه همینطور میره پایین و سایر آدرس های حافظه میکرو رو به خیال ادامه برنامه میخونه که این باعث Error میشه دیگه! پس End یادتون نره!خوب دیگه از گزینه های اجباری بدنه تغریبا چیزی نموند و برای اینجلسه هم کافیه! جلسه بعد آموزش نحوه تعریف شرط و حلقه و ... در Bascom رو داریم پس حتما مطلب رو دنبال کنید.

پیکربندی پورتها:

همونطور که در شکل مقابل می بینید میکروی AVR (مدل ATMEGA32) داری ۴۰ پایه هستش که ۳۲ تا از پایه های اون می تونه برای چهارتا پورت موجود در اون استفاده میشه. این ۴ پورت مانند شکل به صورت PA, PB, PC, PD نامگزاری شده اند که البته هر کدام از این پورتها دارای ۸ پین (۸X۴=۳۲) هستند. که درواقع هر پورت رو باید به صورت یک بایت در نظر گرفت و هر پین رو به صورت یک بیت (حتما می دونید هر بایت، ۸ بیت هستش!) فرض کرد و هر کدوم از این ۳۲ پایه میکرو مربوط به پین خاصی از یک پورت است. در Bascom نماد پورتها به صورت portx که X یکی از حروف A..D هست بکار میره و نماد پین های هر پورت هم به صورت portx.y که در اینجا X مثل بالا هستش و y شماره پین از ۰ تا ۷ میباشه (۰تا۷ میشه ۸تا). مثال:

 PortB = 10         'set portb to 10 PortC.0 = 0        'Set pin 0 of portC to 0 PortC.4 = 1        'Set pin 4 of PortC to 1

نکته دیگه که باید دقت کنید اینه که پورت ها یک بایتی هستند یعنی نهایت عددی که میشه در اونا قرار داد ۲(۱۱۱۱۱۱۱۱) درمبنای باینری یا ۲۵۵ در مبنای دهدهی خودمون هست. وقتی عدد ۲(۱۱۱۱۱۱۱۱) یا ۲۵۶ رو مثلا در پورت سی قرار بدیم تمام پین های این پورت ۱ میشن و اگر باز عدد ۱۷ معادل ۲(۰۰۰۱۰۰۰۱) رو در اون قرار بدیم (PortC=17) انگاه پینهای ۰ و ۴ این پورت یک خواهند شد. فکر کنم فهمیده باشید قضیه از چه قراره :) فقط باید یکم تبدیل باینری به دهدهی و برعکس رو بلد باشید... اما اگر هنوز کار میکروکنترلر رو درک نکردید و اصلا نمیدونید حالا یک شدن هر پین به چه درد می خوره اصلا نگران نباشید چون به موقع توضیح خواهم داد

روباتیک

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

 

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



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


تحقیق: ساخت ربات ها

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 22

 

آموزش ساخت ربات (میکروکنترلر) 

میکروکنترلر چیست: میکروکنترلر رو درواقع می توان یه کامپیوتر کوچولو در قالب یه چیپ برای کنترل وسایل الکترونیکی (در اینجا ربات) تلقی کرد. تفاوت میکروکنترلر با میکروپروسسور در اینه که میکروکنترلر دارای یک CPU ٫مقدار محدودی RAM ٬ ROM ٬ پورت های I/O و تایمر در درون خود می باشد در صورتی که میکروپروسسور فقط یه CPU هست و شما باید RAM, ROM ,... رو به صورت اجزای جانبی به اون متصل کنید (درست مثل CPU کامپیوتر). برای همین میکروکنترلرها تک منظوره ولی میکروپروسسورها همه منظوره هستند. با این تفاسیر میکروکنترلرها دارای کارایی های خاص خودشون مثلا در ماشین لباسشویی٬ ماکروویو٬ تلفن و البته ربات هاو... هستند یعنی جایی که استفاده از میکروپروسسور نه از نظر کارایی و نه از نظر اقتصادی عقلانیه! تازه فهمیدیم میکرو یعنی چی

انتخاب میکرو(مناسب ربات ما:

در انتخاب میکرو فاکتورهای زیادی دخیله: ۱-هزینه  ۲-سرعت  ۳-کارایی و قابلیت ها  ۴-راحتی کار با آن و... در حال حاضر در بازار ایران میکروهای متنوعی ازجمله ۸۰۵۱ از اینتل٬ PIC از میکروچیپ تکنولوژی و AVR از شرکت ATMEL هواخواهان زیادی دارن. همچنین آمارها نشون داده که در ساخت ربات اکثرا از PIC استفاده شده (در آمریکا :)) ولی من می خوام این پروژه رو با AVR انجام بدم چون تقریبا کم هزینه (۳۵۰۰) هستش٬ هم کارایی های مناسبی داره٬ هم برنامه نویسی برا اون آسونه (هم C داره هم Basic تازه کلی هم نرم افزار Emulator, Simulator ,... داره) و تازه پروگرمر ائن بسیار ساده و کم خرجه. با این حال فکر نمی کنم نوع میکرو تفاوتی در نقشه مدار و.. بزاره بجز کد و کامپایلر میکرو که سعی می کنم مال PIC یا حتی ۸۰۵۱ رو هم در کنار AVR زمیمه کنم. پس کسایی که با AVR کار نکردن اصلا نگران نباشن.راستی یادم رفت بگم برا این ربات از AVR مدل Atmega32 استفاده خواهم کرد (مفت ۳۵۰۰ و برای آموزش برنامه نویسی اون با وجود کامپایلرهای متنوعی چون Bascom (بیسیک) و CodeVision (سی) من Bascom رو انتخاب می کنم تا تازه کارهای برنامه نویسی هم مشکلی نداشته باشن (بیسیک که دیگه کاری نداره!). فکر نمی کنم چیزی ناگفته مونده باشه! پس از جلسه بعد آموزش ساخت پروگرمر و یکم آموزش برنامه نویسی AVR ٬البته فقط در حد کار خودمون -ربات- رو خواهیم داشت.

جلسه قبل کمی در مورد میکرو و میکروی مناسب کار خودمون صحبت کردیم. این جلسه می خوام به طور کلی تر راجع به قابلیت های میکروی AVR بخصوص مدل Atmega32 صحبت کنم. بزارین بعضی از قابلیت های مهم مربوط به کار خودمون رو بصورت لیست بنویسم:

کارایی بالا و توان مصرف کم

سرعت بسیار بالا نسبت به سایر میکروها

32K حافظه فلش داخلی قابل برنامه ریزی

پایداری حافظه فلش: قابلیت 10000 بار نوشتن و پاک کردن

2K حافظه داخلی SRAM

2 تایمر-کانتر 8 بیتی و یک تایمر-کانتر 16 بیتی

.....

برنامه نویسی

Atmega32:همونطور که گفته بودم برای برنامه نویسی این میکرو از Basic و کامپایلر معروف Bascom استفاده می کنم (لینک دانلود این کامپایر رو آخر پست گذاشتم). چون من می خوام خیلی گزرا به چند تکنیک وتابع این زبان اون که در برنامه نویسی رباتمون استفاده میشه اشاره کنم اصلا وقت نمیشه درباره یکی یکی ابزارهای محیط این کامپایلر توضیح بدم. اما در آینده با آموزش پروپه های دیگه حتما اونا رو هم پوشش خواهم داد.

همونطور می بینید فقط 7 تا منو از قرار File, Edit, Program, Options, Tools, Window, Help داره. منوی File, Edit, Window, Help تمام برنامه های ویندوز که با هم مو نمی زنه پس اینا هیچ :). منوی Options هم که از اسمش پیداست برای تنضیمات کامپایلر و معرفی نوع و مدل میکرو و.. هست که البته هنگام پروگرام کردن میکرومون سراغش میایم و توضیحات کافی رو میدم. می مونه منوی Program که درواقع گزینه هایی برای کامپایل کد, Syntax Check و شبیه سازی داره که به مجرد شروع برنامه نویسی باهمینا باید سروکله بزنیم.حتما Bascom رو دانلود کنید و یکم وارسیش کنید چون پس فردا که برگشتم دیگه تفره نمی رم و دیگه آموزش کد نویسی رو خواهیم داشت که اون هم یکی دو جلسه بیشتر طول نمی کشه و بعد میریم سر مباحث الکترونیکی رباتمون. اما باور کنبد لذت برنامه نویسی و سروکله زدن با میکرو اونم AVR چیزی کم از ساخت ربوت نداره

بدنه یک برنامه در محیط

Bascom:منظور از بدنه حداقل کد یک برنامه هستش بدون هیچ فرمانی)  بدنه یک برنامه در محیط Bascom شامل تعیین نوع میکرو مورد استفاده٬ کریستال٬ پایان و گزینه های اختیاری دیگری است که در زیر معرفی میشن.

معرفی میکرو:

برای شروع یک برنامه در محیط Bascom ابتدا بایستی میکروی مورد نظر تعریف گردد. چون توصیه من در استفاده از مدل ATMEGA16|32|128 بود٬ بنابراین فعلا به علت زیق در همه چی فقط به تعریف همین ۳ مدل بسنده می کنم:

$REGFILE = VAR       'فرم کلی تعریف٫ "وار" یه رشته معرف مدل خاص میکروی مورد نظر هستش$REGFILE =  "M16def.dat"       'MEGA 16 MCU این برا مدل$REGFILE =  "M32def.dat"       'MEGA 32 MCU این برا مدل$REGFILE =  "M128def.dat"     'MEGA 128 MCU این برا مدل

کریستال:

برای مشخص کردن فرکانس کریستال (میکرو ها باید به یه قطعه خارجی بنام کریستال وصل بشن) استفاده شده برحسب هرتز از دستور CRYSTAL = X$ استفاده می نماییم X فرکانس کریستال استفاده شده بر حسب هرتز است. خوشبختانه AVR دارای یک کریستال 1MHZ داخلی هستش که واقعا یک نعمته! اما حتی برای استفاده از اون هم باید این دستور رو بکار ببریم. مثال:

$CRYSTAL = 100000        '1MHz internal$CRYSTAL = 140000        '14MHz external

یاداشت(اختیاری): گاهی نیاز است یاداشتهایی برای اطلاعات بیشتر در برنامه اضافه کنید٬ در Bascom هم مثل بیسیک می تونید با علامت " ' " یا REM اینکارو انجام بدید. درست مثل یادداشت های اضافی که من در مثالهای قسمتهای قبل استفاده کردم! مثال:

Print "Hello World"      'این دستور بعدا معرفی میشه  

REM این هم یه مدل دیگه از یادداشت اختیاریه

همچنین در پایان هر برنامه باید از کلمه END استفاده کنید که مثل یک حلقه بی پایان عمل می کنه (مثلا در سی باید همیشه یه حلقه درست کنی. یه کار تکراری) و دلیل استفادش چه در این کامپایر و برای این میکرو و چه در سایر کامپایلرها و برای میکروهای دیگه٬ اینه که سیستم برنامه میکرو با کامپیوتر فرق فوکوله و اگه از END یا حلقه بی پایان استفاده نکنیم برنامه همینطور میره پایین و سایر آدرس های حافظه میکرو رو به خیال ادامه برنامه میخونه که این باعث Error میشه دیگه! پس End یادتون نره!خوب دیگه از گزینه های اجباری بدنه تغریبا چیزی نموند و برای اینجلسه هم کافیه! جلسه بعد آموزش نحوه تعریف شرط و حلقه و ... در Bascom رو داریم پس حتما مطلب رو دنبال کنید.

پیکربندی پورتها:

همونطور که در شکل مقابل می بینید میکروی AVR (مدل ATMEGA32) داری ۴۰ پایه هستش که ۳۲ تا از پایه های اون می تونه برای چهارتا پورت موجود در اون استفاده میشه. این ۴ پورت مانند شکل به صورت PA, PB, PC, PD نامگزاری شده اند که البته هر کدام از این پورتها دارای ۸ پین (۸X۴=۳۲) هستند. که درواقع هر پورت رو باید به صورت یک بایت در نظر گرفت و هر پین رو به صورت یک بیت (حتما می دونید هر بایت، ۸ بیت هستش!) فرض کرد و هر کدوم از این ۳۲ پایه میکرو مربوط به پین خاصی از یک پورت است. در Bascom نماد پورتها به صورت portx که X یکی از حروف A..D هست بکار میره و نماد پین های هر پورت هم به صورت portx.y که در اینجا X مثل بالا هستش و y شماره پین از ۰ تا ۷ میباشه (۰تا۷ میشه ۸تا). مثال:

 PortB = 10         'set portb to 10 PortC.0 = 0        'Set pin 0 of portC to 0 PortC.4 = 1        'Set pin 4 of PortC to 1

نکته دیگه که باید دقت کنید اینه که پورت ها یک بایتی هستند یعنی نهایت عددی که میشه در اونا قرار داد ۲(۱۱۱۱۱۱۱۱) درمبنای باینری یا ۲۵۵ در مبنای دهدهی خودمون هست. وقتی عدد ۲(۱۱۱۱۱۱۱۱) یا ۲۵۶ رو مثلا در پورت سی قرار بدیم تمام پین های این پورت ۱ میشن و اگر باز عدد ۱۷ معادل ۲(۰۰۰۱۰۰۰۱) رو در اون قرار بدیم (PortC=17) انگاه پینهای ۰ و ۴ این پورت یک خواهند شد. فکر کنم فهمیده باشید قضیه از چه قراره :) فقط باید یکم تبدیل باینری به دهدهی و برعکس رو بلد باشید... اما اگر هنوز کار میکروکنترلر رو درک نکردید و اصلا نمیدونید حالا یک شدن هر پین به چه درد می خوره اصلا نگران نباشید چون به موقع توضیح خواهم داد

روباتیک

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

 

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



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


ربات افزایش مخاطب در تلگرام

ربات افزایش مخاطب در تلگرام

ربات افزایش مخاطب در تلگرام

شما با کمک این ربات میتوانید ممبر های خود را افزایش دهید و انها را در کانال و گروه خود عضو کنید

شما با این ربات ، روزانه میتوانید 1000 عضو جدید به کانال خود اضافه کنید

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

در صورت  هرگرنه مشکل یه ایدی تلگرام داخل فایل اموزش در ارتباط باشید

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

 

و کاربر میتواند تنها با یک دستور، تمام افرادی که شماره خود را شیر میکند را به لیست ممبر های خود اضافه کن

شیوه ی عملکرد این ربات چگونه است؟

پس از خرید ربات ، ربات خود را در گروه های شیر اکانت عضو کنید و ادامه کار را به ربات بسپارید

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

این کار بصورت خودکار و ساعت شبانه روز انجام میشود و ربات روزانه ۱۰۰ الی 1000 ممبر جمع آوری کرده و کاربر میتواند به راحتی ممبر ها را در گروه های خود اضافه کند

 

ربات افزایش مخاطب در تلگرام

 

 

 

 

 

ربات افزایش مخاطب در تلگرام

 

 

ربات افزایش عضو،ربات،ربات تبلیغ گر، ربات ادد ممبر ،ربات تلگرام ،ربات تبلیغ در تلگرام،ربات افزایش ممبر،ربات ممبرگیر،ربات رایگان تلگرام،فروش ربات ممبرگیر،ربات،تلگرام،ممبرتلگرام،افزایش غضو تلگرام،شماره مجازی روسیه،شماره مجازی تلگرام،افزایش ممبر کانال،افزایش عضو کانال،تبلیغ در تلگرام،ربات تبلیغگر،ممبر رایگان،ممبر گیر،اقزایش مخاطب تلگرام،ربات افزایش مخاطب

 



خرید و دانلود ربات افزایش مخاطب در تلگرام


پروژه پایان ترم کارشناسی رباتیک doc

پروژه پایان ترم کارشناسی رباتیک doc

پروژه رباتیک

بسیار کامل و جدید ، بدون نمونه مشابه در سطح وب ، دارای 79 صفحه مفید در قالب word (قابل ویرایش ) ، دارای فهرست متن ، اشکال و جدول ، ویرایش شده بر اساس قواعد دانشگاهی آماده چاپ

 

 

چکیده

 

امروزه 90% ربات ها ، ربات های صنعتی هستند، یعنی ربات هایی که در کارخانه ها، آزمایشگاها، انبارها، نیروگاها، بیمارستان ها و بخش های مشابه بکار گرفته می شوند.

 

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

 

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

 

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

 

 

فهرست مطالب

فصل اول 0                                   

1. مقدمه 1

2.تعریف ربات 2

3.دسته بندی رباتها 2

 1-3.دسته بندی اتحادیه ربات های ژاپنی 2

 2-3.دسته بندی موسسه رباتیک آمریکا 4

 3-3.دسته بندی اتحادیه فرانسوی ربات های صنعتی4

4.اجزای اصلی یک ربات 4

   1-4.بازوی مکانیکی ماهر 4

   2-4.سنسورها 6

   3-4.کنترلر 6

   4-4.واحد تبدیل توان 8

   5-4.محرک مفاصل 8

5.طبقه بندی رباتها 9

   1-5.از نقطه نظر کاربرد 9

       1-1-5.رباتهای صنعتی 9

       2-1-5.رباتهای شخصی و علمی 10

       3-1-5.رباتهای نظامی 10

   2-5.از نقطه نظر استراتژی کنترل در نسلهای ربات10

       1-2-5.نسل اول 10

       2-2-5.نسل دوم 11

       3-2-5.نسل سوم 12

       4-2-5.نسل چهارم13

   3-5.از نقطه نظر محرک مفصل ها 15

       1-3-5.سیستمهای الکتریکی 15

          1-1-3-5.موتورهای DC 15

          2-1-3-5.مقایسه موتورهای DC 16

          3-1-3-5.موتورهای AC 17

          4-1-3-5.مزایا و معایب سیستمهای الکتریکی17

       2-3-5.سیستمهای هیدرولیکی 17

          1-2-3-5.مزایا و معایب سیستمهای هیدرولیکی18

       3-3-5.سیستمهای پنوماتیکی 18

          1-3-3-5.مزایا و معایب سیستمهای پنوماتیکی19

   4-5.از نقطه نظر هندسه حرکت 19

       1-4-5.مختصات کارتزین 19

       2-4-5.مختصات استوانه ای 20

       3-4-5.مختصات کروی 21

       4-4-5.مختصات دورانی 21

   5-5.از نقطه نظر کنترل حرکت 22

       1-5-5.کنترل غیر سرو مکانیزم 23

       2-5-5.کنترل سرو مکانیزم 24

          1-2-5-5.روش کنترلی نقطه به نقطه 25

          2-2-5-5.روش کنترلی مسیر پیوسته 26

6.مختصات ربات 27

   1-6.تعداد محور ها 27

V

   2-6.ظرفیت حمل بار و حداکثر سرعت 28

   3-6.دسترسی و تحریک 28

   4-6.جهت گیری دست 28

   5-6.قابلیت تکرار و دقت 29

7.مشخصات رباتهای صنعتی 29

سیستمهای انتقال قدرت 30

   1-8.انواع چرخ دنده 30

       1-1-8.چرخ دنده های ساده یا صاف 30

       2-1-8.جرخ دنده های حلزونی 31

       3-1-8.جرخ دنده های مار پیچ 31

       4-1-8.چرخ دنده های مخروطی 31

   2-8.پیچ های هدایت 32

   3-8.پیچ های ساچمه ای یا بلبرینگی 33

   4-8.محرک های منظم 34

   5-8.اجزای مکانیکی انعطاف پذیر(تسمه ها 36

       1-5-8.تسمه تخت 37

       2-5-8.تسمه های ذوزنقه ای  37

       3-5-8.تسمه های دندانه دار 38

   6-8.زنجیر ها و چرخ زنجیر ها 38

   7-8.کابل یا طناب سیمی 38

   8-8.کوپلر ها 39

   9-8.بادامک ها 40

9.مچ ها 41

    1-9.پیکر بندی های مچ 41

عوامل نهایی 43

   1-10.گیره ها 44

   2-10.تقسیم بندی و مقاسه گیره ها 46

   3-10.تقسیم بندی گیره ها بر اساس نحوۀ قرار دادن جسم48

       1-3-10.Relocating End – Effectores 48

       2-3-10.Aligning End – Effectores 49

       3-3-10.Locating End – Effectores 49

       4-3-10.Fixing End – Effectores 49

   4-10.تقسیم بندی گیره ها بر اساس نحوه کنترل49

       1-4-10.عوامل نهایی غیر قابل کنترل 49

       2-4-10.عوامل نهایی تحت کنترل 50

       3-4-10.عوامل نهایی ردیفی ثابت 50

       4-4-10.عوامل نهایی قابل تنظیم 50

   5-10.تقسیم بندی گیره ها بر اساس تعداد حمل بار51

       1-5-10.یک موقعیته 51

       2-5-10.چند موقعیته 51

          1-2-5-10. عملکرد متوالی 51

          2-2-5-10.عملکرد موازی 52

          3-2-5-10.عملکرد ترکیبی 52

   6-10.تقسیم بندی گیره ها بر اساس نحوۀ اتصال به مچ52

       1-6-10.غیر قابل جدا شدن 52

       2-6-10.قابل جایگزینی 52

       3-6-10. قابل جدا شدن سریع 52

       4-6-10.قابل جدا شدن اتوماتیک 53

فصل دوم 54

11.سیستم بینایی ربات 55

12.دوربینCMU  57

13.ارتباط سریال 58

14.برنامۀ کاربردی VB  61

15.نصب دوربین CMU به ربات 65

16. تراشۀ PIC16F84  66

1-16.برنامۀ 1 66

2-16.برنامۀ 2 70

17.نور فلورسنت و نور التهابی 70

18.خلاصه 78

19.منابع   79



خرید و دانلود پروژه پایان ترم کارشناسی رباتیک doc