Çizgi İzleyen Robot 1.2
Çizgi izleyen robotumuzda ufak değişikler yaparak sadeleşme yoluna gidiyoruz.Daha önce yapmış olduğumuz robotumuzda ki bir kaç malzemeyi çıkararak daha kolay ve daha verimli çizgi izleyen robot yapıyoruz.
Robotumuzda sensör devresi ve ana kart devresi bulunmaktadır.
Ana kart devremizde 16F628A entegresi programlanmıştır.
Sensör devremizde CNY70 çizgi sensörü kullanılmıştır.
Program olarak ccs c dili kullanılmıştır.
Baskı Devre Şeması:
3D Görünüm:
Malzeme Adı | Adet |
16F628A | 1 |
4 Mhz kristal | 1 |
22pf kond. | 2 |
7805 | 1 |
10uf | 1 |
L293D | 1 |
anahtar | 2 |
9v pil | 1 |
10K | 1 |
ÇİZGİ İZLEYEN İSİS ARES dosyalarını indirmek için tıklayınız.
@ __config _XT_OSC & _WDT_ON & _MCLRE_ON & _LVP_OFF & _CP_OFF
CMCON=%111 ‘7 ‘ KARŞILAŞTIRICILARI KAPATIR.
VRCON=0 ‘ REFERANS VOLTAJ GİRİŞİNİ KAPATIR.
TRISA=%00000000
TRISB=%11111111
pause 3000
BASLA:
PORTA.0=0
PORTA.1=0
PORTA.2=0
PORTA.3=0
IF PORTB.3=1 AND PORTB.4=1 THen dur
IF PORTB.3=0 and PORTB.4=0 THen ileri
IF PORTB.3=1 and PORTB.4=0 then sag
IF PORTB.3=0 and PORTB.4=1 then sol
GOTO BASLA
dur:
PORTA.0=0
PORTA.1=1
PORTA.2=0
PORTA.3=1
goto basla
sol:
PORTA.0=0
PORTA.1=1
PORTA.2=1
PORTA.3=0
pause 10
goto basla
sag:
PORTA.0=1
PORTA.1=0
PORTA.2=0
PORTA.3=1
pause 10
goto basla
ileri:
PORTA.0=1
PORTA.1=0
PORTA.2=1
PORTA.3=0
pause 10
PORTA.0=0
PORTA.1=0
PORTA.2=0
PORTA.3=0
pause 4
goto basla
end
HEX:
:020000040000FA
:100000002F28A301A200FF30A207031CA307031C93
:100010002A280330A100DF300F200328A101E83E89
:10002000A000A109FC30031C1828A00703181528FC
:10003000A0076400A10F152820181E28A01C222844
:100040000000222808000038031DFF300405031DAE
:10005000FF302A288313031383126400080007303B
:100060009F0083169F018501FF30860083120B30AD
:10007000A300B83002200510851005118511030179
:100080008619FF30B8000301061AFF30BA0038089D
:1000900084003A082320031D78280301861DFF30C1
:1000A000B8000301061EFF30BA00380884003A0881
:1000B0002320031D8B2803018619FF30B80003019C
:1000C000061EFF30BA00380884003A082320031DBA
:1000D00084280301861DFF30B8000301061AFF3093
:1000E000BA00380884003A082320031D7D283B28E5
:1000F00005108514051185153B2805108514051577
:1001000085110A3001203B2805148510051185153D
:100110000A3001203B2805148510051585110A3089
:1001200001200510851005118511043001203B28A0
:0401300063009828A8
:02400E006D3F04
:00000001FF
NOT DEFTERİNE YAPIŞTIRIN VE HEX OLARAK KAYIT EDİİN.
Devrede Kullanılan Malzemelerin Bacak bağlantıları:
Sensör devresinen gelen gerilimi okuyarak ona göre çıkış veren 16f628a entegresi A portundan bu işlemi gerçekleştiriyor.A portundan çıkan gerilimler motor sürücü entegresinin bacaklarına verilerek programda yazılan komutu yerine getiriyor.Motor ile 16f628a arasına motor sürücü entegresini koymamızın amacı pice fazla yük yüklememek ve motor gerilimi farkllı güç kaynağından kullanma şansımız oluyor.
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.
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.
Sensör Devresi:
Sensör devremizde cny70 çizgi algılayan sensör devre elemanını kullandık.
Gerekli Dökümanlar:
Çizgi İzleyen Robot İsis Ve Ares Programını İndirmek İçin TIKLAYINIZ
YAZILIMI İSTEYEN ARKADAŞLAR YORUMLAR KISMINDAN BİZE ULAŞIN VEYA mail ATINIZ.
Etiketler: çizgi algılayan robot, çizği izleyen robot, çizgi sensörü, robot, robot devresi
Eklenme Tarihi: 15 Kasım 2015
Dosya şifresine nasıl ulaşailirim?
Pic ile yapılan robotum. Şifreyi unuttum. Hatta niye şifre koydum onuda bilmiyorum.Bakayim dosyalara mail atayım.
dosyanın şifresini alabilir miyim ?
hex dosyasını bulamadım bna atarmısınız ?