You are on page 1of 95

YILDIZ TEKNK NVERSTES ELEKTRK-ELEKTRONK FAKLTES ELEKTRONK VE HABERLEME MHENDSL BLM

BTRME PROJES/ TEZ

RF MULT KONTROL

Tez/Proje Danman: Yrd. Do. Dr. Hamid Torpi

07014608

Tuba Ergl

stanbul, 2009

NDEKLER
EKL LSTES ......................................................................................................................................... iv TABLO LSTES ......................................................................................................................................... v KISALTMALAR ......................................................................................................................................... vi TRKELETRLM TERMLER ......................................................................................................................................... vii NSZ ......................................................................................................................................... viii ZET ......................................................................................................................................... ix ABSTRACT ......................................................................................................................................... x 1.GR ......................................................................................................................................... 1 2. DONANIM GEREKSNMLER ......................................................................................................................................... 3 2.1 16x2 Likit Kristal Ekran ......................................................................................................................................... 3 2.1.1 LCDnin alma Biimi ......................................................................................................................................... 5

2.2 Mikrodenetleyici ......................................................................................................................................... 6 2.3 RF Modl ......................................................................................................................................... 6 2.4 Renk Sensr ve Sensr Kuvvetlendiricisi ......................................................................................................................................... 7 2.4.1 MCS3BT Model Renk Sensr ......................................................................................................................................... 7 2.4.2 MTI04CS/MTI04CQ ok Kanall Programlanabilir Kazan Transempedans Kuvvetlendirici ......................................................................................................................................... 9 2.5 LM35 Scaklk Sensr ......................................................................................................................................... 14 2.6 L293B DC Motor Srcs ......................................................................................................................................... 14 2.7 LM7805 5V Gerilim Dzenleyici ......................................................................................................................................... 15 3. RF HABERLEME ......................................................................................................................................... 17 3.1 RF Haberleme Hakknda ......................................................................................................................................... 17 3.1.1 RF lm ......................................................................................................................................... 19 3.1.2 RF Genel Yaps ve RF Birimleri

......................................................................................................................................... 20 3.2 RF Modl: UFM-M12 ......................................................................................................................................... 21 3.3 Frekans Kaydrmal Anahtarlama ......................................................................................................................................... 25 3.4 Frekans Kaydrmal Anahtarlama Demodlasyon ......................................................................................................................................... 28 3.4.1 FM Detektr Tipi Demodlasyon ......................................................................................................................................... 28 3.4.2 Frekans Kaydrmal Anahtarlama Filtre Tipi Demodlasyon ......................................................................................................................................... 29 4. PIC 16F877 Mikrodenetleyici ......................................................................................................................................... 30 4.1 Mikrodenetleyici Nedir? ......................................................................................................................................... 30 4.2 PIC Nedir? ......................................................................................................................................... 31 4.3 PIC 16F877 Mikrodenetleyici zellikleri ve Yaps ......................................................................................................................................... 31 4.4 PIC 16F877nin Port Yaps ve Fonksiyonlar ......................................................................................................................................... 33 4.4.1 Port A ......................................................................................................................................... 33 4.4.2 Port B

......................................................................................................................................... 33 4.4.3 Port C ......................................................................................................................................... 33 4.4.4 Port D ......................................................................................................................................... 34 4.4.5 Port E ......................................................................................................................................... 34 4.5 PIC16F877nin zel Fonksiyonlar ......................................................................................................................................... 34 4.5.1 USART ......................................................................................................................................... 34 4.5.2 Master Synchronous Serial Port ......................................................................................................................................... 35 4.5.3 Analog/Saysal Dntrc Birimi ......................................................................................................................................... 35 5. DEVRE TASARIMI ......................................................................................................................................... 36 5.1 Kontrol nitesi (Verici Ksm) ......................................................................................................................................... 36 5.2 Robot Kol-Palet nitesi (Alc Ksm) ......................................................................................................................................... 38 5.3 Robot Kol Alc-Verici Simlasyonu ......................................................................................................................................... 40 5.4 Palet Alc-Verici Simlasyonu

......................................................................................................................................... 40 5.5 Bask Devre ......................................................................................................................................... 41 6. YAZILIM TASARIMI ......................................................................................................................................... 44 6.1 PIC Assembly Nedir? ......................................................................................................................................... 44 6.1.1 PIC Assembly Kodlar ......................................................................................................................................... 44 6.2 PIC Basic Nedir? ......................................................................................................................................... 45 6.2.1 PIC Basic Komutlar ......................................................................................................................................... 46 6.3 PIC Basic Program Derleyicisi: CodeDesigner ......................................................................................................................................... 46 6.4 PIC Programnn Tasarm ......................................................................................................................................... 47 6.5 Program Algoritmalar ......................................................................................................................................... 47 6.5.1 Robot Kol Verici Programnn Algoritmas ......................................................................................................................................... 48 6.5.2 Robot Kol Alc Programnn Algoritmas ......................................................................................................................................... 49 6.5.3 Palet Verici Programnn Algoritmas

......................................................................................................................................... 50 6.5.4 Palet Alc Programnn Algoritmas ......................................................................................................................................... 51 7. SONU ......................................................................................................................................... 53 KAYNAKLAR ......................................................................................................................................... 54 EK A ......................................................................................................................................... 55 ZGEM ......................................................................................................................................... 78

EKL LSTES ekil 2.1 16X2 LCD Ekran ......................................................................................................................................... 3 ekil 2.2 LCD girileri ......................................................................................................................................... 3 ekil 2.3 MCS3AT/BT model renk sensr ......................................................................................................................................... 8 ekil 2.4 MCS3AT/BT bacak konfigrasyonu ......................................................................................................................................... 8 ekil 2.5 MCS3BT karakteristik erileri ......................................................................................................................................... 9 ekil 2.6 Kuvvetlendirici blok diyagram ......................................................................................................................................... 10 ekil 2.7 MTI04CS bacak konfigrasyonu ......................................................................................................................................... 10

ekil 2.8 MCS3AT/BT ile MTI04CSnin balant yaps ......................................................................................................................................... 13 ekil 2.9 LM 35in stten ve yandan grnm ......................................................................................................................................... 14 ekil 2.10 L293B blok diyagram ......................................................................................................................................... 15 ekil 2.11 LM7805 tmdevresi ......................................................................................................................................... 16 ekil 3.2 RF haberleme temel yap ......................................................................................................................................... 20 ekil 3.3 RF verici ......................................................................................................................................... 20 ekil 3.4 RF alc ......................................................................................................................................... 21 ekil 3.5 UFM-M12 RF Modl ......................................................................................................................................... 22 ekil 3.6 Data format ......................................................................................................................................... 23 ekil 3.7 Modl-mikrodenetleyici balant yaps ......................................................................................................................................... 24 ekil 3.8 FSK modlasyon ......................................................................................................................................... 26 ekil 3.9 FSK parametreleri ......................................................................................................................................... 27

ekil 3.10 Senkron ve asenkron sinyaller ......................................................................................................................................... 28 ekil 3.11 FM detektr tipi FSK demodlatr ......................................................................................................................................... 28 ekil 3.12 Uyumlu filtre FSK demodlatr ......................................................................................................................................... 29 ekil 4.1 PIC 16F877 bacak balant yaps ......................................................................................................................................... 32 ekil 5.1 Verici ksm stten grnm ......................................................................................................................................... 37 ekil 5.2 Genel data format ......................................................................................................................................... 39 ekil 5.3 Robot kol alc-verici ......................................................................................................................................... 40 ekil 5.4 Palet alc-verici ......................................................................................................................................... 41 ekil 5.5 Verici bask devre emas ......................................................................................................................................... 42 ekil 5.6 Alc bask devre emas ......................................................................................................................................... 45 ekil 6.1 CodeDesigner ekran grnts ......................................................................................................................................... 47 ekil 6.2 Robot kol verici program ak emas ......................................................................................................................................... 48

10

TABLO LSTES Tablo 2.1 LCD giri aklamalar ......................................................................................................................................... 4 Tablo 2.2 LCD gstergesinin komut tablosu ......................................................................................................................................... 5 Tablo 2.3 Kuvvetlendirici bacak yaps ......................................................................................................................................... 11 Tablo 2.4 Transempedans ayarlamas ......................................................................................................................................... 11 Tablo 2.5 SW4 bacann girileri ......................................................................................................................................... 12 Tablo 3.1 Frekans spektrumu ......................................................................................................................................... 18 Tablo 3.2 Mikrodalga frekanslar harf bant dalm ......................................................................................................................................... 19 Tablo 3.3 RF modln bacak zellikleri ......................................................................................................................................... 22 Tablo 4.1 PIC 16F877nin bacak aklamalar ......................................................................................................................................... 32 Tablo 6.1 PIC 16F877nin assemblydeki komut seti ......................................................................................................................................... 45 Tablo 6.2 Pic Basic komut seti ......................................................................................................................................... 46

11

KISALTMALAR CPU: Central Processing Unit ERPROM: Erasable Programmable Read Only Memory A/D: Analog to Digital FSK: Frequency Shift Keying BASIC: Beginners All purpose Symbolic Instruction Code IC: Integrated Circuit LCD: Liquid Crystal Display PIC: Peripheral Interface Controller RAM: Random Access Memory ROM: Read Only Memory RISC: Reduced Instruction Set Computer RF: Radio Frequency

12

ISM: Industrial Scientific Medical

TRKELETRLM TERMLER Entegre: Tmdevre LCD: Likit Kristalli Ekran Kontrast: Parlaklk Modl: Birim Pin: Bacak Potansiyometre: Ayarl Diren Reglatr: Dzenleyici Sensr: Alglayc Sinyal: aret Voltaj: Gerilim Dizayn: Tasarm Binary: kili

13

Hexadecimal: 16lk Taban Mark Frequency: aret Frekans Space Frequency: Boluk Frekans AND: Lojik VE OR: Lojik VEYA Variable: Deer

NSZ Bu projenin yapmndaki rehberlii ile bana yol gsteren danman hocam Yrd. Do. Dr. Hamit Torpiye teekkr bir bor bilirim. Ayrca projedeki teknik destei ile yapt asistanlktan tr Selim Dalkrana ve bu projeye maddi destek salayan Elektrik Mhendisleri Odasna teekkrlerimi sunarm. Son olarak, tm eitim hayatm boyunca desteklerini hi esirgemeyen aileme teekkr ederim.

14

ZET RF Multi Kontrol sistem bir kontrol birimi ve bu birim ile kablosuz olarak haberleebilen paletli robot koldan olumu bir robot sistemidir. Temelde alc ve verici olmak zere iki nite bulunmaktadr. Bu iki nitenin kablosuz olarak haberlemesi salanmaya allmtr. Alc nitesinde renk ve scaklk sensrleri bulunmaktadr. Bu proje temel elektronik bilgisini, mikrodenetleyici ve yazlm bilgilerini gerektirmektedir. Bu projede yaplmak istenen uzun mesafe kontrolde insan gcne ihtiyacn ve sistem retim maliyetlerini azaltmaktr. Burada kontrolden kast, araca ve robot kola istenen hareketi yaptrmak ve ortamdan istenen bilgiyi elde etmektir.

15

Projedeki programlar Pic Basic ile yazlmtr. Program derleyici olarak CodeDesigner kullanlmtr. Devre simlasyonlar Proteus ISISde yaplmtr. Bask devreler ise Proteus ARES yardm ile tasarlanmtr. Projenin sonunda board zerinde kurulan ve bask devreleri gereklenen devrelerin kablolu olarak yksek performansta alt gzlemlenmitir. Projenin son aamalarnda kablolu olarak elde edilen bu performans kablosuz olarak da yakalanmaya allmtr.

ABSTRACT RF Multi-Control system consists of one control unit and palletized robotic arm and this system is wireless communication capable system. Basically, it has one transmitter and one receiver unit. In this project, its tried to establish a wireless communication between these two units. Receiver unit is bedecked with temperature and color sensors. To build up this project its needed to have basic electronic, micro controller and software knowledge. Aim of this project is to reduce system construction costs and

16

need of manpower. The meaning of control is making desired movements with robotic arm and pallet, and also receiving object temperature and color information. Pic Basic programming language used for programming micro controllers and CodeDesigner is used for compiling these programs. For simulation of circuit design and programs I used Proteus ISIS and for PCB designs I used Proteus ARES Towards the end of this project period and after assembling the circuit onto PCB, its observed that system has a stabile wired communication. I tried to establish more reliable wireless communication rest of the project.

1.GR RF Multi Kontrol isimli bu projede karlkl haberleen iki nite bulunmaktadr. Renk ve scaklk sensr ile donatlm ve bir palet sistemi ile gezici hale getirilmi be eksenli bir robot kolun kablosuz olarak bir kontrol nitesi tarafndan kontrol edilmesi amalanmtr. Karlkl haberlemenin salanmas iin kullanc tarafndan istendiinde robot kol zerine monte edilmi olan sensrlerden alnan bilgiler kontrol nitesine gnderilerek yine kontrol nitesi zerindeki LCD ekranda kullancya bildirilecektir. Kablosuz haberleme teknolojisinin kullanm alanlarnn yaygnlamasyla endstride yeni nesil lm ve kontrol sistemleri de kablosuz haberleme teknolojilerini yaygn

