You are on page 1of 22

ZG ZLEYEN ROBOT YAPIMI

Tanm ve alma Prensibi


izgi izleyen robot, adndan da anlald zere, renk farkndan faydalanarak bir izgiyi takip eden robot eididir. B robot, endstriyel alanlarda ok faydal olabile!ek bir robott r. "er srekli bir yerden dier bir yere mal g#trlyorsa, b ii otonom olarak bir robota yaptrmak $em ileri $zlandra!ak $em de i$tiya d y lan i g!n azalta!aktr. B gzerg%$a bir izgi izmek. B robotlarn alma prensibi aadaki diyagramla aklanabilir& sistemi k rabilmek iin ise yaplmas gereken tek ey robot n gitmesi gereken

B pro'ede k llana!amz optik sens#rler kzl#tesi(ir) k yayarlar ve tekrar yansyan detekt#rleri ara!lyla toplar ve topladklar b n iddetine g#re belli volta' dzeylerinde k verirler. *a$a iyi son lar alabilmek iin izginin rengi en st seviyede yanstan beyaz veya en dk seviyede yanstan siya$ olmaktadr. +eminin de, da$a iyi son vermesi asndan, izgi siya$sa beyaz, izgi beyazsa siya$ olmas ter!i$ edilir. ,ens#rlerden gelen klar analog old iin, b klar karar verme mekanizmamzn(mikroilem!i) anlayabile!ei dile, lo'ik - ve . lara

d#ntrmemiz gerekmektedir. B d#ntrme ilemini de karlatr! olarak k llandmz opamplar(ilemsel k vvetlendiri!i) yapmaktadr. /pamplar ekilde almaktadr& /pampa bir referans gerilimi veriyor z ve opamp b referans gerilimiyle sens#rlerden gelen gerilimi karlatrp 0 1 (lo'ik-) veya . 1 (lo'ik .) k vermektedir. B k gerilimi, k llandmz devreye ve sens#rlerden gelen gerilime g#re deimektedir. Bizim k llana!amz devrede sens#rlerden referans geriliminin altnda bir gerilim geldiinde opamp 0 1 (lo'ik-), stnde bir gerilim geldiinde de . 1 (lo'ik .) k vermektedir. 2ani sens#rlerimiz siya$ rengi g#rdklerinde opamp . 1, beyaz rengi g#rdklerinde de 0 1 k vermektedir. ,ens#rlerden gelen b verilere g#re de mikroilem!i bir karar vermekte ve b karara g#re de motorlar $arekete geirmektedir. 3ikroilem!inin karar ekilde olabilir&

4 n maral sens#rn izgi zerinde olmas ara!n izginin sol tarafnda old n g#sterir. B yzden ara!n kon m n dzeltmesi iin 5 n maral sens#r izgiyi g#rene kadar saa d#n.

5 n maral sens#r izgi zerinde old iin dz git

- n maral sens#rn izgi zerinde olmas ara!n kon m n izginin B sa yzden tarafnda ara!n old n g#sterir.

dzeltmesi iin 5 n maral

sens#r izgiyi g#rene kadar sola d#n.

B d r m bir izgi izleyen robot n izgi zerinde gitmesi iin yeterlidir. B 4 sens#rl bir sistem iin geerlidir. ,ens#r says artrlarak ve farkl konfigrasyonlar k llanarak belki da$a iyi son lar alnabilir. 6n!ak n n tmamak lazm ki da$a fazla sens#r, da$a fazla d r m b da da$a z n bir program demektir. Programn z n olmas, sistemin farkl d r mlar karsnda g#stere!ei tepki sresinin da$a z n olmasna sebep ol r ki b da fazla sens#r k llanmann k#t yandr. B rada sistemin vere!ei tepki sresi robot n izgiye salaya!a y m asndan #nemli old iin gerekmedii sre!e fazla sens#r k llanmann yg n olmaya!an s#yleyebilirim. 6yr!a sens#rlerin formasyon ve aralarndaki zaklk direk olarak ara!n performansn etkileye!ei iin b da bir dier #nemli noktadr. B $zna, geniliine, zaklk ve sens#rlerin dalm biimi ara!n z nl na ve sistemin vere!ei tepki sresine g#re

deitii iin en yg n deerleri b lmak iin ya btn b etkenler g#z #nnde b l nd r larak meakkatli bir $esaplama yaplmal ya da deneme yanlma y#ntemi k llanlmaldr.

