You are on page 1of 65

-1-

RF HABERLEME LE UZAK MESAFEDEN SU DEPOSU OTOMASYON SSTEMNN KONTROL

ARF ERKU SEDRETTN SLE

TELEKOMNKASYON ZMLEMELER-I BTRME DEV ELEKTRK-ELEKTRONK MHENDSL

DUMLUPINAR NVERSTES MHENDSLK FAKLTES

OCAK 2012

-2-

TEZ BLDRM Tez iindeki btn bilgilerin etik davran ve akademik kurallar erevesinde elde edilerek sunulduunu, ayrca tez yazm kurallarna uygun olarak hazrlanan bu almada orijinal olmayan her trl kaynaa eksiksiz atf yapldn bildiririz.

ARF ERKU SEDRETTN SLE

-3-

TEEKKR

almalarmz boyunca deerli yardm ve katklaryla bizi ynlendiren Hocam Prof. Dr. AHMET ALTUNCU ya teekkrlerimizi sunarz. Ayrca tez almalarmz boyunca desteklerini bizden esirgemeyen snf arkadalarma ve zellikle elektrik-elektronik mhendisi Vedat Gven BELL ye ve maddi destekleriyle bizi hibir zaman yalnz brakmayan ailelerimize teekkr bir bor biliriz.

-4-

NDEKLER Sayfa Tez bildirimi ...............................................................................................................ii Teekkr.................................................................................................................... iii indekiler ..................................................................................................................iv zet _.........................................................................................................................vi Anahtar kelimeler_.......................................................................................................vi 1. Giri........................................................................................................................1 A ) RF HABERLEME............................................................................................2 1 KABLOSUZ SER HABERLEME UYGULAMALARI VE RF KONTROL2 2 RF MODLLER.5 3 ANTEN7 B) VERC BLMN TASARIMI...........................................................................9 1.VERC DEVRESNN YAZILIM PROGRAMLARI .............11 1.1 ALICI. Asm.....11 1.2VERC.HEX14 1.3 VERC.Pbp16 1.4 VERC.mac18. C) MKRO DENETLEYC BRM21 D) ALICI BLMNN TASARIMI.25 1. ALICI DEVRESNN YAZILIM PROGRAMLARI26 1.1 Alc asm .26 1.2 Alc hex28 1.3 Alc pbp..29 1.4 Alc.MAC.30 E) SMLASYON ALIMASI.....33 F) MKRO DENETLEYC DZAYNI.36 G) LCD BLMN TASARIMI.42 1. LCD PNLERN TANIYALIM .43 1.1 PCBASCte kullanlan LCD komutlarn tanyalm .43 1.2 PCBASCte kullanlan LCD_DEFINE TANIMLAMALARI ...................44 1.3 LCD DATASHEET.45 1.4 LCD ZMLER..46

-51.5 LCD DEVRESNN YAZILIM PROGRAMLARI...................................48 i. LCD. Pbb 48 ii. VERC.mac.49 H) TEZDE KULLANILAN MALZEMELERN TANITIMI52 1.MKRODENETLEYC.52 1.1 PIC 16F877 Pin Tanmlamalar.53 1.2 PIC 16F877nin Basitletirilmi Yaps..54 1.3 PIC 16F877 Komut Takm55 2.OPTO KUPLR (4N25).56 I)KAYNAKLAR60

-6-

ZET
Bu almada, RF haberleme ile uzak mesafeden su deposu kontrol sistemi tasarlanarak sistem PROTEUS programnda simle edilmitir. Su deposundan anlk olarak alnan seviye bilgileri mikro denetleyicide islenerek almas gereken motorlar tespit edilmi ve verici devresi ile bilgiler ifreli bir ekilde gnderilmitir. Alc tarafndan gvenli bir ekilde alglanan bilgiler mikro denetleyicide islenerek almas gereken motorlar belirlenmitir. Bylelikle motorlar ihtiya duyulan su seviyesine gre srayla devreye alnp kartlarak enerji verimlilii ve tasarrufu salanlmtr. Ayrca, sistemin alc, verici, veri ifreleme sistemi ve mikro denetleyici sistemi detayl olarak anlatlarak haberleme, elektronik, bilgisayar ve elektrik konularyla ilgilenen teknik elemanlar iin kaynak bir alma hazrlanmtr.

Anahtar Kelimeler: RF haberleme, PIC, alc-verici devresi, su deposu otomasyonu,LCD kayan yaz.

GR

-7-

Kablosuz iletiim cihazlar kullanlarak veri al veriinin gvenli ve etkin bir ekilde gerekletirilmesi uygulamalarnn says gn getike artmaktadr. Kablosuz veri iletiimi ile artan i gvenlii, esnek kontrol ve maliyetlerin azaltlmas salanabilmektedir. Radyo frekans (RF) haberleme, kablosuz veri iletiiminde en ok kullanlan yntemlerden biridir. RF haberleme elektromanyetik dalgalar yoluyla gerekletirilir. Haberleme yaplan frekans band, telekomnikasyon kurumunun belirledii frekans tahsis tablosuna gre seilir. Uzaktan kontrol sistemlerinde bilgi sinyali, ifrelenerek ortama iletilir. Bu sayede, ayn frekans bandn kullanan dier alc sistemlerin bu sinyalden etkilenmemesi salanr. ifreleme ilemi, zel kodlayc-kod zc entegreler ile yaplabilecei gibi, mikro denetleyici kullanlarak yazlm ierisinde de yaplabilir. Buna ek olarak, sistemin ekrandan izlenilmesi ile prosesin gvenli bir ekilde takip edilmesi, artrlmas da salanabilir. retimin ve verimliliin

Bu almada, su deposunu besleyen pompa motorlarnn uzak mesafeden kablosuz olarak kontrol edilerek g tasarrufunun salanlmas, i gvenliinin arttrlmas, esnek kontroln salanmas ve maliyetlerin azaltlmas amalanmaktadr. Bu konuda ulusal literatrde detayl olarak gerekletirilmi yeterli alma bulunmamaktadr. Gerekletirilen su deposu otomasyonunda kullanlan mikro denetleyicilerin almasn salayan kodlar ve elektronik devre tasarm hakknda detayl bilgi bulunmamaktadr. Bu almann literatrde yaplm dier almalardan en nemli farklar: Verici ve alc blm iin yeni bir kod yazlm gerekletirilmitir. 16F877A mikro denetleyicisin seri iletiim portu bulunmamasna ramen almada gelitirilen yazlm sayesinde, zellikle daha az portu bulunan

-8-

mikro denetleyicilerin seri iletiim portu varm gibi altrlmas salanmtr.

alma drt ana blmden olumaktadr: 1. Depodan 3 ayr seviyenin alnd ve seviye bilgilerinin ilendii mikro denetleyici birimi ile mikro denetleyiciden alnan bilgilerin gnderilecei verici ksm, 2. Vericiden gelen analog sinyallerin alnd alc blm ve alcdan alnan sinyallerin ilendii mikro denetleyici birimi, 3. Su pompas motorlarna yol veren src devresi, 4. Su seviyesinin ve motorlarn durumunun izlenebildii ve ayrca verici veya alc biriminde meydana gelebilecek hatalardan dolay sistemin bamsz bir ekilde kontrol edilebildii bilgisayar izleme ve kontrol birimi bulunmaktadr.

A)

RF HABERLEME

