Bitirme Projesi Çalışmalarımız.

Özet

Günümüzde telefonlarımızın bataryaları, arabalarımızın aküleri ve evimizde bulunan tüm cihazların ihtiyaç duyduğu elektrik enerjisinin  tüketiminden başlayarak üretimine kadar her aşamada ölçülmesi ile sistemin hata analizi ,  kontrolü ,verimlilik için yapılacak iyileştirmelerin hepsinin yapılmasına olanak sağlar. Bu sistemin en altında bulunan tüketiciler harcadıkları enerjinin tüketimini anlık olarak yakından takip ederek, geçmiş dönemlere ait tüketim bilgilerine ulaşmak isterler. Kullanılan elektrik enerjisinin miktarını takip eden  tüketiciler daha önce ne kadar harcadıklarını bilmedikleri için  bu konuda bilinçlenerek , elektrik tüketiminde daha dikkatli bir şekilde davranması hem kendi bütçesine katkı sağladığı gibi hem de ülke ekonomisine katkıda bulunmuş olur.

Gerçekleşen teknolojik çalışmaların sayesi ile elektrik , elektronik , yazılım ve özellikle bir ağ teknolojisi olan internet arabiriminin gelişimi bilginin daha kolay yayılmasını sağladığı gibi bilginin hızlı bir şekilde ulaşabilme imkanı sağlamaktadır. Kullanılan elektrik miktarını ölçüp faturalandırma yapmamızı sağlayan elektrik sayacı  da bu her geçen gün gelişen teknolojiye (eepromun) , yüksek  çözünürlüklü işlemcilerin artması) paralel olarak yapısal ve fonksiyonel değişimi söz konusudur. Eskiden  kullanılan elektromekanik sayaçlar yapısını elektronik elektrik sayaçlarına bırakarak ölçüm hataları, sayaç okuma sırasındaki ölçüm hataları, sayaç üzerinde gerçekleştirilmesi yasak oynamalar, vb.  kayıpların azaltılmasına yardımcı olmuştur.


BÖLÜM 1 .GİRİŞ


Elektrik sisteminde bulunan elektronik sayaçları uzaktan okumanın elbette ki birçok yolu bulunmaktadır ve teknoloji geliştikçe de bunun sayısı artacaktır. Bunlar sayaçtaki bilgilerin yerel ağ üzerinden kablolu yada kablosuz olarak internete sunulması , GSM modülleri ile SMS yada GRPS teknolojisi ile uzaktan görüntülenebilmesi , herhangi bir bölgede birden fazla bulunan sayacın RF iletişim teknolojisiyle tekbir noktada toplanarak uzaktan erişime açılmasını bu yollar arasında gösterebiliriz. Çözüme giden yollardan herhangi birini tercih etmeden önce ihtiyaçlar belirlenmeli ve buna uygun en ekonomik yol seçilmelidir. Örnek olarak tekbir sayacın verilerine uzaktan erişiminin sağlanarak, geçmişe yönelik bilgilerinin analizini çıkartmak istersek, bunu hem donanımımızı geliştirerek hem de uzaktan toplanan verilerin internet üzerinde düzenli bir biçimde kaydedilmesini ele alabiliriz. Eğer ikinci seçeneği seçersek bu durumda çözüm yolları arasından bizim için en uygun olanını seçmemiz gerekir. GSM teknolojilerini kullanmamız durumunda uzaktan erişim sırasında okunan her veri için GSM firmasına ödeme yapmak durumunda olduğumuzdan dolayı bu çözüm bizim için pek uygun sayılmaz. Eğer sayacın bulunduğu yerde internet bağlantısı bulunuyorsa, yerel ağ üzerinden erişimin sağlanması bizim için fazladan bir ekonomik gider olarak karşımıza çıkmayacaktır. Bu açıdan bu çözümün seçilmesi ekonomik yoldan ve donanım açısından en uygun olanı olarak gözükmektedir.

Uygulamamızda sayaçta bulunan verilerin yerel ağ üzerinden uzaktan erişim modelini kullandık. Sayaç ile mikro denetleyici , mikro denetleyici ile Ethernet modülünün haberleştirilmesi donanım yönünden bu yönteme çözüm olarak ele alınabilir. Daha sonraki bölümlerde ise bu uygulama modelinin işleyişini, sisteme uygulama aşamalarını teknik , teorik ve kişisel deneyimlerimizin yer aldığı kısımlar yer almaktadır.


BÖLÜM 2 .ELEKTRONİK ELEKTRİK SAYACINDAN VERİLERİN    ALINMASI


Projemizin en önemli aşamalarından birisi de evlerimizde, işyerlerimizde, fabrikalarımızda kullanmış olduğumuz elektriğin ölçülmesini, faturalandırılmasını sağlayan elektronik elektrik sayacından verilerin alınması birkaç türlü olsa da seçtiğimiz yol RS485 hattı üzerinden sayaca ait anlık akım gerilim güç gibi değerlerin alınmasıdır.

