PDA

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



BEN HOR
24th December 2010, 10:20 AM
روباط مسير ياب نقشه عملی با ميکرو کنترلر



http://www.kmitl.ac.th/%7Ekswichit/LFrobot/P4.jpg
مداری رو که می بينيد ساده ترين روباط مسيريابی است که ميتوان
يافت و برگ برنده ان استفاده از L293D که بهترين درايور استپ
موتور موجود
در بازار ايران است اين درايور در ازائ دريافت کد باينری از ميکرو کنترلر با
دادن فرکانس به استپ موتور ان را داريو کرده مثلا با دادن کد 0010 استپ
۲ درجه به راست می چرخد .
جريان ورودی اين درايور خيلی کم بوده و جريان دهی خروجی ان تغريبا زياد
است و ميتوان با دو خط کنتری اين دارايور به راحتی دو استپ موتور را
حرکت داد .
ميکرو کنترلر استفاده شده 89 C2051 يک ميکرو کنترلر مشهور که
ايرانيان همگی انرا جوب می شناسند سنسور استفاده شده در مدار مادون
قرمز بوده و نسبط به فوتوسل مطمئن تر به نظر ميرسد برای اين مدار از
هر اپ امپی ميتوان استفاده کرد که من LM324 را ترجيح ميدهم
کريستال مدار حتما بايد 11.0592 باشد .

http://www.kmitl.ac.th/%7Ekswichit/LFrobot/Pbotcircuit.gif
برای تنظيم دقت مدار در محل از يک ولوم 20K بايد استفاده شود بايد اين
نکته را ذکر کنم که اين مدار قبل از حرکت بايد تنظيم شود .

http://www.kmitl.ac.th/%7Ekswichit/LFrobot/IRcircuit.gif
و اخر ان که سنسور های مدار بايد طبق شکل و با رعايت کامل در زير
مدار نسب شود اين رباط سبک بوده و ميتوان از هر استپ موتوری با زاويه
0.7 استفاده کرد.

http://www.kmitl.ac.th/%7Ekswichit/LFrobot/sensors.gif
فایل هگز:
:0300000002000EED
:03000300020055A3
:20000B0002002475810F438901D2AFD2A9D28C12005880FE1 2001B80FBC0E0C0D0758CFFC3
:20002B00758A000508E508B46403750800C395094004C2908 002D290E508C3950A4004C2F4
:20004B00918002D291D0D0D0E032050B327440F59074FFF5B 07450F50C741EF50D7400F548
:20006B000E7432F50F120080E5B0440FF5B01200BC0200732 205810581740178FD12022609
:20008B00F678FD120226E670030200B7E59008F6E65440120 2517B0012024812025A45F0D2
:2000AB0070030200B4740018F602008C15811581220581E5B 0540FF5B078FE120226F6E6FF
:2000CB0054011202517B0012024812025A45F070030200E91 201A97401F50E02018478FE52
:2000EB00120226E654081202517B0012024812025A45F0700 302010D1201C87402F50E02C1
:20010B00018478FE120226E61202517B0912024812025A45F 0700302013CE50C75F000C009
:20012B00E0C0F0120187158115817400F50E02018478FE120 226E61202517B0B1202481271
:20014B00025A45F0700CE61202517B0D12024812025A45F06 00CE50E75F0007B007C0012E8
:20016B00025A45F07003020184E50D75F000C0E0C0F012018 7158115811581227464F59067
:20018B0078FB120226E6240AF509E6F50AE50F75F000C0E0C 0F012020915811581227468C0
:2001AB00F590E50D2405F509E50DF50AE50F75F000C0E0C0F 012020915811581227454F5D4
:2001CB0090E50D2405F509E50DF50AE50F75F000C0E0C0F01 2020915811581227458F59015
:2001EB0078FB120226E6F509E62405F50AE50F75F000C0E0C 0F0120209158115812278FBCE
:20020B001202268603088604BB0004BC00012279E5A3D9FD1 BBBFFF01C80F4C82581C8225C
:20022B00C92581C97A0022D083D082CF2581F581CFC082C08 322CF2581F581CF227C00CBB6
:20024B0030E7011CCB2275F00030E70215F02212026D6009E 4F5F02212026D60F7E4F5F057
:20026B000422C5F0C39C7003E5F09B22FBE493CB22FCE493F B740193CC22FAE493F9740192
:03028B0093CA22F1
:00000001FF

برنامه ی میکرو کنترلر به زبان c:
#include d:\mc51\8051io.h
#include d:\mc51\8051reg.h
extern register unsigned char speedleft,speedright;
register unsigned char high,low,flag,time;

main()
{
P1=0x40;
P3=0xff;
high = 80;
low = 30;
flag = 0;
time = 50;
Start();
while(1) {
P3|= 0x0f;
Run();
}
}

Start()
{
char exit,key;
exit =1;
while(exit)
{
key = P1;
if((key & 0x40)==0) exit=0;
}
}

Run()
{
char sensors;
sensors = (P3 &=0x0f);

if((sensors & 0x01)==0) {
TurnRight();
flag = 1; }

else if((sensors & 0x08)==0) {
TurnLeft();
flag = 2; }
else if(sensors == 0x09) {
Forward(high);
flag = 0; }

else if(((sensors==0x0b)||(sensors==0x0d))&&(flag==0))
Forward(low);

}

Forward(char speed)
{
P1=0x64;
speedright = speed+10;
speedleft = speed;
delay(time);
}

TurnRight()
{
P1=0x68;
speedright = low+5;
speedleft = low;
delay(time);
}

TurnLeft()
{
P1=0x54;
speedright = low+5;
speedleft = low;
delay(time);
}

Reverse(char speed)
{
P1=0x58;
speedright = speed;
speedleft = speed+5;
delay(time);
}




bselectron.mihanblog.com

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

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