3ekanik 7sm
6ra!n mekanik ksm da dier ksmlar gibi robot n performans zerinde dor dan bir etkiye sa$iptir. B sebeple mekanik tasarm da #nemlidir. 8obot n kasas iin birka farkl tasarm

k llanlabilir. B nlardan biri $azr bir oy n!ak araba alnp on n kasas b i iin k llanlabilir. B oy n!ak arabalar, otomobillerde old gibi, a!kerman steering denilen sr sistemine sa$iptir. B sr sisteminde ara!n $areketi arka tekerleklere bal olan bir motorla salanrken, y#nlendirilmesi iin de #n tekerleklere bal bir adet motor k llanlmaktadr. B sr sisteminde ara!n manevra yetenei dk ola!andan keskin vira'lar d#nemeye!ektir. Bir dier sistem de #nde bir adet sar$o tekerin k llanld ve arka tarafta da birbirinden bamsz $areket eden iki teker ve b nlara bal motorlardan ol an sistemdir. B faydalanarak sistemde ara b sr d#nn iki tekerin $z farkndan yapmaktadr sistemine de diferansiyel sr denir. 6ra da$a yava d#nen teker tarafna dor y#nlene!ek ve tekerlekler arasndaki $z fark arttka da ara!n manevras da$a da keskinlee!ektir. 8esimde g#rlen robotta motorlar tekerleklere direk baland iin motorlar yksek akm eke!ektir b n n iin de yksek akml pillere i$tiya vardr. *ili k t l motorlar k llanlarak motorlar ara!n ektii akm drmek mmkndr. Tabi b old ndan b bir $azr devrelerinizi on n zerine k rmalsnz. mekanik bir dier motorlara g#re da$a pa$al ekilde robot n aksam kendiniz alp maliyeti de artmaktadr. "er b#yle yaparak ramak istemiyorsanz, oy n!ak araba

9ekilde bizim yapm old m z izgi izleyen robot g#rlmektedir. B robot sr sistemi olarak iki adet dili k t l d! motor, b nlara bal 5 teker ve #nde bir adet sar$o tekerden ol maktadr. :#vde ise dayankl ve $afif olan ple;iglass maddesinden yaplmtr. Batarya olarak da -5 1 asit batarya k llanlmtr. B batarya ardr ve ab k dear' olmaktadr, k llanlma sebebi ise ! z olmasdr.

"lektronik 7sm 8obot <in :erekli 3alzemeler 7ontrol devresi iin&


- adet P=>-?@?5A6(mikrodenetleyi!i) - adet B5C4*(motor sr entegresi) - adet DEF>-E(s!$mitt trigger) 5 adet -AGlik dip soket(P=>-?@?5A6 iin)

- adet -?Glk dip soket(B5C4* iin)

- adet -EGlk dip soket(DEF>-E iin) - adet E 3Fz kristal 5 adet 55 p@ seramik kondansat#r - adet -.. n@ seramik kondansat#r - adet -. kH diren E adet 5Gli klemens

1olta' reglat#r devresi iin&