1. KABLOSUZ SER HABERLEME UYGULAMALARI VE RF KONTROL Kablosuz iletiim uygulamalar elektroniin yaygn olarak kullanlan uygulamalarndandr. Bu uygulamalar yardmyla iki nokta arasnda bilginin kablosuz olarak tanmas salanm olur. Bunun iin de havada ya da bolukta uzun mesafeler boyunca yol alabilecek bir tr tayc dalga kullanlmas gereklidir. Bu tayc dalga olarak dalga

-9-

spektrumundaki ok geni bir bant aral kullanlabilir. Fakat en ok tercih edilenleri kzltesi (infrared), lazer ve radyo dalgalardr. Biz bu yazda bunlardan en yaygn kullanma sahip olan radyo dalgalar ile kablosuz seri iletiim uygulamalar zerinde duracaz.

ekil :1

Very Low Frequency (VLF) Low Frequency (LF) Medium Frequency (MF) High Frequency (HF) Very High Frequency (VHF) Ultra High Frequency (UHF) Super High Frequency (SHF) Extremely High Frequency (EHF)

Haberleme uygulamalarnda kullanlan baz yayn bantlar.

- 10 -

AM yayn band MW (530~1610 kHz) Ksa dalga band SW (5.9-26.1 MHz) Televizyon istasyonlar (7-13 MHz) FM yayn band (88~108 MHz) Uak trafik kontrol band (108~136 MHz), Radyo dalgalar ya da radyo sinyalleri 3 KHz ile 3000 GHz arasnda olduka geni bir frekans araln kapsar. Bu aralkta VLF, LF, MF, HF, VHF, UHF seklinde belirli bantlara ayrlmtr. Sekil.1 de radyo dalgalarnn elektromanyetik spektrum zerindeki frekans dalm 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, 315 MHz, 418 MHz, 433,92 MHz, 868 MHz, 915 MHz, ve 2.4 GHz frekanslardr. Biz bu almamzda 433,92 MHz frekansa sahip alc, vericilerle eitli kablosuz iletiim ve kontrol uygulamalarmz olacak. ok alak frekansl sinyallerin (rnein ses) ok uzak mesafelere gnderilmesi gtr. Bu nedenle alak frekansl sinyalin, yksek frekansl tayc bir sinyal zerine bindirilerek uzak mesafelere tanmas salanabilir. Bu olaya modlasyon denir. Kablosuz iletiimde de ayn ekilde gnderilecek olan bilginin bir tayc dalga ile modle edilmesi gereklidir. Modlasyon ilemi birden fazla farkl teknikle yaplabilir. Bu tekniklerden Frekans modlasyonu (frequency modulation - FM), tayc dalga frekansnn, bilgi sinyalinin frekansna bal olarak deitirilmesi seklinde olur. Benzer ekilde genlik modlasyonu (Amplitude Modulation AM) ise

- 11 -

tayc dalga genliinin, bilgi sinyalinin frekansna bal deitirilmesiyle salanr

olarak

ekil: 2 2. RF MODLLER Eer elektronikle yeni ilgilenmeye balam birisiyseniz kendi radyo frekans devrenizi yazdaki uygulamalarda da benzer bir devreyi kullanacaz. Bu sayede devreyi kendimiz retmediimiz iin ykmz olduka hafiflemi olacak ve radyo frekans uygulamalar yapmak olduka kolaylaacak. RF modller belirli sabit bir frekanslarda alacak ekilde retilmilerdir ve alc verici iftleri halinde satlmaktadrlar. Kullanmlar ok kolaydr, yle ki sadece bir anten balayarak devrenize ekleyebilirsiniz. Ayrca g tketimleri de ok dktr, bu sayede tanabilir uygulamalarda da rahatlkla kullanabilirsiniz. lkemizde modller UDEA Elektronik tarafndan retilmektedir. Bizim bu yazda kullanacamz alc verici modlleri de 433.92 MHz frekansnda ISM

- 12 -

bandnda alan UDEA Elektroniin retmi olduu ARX-34 (alc) ve ATX-34 (verici) modlleridir.

ekil: 3

3. ANTEN

- 13 -

Verimli data transferi ve alm iin gerekli en nemli iki nokta iyi bir anten ve doru RF topraklama seilmesidir. Anten olmadan datann uzun mesafelere gnderilmesi mmkn deildir. Modller basit bir anten balant pinine sahiptir. Uygun bir UHF anten dorudan bu pine

balanabilir. En basit anten 17.3cm uzunluundaki bir kablonun anten giriine lehimlenmesi ile yaplabilir. En iyi iletiim mesafesi her iki taraftaki antenlerin birbirini grmesi ile elde edilebilir. Herhangi bir obje veya metal bir engel iletiim mesafesini drecektir. Ayrca sinyal gndermeleri, gnderilen sinyallerin metal yzeylerden, binalardan vb. gelen yansmalardan etkilenirler. Bu yanl data almlarna yol aabilir.

Tablo:1

- 14 -

Tablo:2

B) VERC BLMN TASARIMI Verici blm giri bilgilerinin algland ve ilenildii mikro denetleyici birimi ile bilgilerin ifreli bir ekilde gnderildii RF modlatr biriminden olumaktadr.

- 15 -

ekil:4 verici devrsinin areste izimi

ekil: 5 verici devresinin 3 boyutlu gsterimi

- 16 -

1.VERC DEVRESNN YAZILIM PROGRAMLARI

1.1 ALICI. Asm

; PICBASIC PRO(TM) Compiler 2.50, (c) 1998, 2007 microEngineering Labs, Inc. All Rights Reserved. _USED INCLUDE ; Define statements. #define RAM_START RAM_END RAM_BANKS BANK0_START BANK0_END BANK1_START BANK1_END BANK2_START BANK2_END BANK3_START BANK3_END EEPROM_START EEPROM_END R0 R1 R2 R3 R4 R5 R6 EQU EQU EQU EQU EQU EQU EQU EQU CODE_SIZE EQU 001EFh EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU 00004h 00020h 0007Fh 000A0h 000EFh 00110h 0016Fh 00190h 001EFh 02100h 021FFh 8 00020h EQU 1

"C:\PBP\16F877.INC"

RAM_START + 000h RAM_START + 002h RAM_START + 004h RAM_START + 006h RAM_START + 008h RAM_START + 00Ah RAM_START + 00Ch

- 17 R7 R8 FLAGS GOP RM1 RM2 RR1 RR2 _VERICI _PORTL _PORTH _TRISL _TRISH #define _PORTD??3 #define _PORTD??0 #define _PORTC??0 #define _PORTD??1 #define _PORTD??2 INCLUDE INCLUDE MOVE?CB MOVE?CB MOVE?CB MOVE?CB MOVE?CB MOVE?CB MOVE?CB MOVE?CB GOTO?L LABEL?L EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU RAM_START + 00Eh RAM_START + 010h RAM_START + 012h RAM_START + 013h RAM_START + 014h RAM_START + 015h RAM_START + 016h RAM_START + 017h RAM_START + 018h PORTB PORTC TRISB TRISC

PORTD, 003h PORTD, 000h PORTC, 000h PORTD, 001h PORTD, 002h "VERICI2.MAC" "C:\PBP\PBPPIC14.LIB" 007h, ADCON1 0FFh, TRISD 000h, TRISC 000h, TRISB 000h, PORTB 000h, PORTB 000h, PORTC 000h, _VERICI _KONTROL1 _KONTROL1

- 18 CMPNE?TCL MOVE?CB MOVE?CB LABEL?L CMPEQ?TCL CMPNE?TCL MOVE?CB MOVE?CB LABEL?L _PORTD??3, 001h, L00001 004h, _VERICI 02Ah, PORTB L00001 _PORTD??0, 001h, _KONtROL2 _PORTD??0, 000h, L00003 001h, _VERICI 015h, PORTB L00003 _PORTC??0 0018Ch 000h

