دوست عزیز، به سایت علمی نخبگان جوان خوش آمدید

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

توجه داشته باشید، در صورتی که عضو سایت نباشید نمی توانید از تمامی امکانات و خدمات سایت استفاده کنید.
نمایش نتایج: از شماره 1 تا 1 , از مجموع 1

موضوع: چگونه يک ربات مسيرياب بسازيم

  1. #1
    کاربر اخراج شده
    رشته تحصیلی
    مهندسی عمران
    نوشته ها
    0
    ارسال تشکر
    11,136
    دریافت تشکر: 25,270
    قدرت امتیاز دهی
    0
    Array
    M@hdi42's: لبخند

    smilee1 چگونه يک ربات مسيرياب بسازيم

    چگونه يک ربات مسيرياب بسازيم



    مقدمه :


    براي ساختن يک ربات بايد آشنايي مقدماتي با 3 رشته مکانيک ، برنامه نويسي و الکترونيک آشنايي داشته باشيم . البته نيازي نيست در تمامي اين رشته ها خود تسلط داشته باشيم چنانچه شما عضو يک تيم هستيد هريک از اعضاي تيم بايد در مهارت خود تسلط داشته باشند تا شما به نتيجه دلخواه و ايده آل خود برسيد . در اينجا روش ساخت يک ربات همچنين تجربياتي را که در اين زمينه کسب کرده ام در اختيار شما قرار خوا هم داد . همانطور که گفته شد بحث ما شامل سه بخش است .

    1. مکانيک
    2. الکترونيک
    3. برنامه نويسي


    مکانيک

    در مکانيک يک ربات مسير ياب چند بخش وجود دارد مکانيک ربات مسير ياب جزء ساده ترين مکانيک ها محسوب مي شود اين مکانيک شامل بخش هاي زير است.


    1. شاسي (يا بدنه ) که تمام اجزاء روي آن قرار خواهند گرفت.
    2. موتور ها
    3. چرخ ها
    4. برد سنسور

    1. شاسي يا بدنه :

    اينستف بخش در ساده ترين حالت مي تواند يک طلق پلاستيکي يا چوب (تخنه سه لا) باشد که نسبتا سبک بوده و استحکام خوبي دارد . برد الکترونيکي شما روي آن پيچ مي شود و موتور ها وچرخ ها به آن وصل مي شود و برد سنسور در جاي خود قرار مي گيرد .


    2. موتور ها :

    موتور هاي ربات يکي از مهمترين اجزاء ربات محسوب مي شوند از سه نوع موتور مي توان براي ربات استفاده کرد . موتور هايي که بايد در اين ربات ها استفاده شوند از نوع DC Motor مي باشند و مستقيماً نمي توان آنها را به چرخ وصل کرد مگر اينکه توسط گيرباکس از سرعت آنها کم شود و به قدرت آنها اضافه شود.

    1. موتور هاي اسباب بازي ها و گيرباکس آن ها در ساده ترين حالت شما مي توانيد گيرباکس اسباب بازي ها را باز کرده و از آن ها استفاده کنيد فقط اگر از اين روش استفاده مي کنيد دقت کنيد گيرباکس ها کاملاً روان باشند و موتور ها نيز جريان کشي بالايي نداشته باشد . اگر موتور ها جريان کشي بالايي دارند بهتر است از يک موتور ديگر استفاده کرد .


    2. گويي وپولي : روش ديگري که مي توان استفاده کرد استفاده از گويي وپولي ها است که از تسمه براي وصل کردن وتبديل دور استفاده مي شود اين روش هم خالي از مشکل نيست اين روش توصيه نمي شود .


    3. موتور هاي گيرباکس دار : در اين موتور ها موتور و گيرباکس داخل يک مجموعه قراردارند و در دورهاي مختلف با توان هاي مختلف عرضه شده اند بهترين گزينه استفاده از اين نوع موتور ها مي باشد . چرا که يک مجموعه مطمئن است . بي صدا و حجم کمي را اشغال مي کنند و معمولا جريان کشي مناسبي دارند و تنها مشکل آن ها قيمت بالاي آن ها است .


    نکته 1 : دقت کنيد موتور هاي معمولي را مستقيماً به چرخ وصل نکنيد زيرا آن ها داراي سرعت بالا ( 2000 تا 3000 ) دور در دقيقه ولي قدرت لازم براي حرکت را ندارند .


    نکته 2 : شما در يک ربات مسير ياب به 2 موتور نياز داريد يکي براي موتور سمت راست وديگري براي موتور سمت چپ مي باشد . بهتر است موتور ها و چرخ ها در عقب ربات نصب شوند و چرخ هرزگرد و برد سنسور در جلوي ربات نصب شوند.


    3. چرخ ها : براي يک ربات موفق مسير ياب چند نکته حائز اهميت است :
    1. اندازه قطر چرخ ها
    2. اندازه عرض چرخ ها
    3. ميزان اصطحکاک چرخ با زمين


    1. قطر چرخ ها : بهتر است اندازه چرخ ما طوري تعيين شود که با موتور ها هماهنگي کاملي داشته باشد چون هرچه قطر چرخ ها بيشتر باشد با يک دور چرخش موتور ربات به مقدار بيشتري حرکت کند و هرچه چرخ ها کوچکتر باشد حرکت ربات کمتر است . پس اندازه چرخ ها با سرعت ربات نسبت مستقيم دارد.


    2. عرض چرخ ها بهتر است بين 1 تا 2 سانتي متر باشد چون هرچقدر عرض چرخ ها بيشتر باشد هم وزن چرخ بيشتر مي شود و سطح اصطحکاک بيشتري با زمين پيدا مي کند .


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


    نکته کنکوري : ساده ترين روش براي بالا بردن اصطحکاک چرخ با زمين استفاده از چسب برق از جهت چسبنده روي چرخ است که چرخ کاملاً برروي زمين بچسبد و اصطحکاک زيادي داشته باشد .


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


    4. برد سنسور : اين برد در جلوي رباب نصب مي شود و بايد فاصله استاندارد از سطح زمين را داشته باشد تا بهترين بازده از لحاظ وضعيت خط زير ربات را به ما ارائه دهد .
    نکات مهم درباره مکانيک و نوع بستن آن


    1. حتماً مکانيک کاملا محکم بسته شود
    2. چنانچه از چسب استفاده مي کنيد سعي کنيد از چسب به همراه بست استفاده کنيد
    3. براي اتصال برد ها به بدنه اصلي حتماً از پيچ و مهره و يا Spacer و مهره استفاده کنيد
    4. براي محکم شدن اتصالات و جلوگيري از بازشدن آنها از واشر فنري استفاده کنيد
    5. در جاهايي که ممکن است مهره يا Spacer باعث اتصالات در مدار شما شوند از واشر فيبري استفاده کنيد

    الکترونيک


    نکته :
    • سعي کنيد از فيبر هاي سوراخ دار براي برد اصلي استفاده نکيند به اين دليل که سيم هاي زيادي استفاده مي شود و چنانچه يک سيم قطع شود ربات شما

    به درستي کار نمي کند .
    • به اين نکته توجه داشته باشيد مدار الکترونيکي شما حتما در مقابل نويز مقاوم باشد چون مدار درايور موتور و DC موتور ها نويز شديدي در مدار ايجاد مي کنند
    • چنانچه در طراحي و ساختار مدار و IC تجربه نداريد بهتر است از برد هاي آماده يا برد هاي آموزشي استفاده کنيد

    الکترونيک مدار ربات مسير ياب از بخش هاي زير تشکيل شده است
    1. مدار تغذيه
    2. مدار درايور موتور
    3. بخش خروجي ها
    4. ميکروکنترلر
    5. مقايسه گر هاي آنالوگ
    6. مدار برد سنسور





    مدار تغذيه :


    اين بخش از مدار وظيفه تبديل ولتاژ ورودي مدار به برق 5 ولت را برعهده دارد برق مدار شما بايد 5 ولت باشد. به اين دليل که ميکرو کنترلر شما و اکثر المان هاي برد با برق 5 ولت کار مي کنند . براي اين تبديل ولتاژ بهتر است از رگولاتور 7805 استفاده و براي گرفتن نويز مدار يک خازن با ظرفيت بالا (با اين بخش موازي کنيم LED 2000 ) و يک خازن با ظرفيت بسيار پايين با مدار موازي کنيم ، بهتر است يک uf تا وضيعت روشن يا خاموش بودن مدار کاملا مشخص باشد در اين مدار فقط خازن با ظرفيت پايين با مدار موازي شده که بهتر است يک خازن با ظرفيت بالا بعد از رگولاتور با مدار موازي شود.



    1. مدار درايور موتور


    يکي ديگر از مهمترين بخش هاي يک ربات بخش درايور موتور است . وظيفه اين بخش تأمين ولتاژ و جريان مورد نياز هاي موتور است و توسط ميکروکنترلر کنترل مي شود
    ميکروکنترلر مستقيما نمي تواند برق موتور ها را تأمين کند براي راه اندازي موتور ها از 2 روش استفاده مي شود


    • رله


    رله ها قطعات الکترو مکانيکي هستند که با وصل کردن برق رله اتصال دو سيم رله متصل مي شود و برق به موتور هاي ما وصل مي گردد . استفاده از رله چند عيب دارد ، سرعت قطع و وصل شدن رله کم است و نمي توان از آن به صورت PWM استفاده کرد ، موتور ها را نمي توانيم به صورت 2 جهته کنترل کنيم يعني هم به صورت چپ به راست و هم راست به چپ . تنها حسن رله مدار ساده آن و قدرت بالا در جريان دادن و ولتاژ آن است



    • ترانزيستور ها يا IC هاي درايور موتور

    با ترانزيستور ها يا IC هاي درايور موتور مي توان موتور ها را کنترل کرد بهترين گزينه براي کنترل اين موتور ها آي سي L293 و آي سي l298 مي باشد که مي توان موتور هاي را به صورت 2 جهته کنترل کرد . چرا بايد از موتور ها به صورت 2 جهته استفاده کينم ؟ چنانچه بخواهيم ربات ما مستقيما به جلو حرکت کند کافي است 2 موتور را روشن کنيم چنانچه بخواهيم ربات به سمت راست بچرخد مي توانيم موتور سمت راست را خاموش کنيم و موتور سمت چپ روشن باشد تا ربات به سمت راست گردش داشته باشد چنانچه بخواهيم ربات به سمت چپ بچرخد مي توانيم موتور چپ را خاموش کنيم و موتور سمت راست روشن باشد تا ربات به سمت چپ گردش داشته باشد پس چرا موتور ها بايد به صورت 2 جهته کنترل شود ؟ دليل آن کاملا واضح است چنانچه بخواهيم ربات را با سرعت بالايي کنترل کنيم بايد در پيچ هاي 90 درجه يا بيشتر از معکوس استفاده کنيم يعني مثلا مي خواهيم ربات به سمت راست بچرخد به جاي خاموش کردن موتور سمت راست آن را به صورت معکوس روشن مي کنيم يعني موتور سمت راست به سمت عقب مي چرخد و موتور سمت چپ به سمت جلو پس ما گردش با سرعت بالاتر و حول محور مرکز ربات را خواهيم داشت و همين مسئله در گردش به سمت چپ صدق مي کند


    2. بخش هاي ورودي و خروجي

    اين بخش ها مي تواند شامل LED و LCD ها باشد که بتوانيم خروجي هاي يک ربات و وضعيت هاي آن را مشاهده کنيم تا بتوانيم راحت تر مشکلات ربات را بررسي و برطرف کنيم البته اين بخش يک بخش اختياري در ربات است ولي بودن آن بسيار مفيد است و کمک مي کند .

    3. ميکروکنترلر :

    ميکرو کنترلر در حقيقت مغز ربات ما مي باشد و طبق برنامه که ما به آن مي دهيم ربات را کنترل مي کند يعني شامل فرايند دريافت ورودي از سنسور ها ، پردازش توسط برنامه اي که ما براي آن مشخص کرده ايم و خروجي دادن به موتور ها مي شود ميکرو هايي که معمولا در ربات هاي مسيرياب استفاده مي شود از 2 خانواده هستند

    1. ميکروکنتر هاي 8051
    2. ميکرو کنترهاي خانواده AVR


    البته ما ميکرو کنترلر AVR را به چند دليل پيشنهاد مي کنيم


    1. مدار ساده تر نسبت به خانواده 8051
    2. داشتن مبدل آنالوگ به ديحيتال
    3. داشتن PWM سخت افزاري
    4. داشتن مدار پروگرامر ساده
    5. تکنولوژي بالاتر در طراحي ميکرو و مقاوت بيشتر در مقابل Noise


    از IC هاي رايج در خانواده 8051 مي توان به 89s51 و 89c51 اشاره کرد و از IC هاي رايج در خانواده AVR به Mega16 Mega32 اشاره کرد
    نکته مهم در استفاده از ميکرو ها اين است که بايد مدار آن طوري بسته شود که کمترين ميزان Noise را داشته باشد چون اين ها نسبت به نويز يا تغيرات ولتاژ بسيار حساس هستند و مي تواند باعث Reset شدن يا هنگ کردن ميکرو شوند




    مدار مقايسه گر آنالوگ Opamp ها


    اين مدار در صورتي مورد نياز است که از ميکرو هاي خانواده 8051 استفاده کنيم در اين مدار خروجي سنسور ها با يک ولتاژ متغير که توسط يک مقاومت متغير ساخته شده مقايسه مي شود و خروجي آنالوگ ولتاژ سنور ها به صفر يا يک تبديل شده که براي ميکرو قابل فهم است از Opamp هاي رايج مي توان به Lm324 اشاره کرد
    در ميکرو هاي در ميکرو هاي به دليل داشتن مبدل آنالوگ به ديجيتال ما ولتاژ را در ميکرو به صورت يک عدد بين 0 تا 1023 دريافت مي کنم که 0 به عنوان 0 ولت و 1023 به عنوان ولتاژ مرجع ( 5 ولت ) است .

    مدار سنسور

    اين مدار به عنوان يکي از بخش هاي مهم در ربات شناخته مي شود و وظيفه اين بخش مشخص کردن وضعيت حالت زير سنسور است که آيا سفيد است يا مشکي ؟ براي مشخص کردن اين وضعيت از 2 نوع سنسور مي توان استفاده کرد .

    Photocell .1

    فوتوسل يک مقاومت متغير است که نسبت به تغيرات شدت نور حساس است مقدار مقاومت آن تغيير مي کند اگر بخواهيم از اين سنسور استفاده کنيم بايد از يک فرستنده که نور مرئي به زمين مي تابند استفاده کنيم و اندازه بازتاب نور را توسط فتوسل اندازه گيري کينم که اين کار دقت بالايي ندارد و نور مرئي مستقيما نبايد با گيرنده در ارتباط باشد و يکي ديگر از مشکلات اين روش اين است که خروجي سنسور هاي ربات در شرايط مختلف نوري تغيير مي کند و نور محيط بر آن تاثير مستقيم دارد .

    2. سنسور هاي مادون قرمز

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



    نقشه مدار برد سنسور که خروجي آن توسط يک مقايسه گر آنالوگ به 0 و 1 تبديل مي شود



    نمونه يک برد سنسور مادون قرمز با 5 سنسور

    برنامه نويسي :

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


    1. خواندن وضعيت از سنسور ها
    2. تصميم گيري ( پردازش اطلاعات )
    3. فرمان دادن به موتور ها

    يک مثال براي کنترل ربات با 3 سنسور در ساده ترين حالت

    sr سنسور سمت راست ما و به Porta.0 وصل است
    وصل است sl سنسور سمت چپ ما و به Porta.1
    sc سنسور وسط ما و به Porta.2 وصل است
    موتور هاي ما نيز به Portd.4 , Portd.5 , Portd.6 , Portd.7 وصل است



    Void main()

    {

    While (1)

    {

    SR = PORTA.0;

    SL = PORTA.1;

    SC = PORTA.2;


    if (SR==1) center();

    if (SL==1) moveright();

    if (SC==1) moveleft();

    } }

    function center()

    {

    PORTD.4=1;

    PORTD.5=0;

    PORTD.6=1;

    PORTD.7=0;

    Return 0;

    }

    function moveright()

    {

    PORTD.4=1;

    PORTD.5=0;

    PORTD.6=0;

    PORTD.7=0;

    Return 0;

    }

    function moveleft()

    {

    PORTD.4=0;

    PORTD.5=0;

    PORTD.6=1;

    PORTD.7=0;

    Return ;


    يک مثال براي کنترل ربات با 5 سنسور در ساده ترين حالت
    SR1 Porta.4 سنسور سمت راست ما و به وصل است
    SR2 Porta.3 سنسور سمت راست ما و به وصل است
    SL1 Porta.2 سنسور سمت چپ ما و به وصل است
    SL2 Porta.1 سنسور سمت چپ ما و به وصل است
    SC Porta.0 سنسور وسط ما و به وصل است
    موتور هاي ما نيز به Portd.4 , Portd.5 , Portd.6 , Portd.7 وصل است

    Void main()

    {

    While (1)

    {

    SR1 = PORTA.4;

    SR2 = PORTA.3;

    SL1 = PORTA.2;

    SL2 = PORTA.1;

    SC = PORTA.0;

    if (SC==1) center();

    if (SL1==1) moveleft();

    if (SR1==1) moveright();

    if (SL2==1) moveleftfast ();

    if (SR2==1) moverightfast ();

    }

    }

    function center()

    {

    PORTD.4=1;

    PORTD.5=0;

    PORTD.6=1;

    PORTD.7=0;

    Return 0;

    }

    function moveright()

    {

    PORTD.4=1;

    PORTD.5=0;

    PORTD.6=0;

    PORTD.7=0;

    Return 0;

    }

    function moveleft()

    {

    PORTD.4=0;

    PORTD.5=0;

    PORTD.6=1;

    PORTD.7=0;

    Return ;

    }

    function moverightfast()

    {

    PORTD.4=1;

    PORTD.5=0;

    PORTD.6=0;

    PORTD.7=1;

    Return 0;

    }

    function moveleftfast()

    {

    PORTD.4=0;

    PORTD.5=1;

    PORTD.6=1;

    PORTD.7=0;

    Return ;

    }



    البته به اين نکته توجه داشته باشيد که براي کنترل با سرعت زياد بايد بشتر ار 5 سنسور استفاده کنيد و حتما از تکنولوژي PWM کنترل سرعت با فرکانس استفاده کنيد

    نويسنده علي معيري
    Moayeri@gmail.com



    منبع

  2. کاربرانی که از پست مفید M@hdi42 سپاس کرده اند.


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. «سيروس صابر» بازيگر «ملك سليمان» درگذشت
    توسط NeshaNi در انجمن آرشیو بخش هنر
    پاسخ ها: 0
    آخرين نوشته: 9th June 2011, 12:14 AM
  2. پاسخ ها: 0
    آخرين نوشته: 3rd January 2010, 06:55 PM
  3. برزيليا: مبلغ قرارداد من را از باشگاه بپرسيد
    توسط Victor007 در انجمن اخبار دنیای فوتبال
    پاسخ ها: 0
    آخرين نوشته: 25th October 2009, 06:39 PM
  4. پاسخ ها: 0
    آخرين نوشته: 22nd October 2009, 08:05 AM
  5. خبر: بنزين آزاد ناياب شد/ بنزين در بازار سياه، ليتري 700 تومان
    توسط diamonds55 در انجمن اخبار اقتصادی
    پاسخ ها: 0
    آخرين نوشته: 21st March 2009, 08:26 AM

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •