Gaz Kaçak Bulucu Robot

20151201_214902Gaz bulucu robotumuz,engelden kaçarak yoluna devam ediyor. Ortamda kaçak gaz var ise ışık ve ses ile ikaz vermektedir. Çeşitli alanlarda kullanılabilecek robotumuz genel olarak bitirme projelerinde kullanılmaktadır. Ir alıcı verici ile engel algılamaktadır. IR sensör devremiz 16f628a entegresi kullanılarak yapılmaktadır.

IR led tetiklemesini pic ile yapılmakatadır. Tsop tarafından alınan sinyaller pic tarafından işlenerek çıkış vermektedir.İki adet ır led ve bir adet tsop tarafından gerçekleşen alıcı bölümü çift taraflı engel algılama yapmaktadır.Algılanan engelin hangi tarafta olduğu göstermesi için led ler kullanılmıştır. Ve çıkış olarak 5V vermektedir.

Robotumuzda kullanılan devreler:

  • İşlemci Devresi
  • Motor Sürücü Devresi
  • Engel Sensör Devresi
  • Gaz Sensör Devresi

 

İşlemci Devresinde 16f628a kullanılmaktadır.

16f628A:

PIC16F628, diğer picler gibi RISC yapısı üzerine kurulu Harvard mimarisi ile üretilmiştir ve flaş program belleğine sahip PIC16CXX ailesinden 8 bitlik bir mikrodenetleyicidir. PIC16F628’in mimari yapısından dolayı program ve veri bellekleri fiziksel olarak ayrı birimlerdedir ve bunlara farklı veri yolları ile erişilmektedir. Tablo2.12’de PIC16F628’in genel özellikleri görülmektedir.

Saat Frekansı En Yüksek Çalışma Frekansı 20 MHz
Bellek Flash Program belleği 2 k
RAM Belleği 224 byte
EEPOM Belleği 128 byte
Çevresel Birimler Zamanlama (TIMER) modüleri TMR0, TMR1, TMR2
Analog Karşılaştırıcı 2
Yakala\Karşılaştır\PWM Modülü 1
Seri Haberleşme USART
Diğer Özellikleri Kesme Kaynağı 10
Giriş\Çıkış Uç Sayısı 16
Çalışma Gerilimi Aralığı 3-5.5V
Brown-out Algılama Var
Kılıf (Package) Biçimi 18-pin DIP, SOIC 20 pin SSOP

16F628 İN GENEL ÖZELLİKLERİ
1).Osilatör çalışma hızı 20MHZ e kadardır.
2).MCLR reset veya giriş pinleri programlanabilir.
3).3V dan 5.5V a kadar Çalışma aralığı vardır.
4).Dahili osilatöre sahiptir.
5).LPV Programlanabilir alçak gerilim özelliği vardır.
6).2048K FLASH program belleği mevcuttur(16 F deki f harfi Flash belleği simgelemekedir) bu bellek 1000 kere okunup yazılabilir.
7).Her bir bacağından çekilecek max. akım miktarı 25 mA civarında olup bu akım led sürmek için yeterlidir.

BACAK GÖREVLERİ
İşlemcinin bacak sayısı 18 olup bunların 8 i A PORT 8 i B PORT u olarak kullanılır.

1 RA2 Portu 18 RA1 Portu
2 RA3 Portu 17 RA0 Portu
3 RA4 Portu 16 RA7 Portu/Osilatör/
4 RA5 Portu 15 RA6 Portu/Osilatör/
5 – Besleme Ucu 14 + Besleme Ucu
6 RB0 Portu 13 RB7 Portu
7 RB1 Portu 12 RB6 Portu
8 RB2 Portu 11 RB5 Portu
9 RB3 Portu 10 RB4 Portu

İŞLEMCİNİN BESLEME UÇLARI
16f628 in çalışma aralığı 3 volt ile 5 volt arasındadır ideal gerilim olarak ta 5 volt söylenebilir aşağıdaki resimde kullanılan 7805 entegresi verilen gerilim değerini 5 volt a çevirerek gerekli beslemeyi sağlar.5 nolu VSS – 14 nolu VDD + Besleme uçlarıdır

OSİLATÖR
16f628 in dahili osilatörü bu işlemci için + avantajlarındandır fakat bu işlemciye harici osilatorde bağlamak mümkündür. Resimde de görüldüğü üzere 15 ve 16 nolu bacaklar osililatör uclarıdır.
#fuses INTRC_IO şeklindeki sigorta ayarı dahili osilatör kullanacağımızı belirtir.

Motor Sürücü Devresi

Genellikle robotlarımızın tamamında kullandığımız L293D motor sürücü entegresinin en büyük avantajı motor voltajı ile besleme voltajını farklı bacaklardan uygulanmasıdır.

çizgi izleyen 1.2 bacak bağlantıları