17

olarak kullanmaya balamtr. Bu ynde, bu projenin temel amalar kablosuz haberleme sistemlerinin ve uygulamalarnn temellerini anlamak, teknolojinin alt yapsn yakndan tanmak ve kablosuz haberleme teknikleri kullanarak karlkl haberleen bir sistemin gelitirilmesidir. Bununla birlikte, mhendislik eitimim sresince deerli hocalarmz tarafndan eitimini aldmz elektronik devre tasarm ve mikroilemci yazlm gibi temel mhendislik bilgilerini de byle bir sistem tasarmnda kullanlmas amalanmtr. Projede kullanlan mikroilemcilerin yazlm iin PIC Basic isimli derleyici kullanlmtr. Gerek devre elemanlar kullanlarak devre oluturulmadan nce devre tasarm ve mikroilemci yazlmlar Proteus ISIS isimli elektronik devre simulatr ile dorulanm ve sonrasnda test boardlar zerine kurularak tekrar test edilmitir. Daha sonra Proteus ARES isimli program ile bask devre tasarmlar yaplarak projeye ait elektronik devreler oluturulmutur. Bu projeyi gerekletirmek isteyen bir kiinin kullanlan bu programlar bilmesi ve temel elektronik bilgisine sahip olmas gerekmektedir. Teknolojinin hzla gelimesi ile insan gc kullanmn azaltmak amacyla robot kullanm artmaktadr. Bu projede endstride kullanlabilecek bir robot kol sistemi yaplmaya allmtr. Arazi koullarnn uygun olmayabilecei dnlerek palet ara sistemi zerine yerletirilmitir. Sistem renk ve scaklk bilgilerini alacak ve sonular LCD ekranda gsterecek ekilde tasarlanmtr. Ayrca nitelerin kablosuz haberlemesi salanmaya allmtr. Bu sayede proje mobil uygulamalar iin kullanl hale getirilmesi istenmitir. Endstride bu projenin benzeri veya daha st tasarmlar kullanlmaktadr. Projedeki alglayc donanm gelitirilerek, robota ek yetenekler kazandrlabilmektedir. Bu raporun ikinci ksmnda donanm gerekleyebilmek iin gerekli olan malzemelerden bahsedilmitir. nc ksmda RF haberleme ve kullanlan RF birim ile ilgili bilgi verilmitir. Drdnc ksmda projede nemli bir yere sahip olan

18

mikrodenetleyiciden bahsedilmitir. Beinci ve altnc blmlerde ise projenin devre tasarm ve yazlm tasarmyla ilgili bilgi verilmitir.

2. DONANIM GEREKSNMLER Bu ksmda projenin donanmsal olarak yapmnda kullanlan malzemelerden bahsedilmitir. 2.1 16x2 Likit Kristal Ekran HD44780 likit kristalli ekran; gnlk yaamda cep telefonlarnda, beyaz eyalarda, gvenlik sistemlerinde ve birok elektronik sistemde kullanlan ve kendi karakter hafzas bulunan bir birimdir. Bu projede kullanc isminin ve paletin hareket

19

ynlerinin grntlenmesi ve sensrleden alnan bilgilerin sonularnn kullancya bildirilmesi amacyla kullanlmtr.

ekil 2.1 16 X 2 LCD Ekran 16x2 LCD ekran, 2 satr ve 16 stundan oluan bir ekran anlamna gelmektedir. Likit kristalli ekran 16 adet balantya sahiptir. Bu balant yaplar aada aklanmtr.

ekil 2.2 LCD girileri Bu LCDnin bacak dizilileri u ekildedir; Pin 1'ye VSS dir. GND' ye gitmeye yarar. Pin 2'ye VDD denir. +5V'luk g destek bacadr. Pin 3'e VEE denir. Ayarl diren balanarak parlaklk iin karar vermeye yarar. Pin 4'e RS denir. Ekrann komutlar ya da veriyi getirmesi bu bacaa baldr. Pin 5'e R/W denir. LCD'nin gnderme ya da alma ilemlerini denetler. Pin 6'e Enable denir. Bu alaktan yksee ya da yksekten alaa gittiinde LCD 4,5 ya da 7-14 okur. Pin 7-14 data bus line'dr ve DB0-DB7 olarak adlandrlr. Bunlar LCD'ye ana veri bitlerini gnderirler ve ekranda nereye ne yazldn denetlerler.

20

Pin 15-16 yalnzca ekran zerindeki arka , +5V 'u ve 15. bacak ile +5V arasndaki 3.8 Ohm'la GND'ye karlk gelir.[7] Tablo 2.1 LCD giri aklamalar

2.1.1 LCD'nin alma Biimi LCD, Enable bacana lojik 1 verildikten sonra bacaa tekrar dk deer verilene kadar geen srede LCD bekler ve bilginin yksek arlkl bitleri LCDye gider. Bu noktada ekran hangi verinin ilendiini okur ve sonrasnda bilgiyi alr ya da gnderir. Son olarak veri bitleri gnderir ya da alr. LCD'nin 3 adet kontrol baca vardr. Bu kontrol bitleri; Enable, RS ve R/W. RS bacandan LCD ye komut ya da veri bilgilerinden hangisinin yollanaca bilgisi

21

mikrodenetleyicinin portlarndan alnr. R/W bacan lojik '1' olduunda LCD okuma modunda , lojik '0' olduunda ise yazma modunda alr. Tablo 2.2 LCD gstergesinin komut tablosu

Ksa ve basite zetlemek gerekirse, ekranda bir karakter yazmak veya ekrandan bir karakter okumak iin RS hatt lojik 1, ekrana bir komut yollamak veya ekrann durumu hakknda bilgi almak istersek RS hattn lojik 0 yapmamz gerekmektedir. 5. bacak yani R/W hatt, ksaca oku / yaz anlamna gelmektedir. Eer ekrana karakter veri transferi yaplacaksa veya bir komut yollanacaksa lojik 0, karakter veri alm yaplacaksa veya yazmalardan durum bilgisi okunacaksa lojik 1 yaplr. 6. bacak yani E ise komut kontrol bitlerinin sonuncusunu oluturur ve yetki biti olarak isimlendirilebilir. Bu giri, birim ve veri hatlar arasnda, komutlarn veya karakter verilerinin, gerek anlamda aktarmn balatmak iin kullanlr. Ekrana yazlrken, veri aktarm sadece bu iaretin den kenarnda gerekleir. Bununla birlikte, ekrandan okuma yaplrken, veri ykselen kenar hemen ksa bir sre sonra hazr olur ve iaret tekrar dnceye kadar hatta kalr. 7. ile 14. bacaklar arasndaki ular sekiz adet veri hattdr. Veri ekrana, ya 8 bit'lik tek bir byte olarak ya da, ii 4 bit'lik olarak aktarlr veya ekrandan okunur. Bu ikinci durumda, sadece st drt veri hatt (D4' den D7' ye ) kullanlr. Bu 4 bit modu, bir mikrodenetleyici kullanldnda, daha az giri / k hattna gerek olduundan kullanldr. 15. ve 16. bacaklar ise aydnlatma

22

girileridir. 15. bacak +5 Volt gerilime, 16. bacak ise toprak hattna balandnda ekran kl hale gelmektedir. 2.2 Mikrodenetleyici Bu projede drt adet mikrodenetleyici kullanlmtr. Kontrol nitesinde ara, kol ve alglayclarn kontrol edecek iki adet PIC 16F877 bulunmasna karar verilmitir. Buradaki mikrodenetleyicilerden biri sadece robot kol ile ilgili bilgileri alacak dier mikrodenetleyici ise sadece ara ve alglayc bilgilerini alacaktr. Ara-kol nitesindeki mikrodenetleyicilerden biri ara ve alglayc teki ise kol ile ilgili bilgileri tayacaktr. Kullanlan mikrodenetleyici 16F877 ile ilgili bilgi 4. ksmda detayl olarak tekrar bahsedilecektir. PIC 16F877i altrmak iin sadece 4 MHz kristalle balanacak 27pFlk iki kondansatr, MCLR ucunu pull-up yapmak iin 4.7klk bir diren ve 5V luk uygun bir g kayna yeterlidir.[4] 2.3 RF Modl RF birim olarak UDEA firmasna ait UFM-M12 RF transceiver (alc-verici) kullanlmaktadr. Bu birim hem alc hem de verici yapsndadr. RF birim kontrol nitesi ile palet-kol nitesi arasndaki kablosuz haberlemeyi salamaktadr. RF birim FSK modlasyon trn kullanmaktadr. Modl 868MHz 6 kanal seeneinde alabilmektedir. Haberlemeyi salamak amacyla 868MHzde UWA-868 anten alc ve verici tarafta kullanlmtr. RF modl ile ilgili detayl bilgi 3. Ksmda verilecektir. 2.4 Renk Sensr ve Sensr Kuvvetlendiricisi Projede Alman JenColor firmasna ait MCS3BT model renk alglayan renk alglaycs ve yine ayn firmaya ait MTI04CS model kuvvetlendirici kullanlmtr. Bu malzemeler Trkiyeden temin edilemedii iin firma ile balantya geilerek,

23

sipari zerine temin edilmelidir. Kullanlan elemanlarla ile ilgili teknik bilgi aada verilmitir. 2.4.1MCS3BT Model Renk Sensr MCS3AT/BT model renk sensr ile ilkel renkler olan mavi, yeil ve krmz renklerin ayrt edilmesi salanr. Sensr, rengi zerine den dalga boyuna gre ayrt etmektedir. Sensrn rengi alglayabilmesi iin cisim dz ve yanstmal bir zemin olmaldr. Ayn zamanda bir k kayna olmad iin sensrn etrafna, sensrden daha ksa boyda, rengi yanstmas iin aydnlatma konulmaldr. Renk sensr bir ip zerine entegre edilmi 3 Si-PIN foto diyottan olumutur. SiPIN foto diyot olarak tasarlanmas sinyal frekanslarn MHzler mertebesine kadar olmasn salar. Foto diyotlar arasnda giriimlerin kk olabilmesi iin, her bir ksm ek yaplar ile ayrlmtr. Bu foto diyotlarn her biri kendi renk aralklar iin tercihen krmz, yeil, mavi renkleri iin, dielektrik spektral filtre ile hassaslatrlmtr.[3] anot ve bir ortak katot ucu bulunmaktadr. Aadaki ekilde sensrn stten grnm bulunmaktadr.

ekil 2.3 MCS3AT/BT model renk sensr Kullanlan sensrn bacak konfigrasyonu ise u ekildedir.

24

2.4 MCS3AT/BT bacak konfigrasyonu Renk sensrnn kullanm alanlar zetle u ekilde sralanabilir. Kalite kontrol retim izleme malat kontrol Renk iaretlerinin alglanmas Renk sensrnn zellikleri ise u ekildedir. Yksek iletim Yksek scaklk kararll Yksek sinyal frekans Azaltlm giriim Kk boyut (optik hassaslatrlm yzeyin ap 2mm) Renk, sensrn zerine den dalga boyuna gre alglanmaktadr. Dalga boyu erileri u ekildedir.

25

ekil 2.5 MCS3BT karakteristik erileri Yukardaki ekil fotoakmlarn e deer voltaja eviren devreyi gstermektedir. Bu voltaj deerleri rnein analog saysal dntrc (ADC) ile oluturulabilir. Uygun direncin seimi ile k gerilim aral fotoakm deerine gre ayarlanabilir.

(2.1) 2.4.2 MTI04CS/MTI04CQ ok Kanall Programlanabilir Kazan

Transempedans Kuvvetlendirici MTI aygtlar her bir IC bana drt kanall programlanabilir kazan transempedansl kuvvetlendiricilerin entegre devre ailesidir. MTI cihazlar sensrn akm klarna gre sinyal ayarlamada kullanlr. zellikle dizi eklinde foto diyotlarn balantlar ve dizi sensrler iin uygundur. zel yaplara gre transempedans deerini 8 duruma ayarlamak mmkndr. Ayarlama bacann programlanmas ile yaplr ve tm kanallar kullanlabilir. Kuvvetlendirici blok diyagram u ekildedir.

26

ekil 2.6 Kuvvetlendirici blok diyagram Kuvvetlendiricinin bacak konfigrasyonu u ekildedir.

ekil 2.7 MTI04CS bacak konfigrasyonu Bu bacaklarn dalm aadaki tablodaki gibidir.

27

Tablo 2.3 Kuvvetlendirici bacak yaps

Kuvvetlendiricinin blok diyagramndan grlen iyapsndaki R, diren deerini hesaplanmas ve kuvvetlendiricinin durumunun belirlenmesi aadaki tabloya gre yaplmaktadr. Tablo 2.4 Transempedansn ayarlanmas

SW1, SW2, SW3 bacaklarnn tablodaki gibi durumlarna gre transempedans deeri ayarlanmaktadr. Bu ayarlamalar yaparak kuvvetlendiricinin alma modu (stage) seilmektedir. Bu moda bal olarak kuvvetlendiricinin alma frekans, transempedans deeri, giri akm deeri, SW4n topraa ya da VDDe bal olmasna gre giriteki sinyal frekans deimektedir. Kuvvetlendiricinin frekans ayarlamas ise SW4 bacann toprak ya da +5V da olmasna gre deimektedir. Bunu gsteren tablo aadaki gibidir.

