PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : آموزشی روبات مسیر یاب - دنبال کننده خط



moji5
28th October 2009, 09:55 AM
چگونه يک ربات مسيرياب بسازيم

مقدمه :


براي ساختن يک ربات بايد آشنايي مقدماتي با 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 تا وضيعت روشن يا خاموش بودن مدار کاملا مشخص باشد در اين مدار فقط خازن با ظرفيت پايين با مدار موازي شده که بهتر است يک خازن با ظرفيت بالا بعد از رگولاتور با مدار موازي شود.


http://www.daneshju.ir/forum/images/statusicon/wol_error.gifاین عکس کوچک شده است برای مشاهده ی سایز اصلی کلیک کنیدhttp://www.ecapic.ir/image/ECA-090528053010.jpg

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


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


• رله


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

http://www.ecapic.ir/image/ECA-090528053116.jpg

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

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

http://www.daneshju.ir/forum/images/statusicon/wol_error.gifاین عکس کوچک شده است برای مشاهده ی سایز اصلی کلیک کنیدhttp://www.ecapic.ir/image/ECA-090528053121.jpg

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 شدن يا هنگ کردن ميکرو شوند


http://www.daneshju.ir/forum/images/statusicon/wol_error.gifاین عکس کوچک شده است برای مشاهده ی سایز اصلی کلیک کنیدhttp://www.ecapic.ir/image/ECA-090528053110.jpg

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


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

مدار سنسور

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

Photocell .1

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

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

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


http://www.ecapic.ir/image/ECA-090528053036.jpg
نقشه مدار برد سنسور که خروجي آن توسط يک مقايسه گر آنالوگ به 0 و 1 تبديل مي شود

http://www.ecapic.ir/image/ECA-090528053107.jpg
نمونه يک برد سنسور مادون قرمز با 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 کنترل سرعت با فرکانس استفاده کنيد

نويسنده علي معيري

LaDy Ds DeMoNa
9th November 2009, 07:39 AM
الگوريتم ربات های خط ياب

الگوريتم روباتهای خط ياب / 240 کیلوبایت