L293D:

  • 16 pinli yapıda, 2 kanallı motor sürücüdür.
  • Motorlara 5-36 V ve motor başına 0.6A akım verir.
  • Zorlama akımı 1.2A dir.

Engel Sensör Devresi

Engel sensör devremizde 2 ader ir led ve alıcı olarak tsop 1138 kullanılmıştır.Tetikleme için pic 16f628a dan ve yazılımlardan faydalanılmıştır.Engel algıladığı zaman led yanar ve çıkış olarak +5v verir.

sensör devre şeması

Gaz Sensör Devresi

gaz sensörü

GAZ SENSÖR Devre şeması

gaz sensörü

ANA DEVRE ŞEMASI:

Ana kart üzerinde engel sensör devre şeması,işlemci ve motor sürücü devresi bulunmaktadır.

DEVRE ŞEMASI

Robotumuz çalıştığı an bir müddet beklemektedir bu sırada gaz sensörü aktif haldedir bunun sebebi gaz sensörünün içindeki rezistans ısınmaktadır bunun için bir süre bekledikten sonra sensör hazır haldedir.Robotumuz ileri yönde harekete geçmektedir.Önüne engel çıkınca,engel hangi yönde ise o yönün tersine döner,engel önünde ise robot geri gelir ve farklı yöne dönerek engelden kurtulur.Engellerden kurtularak gezerken ortamda gaz kaçağı olduğu yere gelince sensör devreye girerek sinyal vermektedir.

YAZILIM:

@ __config _XT_OSC & _WDT_ON & _MCLRE_ON & _LVP_OFF & _CP_OFF :PİC İÇİN GEREKLİ AYAR YAZILIMI

CMCON=%111 ‘7   ‘ KARŞILAŞTIRICILARI KAPATIR.

VRCON=0   ‘ REFERANS VOLTAJ GİRİŞİNİ KAPATIR.

 

 

TRISA=%00000000     Pic de bulunan a portunun tamamı çıkış yapıldı , motor sürücü devresine gidecek kısım

TRISB=%11111111     Picde bulunan b portunun tamamı giriş yapıldı,sensörlerin giriş yapacağı kısım

PORTB=0                     İlk olarak a ve b portlarının tamamını sıfır ‘0’ yapıyoruz

PORTA=0

PAUSE 1000              Robotumuz ilk başta 1 sn beklemeye alıyoruz

BASLA:                             Basla etiketi,Programı tekrarlamak için başlangıca yönlendirmek için

Engel sensörünün çıkışlarını b.2 ve b.3 pinlerine bağlıyoruz,devre şemasında gözükmektedir.

b.2 pinine sol sensörün çıkışını , b.3 pinine  sağ sensörün çıkışını bağlıyoruz.

IF PORTB.2=0 and PORTB.3=0 Then  ILERI

Eğer portb.2=0 ve portb.3=0 ise ileri etiketine zıpla

IF PORTB.2=0 and PORTB.3=0 Then  ILERI

IF PORTB.2=1 and PORTB.3=0 Then  SOLENGEL

IF PORTB.2=0 and PORTB.3=1 Then  SAGENGEL

IF PORTB.2=1 and PORTB.3=1 Then  ONDEENGEL

 

ILERI:     ileri etiketi

PORTA.0=1

PORTA.1=0

PORTA.2=1

PORTA.3=0

pause 100  100ms bekle

Bu durumda motor 100ms ileri gider

 

GOTO BASLA basla etiketine zıpla

SOLENGEL:  solengel etiketi

PORTA.0=0

PORTA.1=1

PORTA.2=1

PORTA.3=0

pause 1000

motorlar sağ motor geri sol motor ileri giderek motorun sağa dönmesi sağlanır.Bu süre 1sn sürer

GOTO BASLA

SAGENGEL:

PORTA.0=1

PORTA.1=0

PORTA.2=0

PORTA.3=1

pause 1000

motorlar sağ motor ileri sol motor geri giderek motorun sola dönmesi sağlanır.Bu süre 1sn sürer

 

GOTO BASLA

ONDEENGEL:

PORTA.0=0

PORTA.1=1

PORTA.2=0

PORTA.3=1

pause 1500

PORTA.0=1

PORTA.1=0

PORTA.2=0

PORTA.3=1

pause 1000

GOTO BASLA

END        program sonu

VİDEOLAR

MOTOR FOTOLARI:

20151123_173243 20151123_173602 20151123_174000 20151123_174026 20151123_174041 20151201_212203 20151201_212210 20151201_21235820151201_21264120151201_21282920151201_214640

20151202_09393820151201_21482120151201_21483920151201_21484920151201_214902

 

Sosyal Medyada Paylaş Facebook Twitter Google+

Etiketler: , , , ,
Eklenme Tarihi: 9 Aralık 2015

Konu hakkında yorumunuzu yazın

Gaz Kaçak Bulucu Robot (3 Yorum)

HOŞ GELDİNİZ

Youtube kanalıma Abone Olabilirsiniz.