28

Tablo 2.5 SW4 pininin girileri

MTI cihazlar farkl sayda kanallarla programlanabilir kazan transempedans kuvvetlendiricileridir. MTI04, drt kanalldr. Kanal bana giri akm IIN<X> ile k gerilimi VOUT<X> arasnda bir transempedans kuvvetlendirici vardr. Bu transempedans 8 durumda seilebilir. Tm kanallar iin hazr bulunan bu ayarlamalar saysal girilerin (SW1, SW3, SW4) ayarlarndan etkilenebilmektedir. Kapasitans deerlerinin ayarlanmas SW4 bacann VDDye ya da topraa bal olmasna gre deimektedir. Bununla ilgili tablo yukardaki gibidir. nemli olan baka bir bacak ise referans gerilim bacadr. Yaplan uygulamada sensrn etkin bir ekilde alabilmesi iin MTI cihazlar genelde 3V ile 5V arasnda deer almaktadr. Uygulamada ise kuvvetlendirici 5V ile beslenmitir. Referans gerilimini elde etmek iin 5V ile alan bir gerilim blc kullanlmtr ve referans gerilimi bu balantdan alnmtr. Buna gre referans voltaj 3.5 volttur. Referans gerilimi iin retici firmann verdii forml aadaki gibidir. VOUT = VREF IIn * R a. IIN = 0 b. IIN = max. VOUT = VREF VOUT = 0 (2.2) (2.3) (2.4)

Bu formlden de grlecei zere kuvvetlendiricinin iyapsndaki R direnci ile sensrden gelen IIn akmnn arpmnn referans geriliminden karlmas ile k gerilimi elde edilmektedir.

29

Burada alt izilmesi gereken baka nemli bir husus ise kuvvetlendiricinin tersleyici mantnda almasdr. Kuvvetlendiriciye besleme verildii zaman sensrn bacaklarndan gelen giri bacaklarnda gerilim yksektir. Kuvvetlendiricinin alma mantna gre, sensrn zerine den rengin dalga boyuna gre o rengin bacann bal bulunduu giriin kndaki gerilim en dktr. Sensr ile kuvvetlendiricinin balant yaps aadaki gibidir.

ekil 2.8 MCS3AT/BT ile MTI04CSnin balant yaps ekilde de grld zere yeil, krmz ve mavi giriler kuvvetlendiricinin IIN<1>, IIN<2>, IIN<3> girilerine srayla balanmtr. klarda ise srasyla VOUT<1>, VOUT<2>, VOUT<3> bacaklarndan yeil, krmz ve mavi rengin klar elde edilmitir. RF Multi Kontrol projesinde kuvvetlendirici seviye 1de altrlmtr. Bunun iin SW1, SW2, SW3 bacaklar VDDye balanmtr. Seviye 1in seilme sebebi, bu durumda kuvvetlendirici kazancnn daha yksek olmasdr. Kuvvetlendiricinin 8. baca olan PD (power down) pini ise alma modunda olduu iin inaktif yaplm ve topraa balanmtr.

30

Kuvvetlendiricinin bask devreye alm aamasnda lehim scaklna dikkat edilmelidir. Kuvvetlendirici yaklak olarak 240o Cden sonra bozulmaya uramaktadr.[3] Ayrca scaklk bilgileri iin kullanma klavuzundan bilgi alnabilir. 2.5 LM35 Scaklk Sensr National Semiconductor firmasnn retmi olduu LM35 scaklk sensr bulunduu ortamdaki scakl alglar ve alglad scakl, belirli bir katsay ile arparak k gerilimi olarak aktaran, santigrat tipi derece ile alan bir scaklk alglaycsdr. Santigrat tabanl lm yapmas nedeniyle kullanm kolayl salar ve bu projede kullanlmasnn nedenlerinden biri budur. Ayrca dk g gereksinimi nedeniyle uzaktan kontroll uygulamalarda LM35 tercih edilmektedir. LM35 her 1 C scaklk artnda k gerilimini 10mV artrmaktadr. Besleme gerilimi 4 Volt ile 30 Volt arasnda seilebilmektedir. Bu projede besleme gerilimi 5 Volt olarak seilmitir. -55 C ile + 150 C arasnda scaklk lm yapabilen devre, oda scakl civarnda en fazla 0.5 C hatal lm yapabilecei, retici firma tarafndan garanti edilmektedir. Ayrca yaplan deneylerde de bu hata pay dorulanmtr. G tketimi, devre emas ve dier alglayc modelleri gibi ek bilgilere ulamak iin devrenin katalou incelenmelidir.

ekil 2.9 LM35in stten ve yandan grnm 2.6 L293B DC Motor Src Projede palet aracn hareketini salamak amacyla L293B kullanlmtr. Aracn DC motorlarnn kontrol tmdevre PIC 16F877 yardmyla ile salanmtr. L293B ve

31

L293E her bir kanal iin ka 1A akm verebilen eyrek itme-ekmeli srclerdir. Her bir kanal TTL lojik giriler ile kontrol edilir.

2.10 L293B blok diyagram 2.7 LM 7805 5V Gerilim Dzenleyici LM78XX serisi pozitif gerilim dzenleyicileri, elektronik elemanlarn g tketimlerinin hzla azalmaya devam ettii gnmzde, devre tasarmnda sklkla kullanlmaktadr. Ayrca LM79XX serisi negatif gerilim dzenleyicileri de bulunmaktadr. Bir LM7805 devresi, giriine uygulanan 15 Voltluk gerilimi, 5Volta drp sabitlerken; LM7905 devresi, ayn gerilim giriine uygulandnda bu gerilimi -5 Volta drmektedir. Model olarak; 5, 6, 8, 9, 10, 12, 15, 18, 24 Volt k gerilimi verebilen modeller bulunmaktadr. Ayrca LM117XX serisi gerilim dzenleyiciler 1.2 Volt tan 57 Volta kadar k gerilimi salayabilmektedirler. Bu projede kullanlan gerilim dzenleyici modeli LM7805 modelidir. 3 bacaa sahip olan devrede giri gerilimi 5 Volt ile 24 Volt aras seilebilmektedir. Bu projede zellikle 5V gerilimle beslenmesi gereken RF modl iin kullanlmtr. Aada

32

resmi grlen devrenin en stteki baca, dzenlenmi k bacadr. En alttaki bacak pozitif doru gerilim girii, ortadaki bacak ise topraa veya 0 Volt gerilime balanmas gereken giritir.

ekil 2.11 LM7805 Tmdevresi

33

3. RF HABERLEME Bu ksmda nitelerin birbirleriyle kablosuz haberleme iin radyo frekanslarndan, projede kullanlan RF modl ve antenden bahsedilecektir. Ayrca, RF modllerin alma prensibi iinde yer alan frekans kaydrmal anahtarlamadan da bu ksmda bahsedilecektir. 3.1 RF HABERLEME HAKKINDA Kablosuz (RF) Teknoloji 3 Hz ile 300 GHz spektrum ierisinde elektromanyetik dalgalarn iletilmesidir. Elektromanyetik dalgalarn varl ilk olarak 1864 ylnda James Maxwell tarafndan ne srld. 1887 yllnda Heinrich Hertz tarafndan varl kantland. 1895 ylnda Guglielmo Marconi tarafndan icat edilen radyo ile birlikte iletiim iin kullanlabilecek bir teknoloji olduu ortaya kt.[14] Kapal bir sitemin elektrik enerjisiyle yklenmesi sonucu oluan statik bir elektrik alanda, bir deiim sz konusu olduunda, elektromanyetik dalga oluur. Bu dalgann iddeti (E), ana kaynaktan olan mesafesinin karesi ile ters orantl (E R -2) bir zayflama ile yaylr.

Esas olarak teori: Ykleme sisteminin, oluan alann bilgi tayabilmesi iin dzgn aralklarla elektromanyetik dalga oluturabilecek ekilde modle edilmesidir. Bu dalgalarn baka bir kapal sisteme ulatklarnda, o sistem ierisinde oluturduklar deiimin alglanmasdr.

34

RF kablosuz ve yksek frekans sinyallerle e anlamldr. RF, 535kHz ile 1605 kHz AM radyo frekanslarndan 2.4 GHzlik yerel a (LAN) frekanslarna kadar tanmlanr. RF normalde birka kHzden kabaca 1GHze kadar tanmlanr. Eer mikrodalga frekanslarda dnlrse bu aralk 300 GHze kadar ular. Aadaki tabloda radyo frekansnn frekans spektrumu gsterilmektedir. Tablo 3.1 Frekans Spektrumu

Yukardaki tabloda radyo dalgalarnn elektromanyetik spektrum zerindeki frekans dalmlar ve isimlendirilmi bant aralklar gsterilmitir. Haberleme uygulamalarnda bu bantlarn sadece belirli blmleri kullanlmaktadr. Bunlardan ISM (Industrial Scientific Medical Band) band birok lkede telsiz iletiimi iin sertifika veya lisansa gerek olmadan belirli bir k gc snrlamasna uyarak, zerinden yayn yaplabilen bir banttr. lkemizde ISM bandnn yaygn olarak kullanlan frekanslar 315MHz, 418 MHz, 433,93 MHz, 868 MHz, 915 MHz ve 2.5 GHz frekanslardr. Bu projede 868 MHz frekans kullanlmtr. Yukardaki ekilden frekans ile dalgaboyu arasndaki ilikide gzlemlenebilmektedir. Dalga ya da sinsoidal tamamen dalgaboyu ya da frekans ile tanmlanabilir. Dalgaboyu ile frekans arasnda ters orantldr ve normal ortamda hzlar k hzyla orantldr. Bu ilikiyi gsteren denklem aadaki gibidir.

(3.1)

35

Burada c k hzdr. Dalgaboyu ile frekansn arasndaki ters orantdan dalgaboyu arttka frekans azalmaktadr. Tablo 3.2 Mikrodalga frekanslar harf bant dalm

RF modller belirli sabit bir frekansta alacak ekilde retilmilerdir ve alc verici iftleri halinde satlmaktadr. Kullanmlar kolaydr. Devreye sadece bir anten ekleyerek altrlabilirler. Ayrca bir dier avantaj ise dk g tketmesidir. Bu sayede tanabilen sistem uygulamalarnda kullanldr. 3.1.1 RF lm RF lm metadolojisi genel olarak byk ksma ayrlr. Bunlar spektral analiz, vektr analiz ve network analizdir. Spektrum analizr temel lm yeterliliklerini salar. Birok genel amal uygulamada en popler RF lm tipidir. Belirli bir biimde spektrum analizr kullanarak g frekans bilgisi alnabilir ve bazen analog formata demodlasyonu yaplabilir. rnein, genlik modlasyonu (AM), frekans modlasyonu (FM) ve faz modlasyonu (PM). Vektr cihazlar, vektr ya da gerek zamanl sinyal analizr ve jeneratrnde ierir. Bu cihazlar analiz yapar, zaman yakalar, genibant dalga formu oluturur, ilgili sinyalin frekans, faz ve g bilgisini yakalar. Bu cihazlar spektrum analizre gre daha gldr ve mkemmel modlasyon kontrol ve sinyal analizi salar. Bir dier yandan network analizrler yksek frekans bileenleri iin ya da RFde tipik olarak S parametrelerinin lm iin ve dier karakteristik lmler iin

36

kullanlrlar. Network analizr oklu kanallarda analiz ve jeneratrn ikisini beraber barndrr. Fakat network analizr dier ikisinden daha pahaldr. 3.1.2 RF Genel Yaps ve RF Birimleri Radyo frekans ile kablosuz olarak almann temel yaps aadaki blok diyagramda zetlenmitir. Bilgi kaynaktan kar RF vericiden anten yardmyla gnderilir. Bilgi havada ilerledikten sonra alc ksmdaki anten yardmyla alnr ve istenen hedefe bilgi ulatrlr.

Bilgi Kayna

Anten letiim Kanal


RF VERC

x
RF ALICI

Bilgi Merkezi

ekil 3.2 RF haberleme temel yap RF verici, giriine verilen dijital bilgiyi transfer edebilmek iin iareti elektromanyetik dalgaya dntrr. Buradaki RF verici ksm u ekildedir.

ekil 3.3 RF verici

37

Yukardaki ekilde gsterilen LO ile ifade edilen osilatrdr, frekans retir. MIX modlatrdr. Kullanlan RF modle gre bu projede frekans kaymal anahtarlama yapmaktadr. PA ise kuvvetlendiricidir.[2] RF alc ise modle edilerek gnderilen elektromanyetik dalgay alr ve demodle ederek verici giriine verilen orijinal forma dntrr.

ekil 3.4 RF alc Yukardaki ekilde gsterilen LNA dk grltl kuvvetlendiricidir. Gelen sinyal demodle edildikten sonra integral alc devreye gnderilir ve iaret ilk formatna evrilerek hedefe iletilir.
3.2 RF Modl: UFM-M12