SEROUT2DPIN?T SEROUT2MODE?C SEROUT2PACE?C SEROUT2?C SEROUT2?C SEROUT2?C SEROUT2?B GOTO?L LABEL?L CMPEQ?TCL CMPNE?TCL MOVE?CB MOVE?CB LABEL?L 056h 047h 042h

_VERICI _KONtROL2 _KONtROL2 _PORTD??1, 001h, _KONtROL3 _PORTD??1, 000h, L00005 002h, _VERICI 016h, PORTB L00005 _PORTC??0 0018Ch 000h

SEROUT2DPIN?T SEROUT2MODE?C SEROUT2PACE?C SEROUT2?C SEROUT2?C SEROUT2?C SEROUT2?B 056h 047h 042h

_VERICI

- 19 GOTO?L _KONtROL3

LABEL?L CMPNE?TCL MOVE?CB MOVE?CB LABEL?L CMPNE?TCL MOVE?CB MOVE?CB LABEL?L

_KONtROL3 _PORTD??2, 001h, L00007 004h, _VERICI 02Ah, PORTB L00007 _PORTD??2, 000h, L00009 003h, _VERICI 01Ah, PORTB L00009 _PORTC??0 0018Ch 000h

SEROUT2DPIN?T SEROUT2MODE?C SEROUT2PACE?C SEROUT2?C SEROUT2?C SEROUT2?C SEROUT2?B GOTO?L END 056h 047h 042h

_VERICI _KONTROL1

1.2 VERC.HEX
:020000040000FA :100000006628A600360884008030B3050830A700B3 :1000100003100318B30A1B20A60CA70B0928000025 :10002000AB1A330C1B20642003141B202F08A300E1 :100030002E08402061288413AB1F2A2800083404AE :100040002B1F34068000841700083404031C340678 :100050008000352800083404031C34062B1B3406AA

- 20 :10006000800084173409800535282B081F39FF3E8E :10007000A1002A08F53E0318A10A00004D28A3019B :10008000A200FF30A207031CA307031C6128033052 :10009000A100DF304D204128A101E83EA000A109C8 :1000A000FC30031C5628A00703185328A00764003F :1000B000A10F532820185C28A01C6028000060288D :1000C00008008313031383126400080083160730AB :1000D0009F00FF3088008701860183128601860118 :1000E0008701B8018A110A12752864008A110A1260 :1000F000881D7E280430B8002A30860064008A11EA :100100000A120818A52864008A110A1208188C28F7 :100110000130B800153086000730B6000130B40059 :100120008C30AA000130AB00AE01AF0156308A011D :10013000012047308A01012042308A01012038081D :100140008A0101208A110A12A52864008A110A1264 :100150008818CC2864008A110A128818B328023043 :10016000B800163086000730B6000130B4008C307D :10017000AA000130AB00AE01AF0156308A01012068 :1001800047308A01012042308A01012038088A0163 :1001900001208A110A12CC2864008A110A12081D53 :1001A000D5280430B8002A30860064008A110A126B :1001B0000819DE280330B8001A3086000730B60070 :1001C0000130B4008C30AA000130AB00AE01AF01A9 :1001D00056308A01012047308A01012042308A01CD :1001E000012038088A0101208A01752863008A01EC :0201F000F628EF :02400E00753FFC :00000001FF

- 21 -

1.3 VERC.Pbp
'**************************************************************** '* Name : UNTITLED.BAS * *

'* Author : [select VIEW...EDITOR OPTIONS]

'* Notice : Copyright (c) 2011 [select VIEW...EDITOR OPTIONS] * '* : All Rights Reserved * * * * *

'* Date : 01.11.2011 '* Version : 1.0 '* Notes : '* :

'**************************************************************** ;CCP1CON=0 ; Capture/Compare/PWM disabled ;LATA=0:LATB=0:LATD=0:LATC=0:LATE=0 ADCON1=7 TRISD=255 TRISC=0 TRISB=0 PORTB=0 PORTB=0 PORTC=0 VERICI VAR bYTE VERICI=0 GOTO KONTROL1 KONTROL1: IF PORTD.3=1 THEN VERICI=4 PORTB=%00101010 ENDIF IF PORTD.0=1 THEN KONtROL2

- 22 IF PORTD.0=0 THEN VERICI=1 PORTB=%00010101 endIF SEROUT2 PORTC.0,396,["VGB",VERICI] GOTO KONTROL2 KONTROL2: IF PORTD.1=1 THEN KONtROL3 IF PORTD.1=0 THEN VERICI=2 PORTB=%00010110 ENDIF SEROUT2 PORTC.0,396,["VGB",VERICI] GOTO KONTROL3 KONTROL3: IF PORTD.2=1 THEN VERICI=4 PORTB=%00101010 ENDIF IF PORTD.2=0 THEN VERICI=3 PORTB=%00011010 ENDIF SEROUT2 PORTC.0,396,["VGB",VERICI] GOTO KONTROL END

- 23 -

1.4 VERC.mac
NOLIST ; PICBASIC PRO(TM) Compiler 2.50, (c) 1998, 2007 microEngineering Labs, Inc. All Rights Reserved. LABEL?L macro Label RST?RP ifdef PM_USED LALL Label XALL else Label endif endm CMPEQ?TCL macro Regin, Bitin, Cin, Label if (((Cin) == 0) | ((Cin) == 1)) CLRWDT? BIT?GOTO Cin, Regin, Bitin, Label endif endm CMPNE?TCL macro Regin, Bitin, Cin, Label if ((Cin) == 0) CLRWDT? BIT?GOTO 1, Regin, Bitin, Label else if ((Cin) == 1) CLRWDT? BIT?GOTO 0, Regin, Bitin, Label else L?GOTO Label endif

- 24 endif endm END? macro local loop loop sleep L?GOTO loop endm GOTO?L macro Label L?GOTO Label endm SEROUT2DPIN?T macro Regin, Bitin BIT?R1 Regin, Bitin endm SEROUT2MODE?C macro Cin MOVE?CW Cin, R5 endm SEROUT2PACE?C macro Cin MOVE?CW Cin, R7 endm SEROUT2?B macro Bin MOVE?BA Bin L?CALL SEROUT2 endm SEROUT2_USED = 1 SEROUT2?C macro Cin movlw Cin L?CALL SEROUT2 endm SEROUT2_USED = 1 LIST

- 25 -

ekil:6 verici devresi programnn blok diyagram

- 26 -

C)

MKRO DENETLEYC BRM

Bu almada, MicroChip firmas tarafndan retilen PIC 16F84A mikro denetleyici kullanlmtr. PIC 16F84A en yaygn olarak kullanlan mikro denetleyicilerden biridir. EEPROM bellee sahip olduundan programlanabilmesi kolaydr ve CMOS teknolojisi ile retildiinden ok az enerji harcarlar. 18 pinli bir mikro denetleyici olan 16F84Ann PORTA ve PORTB olmak zere 2 portu bulunur. PORTA, 5 bitlik; PORTB ise 8 bitliktir. Bu portlarn herhangi biri veya tm giri ya da k olarak ynlendirilebilir. Bu almada kullanlacak mevcut giri ve k birimleri gz nne alndnda 16F84A ideal bir yapya sahiptir. Mikro denetleyicide, B portunun 8 giri/k nitesi, A portunun ise 5 giri/k birimi olduu bilindiine gre toplam 13 giri/k birimi kullanlabilir. Bu giri/k birimlerinden su seviye bilgisinin alnd giri birimi, birisi ise verici blm iin k birimi olarak ayrlmtr. Sonu olarak kullanlmayan 9 giri/k nitesi kalmtr. Seviye bilgisinin hassasiyetinin arttrlmas bakmndan dier bo portlarda seviye bilgisi almak amal kullanlabilir. Kullanlmas planlanan motor saysna gre sistemin su seviyesi lmnn hassasiyeti 12 seviyeye kadar arttrlabilir.