LUNA Aktif Reaktif Trifaze Elektronik Elekik Sayacının çeşitli iletişim protokolleri ile verileri alınabilir. Bunlar Rs232 ve Rs 485.Rs 232 ile sadece bir sayaçtan okuma gerçekleştirebilirken Rs 485 ile birden fazla sayaçtan veri alabiliyoruz. Okuma yapılacak sayacın fazla olmasıyla hangi sayacın okunacağı ,okuma isteğinde sayaç numarasının yazılması ile belirtilir. Bu şekilde sadece seçilen sayaç ile bağlantı kurular. Sayaçtan veri okuma yaparken verilen okuma isteği “/?XXXXXXXX!CRLF” olarak ifade edilir. (X = Sayaç No). Bu sayede her sayaca ait her fazın akım gerilim frekans güç sayısı ayrıca güçleri de sayaçtan alabilmekteyiz. Rs 485 çıkışı mevcuttur. Biz bu çıkışı Rs485/232 çevirici devre yardımıyla sayaca ait anlık akım, gerilim, cos fi gibi değerleri PIC 18lf4685 e yazdığımız C 18 yazılımı ile internet ortamına sunmaktayız. [1]

 

PIC18f4620 yani sayaç ile iletişim kurulan pic “/?XXXXXXXX!CRLF”  komutunu gönderdiğinde sayaçtan çıkan veriler RS485-232 çevirici üzerinden geri gelmektedir. Ancak buradaki önemli bir nokta göndermiş olduğumuz komut dizisinde  en sonundaki  CRLF komutudur.PIC18f4620’e CCS programlama dilini kullanarak yazmış olduğumuz yazılımda fprintf(web,"%s",sayac); ile string değerler gönderebilmekteyiz. Ancak sayaçtan veri okumak için göndermiş olduğumuz dizinin son karakterleri CRLF string bir değer olmayıp ASCII tabloda değerleri olan ve newline anlamına gelen enter’in kodudur. Bu amaçla gönderilen kod ;
char sentdata[]={0x2F,0x3F,0x21,0x0D,0x0A};

fputs(sentdata,sayac); 

ASCII tabanlı sistemlerde  LF (Line feed, '\n',0x0A), CR(Carriage     return, '\r',0x0D),CR ‘nin LF’yi takip etmesi  (CR+LF, '\r\n',0x0D0A) komutları ile yazdırma işlemi yapılır. Bu komutların kullanılmış olduğu sistemler;
·         LF:     Unix Unix benzeri sistemler (GNU/Linux, OS X,AIX,…),BeOs  …
·         CR:     Commodore 8-bit makineler,Acorn BBC,Apple II, Max OS …
·         RS:    Qnx pre-POSIX …
·         LF+CR:  Acorn BBC ve RISC Os
·         CR+LF: Microsoft Windows, DEC TOPS-10, Symbian OS, Palm OS,Amstrad [2]

Char Oct  Dec Hex Control-Key                          Control Action
NUL  0     0      0      ^@                 Nu l character
SOH  1     1      1      ^A                 Start of heading, = console interrupt
ST 2     2      2      ^B                  Start of text, maintenance mode on HP console
ET 3     3      3      ^C                  End of text
EOT  4     4      4      ^D                 End of transmission, not the same as ETB
ENQ  5     5      5      ^E                  Enquiry, goes with ACK; old HP flow control
ACK  6     6      6      ^F                  Acknowledge, clears ENQ logon hand
BE 7     7      7      ^G                 Be l, rings the be l...
BS     10   8      8      ^H                 Backspace, works on HP terminals/computers
HT     11   9      9      ^I                   Horizontal tab, move to next tab stop
LF      12   10    a      ^J                   Line Feed
VT     13   11    b      ^K                 Vertical tab
FF      14   12    c      ^L                  Form Feed, page eject
CR     15   13    d      ^M                 Carriage Return
SO     16   14    e      ^N                 Shift Out, alternate character set
SI      17   15    f       ^O                 Shift In, resume defaultn character set
DL 20   16    10    ^P                  Data link escape
DC1
21
17
11
^Q
XON, with XOFF to pause listings; ":okay to send".
DC2
22
18
12
^R
Device control 2, block-mode flow control

Tablo 2.0.1 Kontrol Kanalları
Seri No
0.0.0
0.0(00000043)\

Sayaç Saati
0.9.1
0.9.1(17:33:59)\0D                                                                                                                                                    

Sayaç Tarihi
0.9.2
0.9.2(13-12-26)\0D                                                                                                                                                    

Gün
0.9.5
0.9.5(4)\0D                                                                                                                                                            

Demant Bilgileri
1.6.0
1.6.0(000.120*kW)(13-12-21,15:30)\0D                                                                                                                                  

T
1.8.0
1.8.0(000000.753*kWh)\0D                                                                                                                                               

T1
1.8.1
5.8.0(000000.000*kVArh)\0D                                                                                                                                            

T2
1.8.2
8.8.0(000000.000*kVArh)\0D                                                                                                                                            

T3
1.8.3
32.7.0(225.4V)\0D                                                                                                                                                      

T4
1.8.4
31.7.0(000.000A)\0D                                                                                                                                                   

Ri
5.8.0
33.7.0(+1.00)\0D                                                                                                                                                      

Rc
8.8.0
52.7.0(225.6V)\0D                                                                                                                                                     

I1rms
31.7.0
51.7.0(000.000A)\0D                                                                                                                                                    

V1rms
32.7.0
53.7.0(+1.00)\0D                                                                                                                                                      

cosPhi1
33.7.0
72.7.0(226.3V)\0D                                                                                                                                                      