Bu ksmda projenin karlkl haberlemesini salamak maksadyla kullanlan RF modllerden ve teknik zelliklerinden bahsedilmitir. UDEA firmasnn rettii UFM-M12 model modl 868 MHz de almaktadr. Bu modl, dar bant FSK modlasyon kullanr. Dk akm sarfiyat sayesinde bu projedeki gibi pilli uygulamalar iin idealdir. Akm sarfiyat RX iin 50 mA, TX iin 90 mAdir. Ayrca bu modl tam olarak +5Vda almaktadr. Baka voltaj deerlerinde haberleme sorunlar yaanmakta veya modl almamaktadr. Yksek frekanslarda kararllk gsterir. Modln iletiim mesafesi 500m ile 1km arasnda deimektedir. 6 adet kanal mevcuttur ve kullanmna gre istenilen kanal seilebilmektedir. 868 MHz iin gerekli olan g 25 mWdr. Data hz 1800 bps ile 38400 bpsdr. [2]

38

ekil 3.5 UFM-M12 RF Modl RF modln uygulama alanlar; Uzaktan kontrol sistemleri LAN (Local Area Network) uygulamalar Ev otomasyon sistemleri Telemtry sistemleri Gvenlik amal alarm sistemleri UFM-M12 RF modln pin balant konfigrasyonu aadaki tablodaki gibidir. Tablo 3.3 RF modln pin zellikleri [2] Pin No. 1,3, 4 2 5 6 Pin smi GND ANT TX RX Giri/ k Kontrol kartnz 50 ohmluk anten balaynz lemcinin RX-UART balanr. lemcinin balanr. direnle 7 GPIO G/ zorunludur. 5V TX-UART Kullanlmyorsa pull-up topraa balayn Anten balant noktas Veri k 5V DC TTL Veri Girii 5V DC TTL Aklama

k Giri

pinine pinine 10K yaplmas

39

8 9

+5V +5V

+5V terminali +5V terminali

besleme Regle

edilmi

voltaj voltaj

kayna kayna

kullanlmaldr. besleme Regle edilmi kullanlmaldr.

UFM-M12 retildii band ierisinde 6 farkl kanalda alabilmektedir. Kullanc ihtiyacna ve isteine bal olarak bu kanallardan birini seebilir. Kullanc moduln alma frekans kanaln firmann belirttii komutlar kullanarak deitirebilir. Bu projede haberlemek iin 1. Kanal seilmitir. Kanal 1: 868.1090 MHz Kanal 2: 868.5120 MHz Kanal 3: 868.7422 MHz Kanal 4: 869.2030 MHz Kanal 5: 869.4336 MHz Kanal 6: 869.6640 MHz Modln kullanm iin firmann belirttii komut yaps ve data format kullanlmaktadr. Buna gre komut yapsnda, komuttan nce $C kullanlmaldr. Bu n ek HEX formatnda (24H) ve (43H) olarak da yazlabilir. Gnderilen data paketinin format ise u ekildedir.

ekil 3.6 Data format [2] Bu projede 3 Bytelk bilgi gnderilmektedir. Modlun MAC katman verinin RF ile iletilmesi iin gerekli eklemeleri (preamble, synchronization header) yaparak RF katmanna verir.

40

Data giriinin yaplmasnda ise nce start of frame (3 byte), sonra veri (max 72 byte) ve sonunda end of frame (5 byte) alr. Modln MAC katman datann RF ile iletilmesi iin gerekli eklemeleri (preamble, synchronization header, CRC) kararak modl kna verir. Yani veri modlden gnderildiinde kar tarafta ilk $RF e baklr. Eer varsa bilgi alnr. Sonunda END CR LF geldiinde alma ilemi bitirilir. Kar tarafta da modl veriyi alaca zaman bu seferde tersten bir yol izlenir. Firmann uyarsna gre 72 bytedan daha ksa bilgi art arda gnderilecekse araya hesaplanacak srelerde boluklar konmaldr. Td = (300 + Data Boyu*4) msn. Yukardaki bu formle gre, 3 bytelk bilgide araya 312msn boluk konularak program yazlmtr. Mikrodenetleyicinin USART portu verinin modle verilmesi ve RF olarak gelen sinyalin modlden alnmas iin kullanlr. Balantnn gsterim emas aadaki gibidir.[2]
+5 V

(3.2)

TX RX

1k 1k

RX TX RF Modl

+5 ekil 3.7 Modl-mikrodenetleyici balant yaps 3.3 Frekans Kaydrmal Anahtarlama Frekans kaydrmal anahtarlama (FSK) frekans kaydrma modlasyonu ve frekans kaydrmal sinyalleme olarak da bilinir. FSK veri sinyalinin spesifik bir frekansa ya da istenen noktaya optik fiber, kablo, tel veya kablosuz ortam zerinden iletilmesini

41

salayan bir tona evrilmesidir. FSKin tarihi 1900lerin balarna dayanmaktadr. Bu teknik kefedildii zamanlarda, radyo ile iletimi salamak amal kullanlmtr. Fakat FSK, baz modifikasyonlarla beraber, genelde dk hzl modemler ile bilgisayarlar arasndaki balanty salad dijital dnyada dahil olmak zere hala birok kullanl rnei bulunmaktadr.[11] FSK en yaygn tr yksek frekansl radyo spektrumunda ve telefon devrelerinde nemli uygulamalar olan saysal (dijital) modlasyon trdr. FSK tayc dalgann ayrk frekans deiiklii boyunca saysal bilginin iletilebildii frekans modlasyonudur. En kolay FSK ikili (binary) FSKdir. BFSK saysal ekipmanlar arasndaki haberlemeyi salamak arac ile kullanlmaktadr. Veri ikili olarak iki ayrk frekanstan biri ya da teki iin srekli taycnn frekansnn kaydrlmas ile iletilir. BFSK tam olarak ad stnde ikili sistemde bilgiyi (0,1) iletmek iin ayrk frekans iftleri kullanlmaktadr. Bu durumda, 1 iaret frekans (mark frequency), 0 ise boluk frekans (space frequency) olarak adlandrlr. Bununla iaret frekans yksek radyo frekanslarna denk gelir. Aadaki ekil veri ile iletilen sinyal arasndaki ilikiyi gstermektedir. Bu ekilden FSK ile dijital sinyal arasndaki iliki gzlemlenebilir.

42

ekil 3.8 FSK modlasyon aret ya da boluk durumunun minimum sresine element uzunluu (element lenght) denir. Element uzunluu iin tipik deerler 5 ile 22 milisaniye arasnda deimektedir. Fakat element uzunluu 1 milisaniyeden kk 1 saniyeden byk deildir. Bantgenilii, HF kanallarda, telefon kanallarnn ve sinyal yaylmnn durumu altnda element uzunluu 0.5 milisaniyeden uzun olmaldr. Element uzunluunu belirlemenin baka bir yolu ise anahtarlama hzdr. Anahtarlama hz bauds cinsindendir ve element uzunluunun saniyeler cinsinden tersine eittir. rnein, element uzunluu 20 milisaniye ise buna edeer anahtarlama hz 50bauddur. FSK sinyalin frekans lmleri iin genelde kaydrma ve merkez frekans cinsinden belirtilir. Kaydrma frekans iaret ve boluk frekanslar arasndaki frekans farkna eittir. Kaydrma frekans genelde 50-1000 Hertz arasnda deer alr. Merkez frekans ise iaret ve boluk frekanslar arasndaki orta noktadr. Bazen sapma terimi de kullanlabilir. Sapma, merkez frekans ile iaret ya da boluk frekans arasndaki mutlak deer ifadesidir. Sapma, nmerik olarak kaydrmann bir yarsna eittir.

43

ekil 3.9 FSK parametreleri FSK ile veri iletiminde birok farkl kod emas kullanlr. Bunlar iki ana grupta senkron ve asenkron olarak snflandrlabilirler. Senkron iletim, referans saat darbesi ile birlikte iaretten bolua ve boluktan iarete geilerdir. Asenkron sinyaller referans saat darbesine gerek duymazlar, bunun yerine kod zme sresi boyunca zaman kontrol etmek iin zel bit paternlerine ihtiya duyarlar. Aadaki ekilde senkron ve asenkron anahtarlama gsterilmitir.

ekil 3.10 Senkron (a) ve asenkron (b) sinyaller

44

3.4 Frekans Kaydrmal Anahtarlama Demodlasyon FSK demodlasyon trleri FM- detektr demodlasyon ve filtre tipi demodlasyon olmak zere iki ana gruba ayrlr. 3.4.1 FM Detektr Demodlasyon Bu modlasyon tipi ikili sistemde modle edilmi basit FM sinyali gibi davranan FSK sinyalidir. Aadaki ekilde, giriimi bant dna tayan ve sonra AM giriimi snrlayan FM detektr tipi demodlatrn blok diagram gsterilmektedir.

ekil 3.11 FM detektr tipi FSK demodlatr FM alglamal snrl sinyal iaret durumunda pozitif k, boluk durumunda ise negatif k retmektedir. Alglanan sinyal grltnn giderilmesi iin alak geiren filtreden geirilir. Sonu olarak karar devresi tm pozitif voltajlar ikili sistemdeki 1 ve tm negatif voltajlar ikili sistemdeki 0 haline getirir. 3.4.2 FSK Filtre Tipi FSK Demodlatr Filtre tipi demodlatr ile hata performans azaltlmaya allmtr. Filtre tasarm zellikleri sadece sinyal parametrelerine dayanmamaktadr. Sinyal grltsnn yapsna da baldr. Klasik uyumlu (matched) filtre demodlasyonun basit blok diyagram aadaki gibidir.

45

ekil 3.12 Uyumlu filtre FSK demodlatr Demodlatrde, uyumlu filtre k karlatrlr. Eer kta iaret filtresi boluk filtresinden bykse sinyale iaret olarak karar verilir. Boluk deteksiyonu ise benzer ekilde yaplr.

4. PIC 16F877 MKRODENETLEYC Raporun bu ksmnda projede kullanlan PIC 16F877 mikrodenetleyicisinin teknik zelliklerinden ve projedeki kullanmndan bahsedilecektir. 4.1 Mikrodenetleyici Nedir? Mikrodenetleyici bir tmdevre zerinde retilen mikro bilgisayarlara denir. inde bir yazlm olmadan ie yaramayan, iine yazlan program sayesinde programa gre istenilen ilemi gerekletiren kontrol elemandr. Bir mikrodenetleyici tm devresinde bulunan hafza ve giri/k alt sistemleri bu mikroilemcilerin birok uygulama iinde, gml olarak dorudan ve tek bana, mikroilemcilere gre ok daha basit ve ucuz arabirim teknikleriyle, kontrol amal olarak kullanlmasn salar.

46

Mikrodenetleyiciler teknik zelliklerine bal olarak snrsz bir kullanm alanna sahiptirler. Bir nevi bilgisayardrlar. Monitr, klavye gibi evre birimleri olmasa da bilgisayarn yapt her ii yapabilir.[6] Bir mikrodenetleyici genel olarak CPU (Merkezi lem Birimi- Central Processing Unit), RAM, EPROM/PROM/ROM (Silinebilir Programlanabilir ROM- Erasable Programmable Read Only Memory), giri/k portu, zamanlayc ve kesmelerden oluur.[6] Mikrodenetleyiciler zel amal bilgisayarlardr. Mikrodenetleyiciler sadece bir i iin programlanmlardr ve bu program deimemek zere ROMda sakl tutulur. Ayrca bilgisayarlara gre ok dk gte alrlar. Bir mikrodenetleyiciye giri yaplabildii, mikrodenetleyiciden kta alnabilir. Bu zellii ile mikrodenetleyicilerde LCD gstergeden k alnabilir. Maddi adan bakldnda ise mikrodenetleyiciler dk fiyatl iplerdir. Kompleks bir devreyi daha uygun maliyette yaplmasna olanak salar. Mikrodenetleyiciler bellek esitlerine farkllk gsterirler. Bunlar,

EEPROM Bellekli Mikrodenetleyiciler

Flash (EPROM) Bellekli Mikrodenetleyiciler OTP Bellekli Mikrodenetleyiciler 4.2 PIC Nedir? PIC serisi mikroilemciler MICROCHIP firmas tarafndan gelitirilmi ve retim amac ok fonksiyonlu mantksal uygulamalarn hzl ve ucuz bir mikrodenetleyici ile yazlm yoluyla karlanmasdr. PICin kelime anlam Peripheral Interface Controller giri k ilemcisidir. PIC mikrodenetleyicilerinin mimarisi deitirilmi Harvard RISC yapsna dayaldr.[4] 4.3 PIC 16F877 Mikrodenetleyici zellikleri ve Yaps RF Multi Kontrol projesinde sistemlerin veri giriini salamak, sensr bilgilerini gnderip almak, robot kol ve ara kontroln salamak ve alnan bilgileri LCD

47