- 27 -

ekil 7. Su deposu otomasyon sisteminin blok diyagram

Su tanknn 3 ayr noktasndan su seviye bilgisi llmtr. ekil 7de su seviye bilgisine gre mikro denetleyicinin izledii algoritma gsterilmitir. Su seviye bilgileri srasyla mikro denetleyici tarafndan okunarak, seviyeye uygun olarak gnderilecek veriler hazrlanr. Bu veriler grld gibi 3 ayr bloktan oluur. Bunlar; balat blou (preamble), ifre blou ve bilgi bloudur. Grld gibi ilk olarak balat verisi gnderilmektedir. Balat verisi 9 bitliktir ve 101010110 eklinde gnderilmektedir. ifre blou 24 bitten olumaktadr. Her erli bitin 1. biti 1dir ve 3. biti 0dr. Bu erli bitlerin 2. srasndaki bitleri gnderilen ifre blounun bitlerini ifade etmektedir. Bilgi blou ise ifre blou gibi her 3 biti 1 ile balayp 0 ile sonlanan ve ortadaki biti gnderilen veriyi belirten 24 bitten oluur.

- 28 -

Balat blounun kullanlmasyla RF alc biriminde bulunan AGC (Otomatik Kazan Kontrol) nitesi ile alc, kazan ayarlamas yaparak kendini kararl hale getirmeye alr. RF alc modlleri ierdikleri AGC nitesi ile RF verici biriminin kendilerine olan uzaklna gre kazanlarn otomatik olarak ayarlar. Yani verici ile alc birimi arasndaki mesafe fazla ise modldeki RF kuvvetlendiricinin kazanc arttrlr, eer mesafe ksa ise kazanc azaltlr. ifre blounun kullanlmas ile sistemle ayn frekans bandnda alan farkl uygulamalarn verilerinin birbirine karmas engellenir. ayr su seviye bilgisi iin gnderilecek veri bloklar iin tek bir ifreleme blou kullanlr. Bilgi blou su seviye durumlarna gre 3 farkl veriden olumaldr. rnein su 1. seviyede ise 01000111 verisi ekil 4teki biimde gnderilmelidir. Eer su 2. seviyede ise balat ve ifre blou deitirilmeden bilgi blounun her 3 bitinin 2. srasndaki bitleri deitirilerek veri gnderilmelidir. Ayn durum 3. su seviyesi iinde tekrarlanmaldr.

- 29 -

ekil :8 Su seviyelerine gre gnderilen veriler

Her bir bit iin mikro denetleyicinin nceden belirlenmi portuna gnderilen a-kapa (1 ya da 0) verisi iin 1ms beklenir. Bu deer prosesin karakteristiine gre kullanc tarafndan deitirilebilir. Balat blou iin 9 bit, ifreleme iin 24 bit, bilgi blou iin 24 bit olan verimiz toplamda 57 bittir. Her bir bit iin 1ms beklenildii iin, verilerin gnderilmesi toplam 57 ms srer. Bylelikle her bir veri yaklak saniyenin 20 kat hznda gnderilir ve bu sre sistemin gerektirdii hz iin yeterlidir.

- 30 -

D)

ALICI BLMNN TASARIMI

Alc blm vericiden gelen bilgilerin alnd alc biriminden ve ilenildii mikro denetleyici biriminden olumaktadr.

ekil: 9 proteusta hazrlanan alc devresi simlasyonu Alc Birimi :Verici devresinden gnderilen analog sinyaller alc devresinde ilenerek mikro denetleyici iin gerekli olan saysal verilere dntrlr.

ekil:10 Alc devresinin areste izimi

- 31 -

ekil: 11 Alc devresinin 3 boyutlu gsterimi

1. ALICI DEVRESNN YAZILIM PROGRAMLARI

1.1 Alc asm


; PICBASIC PRO(TM) Compiler 2.50, (c) 1998, 2007 microEngineering Labs, Inc. All Rights Reserved. _USED EQU 1 INCLUDE "C:\PBP\16F877.INC" ; Define statements. #define CODE_SIZE 8 #define LCD_DREG PORTD #define LCD_DBIT 4 #define LCD_EREG PORTD #define LCD_EBIT 3 #define LCD_RSREG PORTD #define LCD_RSBIT 2 #define LCD_BITS 4 #define LCD_LINES 2 RAM_START EQU 00020h RAM_END EQU 001EFh RAM_BANKS EQU 00004h BANK0_START EQU 00020h BANK0_END EQU 0007Fh BANK1_START EQU 000A0h BANK1_END EQU 000EFh BANK2_START EQU 00110h BANK2_END EQU 0016Fh BANK3_START EQU 00190h BANK3_END EQU 001EFh EEPROM_START EQU 02100h

- 32 EEPROM_END R0 R1 R2 R3 R4 R5 R6 R7 R8 FLAGS GOP RM1 RM2 RR1 RR2 _ALICI _PORTL _PORTH _TRISL _TRISH #define _PORTC??0 INCLUDE INCLUDE MOVE?CB MOVE?CB MOVE?CB MOVE?CB MOVE?CB MOVE?CB MOVE?CB LABEL?L LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C LCDOUT?C EQU 021FF EQU RAM_START + 000h EQU RAM_START + 002h EQU RAM_START + 004h EQU RAM_START + 006h EQU RAM_START + 008h EQU RAM_START + 00Ah EQU RAM_START + 00Ch EQU RAM_START + 00Eh EQU RAM_START + 010h EQU RAM_START + 012h EQU RAM_START + 013h EQU RAM_START + 014h EQU RAM_START + 015h EQU RAM_START + 016h EQU RAM_START + 017h EQU RAM_START + 018h EQU PORTB EQU PORTC EQU TRISB EQU TRISC PORTC, 000h "ALC2~1.MAC" "C:\PBP\PBPPIC14.LIB" 007h, ADCON1 000h, TRISD 0FFh, TRISC 000h, TRISB 000h, PORTB 000h, PORTC 000h, _ALICI _BASLA 0FEh 001h 0FEh 080h 052h 046h 020h 048h 041h 042h 045h 052h 04Ch 045h 053h 04Dh 045h 059h 06Ch 045h 0FEh 0C0h 053h 055h 020h 044h 045h 050h

- 33 LCDOUT?C 04Fh LCDOUT?C 053h LCDOUT?C 055h LCDOUT?C 020h LCDOUT?C 04Fh LCDOUT?C 054h LCDOUT?C 04Fh LCDOUT?C 04Dh LCDOUT?C 041h LCDOUT?C 053h PAUSE?C 064h SERIN2DPIN?T _PORTC??0 SERIN2MODE?C 0018Ch LABEL?L L00001 SERIN2WAIT?CL 056h, L00001 SERIN2WAIT?CL 047h, L00001 SERIN2WAIT?CL 042h, L00001 SERIN2?B _ALICI CMPNE?BCL _ALICI, 001h, L00002 MOVE?CB 007h, PORTB LABEL?L L00002 CMPNE?BCL _ALICI, 002h, L00004 MOVE?CB 003h, PORTB LABEL?L L00004 CMPNE?BCL _ALICI, 003h, L00006 MOVE?CB 001h, PORTB LABEL?L L00006 CMPNE?BCL _ALICI, 004h, L00008 MOVE?CB 000h, PORTB LABEL?L L00008 GOTO?L _BASLA END? END