I2rms
51.7.0
71.7.0(000.000A)\0D                                                                                                                                                   

V2rms
52.7.0
73.7.0(+1.00)\0D                                                                                                                                                       

cosPhi2
53.7.0
34.7.0(50.0Hz)\0D                                                                                                                                                     

I3rms
71.7.0
54.7.0(50.0Hz)\0D                                                                                                                                                      

V3rms
72.7.0
74.7.0(50.0Hz)!\0D                                                                                                                                                    



S                                                                                                                                                                      


Tablo 2.0.2. Sayaçtan Alınan Veri Kod ve Değerleri


Projemizde sayaca doğru kod dizimini göndermek ve sayaçtan gelen verileri analiz etmek amacıyla çalışmalara PC SeriPort’u ile başlanıp bunun üzerinden ilerlemiştir. PC’nin seriportu ile sayacımızı aradaki dönüştürücü sayesinde bağlayıp veri gönderme ve alma başarı ile gerçekleştirilmiştir.

Seriporttan gönderilen kod dizisi : 2f 3f 21 0d 0a şeklinde olup en sondaki 0d 0a  CRLF’e tekabül etmektedir. Gönderilen veriye karşılık sayaç tarafından sayaç bilgileri gelerek sayaca ait bilgileri PC serialportu tarafında okunmuştur. Bundan sonraki aşamada gelen bu verileri doğrudan PIC 18f4620 ‘e göndererek proje devam etmiştir.

2.1.1 Elektronik Elektrik Sayaç

Şekil 2.0.4 LUNA Aktif Reaktif Trifaze Elektronik Elektrik Sayac

Projemizde kullanmış olduğumuz sayaç LUNA Aktif Reaktif Trifaze Elektronik Elektrik Sayac;

·         EN 50470, EN62052-11 ve EN 62053-23 standartlarına uygun,
·         Aktif enerji tahakkuku için C sınıfı %0,5 hassasiyetli ölçüm ve reaktif enerji için A sınıfı %2 hassasiyetli ölçüm yapan,
·         8 ayrı zaman dilimine 4 ayrı tarifede fiyatlandırma için programlanabilen,
·         bina içi ve dışı kullanıma uygun,
·         P54 koruma sınıflı,
·         Elektrik dağıtım firmalarının istediği voltaj, akım, frekans, demant, maksimum demant, yük profili, quadrant bilgisi, akım yönü gibi tüm özellikleri ölçüp hafızasında saklayan,
·         Hem gövde kapağının hem de klemens kapağının uygunsuz açılmasını takip edip hafızasına alan,
·         Üstündeki optik pot vasıtası ile el terminaliyle okuma sağlayabilen,
·         Standart olarak bulunan RS485 portları ile uzaktan okuma sistemlerine sahiptir. [1] [3]



2.1.2 RS485-RS232 Çevirici



Şekil 2. 0.5 Rs485  Rs232 Çevirici Modülü

Sayaçtan elden ettiğimiz verilerin mikrodenetleyici tarafından yorumlanabilmesi kullanmış olduğumuz ATC-106 izolasyonlu arabirim çevirici;

·         RS-232C, RS-422, RS-485 standartlarına uygun,

·         Yüksek  voltaj  korumalı  (3500V) olup,
·         Hızlı  Geçici  Voltaj  Süpresörü  (TVS)  ile  yıldırım ve yüksek voltajdan oluşan etkiyi verimli bir şekilde (ESD) önleyen,
·         PC, IPC veya taşınabilir bilgisayarınızı  RS-232  arabirim  bağlantısına  9  PIN  dişi  konnektör  ile  bağlanabilen,
·         RS-232 sinyalini, düzenli RS-485 sinyaline çevirebilme özelliğine sahiptir. [3] [4]

2.1.3 MAX232 Entegresi

MAX232 entegresi, EIA-232 protokolü ile TTL/CMOS uyumlu entegrelerin  gerilim seviyelerinin uyumlu çalışabilmesi için üretilmiştir. MAX232 entegresinin pin numaraları ve pin isimleri Şekil 3’de görülmektedir. İçerisinde dört tane gerilim dönüştürücüsü vardır. Bunlardan ikisi transmitter(alıcı), diğer ikisi de receiver(verici) olarak adlandırılmaktadır. Bu dönüştürücüler, gerilim seviyesi dönüştürmesinin yanında Çizelge 4.3’ten de görüleceği üzere, inverter(tersleyici) görevi de yapmaktadırlar. Her bir verici, girişlerine bağlanan EIA-232 pinlerinin gerilim seviyelerini 5V TTL/CMOS gerilim seviyelerine dönüştürerek çıkışlarından vermektedir. Her bir alıcı, girişlerine bağlanan 5V TTL/CMOS gerilim seviyelerini EIA-232 gerilim seviyelerine dönüştürerek çıkışlarından vermektedir.

Transmitter
Inputs
Transmitter
Outputs
Transmitter
Inputs
Transmitter
Outputs
High Level
Low Level
High Level
Low Level
Low Level
High Level
Low Level
High Level
Tablo 2.0.3  MAX232 verici/acı pin lojik fonksiyonları [4]
Şekil 2.0.6 MAX232 Mantıksal Diyagramı