- adet DA.0(volta' reglat#r)

- adet 44. I@ kondansat#r

- adet -. I@ kondansat#r - adet ..- I@ kondansat#r - adet -JE..-(diyot) 5 adet 5Gli klemens

,ens#r devresi iin&


4 adet >J2D.(sens#r) 4 adet -.. H diren 4 adet ED k H diren

*ier malzemeler&

2eteri kadar kablo(devreleri birbirine balamak iin) CK-5 volt veya E,A volt batarya-

3ekanik aksam iin& 6ra iin yg n bir kasa 5 adet dili k t l *> motor 5 adet teker 3otorlar tekerleklere ve kasaya monte aksamlar($ b, B ayak vb)

edebilmek iin

yg n

- adet sar$o teker

7 llandmz elemanlar nedir ne ie yararL P=>(mikrodenetleyi!i)


P=>(Perip$eral =nterfa!e >ontroller) 3i!ro!$ip firmasnn rettii bir mikrodenetleyi!idir. 3ikrodenetleyi!i ise mikroilem!i, 863, 8/3, 6BM, kontrol nitesi ve =N/ nitesini tek bir !$ip iinde barndran entegre(tmleik) devredir. B devrede mikrodenetleyi!i k llanlmasnn sebebi d r& Fer robotta old gibi izgi izleyen robot m zda da bir karar verme mekanizmas olmaldr. B mekanizma da$a #n!e de s#ylediimiz gibi ekilde olmaldr& 8obot sens#rleri vastasyla d ortamdan bilgileri toplar ve b bilgiler robot

tarafndan yor mlanr ve b

yor mlara g#re eyleyi!ilerine(motorlara)

yg n

kom tlar verir. <te b yor mlama ve kom t verme ilemi mikrodenetleyi!i tarafndan gerekletirilir. B sistemdeki sens#rleri g#zlere, mikrodenetleyi!iyi beyne, motorlar ise kol veya ba!aklara benzetebiliriz. B #rnekten de anlald zere mikrodenetleyi!i ksm robot m z n en #nemli parasdr. Tabi ki dier mekanizmalar da(alglay!, eyleyi!i) sistemin ayrlmaz bir paras old iin onlar da #nemlidir. B yg lamada P=> k llanmamzn sebebi ise ! z, kolay lalabilir olmas ve k llanm kolayldr. *a$a karmak ve $zn #nemli old sistemlerde(g#rnt ileme gibi) P=> yetersiz kala!andan baka mikrodenetleyi!iler k llanmak gereke!ektir, an!ak b pro'e iin P=> ideal bir mikrodenetleyi!idir. 6yr!a P=>Gin bir dier #zellii de birka dille(Pi! 6ssembly, Pi! Basi!, Pi! >) programlanabilmesidir. B kon daki detayl bilgi programlama b#lmnde verilmektedir.

B5C4*(3otor sr! entegre)


Pi!Gin bir ba!andan(pininden) ekebile!eimiz akm maksim m 50 m6 dzeyindedir. B akm seviyesi bir motor srmek iin yeterli olmaya!andan akmn k vvetlendirilmesi(ykseltilmesi) gerekmektedir. <te b k vvetlendirme iini de iinde transistor, mantk kaps ve diyot barndran B5C4* entegresi yapmaktadr. B old ndan entegre vastasyla ekilebile!ek maksim m akm ?.. m6 fazla akm gerektiren yg lamalarda b entegre da$a

k llanlamaya!aktr, on n yerine ekilebile!ek akm dzeyi E 6G e kadar kabilen B5CA entegresi k llanlabilir. B entegreler $akknda da$a fazla bilgi kataloglarnda(datas$eet) b l nabilir.

DEF>-E(s!$mitt trigger)
,!$mitt Trigger ierisinde ? adet opamp devresi barndran bir entegredir. B almaktadr. opamp devresi karlatr! olarak #n!e de belirttiim gibi *a$a

karlatr!(!omparator) devresinde referans gerilimi yg ladmz bir giri ve ykseltmek veya drmek istediimiz dier bir giri olmak zere toplamda 5 giri ve - k b l nmaktadr. 8eferans gerilimi ve giri gerilimi arasndaki ilikiye g#re bir k gerilimi ol maktadr. DEF>-E entegresinde referans gerilimi 5.0 1 olarak ayarlanmtr. B sebeple eer sens#rlerden gelen gerilim 5.0 1 n zerindeyse DEF>-E b gerilimi drp . 1 yapmakta, 5.0 1G n altndaysa da gerilimi ykseltip 0 1 yapmaktadr. *a$a #n!e s#ylediim gibi Pi!Gin sens#rlerden gelen veriyi dzgn olarak alabilmesi iin b ilem gereklidir. 6ksi $alde sistem kararsz bir yapya sa$ip ola!aktr. 6yr!a DEF>-E -E pine sa$iptir b nlardan 5Gsi besleme girii, ?Gs veri girii, ?Gs da veri kdr. ? giri ve k old iin bir entegreye en fazla ? sens#r balanabilmektedir. Biz robot m zda 4 sens#r k llana!amz iin bir entegre yeterli olmakta 4 giri ve 4 k da bo kalmaktadr.

>J2D.(sens#r)
Bir optik sens#r eidi olan >J2D. veri!i(transmitter) olarak kzl#tesi(ir) led(lig$t emitting diode), al!(re!eiver) olarak da fototransistor iermektedir. 9ekilde de g#rld zere kzl#tesi led den kan k bir yzeyden yansyarak fototransistor n baz(base) meydana ve ! nda bir tetiklenme B iletime getirmektedir. aras

tetiklenme son ! nda kollekt#r(>) emet#r(") gemektedir. "er fototransistor bir ana$tar(sOit!$) olarak dnrsek baza k geldii , yani kollekt#rPemet#r aras iletimde, k kon mdadr, yani kollekt#rPemet#r

zaman ana$tar kapal gelmediinde ise ana$tar ak aras kesimdedir diyebiliriz.

9ekilde >J2D.Gin devre emas verilmektedir. Transistor n baz ! tetiklendii zaman kollekt#r emet#r aras iletime geer ve 0 1Gl k gerilim kaynandan topraa dor transistor zerinden akm akar ve P=>Gin >J2D. e bal olan ! . ol r, baz ! tetiklenmedii zaman ise kollekt#r emet#r aras ak ol r ve akm kaynaktan P=>Ge dor akar ve P=>Gin ba!a 0 1 ol r. >J2D.Gin alma prensibi b *a$a #n!e sens#rlerin kart ekildedir. zerindeki s#ylemitim.

dalmnn #nemli old n

izgi olarak 5 !mGlik siya$ veya beyaz elektrik band k llana!amz dnrsek ekildeki konfigrasyon robot iin yg n bir dalmdr. ,ens#rlerin kon m ve says da piste g#re deie!ektir. Qrnein yol izgisine dik izgilerin old bir pistte b dalm yg n deildir. ,ens#rlerin kendi iindeki kon mlarnn #nemli olmasnn yansra ara!n neresinde old da #nemlidir. "er pist zerinde k#pr, tmsek gibi kntlar yoksa sens#r devresini ara!n en #n ksmna, tekerin $emen #nne koy n z.

7ristal
7ristal bir osilat#r eididir ve pi!Gin almas iin osilat#r gerekli bir elemandr. /silat#r bir kare dalga sinyali retir, b sinyale saat(!lo!k) sinyali denir. ,aat sinyali pi!Ge yklediimiz programn almas iin gereklidir ve sinyalin frekans da kom tlarn ileni $zn da deitire!ektir. 7ristalin frekans arttka programn alma $z da artmaktadr. B yzden kristalin frekansn seerken yapa!amz yg lamay g#z #nnde b l nd rmalyz. Biz b pro'ede E 3FzGlik kristal k llanmaktayz. Bizim iin b $z yeterlidir.

*iyot
*iyot ters y#nde akm geirmeyen bir devre elemandr. B radaki k llanl ama! ise devreye bataryay yanllkla ters baladmzda devre elemanlarnn zarar g#rmesini engellemektir.

7ondansat#r
7ondansat#r farkl amalarda k llanlabilir. B rada k llanma ama!mz gerilim kaynamzda ol abile!ek ani ykselileri veya inileri filtre edip dzgn bir elektrik akm ol t rmak ve b ndan doabile!ek zararlar engellemek.

8obotta 7 llanla!ak *evreler 6na *evre

Bask *evre Fali

1olta' 8eglat#r *evresi

Bask *evre Fali

,ens#r *evresi

Bask *evre Fali

*evrelerin 7 r lmas
2 karda verilen devreler farkl ekillerde k r labilir& Bask devre yaplabilir, pertinaks kart(delikli kart) veya breadboard(delikli panel) k llanlabilir. 6n!ak bask devre yapabilmek iin baz alet edevat ve malzemelere i$tiya vardr. "er b malzemeler sizde b l nm yorsa bask devreyi b ii yapan kiilere de

yaptrabilirsiniz. "lemanlar delikli pertinaksn (delikli kart) zerine de le$imleyebilirsiniz ya da $ibir le$im veya alet edevata i$tiya olmakszn breadboard(delikli panel) k llanabilirsiniz. Breadboard n 7 llanl 9ekilde zere g#rld breadboard

$arflerden (6, B, >, *, ", @, :, F, =, R) ol an st nlara izgiler satrlara ve rakamlardan ol an

ayrlmtr. 0Gli olarak

9ekilde g#rlen dikey kendi aralarnda iletimdedir. 2ani 6-,B-,>-,*-,"- ayn $at zerinde b l nmaktadr. 7eza 65,B5,>5,*5,"5 kendi iinde iletimdedir ve b ekilde gitmektedir. "n d ksmlarda b l nan mavi ve krmz izgilerle g#sterilen delikler ise ekildeki yatay siya$ izgi boy n!a iletimdedir. B bilgiler nda devreleri breadboard zerine yg n ola!ak ekilde k rabilirsiniz. 6n!ak sens#r devresini bir delikli pertinaksa k rmanz veya bask devre olarak yapmanz da$a #n!e verdiim formasyon salayabilmek iin gereklidir. Pertinaks 7 llanm 9ekilde de g#rld zere delikli pertinaks delik bakr dairelerden ol maktadr. 7 llanla!ak elemann ba!aklar b deliklerden geirilir ve devre emasna tel ve le$im ara!lyla yg n biimde birbirine balanmas gereken elemanlar birletirilir.

Bask *evrenin 2apl Bask devre iin gerekli alet ve malzemeler


3ini el matkab Favya Be$im St Myg n boy tlarda bakr plaket Per$idrol T zr $ 6setat kad Qn!elikle yapa!anz devrenin bask devre $alinin(elemansz olann) ayn boy tlarda bir lazer yaz!dan asetat kad zerine ktsn aln. "er lazer yaz! b l nm yorsa $er$angi bir yaz!dan 6E kadna kt alp da$a sonra b ktnn asetat kad zerine fotokopisini ektirebilirsiniz. 6n!ak lazer yaz! da$a iyi son vere!ektir. kty aldktan sonra asetat kadndaki fazlalklar bir makas yardmyla kesiniz. B ilemden sonra sra geldi asetat zerindeki ekli bakr plaketin zerine aktarmaya. B yardmyla temizlenmelidir. B i iin #n!elikle plakann zeri parmak izi, kir kalmaya!ak ekilde gzel!e snger ve deter'an ilem eklin plakann zerine dzgn!e aktarlabilmesi asndan #nemlidir. Temizlik iinden sonra asetat kadn, toner ksm plakann bakr ksmna gele!ek ekilde plakann zerine kapatalm. 6setat kadn tlerken kaymamas iin erimeye!ek bir bantla(elektrik band olabilir) kenarlarndan plakaya yaptrn. *a$a sonra tnzn ayarn ynlNpam kl ve b $arsz kon m na getirip kzmas iin bekleyin. St kzdktan sonra asetat kadnn zerine in!e bir bez #rterek plakay bastrarak tlemeye balayn. B ilemi 4K0 dakika plakann $er tarafna yg layn da$a sonra asetat kadn bir kenarndan $afife

kaldrarak plakann zerine yollarn kp kmadna baknz, eer kmayan yerler varsa bir mddet da$a b ksmlar tleyiniz. 2alnz b ilemin ok zamamas lazm, aksi takdirde yollar plakann zerinde ilem de bittikten sonra devrenin so masn dalmaya balar. B

bekleyelim, b zdolabna koy p $zl biimde so masn salarsanz da$a iyi son alabilirsiniz. ,o ma ileminden sonra asetad bakr lev$a zerinden yavaa kaldrnz, eer tam kmayan yollar varsa in!e l bask devre kalemiyle b yollar birletirip btn yollarn tam old ndan emin ol n. Btn b ilemler srasnda lev$ann bakr ksmna dok nmamaya alnz. "er bakrn zerinde parmak izi veya kir ol rsa b ksmlar devreyi asidin iine attmzda tam olarak erimeye!ek veya ge eriye!ektir. B yzden bakr yzeyin olabildiin!e temiz olmas lazmdr. ,ra geldi bakr eritme ilemine. Bir plastik kabn ierisine - per$idrol, 4 t z r $ orannda bir karm $azrlaynz. B ilemde asitle ratmz iin eldiven giymeniz tavsiye edilir, eer plak elle b ilemi yapyorsanz aside temas etmeyiniz ve mmknse b ilemleri ak ortamda yapnz. 7arm $azrladktan sonra plakay asidin iine yavaa braknz. "rime ilemini $zlandrmak iin kab yavaa sallayabilirsiniz. 2ollarn dndaki bakr ksm tam olarak eridikten sonra lev$ay asit iinden karnz ve eme altna t tarak asidin lev$a yzeyinden gitmesini salaynz. 2ollarn zerindeki toner izini kaldrabilmek iin bir sngerin yeil ksmn bir miktar deter'anla birlikte plakann zerine bastrarak srnz. Toner izlerini de ortadan kaldrdktan sonra plakay bir maket ba ara!lyla yg n boy tlarda kesebilirsiniz. Bev$ay kolay bir ekilde kesebilmek iin !etvel yardmyla maket bayla kesmek istediiniz yerden izikler ol t r n ve b iziklerin zerinden geerek izii iyi!e derinletirin ayn ilemi devrenin ters taraf iin de gerekletirin, an!ak dier izgiyle ayn $izada olmasna dikkat edin. Plaka kolay ve dzgn!e krlabilir d r ma geldikten sonra bir pense veya kargab rn yardmyla devreyi izdiiniz yerden dikkatli!e krnz, da$a

sonra isterseniz bir eyeyle kartn kenarlarn dzeltebilirsiniz. 9 n s#ylemem gerekir ki b ilemler biraz g gerektirmekte ve ratrmaktadr. *evreyi yg n boy tlarda kestikten sonra sra geldi devredeki delikleri amaya, b ilem iin bir mini el matkab k llanmanz gerekmektedir ve plakann zerindeki bakr yollar kaldrmamak iin deliin boy t na yg n bir matkap ! k llannz. "n son olarak da devrenin bask devre $aline(elemanl d r m) bakarak elemanlar devre zerine le$imleyiniz (Bu ii yaparken sizin yaptnz bask devreyle yukarda verilen devrelerin bask devre hallerinin birbirinin aynas(mirror) olduunu unutmaynz ve elemanlar lehimlerken buna dikkat ediniz. Kolaylk salamas asndan yukardaki bask devrelerin daha byk bir ktsn aynalanm(mirror) olarak almanzda fayda vardr. Bu ktya bakarak elemanlar devreye lehimlerseniz sizin iin daha kolay olur) 6n!ak P=>, B5C4*, DEF>-E gibi entegreleri devreye le$imlemeyeniz, nk le$imleme srasnda b entegreleri yakabilirsiniz, on n yerine b entegreler iin listeye yazdmz soketleri devreye le$imleyip da$a sonra da entegreleri soketlere entik ksmlar st ste gele!ek ekilde taknz.

Programlama
Pi! i programlarken 4 dil k llanabiliriz. B nlar Pi! 6ssembly, Pi! Basi! ve Pi! >G dir. 6ada Pi! 6ssembly dilinde yazlm #rnek izgi izleyen robot kodlarn b labilirsiniz. Tabi b alabilirsiniz. kodlar gelitirip da$a iyi son lar da

Pi! 6ssembly
6ssembly kodlarnz yazp derlemek iin 3i!ro!$ip firmasnn !retsiz olan 3plab =de programn k llanabilirsiniz. B sitesinden indirebilirsiniz. program 3i!ro!$ipGin kendi

3plabGn 7 llanm
Qn!elikle k llana!amz mikrodenetleyi!iyi semeliyiz. B n n iin >onfig reN,ele!t *evi!e ksmna gidelim.

B radan P=>-?@?5A6Gy seip /7 diyelim.

9imdi kodlarmz yazabilmek iin @ileNJeO deyip yeni bir sayfa aalm.

*a$a sonra @ileN,ave 6s ksmndan dosya6di.asm eklinde kaydedelim. 6tmz b bo sayfaya kodlarmz yazabiliriz.
;ZG ZLEYEN ROBOT RNEK ASM KODLARI ;BU PROGRAM BEYAZ ZEMN ZERNE SYAH ZG N VE DFERANSYEL SR SSTEM N YAZILMITIR ;Tuna BULUT TARAFINDAN YAZILMITIR LIST P !"F"#$A IN%LUDE &P!"F"#$A'IN%& ((%ONFIG ()T(OS% * (+DT(OFF * (P+RTE(ON * (M%LRE(ON * (BODEN(OFF * (LVP(OFF * (DATA(%P(OFF * (%P(OFF MOVL+ H,-., MOV+F %M%ON ;%OMPARATOR ZELL/ KAPALI VE PORTA I0O N AKTF MODDA %LRF PORTB ;PORTB Y SIFIRLA ;GR1IKI TANIMLAMALARI BANKSEL MOVL+ MOV+F %LRF BANKSEL %LRF TRISA H,FF, TRISA TRISB PORTB PORTB ;BANK! E GE YAP ;PORTA NIN BTN PNLERN GR YAP ;PORTB NN BTN PNLERN IKI YAP ;TEKRAR BANK- A GE ;PORTB Y SIFIRLA

;ANA PROGRAM DONGU BTFSS GOTO BTFSS GOTO BTFSS GOTO GOTO DUZ BSF BSF GOTO SOL BSF B%F PORTB25 PORTB2" ;SAG MOTORU ALITIR ;SOL MOTORU DURDUR PORTB25 PORTB2" DONGU ;SAG MOTORU ALITIR ;SOL MOTORU ALITIR PORTA2! DUZ PORTA2SOL PORTA2# SAG DONGU ;ORTA SENSR KONTROL ET E/ER - SA3SYAH ZGDEYSE4 DUZ GIT ;! SE BR SONRAK KOMUTU ATLA SONRAK KOMUTA GE ;DUZ ALT RUTNNE GT ;SOL SENSR KONTROL ET - SA SOLA DON ;! SE BR SONRAK KOMUTU ATLA SONRAK KOMUTA GE ;SOL ALT RUTNNE GT ;SAG SENSR KONTROL ET - SA SA/A DN

GOTO SAG B%F BSF GOTO END

DONGU PORTB25 PORTB2" DONGU ;SAG MOTORU DURDUR ;SOL MOTORU ALITIR ;PROGRAMI SONLANDIR

9 n s#ylemem gerekir ki b kodlarla robottan ok yksek bir performans beklenmemelidir. 6ra!n d#nleri da$a y m ak yaplarak da$a iyi son lar alnabilir. B ara diferansiyel sr sistemine sa$ip old iin bir teker d rd r larak bir teker de tam $zda d#ndrlerek yaplan d#nler ok sert olmaktadr. B da ara!n yalpalayarak $areket etmesine sebep ola!aktr. Tekerlekler aras $z fark azaldka ara!n d#n as da azala!ak ve da$a y m ak bir d#n salana!aktr. 3otorlarn d#n $zn da volta'larn drerek drebiliriz. B n n iin PT3(P lse Tidt$ 3od lation) metod n k llana!az. PT3 metod nda pi!Gin kna dz bir sinyal deil de ekildeki gibi bir kare dalga g#nderiyor z.

- sresi

. sresi

k volta'n belirleyen, - sresinin toplam sreye oran olmaktadr. Qrnein -.. Is -, -.. Is de . g#nderirsek k volta'mz 0U(-..N(-..V-..)) den 5.0 1 olmaktadr. B ekilde $z ayarlayabilir ve da$a iyi son alabiliriz. B ilemi de asm de ekilde yapabiliriz.
;ZG ZLEYEN ROBOT RNEK ASM KODLARI ;BU PROGRAM BEYAZ ZEMN ZERNE SYAH ZG N VE DFERANSYEL SR SSTEM N YAZILMITIR ;Tuna BULUT TARAFINDAN YAZILMITIR LIST P !"F"#$A IN%LUDE &P!"F"#$A'IN%& ((%ONFIG ()T(OS% * (+DT(OFF * (P+RTE(ON * (M%LRE(ON * (BODEN(OFF * (LVP(OFF * (DATA(%P(OFF * (%P(OFF ;1111111111111111111111111111111111111111111111111111111111111111111111DE/KEN TANIMLAMALARI111111111111111111111111111111111111111111111111111111111111111111111 %BLO%K H,#-, SAYA% ;SAYA% DE/KENN BR ADRESE ATA IS ;IS DE/KENN BR ADRESE ATA BEK ;BEK DE/KENN BR ADRESE ATA END% ;111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 MOVL+ H,-., MOV+F %M%ON ;%OMPARATOR ZELL/ KAPALI VE PORTA I0O N AKTF MODDA %LRF PORTB ;PORTB Y SIFIRLA ;GR1IKI TANIMLAMALARI BANKSEL MOVL+ MOV+F %LRF BANKSEL %LRF TRISA H,FF, TRISA TRISB PORTB PORTB ;BANK! E GE YAP ;PORTA NIN BTN PNLERN GR YAP ;PORTB NN BTN PNLERN IKI YAP ;TEKRAR BANK- A GE ;PORTB Y SIFIRLA

;ANA PROGRAM MOVL+ D,!#$, MOV+F IS

;IS DE/KENNE !#$ SAYISINI YKLE

MOVL+ MOV+F DONGU BTFSS GOTO BTFSS GOTO BTFSS GOTO GOTO DUZ BSF BSF GOTO SOL BSF

D,!#$, BEK PORTA2! DUZ PORTA2SOL PORTA2# SAG DONGU PORTB25 PORTB2" DONGU PORTB25

;BEK DE/KENNE !#$ SAYISINI YKLE ;ORTA SENSR KONTROL ET E/ER - SA3SYAH ZGDEYSE4 DUZ GIT ;! SE BR SONRAK KOMUTU ATLA SONRAK KOMUTA GE ;DUZ ALT RUTNNE GT ;SOL SENSR KONTROL ET - SA SOLA DON ;! SE BR SONRAK KOMUTU ATLA SONRAK KOMUTA GE ;SOL ALT RUTNNE GT ;SAG SENSR KONTROL ET - SA SA/A DN

;SAG MOTORU TAM GTE ALITIR ;SOL MOTORU TAM GTE ALITIR ;SAG MOTORU TAM GTE ALITIR

;1111111111111111111111111111111111111111111111SOL MOTORU 67- HIZDA ALITIR3P+M41111111111111111111111111111111111111111111111111111 BSF PORTB2" MOVF IS2+ %ALL GE%IKME B%F PORTB2" ;SOL MOTORU DURDUR MOVF BEK2+ %ALL GE%IKME ;111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 GOTO DONGU SAG BSF PORTB2" ;SOL MOTORU TAM GTE ALITIR ;1111111111111111111111111111111111111111111111SAG MOTORU 67- HIZDA ALITIR3P+M411111111111111111111111111111111111111111111111111111 BSF PORTB25 MOVF IS2+ %ALL GE%IKME B%F PORTB25 ;SAG MOTORU DURDUR MOVF BEK2+ %ALL GE%IKME ;111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 GOTO DONGU GE%IKME MOV+F SAYA% DONGU# DE%FSZ SAYA%2F GOTO DONGU# RETURN END ; + YAZMA%INDAK DE/ER SAYA% DE/KENNE ATA ;SAYA% DE/KENNDEK SAYIYI ! AZALT VE E/ER - SA BR SONRAK KOMUTU ATLA ;PROGRAMI SONLANDIR

=, ve B"7 deikenlerine yklenen saylar deitirerek motor n farkl $zlarda d#nmesini salayabilirsiniz. *eneme yanlma y#ntemiyle en yg n $z deerini b labilirsiniz. B programlardan birini yazdktan sonra tekrar kaydedin da$a sonra da Pro'e!tNW i!kb ild den yazdnz kod derleyin.

9imdi sra geldi kod pi! e ykleme iine. B n n iin bir programlay!ya i$tiya!nz vardr. "er 6nkaraGda b l n yorsanz Ml sP7onya ,okakXtan yg n fiyata temin edebilirsiniz. B programlay!larn kimisi seri porta, kimisi paralel porta, kimisi de sb ye taklmaktadr. Msb den taklanlar dizst bilgisayarlarla da k llanlabilmektedir. 6n!ak dierleri dizst bilgisayarlarda dzgn olarak almamaktadrlar. B n n bir son ! olarak da sb programlay!lar dierlerine g#re da$a pa$aldrlar. B programlay!larn yannda programlar da b l nmaktadr. B programlar k llanarak kod n z derledikten sonra ol an $e; dosyasn pi!G e ykleyebilirsiniz.

Dipnot 1)Eer 4.8 !"# pi! #"!!$n$%$#&$n'( )o!t$* re+,!$t-r, .e)re&ini #"!!$n/$/$!'&'n'(. An$ .e)re.e +-r,!en 01 +iri2ine .e 3" pi!i .ire# 3$!$/$!'&'n'(. 4n"t/$/$n'( +ere#ir #i 01 +iri2i .ire# /otor!$r' 3e&!e/e#te.ir. B" 5,(.en #"!!$n.''n'( 3$t$r5$ i!e /otor"n "5"/!" o!/$&' +ere#/e#te.ir.

6$5n$#!$r7
:l T ay, "lektronik Fobi, 6lfa 2aynlar, 5.bs.5..E, 5E? sf., =,BJ& CD0P5CDPEA-P/r$an 6ltnbaak, 3ikrodenetleyi!iler ve Pi! Programlama, 6lta 2ayn!lk, -.bs.5..0,450 sf. =,BJ&CD0PAA4EP.CP? /dt 8obot Topl l *#kmanlar 6nkara Telsiz ve 8adyo 6mat#rleri 7l b 3i!ro!$ip

8AZIRLAYAN
T na BMBMT

You might also like