1.2 Alc hex


:020000040000FA :10000000B201AC28A70088110811081183168811C5 :10001000081108110F30880583122708B2182D28FF :100020003A30A100FC3093203330A600412010303C :10003000A100683093204120643092202230A60035 :10004000412028302C200C302C2001302C20063070 :100050002C20B21427082D283214A600321C3B286D :100060000811033C031C402840200530A100DC306F :100070009320031408003214FE3C0319A728081526 :10008000321C321088150F3088052608F039880494 :100090008811A60E321841282C3092200314080033 :1000A00064006620031850287120A8010830A300BE :1000B000722066200318A80AAB1EA801A20CA30B8D :1000C0005828AB1AA21372202208080036088400B0 :1000D000340884178004841300052B1B3406FF3E6C :1000E000080033172B081F39FF3EA1002A08F53EF0 :1000F0000318A10A331F93283313A0000310A10C87 :10010000A00C0310A10C200C9328A301A200FF3027 :10011000A207031CA307031CA7280330A100DF309C :1001200093208728A101E83EA000A109FC30031C10

- 34 :100130009C28A00703189928A0076400A10F9928FC :100140002018A228A01CA6280000A62808008313B7 :100150000313831264000800831607309F00880190 :10016000FF3087008601831286018701B801FE30C7 :100170008A01022001308A010220FE308A01022019 :1001800080308A01022052308A01022046308A01E2 :10019000022020308A01022048308A0102204130AA :1001A0008A01022042308A01022045308A01022061 :1001B00052308A0102204C308A01022045308A01E7 :1001C000022053308A0102204D308A01022045303E :1001D0008A01022059308A0102206C308A010220F3 :1001E00045308A010220FE308A010220C0308A0197 :1001F000022053308A01022055308A01022020302B :100200008A01022044308A01022045308A010220FE :1002100050308A0102204F308A01022053308A0177 :10022000022055308A01022020308A0102204F30FE :100230008A01022054308A0102204F308A010220B4 :100240004D308A01022041308A01022053308A0158 :10025000022064308A0185200730B6000130B400E6 :100260008C30AA000130AB008A015020563C8A1124 :100270000A12031D34298A015020473C8A110A12B0 :10028000031D34298A015020423C8A110A12031DA1 :1002900034298A015020B80064003808013C8A11D2 :1002A0000A12031D55290730860064003808023CF5 :1002B0008A110A12031D5E29033086006400380883 :1002C000033C8A110A12031D67290130860064006D :1002D0003808043C8A110A12031D6F2986018A011D :0802E000B72863008A017129AF :02400E00753FFC :00000001FF

1.3 Alc pbp


'**************************************************************** '* Name : UNTITLED.BAS * '* Author : [select VIEW...EDITOR OPTIONS] * '* Notice : Copyright (c) 2011 [select VIEW...EDITOR OPTIONS] * '* : All Rights Reserved * '* Date : 01.11.2011 * '* Version : 1.0 * '* Notes : * '* : * '**************************************************************** ;CCP1CON=0 ; Capture/Compare/PWM disabled ;LATA=0:LATB=0:LATD=0:LATC=0:LATE=0 ADCON1=7 TRISD=0 TRISC=255 TRISB=0 PORTB=0 DEFINE LCD_DREG PORTD DEFINE LCD_DBIT 4 DEFINE LCD_EREG PORTD DEFINE LCD_EBIT 3 DEFINE LCD_RSREG PORTD DEFINE LCD_RSBIT 2 DEFINE LCD_BITS 4 DEFINE LCD_LINES 2

- 35 PORTC=0 ALICI VAR BYTE ALICI=0 BASLA: LCDOUT $FE,1 LCDOUT $FE,$80,"RF HABERLESMEYlE" LCDOUT $FE,$C0,"SU DEPOSU OTOMAS" PAUSE 100 SERIN2 PORTC.0,396,[WAIT("VGB"),ALICI] IF ALICI=1 THEN PORTB=%00000111 ;IF PORTB=%00000111 then PORTD=%00010101 IF ALICI=2 THEN PORTB=%00000011 ;IF PORTB=%00000011 THEN PORTD=%00010110 IF ALICI=3 THEN PORTB=%00000001 ;if PORTB=%00000001 THEN PORTD=%00011010 IF ALICI=4 THEN PORTB=%00000000 ;IF PORTB=%00000000 THEN PORTD=%00101010 GOTO BASLA END

1.4 Alc.MAC
NOLIST ; PICBASIC PRO(TM) Compiler 2.50, (c) 1998, 2007 microEngineering Labs, Inc. All Rights Reserved. LABEL?L macro Label RST?RP ifdef PM_USED LALL Label XALL else Label endif endm CMPNE?BCL macro Bin, Cin, Label if (((Cin) > -100h) & ((Cin) < 100h)) CLRWDT? MOVE?BA Bin sublw Cin BIT?GOTO 0, STATUS, Z, Label else L?GOTO Label endif endm END? macro local loop loop sleep L?GOTO loop endm GOTO?L macro Label L?GOTO Label endm LCDOUT?C macro Cin movlw Cin L?CALL LCDOUT endm LCDOUT_USED = 1

- 36 PAUSE?C macro Cin if (((Cin) >> 8) == 0) MOVE?CA Cin L?CALL PAUSE else MOVE?CB (Cin) >> 8, R1 + 1 MOVE?CA low (Cin) L?CALL PAUSEL endif endm PAUSE_USED = 1 SERIN2DPIN?T macro Regin, Bitin BIT?R1 Regin, Bitin endm SERIN2MODE?C macro Cin MOVE?CW Cin, R5 endm SERIN2?B macro Bout L?CALL SERIN2 MOVE?AB Bout endm SERIN2_USED = 1 SERIN2WAIT?CL macro Cin, Label L?CALL SERIN2 sublw Cin BIT?GOTO 0, STATUS, Z, Label endm SERIN2_USED = 1 LIST

- 37 -

ekil: 12. Mikro denetleyici rf alc devresi program ak diyagram

- 38 -

E) SMLASYON ALIMASI Sistemin deneysel olarak gerekletirilmeden nce simlasyon

programnda eitli durumlar iin test edilmesi tasarlanan sistemin doruluunu ve kararlln arttracaktr. Burada da grld gibi anahtarlar, su deposuna daldrlan su seviye bilgisi kablolar yerine kullanlmaktadr. Butonlar kapal olduu durumda su ile temas halinde olduu dnlmelidir. Anahtarlardan ncs en stte bulunan seviye bilgi kablosunu, ikincisi ortadaki seviye bilgi kablosunu ve birincisi ise en alttaki seviye bilgi kablosunu ifade eder. Normalde kapal olan nc anahtar aldnda, mikro denetleyiciye giden gerilim kesildiinden, mikro denetleyici su seviyesinin dtn ve nc pompa motorunun altrlaca bilgisini anten araclyla alc birimindeki mikro denetleyiciye iletecek ve 3. motoru altr bilgisini gnderecektir. Normalde kapal olan ikinci anahtarda aldnda nc motor ile birlikte ikinci motorda alacaktr. Son olarak, birinci anahtarda aldnda tm motorlar alm olacaktr. Burada grlen Proteus modelde RF modlatr ve demodlatrler yerine antenler, motor src devresi yerine BC237 transistrleri kullanlmtr. Tasarlanan sistem eitli seviye bilgileri iin test edilmitir ve gerekli motorlarn alt ledlerle gzlemlenmitir. Aada anahtarlarn konumlarna gre ledlerin durumlar grlmektedir . Acil durum anahtarlar paralel port ile src devresinin balantsn aarak kontroln bilgisayardan yaplmasna olanak salar.