Şekil 2.0.7 MAX232 Tipik Çalışma Devresi
Şekil 2.0.8 MAX232 Entegresi

Seri bir linkteki verici veya sürücü belli bir anda bir bit olmak üzere, bitleri sırasıyla yollar. Linkte, her bir yön ayrı bir hat olabileceği gibi, ortak kullanılan bir hatta olabilir. Yani gönderici, dönüşleri aynı hattan alır. Bir linkteki veri akışının kontrolünü için gerekli sinyallerden biri saat (clock) sinyali veya zamanlama frekansıdır. Hem gönderen hem de alan cihaz bir bitin ne zaman gönderileceğine ya da alınacağına karar verirken bir saat sinyal kullanır. İki çeşit seri bilgi gönderme formatı vardır.

2.2.1. Senkron Veri İletimi

Senkron veri gönderirken, sistemdeki tüm cihaz ya birisinin ürettiği ya da dışarıda bir cihaz tarafından üretilen clock saat sinyalini kullanırlar. Gönderilen her bit clockun geçişinde  (yükselen veya alçalan kenarından) sonraki belirli bir zamanda gönderilmektedir. Aynı zamanda alıcı da gelen biti okumak için clock geçişlerini kullanır. [5]
Senkron veri göndermede, bit gönderimini başlatırken yâda bitirirken çeşitli sinyaller kullanır. Bunlar başlama stop bitleri olabileceği gibi özgün sinyallerde olabilmektedir.
Senkron haberleşmede donanımlar arası uzaklık 15 feet ve daha kısa olmak üzere kablo kullanılır. Onun için donanımlar arası mesafe eğer uzun mesafeli ise uygun olmamaktadır. Ayrıca bu durumda senkron veri iletimi, clock sinyalinin iletimi parazit nedeniyle bozulduğu için pratik değildir.

Şekil 2.0.9 Senkron Veri İletişimi

2.2.2. ASenkron Veri İletimi


Asenkron veri iletiminde donanımlar arası clock sinyali bulunmamaktadır. Bunun nedeni her bir taraftaki cihaz kendi sinyalini sunmaktadır. Ancak, uçların clock frekanslarında anlaşmaları ve clocklarında uyumlu olmaları gerekir. İletilen her baytta saatleri eşlemek üzere bir Start ve gönderilen dataların bittiğini belirtmek üzere bir veya daha fazla Stop biti bulunmaktadır. [5]
Asenkron veri iletiminde bulunan cihazlar, PC, modem, gömülü sistemler gibi Rs-232, Rs-485 gibi portlar.
Bir asenkron veri gönderirken transfer sırasında clock sinyalini her iki taraf ayarladığı için bu çeşitli formatlarda olabilmektedir. Bunların en yaygın olarak kullanılan olan 8-N-1 dir. Gönderici donanım her bir gönderdiği baytı, 1 adet Start bitini takiben 0 nolu bitten (En az anlamlı -LSB:least significant bit-) başlayarak 8 veri biti ve 1 adet Stop biti olarak yollar.(Bakınız Şekil 2.0.10.)
Şekil 2.0.10 Asenkron Veri İletimi
-Start bit: Bir karakterin gönderilmeye başlandığını bildirmek için kullanılır. Her zaman transferin ilk biti olarak gönderilir.
-Data bits: Veri bitlerini oluşturan gruptur.
-Parity bit: Transfer edilen karakterlerin karşı tarafa doğru gönderilip gönderilmediğini kontrol etmek için kullanılan bittir. Eğer alıcı, alınan parity biti ile hesaplanan parity bitinin eşit olmadığını tespit ederse, hata verir ve o andaki karakteri kabul etmez. Parite biti Çift, tek, iz ya da boşluk (Even,Odd,Mark,Space)olabilmektedir. Çift(Even) parite, parite bitinin kendindeki ve veri bitlerindeki 1’lerin toplamı sayısının çift olmasını sağlayacak şekilde set edildiğini belirtir. Tek(Odd) parite ise, aynı şekilde 1’lerin toplam sayısının tek olmasını sağlayacak şekilde set edilmektedir. İz parite (Mark) ve boşluk (Space) parite sabit parametrelerdir. İz parite daimi olarak 1’dir ve boşluk parite de 0’dır.Böyle oldukları için iz ve boşluk pariteleri hata göstergesi olarak kullanışlı olmamaktadır. Örneğin başka bir format olan 7-E-1 formatını ele alalım. Gönderici 1 Start bitini takiben 7 veri biti,1 parite biti ve 1 Stop biti gönderir.
-Stop bit: Karakterin bittiğini gösterir. Karakterler arasında boş ya da ölü zamanlar sağlar. Stop biti gönderildikten sonra istenildiği zaman yeni bilgi gönderilebilir.
- Baud: Bit/sn. olarak ifade edilen birim zamanda (saniyede) iletilen bit sayısını ifade etmektedir. Analog sinyaldeki değişim hızıdır.          
Data Biti
Çift (Even) Parite Biti
Tek(Odd) Parite Biti
0000000
0
1
0000001
1
0
0000010
1
0
0000011
0
1
0000100
1
0
1111110
0
1
1111111
1
0
Tablo 2.0.4 Databitlerinin Paritelerinin gösterimi

