امروز برابر است با :16 آذر 1403

ربات دنبال کننده خط

شرح عملکرد ربات


روباتي که در اينجا تصميم به تو ضيح نحوه ساخت آنرا دارم بروي زمينه سفيد بدنبال خط مشکي حرکت ميکند. ميکروکنترلر مورد استفاده در روبات ATmega8 می باشد. و کدهای برنامه روبات با استفاده از نرم افزار BASCOM ایجاد شده اند.


 روبات شامل دو موتور در طرفين خود مي باشد، که جهت حرکت به جلو هر دو موتور را روشن مي کند، زمان دور زدن به چپ موتور سمت چپ خاموش و موتور سمت راست روشن مي شود و برای دور زدن به سمت راست موتور سمت راست خاموش و موتور سمت چپ روشن می شود. البته موتورهای بکار رفته DC موتور بوده و جهت کاهش سرعت و در نتیجه کنترل دقیق تر روبات از موتورهايي با گیربکس سرخود استفاده شده، که قیمت آن در بازار جمهوری تهران 7000 تومان است در صورتی که به این نوع موتور دسترسی ندارید ميتوانید از موتورهای اسباب بازی گیربکس دار استفاده کنید، در غير اين صورت بايستي خودتان گیربکس را بسازيد دقت داشته باشيد که دور نهايي چرخش چرخهاي روبات 60 دور بر دقیقه باشد.


 برای تشخيص مسير از دو LED پر نور استفاده شده که سطح مسير حرکت را روشن مي کنند و انعکاس نور به فتو رزيستورهای قرار گرفته در زیر روبات برخورد مي کند. اگر روبات روی خط باشد مقدار نور منعکس شده حداقل بوده و در نتيجه مقدار مقاومت آن افزايش ميابد و ولتاژ دو سر آن افزايش مي يابد و میکروکنترلر از روی اين تغيير ولتاژ متوجه وجود خط مي گردد.(در غیر اين صورت نور منعکس شده زياد بوده، مقدار مقاومت فتورزيیستور کاهش ميابد و ولتاژ دوسر آن کاهش ميابد.)پس همانطور که ذکر شد میکرو کنترلر تغييرات ولتاژ فتورزيستور را احساس ميکند. من براي اين کار از مبدل های درونی آنالوگ به ديجیتال ميکرو استفاده کردم. البته دو عدد فتورزیستور به همراه  دو LED جهت تشخیص طرفین مسير استفاده شده.

برنامه روبات به زبان BASIC نوشته شده در محیط BASCOM






$regfile = “m8def.dat”
$crystal = 8000000



Config Portd =
Output                      ‘Portd used for control motor
Config Adc = Single , Prescaler = Auto
Start Adc                                   ‘Start Analog to Digital Converter

Dim S1 As Word                             ‘S1 Right Sensor
Dim S2 As Word                             ‘S2 Left Sensor

Portd = 0
Wait 3

Do

S1 = Getadc(3)                              ‘Read Sensor 1
S2 = Getadc(5)                              ‘Read Sensor 2
 


‘portd.0 right motor
If S2 > 400 Then Set Portd.0
If S2 < 300 Then Reset Portd.0

‘portd.2 left motor
If S1 > 400 Then Set Portd.2
If S1 < 300 Then Reset Portd.2

Loop
End
                                         ‘end program



.::ليست قطعات مدار روبات::.

 نقشه روبات دنبال کننده خط طراحي شده توسط مهندس حسين لاچيني  www.HLachini.com

 –میکرو کنترلر ATmega8 یک عدد

آی سی رگولاتور7805 یک عدد

–آی سی ULN2803 یک عدد

موتور 5 ولتی با گیربکس و دور بر دقیقه 60 دو عدد

–رله 5 ولتی دو عدد

–دیود 1N4001 دو عدد

–مقاومت 10کیلو اهمی دو عدد

–مقاومت 330 اهمی دو عدد

–فتورزیستور کوچک دو عدد

–دیود نورانی سفید پر نور دو عدد

–خازن 330 میکروفاراد دو عدد

–برد هزار سوراخ 11.5 در 6.5 سانتی متر


.::ليست قطعات مکانیک روبات::.

–چرخ ماشین اسباب بازی کوچک دو عدد

–فولی ضبط صوت جهت چرخ وسط یک عدد

–پیچ اسپیسر (Spacer) سه سانتی به همراه مهره چهار عدد

–ترمینال برق چهار خانه یک عدد

–تخته سه لا 12 در 12 سانتی متر


مراحل ساخت مکانیک روبات


  روبات دنبال کننده خط طراحي شده توسط مهندس حسين لاچيني

  روبات دنبال کننده خط طراحي شده توسط مهندس حسين لاچيني

  روبات دنبال کننده خط طراحي شده توسط مهندس حسين لاچيني

  روبات دنبال کننده خط طراحي شده توسط مهندس حسين لاچيني

  روبات دنبال کننده خط طراحي شده توسط مهندس حسين لاچيني


فیلم روبات


















www.hlachini.com

اشتراک گذاری