- 39 -

ekil :13 Seviye bilgilerini test etmek iin d taraf yaltlm ucunda paslanmaz bir iletken bulunan 3 ayr test kablosu kullanlmtr. letkenler birbirlerinden eit mesafelerde yerletirilerek su deposuna monte edilmitir. Bunlarn haricinde 5 V ile beslenen bir kablo, su deposunun tabanna yerletirilir. rnein, su seviyesi birinci test noktas ile ikinci test noktasnn arasnda olduu zaman suya verilen 5 V, 2. ve 3. seviyedeki test noktalarna iletilemeyecek sadece 1. seviyedeki test noktasna temas edecektir. Bylelikle mikro denetleyici, yalnzca 1. test noktasndan +5 V dierlerinden 0 V geldiinden 2. ve 3. motor iin altr sinyali gnderilir. Bu durumun daha iyi anlalmas iin ekil-2deki ak diyagram incelenebilir. Test kablolarnn ok uzun olmamas mikro denetleyicinin sinyal alglama akmnn altna dmemesi asndan nemlidir. Ayrca kablonun oksitlenip rmesi engellemek iin kablonun etrafnda yaltkan bir klf

- 40 -

bulunmaldr. Bu durum uzun sre kullanlmas planlanan bir sistemin dayankll asndan nemlidir. Bu dorultuda kablonun iletken ksmnda (su seviyesini test edecek olan iletken ksmda) titanyum veya elik gibi paslanmaz metallerin kullanlmas gerekir.

ekil:14

- 41 -

F) MKRO DENETLEYC DZAYNI 5 Vluk gerilim deeri suya aktarlrken su azaldktan ve su seviye iletkenlerinden herhangi birinin altna dtkten sonra ilemcinin portlarnn kaynaa bal bulunmas gerekmektedir. Bu durumda herhangi bir ksa devre sz konusu olmamas iin girilerin 10 kohmluk diren ile topraa balanmas gerekir. Bylece her 3 test kablosu mikro denetleyicinin 3 ayr portuna balanrken, her balant noktas da birer diren yardmyla topraa balanmtr.

ekil:15 Test kablolar-mikrodenetleyici balant emas

Zamanlama ilemi iin 4 Mhzlik kristal harici olarak mikro denetleyicinin OSC1 ve OSC2 ularna eklenmitir. Kristal mikro denetleyiciye balanrken ayn ular 22pFlk kapasitrler ile topraa balanmtr . Seilen 4 MHzlik kristal ile dhili komut evrim zaman TMR0 orannn olmasndan dolay 4MHz x = 1MHz olarak elde edilir. T=1/F olduu bilindiine gre 1/1MHz = 1us olacaktr. Mikro denetleyici komut ilemlerini 1000 defa tekrar ederek, gereklilii belirtilen 1mslik gecikme sresini elde edilir.

- 42 -

ekil:16 Kristal balantsnn yaplmas

Mikro denetleyicinin almas iin gerekli besleme deeri +5Vdur. 16F877Ann Vdd ucuna +5V DC; Vss ucuna da 0 (GND) balanarak gerekli besleme ilemleri tamamlanr. Mikro denetleyici hassas bir devre eleman olduu iin meydana gelebilecek gerilim dalgalanmalarn nlemek iin 100 nFlk kapasitr, 16F84Ann Vdd ile Vss ular arasna balanr.

- 43 -

ekil :17 Besleme balantlarnn yaplmas

Mikro denetleyicinin nemli birimlerinden biri olan reset giriinin 10 kohmluk diren ile +5 Va balanmas gerekmektedir. Bunun nedeni reset giriinin terslenmi olmasndandr. Dolaysyla reset ilemi iin aseye bir butonun balanmas butonun dier ucunun da reset giriine balanmas gerekmektedir.

ekil: 18 Reset balantlarnn yaplmas

- 44 -

Mikro denetleyici verici biriminin en nemli paralardan biri olan kod ksmdr. Kodlar gerekli alma durumlar gz nne alnarak yazlp, Mplab programnda derlenmitir. Alt dzey bir dil olan assembler, karmak programlar iin ok tercih edilen bir dil olmamasna ramen; mikro denetleyicinin hem hzl almasn salar hem de snrl olan program hafzasnda, st dzey dillere nazaran daha az yer tutar. Mikro denetleyiciden alnan sinyallerin analog sinyallere dntrld birim olan RF modlatrn, Vcc, GND ve Data olmak zere 3 girii ve ayrca bir adet anten k vardr. RF verici 5V ile 12V arasnda alabilmektedir. RF modlatrn besleme gerilimi 12Va ne kadar yaklarsa verimlilii de o kadar artar. Bu almada, RF modlatr gerilimi mikro denetleyicinin de besleme gerilimi olan 5V olarak alnmtr.

ekil:19 RF modlatr balantlarnn yaplmas

- 45 -

Verici biriminin son eleman olan RF modlatrn balantlar yapldktan sonra alc biriminin ilk eleman olan RF demodlatr balantlar yaplmtr. RF demodlatrde toplam 4 giri-k birimi ve 8 pin bulunmaktadr. Vcc girii ve data girii iin 2, GND girii iin 3, anten k iin 1 adet pin bulunmaktadr. Pin saysnn giri-k birimi saysndan fazla olmas bask devre tasarm srasnda kullancya kolaylk salamaktadr. Ayrca RF demodlatrn data k dorudan mikro denetleyicinin RB0 giriine balanmaktadr.

ekil:20 RF demodlatr balantlarnn yaplmas

Alc birimindeki mikro denetleyicinin yardmc elemanlarnn balantlar, verici biriminde bulunan mikro denetleyicinin balantlar gibidir. Bu balantlara ek olarak alc biriminde mikro denetleyici ile bilgisayar arasndaki iletiimi kuracak olan paralel port bulunmaktadr . Paralel portta, veri portu, durum portlar, kontrol portlar ve GND olmak zere 4 ayr giri-k birimi vardr. Veri portlar bilgisayardan veri alnmas amacyla kullanlmaktadr. Simlasyon almasnda da

- 46 -

belirtildii gibi acil durum anahtarlarnn konumu deitirilerek src devresi ile bilgisayar arasndaki balant salandktan sonra src devresini kontrol edecek olan birim; veri portlardr. rnein paralel porttan balangta 00000000 deeri okunur. Eer 2 numaral pin (D0), 3 numaral pompa motorunu kontrol eden src devresine bal ise, bilgisayar motorunu 00000001 verisini gnderdiinde src devresi 3. Pompa kontrol eden src devresine balanrsa, bilgisayar motorunu altracaktr. ayet 3 numaral pin 2 numaral pompa 00000011 verisini gndererek 3 numaral ve 2 numaral motorlarn alma sinyallerini retir. Son olarak 00000111 verisi gnderilirse tm motorlar almaya balayacaktr. Durum portlar ise veri portlarnn aksine bilgisayara veri alnmas iin kullanlr. Durum portlarnn en dk deerlikli 3 biti olan G0, G1 ve G2 kullanlmamaktadr ve G5 terslenmitir. G5 dnda tm durum bitlerinden 1 okunur ve 0 tetiklemelidir. G0 ve G1 bitleri bulunmadndan bu bitlerden 0 okunmaktadr. Bu durumlar yazlmc asndan zorlayc olmaktadr. Ancak 0111111 biiminde okunan veri ile 01111111 (127) deeri XOR yapldnda 00000000 deeri elde edilerek yazlm kolaylatrm olacaktr. Elde edilen 0 deeri yazlmc iin ilem kolayl asndan nemli olacaktr. rnein mikro denetleyici 0 verisini aldnda alc devresinden veri gelmedii anlalacaktr. 128 verisi geldiinde deponun dolu olduu, 192 verisi geldiinde deponun 2/3nn dolu olduu, 224 verisi geldiinde de deponun 1/3nden fazlasnn dolu olduu ve 240 verisi geldiinde de deponun 1/3nden daha aznn dolu olduu bilgisayar yazlm tarafndan anlalacaktr. kili sistemde 192; 11000000a, 224; 11100000a, 240 ise 11110000a karlk gelmektedir.