Start bitiyle başlayıp Stop bitiyle biten aralıktaki değer Word olarak adlandırılır. Word içindeki veri bitleri karakter tanımlarlar. Bunlar, kimi linklerde metin (harf ya da rakam) karakterlerini temsi ederken diğer linklerde metin karakterleriyle hiç ilgisi olmayan ikili (binary) değerleri temsil ederler. Transfer edilen karakter sayısı, bit hızıyla Word’deki bitlerin sayısına eşittir. Her iletilen baytta bir Start bir de Stop biti ekleme iletim süresini %25 artırır (çünkü Word’de bu iki birlikte 110 bit bulur).8-N-1 formatında bir baytın iletim süresi bitin iletim süresinin 1/10'udur.Yani 9600 bps hızında, saniyede 960bayt iletilmektedir.


2.2.3. RS232


RS-232 iki cihaz arasında bilgi alışverişine yönelik olarak tasarlanmıştır. Mesafe 50 ile 100 feet (15-30 m) arasında değişebilmektedir. Bu noktada kablo tipi ve bit önemli rol oynar. Bir adaptör yardımıyla  farklı tip arabirime çevrilebilmektedir. Basit bir devre kullakullanarak bir RS-232 portu, bir çok cihaza bağlanabilen ve daha uzun mesafelerde çalışabilen bir RS-485’e çevirmek mümkündür.

RS-232 linklerde dengesiz (unbalanced) hatlar kullanılır. Dengesizlik sakınılması gereken bir şey gibi görünmekle birlikte, burada, hatlardaki sinyallerin elektriksel karakteristiklerine atıfta bulunulmaktadır. Dengesiz bir hat, sinyalin sinyal voltajının tek bir tele tatbik edildi ve tüm sinyal gerilimlerinin tek bir toprağı referans aldıkları bir hattır. Bu tip bir arabirime tek-uçluda denilmektedir. Dengeli ya da fark (differantial) hatlarında her bir sinyal için, biri diğerindeki sinyalin tersini (inverse) taşıyan iki tel kullanılır.

RS-232’nin bazı yönlerden avantajları vardır.

      Her  PC’de  bir  ve  daha  fazla  bulunur.  Yeni  PC’ler  USB  gibi  arabirimleri desteklemektedir. Fakat RS-232 USB’nin yapamadığı şeyleri yapar.

• Mikrokontrolörde, arabirim yongaları bir 5 V seri portu RS-232 ye         çevirebilirler.

     Linkler 50 ya da 100 feet uzunlukta olabilir. Çoğu cihazlardaki arabirmler uzun mesafelere yönelik değildirler. USB linkler 16 feet olabilmektedirler. PC paralel arabirimi 10-15 feet, IEEE-1284 tip B sürücülerle ise 30 feet olabilmektedir. Oysa RS-232 çok daha uzun kablolarla da iş görebilir. Her RS-232 bir modeme bağlanırsa, bu durumda telefon şebekesini tüm dünyaya iletim amacıyla kullanmak mümkündür. [1]= Her yönüyle seri port / Jan Axelson, çeviren Cihan Gerçek ; editör Gökhan Dinçer

•     2- yollu bir link için sadece üç tele ihtiy vardır. Paralel linkte sekiz adet veri hattıyla iki ve daha fazla kontrol sinyali ve birkaç da toprak hattı bulunur. Kablolama maliyeti yanında bir de konektör sorunu vardır. [5]

Dezavantajları ise şunlardır:

•     Linkin karşı ucu paralel veri gerektiriyorsa, gelen veriyi paralel veriye dönüştürmek zorunda kalacaktır. Ancak bu sorun bir UART kullanarak kolaylıkla çözülebilir.

•   Çok kullanışlı olmaları nedeniyle boş seri portu bulmak neredeyse imkansız gibidir.PC’lerde çok sayıda seri port bulunur. Ancak sistem bunların her biri için bir kesme istek hattı tahsis edememektedir. Bir çok mikrokontrolörde donanımda yalnızca bir tane seri port bulunmaktadır.

•   Bir linkte ikiden fazla cihaz bulunmayabilir.

•     Belirlenen en yüksek hız 20,000 bps (bit per second)’dir. Oysa, genellikle kısa linklerde, bunun üzerine çıkan, pek çok arabirim bulunmaktadır.

•   Çok uzun linklerde farklı arabirim gerekebilir. [5]



Daha yüksek hız, daha uzun link ve daha çok düğüm olması halinde RS-485 dengeli arabirimi bir çözüm olabilir.

2.2.4. RS485



RS-232’nin halledebileceğinden yüksek hızlarda ve uzak mesafelerde veri transferi gerektiğinde çözüm RS-485 olacaktir. RS-485’li linkler iki cihazla sınırlı değildir. Mesafeye, bit hızına ve arabirim yongalarına bağlı olarak sayıla 256’ya varabilen düğüm bir linkle bağlanabilir.