ekranda gstermek amacyla mikrodenetleyici kullanlmtr. Mikrodenetleyicinin bu ilemleri salamas iin ncellikli olarak A/D giriinin olmas gerekmektedir, ayrca yeterli sayda giri/k portuda olmaldr. PIC 16F877, 16F84 kadar popler bir mikrodenetleyicidir. Flash ROM bellek hafzas sayesinde iine birok kez program yazlabilir. 8 Kworde kadar artan flash bellei 1 milyon kez programlanabilir. 368 Bytea kadar artan veri bellei, 256 Byte a karar artan EEPROM veri bellei vardr. Yksek hzl RISC temeline dayaldr. lem hz DC 20 MHzdir. 8 bit veri yoluna sahiptir. Ayn anda, veri belleine 8 bit geniliindeki bu yolla eriilirken, program belleine program yolu ya da adres yolu denilen 14 bit geniliindeki baka bir yolla eriilir. 35 adet komuta sahiptir ve bu komutlarn her biri sadece 1 evrimlik sre ierir.[4] Aadaki ekilde PIC 16F877nin bacak balant yaps gsterilmitir. Bu projede veri girileri iin zellikle mikrodenetleyicinin Port B ve Port D pinleri kullanlmtr.

ekil 4.1 PIC 16F877 Bacak balant yaps [1] Aadaki tabloda ise mikrodenetleyicinin bacaklar aklanmtr. Tablo 4.1 PIC 16F877nin bacak aklamalar

48

4.4 PIC 16F877nin Port Yaps ve Fonksiyonlar PIC 16F877 de A,B,C,D,E giri k portlar mevcuttur. Bu portlarn giri ya da k olarak kullanlmas istee baldr. Bu portlar giri/k yapmakla beraber baz evresel ilemleride yapacak zellie sahiptirler. Bu bacaklar evre birimleri kullanldnda genel giri/k olarak kullanlmaz. 4.4.1 PORT A Her bir biti bamsz olarak giri veya k olarak ayarlanabilmektedir. A portu hem giri/k hem de analog giri k ular grevi yapan 6 bitlik bir portdur. RA0, RA1, RA2, RA3, RA4, RA5 bitleri analog/saysal dntrc olarak ayarlanabilir. A portunu TRISA yazmac ynlendirir. A portunda bulunan RA4 biti dier Port A bacaklarndan farkldr. Bu pin ak kolektr zelliine sahip olduu iin pull-up

49

direnci ile kullanlmaldr. Analog giri kullanldnda TRISA yazmac RAnn ynn kontrol eder. 4.4.2 PORT B Port B giri/k olarak kullanlabilen 8 bitlik bir portdur. Bu portu TRISB yazmac ynlendirmektedir. Bu port mikrodenetleyici iinde dahili olarak pull-up yaplm gibidir. B portunun her baca dahili bir direle VDDye baldr. Bu zellik varsaylan olarak etkin deildir. Fakat OPTION yazmacnn 7. Bitini sfra ekerek B portunun bu zellii etkinletirilebilir. Bu zellii ile bu port giri k olarak kullanldnda girite sinyal yokken giri lojik-1 olarak alglanr. Bu yaps ile buton girii olarak kullanma uygun bir portdur. Analog giri kullanldnda TRISB yazmac RBnin ynn kontrol eder. 4.4.3 PORT C C portu 8 bitlik dijital giri/k portudur. Bu port TRISC yazmacdr. Dier portlara oranla daha fazla bilgi barndrr. Tm port bacaklar Schmitt Trigger girilidir. TRISE yazmacnn 4. biti olan PSPMODE bitini 1 yaparak parallel slave mode da kullanlabilir. Bu fonksiyon araclyla 8 bit geniliindeki herhangi bir mikroilemci busna balanabilir. Analog giri kullanldnda RCnin ynn TRISC yazmac kontrol eder. 4.4.4 PORT D D portu da C portu gibi 8 bitlik saysal giri/k portudur. Tm port bacaklar Schmitt Trigger girilidir. TRISE yazmacnn 4.biti olan PSPMODE bitini 1 yaparak paralel slave modda kullanlabilir. Bu fonksiyon araclyla 8 bit geniliindeki herhangi bir mikroilemci busna balanabilir. 4.4.5 PORT E

50

E portu 3 bitlik saysal giri k portudur. Port Enin kontrol TRISE tarafndan yaplr. Her bir biti bamsz olarak giri veya k olarak tanmlanabilmektedir. RE0, RE1 ve RE2 bacaklarnda Schmitt Trigger giri tamponlar vardr. Her bir bacak A/D dntrc olarak konfigre edilebilmektedir. Eer Port D paralel slave port olarak konfigre edilirse RE0, RE1, RE2 bacaklar Port Dnin baland mikrodenetleyici busna srasyla READ, WRITE ve CHIP SELECT kontrol girileri olarak kullanlabilmektedir. Bunun iin TRISE uygun biimde ayarlanmaldr. 4.5 PIC 16F877nin zel Fonksiyonlar 4.5.1 USART USART, yani senkron / asenkron alc verici PICF877deki iki seri giri / k biriminden biridir. Seri iletiim arayz ( SCI ) olarak da bilinen USART, monitr veya PC gibi aygtlara tam ift ynl asenkron balantda kullanlmak zere konfigre edilmitir. A / S veya S / A arayzlerine, seri kullanlmak zere konfigre edilebilmektedir. USART aadaki gibi konfigre edilebilmektedir. Asenkron: Tam iftynl Senkron: Master, yarm ift ynl Senkron: Slave, yarm ift ynl RC6 verici, RC7 ise alc port olarak kullanlmaktadr. RCSTA ( 0x18 ) ve TXSTA ( 0x98) yazmalar da konfigrasyonda kullanlmaktadr.[4]

4.5.2 Master Synchronous Serial Port (MSSP) MSSP birimi dier evre birimleri ya da mikrodenetleyicilerle haberlemek iin kullanl bir modldr. Bu evre birimleri seri EEPROM, kaydrmal yazmalar (shift register ), gsterge srcleri, A / S eviriciler vb. olabilir. MSSP birimi ayn anda aadaki iki moddan birine konfigre edilebilir.[4] Seri evre arayzleri (Serial Peripheral Interface, SPI)

Inter-Integrated devreler (Inter-Integrated Circuit, I 2C)

51

4.5.3 Analog Saysal Dntrc Birimi Analog/saysal dntrc birimi 10 bittir. Toplamda 8 adet analog/saysal kanal bulunmaktadr. 16F877de, mikrodenetleyici uyku modunda iken bile analog/saysal birimi geri planda almaya devam etmektedir. Analog/saysal kanallar iin RA4 hari dier RA portlar ve RE portlar kullanlabilir. lgili yazmalar ve adresleri aadaki gibidir.[4] ADRESH 0x1E; analog/saysal sonu yazmac (high register) ADRESl 0x9E; analog/saysal sonu yazmac (low register) ADCON0 0x1F; analog/saysal kontrol yazmac 0 ADCON1 0x9F; analog/saysal kontrol yazmac 1

5. DEVRE TASARIMI Bu ksmda RF Multi Kontrol sistemi devrelerinin nasl tasarland ve bask devre aamas anlatlacaktr. RF Multi Kontrol projesinde kontrol nitesi (verici) ve robot kol nitesi (alc) devreleri olmak zere iki adet devre bulunmaktadr. Devre donanm gereklenmeden nce yazlan programlar tasarlanan bir devre emas zerinde, Proteus ISIS simlasyon programnda simule edilmitir. Daha sonra sistem devreleri tasarlanm ve bask devreleri Proteus ARES programn kullanarak hazrlanmtr. 5.1 Kontrol nitesi (Verici Ksm) Alc ve verici ksmda ikier tane mikrodenetleyici bulunmaktadr. Ayrca verici ksmda robot kolun be ekleminin hareketini kontrol etmek iin on adet joystick kol

52

bulunmaktadr. Buna ek olarak paletin drt eksene hareketini kontrol edecek bir joystick, sensrlerden bilgi talep edecek iki buton bulunmaktadr. Son olarak, tm elde edilecek sensr ve hareket bilgilerinin gsterilecei bir LCD ekran bulunmaktadr. Verici ve alc ksmda ek olarak karlkl haberlemeyi salayacak RF modller bulunmaktadr. Verici ksm sten gsteren blok diyagram aadaki gibidir.

LCD EKRAN

Anten

ekil 5.1 Verici ksm stten grnm ekil 5.1 Verici ksm stten grnm ekil 5.1 Verici ksm stten grnm

53

Verici ksmdaki iki tane mikrodenetleyiciden bir tanesi hem paleti kontrol etmektedir hem de scaklk ve renk sensrnn bilgi talebini gndermektedir. Bu PIC paletin joystickinden gelen komutlar palete iletmektedir. Ayrca sistemde kullanlan LCD ekrannn bilgileri de yine bu mikrodenetleyici zerinden gnderilmektedir. Ek olarak sistemde kullanlan renk ve scaklk sensrlerinden bilgilerin istenmesinde de yine bu mikrodenetleyici kullanlmaktadr. Kontrol nitesindeki mikrodenetleyicilerden dieri ise sadece kol hareketlerinin kontroln salayan mikrodenetleyicidir. Sistemde verici ve alc tarafta ikier adet mikrodenetleyici kullanlmasnn sebebi kullanlan PIC 16F877nin bacak saysnn yeterli olmamasdr. Kullanlacak pin saylar hesaplanacak olursa, kolun hareketi iin 10 adet input giriine ihtiya vardr. 6 tane palet kontrol, scaklk ve renk sensr iin bacaa ihtiya vardr. Ayrca LCD kontrol iinde 14 adet bacaa ihtiya vardr. Toplamda kullanlan pin saysnn, standart pin saysn at iin iki adet mikrodenetleyici kullanlmtr. Verici ksmda kolu kontrol eden on adet joystick bulunmaktadr. Bu joystickler mikrodenetleyiciye baldr. Mikrodenetleyici joystickerden gelen inpular RF modl zerinden alc ksma iletecektir. Verici ksmda palet ve sensrlerle ilgili olan PIC, palete ait olan joystickden gelen inputlar alp RF modl zerinden paletin alc ksmna iletir. Ayn zamanda bu mikrodenetleyiciye LCD ekran ve iki harici giri baldr. Bu girilerden biri scaklk sensrnden scaklk bilgisini talep edecek, dieri ise renk sensrnden renk bilgisini talep edecek girilerdir. Bu taleplerle ilgili olan bilgi kar taraftan geldiinde, gelen sonu LCD ekran zerinde gsterilecektir. 5.2 Robot Kol-Palet nitesi (Alc Ksm) Alc ksmnda da verici ksmn karl olan iki adet mikrodenetleyici bulunmaktadr. Vericiden gelen palet ile ilgili bilgiler, alcdaki palet ile ilgili olan mikrodenetleyiciye gelmektedir. Bu mikrodenetleyici L293B DC motor src tmdevresine baldr. Vericiden gelen bilgiye gre paletin hangi dorultuda hareket etmesi gerekiyorsa o dorultuda DC motor src tmdevresiden paletin hareketi

54

salanmaktadr. Ayrca L293B DC motor srcsnn girilerini tetiklemek iin anahtar olarak BC237 transistrler kullanlmtr. Transistrlerin baz ular PICin klarna balanmtr. Transistrler DC motor src tmdevresi PICin klarndan akm ekmesin diye anahtar olarak kullanlmtr. Bu ilemin yaplma sebebi, L293B ok fazla akm eken bir entegre olmasdr. Ayn zamanda Port.Adaki dijital/analog evirici bacaklarna bal olan renk ve scaklk sensrleri vardr. Scaklk bilgisini lmek iin LM 35 scaklk sensr kullanlmtr. Bu sensr mikrodenetleyicinin Port A.0 pinine baldr. Bu pin bir numaral dijital/analog inputtur. Scaklk sensrnde de scaklk alglamas ve hesaplamas yapldktan sonra scaklk bilgisi RF modl zerinden alc ksmndan verici ksmna geri gnderilir. Bu ekilde karlkl haberleme salanm olur. Bu sistemde scaklk bilgisi 100 defa alnmtr ve ortalamalar alnp sonu olarak gsterilmitir. Bu sayede lm hata orannn azaltlmas hedeflenmitir. Son olarak bilginin kar tarafa iletilmesi ile LCD ekranda scaklk bilgisi gsterilir. Renk sensr ise ncelikle kendi kuvvetlendiricisi olan MTI04CS entegresine baldr. Kuvvetlendirici klar ise mikrodenetleyiciye baldr. Renk sensr alglad rengin k ucunda A mertebesinde ok kk akmlar srer. Bu akmlar, akm girili gerilim ykselteci kuvvetlendirici ile voltaj deerlerine dntrlr. Kuvvetlendirici tersleyen kuvvetlendirici mantnda almaktadr. Bu mantk ile yksek akm giren inputun knda gerilim der. Normalde tm klar maksimum gerilim seviyesindedir. PortA.1, PortA.2, PortA.3 pinlerine bal olan bu kuvvetlendiricinin klar karlatrlarak hangisinin en dk voltaj olduu alglanr. Bu uca ait olan bilgi tekrar RF modl zerinden verici nitesine gnderilir. Verici nitesindeki ekranda hangi renk olduu gsterilir. Robot kol ksmnda ise, vericiden gelen bilgi ilenir ve alc ksmda robot kol ile ilgili ksma gelir. Bu ksmda, anlk olarak hangi eklemin hangi yne hareket etmesi gerektiine karar verilir. Buna gre mikrodenetleyiciye bal olan on adet ktan ilgili bacaklar lojik 1 konumuna geer. Bu pinlerden yine anahtarlama mant ile on