- 47 -

G) LCD BLMN TASARIMI Bu almamzda LCD ( Liquid Crystal Display ) tandk ve bol uygulamalar ile bilgilerimizi pekitirdik. LCD nedir: LCD ( Liquid Crystal Display ) LCDler ilk olarak 1960 ylnda kullanlm olup gnmzde de kullanlan yksek teknolojik sistemlerdir. LCD'ler cep telefonu, hesap makinas ve televizyonlarda kullanlmaktadr. LCD eitleri: ki adet LCD vardr bunlardan bir tanesi normal, sadece yaz gsteren yeil ve mavirenkli LCDler dieri ise renkli ekran cep telefonlarnda kullanlan GLCD ( Grapich Liquid Crystal Display )dir

LCD ( Liquid Crystal Display ) genel grnm Piyasa satlan LCDler 1x8, 2x8, 2x16, 4x16, 4x20, 4x24 ilk say satr says son say ise karakter saysdr. rnein; 2x16 LCD 2 satr 16 karakterden oluur.

ekil:21 Proteus elektronik programndaki 2x16 LCDnin genel grnts

- 48 -

1. LCD PNLERN TANIYALIM 1 Vss, Toprak (Ground), Logic Vss, Logic Ground 2 Vcc, +5 Volt, Logic Vcc, Logic Power 3 VLc, VBias,Bias,Contrast (Kontrast) 4 RS, Register Select 5 R/W, Read/Write(Okuma yada Yazma Modu) 6 E, Enable, Strobe 7-14 D0-D7 (DATA girisleri) 15* Led+, A, Backlight+, Backlight Anode (LCD Panel sg (+5 Volt)) 16* Led-, K, Backlight-, Backlight Cathode (Toprak (Ground)) *15 ve 16. bacaklar baz displaylerde yoktur. Bu ular paneli aydnlatmak icin kullanlrlar.

ekil:22 2x16 LCDnin arkadan grnts 1.1 PCBASCte kullanlan LCD komutlarn tanyalm
$FE,1 Ekran siler. $FE,2 Satir basna donlr. $FE,$0C Kursrn grntsn yok eder $FE,$0E Kursr alt izgi biimine getirir $FE,$0F Kursr yanp/Soner yapar $FE,$10 Kursr 1 pozisyon sola getirir

- 49 -

$FE,$14 Kursr 1 pozisyon saga getirir $FE,$C0 Kursr ikinci satirin bana getirir $FE,$94 Kursr nc satirin bana getirir $FE,$D4 Kursr drdnc satirin bana getirir PCBASCte LCDveri gndermek iin kullanlan komut; LCDOUT komutudur

1.2 PCBASCte kullanlan LCD_DEFINE TANIMLAMALARI


DEFINE LCD_DREG PORTB 'LCD DATA BACAKLARI PORTB'YE BAGLI DEFINE LCD_DBIT 4 LCD DATA BITLERI HANG BITTEN BASLIYOR DEFINE LCD_EREG PORTB 'LCD ENABLE BACAGI HANGI PORTA BAGLI DEFINE LCD_EBIT 3 LCD ENABLE BITI HANGI PORTA BAGLI DEFINE LCD_RWREG PORTB 'LCD RW BACAGI HANGI PORTA BAGLI DEFINE LCD_RWBIT 2 LCD RW BACAGI HANGI BITE BAGLI DEFINE LCD_RSREG PORTB 'LCD RS BACAGI HANGI PORTA BAGLI DEFINE LCD_RSBIT 1 LCD RS BACAGI HANGI BITE BAGLI DEFINE LCD_BITS 4 LCD 4 BIT BAGLI DEFINE LCD_LINES 2 LCD KAC SIRADAN OLUSUYOR

NEML BR NOT:
DEFINE LCD_RWREG PORTB 'LCD RW BACAGI HANGI PORTA BAGLI DEFINE LCD_RWBIT 2 LCD RW BACAGI HANGI BITE BAGLI

Yukardaki defne tanmlamas kullanld zaman aadaki kodun programa eklenmesi gerekir.
LOW PORTB.2 RW BACAGI EKRANA YAZMAYA IMKAN VERMEK ICIN LOW YAPILDI

NEML BR NOT: Dier bir zm ise yukardaki notta bulunan komutlar kullanmayp RW pinini direkt topraa baladmz zaman sorunu zeriz iki ekilde program alacaktr.

- 50 -

NEML BR NOT: LCD_DEFINE tanmlamalarndan sonra pause 500 komutunun yazlmas gerekiyor nk bu komut LCDnin almas iin gerekli olan sre.

1.3 LCD DATASHEET

- 51 -

1.4 LCD ZMLER

ekil: 23 LCD devresinin proteusta izimi

ekil: 24 LCD devresinin areste izimi

- 52 -

ekil: 25 LCD devresinin 3 boyutlu gsterimi

- 53 -

1.5 LCD DEVRESNN YAZILIM PROGRAMLARI i. LCD. Pbb


'**************************************************************** '* Name : LCDKAYNYAZI.BAS * '* Author : [AYKUT YILMAZ] * '* Notice : Copyright (c) 2007 [end. elektronik teknikeri] * '* : All Rights Reserved * '* Date : 16.02.2007 * '* Version : 1.0 * '* Notes : * '* : * '**************************************************************** TRISB=0 'PORTB TAMAMI IKI '*****LCD TANIMLAMALARI***** DEFINE LCD_DREG PORTB 'LCD DATA BACAKLARI PORTB'YE BALIYOR DEFINE LCD_DBIT 4 'LCD DATA BCAKLARI PORTB.4 BALIYOR DEFINE LCD_RSREG PORTB 'LCD RS PN PORTB'YE BALI DEFINE LCD_RSBIT 2 'LCD RS PN PORTB.2 BALI DEFINE LCD_EREG PORTB 'LCD ENABLE PN PORTB'YE BALI DEFINE LCD_EBIT 3 'LCD ENABLE PN PORTB.3 BALI DEFINE LCD_BITS 4 'LCD 4 BT HABERLEYOR DEFINE LCD_LINES 2 'LCD 2*16 A var byte 'KARAKTER SAYISI C var byte D var byte

dongu: for a=0 to 54 'Karakter saysna onalt eklenecek (49+16) pause 200 'Yaznn kayma hz lcdout $fe,1 for c=0 to 37 'Kayacak yaznn karakter saysnn bir eksii (50-1) lookup c, ["RF HABERLESME iLE SU DEPOSU OTOMASYONU"],d lcdout $fe,143+c-a,d next c c=0 next a a=0 goto dongu end