RS-485, standartta TIA/EIA-485 olarak geçer.RS-232’ye göre çeşitli avantajları vardır.
      Maliyeti şüktür. Sürücüleri ve aları pahalı değildir. +5V ya da daha düşük güç kaynağıyla çalışırlar. Böyle bir kaynakla, farksal çıkışlarda gereken minimum 1.5V’luk farkı üretebilirler. RS-232’nin ± 5V’luk minimum çıkışı, ± gerilimli bir güç kaynağını ya da bunları türeten daha pahalı bir arabirim yongası gerektirir.

      Ağ  Kapasitesi.  İki  cihazla  sınırlı  olmayışı  RS-485’nin  çok  sayıda  sürücüsü  ve acı olması sağlar. Yüksek empedanslı sürücülerle bir RS-485 256 düğümlü olabilir.

      Uzun Linkler. Link uzunluğu 4000 feet’e çıkabilir. RS-232’de bu limit 50-100 feet’tir.
     
     •        Sürat. Saniyede 10 Megabit hız mümkündür. Bit hızı kablo boyu ilişkilidir. Tablo3.2’de RS-485’in özelliklerine ve akraba bir arabirime yer verilmiştir. RS-422 bir sürücü ve on alıcıyla sınırdır. Ancak farksal giriş gerilimi çok daha büyüktür.
   
      Seri arabirimleme kullanılması yanında RS-485, farksal SCSI gibi hızlı paralel arabirimlemede de kullanılabilir. [5] [6]


BÖLÜM 3. VERİLERİN İNTERNET ORTAMINDA SUNULMASI


Projemizin tasarım amaçlarından biride sayaç üzerinden aldığımız, kullanılan sisteme ait Fazlar arası gerilim , tüketilen toplam aktif ve reaktif güç, faz akımları gibi bilgileri düzenli olarak internet ortamında görüntülemektir. Elbetteki, bu ihtiyacı karşılamada birçok yöntem ve yol izlenebilir. Biz bu yöntem ve yollar arasından Microchip’in sağladığı TCP/IP Stack kütüphanelerini kullandık.
Microchip TCP/IP stack gömülü network  uygulamaları için, fiziksel network katmanı ile uygulamanız arasında bir altyapı sağlar. Uygulama katmanları tarafından kullanılan birçok yaygın modülleri de bünyesinde içerir. Bunlardan bazıları; web sayfaları için HTTP modülü, e-mail göndermek için SMTP modülü, durum ve kontrol desteği için SNMP,TELNET ve Seri haberleşme – Ethernet ‘ e kadar ve birçoklarını içermektedir. Bunlara ek olarak , hafif ve yüksek performanslı olması , TCP ve UDP iletim katmanlarının uygulanması , IP, DHCP , ARP ve DNS modüllerini de gösterebiliriz.  [6]
Sistemin Algoritması;

3.1. TCP/IP Stack Yapısı

Şekil 3.0.2   TCP/IP Stack Mimarisi


TCP/IP stack yapısı şekilde görebileceğiniz gibi internet trafiğine uyulması için gerekli protokolleri içerermektedir. Bunları modüler bir yapı halinde C programlama dilinde  tasarlanmış ve TCP/IP(İnternet) protokol yapısını izlemektedir. Stack yapısı sürekli olarak   TCP ve UDP iletim katman modüllerini , IPv4( ve ICMP ‘nin bölümü) Internet katman modüllerini , ARP bağlantı katmanı modüllerini ve  çeşitli uygulama katman modüllerini desteklemektedir. [7]

3.2. Veriler İnternet Ortamına Sunulmasında Kullanılan Ekipmanlar


Verilerin internet ortamına sunulması için halihazırda bulunan sayaçtaki verilerin alındığı varsayılarak, merkezi bir kontrol devresi ile uygulamamızı internet ortamıyla haberleştirebileceğimiz köprü vazifesi gören bir Ethernet devresi olması gerekmektedir.
Şekil 3.0.3 Microchip Application Libraries v2013-06-15 sürümünün özellikleri [6]
Tablodan da görüldüğü gibi TCP/IP Stack kodları tüm 16 ,32 bit ailelerinde ve 8 bit 18F serisinde çalışabilmektedir. Buradan hareketle piyasada kolay bulunması da göz önüne alınarak, 64 K hafızası olan 18F4620 mikrodenetleyicisi ile çalışmaya karar verdik. Ancak proje derleme aşamasında ihtiyacımız olan modülleri destekleyen projeyi çalıştıracak gerekli hafıza boyutu 64 K ‘ı aşmaktadır ve bu yüzden üst seviye olan, 96K 18LF4685 mikrodenetleyicisini kullanmaya karar verdik. Bahsedilen bu hafıza sorunu, yükseltilen Microchip TCP/IP Stack uygulaması HTTP modülü yerine bir üst versiyonu olan HTTP2 modülünü içermektedir.
Bu sebep ile HTTP modülünden daha fazla özellik barından HTTP2 modülü program hafızasında daha fazla yer kaplamaktadır. Eğer eski TCP/IP Stack uygulamaları ile çalışmak isterseniz 18F4620 mikrodenetleyicisi web sunucusu ve uzaktan veri gönderme, alma gibi basit işlemleri, diğer modüllerin kullanılmaması dahilinde çalıştırabilmektedir.
Uzaktan erişim için yada gömülü sistem üzerinde bulunması istenilen web sayfaları bir MPFS2 imaj dosyası içinde depolanır. İmaj dosyası  geçici olmayan bir depolama biriminde(Eeprom yada SPI Flash) yada mikrodenetleyici’ ye ait olan dahili flash program hafızasında tutulabilir.
 Projemizde ise 32 KB Eeprom modeli olan 25LC256 ‘ı kullanmayı tercih ettik. Bu tercihimizi yazılım üzerinde TCPIPConfig.h kütüphanesinden isterseniz “ yazılım bölümün ” ’de anlatılan şekilde isterseniz Microchip’in sağladığı TCPConfigWizard programı ile bu isteğinizi yazılımda ifade edebilirsiniz. Ayrıca bu eepromun max. Çalışma frekansı 10 MHz olduğundan devre üzerinde de yine 10 Mhz kristal osilator kullanmayı tercih ettik.