55

adet rle srlmtr. Rlelerin klarna da robot kolun eklemleri baldr. Rleleri srerek robot kolun istenen hareketleri yapmas salanr. Alc ve verici ksmdaki bilgilerin karlkl olarak gnderilmesi RF modller sayesinde yaplmaktadr. RF haberleme ise modllerin yapsnda bulunan kodlarla karlkl olarak gnderilip alnmas ile salanmtr. RF modller 2400 baud rate ile 868MHzde almaktadr. RF modln data format ise aadaki ekildedir. Bu sistemde 3 bytelk bilgi gnderilip alnmaktadr.

ekil 5.2 Genel data format 5.3 Robot Kol Alc-Verici Simlasyonu Alc ve verici taraftaki robot kola ait mikrodenetleyicilerinin birbirleri arasnda doru bilgi gnderip almasn ve yazlan programlarn almasn gzlemlemek amacyla donanmn gereklenmesinden nce simlasyonu yaplmtr. Simlasyon program olarak Proteus ISIS kullanlmtr. Simlasyon ekrannn ekli aadaki ekildedir.

ekil 5.3 Robot kol alc-verici 5.4 Palet Alc-Verici Simlasyonu

56

Alc ve verici taraftaki palet ve sensrlere ait mikrodenetleyicilerinin birbirleri arasnda doru bilgi gnderip almasn ve yazlan programlarn almasn gzlemlemek amacyla donanmn gereklenmesinden nce simlasyonu yaplmtr. Simlasyon program olarak Proteus ISIS kullanlmtr. Simlasyon ekrannn ekli aadaki ekildedir.

ekil 5.3 Robot kol alc-verici 5.4 Palet Alc-Verici Simlasyonu Alc ve verici taraftaki palet ve sensrlere ait mikrodenetleyicilerinin birbirleri arasnda doru bilgi gnderip almasn ve yazlan programlarn almasn gzlemlemek amacyla donanmn gereklenmesinden nce simlasyonu yaplmtr. Simlasyon program olarak Proteus ISIS kullanlmtr. Simlasyon ekrannn ekli aadaki ekildedir.

57

ekil 5.4 Palet alc-verici 5.5 Bask Devre Programlarn simlasyonlarnn yaplmas ve devrelerin board zerinde

gereklenmesinden sonra projeye son halini vermek iin bask devre emalar hazrlanmtr. Bask devreleri hazrlamak iin Proteus ARES program kullanlmtr. Bask devre hazrlama metodu olarak u ekilde bir yol izlenmitir.

1. Adm: izimlerin mavi PCB kadna lazer yazc ile ktlar alnmtr. 2. Adm: Alnan ktlar t yardm ile bakr plakalara geirilmitir. 3. Adm: Bakr plakalarda kan yollarn erimesi iin demir3klorr, tuz ruhu, perhidrolden oluan karmda bekletilmitir.

4. Adm: Noktalar delinip, elemanlarn lehimleri yaplmtr.

58

Proteus ARES program ile yaplan bask devreler alc ve verici olmak zere aadaki gibidir.

ekil 5.5 Verici bask devre emas

59

ekil 5.6 Alc bask devre emas

60

6. YAZILIM TASARIMI Bu ksmda PIC Assembly PIC Basic programlama diline giri yaplacaktr. Ayrca programlarda derleyici olarak kullanlan CodeDesigner ve programlar hakknda bilgi verilecektir. Bu ksmn sonlarna doru hexadecimal (HEX) koda dntrmelerden ve mikrodenetleyicinin HEX kod ile programlanmasndan bahsedilecektir. 6.1 PIC Assembly Nedir? PIC Assembly, PIC mikrodenetleyicileri iin tasarlanm olan, tamam ile Assembly tabanl olan alt dzey bir programlama dilidir. Adnn zellikle PIC Assembly olmasnn sebebi, baz komutlarnn 8086 veya 8051 gibi ilemcilerin kulland Assembly dilindeki komutlardan farkl yazlta olmasndan kaynaklanmaktadr. PIC Assembly dili ile program yazarken, kullanlan donanmn ok nemi vardr. Yazlan kodlarn ou donanma bal yazlr ki; bu programn tanabilirliini azaltan bir faktrdr. rnein PIC16F877 iin yazlm bir Assembler kodu, PIC16F84 ile kullanlamayacaktr. Bu durum Assembly dillerinin en zayf yndr. Daha sonraki ksmlarda PIC Assembly ile ilgili bilgi verilecektir. 6.1.1 PIC Assembly Kodlar PIC Assembly donanma bal olarak farkl sayda koddan oluabilir. Bu projede PIC 16F877 kullanlmtr. 16F877 35 komuta sahiptir. Tm bu komutlar aadaki tablodaki gibidir.

61

Tablo 6.1 PIC 16F877nin assemblydeki komut seti 6.2 Pic Basic Nedir? Pic Basic, st dzey programlama dili olan BASIC in, bir denetleyici olan PIC iin dzenlenmi srmdr. Bu programlama dili kullanlarak, PIC ok daha kolay ve hzl biimde istenilen ilevleri yerine getirebilmektedir. Bu zelliinden dolay en ok kullanlan programlama dili olma zelliine sahiptir.

62

6.2.1 Pic Basic Komutlar PIC BASIC 65 adet komut iermektedir. PIC Basic ierdii bu 65 komutla her trl programlama ihtiyacna cevap verebilmektedir. Ayrca Assembly kodu kullanlmak istendiinde ASM-ENDASM komutlarnn arasna yazarak Assembly kodlar da BASIC kodlaryla birlikte kullanlabilmektedir. Tablo 6.2 PIC Basic komut seti [4]

6.3 PIC Basic Program Derleyicisi: CodeDesigner Bu projede PIC Basic ile yazlan programlar mikrodenetleyiciye yklenmesi iin CodeDesigner kullanlmtr. Mikrodenetleyici HEX kodlar ile almaktadr. Yazlan program mikrodenetleyici iin HEX hale getirmek iin CodeDesigner kullanlmtr. CodeDesigner yazlan PIC Basic kodlarn PIC Assemblye dntrmektedir. CodeDesignern ekran grnts aadaki gibidir.

63

ekil 6.1 CodeDesigner ekran grnts 6.4 PIC Programnn Tasarm RF Multi Kontrol projesinde drt adet mikrodenetleyici kullanlmtr. Bu mikrodenetleyiciler iin drt adet program yazlmtr. Bu programlarn ikisiyle robot kolun alc ve verici taraftaki kontrol ve ayarlamalar yaplmtr. Dier iki programda ise paletin, renk ve scaklk sensrlerinin kontrol ve ayarlamalar yaplmtr. Program algoritmalarndan daha sonraki ksmlardan bahsedilecektir. Yazlan programlar ise ektedir. 6.5 Program Algoritmalar Bu ksmda projede yazlan programlarn yazlm algoritmalarndan bahsedilecektir. Yazlan bu programlar ise daha ncede belirtildii gibi ektedir.

64

6.5.1 Robot Kol Verici Programnn Algoritmas Kumanda ksmnda bulunan robot kolun alcsna bilgi gnderecek programdr.

Balat Giri/k portlarn belirle Deerleri belirle ve BALA: tanmla

Bir tua Basld

OSA G m?

OSO L mu?

PKAPAT m?

Reset gnder

MSG deerini set et

MSG deerini set et

MSG deerini set et

SerOut ile MSG gnder

MSGyi lojik 0a ek

ekil 6.2 Robot kol verici program ak emas Programn ilk banda giri k portlar ve deerler (variable) belirleniyor. Deerlerin ilk bilgileri ilerine yazlyor. rnein; RST=11001100. Bu deerler ilk bata belirleniyor. Ayarlanan be deerler daha sonra programda dnglerin iinde kullanlacaktr.

65

Program ilk dngsnn (BASLA: ) iine girilir. Eer hibir tua baslmamsa yani kolun hareket etmesi iin hibir joysticke baslmamsa CNT deerinin yardmyla bir kere RST yani reset bilgisi gnderir. Bu reset bilgisi kardaki ilemci (KOL Alc) tarafndan alglandnda tm k bacaklarn lojik 0 yapar. Eer herhangi bir tua baslmsa yani joystick ile kolun herhangi bir ekleminin hareket etmesi istenmise ilk koul salanmayacak ve program if koulunun altna geecektir. Burada hangi tua basldn anlamak iin tek tek tm if koullar sorgulanr. Hangi tua baslm ise MSG deerinin o tua ait belirlenen bitini lojk 1 yapar. rnein; MSG= 00001000. Burada tm if durumlar alt alta olduu iin eer baka bir tuada ayn anda baslmsa birden fazla biti lojik 1 yapar. rnein; MSG=00100100. Bu ekilde harekette ikili kombinasyonlar elde edilir. Ayn ekilde daha fazla tua baslm ise o bitlerde lojik 1 yaplr. rnein; MSG=01101001 gibi. Son iki tu iin bir bit deil iki bit lojik 1 yaplr. Bunun sebebi deerlerin 8 bit ve eklem tu saysnn 10 olmasdr. Daha sonra hangi tua basld belirlenmi olan MSG bilgisi SerOut komutu ile kar tarafa gnderiliyor. Bundan sonrada MSGnin ii bir sonraki turda hangi tua ya da tulara basldn anlamak iin sfrlanyor. Eer hibir tua baslmadysa ilk if durumunun iindeki RST (reset) bilgisini gnderebilmek iin sfrlanyor. 6.5.2 Robot Kol Alc Programnn Algoritmas Programn banda tm portlar k olarak belirlenmitir. Kardan bilgi gelmeden hibir rleye enerji gitmesin ve kolun hareket etmesin diye k olarak belirlenen portlar balangta lojik 0 yaplmtr. Bunlarn altnda deerler (MSG ve CMD) tanmlanmtr. lk bata MSG=00000000 yaplmtr. Daha sonra kar taraftan bilgi geldii zaman SerIn komutu ile gelen bilgi MSGnin iine konulmutur. Bu komutlarn iinde ST kullanlmtr. Kar taraftan MSG gnderilmeden nce bana ST konulmutur. Bu durumda ilemci MSGnin iine bir bilgi koymadan nce ST bilgisini bekliyor. ST geldii zaman, ST nin hemen arkasndan gelen 8 bitlik bilgi MSGnin iine yazlyor. Buradan anlald zere, kardan ST gelmeden MSGnin ierii deimez. Dier taraftan tu veya tulara baslmsa, sadece bana ST koyup gnderdiimiz bilgi MSGnin iine yazlabilir. MSGnin iine ilk bata sfr yapld iin eer MSG sfrdan farkl ise kar taraftan bilgi

66

gelmi demektir. IF MSG != %00000000 Then satr ile MSGnin ieriinin deiip deimedii anlalr. Yani bu satr ile kumandaya bilgi gnderilip gnderilmedii anlalr. Eer sfrdan farkl ise hangi bitin 1 olduunu anlamak iin, alt alta yazlan ifler ile bir dizi oluturulmutur. MSGnin ierii kaybolmamas iin ve hangi bitin set edildiini anlamak iin CMDnin iine MSG konulmutur. Acaba son bit mi 1 olmu? sorusunu sormak iin CMD 00000001 ile arplmtr yani lojik AND ilemi yaplmtr. Bu arpma ileminin sonucunda CMDnin iinde 00000001 var ise, CMDnin yani MSGnin ilk biti 1 olduu anlalr. Bu durumda ise k lojik 1 yaplr, bylece rle enerji eker ve kol eklemi hareket eder. Alt alta ifler ile teker teker btn bitler kontrol edilir. Eer birden fazla bit 1 ise bunlar teker teker alglanp ilgili rle enerjilendirilir. Bu iflerin altnda IF MSG == %11001100 || MSG2 == %11001100 Then satr yer almaktadr. Bu satrla, eer kardan reset gnderildiyse btn k bitleri lojik 0 yaplyor. Sonra program baa dnerek ayn ilemi yapmay srdrr. 6.5.3 Palet Verici Programnn Algoritmas Palet verici program ilk bata LCD gstergenin ayarlar yaplarak balamtr. Bu ayara gre LCD 4MHzde drt bitle alacak ekilde ayarlanmtr. Daha sonra B portu hari dier portlar giri olarak ayarlanm ve deiken deerleri belirlenmi ve program iinde aktif kullanlan deerlerin ierikleri balangta sfrlanmtr. Daha sonra ana dngye girilmitir. Ana dngnn banda hibir tua baslmamas halinde aracn hibir hareketi yapmamasn istediimizden tr ilk bata komut gelmedii srece kar tarafa reset bilgisi gnderilmitir. Bu reset gnderme ilemi CNT deeri ile salanmtr. CNT balangta sfrlanmt. Eer hibir tua baslmamsa ve CNT sfrsa kar tarafa reset gnderilir reset gnderme ileminin sonunda CNT deeri bir yaplr. CNTnin tekrar sfr yapld yer ise ana dngnn dnda programn bitti yerdir. Eer bir tua baslmsa reset bilgisi gndermeyecek istenen ilemi yapacaktr. Ayrca reset bilgisinin gnderildii dng ierisinde ekrana BTRME PROJES TUBA ERGL yazlar yazdrlmtr. Buna gre hibir tua baslmam ise ekranda srekli olarak bu yazlar gsterilecektir.

