Elektronik / Mikrodenetleyici Projeleri/

PIC16F84 ile Siyah Çizgi Takip Eden Robot

Sponsorlu Bağlantılar

PIC Kontrollü İz Süren Robot Projede kullanılan bütün devreler ve mekanik, sistem kendi tasarımımızdır. Malzemeler, birkaç CDROM motoru, teyp kasnakları, PIC mikro denetleyici ve ara uyum devrelerinden oluşmaktadır. Maddi olarak zor imkanlarla bu denli güzel bir çalışmayı gerçekleştirmek kolay olmadı.

Hazırlayan: Melih

Hızla gelişen günümüz teknolojisi ile bir çok alanda insan gücüne ihtiyaç azalmıştır. İnsanların yapacakları işleri akıllı cihazlar yapmaya başlamıştır. Bu cihazlar üretimde maliyeti azaltmakla birlikte kalite kontrolünde ve üretimin bir çok aşamasında kullanılır hale gelmiştir. Robotlar sanayinin tüm alanlarına ve hatta günlük yaşantımıza girmiş olup düşünen cihazlara olan ihtiyaç her zaman artmaktadır. Bu robot beyaz platform üzerindeki siyah çizgiyi takip etmektedir. Amacımız üniversitemizde robot sistemlerinin kullanımını başlatmak ve ileride yapılması planlanan diğer robotlarla ilgili fikir oluşturmak, tasarımlarını kolaylaştırmaktır.

Robotlar bir yerden başka bir yere belli bir yolu izleyerek gitmek için ortamdan ayırdedilebilir işaretlere ve bu işaretleri algılayan algılayıcılara ihtiyaç duyarlar.Bu işaretleme için renk farkı (optik), mıknatıslanma (manyetik) ve iletkenlik (elektriksel) kullanılabilir.Robotun renk farkı tekniğini kullanarak bir yerden başka bir yere gidebilmesi için en basit ve pratik olan yol beyaz bir zemin üzerine siyah bir bant çekip renk farkı oluşturmaktır. Siyah bir zemin üzerine beyaz bir bant çekilerek de bu işaretleme tekniği uygulanabilir.Robotun bu renk farkını algılayabilmesi için CNY70 algılayıcısı kullanılabilir.

Çizgi izlemek için, değişik sayıda CNY70 kullanılabilir. Çizgi, en az 2 algılayıcıyla izlenebilir ancak algılayıcı sayısı artırılarak daha etkili bir izleme sağlanabilir.Aşağıdaki örnek çizgiyi izlemek için üç CNY70 kullanan bir robot içindir.

Çizgi olarak klasik siyah elektrik bandı kullanılmış; tam ortadan maket bıçağı ile kesilerek 7mm olarak zemine yapıştırılmıştır.

Çalışma Adımları:

1) Robotun çalışma prensibi, çizgiyi ortadaki algılayıcıda tutarak ilerlemesine dayanmaktadır.Robot kısa aralıklarla algılayıcının durumunu kontrol ederek çizgiye göre konumunu belirler.

2) Robot ilerlerken, çizgi robotun sağ tarafına gelirse, 3 nolu algılayıcı çizgiyi görecektir.Böylece robot çizginin sol tarafında olduğunu anlayacak ve programı içinde belirtilen sağa dönüş komutunu uygulayacaktır.

3) Dönme işlemi, ortadaki algılayıcının çizgiyi tekrar görmesine kadar devam eder. Bu algılayıcı çizgiyi gördüğünde, robot tekrar düz hareket etmeye başlar.

4) Eğer, çizgi robotun sol tarafına gelirse, aynı işlemler bu taraf için tekrarlanır ve böylelikle çizgi izleme işlemi yerine getirilir.

cny-70 çizgi izleyen robot

Anlatımı kolaylaştırmak ve sistemli bir sunuş bakımından robot tasarımını başlıklar halinde sıralayacağım. Robot, algılama sistemi, karşılaştırma, kontrol ve hareket sistemi katlarından oluşur. Bu katlar bloklar halinde çizecek olursak aşağıdaki şekil ortaya çıkar.

sensor robot cnt70

Öncelikle bu kısımda robotun beyaz platform üzerindeki siyah çizgiyi anlayabilmesi gerekiyordu. Bu da CNY70 yansımalı renk sensörlerini kullanmak sureti ile mümkündür. Sensörün çalışma prensibi kısaca şöyledir. İçerisinde prensip olarak bir Infrared diyot ve foto transistor bulunmaktadır. Aşağıda şekilde de gözlendiği gibi Infrared diyot gözle görülmeyen ışınları yansıtıcı yüzeye gönderir. Yansıtıcı yüzey yani platformun rengine göre ışığı soğurma mantığıyla siyah rengin tamamını emer, beyazı yansıtır. Platformdan yansıyan yada yansımayan ışığı foto transistor beyz akımı olarak kabul ederek kolektör ile emitter arasında değişen akımı oluşturmaktadır.

sensor_2 robot

Algılama sisteminden elde ettiğimiz beyaz ve siyah renkler arasındaki gerilim farkını bir şekilde PIC mikro denetleyicinin anlayacağı lojik ifadelere dökmek gerekir.

Karşılaştırıcı sonucunda elde edeceğimiz lojik 1 siyahı, lojik 0 beyazı temsil edecektir. İşte tüm bu işlemleri yaptırabilmek amacıyla aşağıdaki devreyi Op-Amp LM741 entegresi kullanarak gerçekleştirildi.

algilama_devresi robot

Karar verme sistemi:

Karar verme sisteminde kullanılan PIC 16F84 hakkında kısa bir bilgi vermeyi gerekli görüyorum. PIC, adını İngilizce’deki “Peripheral Interface Controller” cümlesindeki kelimelerin baş harflerinden almış olan bir mikro denetleyicidir. Eğer bu cümleyi Türkçe’ye çevirirsek, “çevresel üniteleri denetleyici arabirim” gibi bir anlam çıkacaktır.