Donanımın dış dünya ile bağlantısı niteliğinde olan Ethernet devresinde ENC28J60 entegresini kullanmayı tercih ettik. Bu entegre RJ45 soketiyle ethernete bağlanmakta ve kendisine bağlı bulunan işlemcilerle SPI arayüzü ile haberleşmektedir. Projemizde Ethernet devresini donanım kısmında bulunan “ Ethernet devresi “ kısmındaki devreyi hazır olarak kullanarak, sistemde oluşabilecek insan kaynaklı hataları sıfıra çekmek istenilmiştir.



BÖLÜM 4. GELİŞTİRME ARAÇLARI


Bu projenin geliştirilmesi için geliştirme ortamı olarak Microchip MPLAB IDE ve derleyici olarak ise C18 v3.7 LITE versiyonu kullanılmış, işlemcisinin programlanabilmesi için ise MPLAB IDE içerisinde bulunan yazılım ile PICKIT2 modulu kullanılmıştır. [8]

4.1.MPLAB Yazılım Geliştirme Ortamı


MPLAB yazılım geliştirme ortamı , kullanıcılara ücretsiz olarak sunulan PIC ve dsPIC ürünleri için gömülü uygulamalar geliştirilmesini olanak sağlayan ve ücretsiz olarak dağıtılan bir yazılımdır. Kullanışlı bir arayüze sahip bu yazılım geliştirme ortamı kullanıcılara Assembly , C18 ve CCS C derleyicisi ile çeşitli yazılım dillerinde de kullanıcıların yazılımlarını derlemesine olanak sağlamaktadır.
Şekil 4.0.1 MPLAB yazılım geliştirme ortamına genel bakış

4.2. MPLAB C18 Derleyicisi



C programlama dili gibi yüksek seviyeli dillerde uygulama geliştirmek için birçok seçenek vardır. MPLAB C18 derleyicisi , Microchip tarafından geliştirilmiş bir C derleyicisidir. Bu derleyici birçok özelliğe sahip ANSI uyumlu , 8 bit mikroişlemcilerin, PIC 18 aileleri için kullanılan bir C derleyicisi ve 32-bit windows konsol uygulamasıdır. Bu konsol uygulaması MPLAB geliştirme ortamı ile birlikte kullanılabilmektedir.
C18 derleyicisinin deneme sürümü elbette ki ücretsiz olup , deneme sürümü olmayan derleyicisinin tüm özelliklerini ve kütüphanesini içerir.
C18 derleyicisi temel olarak aşağıdaki özelliklere sahiptir;
·         ANSI '89 uyumluluğu

·         MPLAB IDE ile birlikte kolay kullanılabilir proje yönetimi ve kaynak düzeyinde hata ayıklama

·         Geliştirilmiş kodların yeniden kullanımı için yer değiştirebilir modüllerin üretimi

·         Kullanıcıların oluşturduğu kütüphanelerin ve dahili kütüphanelerin kolay kullanımına MPLIB izin verir

·         Çoklu seviye optimizasyonu ile verimli kod oluşturma motoru

·         Tam kontrolün kesinlikle gerekli olduğu yerlerde, güçlü bir assembly desteğini vermesi  [8]


Bunlar C18 derleyicisi özellikleri içinde yer alır.


4.3. Stack Yapısı ve Dosyaları


Microchip TCP/IP Stack , tasarlamış olduğunuz devrelerin, sistemlerin dış dünyaya yani internet dünyasına ulaşmasını sağlayan uygulamadır. Bu uygulama yada kütüphaneler ile hayal gücünüzün enginliği seviyesinde tasarladığınız devrelerin, sistemlerin uzaktan erişilebilir, kontrol edilebilir ve üzerinde bulunan bilgilerin toplanabilir bir hale getirilmesi sağlanır.
Bu kütüphaneyi Microchip ’in resmi sitesinden “ Microchip Application Libraries ” paketi içerisinde bulabilirsiniz. Projemizde “ v2013-06-15 ” versiyon numaralı kütüphaneler kullanılmış ve bu sürümdeki TCP/IP Stack versiyonu   “ 5.42.08 “ dur.

4.3.1. TCP/IP Stack Dosyaları
Şekil 4.0.3 TCP/IP Stack Dosyaları ve dizinleri
Microchip Solutions v2013-06-15 dizini içerisinde USB, Dokunmatik ekran , SD Card yönetimi ve Grafik ekranlarla oluşturabileceğiniz bir çok demo uygulama yüklü olarak gelmektedir. Bu dizin içerisinde ve buradaki konumlara da kullanıcıların kendi projelerini oluşturmasına olanak sağlamaktadır.