67

Bu ilemlerden sonra renk alglama koulu gelmektedir. Renk alglama isteini gerekletiren butona baslmsa ilk bata hangi tua baslm ise MSG deerinin o tua ait belirlenen bitini lojik 1 yapar. Bunun ardndan kar tarafa MSG iaretini gnderir ve kardan RNK deeri iinde renk bilgisini alr. Kardan gelen bu deerin ilk bata sfr olup olmad kontrol edilir. Eer sfr deilse dier hangi koulu saladna baklr. Bu sayede cismin rengi anlalr ve o renk ekrana yazdrlr. Renk alglamadan sonra scaklk alglama butonuna baslp baslmad kontrol edilir. Eer scakl butonuna baslmsa MSG deerini gnderir. TMP ve DOT deerlerin kardan alr. Ekranda scaklk bilgisini gsterir. Burada scaklk deerinin virglden sonraki ksmn hesaplamak iin bir hesaplama yaplmtr. Kar taraftan 200 kere rnek alnan ve 200e blmnden kalan ksmn belirli deerlerden byk olmas durumuna gre virglden sonraki deer belirlenmitir. Bu ksmda virglden nceki scaklk deerinin peine yazlarak ekranda gsterilmitir. Alglama ilemlerinden sonra paletin hangi yne hareket edeceine baklmtr. lgili portun ilgili bacann lojik 1 yaplmas ile o ynde hareket gerekletirilmi olacaktr. Bu hareket ise LCD ekranda gsterilecektir ve MSG deeri alc tarafa gnderilecektir. Ana dngnn sonunda ise CNT ve MSG deerleri sfrlanm ve programa baa dndrlmtr. Ayrca ana dngnn dnda programn sonunda CIK2 etiketi bulunmaktadr. Bu etikette ekrana HATA bilgisi yazdrlmaktadr. Bu etiket alc taraftan scaklk bilgisi alnd zaman, eer yarm saniye ierisinde scaklk bilgisi gelmiyorsa ekrana HATA bilgisini yazdrmaktadr. 6.5.4 Palet Alc Programnn Algoritmas Programa analog/saysal birimlerin ayarlamasn yaparak balanmtr. Ana dngye girilmeden nce programda kullanlacak deikenler tanmlanmtr. Ana dng ierisinde kullanlacak deerler ve portlarn klar sfrlanmtr. Ana dng ierisinde MSG olarak tanmladmz deikenin ierii 0 olarak atanmtr ki bunu yapmamzn amac her bir dng balangcnda bir nceki dngden kalan bilginin kullanlmamas ve o dngde alnacak olan bilginin kullanlmasdr. C

68

portunun 7nci pininden Serin komutu ile bilgi alnm ve eer gelen bilgi DE bilgisi ile balyorsa bu bilgiden sonra gelen bilgi MSG isimli deikenin iine yazlmtr. Bu durumda verici tarafndan gnderilen komut bilgisi MSG isimli deikenin ierisindedir. Verici tarafndan gnderilen komutlar palet hareket yn komutu, scaklk bilgisi talep komutu veya renk bilgisi talep komutu olabilir. Program MSG deikeninin ieriinin 0 dan farkl bir bilgi olup olmadn sorgulayarak alcdan herhangi bir komut gelip gelmediini belirler ve eer bir komut alnd ise bu komutun ne bilgisi olduunu yine IF komut bloklar ile belirlenmitir. Eer gelen komut palet hareket ynn belirleyen bir komut ise devrenin palet DC motorlarn sren DC motor src ksmnn ilgili blmlerini tetiklemek zere microilemcinin ilgili pinin k 1 yaplarak palete yn verilmektedir. Eer gelen komut scaklk bilgisi talep komutu ise analog giri olarak tanmlanm olan ve scaklk sensrnn bal olduu A portnun 0 nc pininden lmleme hatasn engellemek amacyla 100 adet rnek deer alnarak toplanr. Bu toplamn ortalamas alnarak scaklk bilgisi belirlenir. Scaklk bilgisinin ondalk ksmnn belirlenebilmesi iin modls operatr ile ortalama ilemi iin kullanlan blmden kalan belirlenir ve scaklk bilgisi ile scaklk bilgisinin ondalk ksmnn belirlendii deikenler ayr veri setleri Serout komutu ile tekrar verici ksmna gnderilir ve bu bilgi verici tarafndan ilenerek LCD ekranda yazdrlr. Eer gelen komut renk bilgisi talet komutu ise analog giri olarak tanmlanm ve renk sensrlerinin bal oldugu A portunun 1nci, 2nci ve 3nc pinlerinden analog bilgiler alnr. Yine lm hatalarnn engellenmesi iin rneklemelerin ortalamas alndktan sonra renk snsrnn alma prensibi sebebiyle en dk deere ait pine bal olan sensr knn (krmz, yeil, mavi) cisim rengi olarak tanmland iin, bu renge ait bilgi seti Serout komutu ile tekrar vericiye gnderilir ve bu bilgi verici tarafndan ilenerek LCD ekranda yazdrlr.

69

7. SONU Bu raporda RF Multi Kontrol isimli proje tantlmaya allmtr. RF Multi Kontrol isimli bu projede karlkl haberleen iki nite bulunmaktadr. Verici ksm kontrol nitesi, alc ksm ise palet ve robot koldan olumumu, renk ve scaklk sensrleriyle donatlm nitedir. Bu projedeki asl ama karlkl haberleme ileminin salanmas ve uzaktan kontrol sistemleri ile insan gcne olan ihtiyacn ve maliyetlerin azaltlmasdr. Mezuniyetimizden nce byle bir proje yapmamzn amalarndan biride, eitim hayatmz sresince teorik olarak edindiimiz teknik bilgileri gerek hayatta kullanrken karlaabileceimiz zorluklarn neler olabileceini renmek olduu inancndaym. Projenin yapm esnasnda bu zorluklarn birou karlalmtr. Karlalan bu zorluklar ile proje ynetim metodolojilerinin hem proje maliyetleri hem de proje dnm noktalarnn zamanlamas ynnden ne denli nemli olduu grlmtr. Bunun yannda ideal olmayan ortan artlarnn, ekipman temininin ve ekip almasnn projenin ilerleyiini nasl etkileyebilecei grlm ve mezuniyetimizden sonraki profesyonel meslek hayatmza balang iin olduka byk bir tecrbe olmutur. Projeye ilk baland zamanlarda projenin erkenden bitirilip ek donanm eklenmesi hedeflenmiti fakat zamann yeterli olmamasndan tr bu hedef gerekletirilemedi. Bunun dnda balangta konulan temel hedefler gerekletirilmitir. Bu alma baka RF sistemleri iin bir prototip zellii tamaktadr. Bu proje endstriyel uygulamalar iin daha ok gelitirilebilir. rnein projede ortamn scakl alglanyor. Fakat scaklk sensrnn parmaklara tanmas ile tuttuu cismin scaklk alglamasn yapabilir. Proje daha fazla gelitirilerek rnein mesafe sensrde eklenerek, x mesafedeki cismin rengini ve scakln lp sonular LCD ekranda gsterebilir. Ayrca proje oklu kontrol sistemi olduu iin bir kumandayla birden fazla ara kontrol edilebilir.

70

KAYNAKLAR [1] www.alldatasheet.com [2] www.udea.com.tr [3] www.mazet.de [4] ALTINBAAK,O. (2007), PicBasic Pro ile Programlama, Alta Yaynclk, stanbul. [5] www.microchip.com [6] EK, S. (2007), CCS C ile PIC Programlama, Alta Yaynclk, stanbul. [7] http://www.linuxfocus.org/Turkce/September2002/article258.shtml [8] http://www.national.com/analog [9] www.antrak.org.tr [10] http://www.melabs.com/ [11] http://en.wikipedia.org/wiki/Frequency-shift_keying [12] http://www.tech-faq.com/fsk.shtml [13] www.fatih.edu.tr/~syilmaz/habI/den9.doc [14] http://en.wikipedia.org/wiki [15] Kzlbey, O. (2005), Deniz Suyu Termometresi ,Bitirme devi, .T.. Elektronik ve Haberleme Mhendislii Blm, stanbul [16] Yaldz, F. (2004), Gezgin Robot Uygulamas,Bitirme Tezi, Y.T.. Elektronik ve Haberleme Mhendislii Blm, stanbul

71