دانلود (https://www.sharemation.com/hessameddin/robot.zip)

LaDy Ds DeMoNa
9th November 2009, 07:40 AM
ربات مسيرياب با ميکرو PIC 16F84A

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

قطعات مورد نیاز

1. 3 عدد سنسور مادون قرمز CNY70
2. 1 عدد میکروکنترلر PIC 16F84A
3. 3 عدد پتانسیومتر 10K
4. 2 عدد خازن 22 پیکو فاراد
5. 2 عدد آیسی LM358
6. 6 عدد مقاومت 220 اهم
7. 5 عدد مقاومت 5 مگا اهم
8. 3 عدد خازن 0.1 الکترولیت
9. 1 عدد کریستال 4 مگا هرتز
10. 1 عدد 1مقاومت 4.7 کیلو اهم
11. 1 عدد منبع تغذیه 6 لتی
12. 1 عدد رگولاتور 7805
13. 2 موتور 7 تا 9 ولت dc
14. 1 عدد آیسی ULN2803
15. 2 عدد دیود 1N5817
16. 1 عدد کلید کشویی سه حالته
17. 2عدد کانکتور مخابراتی 7 پین


سنسور CNY70
این سنسور به صورت یک بسته حاوی دو عدد سنسور مادون قرمزاست. یک سنسور فرستنده و سنسور دیگر گیرنده می باشد.برای اینکه روبات شما بهتر کار کند بهتر است بجای استفاده از دو سنسور مادون قرمز به صورت مجزا از این packeg سنسور استفاده کنید.در این سنسور پایه های بلندتر در هر سمت سمت آند و پایه های کوتاهتر سمت کاتد است.
برای دریافت اطلاعات مربوط به این سنسور اینجارا کلیک کنید.
با استفاده از این نوع سنسور میزان خطاها تا حد قابل ملاحظه ای کاهش می یابد

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/e/ed/cny70.jpg

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/c/c0/hamz.gif

میکروکنترلر PIC 16F84A
این میکرو کنترلر از ساده ترین انواع میکروکنترلر از لحاظ برنامه نویسی است .اما فوق العاده قدرتمند می باشد.زبان برنامه نویسی این میکروکنترلرغالبا زبان برنامه نویسی سی(C)زبان برنامه نویسی بیسیک(BASIC)
زبان برنامه نویسی پاسکال (PASCAL) میباشد.که شما می توانید با تهیه کمپایلر هر کدام از این زبانها،با برنامه ای که به آن تسلط دارید.، اقدام به برنامه نویسی آن کنید.
برای کار با این میکروکنترلر احتیاج به پروگرامر خانواده گروه PIC دارید.،به همراه کمپایلر زبان برنامه نویسی که به آن علاقه دارید.

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/9/93/PIC16F84a.gif

آیسی LM358
آیسی ULN2803
این آیسی حاوی دو عدد آپ امپ(DUAL AP-AMP)است.،این آپ امپ ها جهت مقایسه ولتاژ های ایجاد شده از سنسورها به کار می رود.پایه 4 آن منفی ،پایه 8 آن مثبت،پایه 2 و6ورودی منفی پایه 3و5 ورودی مثبت،وپایه های 1و7 خروجی است.این آیسی اختلاف ولتاژهای منفی ومثبت ورودی را در خروجی آشکار می کند.
آیسی ULN2803 حاوی بافر NOT است پایه 9 آن تغذیه منفی و پایه 18 آن تغذیه مثبت است.جریان خروجی آن در حدود 500 میلی آمپر است.این آیسی بیشتر برای درایو کردن موتور پله ای (STEPPER MOTOR) مورد استفاده قرار می گیرد
http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/a/af/lm358.jpg

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/2/2a/280333.gif

رگولاتور 7805
کریستال
رگولاتور LM7805 یک تنظیم کننده ولتاژ است.زمانیکه ولتاژ پایه ورودی آن در حدود 2 تا 2.5 ولت بیشتر از 5 ولت باشد.،ولتاژ تنظیم شده 5 ولت را در خروجی ایجاد می کند.
کریستال جهت تولید پالس برای میکروکنترلر مورد استفاده قرار می گیرد.در شکل زیر کریستال 10 مگاهرتز را مشاهده می کنید.

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/5/52/7805.jpg
http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/1/13/S8841136560.jpg

توضیحات مدار
در شکل زیر نحوه اتصال سنسور CNY70 به آیسی LM358 را مشاهده می کنید.سمتی از این سنسور که نوشته دارد پایه بالا یی و پایینی مربوط به LED فرستنده و دو پایه قسمتی که نوشته ندارد.،مربوط به گیرنده است.پایه بالایی قسمتی که نوشته دارد.،به تغذیه 5 ولت و پایه زیر این پایه را با یک مقاومت 220 اهم به منفی وصل کنید.قسمتی از این سنسور که نوشته ندارد.پایه بالایی را به تغذیه 5 ولت و پایه پایینی را با یک مقاومت 5 مگا اهم به منفی وصل کنید.از اشتراک مقاومت 5 مگا اهم با پایه پایینی قسمت گیرنده سنسور به ورودی مثبت آیسی LM358 که پایه 3 می باشد وصل کنید.
یک سر پتانسیومتر 10K را به مثبت 5 ولت ویک سر دیگر آن را به منفی منبع تغذیه یا باطری وصل کنید.سر دیگر پتانسیومتر را به ورودی منفی آیسیLM358 که پایه 2 می باشد.، وصل کنید.پایه 4 آیسی LM358 را به منفی ،پایه 8 آیسی LM358 را به مثبت منبع تغذیه وصل کنید.،پایه 1 آیسی LM358 را توسط مقاومت 220 اهم به ورودی پایه های میکروکنترلر وصل کنید.این کار را برای هر سه سنسور CNY70 انجام دهید.

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/9/97/esquemaCNY70.gif

همانطور که در نقشه نگاه می کنید.پایه های خروجی آیسی LM358 توسط مقاومتهای 220 اهم به پایه های RB3,RB1,RB2 میکروکنترلر وصل می شوند.میکروکنترلر بر اساس HIGH یا LOW شدن این پایه ها تصمیم گیری می کند.،وپایه های RB6 یا RB7 را که به یک سر موتور وصل هستند. را HIHG یا LOW می کند.دیود در خروجی آیسی ULN2803 نقش محافظتی را دارد.خازنهای دو سر موتور نیز جهت از بین بردن نویز وکارکرد بهتر موتور مورد استفاده قرار می گیرند.البته در عمل یکی از خروجی هاآیسی LM358 از پایه 7 این آیسی گرفته شده است.پایه 5 میکروکنترلر را حتما به تغذیه منفی وصل کنید.
با تنظیم پتانسیومترها می توانید.،فاصله وحساسیت سنسورها را تعیین کنید.قبل از اینکه سنسورها را در زیر ماشین روباتی خود بگذارید.از سالم بودن وعملکرد صحیح سنسورها مطمئن شوید.قبل از هر کاری مدار خود را بر روی برد بورد پیاده سازی کنید.وخرجی دو عدد آیسی LM358
را که پایه های 1 و7 و1 می باشندرا توسط مقاومتهای 220 اهم به صورت مجزا به سه LED وصل کنید.زمانیکه کاغذ سفید رنگ را به قسمت بالایی این سنسورها نزدیک می کنید.،LED مربوط به هر سنسور روشن می شود.شما می توانی با تنظیم پتانسیومترها شدت نور LED ها و میزان فاصله پاسخگویی سنسورها را تعیین کنید.زمانیکه از عملکرد صحیح سنسورها وتنظیم آنها مطمئن شدید سه خروجی آیسی LM358 را به ورودیهای RB3,RB2,RB1 از میکروکنترلر وصل کنید.تصمیم گیری میکروکنترلر بر اساس HIGH یا LOW شدن این پایه های میکروکنترلر می باشد.،خروجیهای RB6,RB7 میکروکنترلر را قبل از اتصال به پایه های 1و2 ورودی آیسی ULN2803 به دو عدد LED وصل کنید وپس از مطمئن شدن از عملکرد صحیح برنامه ای که در میکروکنترلر توسط پرگرامر LOAD شده است آترا به ورودی 1و2 آیسی وصل کنید.،سپس خروجی 18 آیسی ULN2803 را به سر یک موتور وسر دیگر موتور را به مثبت منبع تغذیه وصل کنید.در واقع میکروکنترلر منفی یک سر موتور را می دهد.،خروجی 17 آیسی ULN2803 را به یک سر موتور دیگر وصل کنید.،وسر دیگر این موتور را به مثبت منبع تغذیه وصل کنید.

تغذیه روبات
برای تغذیه مدار از 6 عدد باطری 1.2 ولت آمپر بالا استفاده کنید.قبل از اتصال باطری به روبات عمل تغذیه را توسط منبع تغذیه DC انجام دهید.،واز سیمهای سوسماری بلند جهت اتصال مثبت ومنفی منبع تغذیه به روبات استفاده کنید.
در این مدار بهتر است.،از رگولاتور 7805 استفاده کنید.،تغذیه مثبت کل مدار به غیر از موتورها از رگولاتور 7805 می باشد.،اگر تغذیه موتورها را از رگولاتور 7805 بگیرید.موتورها آمپر لازم را جهت حرکت کردن نخواهند داشت.

مسیر روبات

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





نمونه مسیر روبات

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/0/04/ChiBots01MarCourse.jpg

نقشه مدار


http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/9/97/esquemaCNY70.gif

برنامه میکروکنترلر
برنامه میکروکنترلر در این پروژه به زبان بیسک است.
همانطور که در برنامه مشاهده می کنید.،سه عدد متغییر m,l,r در اول برنامه معرفی شده اند.،این سه متغییر در خطوط بعدی برنامه توسط پورتهای،portb.1,portb.2 ,portb.3 بارگذاری می شوند.،high یا low شدن این پورتها به صورت مستقیم وابسته به سنسورهای CNY70 است.،در صورت HIGH شدن سنسور وسطی دو موتور HIGH می شوند.،وحرکت خواهند داشت.HIGH یا LOW شدن هر کدام از موتورها سمت راست یا چپ یا هر دو موتور در برنامه کاملا مشخص شده است.



1:
2: m var byte
3: l var byte
4: r var byte
5: m=portb.2
6: l=portb.1
7: r=portb.3
8: if m=1 and l=0 and r=0 then
9: high portb.6
10: high portb.7
11: endif
12: if r=0 and l=1 and (m=0 or m=1) then
13: high portb.7
14: low portb.6
15: endif
16: if l=0 and r=1 and (m=0 or m=1) then
17: high portb.6
18: low portb.7
19: endif



نحوه کار با میکروکنترلر

برای کار با میکروکنترلر احتیاج به دو مرحله دارید.اول کمپایل کردن برنامه ای که به طور مثال با زبان بیسیک نوشته شده.دوم پروگرام کردن آیسی،برای کمپایل کردن میتوانید.ورژن 2.32 این کمپایلر را در خط زیر دانلود کنید.
برای دانلود برنامه کمپایلر بیسیک اینجا را کلیک کنید.
پس از اینکه این فایل فشرده را باز کردید.به مراحلی که راجب نصب گفته شده دقت کنید.تا این برنامه درست نصب شود.
شما می توانید برنامه تان را در محیط edit داس (dos) یا در محیط word یا notpad ویندوز وارد کنید.پس از وارد کردن برنامه بهتره آنرا در محلی که برنامه کمپایلر را نصب کردید وفایل pbp.exe در آن وجود دارد.با پسوندbas ذخیره کنید.pbp مخفف pic basic pro compiler است.برای کمپایل کردن برنامه پیشنهاد میکنم به جای استفاده از محیط ویندوز وارد محیط command بشوید ومسیری که برنامه کمپایلر را در آن ذخیره کردید با استفاده از دستورات dos پیدا کنید.این محیط می بایست شامل فایلpbp.exe باشد.اگر برنامه تان نیز در همین مسیر باشد.احتیاجی به دادن مسیر یا path برنامه ندارید.pbp را تایپ می کنید.بعد از آن با یک فاصله علامت - وسپس بدون فاصله نام میکرو مورد نظر از خانواده PIC را وارد می کنید.حال نام برنامه را وارد کنید پسوند bas آنرا فراموش نکنید.به طور مثال اگر برنامه شما وکمپایلر در مسیری مانند مسیر روبرو قرار گرفته باشند.و اسم برنامه ای که نوشته ای به طور مثال blink با پسوند bas باشد.،داریم. c:\pic\pic1\pbp -16f84a blink.bas در اینجا فرض کردیم میکرو از نوع PIC16F84A است.اگر میکرو PIC16F873 باشد.به جای 16F84A- خواهیم داشت 16F873- اگر برنامه بدون خطا باشد.فایل HEX آن در درایو ی که برنامه در آن قرار دارد.ایجاد می شود.حال می توانید آنرا از طریق پروگرامر وارد میکرو کنید.در پروگرامر نیز نوع میکرو را حتما درست انتخاب کنید.وبه دستورات و نحوه استفاده از پروگرامری که تهیه کرده اید.به دقت توجه کنید.

فیلم مربوط به دو روبات نمونه

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

http://daneshnameh.roshd.ir/mavara/mava ... fileId=189 (http://daneshnameh.roshd.ir/mavara/mavara-download_file.php?fileId=189)
http://daneshnameh.roshd.ir/mavara/mava ... fileId=190 (http://daneshnameh.roshd.ir/mavara/mavara-download_file.php?fileId=190)
مکانیک یک روبات نمونه

همانطور که در شکل مشاهده می کنید.،پس ازلحیم کردن سیم به سر موتورها برای جلوگیری از برخورد سیمها به یکدیگر از وارنیش استفاده شده است.شما می توانید برد الکترونیکی خود را بر روی این روبات نمونه پیاده سازی کنید.
در قسمت جلویی این روبات ، طلقی L شکل را قرار دهید.،و محل پیچ شدن آنرا به روبات با مته 3 سوراخ کنید.، و با سوراخ کردن آن به صورت عرضی به آن قابلیت رگلاژ شدن بدهید.،سپس آنرا با پیچ و مهره 3 به قسمت جلوی روبات متصل کنید.
سنسورهای CNY70 بر روی برد مسی به گونه ای لحیم کنید.،که فاصله اولین سنسور با آخرین سنسور حدود 4.5 سانتی متر باشد.این سنسورها می بایست در وسط یکی از عرضهای برد مسی لحیم شود.سرهای مثبت سنسورهای CNY70 را به یکدیگر لحیم کنید.،سپس این سر مشترک را با سیم به یک سر کانکتور مخابراتی که بر روی برد مسی لحیم شده است.،لحیم کنید.این کار را برای تمامی پایه های سنسورها انجام دهید.،وآنها را به کانکتور مخابراتی دیگری که روی بدنه روبات قرار گرفته متصل کنید.برد مسی را که سنسورها روی آن قرار دارند.،را به زیر طلق L شکل متصل کنید.و با استفاده از کانکتور مخابراتی 7 پین به برد الکترونیکی که بر روی این روبات یا هر روبات دیگر سوار کرده اید.،متصل کنید
در واقع این قسمت کار مسیر یابی روبات شما را انجام میدهد.

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/0/0c/MOTORDC11.JPG

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/e/e7/motordc2.bmp

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/1/1a/dandeh.JPG

http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/d/d3/robot2.JPG
http://www.bia2clubs.com/images/orange_g/statusicon/user_offline.gif http://www.bia2clubs.com/images/orange_g/buttons/report.gif (http://www.bia2clubs.com/report.php?p=25052)

LaDy Ds DeMoNa
9th November 2009, 07:40 AM
شماتيک ربات مسيرياب با ميکرو ۲۰۵۱


فايل ضميمه شماتيک يک ربات مسير ياب می باشد
که با استفاده از Microcontroller 2051 ربات را هدايت می کند
درايور موتور اين ربات IC L293 می باشد که تا يک آمپر امکان عبور جريان را به موتور فراهم می کند
در اين ربات از سنسور فرستنده و گيرنده مادون قرمز استفاده شده است

دانلود (http://www.iranrobotic.com/upload/553021384_Pathfinder.zip)

LaDy Ds DeMoNa
9th November 2009, 07:40 AM
نمونه مدار ربات مسیر یاب

http://www.bia2clubs.com/images/statusicon/wol_error.gifThis image has been resized. Click this bar to view the full image. The original image is sized 700x600 and weights 41KB.http://i2.tinypic.com/11hh115.jpg

LaDy Ds DeMoNa
9th November 2009, 07:55 AM
اموزش ساخت ربات مسیر یاب

سلام
از اونجا خیلی از دوستان در ساخت این ربات ها مشکل داشتند ، گفتم بیام و یه مقداری توضیح بدم ، هر جاش قلت بود استاتید تصحیح کنن ، یا اگه روش بهتری داشتن ارائه کنن ....
ربات های مسیر یاب
ربات مسیریاب رباتی است که می تواند در یک مسیر از قبل تعیین شده حرکت کند ، این مسیر میتواند یک خط سیاه در زمینه سفید یا یک خط سفید در زمینه سیاه باشد. یا مخلوتی از هر دو باشد .ربات باید بتواند انواع مسیرهای موجود مانند پیچ، بریدگی، خطوط زاویه دار و مهم تر از همه حلقه را در کمترین زمان ممکن طی کند .
http://rossum.sourceforge.net/sim/LineTrack.gif
ساخت ربات های مسیر یاب کاری نسبتا ساده میباشد ، برای ساخت ربات شما نیاز به دانش برنامه نویسی برای پردازنده و رباتیک برای ساخت قسمت متحرک دارید ، شما همچنین باید طریقه کار با سنسور ها را بدانید ، در ادامه شما را با کلیه مراحل ساخت ربات مسیر یاب اشنا میکنیم .
یک ربات مسیر یاب از بخش های کلی زیر تشکیل میشود که در ادامه هر یک را بررسی میکنیم :
بدنه ربات
مدار تغذیه
قسمت حرکت
بخش سنسور ها و فرمان
پردازنده و برنامه نویسی
بدنه ربات:
برای بدنه ربات ، شما میتوانید از هر جسمی استفاده کنید اما این جسم باید دارای شرایط زیر باشد:
- سبک باشد
- محکم باشد
- امکان سوار کردن اجزا روی ان وجود داشته باشد.
- امکان ایجاد تغیر در شکل ان باشد .
-جمع جور باشد.
با توجه به مطالب بالا بهترین گزینه برای بدنه ربات پلاستیک میباشد ، شما میتوانید از شاسی ماشین های اسباب بازی یا از شاسی های اماده موجود در بازار استفاده کنید . در یک ربات معمولا پردازنده و قسمت فرمان در وسط بدنه ، موتور ها در طرفین ، سنسور ها در جلو ، و باطری در عقب قرار میگیرد . همچنین کلیه اجزا توسط پیچ و مهره یا چسپ حراراتی یا .. (بهتر است از پیچ و مهره استفاده شود )محکم به بدنه چسبانده میشوند . برای حفاظت از پردازنده در مقابل نویز یک روکش فلزی روی قسمت فرمان قرار میگیرد . همچنین برای جلوگیری از دستگاری مدارات و اجزای ربات حتما برای بدنه یک روکش مناسب تهیه کنید ، بطوری که فقط چرخ ها بیرون باشد و بس .
>>>> من خودم از برد ربات به عنوان بدنه استفاده میکنم و همه اجزا رو محکم روی فیبر لحیم میکنم

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

مدار تغذیه :
برای تغذیه ربات میتوانید از ولتاژ مستقیم منبع تغذیه DC و یا از باطری استفاده نمایید که در این قسمت طریقه استفاده از منبع تغذیه DC گفته میشود (طریقه استفاده از باطری در قسمت ربات میکرو موس توضیح داده شده است )
از انجا که ولتاژ ورودی شما از یک منبع تغذیه گرفته میشود ، شما باید نصبت به صاف و رگوله بودن ان اطمینان حاصل کنید . ممکن است شما خود را برای یک مسابقه اماده کنید و در مکان مسابقه یک منبع تغذیه بدون اصل ونصب در اختیار شما قرار گیرد ، که به ازای ولتاژ 12 ولت ، 14 ولت با نوسان زیاد میدهد ، بنابرای باید خودتان دست به کار شوید و برای رباتتان یک بخش تغذیه مجزا بسازید . معمولا ولتاژ تغذیه موتور ها 12 ولت و ولتاژ تغذیه پردازنده و سنسور ها و ... 5 ولت میباشد .
شما میتوانید از یک رگولاتور 12 و 5 ولت مطابق شکل زیر استفاده کنید :
[attachment=32]

توجه >>>>>
به هیچ عنوان ورودی تغذیه رگولاتور 5 ولت را از خروجی رگولاتور 12 نگیرید ، این کار علاوه بر ایجاد گرما در رگولاتور 12 ولت باعث افت ولتاژ در خروجی ان میشود .
ولتاژ ورودی مدار بالا میتواند از 12 تا 15 ولت متغیر باش و در صورتی که از مدار بالا استفاده نکنید ، نوسانات ولتاژ باعث خرابی پردازنده و تغییر قدرت و سرعت موتور ها میشود .
برای اینکه ربات خود را در برابر ولتاژ معکوس (برعکس بودن پلاریته ی ورودی ) حفظ کنید میتوانید از یک پل دیود در ورودی استفاده نمایید
در قسمت بعدی در مورد قسمت حرکت بحث خواهیم کرد
به محض اینکه مشکل پیوست حل بشه ، تصاویر رو هم میزارم

LaDy Ds DeMoNa
9th November 2009, 07:56 AM
قسمت حرکت :
این قسمت در اقلب ربات ها مشتر ک هست و بسته به امکانات موجود میتوانید از هر روش استفاده کنید .
1- سیستم حرکت چهار چرخ (اگه اسمش این نیست بگید )
در این روش ربات دارای چهار چرخ میباشد ، چرخ های سمت راست توصط چرخدنده های به هم متصل شده اند ، دو چرخ سمت چپ نیز همین گونه اند ، برای گردش ربات ، چرخ های یک سمت برعکس میچرخند ، مثلا فرض کنید ربات به سمت راست گردش میکند ، در این صورت چرخ های سمت راست ، برعکس میچرخد ، چرخ های سمت چپ نیز به صورت عادی گردش میکند .
http://i18.tinypic.com/4iczgg9.jpg
2- استفاده از چرخ هرز گرد :
این روش متداولترین روش جایگزاری چرخ ها است ، در این روش دو عدد موتور به دو چرخ عقب متصل میشود ، در قسمت جلو یک عدد چرخ هرز گرد بسته میشود ، برای چرخش به چپ متور سمت چپ خاموش و موتور سمت راست روشن میماند ، برای گردش به سمت دیگر نیز برعکس .
http://www.knowclub.com/%20paper/images/robat1.jpg
http://www.embedds.com/wp-content/uploads/2008i/0803/AVR_line_following_robot.jpeg
3-روش معمولی ، در این روش مانند سیستم حرکتی اتوموبیل ، یک موتور وظیفه چرخواندن چرخ های عقب را به عهده دارد، همچنین یک پرخ زاویه دو چرخ جلو را کنترل مینماید .
www.machinescience.org/.../ gallery/RC_Robot2.gif
مواد استفاده شده در سیستم حرکتی :
1- سیستم کنترل (پردازنده ) در مورد پردازنده در بخش اخر بحث میشود .
2-درایو موتور :
ازدرایور ها برای افزایش جریان و ولتاژ اعمالی به موتور و همچنین جدا کردن ان از بخش کنترل استفاده میشود .
راه اندازه های زیادی برای کنترل موتور ها وجود دارد که در زیر به بررسی دو مورد از نها یعنی uln2003 و l298 میپردازیم :
uln2003 :
حداکثر جریان خروجی این درایو 500 میلی امپر میباشد و ولتاژ خروجی ان به میزان ولتاژ تغذیه موجود بین پایه گراند ایسی و سیم مشترک موتور است و میتواند حداکثر 50 ولت باشد ، ولتاژ ورودی ان نیز حداکثر 30 ولت است و ایسی از ورودی جریان 25 میلی امپر را به ازای بیشترین ولتاژ میکشد.
این درایو قادر به ران اندازی تعداد 7 موتور میباشد . پایه های 1 تا 7 ورودی و پایه های 10 تا 16 خروجی های قطعه هستند ، همچنین پایه 8 گراند و پایه 9 ولتاژ مثبت است که باید با ولتاژ مثبت موتور ها یکی باشد
http://members.cox.net/jkemege/ULN2003A.gif
جهت مشاهده اندازه واقعی روی آن کلیک کنید.


با استفاده از این درایو فقط میتوان چرخش یا عدم چرخش موتور را کنترل کرد
l298 در بخش ربات های میکرو موس بررسی میشود

LaDy Ds DeMoNa
9th November 2009, 07:56 AM
بخش سنسور ها و فرمان :
این قسمت از ربات باید بتواند خط مشکی را از سفید تشخیص دهد ، بنا به نوع خط و عرض ان و نوع مسیر از سنسور ها مختلف با چیدمان مختلف استفاده میشود :
سنسور ها :
در ربات های مسیر یاب از سنسور ها مادون قرمز برای تشخیص مسیر استفاده میشود ،
http://www.roboeq.com/img_s/cny70.gif
میدانید که سطح سفید نور را دفع و سطح مشکی نور را جذب میکند ، نور از led فرستنده منتشر میشود ، در صورتی که سطح سفید باشد ، نور به گیرنده میرسد و ان را یک میکند در غیر اینصورت خروجی گیرنده صفر است :
معرفی دو نوع سنسور مادون قرمز خوب :
اپتوکانتر CNY70
http://roboeq.com/img_s/0401006.gif
اپتوکانتر TCRT5000 :
http://roboeq.com/img_s/0401001.gif
از انجا که در هر دو قطعه بالا فرستنده وگیرنده در یک پک میباشند ، جایگزاری انها در ربات بسیار ساده است ،
اکنون شما باید خروجی سنسور را اندازه بگیرید ، برای اینکار دو راه دارید ، یا خروجی را به adc بدهید و ولتاژش را اندازه بگیرید ، یا ولتاژ خروجی را به سطح منطقی صفر ویک تبدیل کنید :
http://www.sobhdam.com/index/images/medarat/IRcircuit.gif
در صورتی که از روش اول استفاده میکنید op-amp را حذف نمایید .
چیدمان سنسور ها :
شما باید سنسور ها را بر روی یک بورد با ارایشی خاص بسته به نوع مسیر بچینید .
انواع مسیر ها :
1- مسیر ها تک رنگ ، چیدمان سنسور ها برای این نوع مسیر بسار ساده میباشد ، در این نوع مسیر از 3 سنسور استفاده میشود ، سنسور وسط ، وظیفه چک کردن مسیر و دو سنسور کناری وظیفه چک کردن زمینه را به عهده دارد . در صورتی که ربات از روی خط منحرف شود ، سنسور وسط خروجی خود را تغییر میدهد ، در این حالت ربات صبر میکند تا یکی از سنسور ها کناری نیز تغییر وضعیت دهد و به سمت همان گردش کند .
مثلا ربات در مسیر خود مشغول حرکت هست ، در ادامه یک پیچ به سمت راست وجود دارد ، هنگامی که ربات به پیچ میرد ، به دلیل تغییر مسیر خروجی سنسور وسط تغییر میکند ، ربات به حالت اماده باش میرود ، با ادامه یافتن حرکت ، سنسور سمت راست از روی مسیر رد میشود ، در این ربات میفهمد که باید به سمت راست گردش کند .


2- مسیر های دورنگ ، در این نوع مسیر تغییر رنگ در بعضی از قسمت ها وجود دارد ، مثلا در 10 سانت اول مسیر به رنگ مشکی و زمینه به رنگ سفید است ، در 10 سانت بعدی رنگ عوض میشود ، یعنی مسیر به رنگ سفید زمینه مشکی در میاید
در این نوع مسیر ، از پنج سنسور استفاده میشود ، سه سنسور وظیفه کنترل کردن ربات و جلوگیری از گم کردن مسیر را به عهده دارند ، دو سنسور دیگر هم رنگ مسیر ها را کنترل میکنند ، یعنی یکی از انها رنگ زمینه و دیگری رنگ مسیر را چک میکند .
شما باید در برنامه خود خروجی سنسور اول (کنترل کننده های مسیر )را با خروجی سنسور دوم (کنترل کننده های رنگ زمینه ) مقایسه کنید ، در صورتی که هر دو سنسور یک رنگ را تشخیص دهند ربات منحرف شده است .
مثلا فرض کنید ، در ابتدا کار رنگ مسیر مشکی است و رنگ زمینه سفید ، در این صورت خروجی سنسور که رنگ مسیر را چک میکند ، یک است و خروجی سنسوری که زمینه را چک میکند صفر (ما از adc استفاده کرده ایم ) .
در این صورت باید سه سنسور اول به رنگ مشکی حساس باشند ، در صورتی که شرایط بالا برعکس باشد ، سه سنسور اول باید به رنگ سفید حساس باشند ، در صورتی خروجی دو سنسور با هم یکی باشد ربات منحرف شده است .
ادامه دارد ....

مهدیه ر
2nd February 2010, 11:59 PM
سلام میشه همه مطالبی که درباره ی ربات مسیر یاب گذاشتید برای من بفرستید یامنبعتونومعرفی کنید باتشکرrasoulifardmahdie@yhoo.com

hengameh
17th April 2010, 08:09 PM
اینم یه pdf مطلبی که آقا مجتبی گذاشته با تصاویر مداری :
ﭼﮕﻮﻧﻪ ﻳﻚ رﺑﺎت ﻣﺴﻴﺮﻳﺎب ﺑﺴﺎزﻳﻢ (http://www.robomakers.com/FileHandler.ashx?ResourceGUID=1a09a0a3-b7b8-415e-b3f5-d5dcf1154d1a&tn=cms__Extended_Files&fn=_File&filetype=download)

ji-ji
19th December 2010, 12:35 PM
شماتيک ربات مسيرياب با ميکرو ۲۰۵۱


فايل ضميمه شماتيک يک ربات مسير ياب می باشد
که با استفاده از microcontroller 2051 ربات را هدايت می کند
درايور موتور اين ربات ic l293 می باشد که تا يک آمپر امکان عبور جريان را به موتور فراهم می کند
در اين ربات از سنسور فرستنده و گيرنده مادون قرمز استفاده شده است

دانلود (http://njavan.com/forum/redirector.php?url=http%3a%2f%2fwww.iranrobotic.co m%2fupload%2f553021384_pathfinder.zip)
سلام
لینک دانلود مشکل داره
ممنون می شم اگه درستش کنید

ji-ji
21st December 2010, 10:31 AM
سلام
لینک های دانلود این تایپک رو که ایجاد کردید اگه ممکنه اصلاح کنبد

ali3003
22nd June 2011, 10:53 AM
سلام می تونید مطالبی و آموزش ساخت ربات رو برام به آدرس ایمیلali_shabani3003yahoo.com

استفاده از تمامی مطالب سایت تنها با ذکر منبع آن به نام سایت علمی نخبگان جوان و ذکر آدرس سایت مجاز است

استفاده از نام و برند نخبگان جوان به هر نحو توسط سایر سایت ها ممنوع بوده و پیگرد قانونی دارد