Microchip dizini içerisinde stack dosyaları ve bileşenleri bulunmaktadır. Bu dizin altındaki “ Include ” klasörü Microchip stack ve kütüphane çözümleri için header dosyalarını tutar. Yine Include dizini altında bulunan TCPIP Stack klasörü de C kaynak kodları, dökümasyonları  ve stack yardımcı uygulamaları içermektedir.
Microchip’in TCP/IP stack uygulamasını kullanan bütün projelerde bazı temel dosyaların mutlaka proje içerisine dahil edilmesi gerekmektedir.
Main dosyası :  Uygulama kodlarınızı içerisinde barındıran dosyalardır.
• ARP.c ve ARP.h – Bu dosyalar, stack tarafından verilmiş bir IP adresi ile ilişkilendirilmiş MAC adresini çözümlemede kullanılır.
• Delay.c ve Delay.h – Bu dosyalar, bazı stack fonksiyonları için gecikmelerin sağlanabilmesi için kullanılırlar. Not olarak ; bu gecikmelerin kendi kodunuzda kullanılmaması daha iyi olacaktır. Çünkü kullanıldığı durumlarda , program akışının durabileceği bazı koşullar oluşabilmektedir.
•  Fiziksel Katman dosyaları - Bu dosyalar, belirlenmiş bir fiziksel katmanın program içerisinde devreye alınabilmesi için kullanılmıştır.

• Helpers.c ve Helpers.h

Bu dosyalar ise, çok yönlü stack görevleri için yardımcı fonksiyonları içerir.

• IP.c ve IP.h

Bu dosyalar , internet katmanını fonksiyonellikle stack yapısı için temin eder.

• StackTsk.c ve StackTsk.h

Bu dosyalar ise , stack yapısını başlatacak olan kodları içerir ve devam eden stack yapısının callback fonksiyonlarını yerine getirir.

• Tick.c ve Tick.h

 Bu dosyalar , stack içerisindeki bazı zamanlama fonksiyonlarının uygulanması için kullanılan tick zamanlayıcısının oluşmasını sağlar.

• HardwareProfile.h

Bu konfigürasyon dosyası , donanım özelliklerinin ayarlanmasında kullanılır.


• TCPIPConfig.h

 Bu konfigürasyon dosyası ise , sisteminize kaydedilmiş olan yazılımın kurulması için kullanılır.

• MAC.h

 Bu kütüphane dosyası , makroları ve donanımsal MAC katmanıyle ilişkili yapıları destekler.

• TCPIP.h

 Bu kütüphane stack yapısı için öncelikli olarak dahil edilmesi gereken bir dosyadır. Main dosyanız TCPIP.h kütüphanesini içermelidir. Bu sayede ek dosyaların dahil edilip edilmeyeceğini ek olan protokollerin ve özelliklerin seçimini gerçekleştirebilirsiniz....

6.  Donanım

6.1. Sistemin ISIS çizimi      

6.1.1. Merkezi Kontrol Devresi
Şekil 6.0.1 Merkezi Kontrol Devresi

6.1.2. Sayaç ile Merkezi Kontrol arası Haberleşme Devresi


Şekil 6.0.3 Güç Devresi

Şekil 6.0.4 Sistemin ARES çizimi



Sistemin Prototip Resmi1






SONUÇ VE TARTIŞMA



Gelişen teknolojinin kullamının artmasıyla birlikte, sistemlerin takibi, kontrol edilmesi ve analizi gereklilik haline gelmtir. Sistemlere uzaktan erişilmesi ve tek bir noktada toplanarak verilerinin uygun ortamlarda depolanma bu gerekliliklerin karşılanmasında efektif ve ekonomik olarak çözüm sağlayacaktır.

Proje de sistemlerin uzaktan erişilerek verilerinin tek bir noktada toplanması, depolanma ve analizi amaçlanmıştır. Bunun sebebi sistemde oluşabilecek hatalar, gelecekte sistem üzerinde yalabilecek iyileştirmeler ve benzeri analizler için bizlere yarmcı olacaktır. Ay zamanda bu verilerin izlenmesiyle anlık olarak verilerin takibi ve önemli durumlara göre alınabilecek önemlere yardımcı olacaktır.

Projemizde sistem üzerindeki veriler izlenebilmiş fakat gönderilen  verilerin, veri iletim yolunda bozulması, tahribatı sonucunda sağlıklı bir şekilde veritabanı oluşturulamadığından depolama ve analiz kısımları geeklenememiştir.

Sonuç olarak projeden beklenen amaçlardan bir kısmı geeklenerek, var olan hataların çözülmesinin ardından çeşitli kullanım amaçlarına göre enerji kalitesinin takip  edilmesi,  elektrik  sayları,  su  sayaçları,  trafik  durum  takibi,  trafik  radar sistemi gibi sistemlerin kontrol edilmesi ve veri analizlerinin çıkarılması, herhangi bir  hata durumundahatanın  kaynaklandığı  zaman ve durum  bilgileri  bu  sayede erişilebilir hale gelmektedir.




Bitirme Projemize ait Dokümanları Linkten indirebilirsiniz...












Yorumlar

Bu blogdaki popüler yayınlar

Soru ve Cevaplarla Kompanzasyon

Aktif Güç Nedir,Reaktif Güç Nedir

Sinusoidal AC dalga şekli, Tepe, ortalama, efektif(rms), değer tanımları...