EK A Program Algoritmalar Kol Verici Program '**************************************************************** INCLUDE "MODEDEFS.BAS" TRISB=%11110111 'ILK 4 BIT CIKIS SON 4 BIT GIRIS OLARAK AYARLANDI TRISD=%11111111 'GIRIS OLARAK AYARLANDI TRISC=%11111111 TRISA=%11111111 '----------------------------------------------------------------CNT VAR BYTE RST VAR WORD MSG VAR WORD CNT=%0 RST=%11001100 'BB MSG=%00000000 '00 '----------------------------------------------------------------SerOut PORTC.6,0,[("$"),("C"),("1")]' Kanal 1 seildi Pause 500 BASLA: High PORTB.3 '------------------------------------ RESET -----------------------------IF (PORTD.0=0 AND PORTD.1=0 AND PORTD.2=0 AND PORTD.3=0 AND PORTD.4=0 AND PORTD.5=0 AND PORTD.6=0 AND PORTD.7=0 AND PORTB.2=0 AND PORTB.1=0) Then IF CNT=0 Then 'SerOut ("LF")] PORTC.6,0,[("$"),("R"),("F"),("S"),("T"),RST,("E"),("N"),("D"),("CR"),

72

SerOut PORTC.6,0,[$24,$52,$46,("S"),("T"),RST,$45,$4E,$44,$0D,$0A] 'Pause 350 SerOut PORTC.6,0,[$24,$52,$46,("S"),("T"),RST,$45,$4E,$44,$0D,$0A] 'Pause 350 SerOut PORTC.6,0,[$24,$52,$46,("S"),("T"),RST,$45,$4E,$44,$0D,$0A] 'Pause 350 SerOut PORTC.6,0,[$24,$52,$46,("S"),("T"),RST,$45,$4E,$44,$0D,$0A] 'Pause 350 SerOut PORTC.6,0,[$24,$52,$46,("S"),("T"),RST,$45,$4E,$44,$0D,$0A] 'Pause 350 'SerOut PORTC.6,0,[("S"),("T"),RST] CNT=%1 EndIF GoTo BASLA EndIF '------------------------------------ RESET -----------------------------IF PORTD.0=1 Then MSG=MSG | %00000001 EndIF IF PORTD.1=1 Then MSG=MSG | %00000010 EndIF IF PORTD.2=1 Then MSG=MSG | %00000100 EndIF IF PORTD.3=1 Then

73

MSG=MSG | %00001000 EndIF IF PORTD.4=1 Then MSG=MSG | %00010000 EndIF IF PORTD.5=1 Then MSG=MSG | %00100000 EndIF IF PORTD.6=1 Then MSG=MSG | %01000000 EndIF IF PORTD.7=1 Then MSG=MSG | %10000000 EndIF IF PORTB.2=1 Then MSG=MSG | %00000011 EndIF IF PORTB.1=1 Then MSG=MSG | %00001100 EndIF 'IF PORTB.5=1 Then 'MSG=MSG | %00001101 'EndIF SerOut PORTC.6,0,[$24,$52,$46,("S"),("T"),MSG,$45,$4E,$44,$0D,$0A]

74

'Pause 350 SerOut PORTC.6,0,[$24,$52,$46,("S"),("T"),MSG,$45,$4E,$44,$0D,$0A] 'Pause 350 'SerOut PORTC.6,0,[("S"),("T"),MSG] MSG=%00000000 CNT=%0 Low PORTB.3 GoTo BASLA End Kol Alc Program '**************************************************************** INCLUDE "MODEDEFS.BAS" TRISB=%00000000 TRISD=%00000000 Low PORTD.0 Low PORTD.1 Low PORTD.2 Low PORTD.3 Low PORTD.4 Low PORTD.5 Low PORTD.6 Low PORTD.7 Low PORTB.6 Low PORTB.4 Low PORTB.5

75

MSG VAR WORD CMD VAR WORD MSG=%00000000 Pause 300 SerOut PORTC.6,0,[("$"),("C"),("1")]' Kanal 1 seildi Pause 500 '-----------------------------------------------------------MAIN: MSG=%00000000 High PORTB.6 SerIn PORTC.7,0,30,CIK,["ST"],MSG SerIn PORTC.7,0,300,CIK,["ST"],MSG SerIn PORTC.7,0,300,CIK,["ST"],MSG

IF MSG != %00000000 Then CMD=MSG CMD=CMD & %00000001 IF CMD == %00000001 Then High PORTD.0 Else Low PORTD.0 EndIF CMD=MSG CMD=CMD & %00000010 IF CMD == %00000010 Then

76

High PORTD.1 Else Low PORTD.1 EndIF CMD=MSG CMD=CMD & %00000100 IF CMD == %00000100 Then High PORTD.2 Else Low PORTD.2 EndIF CMD=MSG CMD=CMD & %00001000 IF CMD == %00001000 Then High PORTD.3 Else Low PORTD.3 EndIF CMD=MSG CMD=CMD & %00010000 IF CMD == %00010000 Then High PORTD.4 Else Low PORTD.4 EndIF CMD=MSG CMD=CMD & %00100000 IF CMD == %00100000 Then

77

High PORTD.5 Else Low PORTD.5 EndIF CMD=MSG CMD=CMD & %01000000 IF CMD == %01000000 Then High PORTD.6 Else Low PORTD.6 EndIF CMD=MSG CMD=CMD & %10000000 IF CMD == %10000000 Then High PORTD.7 Else Low PORTD.7 EndIF CMD=MSG CMD=CMD & %00000011 IF CMD == %00000011 Then Low PORTD.0 Low PORTD.1 High PORTB.5 Else Low PORTB.5 EndIF CMD=MSG

78

CMD=CMD & %00001100 IF CMD == %00001100 Then Low PORTD.2 Low PORTD.3 High PORTB.4 Else Low PORTB.4 EndIF 'CMD=MSG 'CMD=CMD & %00001101 'IF CMD == %00001101 Then 'Low PORTD.0 'Low PORTD.2 'Low PORTD.3 'High PORTB.2 'Pause 1000 'Low PORTB.2 'Pause 50 'High PORTB.3 'Pause 1000 'Low PORTB.3 'Pause 50 'High PORTB.2 'Pause 1000 'Low PORTB.2 'Pause 50 'High PORTB.3 'Pause 1000 'Low PORTB.3

79

'Pause 50 'Else 'Low PORTB.2 'Low PORTB.3 'EndIF EndIF IF MSG == %11001100 Then Low PORTD.0 Low PORTD.1 Low PORTD.2 Low PORTD.3 Low PORTD.4 Low PORTD.5 Low PORTD.6 Low PORTD.7 Low PORTB.5 Low PORTB.4 EndIF CIK: Low PORTB.6 GoTo MAIN End

80

Palet Verici Program '**************************************************************** INCLUDE "MODEDEFS.BAS" DEFINE OSC 4 DEFINE LCD_DREG PORTB DEFINE LCD_DBIT 4 DEFINE LCD_EREG PORTB DEFINE LCD_EBIT 2 DEFINE LCD_RSREG PORTB DEFINE LCD_RSBIT 0 DEFINE LCD_BITS 4 DEFINE LCD_LINES 2 DEFINE LCD_COMMANDUS 2000 DEFINE LCD_DATAUS 50 TRISD=%11111111 'GIRIS OLARAK AYARLANDI TRISC=%11111111 TRISA=%11111111 '----------------------------------------------------------------CNT VAR BYTE RST VAR WORD MSG VAR WORD TMP VAR WORD DOT VAR WORD RNK VAR WORD CNT=%0 RST=%11001100 'BB MSG=%00000000 RNK=%00000000 '00 '00

'-----------------------------------------------------------------

81

BASLA: IF (PORTD.0=0 AND PORTD.1=0 AND PORTD.2=0 AND PORTD.3=0 AND PORTD.6=0 AND PORTD.5=0) Then IF CNT=0 Then SerOut PORTC.6,0,[("D"),("E"),RST] SerOut PORTC.6,0,[("D"),("E"),RST] SerOut PORTC.6,0,[("D"),("E"),RST] SerOut PORTC.6,0,[("D"),("E"),RST] SerOut PORTC.6,0,[("D"),("E"),RST] 'SerOut PORTC.6,0,[("E"),("D"),RST] LCDOut $FE,1 Pause 50 LCDOut "Bitirme Projesi" Pause 10 LCDOut $FE,$C0," TUBA ERGUL " Pause 10 CNT=%1 EndIF GoTo BASLA EndIF 'RENK '----------------------------------------------------------------------------------------IF PORTD.5=1 Then MSG=MSG | %01000000

82

SerOut PORTC.6,0,[("D"),("E"),MSG] SerOut PORTC.6,0,[("D"),("E"),MSG] SerOut PORTC.6,0,[("D"),("E"),MSG]

SerIn PORTC.7,0,500,CIK2,["DE"],RNK

IF RNK != %00000000 Then 'IF RNK == %00001000 Then 'LCDOut $FE,1 'Pause 50 'LCDOut "CISIM RENGI" 'LCDOut $FE, $C0, "YOK 'Pause 500 'EndIF IF RNK == %00000001 Then LCDOut $FE,1 Pause 50 LCDOut "CISIM RENGI" LCDOut $FE, $C0, "YOK Pause 500 EndIF IF RNK == %00001000 Then LCDOut $FE,1 Pause 50 LCDOut "CISIM RENGI" LCDOut $FE, $C0, "Mavi Pause 500 ",DEC RNK ",DEC RNK ",DEC RNK

83

EndIF IF RNK == %00000010 Then LCDOut $FE,1 Pause 50 LCDOut "CISIM RENGI" LCDOut $FE, $C0, "YESIL Pause 500 EndIF IF RNK == %00000100 Then LCDOut $FE,1 Pause 50 LCDOut "CISIM RENGI" LCDOut $FE, $C0, "KIRMIZI ",DEC RNK Pause 500 EndIF RNK=%00000000 EndIF EndIF ",DEC RNK

'-----------------------------------------------------------------------------------------------------'SICAKLIK '----------------------------------------------------------------------------------------IF PORTD.6=1 Then MSG=MSG | %01000000 SerOut PORTC.6,0,[("D"),("E"),MSG] SerOut PORTC.6,0,[("D"),("E"),MSG] SerOut PORTC.6,0,[("D"),("E"),MSG]

84

SerIn PORTC.7,0,500,CIK2,["DE"],TMP SerIn PORTC.7,0,500,CIK2,["TT"],DOT LCDOut $FE,1 Pause 50 LCDOut "SICAKLIK" LCDOut $FE, $C0, "TEMP= ",DEC TMP IF DOT > 180 Then LCDOut ".9" GoTo CD EndIF IF DOT > 160 Then LCDOut ".8" GoTo CD EndIF IF DOT > 140 Then LCDOut ".7" GoTo CD EndIF IF DOT > 120 Then LCDOut ".6" GoTo CD EndIF IF DOT > 100 Then LCDOut ".5" GoTo CD EndIF IF DOT > 80 Then LCDOut ".4" GoTo CD EndIF IF DOT > 60 Then

85

LCDOut ".3" GoTo CD EndIF IF DOT > 40 Then LCDOut ".2" GoTo CD EndIF IF DOT > 20 Then LCDOut ".1" GoTo CD Else LCDOut ".0" GoTo CD EndIF CD: LCDOut 223 LCDOut "C" Pause 100 EndIF '-----------------------------------------------------------------------------------------------------IF PORTD.0=1 Then LCDOut $FE,1 LCDOut "ILERI" MSG=MSG | %10010001 EndIF IF PORTD.1=1 Then LCDOut $FE,1 LCDOut "GERI" MSG=MSG | %00000010

86

EndIF IF PORTD.2=1 Then LCDOut $FE,1 LCDOut "SAG" MSG=MSG | %00000100 EndIF IF PORTD.3=1 Then LCDOut $FE,1 LCDOut "SOL" MSG=MSG | %00001000 EndIF

SerOut PORTC.6,0,[("D"),("E"),MSG] SerOut PORTC.6,0,[("D"),("E"),MSG] SerOut PORTC.6,0,[("D"),("E"),MSG] 'SerOut PORTC.6,0,[("E"),("D"),MSG2] 'SerOut PORTC.6,0,[("S"),("T"),MSG] 'SerOut PORTC.6,0,[("E"),("D"),MSG2] MSG=%00000000 CNT=%0 GoTo BASLA CIK2: LCDOut $FE,1 Pause 50

87

LCDOut " !!! HATA !!!" Pause 1000 GoTo BASLA End Palet Alc Program '**************************************************************** INCLUDE "MODEDEFS.BAS" DEFINE ADC_BITS 10 DEFINE ADC_CLOCK 3 DEFINE ADC_SAMPLEUS 50 adcon1 = %10000010 X i j k l VAR BYTE VAR BYTE VAR BYTE VAR BYTE VAR BYTE

TMP VAR WORD TEMP VAR WORD DOT VAR WORD TEMPT VAR WORD TESTD VAR WORD MSG VAR WORD CMD VAR WORD CLR VAR WORD RNK VAR WORD MAT VAR WORD KIT VAR WORD YET VAR WORD

88

MAVI VAR WORD YESIL VAR WORD KIRMIZI VAR WORD KONT VAR WORD CNT VAR BYTE KONT=0 CNT=0 TEMPT=0 MAT=0 YET=0 KIT=0 TRISA=%11111111 TRISB=%00000000 TRISD=%00000000 Low PORTD.0 Low PORTD.1 Low PORTD.2 Low PORTD.3 Low PORTB.5 Low PORTD.6 MSG=%00000000 Pause 1000 MAIN: MSG=%00000000

89

SerIn PORTC.7,0,30,CIK,["DE"],MSG SerIn PORTC.7,0,300,CIK,["DE"],MSG SerIn PORTC.7,0,300,CIK,["DE"],MSG IF MSG == %11001100 Then Low PORTD.0 Low PORTD.1 Low PORTD.2 Low PORTD.3 Low PORTB.5 Low PORTD.6 GoTo MAIN EndIF IF MSG != %00000000 Then CMD=MSG CMD=CMD & %10010001 IF CMD == %10010001 Then High PORTD.0 EndIF CMD=MSG CMD=CMD & %00000010 IF CMD == %00000010 Then High PORTD.1 EndIF CMD=MSG CMD=CMD & %00000100 IF CMD == %00000100 Then

90

High PORTD.2 EndIF CMD=MSG CMD=CMD & %00001000 IF CMD == %00001000 Then High PORTD.3 EndIF CMD=MSG CMD=CMD & %01000000 IF CMD == %01000000 Then i=1 While i<100 i=i+1 ADCIN 0 , TMP TEMPT=TEMPT+TMP Wend TEMP=TEMPT*1/200 DOT=TEMPT//200 SerOut PORTC.6,0,[("D"),("E"),TEMP] SerOut PORTC.6,0,[("D"),("E"),TEMP] SerOut PORTC.6,0,[("D"),("E"),TEMP] SerOut PORTC.6,0,[("D"),("E"),TEMP] SerOut PORTC.6,0,[("D"),("E"),TEMP] SerOut PORTC.6,0,[("T"),("T"),DOT] SerOut PORTC.6,0,[("T"),("T"),DOT] SerOut PORTC.6,0,[("T"),("T"),DOT] SerOut PORTC.6,0,[("T"),("T"),DOT]

91

SerOut PORTC.6,0,[("T"),("T"),DOT] i=1 TEMPT=0 EndIF '----------------------------------------------------CMD=MSG CMD=CMD & %01000000 IF CMD == %01000000 Then High PORTB.5 j=1 While j<10 j=j+1 ADCIN 1 , CLR KIT=KIT+CLR Wend KIRMIZI=KIT*1/10

k=1 While k<10 k=k+1 ADCIN 2 , CLR YET=YET+CLR Wend YESIL=YET*1/10 l=1

92

While l<10 l=l+1 ADCIN 3 , CLR MAT=MAT+CLR Wend MAVI=MAT*1/10 IF CNT=0 Then KONT=MAVI KONT=KONT-%00000001 CNT=1 EndIF IF MAVI < KIRMIZI Then IF MAVI < YESIL Then IF KONT > MAVI Then RNK = %00000001 'MAVI Else RNK = %00001000 ' YOK EndIF Else RNK=%00000010 'YESIL EndIF Else IF KIRMIZI < YESIL Then RNK = %00000100 'KIRMIZI Else RNK = %00000010 'YESIL EndIF EndIF

93

SerOut PORTC.6,0,[("D"),("E"),RNK] SerOut PORTC.6,0,[("D"),("E"),RNK] SerOut PORTC.6,0,[("D"),("E"),RNK] SerOut PORTC.6,0,[("D"),("E"),RNK] SerOut PORTC.6,0,[("D"),("E"),RNK] j=1 k=1 l=1 KIT=0 MAT=0 YET=0 EndIF '--------------------------------------------------EndIF CIK: GoTo MAIN End

94

ZGEM Tuba ERGL Doum Tarihi : Doum yeri : Lise : Lisans : 08.08.1986 Isparta / Trkiye 2000 2004 2005- 2007 2007- 2009 Isparta Anadolu Lisesi Dou Akdeniz niversitesi, KKTC Electrical Electronic Engineering Yldz Teknik niversitesi, Trkiye Elektronik ve Haberleme Mhendislii Staj Yapt Yerler : Trk Telekom A.. Isparta ubesi, Isparta (6 hafta), ASELSAN, Ankara (6 hafta).

95

You might also like