PIC gerçekten de çevresel üniteler adı verilen lamba, motor, röle, ısı ve ışık sensörü gibi I/O elemanların denetimini çok hızlı olarak yapabilecek şekilde dizayn edilmiş bir chiptir. Avantajları arasında programlama donanımının çok ucuz ve kullanışlı olması ve hatta çoğu meraklı elektronik kullanıcı tarafından kullanılarak projeler üretilebilmesini sıralayabiliriz.

siyah_beyaz  çizgi robotu

PIC mikro denetleyiciye yukarıdaki gibi yerleştirilen sensörlerin aldığı durumlar yukarıdaki şekilde görülmektedir. Bu durumlar sonucunda belli bir algoritma geliştirerek assembly komutlar kullanarak PIC mikro denetleyiciye yüklendi.

program robot takip robotu program robotlar pic16f84_robot çizgi

Yukarıda açık şeması verilen devre izci robotun karar verme katının donanım kısmını oluşturmaktadır. Girişleri karşılaştırma katından gelen pinler çıkışı ise iki motor ve bir de alarm LED’idir.

Hareket Sistemi:

Robotunun 3 adet tekeri vardır. Bunlardan birisi çok yönlü olup, diğer ikisi motorlara bağlanmıştır. Motor olarak, piyasada rahatlıkça bulunabilecek oyuncak motoru kullanılabilir. Motorlar birlikte hareket ederken robotun ileri geri hareketini, kilitlemeli tank sistemi kullanılarak sağa ve sola dönüşleri sağlar. Motorlardan birisi dururken diğerinin hareketi ile dönme hareketi gerçekleşmiş olur.

izci_robot robot_1 pic16f84_izci_robot

Kullanılan Malzeme ve Elektronik Elemanlar :

Entegreler:

IC1 = PIC 16F84A
IC2 = LM 324
IC3 = L7805

Transistörler :

T1 , T2 = BD139
FT1 , FT2 , FT3 = BP103-5 (Fototransistör)

Dirençler :

R1 , R4 , R9 , R10 , R11 = 10 K ohm
R12 , R13 , R14 = 270 ohm
R2 , R3 , R6 , R7 , R8 = 470 ohm
R5 = 100 ohm
P1 = 20 K ohm Trimpot

Kondansatörler :

C1 , C2 , C3 , C4 = 100 nF


Diyotlar :

IR 1 , IR 2 , IR 3 = Infared LED Diyot
LED 1 , LED 2 , LED 3 , LED 4 = LED Diyot

Diğer :
2 x Cd-rom sürücü motoru
Teker , Teyp lastiği , vb…
1 x pic için reset butonu
Entegre soketi vb..

Çizgi izleyen robot devre şeması

Çizgi izleyen robot devre şeması

  • Fırat Deveci

    Çok hoş olmuş gerçekten…
    Acaba elinizde var ise C kodlarını koyabilir misiniz…
    teşekkürler…

  • tades

    cok guzel cok beyendım yapımınıda cok guzel acıklamıssın tessekkurler

  • ali kemal

    elinize sağlık çok güzel olmuş ,acaba oyuncak araba 2 motorlumuydu yoksa sonradan mı bir motor daha mı takıldı,piyasadaki bir çok oyuncak araba tek motorlu ondan dolayı sordum..

  • Zeynel

    Arkadaşlar bu proje çok iyi ama yaparken kullandığınız hex kodunuda verirseniz tam bir paylaşım olacak;)

  • Zeynel

    Bu arada ali kemal kardeşim zaten yönleri kontrol için 2 motor lazım
    ÖR: Sensör diyelim ki sol motoru hızlandırdı sağ motor otamatik olaram yavaşlar böylece sağa döner.
    Tekerlekli sandalyeyi düşün onun gibi sol tekeri çevirirsen sağa sağ tekeri çevirirsen sola donrcek ;)

  • okan


    gerçekten güzel bir deney olmuş
    bizde 2 arkadaş bu konuyu ödev aldık ve aynısını bizde yapacağız ege üni de okuyoruz zor gibi geldi biraz ama bakacağız artık
    teşekkürler elinize sağlık

  • Özgür

    Emeğinize sağlık çok işime yaradı bu uygulama,
    ancak acilen bu devrenin C dilinde yazılmış kodları lazım yardımcı olursanız sevinirim..

  • Özgür

    Yok mu yardım edebilecek bir kişi :(

  • fatih

    güzel olmuş baskı devresınıde verırmısınız

  • berkan.k

    Çok güzel olmuş ellerinize sağlık bende bu ödevi aldım ama ben daha 8. sınıfa gidiyorum ve bu ödev çok zor keşke siz olsaydınız yanımda siz yapsaydınız hehe :D ama bence çok güzel ama önemli olan benim bunu nasıl yapacağım:

  • uur

    çok teşekkürler 11. sınıf dönem ödevim bu şuan üzerinde çalışıyorm ama bana C deil Hex kodları lazım :(

    • sertox

      sana bir derleyici lazım ccs olabilir..

  • cihan

    Tamamen hatayla dolu bir açıklama! dikkatli bakarsanız devrenin şemasındaki entegrelerle açıklamalardaki elemanlar tutmuyor hatta entegre fazlası bile çıkıyor,insanlara boşuna masraf ettiriyorsunuz!!!

  • abdullah

    güzel bir çalışma olmuş.. bu devre şemasının proteus-isis programı ile çizilmiş şeması mevcut mu? eğer şema elinizde mevcut ise paylaşır mısınız..

  • iremnur

    beğendim ama bazı hatalarvar dikkat et