- 54 -

ii. VERC.mac
NOLIST ; PICBASIC PRO(TM) Compiler 2.50, (c) 1998, 2007 microEngineering Labs, Inc. All Rights Reserved. LABEL?L macro Label RST?RP ifdef PM_USED LALL Label XALL else Label endif endm ADD?CBW macro Cin, Bin, Wout movlw low (Cin) CHK?RP Bin addwf Bin, W MOVE?AB Wout if (((Cin) >> 8) == 0) clrf Wout + 1 rlf Wout + 1, F else movlw (Cin) >> 8 btfsc STATUS, C addlw 1 movwf Wout + 1 endif endm SUB?WBW macro Win, Bin, Wout if ((Wout) == (Win)) MOVE?BA Bin CHK?RP Wout subwf Wout, F btfss STATUS, C decf (Wout) + 1, F else MOVE?BA Bin CHK?RP Win subwf Win, W MOVE?AB Wout MOVE?BA (Win) + 1 btfss STATUS, C addlw -1 MOVE?AB (Wout) + 1 endif endm CMPGT?BCL macro Bin, Cin, Label if ((Cin) < 0)

- 55 L?GOTO Label else if ((Cin) < 0ffh) CLRWDT? MOVE?CA (Cin) + 1 CHK?RP Bin subwf Bin, W BIT?GOTO 1, STATUS, C, Label endif endif endm END? macro local loop loop sleep L?GOTO loop endm GOTO?L macro Label L?GOTO Label endm LCDOUT?B macro Bin MOVE?BA Bin L?CALL LCDOUT endm LCDOUT_USED = 1 LCDOUT?C macro Cin movlw Cin L?CALL LCDOUT endm LCDOUT_USED = 1 LCDOUT?W macro Win MOVE?WA Win L?CALL LCDOUT endm LCDOUT_USED = 1 LOOKUP?BCLB macro Bin, Cin, Label, Bout local dojump, valtbl MOVE?BA Bin sublw (Cin) - 1 BIT?GOTO 0, STATUS, C, Label L?CALL dojump MOVE?AB Bout L?GOTO Label dojump movlw high (valtbl) movwf PCLATH MOVE?BA Bin RST?RP TABLE?C Cin valtbl

- 56 endm LURET?C macro Cin retlw Cin endm NEXT?BCL macro Bin, Cin, Label if ((Cin) == 1) CHK?RP Bin if ((PREV_BANK == 0) & (CODE_SIZE <= 2)) incfsz Bin, F goto Label else incf Bin, F BIT?GOTO 0, STATUS, Z, Label endif else movlw Cin CHK?RP Bin addwf Bin, F if ((Cin) <= 255) BIT?GOTO 0, STATUS, C, Label endif endif endm PAUSE?C macro Cin if (((Cin) >> 8) == 0) MOVE?CA Cin L?CALL PAUSE else MOVE?CB (Cin) >> 8, R1 + 1 MOVE?CA low (Cin) L?CALL PAUSEL endif endm PAUSE_USED = 1 LIST

- 57 -

H) TEZDE KULLANILAN MALZEMELERN TANITIMI 1. MKRODENETLEYC

- 58 -

1.1 PIC 16F877 Pin Tanmlamalar

- 59 -

1.2 PIC 16F877nin Basitletirilmi Yaps

- 60 -

1.3 PIC 16F877 Komut Takm

- 61 -

2. OPTO KUPLR (4N25) Opto Kuplrler Bir infaruj Led ve foto alcdan oluur aralarndaki iletiim k ile salanr led k kaynadr Foto alc diyoruz biraz daha aarsak kontrol k ile salanan transistr triyak vb. olabilir elektronik devrelerde en ok grdmz transistrl optokuplrler dir. Led voltaj uygulandnda k verir ve kontrol ucu a hassas olan alc eleman iletime geer rnek triyak almas iletime gemesi iin Gate ucu kullanlr opto triyaklarda a hassas blm Gate dir Transistr,triyak,mosfet,tristr,ttl,lojik,cmos vb. farkl eitleri vardr darlington,paralel balant vb.Bazlarnda tetikleme uclar extra olarak vardr harici zel durumlarda kullanmak iin gerekebilir rnek PC817 4 baca vardr iki led iin dier ikisi transistr kollektr ve emiter ular iin beyz ucu yoktur 4N25 de ise 6 bacakldr ve beyz ucu vardr

PC817 Opto Kuplr i ve d grnm

4N25 Opto Kuplr i ve d grnm

ok farkl uygulamalar iin bolca eit var karmak yapda olanlar sadece belli elektronik elemanlar kontrol etmek iin olanlar vb.

- 62 -

ki farkl devre arasnda izolasyonu salamak iin kullanlr rnek olarak bilgisayar ile cihaz kontrolyazsndaki devreler bilgisayarn paralel portundan alnan voltaj bir transistr srmek altrmak iin yeterlidir fakat ana kart deerli :) transistrn arzalanp ksa devre

- 63 -

olduunu dnn ya da kontrol edilen elemanlarn geri gelen parazitleri grltleri zararl olabilir optokuplr iindeki led ok az akm eker arzalanmas ok zordur aadaki emada tek kanal incelediinizde durumu daha iyi anlayacaksnz bilgisayar ile kontrol devresi arasndaki optokuplr izolasyonu salyor Opto kublr devreler arasnda izolasyonu salamann yan sra farkl iler iinde kullanlabilir rnek geribesleme eleman olarak kullanlabilirler birden fazla devrenin klarn toplama iin kullanlabilirler iin iine birazda animasyon katalm :) grsel olarak almasn daha iyi anlarsnz

Deiik alma dzenekleri kurulabilir rnek aadaki devre optokublr giriinde led blmnde voltaj yok iken knda transistrn kollektr zerinde 10 diren ile snrlanm voltaj vardr optokublr giriine voltaj uygulandnda transistr iletime geer ve direncin kollektr ucuna bal olan ucunu aseye eker ve voltaj ker 0v olur

Benzer bir devre daha anahtar 1 konumuna alndnda devreye besleme voltaj (12v) verilir BC237 transistr iletime geer ve rle kontaklar ekilir gsterge iin kullanlan led yanar sonrasnda devredeki S anahtar kapatldnda 12v 1k diren zerinden

- 64 -

optokublrn ledini yakar iindeki transistr iletime geer ve BC237 beyz ucunu aseye eker iletimi keser rle kontaklar brakr gsterge iin kullanlan led sner Ayrca mikrodenetleyici klarnda yksek gl elemanlar kontrol etmek iin izolasyon iin kullanlrlar

- 65 -

I)

KAYNAKLAR

1. _nternet: Kadir Has niversitesi PIC16F877 http://hacivat.khas.edu.tr/~baskan/BP203%20Mikrodenetleyiciler%20PIC16F877/pic %2016f877.doc (2008). 2. _nternet: Kadir Has niversitesi PIC16F877 http://hacivat.khas.edu.tr/~baskan/BP203%20Mikrodenetleyiciler%20PIC16F877/pic%2016f877.doc (2008). 3._nternet: IEEE Xplore An intelligent smart home kontrol using body gestures http://ieeexplore.ieee.org/Xplore/login.jsp?url=/iel5/4021173/4021174/0402 1249.pdf?isnumber=4021174&prod=CNF&arnumber=4021249&arSt=439 &ared=446&arAuthor=Daehwan+Kim%3B+Daijin+Kim (2006). 4. PIC Basic Pro le PIC Programlama (ORHAN ALTIBAAK) Atla

yaymlar.

You might also like