TEK FAZLI ŞEBEKE ANALİZÖRLÜ AKILLI PRİZ … T.C. Ege Üniversitesi Mühendislik Fakültesi...
Transcript of TEK FAZLI ŞEBEKE ANALİZÖRLÜ AKILLI PRİZ … T.C. Ege Üniversitesi Mühendislik Fakültesi...
1
T.C.
Ege Üniversitesi
Mühendislik Fakültesi
Elektrik Elektronik Mühendisliği Bölümü
Lisans Bitirme Projesi Sonuç Raporu
TEK FAZLI ŞEBEKE ANALİZÖRLÜ AKILLI PRİZ
TASARIMI
Single Phase Smart Plug Design with Network Analyzer
Seyit YILDIRIM
05120000731 [email protected] 05377207625
Proje Danışmanı: Doç.Dr. Mutlu Boztepe
Bornova, İZMİR, Haziran 2017
2
E.Ü. ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ
LİSANS BİTİRME PROJESİ BİLGİ FORMU
1- Projenin Yapıldığı Dönem:
Yıllık
2- Rapor Tarihi:
3- Projenin Başlangıç ve Bitiş Tarihleri:
4- Projenin Adı: Tek Fazlı Şebeke Analizörlü Akıllı Priz Tasarımı
Project Name: Single Phase Smart Plug Design with Network Analyzer
Projenin Toplam Maliyeti: 150 TL
5- Proje Yürütücüsü Öğrenciler ve iletişim bilgileri (adres, e-posta, tel.)
Seyit Yıldırım
Erzene Mah. 42. Sokak No:2 daire:9 Bornova/İzmir
05377207625
6- Projenin Yürütüldüğü Kuruluş:
Ege Üniversitesi
7- Destekleyen Kuruluş(ların ) Adı, Adresi ve Destek Miktarı: Yok
8- Öz:
Akıllı prizler, günümüzde gittikçe yaygınlaşan akıllı ev teknolojilerinin en önemli
parçalarındandır. Bu tez çalışmasında, prize takılan cihazları güç kalitesindeki olumsuz etkilerden
korumak ve bir android uygulama ile cihaza bluetooth üzerinden erişerek istenen elektrik
parametrelerini raporlamak ve kontrol etmek amacıyla bir akıllı priz tasarımı gerçekleştirilmiştir.
Akım ve gerilim sinyalleri ARM tabanlı mikrodenetleyici olan STM32F4 ile işlenmiştir. Akım ve
gerilim ölçümü galvanik izolasyon sağlanarak yapılmıştır. Akım ve gerilim sinyalleri en fazla 10.
harmonik bileşen dâhil edilmek üzere hesaplanmaktadır. Akım ve gerilim sinyalleri işlenerek aktif
güç, reaktif güç, görünür güç, güç katsayısı, harcanan enerji ve karşılık gelen tutar hesaplanıp
android uygulamada raporlanmıştır. Güç katsayısının düşük olduğu durumlarda yük şebekeden bir
röle yardımıyla ayrılmıştır. Ayrıca uygulama üzerinden on/off kontrolü sağlanmaktadır.
Anahtar Kelimeler: Akıllı priz, şebeke analizörü, bluetooth, android, ARM.
3
9- Danışmanının Öğretim Üyesi Adı/Soyadı ve Görüşü: : Doç.Dr. Mutlu Boztepe
10- Bölüm Kurulu Görüşü:
11- Projenin Başarı Durumu: Projenin Aldığı Not:
4
Önsöz
Bu tez çalışmasında, prize takılan cihazları güç kalitesindeki olumsuz etkilerden korumak ve bir android
uygulama ile cihaza bluetooth üzerinden erişerek istenen elektrik parametrelerini raporlamak ve kontrol
etmek amacıyla bir akıllı priz tasarımı gerçekleştirilmiştir. Akım ve gerilim sinyalleri ARM tabanlı
mikrodenetleyici olan STM32F4 ile işlenmiştir. Proje hiçbir kurum tarafından desteklenmemiştir.
5
6
7
8
9
10
İçindekiler
Önsöz ...................................................................................................................................................... 4
Özet Makale…………………………………………………………………………………………….5
Şekiller ve Tablolar ............................................................................................................................. 13
ÖZ ......................................................................................................................................................... 15
Abstract ................................................................................................................................................ 15
Amaç ..................................................................................................................................................... 15
Literatür Özeti ..................................................................................................................................... 16
Tasarlanacak Cihazın Donanımsal Yapısı ........................................................................................ 17
1. Akım Ölçme Devreleri ................................................................................................................ 17
1.1 Akım Algılayıcı Direnç Yöntemi ............................................................................................ 18
1.1.1. Low Side Akım Algılama .................................................................................................... 19
1.1.2. High Side Akım Algılama ................................................................................................... 19
1.2. Akım Transformatörü Yöntemi ............................................................................................. 20
1.3. Rogowski Coil Yöntemi ........................................................................................................... 20
1.4. Hall Efect Yöntemi .................................................................................................................. 20
2. Gerilim Ölçme Devreleri ............................................................................................................. 21
2.1. Gerilim Bölücü Yöntemi ......................................................................................................... 21
2.2. Gerilim Transformatörü Yöntemi ......................................................................................... 21
3. Güç Kaynağı ................................................................................................................................ 21
3.1. Transformatörlü Güç Kaynakları ......................................................................................... 22
3.2. Transformatörsüz Güç Kaynakları ....................................................................................... 22
4. MCU ............................................................................................................................................. 23
4.1. ADC ( Analog to Digital Conversion ) ................................................................................... 24
4.2. DMA ( Direct Memory Access ) ............................................................................................. 24
4.3. USART ( Universal Synchronous Asynchronous Receiver Transmitter ) ......................... 24
11
5. Haberleşme Birimi ...................................................................................................................... 25
6. Röle ve Sürücü Devresi ............................................................................................................... 25
Analog Devre Tasarımı ....................................................................................................................... 26
1. Akım Ölçüm Devresi ................................................................................................................... 26
2. Gerilim Ölçüm Devresi ............................................................................................................... 29
3. Offset gerilimlerinin elde edilmesi ............................................................................................. 32
4. İzolasyon devresi.......................................................................................................................... 32
5. Test Aşamaları ............................................................................................................................. 33
5.1. Akım Ölçüm Devresi ve Testi ................................................................................................. 33
5.2. Gerilim Ölçüm Devresi ve Testi ............................................................................................. 35
5.3. İzolasyon Devresi ve Testi ....................................................................................................... 36
5.4. Sistemin Rezistif Bir Yükte Test Edilmesi ............................................................................ 37
Tek Fazlı Sinüzoidal Sistemde Temel Elektrik Parametrelerinin Hesaplanması ......................... 38
1. RMS Hesabı ................................................................................................................................. 38
2. Aktif Güç ve Enerji Hesabı ......................................................................................................... 40
2.1. Aktif Güç Hesabı ..................................................................................................................... 40
2.2. Aktif Enerji Hesabı ................................................................................................................. 43
3. Reaktif Güç ve Enerji Hesabı ..................................................................................................... 44
3.1. Reaktif Güç Hesabı ................................................................................................................. 44
3.2. Reaktif enerji hesabı ............................................................................................................... 45
4. Görünür Güç ve Enerji Hesabı .................................................................................................. 45
4.1. Görünür Güç Hesabı ............................................................................................................... 45
4.2. Görünür Enerji Hesabı ........................................................................................................... 45
Elektrik Parametreleri Hesabı Algoritma Testleri .......................................................................... 46
1. RMS değer Algoritmaları ........................................................................................................... 46
2. Aktif Güç Algoritmaları ............................................................................................................. 47
12
3. Görünür Güç Algoritmaları ....................................................................................................... 48
4. Güç Faktörü Algoritmaları ........................................................................................................ 48
STM32F4 Yazılımı .............................................................................................................................. 49
1. Örnekleme Frekansı Seçimi ....................................................................................................... 49
2. ADC kullanımı ............................................................................................................................. 49
Android Uygulama .............................................................................................................................. 50
Sistem Tasarımı ve Testleri ................................................................................................................ 50
Elektrik Parametreleri Hesabı Algoritma Seçimi ............................................................................ 51
1. Yüksüz Çalışma Testi .................................................................................................................. 51
2. Fön Makinesi ile Çalışma ............................................................................................................ 52
3. Kahve Makinesi ile Çalışma ....................................................................................................... 53
4. Yumurta Haşlayıcı Makinesi ile Çalışma .................................................................................. 54
Performans ........................................................................................................................................... 54
Sonuç .................................................................................................................................................... 55
Tasarım ve davranış özellikleri .......................................................................................................... 55
İleriye dönük çalışmalar ..................................................................................................................... 55
EK- 1 STM32F4 PROJE KODLARI ................................................................................................. 59
EK-2 ANDROID UYGULAMA KOD BLOKLARI ........................................................................ 69
EK-3: Lisans Bitirme Projesi Özdeğerlendirme Formu .................................................................. 70
13
Şekiller ve Tablolar
Şekil 1 - Tasarlanacak devrenin donanım blok şeması………………………………………………….17
Şekil 2.1- Low-Side Akım Algılama…………………………………………………………………...19
Şekil 2.2 - High-Side Akım Algılama………………………………………………………………….19
Şekil 3 - STM32F4 Discovery Geliştirme Kartı……………………………………………………….23
Şekil 4 - HC-05 Bluetooth modülü…………………………………………………………………….25
Şekil 5 - Röle kartı……………………………………………………………………………………..25
Şekil 6 - Akım ölçüm devresi………………………………………………………………………….26
Şekil 7 - Şebeke akımı & opamp çıkış gerilimi………………………………………………………..27
Şekil 8 - Akım ölçüm devresi frekans tepkisi………………………………………………………….28
Şekil 9 - Gerilim ölçüm devresi………………………………………………………………………..29
Şekil 10 – Şebeke Gerilimi & Opamp çıkış gerilimi…………………………………………………..31
Şekil 11 - Gerilim ölçümü frekans tepkisi……………………………………………………………...31
Şekil 12 – Ofset gerilimleri devresi……………………………………………………………………32
Şekil-13 HCNR200 Analog izolasyon devresi………………………………………………………...32
Şekil-14 Analog izolasyon devresi testi………………………………………………………………..33
Şekil-15 Akım ölçüm devresi pcb görüntüsü…………………………………………………………..33
Şekil-16 Akım ölçüm devre kartı………………………………………………………………………34
Şekil-17 Akım ölçümü eğri uygunlaştırması…………………………………………………………..34
Şekil-18 Gerilim ölçüm devresi pcb görüntüsü………………………………………………………..35
Şekil-19 Gerilim ölçüm devre kartı…………………………………………………………………….35
Şekil 20 Gerilim ölçümü eğri uygunlaştırması…………………………………………………………36
Şekil-21 Analog izolasyon devresi pcb görüntüsü……………………………………………………..36
14
Şekil-22 İzolasyon devresi ac sinyal testi………………………………………………………………37
Şekil-23 Rezistif bir yük için akım(sarı) ve gerilim(mavi) sinyalleri…………………………………37
Şekil 24 – RMS akım değeri sinyal işleme……………………………………………………………..39
Şekil 25 - ADE5166 ortalama mutlak değer ile RMS hesap yöntemi………………………………….40
Şekil 26 - STPM10 çipi aktif enerji ölçüm yöntemi……………………………………………………42
Şekil 27 Eş zamanlı çift adc ölçümü……………………………………………………………………49
Şekil 28 Sistem tasarım aşaması……………………………………………………………………….50
Şekil 29 Son sistem görüntüsü………………………………………………………………………….50
Şekil 30 Yüksüz çalışma durumunda android uygulama görüntüsü……………………………………51
Şekil 31 Fön makinesi ilk kademe sistem görüntüsü…………………………………………………...52
Şekil 32 Fön makinesi ilk kademe uygulama görüntüsü………………………………………………..52
Şekil 33 Fön makinesi ikinci kademe uygulama görüntüsü……………………………………………53
Şekil 34 Kahve makinesi uygulama görüntüsü…………………………………………………………53
Şekil 35 Yumurta Haşlayıcı uygulama görüntüsü……………………………………………………...54
Tablo 1 - Akım Ölçme Yöntemleri……………………………………………………………………..20
15
ÖZ
Akıllı prizler, günümüzde gittikçe yaygınlaşan akıllı ev teknolojilerinin en önemli parçalarındandır. Bu
tez çalışmasında, prize takılan cihazları güç kalitesindeki olumsuz etkilerden korumak ve bir android
uygulama ile cihaza bluetooth üzerinden erişerek istenen elektrik parametrelerini raporlamak ve kontrol
etmek amacıyla bir akıllı priz tasarımı gerçekleştirilmiştir. Akım ve gerilim sinyalleri ARM tabanlı
mikrodenetleyici olan STM32F4 ile işlenmiştir. Akım ve gerilim ölçümü galvanik izolasyon sağlanarak
yapılmıştır. Akım ve gerilim sinyalleri en fazla 10. harmonik bileşen dâhil edilmek üzere
hesaplanmaktadır. Akım ve gerilim sinyalleri işlenerek aktif güç, reaktif güç, görünür güç, güç katsayısı,
harcanan enerji ve karşılık gelen tutar hesaplanıp android uygulamada raporlanmıştır. Güç katsayısının
düşük olduğu durumlarda yük şebekeden bir röle yardımıyla ayrılmıştır. Ayrıca uygulama üzerinden
on/off kontrolü sağlanmaktadır.
Anahtar Kelimeler: Akıllı priz, şebeke analizörü, bluetooth, android, ARM.
Abstract
Smart plugs are the most important parts of smart home technology that is becoming more and more
common today. In this thesis study, a smart socket design was carried out to protect devices from adverse
effects of power quality and to report and control the desired electrical parameters by accessing the
device via Bluetooth with an android application. The current and voltage signals were processed with
the ARM based microcontroller STM32F4. The current and voltage signals are calculated to include a
maximum of the 10th harmonic component. Current and voltage signals are processed to calculate active
power, reactive power, apparent power, power coefficient, spent energy and corresponding amount of
money and reported in android application. In cases where the power coefficient is low, the load is
separated by a relay from the network. On / off control is also provided through the application.
Key Words: Smart plug, network analyzer, bluetooth, android, ARM
Amaç
Bu projenin amacı; prizlere takılan cihazları güç kalitesinin düşük olduğu anlarda devreden
ayırarak olası arızalardan korumak, akım, gerilim, aktif güç, reaktif güç, görünür güç, güç katsayısı,
harcanan enerji ve karşılık gelen tutar hesaplanıp android uygulama üzerinde raporlamak ve uzaktan
on/off kontrolü sağlayarak cihazları efektif bir şekilde kullanmaktır.
16
Literatür Özeti
Enerji kalitesi, gerilim ve akımdaki dalgalanmalardan, kesilmelerden, güç katsayısı ve
frekanstaki ani değişimlerden olumsuz yönde etkilenmektedir. Enerji kalitesi ve enerji sürekliliğini
denetlemek için enerji izleme sistemleri geliştirilmiştir. Gün içerisinde gözlenen farklı enerji tüketim
değerleri, işletmenin enerji tüketim maliyetlerini hesaplamada önemli bir unsurdur. Bu amaçla işletmede
ölçülen enerji parametreleri sürekli olarak kayıt ve analiz edilmelidir. Böylece şebekeden alınan
enerjinin kalitesi gözlenebilmektedir. Ayrıca işletmeler sorumlu oldukları aktif - reaktif güç sınırlarını
ve enerji maliyetlerini enerji takip sistemleri ile izleyebilmektedir. İşletmeler yoğun çalışma saatlerini
enerjinin ucuz olduğu zamanlara kaydırılarak enerji maliyeti düşürülebilmektedir. Enterkonnekte
sistemlerde, iletim ve dağıtım hatlarında yükler sürekli olarak değişim göstermektedir. Yük
değişimlerinden şebekenin olumsuz etkilenmemesi için enerji hatlarının gerçek zamanlı olarak
izlenmesi gerekmektedir. Ayrıca enerji üretim merkezlerinde geleceğe yönelik yük tahmini geçmişteki
veriler kullanılarak yapılmaktadır. Bu nedenle, enerji izleme sistemindeki anlık değişimler bir veri
tabanına kaydedilerek geleceğe yönelik yük tahminleri yapılmaktadır. [1]
Çeşitli enerji ölçüm teknikleri bulunmaktadır. Akım, gerilim, görünür güç, frekans, güç
katsayısı gibi parametreleri hesaplayan STMP01 gibi özel çipler kullanılmaktadır. [2]. Özel çiplerin
yanında analog devrelerle de enerji ölçümü yapılmaktadır. Akım algılayıcı direnç yöntemi, akım
transformatörü yöntemi, hall efect yöntemi, rogowski coil yöntemi gibi başlıca akım okuma yöntemleri
bulunmaktadır. Güvenlik açısından izolasyonu sağlaması nedeniyle akım transformatörü akım okuma
yöntemlerinden sık kullanılanıdır. [2], [3]. Buna rağmen ucuzluğu ve ölçüm doğruluğu nedeniyle akım
algılayıcı direnç tekniği uygulamalarda kendine yer bulmuştur. [4] Gerilim ölçümü için gerilim bölücü
direnç tekniği kullanılmakla beraber [4] [5] gerilim transformatörü de tercih edilmiştir. [1]. Frekans
ölçümü için zero-cross devresi her uygulamada yerini bulmuştur. [1]. Çeşitli yöntemlerle elde edilen bu
verilerle mikroişlemci yardımıyla güç katsayısı, görünür güç, aktif güç değerleri hesaplanmış ve bu
bilgiler dış dünya ile çeşitli protokollerle paylaşılmıştır. Dış dünya ile haberleşmek için wifi modülü [2],
bluetooth modülü [6] [7], Zigbee modülü [8], RF modülü, RS485 protokolü [3] farklı uygulamalarda
tercih edilmiştir. Çalışmalar sonucunda gün içindeki maksimum talebin bulunduğu zamanlar tespit
edilmiş [9], bu talep verileri kullanılarak talep yer değiştirme (peak-shaving) gibi teknikler kullanılarak
%10-%22 oranında enerji tasarrufu sağlanmıştır. [3]. Tüm bu özelliklerin kişisel ve endüstriyel kullanım
için kullanışlı olduğu görülmüştür. [7].
Bu projede akım ölçümü maliyet ve boyut bakımından low-side akım algılayıcı direnç yöntemi
ile yapılmıştır. Aynı şekilde gerilim ölçümü gerilim bölücü direnç yöntemi ile yapılmıştır. Güç
17
katsayısını ölçmek için herhangi bir zero cross devresi kurulmamıştır. Akım ve gerilim sinyalleri
yazılımsal olarak işlenerek güç katsayısı bulunmuştur. Farklı olarak sisteme güç katsayısının düşük
olduğu durumlarda yükü şebekeden ayıracak bir fonksiyon eklenmiştir. Tasarlanan bu cihaz 2kW’a
kadar destek vermektedir. Bu sayede kullanıcı, ürünü evinde kullanan çoğu cihaz için kullanabilir.
Tasarlanacak Cihazın Donanımsal Yapısı
Tasarlanacak olan cihaz donanımsal olarak akım ölçme devresi, gerilim ölçme devresi, güç kaynağı,
mikrodenetleyici, haberleşme birimi içermektedir. Donanım kısmına ait blok şeması Şekil-1’de
gösterilmiştir.
Şekil 1 - Tasarlanacak devrenin donanım blok şeması
1. Akım Ölçme Devreleri
Bir akım sensörü, akımı algılayan ve hattaki akımla orantılı bir çıkış gerilimine dönüştüren bir cihazdır.
Çok çeşitli akım sensörleri bulunmaktadır. Her sensör belirli bir akım aralığı ve çevresel koşullar için
uygundur. Hiçbir sensör tüm uygulamalar için optimum değildir.
18
1.1 Akım Algılayıcı Direnç Yöntemi
En sık kullanılan yöntemdir. Bu yöntem, akım hattına bir direnç yerleştirerek, akımı Ohm kanunu
yardımıyla lineer bir şekilde gerilime dönüştüren bir çevirici olarak düşünülebilir. Akım algılayıcı direnç
kullanmanın temel avantajları ve dezavantajları:
a) Avantajlar
Düşük maliyet
Yüksek ölçüm doğruluğu
Çok düşük akımlardan orta düzeydeki akımlara kadar ölçüm aralığı
DC ve AC ölçme imkânı
b) Dezavantajlar
Kaynak çıkış direncinin artması istenmeyen yükleme etkisine sebep olabilir.
Direnç üzerinde akımın karesiyle doğru orantılı bir güç kaybı oluşur. Bu yüzden yüksek
akım ölçüm uygulamalarında çok nadir kullanılır. [10]
Seçim Ölçütü
Daha önce bahsedilen dezavantajlar düşük değerli algılama direnci koyularak azaltılabilir. Ancak bu kez
algılama direncinin üzerine düşen gerilim ofset gerilimi ile karşılaştırmak için oldukça düşük olabilir.
Ayrıca, eğer ölçülecek akım yüksek frekans bileşenlerine sahip ise akım algılayıcı direncin iç indüktansı
düşük olmalıdır. Aksi takdirde bu indüktans ölçüm doğruluğunu düşürecek olan EMF’ye (Electromotive
Force) neden olur. Bunun yanında direncin toleransı, sıcaklık katsayısı, termal EMF gibi parametreler
doğru ölçümü gerektiren yerlerde önemlidir. Özetle, akım algılayıcı direnç seçimi herhangi bir akım
izleme sistemi için çok önemlidir. Aşağıdaki ölçütler direncin seçimi konusunda rehber olabilir.
1. Düşük toleranslı düşük direnç, güç tüketimi ile ölçüm doğruluğu arasında denge sağlar.
2. Kısa süreleri ve geçiş bölgelerini işlemek için yüksek akım kapasitesi ve yüksek güçlü olması
gerekir.
3. Düşük indüktans yüksek frekans bileşenleri nedeniyle oluşan EMF’yi azaltır.
4. Eğer geniş bir sıcaklık değişimi varsa düşük sıcaklık katsayısı, düşük termal EMF ve yüksek
sıcaklık kapasitesi olması gerekir. [11]
19
1.1.1. Low Side Akım Algılama
Şekil-2.1’de gösterildiği gibi low-side akım algılayıcısı yük ile toprak arasına yerleştirilmiştir.
Algılanan gerilim sinyali normal olarak çok
küçüktür. Ölçülebilir bir çıkış gerilimi almak için bu
sinyalin bir opamp devresi ile yükseltilmesi
gerekmektedir.
a) Avantajlar
Düşük giriş ortak mod gerilimi
Düşük VDD gereksinimi
Toprak referanslı giriş ve çıkış
Basit ve düşük maliyet
b) Dezavantajlar
Toprak yolu gürültüsü
Yük Rsense direncinden dolayı sistem toprağından ayrılmıştır. Bu arzu edilmeyen bir
durumdur.
Kaza ile oluşan kısa devre algılanamayan yüksek yük akımına sebep olur.
Avantajları düşünerek, kısa devre algılayıcısının gerekli olmadığı ve toprak yolu gürültüsünün ihmal
edilebildiği yerlerde low-side akım algılayıcısı seçilebilir.
1.1.2. High Side Akım Algılama
Şekil-2.2’de görüldüğü gibi high-side akım algılayıcısı
güç kaynağı ile yük arasına yerleştirilmiştir. Ölçülebilir
bir çıkış gerilimi için opamp devresi kullanılmıştır.
a) Avantajlar
Toprak gürültüsünü giderir.
Yük direk olarak sistem toprağına bağlıdır.
Kaza ile oluşan yüksek kısa devre akımları
algılanabilir.
Şekil 2.1- Low-Side Akım Algılama
Şekil 2.2 - High-Side Akım Algılama
20
b) Dezavantajlar
Çok yüksek ve dinamik ortak mod giriş gerilimini işleyebilmeli.
Kompleks ve daha yüksek maliyet
Yüksek VDD gereksinimi [11]
1.2. Akım Transformatörü Yöntemi
Akım trafosu ile akım ölçmenin 3 önemli avantajı bulunmaktadır:
Hat geriliminden izolasyon
Kayıpsız akım ölçümü
Daha az gürültü etkisi
Bu dolaylı akım ölçümü metodu AC gibi değişen bir akım, geçici (transient) akım veya anahtarlanan
DC akım gerektirir. Trafonun sarım oranları ayarlanarak arzu edilen ölçekte okuma yapılabilir.
1.3. Rogowski Coil Yöntemi
İçinden akım geçen iletken etrafına demir çekirdeksiz kapalı bir hava bobini bağlanır. İletkenden geçen
akıma göre Rogowski bobin üzerinde oransal bir gerilim elde edilir. Bu gerilimin genliği büyütülerek
kullanıma uygun hale getirilir. Ölçüm hatası %1-2 arasında değişim göstermektedir. Ancak yüksek
akımlarda hassasiyet çok çok daha iyi bir değere ulaşmaktadır.
1.4. Hall Efect Yöntemi
İletken etrafına yumuşak bir ferit takılmış olup küçük bir hava aralığına Hall sensör monte edilir. İletken
içerisinden geçen akım bu ferit üzerinde manyetik akış üretir. Bu manyetik akı Hall sensör üzerinden
geçerken, akıma oranlı bir gerilim üretilir. Bu gerilim oransal olarak akım(AC/DC) değerlerinin ölçümü
için kullanılır ve 0.5% ile 1% arasında bir hassasiyet sağlar. Örnek olarak ACS712 akım sensörü Hall
Efect yöntemi kullanılarak üretilmiş bir sensördür. [12] Yöntemleri karşılaştıracak olursak;
Ölçme Yöntemi Doğruluk İzolasyon Boyut Maliyet
Akım Algılayıcı Direnç Yüksek Yok Küçük Düşük
Akım Transformatörü Yüksek Var Büyük Orta
Rogowski Coil Yüksek Var Büyük Orta
Hall Efect Yüksek Var Büyük Yüksek
Tablo 1 - Akım Ölçme Yöntemleri
21
Bu karşılaştırma sonucunda maliyet ve boyut ölçütü bakımından akım algılayıcı direnç yöntemi
seçilmiştir. Akım algılayıcı direnç yerleştirildiği devre kısmına göre yukarıda bahsedildiği gibi low-side
ve high-side olmak üzere ikiye ayrılır.
High-side akım algılama yöntemi hem gerçekleştirmesi low-side yöntemine göre daha zor ve pahalıdır.
Bu yüzden akım okuma yöntemi olarak low-side akım algılama yönteminin yukarıda belirtilen
dezavantajlarına rağmen kullanılması uygun görülmüştür. Akım ölçme devresi analog tasarım
bölümünde verilmiştir.
2. Gerilim Ölçme Devreleri
Mikrodenetleyicilerin analog gerilim okuma seviyeleri sınırlıdır. Bu yüzden yüksek gerilimleri
mikrodenetleyici ile okumak için gerilimin uygun seviyeye düşürülmesi gerekmektedir. Gerilim
düşürmek çeşitli yöntemler kullanılır.
2.1. Gerilim Bölücü Yöntemi
Basit gerilim bölücü devresi düşük maliyetinden dolayı gerilim ölçmek için sıkça kullanılır. Rezistif
gerilim bölücü yöntemi AC ve DC gerilimler için kullanılabilir. Ancak dirençlerin üzerlerinden akan
akımın karesi oranında bir güç kaybı yaşanır. Ayrıca giriş ve çıkış sinyalleri arasında herhangi bir
izolasyon olmadığından giriş sinyalindeki kısa devre gibi bir hata çıkış sinyaline yansıyacaktır. Bu da
güvenli bir durum sunmamaktadır.
2.2. Gerilim Transformatörü Yöntemi
Gerilim düşürmek için bir diğer yöntem ise transformatör yöntemidir. Transformatör yöntemi DC
gerilimler için kullanılamaz. Sadece AC gerilimlerde çalışmaktadır. Ayrıca kapladığı alan bakımından
gerilim bölücü devrelerinden daha fazla yer kaplamaktadır. Bunun yanında maliyet olarak gerilim
bölücü devresine nispeten çok fazladır. Transformatör yönteminin en büyük avantajı giriş ile çıkış
sinyalleri arasında izolasyon sağlamasıdır. Bu sayede giriş sinyalindeki kısa devre gibi bir hata çıkış
sinyaline yansımamaktadır. Bu da güvenli bir durum sunmaktadır.
Bu iki yöntem karşılaştırıldığında maliyet ve kapladığı alan bakımından üstün olması sebebiyle gerilim
bölücü yöntemi tercih sebebidir. Gerilim ölçme devresi analog tasarım bölümünde verilmiştir.
3. Güç Kaynağı
Tasarlanacak olan cihazda bulunan MCU, röle, bluetooth gibi birimler çalışmak için güce ihtiyaç
duymaktadır. Gerekli olan bu güç bir batarya veya bir devre ile şebekeden sağlanabilir. Gücün
22
şebekeden sağlandığı durumda şebeke kesintisi gibi durumlarda devre beslenemeyecektir. Yalnız
batarya olduğu durumda ise batarya bittiğinde değiştirilmesi gerekir. Tasarlanacak cihaz için bu durum
efektif bir kullanım sunmamaktadır. Bu yüzden şarj edilebilir bir bataryayı bir devre ile şebekeden şarj
ederek daha efektif bir çözüm kullanılabilir.
Şebekeden güç kaynağı sağlamak için temel olarak 2 yöntemden söz edilebilir. Bu yöntemler kısaca
aşağıda kısaca açıklanmıştır.
3.1. Transformatörlü Güç Kaynakları
Bu yöntemde şebeke gerilimi bir transformatör yardımıyla 12V, 24V gibi gerilimlere düşürülür. Daha
sonra çeşitli doğrultma devresi ile AC gerilim DC gerilime dönüştürülür. Gerilim üzerindeki
dalgalanmaları azaltmak amacıyla filtre devresi eklenerek güç kaynağı oluşturulur. Bu yöntemin
avantajı güç kaynağının şebekeden izole olmasıdır.
3.2. Transformatörsüz Güç Kaynakları
Bu yöntemde şebeke gerilimi hatta seri bağlanan bir kapasitör veya direnç yardımıyla istenilen seviyeye
düşürülür. Daha sonra doğrultma devresi ile AC gerilim DC gerilime dönüştürülür. Gerilim üzerindeki
dalgalanmaları azaltmak amacıyla filtre devresi eklenerek güç kaynağı oluşturulur. Bu yöntemin
avantajı transformatörlü güç kaynaklarına göre maliyetinin ve boyutunun düşük olmasıdır.
Dezavantajlarını sırlayacak olursak:
Yüksek AC gerilim ile DC yük arasında galvanik izolasyon yoktur. Dolayısıyla güç kaynağının
arızalanması cihazın tahrip olmasına neden olur.
Şebeke gerilimi her zaman sabit değildir, bu da çıkış voltajında yansıyacaktır ve bu da devrenin
kararsız tepkisine neden olacaktır.
Gerilim ve akım dalgalanmaları, her ikisi de düzenlenmedikçe transformatörsüz güç kaynağında
yaygındır.
Transformatörsüz güç kaynaklarında elektrik çarpma riski yüksektir. [13]
İki yöntem kıyaslandığında şu sonuçları çıkarmak mümkündür. Eğer güvenliği yüksek bir cihaz
tasarlanılması isteniyorsa transformatörlü güç kaynağı tercih sebebidir. Ancak maliyetin ve boyutun
minimum düzeyde olması isteniyorsa transformatörsüz güç kaynakları tercih sebebidir.
Tasarlanacak cihaz için test aşamasında güç kaynağı için hazır şarj adaptörü kullanılacaktır. Güç kaynağı
devresi son aşamada tasarlanacaktır.
23
4. MCU
Bu projede mikrodenetleyici birimi olarak Şekil-3’te görülen STM32F4 Discovery geliştirme kartı
kullanılacaktır.
Discovery kartı ARM® Cortex®-M4 32-bit işlemciye sahiptir. ARM’nin 32 bitlik mimarisi; yüksek hız,
performans gerektiren uygulamalarda 8-bit mimarilere göre kıyaslanmayacak üstünlüktedir. STM32F4
Discovery’nin başlıca özellikleri:
STM32F407VGT6 mikroişlemci üzerinde 32-bit ARM Cortex-M4F çekirdek, 1 MB Flash, 192
KB RAM bulunan LQFP100 paketi
Kart üzerinde yer alan ST-LINK/V2 kullanım modunu değiştiribilen switch ile tek başına da
kullanılabilen ST-LINK/V2 (SWD konnektör ile programlama ya da debug için)
Kartın güç kaynağı: USB veri yolu üzerinden veya harici bir 5 V besleme gerilimi
Harici uygulama güç kaynağı: 3 V ve 5 V
CS43L22, entegre D sınıfı hoparlör sürücüsü ile ses DAC
Sekiz tane LED: USB iletişim için LD1 (kırmızı / yeşil), LD2 (kırmızı) 3,3 V güç ON, Dört adet
kullanıcı LEDi, LD3 (turuncu), LD4 (yeşil), LD5 (kırmızı) ve LD6 (mavi), 2 USB OTG LED
LD7 (yeşil) VBus ve LD8 (kırmızı) aşırı akım
İki buton (kullanıcı ve reset)
Uzatma header ile hızlı bağlantı için tüm LQFP100 I / O için başlık [14]
STM32F4 Discovery geliştirme kartının proje kapsamında kullanılacak olan birimleri aşağıda kısaca
açıklanmıştır.
Şekil 3 - STM32F4 Discovery Geliştirme Kartı
24
4.1. ADC ( Analog to Digital Conversion )
Akım ve gerilim sinyalleri analog sinyallerdir. Mikrodenetleyiciler dijital sinyaller ile çalıştıklarından
bu analog sinyallerin dijital sinyallere dönüştürülmesi gerekmektedir. Bu dönüşüm ADC birimi ile
yapılmaktadır. STM32F40x ve STM32F41x işlemci ailelerinin sahip olduğu ADC özellikleri:
12 bit, 10 bit, 8 bit, 6 bit ayarlanabilir çözünürlük
Dönüşüm bittikten sonra, enjeksiyon dönüşümünün sonunda ve analog watchdog veya aşırı
çalıştırma olaylarında kesme üretimi
Tek ve sürekli dönüşüm modları
Kanal 0'ın kanal 'n' ye otomatik olarak dönüştürülmesi için tarama modu
Dâhili veri tutarlılığı ile veri hizalama
Kanal tarafında programlanabilir örnekleme zamanı
Düzenli ve enjeksiyon için konfigüre edilebilir polariteye sahip harici tetik seçeneği
Süreksiz mod
Çift / Üçlü mod (2 ADC veya daha fazla cihaza sahip cihazlarda)
Dual / Triple ADC modunda yapılandırılabilir DMA veri saklama
Dual / Triple interleaved modunda dönüşümler arasında konfigüre edilebilir gecikme
ADC besleme gereksinimleri: Tam hızda 2.4 V ila 3.6 V, daha yavaş hızla 1.8 V'ye kadar
ADC giriş aralığı: VREF- ≤ VIN ≤ VREF +
Düzenli kanal dönüşümünde DMA isteği oluşturulması [15]
4.2. DMA ( Direct Memory Access )
DMA, donanım ve hafıza arasında veya hafıza ile hafıza arasında yüksek hızda veri transferi sağlamak
amacıyla kullanılır. Veri, DMA sayesinde herhangi bir işlemci aktivitesi olmadan hızlıca taşınabilir. Bu
sayede işlemci yapılacak diğer işlemler için boşta kalmış olur. [15] Bu projede ADC okumaları DMA
yoluyla yapılacaktır. DMA’nın özellikleri ve kullanılışı yazılım bölümünde verilecektir.
4.3. USART ( Universal Synchronous Asynchronous Receiver Transmitter )
Okunan akım ve gerilim bilgileri işlendikten sonra çeşitli elektrik parametreleri bluetooth üzerinden
android işletim sistemine sahip telefon ile haberleşmek suretiyle raporlanacaktır. Bu haberleşme
USART protokolü ile sağlanacaktır. USART’ın özellikleri ve kullanılışı yazılım bölümünde
verilecektir.
25
5. Haberleşme Birimi
Bu projede haberleşme birimi olarak bluetooth kullanılacaktır. Tasarlanan cihaz android bir uygulama
ile haberleştirilecektir. Bluetooth modülü olarak Şekil-4’te görülen HC-05 modülü kullanılacaktır.
Bluetooth 2.0'ı destekleyen bu kart, 2.4GHz frekansında haberleşme yapılmasına imkan sağlayıp açık
alanda yaklaşık 10 metrelik bir haberleşme mesafesine sahiptir. Bu kartın özellikleri:
Bluetooth Protokolü: Bluetooth 2.0+EDR(Gelişmiş Veri Hızı)
2.4GHz haberleşme frekansı
Hassasiyet: ≤-80 dBm
Çıkış Gücü: ≤+4 dBm
Asenkron Hız: 2.1 MBps/160 KBps
Senkron Hız: 1 MBps/1 MBps
Güvenlik: Kimlik Doğrulama ve Şifreleme
Çalışma Gerilimi: 1.8-3.6V(Önerilen 3.3V)
Akım: 50 mA
Boyutları: 43x16x7mm [16]
6. Röle ve Sürücü Devresi
Şebekedeki güç kalitesinin düşük olduğu anlarda ve kullanıcın istediği
anda prize bağlı cihazın devreden ayrılması için bir röle kullanılacaktır.
Mikrodenetleyiciler çıkış pinlerinden 25mA gibi sınırlı akım
verebilmektedir. [17] Röle ile devreyi yükten ayırmak için daha fazla
akım gerekmektedir. Bu yüzden bir sürücü devresine ihtiyaç
duyulmaktadır. Bu proje kapsamında Şekil-5’te görülen sürücüsü de
içinde olan röle kartı kullanılmıştır.
Şekil 4 - HC-05 Bluetooth modülü
Şekil 5 - Röle kartı
26
Analog Devre Tasarımı
1. Akım Ölçüm Devresi
Şebekeden çekilen akımı okumak için Low-side direnç tekniği kullanılacaktır. Akım ölçümü için 1 adet
5 mOhm değerinde direnç kullanılacaktır. Devre, anlık maksimum 10A değerinde akım geçebilecek
şekilde tasarlanacaktır. Ölçüm direnci üzerinde harcanacak maksimum güç değeri (1) denkleminde
hesaplanmıştır.
𝑃 = 𝐼𝑟𝑚𝑠2. 𝑅 = (
10
√2)
2. 0,005 = 0,25 𝑊𝑎𝑡𝑡 (1)
Bu durumda seçilen direncin 0,25 Watt olması yeterli olacaktır. 5 mOhm direnç üzerinden tepe değeri
10 Amper olan bir sinüzoidal akım geçtiğinde ölçüm direncinin üzerinde oluşan maksimum anlık
gerilim (2) eşitliğinde hesaplanmıştır.
10 𝐴 . 0,005 𝑂ℎ𝑚 = 50 𝑚𝑉 (2)
Akım sinyalinin saf sinüzoidal olduğu düşünülürse akım sinyali +10 A ile -10 A arasında salınım
yaparken ölçüm direnci üzerinde oluşan gerilim +50 mV ile -50 mV arasında salınım yapacaktır.
STM32F4 mikro denetleyicisi için analog giriş gerilim seviyesi 0V- 3V arasında olduğundan akım
sinyali bu ölçeğe sığdırılmalıdır. Analog girişe negatif gerilim veremediğimizden akım sinyalimizdeki
negatif alternans kaldırılmalıdır. Bunu sağlamak için sinyale dc offset eklemek suretiyle sinyalin tamamı
pozitif alternansa taşınmış olur. Ekleyeceğimiz offset değeri (3) eşitliğinde hesaplanmıştır.
𝐴𝑜𝑓𝑓𝑠𝑒𝑡 = (𝑉𝑚𝑎𝑥 − 𝑉min)/2 = [ 50𝑚𝑉 − (−50𝑚𝑉)]/2 = 50𝑚𝑉 (3)
Akım ölçümü için 5mOhm direnç üzerinden alınan gerilim Şekil-6’daki devre ile yükseltilmiştir. Sinyali
yükseltmek için düşük giriş offset gerilimi olan bir rail-to-rail opamp MCP6022 tercih edilmiştir.
Şekil 6 - Akım ölçüm devresi
27
Opamp evirmeyen ve toplayıcı yapısında kullanılmış olup çıkış geriliminin giriş gerilimi ile arasındaki
bağıntı (4) eşitliğinde verilmiştir.
𝐴𝑠𝑒𝑛𝑠𝑒 = (1 +𝑅3
𝑅4) . (𝐼𝑠𝑒𝑛𝑠.
𝑅2
𝑅1 + 𝑅2+ 𝐼𝑜𝑓𝑠𝑒𝑡 .
𝑅1
𝑅1 + 𝑅2) (4)
İşlem kolaylığı olması açısından R1 ve R2 dirençleri eşit seçilirse oluşan yeni eşitlik (5) eşitliğinde
verilmiştir.
𝐴𝑠𝑒𝑛𝑠𝑒 = (1 +𝑅3
𝑅4) . (
𝐼𝑠𝑒𝑛𝑠 + 𝐼𝑜𝑓𝑠𝑒𝑡
2) (5)
Isens gerilimi maksimum değerinde iken opamp çıkış geriliminin 3V olması istenmektedir. Isens ve
Ioffset gerilimi (5) denkleminde yerine koyulduğu durumda R3 ve R4 değerlerinin oranı (6)
eşitliklerinde hesaplanmıştır.
𝐴𝑠𝑒𝑛𝑠𝑒 = (1 +𝑅3
𝑅4) . (
50𝑚𝑉 + 50𝑚𝑉
2) = 3𝑉 (6.1)
(1 +𝑅3
𝑅4) = 60
𝑅3
𝑅4= 59 (6.2)
(6.2) denklemindeki oran yüksek olduğundan sinyal yükseltme işlemi iki opamp katında yapılmıştır. İlk
opamp katı 10 kat yükseltme yaparken ikinci opamp katı 6 kat yükseltme yaparak bu oran sağlanmıştır.
Ayrıca yükseltme işleminde 1KHz den yüksek frekansa sahip bileşenlerin bastırılması gerekmektedir.
Bunu sağlamak için Şekil-6’te görüldüğü gibi R6 direnci ve C3 kapasitörü alçak geçiren filtre olarak
Şekil 7 - Şebeke akımı & opamp çıkış gerilimi
28
kullanılmıştır. Seçilen değerler yerine koyulduktan sonra Proteus benzetim ortamında devre test
edilmiştir. Şebekeden çekilen akıma karşılık opamp çıkışındaki gerilim değeri Şekil-7’te verilmiştir.
Şekil-7’te görüldüğü gibi şebeke akımıyla opamp gerilimi arasında lineer bir ilişki vardır. Ayrıca opamp
geriliminin 0 V - 3 V gerilim aralığında olduğu da yukarıdaki hesapların doğruluğunu göstermektedir.
R6 ve C3 kapasitörünü koymamızın nedeni yükseltme işleminden 1KHz’den yüksek frekansa sahip
bileşenlerin bastırılmasıydı. Devrenin frekans tepkisi Şekil-8’te verilmiştir.
Şekil-8’te görüldüğü gibi 1 KHz frekansta devrenin kazancında 3dB’lik düşüş gözlenmektedir.
Şekil 8 - Akım ölçüm devresi frekans tepkisi
29
2. Gerilim Ölçüm Devresi
Şebeke gerilimi, gerilim bölücü direnç tekniği ile ölçülecektir. Anlık maksimum şebeke gerilimi 340 V
olduğu varsayılıp gerilim ölçümü için Şekil-9’daki devre kurulmuştur.
Şekil-9’da görülen R17 direncinin kullanılma amacı mikroişlemcinin adc pinini korumaktır. Maksimum
giriş gerilimi 240Vrms veya 340V tepe değeri olacak şekilde R5 ve R6 dirençleri eşitlik (7)’de
hesaplanmıştır.
𝑉𝑠𝑒𝑛𝑠𝑒 = 340.𝑅6
𝑅5 + 𝑅6= 1.24 𝑉
𝑅5
𝑅6= 273 (7)
(7) denklemindeki oranı sağlayan direnç değerleri yaklaşık 270kOhm ve 1 kOhm değerleridir. Bu
değerler altında R6 direnci üzerindeki sinyal ±1,24 V arasında salınım yapacaktır. Burada 1,24V tercih
edilmesinin nedeni kullanılabilir bir ofset gerilimi olmasıdır. Analog girişe negatif gerilim
veremediğimizden gerilim sinyalimizdeki negatif alternansı kaldırmalıdır. Bunu sağlamak için sinyale
dc offset eklemek suretiyle sinyalin tamamı pozitif alternansa taşınmış olur. Ekleyeceğimiz offset
değerini şu şekilde bulabiliriz.
𝑉𝑜𝑓𝑓𝑠𝑒𝑡 = (𝑉𝑚𝑎𝑥 − 𝑉min)/2 = (1,24 − (−1,24))/2 = 1.24 𝑉
Şekil 9 - Gerilim ölçüm devresi
30
Sinyali yükseltmek için düşük giriş offset gerilimi olan bir rail-to-rail opamp MCP6022 tercih edilmiştir.
Opamp evirmeyen ve toplayıcı yapısında kullanılmış olup çıkış geriliminin giriş gerilimi ile arasındaki
bağıntı (8) eşitliğinde verilmiştir.
𝑉𝑠𝑒𝑛𝑠𝑒 = (1 +𝑅9
𝑅10) . (𝑉𝑠𝑒𝑛𝑠.
𝑅7
𝑅7 + 𝑅8+ 𝑉𝑜𝑓𝑠𝑒𝑡 .
𝑅8
𝑅7 + 𝑅8) (8)
İşlem kolaylığı olması açısından R1 ve R2 dirençleri eşit seçilirse oluşan yeni eşitlik (9) eşitliğinde
verilmiştir.
𝑉𝑠𝑒𝑛𝑠𝑒 = (1 +𝑅9
𝑅10) . (
𝑉𝑠𝑒𝑛𝑠 + 𝑉𝑜𝑓𝑠𝑒𝑡
2) (9)
Vsens gerilimi maksimum değerinde iken opamp çıkış geriliminin 3V olması istenmektedir. Vsens ve
Voffset gerilimi (9) denkleminde yerine koyulduğu durumda R3 ve R4 değerlerinin oranı (10)
eşitliklerinde hesaplanmıştır.
𝑉𝑠𝑒𝑛𝑠𝑒 = (1 +𝑅9
𝑅10) . (
1,24𝑉 + 1,24𝑉
2) = 3𝑉 (10.1)
(1 +𝑅9
𝑅10) = 2,42
𝑅3
𝑅4= 1,42 (10.2)
Bu oranı sağlayan direnç değerleri 3,3kOhm ve 4,7kOhm’dur.
Seçilen değerler yerine koyulduktan sonra Proteus simülasyon ortamında devre test edilmiştir.
Şebekedeki gerilime karşılık opamp çıkışındaki gerilim değeri Şekil-10’da verilmiştir.
31
Şekil-10’da görüldüğü gibi şebeke gerilimiyle opamp gerilimi arasında lineer bir ilişki vardır. Ayrıca
opamp geriliminin 0 V - 3 V gerilim aralığında olduğu da yukarıdaki hesapların doğruluğunu
göstermektedir. C2 kapasitörünü koymamızın nedeni yükseltme işleminden 1KHz’den yüksek frekansa
sahip bileşenlerin bastırılmasıydı. Devrenin frekans tepkisi Şekil-11’de verilmiştir.
Şekil 11 - Gerilim ölçümü frekans tepkisi
Şekil 10 – Şebeke Gerilimi & Opamp çıkış gerilimi
32
3. Offset gerilimlerinin elde edilmesi
Akım ve gerilim ölçüm devrelerinde ihtiyaç duyulan ofset gerilimleri LM385 entegresi yardımıyla
sağlanmıştır. Akım ölçüm devresinde ihtiyaç duyulan offset gerilimi 125 mV iken gerilim ölçüm
devresinde ihtiyaç duyulan offset gerilimi 1,24 V’tur. Şekil-12’de bu gerilimleri oluşturan devre
verilmiştir.
LM385 entegresinin referans gerilim değerinin 1,24 V olmasından yararlanılarak gerilim ölçüm devresi
için gerekli olan offset gerilimi sağlanmıştır. Akım ölçüm devresi için gerekli olan 50 mV offset gerilim
değeri çok turlu trimpot yardımıyla sağlanacaktır.
4. İzolasyon devresi
Akım ve gerilim ölçümleri için kurulan devreler herhangi bir izolasyon sağlamamaktadır.
Mikrodenetleyici ile ölçüm sinyalleri arasında galvanik izolasyon sağlamak amacıyla analog izolasyon
çipi olan HCNR200 kullanılmıştır. [18] Şekil-13’te verilen devreden 2 adet kurularak akım ve gerilim
sinyalleri mikrodenetleyiciden izole edilmiştir.
Şekil 12 – Ofset gerilimleri devresi
Şekil-13 HCNR200 Analog izolasyon devresi
33
Şekil-13’teki devre Multisim ortamında kurularak ac sinyal ile teste tabi tutulmuştur. Şekil-14’te
görüldüğü gibi giriş ve çıkış sinyali çakışmıştır. Bu da analog izolasyon devresinin lineer bir çevrim
yaptığını göstermektedir.
5. Test Aşamaları
5.1. Akım Ölçüm Devresi ve Testi
Şekil-6’da verilen akım ölçüm devresi Proteus/Ares ortamında baskı devreye aktarılmış olup pcb
görüntüsü Şekil-15’te, karta basılmış hali Şekil-16’da verilmiştir.
Şekil-14 Analog izolasyon devresi testi
Şekil-15 Akım ölçüm devresi pcb görüntüsü
34
Akım ölçüm devresine dc akımlar uygulanarak modüle edilen akım sinyalinin değerleri kaydedilerek
MATLAB programında Curve Fitting uygulaması kullanılarak akım ile modüle sinyal arasında birinci
dereceden bir bağıntı elde edilmiştir. Şekil-17’de bu durum grafik halinde verilmiştir.
Curve Fitting uygulamasından elde edilen denklem yazılım kısmında adc gerilimini akım değerine
dönüştürmek için kullanılacaktır.
Şekil-16 Akım ölçüm devre kartı
Şekil-17 Akım ölçümü eğri uygunlaştırması
35
5.2. Gerilim Ölçüm Devresi ve Testi
Şekil-9 da verilen gerilim ölçüm devresi Proteus/Ares ortamında baskı devreye aktarılmış olup pcb
görüntüsü Şekil-18’de, karta basılmış hali Şekil-19’da verilmiştir.
Gerilim ölçüm devresine dc gerilimler uygulanarak modüle edilen gerilim sinyalinin değerleri
kaydedilerek MATLAB programında Curve Fitting uygulaması kullanılarak gerilim ile modüle sinyal
arasında birinci dereceden bir bağıntı elde edilmiştir. Şekil-20’de bu durum grafik halinde verilmiştir.
Şekil-18 Gerilim ölçüm devresi pcb görüntüsü
Şekil-19 Gerilim ölçüm devre kartı
36
Curve Fitting uygulamasından elde edilen denklem yazılım kısmında adc gerilimini şebeke gerilimi
değerine dönüştürmek için kullanılacaktır.
5.3. İzolasyon Devresi ve Testi
Şekil-13’te verilen analog izolasyon devresi Proteus/Ares ortamında baskı devreye aktarılmış olup pcb
görüntüsü Şekil-21’de, karta basılmış hali Şekil-22’de verilmiştir.
Analog izolasyon devresinin girişine bir ac sinyal verilerek çıkışı gözlemlenmiş olup bu teste ait
osiloskop görüntüsü Şekil-22’de verilmiştir. Şekil-22’de görüldüğü gibi giriş ve çıkış sinyalleri üst üste
çakışmıştır. Bu da analog izolasyon devresinin lineer bir çevrim yaptığını göstermektedir.
Şekil 20 Gerilim ölçümü eğri uygunlaştırması
Şekil-21 Analog izolasyon devresi pcb görüntüsü
37
5.4. Sistemin Rezistif Bir Yükte Test Edilmesi
Rezistif bir yük altında akım ve gerilim sinyalleri arasında teorik olarak faz farkı olmaması
gerekmektedir. Tasarlanan devrenin herhangi bir faz farkı oluşturup oluşturmadığını test etmek için
sistem rezistif bir yükte test edilmiş olup akım ve gerilim sinyallerine ait osiloskop görüntüsü Şekil-
23’te verilmiştir. Sistemin herhangi bir faz farkına sebebiyet vermediği görülmüştür.
Şekil-21 Analog izolasyon devre kartı
Şekil-22 İzolasyon devresi ac sinyal testi
Şekil-23 Rezistif bir yük için akım(sarı) ve gerilim(mavi) sinyalleri
38
Tek Fazlı Sinüzoidal Sistemde Temel Elektrik Parametrelerinin Hesaplanması
1. RMS Hesabı
Sürekli bir sinyalin RMS değeri (11) eşitliğinde verilmiştir.
𝐹𝑅𝑀𝑆 = √1
𝑇∫ 𝑓2(𝑡)𝑑𝑡
𝑇
0
(11)
Verilen eşitlikte FRMS, f(t) fonksiyonunun RMS değeridir. Verilen T değeri ise periyodu belirtmektedir.
Örneklenmiş bir sinyalin RMS değeri ise (12) eşitliğinde verilmiştir.
𝐹𝑅𝑀𝑆 = √1
𝑁∑ 𝑓[𝑛]
2
𝑁
𝑛=1
(12)
Verilen eşitlikte N örnekleme sayısını, n ise örneklenen sinyalin n. örneğini temsil etmektedir. [19]
Örneklenmiş bir sinyalin RMS değerini hesaplamak için çoğu enerji ölçüm çipi aşağıdaki yöntemi
kullanmaktadır. Örneğin ADE5166 enerji ölçüm çipi RMS akım değerini hesaplamak için aşağıdaki
yöntemi kullanır. [20]
Anlık akım sinyali (13) eşitliğindeki gibi yazılabilir.
𝐼(𝑡) = √2𝐼𝑅𝑀𝑆 sin(𝜔𝑡) (13)
Verilen eşitlikte 𝐼(𝑡) anlık akımı, 𝜔 açısal frekansı ve 𝑡 zamanı ifade etmektedir. Her iki tarafın karesi
alınır ve trigonometrik metotlar kullanılırsa (14) eşitliğindeki ifade elde edilir.
𝐼2(𝑡) = 2𝐼2𝑅𝑀𝑆𝑠𝑖𝑛2(𝜔𝑡)
𝐼2(𝑡) = 𝐼2𝑅𝑀𝑆 − 𝐼2
𝑅𝑀𝑆 cos(2𝜔𝑡) (14)
RMS akım değeri elde etmek için, ADC kanlından okunan değerin karesi alınır, ortalaması alınır ve son
olarak karekökü alınır. Ortalama alma işlemi bir alçak geçiren filtre yardımıyla yapılır. (14) eşitliğine
göre sinyal alçak geçiren filtreye girdiğinde yüksek frekanslı bileşen zayıflar ve RMS değerin karesi
kalır. Bu durum Şekil 24’te gösterilmiştir.
39
ADE7758 ve ADE5166 gibi bazı enerji ölçüm çipleri ise RMS değeri bulmak için ortalama mutlak değer
hesaplamasını kullanmaktadır. [21] Ortalama mutlak değer hesabı ölçülecek sinyal yalnızca temel
frekans bileşenine sahip ise doğru sonuç vermektedir. Eğer sinyalde harmonik bulunmakta ise bu
yöntem oldukça hatalı sonuç vermektedir. Ortalama mutlak değer hesabı aşağıdaki gibi tanımlanabilir.
RMS değeri hesaplanacak sinyalin yalnızca temel frekans bileşenine sahip olduğu varsayılsın. O halde
ortalama mutlak değer (15) eşitliğindeki gibi yazılabilir.
𝑉𝑂𝑀𝐷 =1
𝑇∫ |√2𝑉𝑅𝑀𝑆sin (𝜔𝑡)|𝑑𝑡
𝑇
0
(15)
𝑉𝑂𝑀𝐷 ifadesi ortalama mutlak değeri temsil etmektedir. (16) eşitliklerindeki gibi matematiksel
düzenlemeler yapılırsa ortalama mutlak değerin RMS değer ile direk olarak orantılı olduğu görülür.
Ancak daha önce bahsedildiği gibi sinyal yanız temel frekansa sahip ise bu durum geçerli olacaktır.
𝑉𝑂𝑀𝐷 =1
𝑇[ ∫ √2𝑉𝑅𝑀𝑆 sin(𝜔𝑡) 𝑑𝑡 − ∫ √2𝑉𝑅𝑀𝑆 sin(𝜔𝑡) 𝑑𝑡
𝑇
𝑇2
𝑇2
0
] (16.1)
𝑉𝑂𝑀𝐷 =𝜔
2𝜋[ ∫ √2𝑉𝑅𝑀𝑆 sin(𝜃)
𝑑𝜃
𝜔− ∫ √2𝑉𝑅𝑀𝑆 sin(𝜃)
𝑑𝜃
𝜔
2𝜋
𝜋
𝜋
0
] (16.2)
𝑉𝑂𝑀𝐷 =√2𝑉𝑅𝑀𝑆
2𝜋[∫ sin(𝜃) 𝑑𝜃 − ∫ sin(𝜃) 𝑑𝜃
2𝜋
𝜋
𝜋
0
] (16.3)
𝑉𝑂𝑀𝐷 =√2𝑉𝑅𝑀𝑆
2𝜋[ −[𝑐𝑜𝑠𝜃]0
𝜋 + [𝑐𝑜𝑠𝜃]𝜋2𝜋 ] (16.4)
Şekil 24 – RMS akım değeri sinyal işleme
40
𝑉𝑂𝑀𝐷 =√2𝑉𝑅𝑀𝑆
2𝜋[−(−1 − 1) + (1 + 1)] (16.5)
𝑉𝑂𝑀𝐷 =2√2
𝜋𝑉𝑅𝑀𝑆 (16.6)
ADE5166 ve ADE7758 çipleri ortalama mutlak değer hesaplama yöntemi Şekil-25’de gösterildiği
gibidir.
2. Aktif Güç ve Enerji Hesabı
2.1. Aktif Güç Hesabı
ADE5166 ve ADE7758 çipleri aktif gücü hesaplamak için anlık güçten faydalanır. Anlık güç sinyali
akım ve gerilim sinyallerinin çarpımından elde edilir. Geri güç faktörü olan bir yükün bir AC kaynağa
bağlandığı varsayılırsa 𝜑 gerilim ile akım arasındaki faz açısı olmak üzere anlık gerilim, anlık akım ve
anlık güç (17) eşitlikleri ile ifade edilebilir.
𝑉(𝑡) = √2𝑉𝑅𝑀𝑆 sin(𝜔𝑡) (17.1)
𝐼(𝑡) = √2𝐼𝑅𝑀𝑆 sin(𝜔𝑡 − 𝜑) (17.2)
𝑝(𝑡) = 𝑉(𝑡)𝐼(𝑡) (17.3)
𝑝(𝑡) = √2𝑉𝑅𝑀𝑆 sin(𝜔𝑡) √2𝐼𝑅𝑀𝑆 sin(𝜔𝑡 − 𝜑) (17.4)
𝑝(𝑡) = 2𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 sin(𝜔𝑡) sin(𝜔𝑡 − 𝜑) (17.5)
𝑝(𝑡) = 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆[cos(𝜑) − cos (2𝜔𝑡 − 𝜑)] (17.6)
Şekil 25 - ADE5166 ortalama mutlak değer ile RMS hesap yöntemi
41
𝑝(𝑡) = 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(𝜑) − 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(2𝜔𝑡 − 𝜑) (17.7)
Aktif güç ise (18) eşitlikleri ile hesaplanabilir.
𝑃 =1
𝑇∫ 𝑝(𝑡)𝑑𝑡
𝑇
0
(18.1)
𝑃 =1
𝑇∫ [𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(𝜑) − 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(2𝜔𝑡 − 𝜑)]
𝑇
0
𝑑𝑡 (18.2)
𝑃 =𝜔
2𝜋∫ [𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(𝜑) − 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆cos(2𝜃 − 𝜑)]
𝑑𝜃
𝜔
2𝜋
0
(18.3)
𝑃 =𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆
2𝜋∫ [cos(𝜑) − cos(2𝜃 − 𝜑)]𝑑𝜃
2𝜋
0
(18.4)
𝑃 =𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆
2𝜋[∫ cos(𝜑) 𝑑𝜃
2𝜋
0
− ∫ cos(2𝜃 − 𝜑) 𝑑𝜃2𝜋
0
] (18.5)
𝑃 = 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(𝜑) (18.6)
(17.7) ve (18.6) eşitliklerine bakarak aktif gücün, anlık güç sinyalinin DC bileşenine eşit olduğu
görülmektedir. O Yüzden ADE çipleri aktif gücü elde etmek için anlık güç sinyalinin DC bileşenini
kullanır.
42
Ancak STPM10 enerji ölçüm çipleri ADE çiplerine kıyasla farklı bir yöntem kullanır. [22] STPM10
çipinin kullandığı yöntemin blok diyagramı Şekil-26’de verilmiştir.
Anlık gerilim ve anlık akım sinyalleri (17.1) ve (17.2) eşitliklerindeki gibi kabul edilirse Şekil-23’e göre
(19) eşitlikleri yazılabilir.
𝑝1(𝑡) =𝑑𝑉
𝑑𝑡∫ 𝐼(𝑡)𝑑𝑡 (19.1)
𝑝1(𝑡) =√2𝑉𝑅𝑀𝑆 sin(𝜔𝑡)
𝑑𝑡∫ √2𝐼𝑅𝑀𝑆 sin(𝜔𝑡 − 𝜑) 𝑑𝑡 (19.2)
𝑝1(𝑡) = √2𝑉𝑅𝑀𝑆 ωcos(𝜔𝑡) √2𝐼𝑅𝑀𝑆 (−1
𝜔) 𝑐𝑜𝑠 (𝜔𝑡 − 𝜑) (19.3)
𝑝1(𝑡) = −2𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(𝜔𝑡) 𝑐𝑜𝑠 (𝜔𝑡 − 𝜑) (19.4)
𝑝1(𝑡) = −𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆[cos(2𝜔𝑡 − 𝜑) + cos(𝜑)] (19.5)
𝑝1(𝑡) = −𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(𝜑) − 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(2𝜔𝑡 − 𝜑) (19.6)
𝑝2(𝑡) = 𝑉(𝑡). 𝐼(𝑡) (19.7)
𝑝2(𝑡) = √2𝑉𝑅𝑀𝑆 sin(𝜔𝑡) √2𝐼𝑅𝑀𝑆 sin(𝜔𝑡 − 𝜑) (19.8)
𝑝2(𝑡) = 2𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 sin(𝜔𝑡) sin(𝜔𝑡 − 𝜑) (19.9)
Şekil 26 - STPM10 çipi aktif enerji ölçüm yöntemi
43
𝑝2(𝑡) = −𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆[cos(2𝜔𝑡 − 𝜑) − cos(𝜑)] (19.10)
𝑝2(𝑡) = 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(𝜑) − 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(2𝜔𝑡 − 𝜑) (19.11)
(19) eşitliklerinden aktif güç (20) denklemlerindeki gibi bulunabilir.
𝑝(𝑡) = 𝑝2(𝑡) − 𝑝1(𝑡)
2 (20.1)
𝑝(𝑡) = 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 cos(𝜑) (20.2)
STPM10 çipi enerji hesapları için yukarıdaki yöntemi kullanmaktadır.
2.2. Aktif Enerji Hesabı
𝐸 aktif enerji, 𝑡1 periyot süresi olmak üzere aktif enerji ise (21) eşitliğindeki gibi tanımlanır.
𝐸 = ∫ 𝑝(𝑡)𝑑𝑡𝑡1
0
(21)
(21) eşitliği sürekli zaman sinyalleri için geçerlidir. Ancak enerji ölçüm çipleri ayrık zamanda hesaplama
yapmaktadır. Bu yüzden enerji ölçüm çipleri 𝐸𝐷, ayrık zamanda hesaplanan enerji; n, n. örnek; N, örnek
sayısı olmak üzere aktif enerji ölçümü için (22) eşitliği kullanmaktadır.
𝐸𝐷 = ∑ 𝑝(𝑛𝑡) 𝑥 𝑡𝑁
𝑛=0 (22)
Ayrık zaman örnekleme periyodu sıfıra giderken (21) ve (22) eşitlikleri birbirine eşit olur. Bu durum
(23) eşitliğinde gösterilmiştir.
∫ 𝑝(𝑡)𝑑𝑡𝑡1
0
= lim𝑡→0
∑ 𝑝(𝑛𝑡) 𝑥 𝑡
𝑁
𝑁=0
(23)
(23) eşitliği, ayrık zaman örnekleme periyodu çok küçükken aktif enerji hesap doğruluğu oldukça
yüksektir. Bu yüzden enerji ölçüm çip geliştiricileri aktif enerji ölçüm hatasını azaltmak için ayrık
zaman örnekleme periyodunu oldukça küçük tutmaya çalışırlar. Örneğin ADE5166 ayrık zaman
örnekleme periyodu olarak 1,2µS kullanmaktadır. ADE5166 datasheetine göre aktif enerji ölçüm hatası
%0,1’dir. [20]
44
3. Reaktif Güç ve Enerji Hesabı
3.1. Reaktif Güç Hesabı
ADE enerji ölçüm çipleri reaktif güç hesabı için aşağıdaki yöntemi kullanmaktadır. Geri güç faktörüne
sahip bir yük AC kaynağa bağlandığı, anlık gerilim ve anlık akım sinyalleri (17.1) ve (17.2)
eşitliklerindeki gibi kabul edilip reaktif güç hesabı için akım sinyali 90⁰ kaydırılırsa (24) denklemindeki
tanımlanabilir.
𝐼′(𝑡) = √2𝐼𝑅𝑀𝑆 sin (𝜔𝑡 − 𝜑 +𝜋
2) (24)
Bu durumda anlık reaktif güç sinyali (q(t)) (17.1) ve (24) eşitliklerinin çarpılmasıyla (25) denklemleri
ile elde edilebilir.
𝑞(𝑡) = 𝑉(𝑡)𝐼′(𝑡) (25.1)
𝑞(𝑡) = [√2𝑉𝑅𝑀𝑆 sin(𝜔𝑡)] [√2𝐼𝑅𝑀𝑆 sin (𝜔𝑡 − 𝜑 +𝜋
2)] (25.2)
𝑞(𝑡) = 2𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 sin(𝜔𝑡) sin (𝜔𝑡 − 𝜑 +𝜋
2) (25.3)
𝑞(𝑡) = 2𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 sin(𝜔𝑡) cos( 𝜔𝑡 − 𝜑) (25.4)
𝑞(𝑡) = 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆[𝑠𝑖𝑛𝜑 + sin (2𝜔𝑡 − 𝜑)] (25.5)
𝑞(𝑡) = 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 𝑠𝑖𝑛𝜑 + 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 sin(2𝜔𝑡 − 𝜑) (25.6)
Ortalama reaktif güç ifadesi (26) denklemlerindeki gibi ifade edilebilir.
𝑄 =1
𝑇∫ 𝑞(𝑡)𝑑𝑡
𝑇
0
(26.1)
𝑄 =1
𝑇∫ [𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 𝑠𝑖𝑛𝜑 + 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 sin(2𝜔𝑡 − 𝜑)]
𝑇
0
(26.2)
𝑄 = 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 𝑠𝑖𝑛𝜑 (26.3)
(25.6) eşitliğindeki anlık reaktif güç ifadesinin DC bileşeni alınarak ortalama reaktif güç ifadesini
bulunabilir. Bu yüzden reaktif gücü hesaplamak için gerilim sinyali ve 90⁰ kaydırılmış akım sinyali
çarpılarak alçak geçiren filtreden geçirilir.
45
STPM10 çipleri reaktif gücü hesaplamak için ADE çiplerine kıyasla farklı bir yöntem kullanır. Bu
yöntem Şekil-15’te gösterilmiştir. [22]
3.2. Reaktif enerji hesabı
𝐸𝑅, reaktif enerji; 𝑞(𝑡), anlık reaktif güç olmak üzere reaktif enerji (27) eşitliğindeki gibi yazılabilir.
𝐸𝑅 = ∫ 𝑞(𝑡)𝑑𝑡𝑡1
0
(27)
(27) eşitliği sürekli zaman sinyalleri için geçerlidir. Ancak enerji ölçüm çipleri ayrık zamanda hesaplama
yapmaktadır. Bu yüzden enerji ölçüm çipleri 𝐸𝑅, ayrık zamanda hesaplanan reaktif enerji; n, n. örnek;
N, örnek sayısı olmak üzere reaktif enerji ölçümü için (28) eşitliği kullanmaktadır.
𝐸𝑅 = lim𝑡→0
∑ 𝑞(𝑛𝑡) 𝑥 𝑡𝑁
𝑛=0 (28)
Pratik olarak ayrık zaman örnekleme periyodu sıfır alınamaz. Bu yüzden enerji ölçüm çip geliştiricileri
aktif enerji ölçüm hatasını azaltmak için ayrık zaman örnekleme periyodunu oldukça küçük tutmaya
çalışırlar. Örneğin ADE5166 ayrık zaman örnekleme periyodu olarak 1,2µS kullanmaktadır. [20]
4. Görünür Güç ve Enerji Hesabı
4.1. Görünür Güç Hesabı
ADE7758 çipi görünür güç hesabı için aritmetik bir yaklaşım kullanır. Görünür gücü elde etmek için
(29) eşitliğini kullanır. [21]
𝑆 = 𝑉𝑅𝑀𝑆𝐼𝑅𝑀𝑆 (29)
Ortalama görünür güç için bu çarpımın sonucu alçak geçiren filtreden geçirilir.
4.2. Görünür Enerji Hesabı
𝐸𝑆, görünür enerji; 𝑆(𝑡), anlık görünür güç olmak üzere görünür enerji (30) eşitliğindeki gibi yazılabilir.
𝐸𝐴 = ∫ 𝑆(𝑡)𝑑𝑡𝑡1
0
(30)
Ayrık zamanda görünür enerjiyi hesaplamak için (31) eşitliği kullanılabilir.
𝐸𝐴 = lim𝑡→0
∑ 𝑆(𝑛𝑡) 𝑥 𝑡𝑁
𝑛=0 (31)
46
Elektrik Parametreleri Hesabı Algoritma Testleri
1. RMS değer Algoritmaları
Yukarıdaki bölümlerde çeşitli çiplerin RMS hesabı için kullandığı yöntemler belirtildi. Bu yöntemlerden
biri eşitlik (15) ve (16) eşitlikleri ile belirtilen ortalama mutlak değer hesabıdır. İkinci bir yöntem ise
(11) ve (12) eşitlikleri ile belirtilen True RMS yöntemidir. Son olarak yukarıdaki bölümlerde
bahsedilmeyen bir yöntem olarak sinyalin maksimum değerinden faydalanarak (32) eşitliğinden RMS
değer bulunabilir. Ancak bu eşitlik ortalama mutlak değer yöntemindeki gibi yalnızca saf sinüzoidal
sinyaller için geçerlidir.
𝑉𝑅𝑀𝑆 =𝑉𝑚𝑎𝑥
√2 (32)
Tartışılan bu 3 yöntem MATLAB ortamında test edilecektir. Bu yöntemleri kıyaslamak için test sinyali
olarak şebeke gerilimi aşağıdaki kod parçası ile modellenmiştir.
T=20; % 20 ms periyod
t=0:0.1:20; % zaman vektörü 100us örnek.
f=1/T; % frekans
Gerilim=100*sin(2*pi*f*t); % test sinyali
Oluşturulan test sinyalinden sonra bahsedilen RMS değer algoritmaları test edilmiştir. Bu test için
yazılan kod parçası aşağıda verilmiştir.
Vomd=0;
for temp=1:201
Vomd=Vomd+abs(Gerilim(temp));
end
Vrms1=(Vomd/201)/0.9 %ortalama mutlak değer yöntemi
Vrms2=0;
for i=1:201
Vrms2=Vrms2+Gerilim(i)^2;
end
Vrms2=sqrt(Vrms2/201)%TRUE RMS yöntemi
max=0;
for n=1:201
if (max>Gerilim(n))
max=max;
else
max=Gerilim(n);
47
end
end
Vrms3=max/1.4142 % Maksimum nokta yöntemi
Bu kod parçasının çıktısı aşağıda verilmiştir.
Vrms1 = 70.3778
Vrms2 = 70.5346
Vrms3 = 70.7114
2. Aktif Güç Algoritmaları
Daha önce bahsedildiği gibi ADE çipleri Aktif gücü hesaplamak için anlık güç sinyalinin DC bileşenini
kullanmaktadır. Bir sinyalin DC bileşenini elde etmek için kesim frekansı çok düşük aktif veya pasif bir
filtre gereklidir. Böylesi bir filtreyi analog devre ile oluşturmak hem zahmetli hem de kapladığı alan
bakımından bu projede tercih edilmeyecektir. Sayısal filtre kullanmak ise işlemci yükü gerektirecektir.
Bu yüzden aktif güç hesabı için (18) eşitliği kullanılacaktır. Aktif güç hesabı için önce akım ve gerilim
sinyalleri oluşturulmuştur. Gerilim ve akım sinyalleri arasında 45⁰’lik faz farkı olduğu varsayılmıştır.
Aktif güç hesabı için yazılan kod parçası aşağıda verilmiştir.
T=20; % 20 ms periyod
t=0:0.1:20; % zaman vektörü 100us örnek.
f=1/T; % frekans
Gerilim=100*sin(2*pi*f*t); % Gerilim test sinyali
Akim=10*sin(2*pi*f*t-pi/4); % Akim test sinyali
AnlikGuc=Gerilim.*Akim;
P=0;
for i=1:201
P=P+AnlikGuc(i);
end
P=(P/201) % Aktif güç
Bu kod parçasının çıktısında aktif güç, P = 351.7944 Watt olarak bulunmuştur.
48
3. Görünür Güç Algoritmaları
Görünür güç hesabı için (29) eşitliği kullanılacaktır. Bu eşitlikteki RMS değerler için ortalama mutlak
değer yöntemi kullanılacaktır. Görünür güç hesabı için yazılan kod parçası aşağıda verilmiştir.
T=20; % 20 ms periyod
t=0:0.1:20; % zaman vektörü 100us örnek.
f=1/T; % frekans
Gerilim=100*sin(2*pi*f*t); % Gerilim test sinyali
Akim=10*sin(2*pi*f*t-pi/4); % Akim test sinyali
Vomd=0;Iomd=0;
for temp=1:201
Vomd=Vomd+abs(Gerilim(temp));
Iomd=Iomd+abs(Akim(temp));
end
Vrms=(Vomd/201)/0.9; %ortalama mutlak değer yöntemi
Irms=(Iomd/201)/0.9; %ortalama mutlak değer yöntemi
S=Vrms*Irms
Bu kod parçasının çıktısında S = 498.0547 VAR olarak bulunmuştur.
4. Güç Faktörü Algoritmaları
Güç faktörünü bulmak için iki yöntemden söz edilebilir. Aktif güç ve görünür güç verileri mevcut iken
(33) eşitliği ile güç faktörü kolayca bulunabilir.
𝑝𝑓 =𝑃
𝑆=
𝑃
𝑉𝑟𝑚𝑠 ∗ 𝐼𝑟𝑚𝑠 (33)
Diğer bir yöntem olarak gerilim ve akım sinyallerinin sıfır geçiş noktaları tespit edilerek sıfır geçişleri
arasındaki süre hesaplanır. Daha sonra bulunan bu sürenin derece karşılığı bulunarak güç faktörü
hesaplanabilir. Sıfır geçiş noktaları analog bir devre ile veya yazılımsal olarak bulunabilir. Analog devre
yer kaplaması ve maliyeti arttırması yönünden tercih edilmemektedir. Yazılımsal olarak sıfır geçiş
noktalarının bulunabilmesine rağmen bu projede aktif güç ve görünür güç verileri mevcut olduğu için
tercih edilmesi yazılımsal yük getirecektir. Bu yüzden güç faktörü hesabı için (33) eşitliği
kullanılacaktır.
49
STM32F4 Yazılımı
1. Örnekleme Frekansı Seçimi
Elektrik parametrelerinin ölçümünde en fazla 10. harmonik bileşeni dikkate alınacaktır.
Nyquist teoremine göre örnekleme frekansı en az 1 KHz olmalıdır. Bir periyottaki örnekleme sayısının
2’nin kuvveti şeklinde seçilmesi sinyal işleme algoritmalarında kolaylık sağlayacağından örnekleme
frekansı 3,2 KHz seçilmiştir. Yani bir şebeke periyodunda 64 örnek alınacaktır.
2. ADC kullanımı
Aktif Güç, reaktif güç ve güç faktörünün hesaplanmasında akım ve gerilim sinyalleri kullanılmaktadır.
Bu parametrelerin doğru hesaplanması için örneklenen akım ve gerilim sinyalinin aynı andaki
değerlerinin kullanılması gerekir. Ancak sıradan işlemcilerde bu mümkün değildir. Sıradan işlemcilerde
gerilim ve akım sinyali birbiri ardına okunabilmektedir. Ancak bu iki ölçüm arasındaki süre çok kısa
tutulursa bu fark göz ardı edilebilmektedir. Ancak bu proje kapsamında kullanılan mikrodenetleyici olan
STM32F4 güç ölçümleri için bir adc bloğuna sahiptir. İki adet adc ölçümünü aynı anda yapmaya olanak
sağlamaktadır. Dolayısı ile aktif güç, reaktif güç ve güç faktörü gibi parametreler doğru bir biçimde
ölçülmektedir. Eş zamanlı adc ölçümüne ait görsel Şekil-27’de verilmiştir. [23]
STM32F4 işlemcisine gömülen program Keil uVision5 ortamında C dili kullanılarak yazılmıştır.
Yazılan kod Ek-1’de verilmiştir.
Şekil 23 Eş zamanlı çift adc ölçümü
50
Android Uygulama
Hesaplanan elektrik parametrelerini görüntülemek ve prizi uzaktan kontrol etmek amacıyla App
Inventor programında bir uygulama geliştirilmiştir. Geliştirilen android uygulamanın kod parçaları EK-
2’de verilmiştir.
Sistem Tasarımı ve Testleri
Tasarlanan devre kartları bir kutu içerisine katlar şeklinde koyulmuş olup Şekil-28’deki gibi bağlanacak
cihaz için en üste bir priz de monte edilmiştir. Daha sonra Şekil-29’daki gibi dış yüzeyi kapatılarak
sadece STM32F4 kartına giden kablolar dışarıda bırakılmıştır.
Şekil 24 Sistem tasarım aşaması
Şekil 25 Son sistem görüntüsü
51
Elektrik Parametreleri Hesabı Algoritma Seçimi
Elektrik parametrelerinin hesaplanması aşağıdaki sıra ile yapılmıştır.
1. Akım ve gerilim adc değerlerini ölç.
2. Adc değerlerini gerçek değerler dönüştür.
3. Anlık akım ve gerilim değerinden anlık güç değerini hesapla
4. Bir periyot sonunda anlık güç değerlerinden ortalama gücü hesapla
5. Bir periyot sonunda anlık akım ve gerilim değerlerinden true rms hesabı ile akımın ve gerilimin
rms değerlerini elde et
6. Akım ve gerilimin rms değerlerini kullanarak görünür gücü hesapla
7. Ortalama güç ve görünür güç değerlerini kullanarak güç faktörünü hesapla
8. Görünür güç ve aktif güç değerlerinden reaktif gücü hesapla
1. Yüksüz Çalışma Testi
Sistem herhangi bir yük bağlanmadan test edilmiştir. Bu durumda oluşan android uygulama görüntüsü
Şekil-30’da verilmiştir.
Şekil 30 Yüksüz çalışma durumunda android uygulama görüntüsü
52
2. Fön Makinesi ile Çalışma
Sistem 1200 Watt’lık, 2 kademeli bir fön makinesi ile test edilmiştir. Fön makinesi ilk kademede iken
uygulama görüntüsü Şekil-31’de android uygulama görüntüsü Şekil-32’de verilmiştir.
Şekil 31 Fön makinesi ilk kademe sistem görüntüsü
Şekil 32 Fön makinesi ilk kademe uygulama görüntüsü
53
Fön makinesi ikinci kademede iken uygulama görüntüsü Şekil-33’te verilmiştir.
3. Kahve Makinesi ile Çalışma
1000 Watt’lık kahve makinesi ile sistem test edilmiştir. Kahve makinesi takılı iken uygulama görüntüsü
Şekil-34’te verilmiştir.
Şekil 33 Fön makinesi ikinci kademe uygulama görüntüsü
Şekil 34 Kahve makinesi uygulama görüntüsü
54
4. Yumurta Haşlayıcı Makinesi ile Çalışma
360 Watt’lık yumurta haşlayıcı ile sistem test edilmiş olup uygulama görüntüsü Şekil-35’te verilmiştir.
Performans
Sonuç olarak tasarlanan sistem maksimum 380 Vrms gerilimi, 7 Arms, anlık 10 A akımı kadar
çalışmaktadır. Öneri ve gelişme raporunda sistemin 25 Ampere kadar çalışacağı söylenmişti. Ancak 25
Amper akım oldukça yüksek bir akım olduğundan hem teknik zorluklar hem de tasarlanan cihazın ev
kullanımı için bu amper değerinin yüksek olduğu düşünülerek bu değer 10 Amper değerine
düşürülmüştür. Cihazın son hali ev elektroniği uygulamalarına uygundur. Endüstriyel kullanım için
mevcut devrede güce göre devre elemanları değiştirilerek ve pcb yolları tekrar düzenlenerek uyum
sağlanabilir.
Şekil 35 Yumurta Haşlayıcı uygulama görüntüsü
55
Sonuç
Bu tez çalışmasında prize takılan 2kW’a kadar olan herhangi bir cihaza ait elektrik parametreleri başarılı
bir şekilde ölçülmüş ve bir android uygulamada raporlanmıştır. Güç katsayısının takibi yapılıp 0.6’dan
düşük değerlerde koruma moduna geçmiştir. Ayrıca 200 V gerilimin altında ve 240 V gerilimin üstünde
cihaz korumaya geçmiştir.
Tasarım ve davranış özellikleri
Tasarlanan sistem maksimum 380 Vrms gerilimi, 7 Arms, anlık 10 A akımı kadar çalışmaktadır. Bu
sayede kullanıcı, ürünü çoğu ev elektroniği uygulamalarında kullanabilir. Elektrik parametrelerinin
hesabında en çok şebeke frekansının 10. harmonik bileşeni dikkate alınmıştır. Daha yüksek bileşenli
harmonikler dikkate alınmamıştır. Elektrik parametreleri 5 periyottaki değerlerin ortalaması olup her 3
saniyede bir kez android uygulamadaki değerler güncellenmektedir.
İleriye dönük çalışmalar
Bu çalışmada haberleşme birimi olarak bluetooth kullanıldı. Ancak sistem, bir wi-fi modülün kolayca
eklenebileceği bir yapıdadır. Bu sayede internet üzerinden cihaza erişim sağlanabilir. Kullanılan
opamplar, izolasyonlu opamplar ile değiştirilerek bu uygulamada kullanılan harici bir izolasyon devresi
kaldırılabilir. Ayrıca akım ölçümü, düşük güç ve büyük güç olarak iki ayrı kademede yapılarak çeşitli
güçteki uygulamalara uyum sağlanabilir.
56
Referanslar
[1] E. Irmak, A. Calpbinici ve N. Güler, «Orta Ölçekli Bir İşletmenin Enerji İzleme Sisteminin
Tasarlanması,» Pamukkale Üniversitesi Mühendislik Bilimleri Dergisi, cilt 18, no. 2, pp. 123-131,
2012.
[2] W. P. Yaowaluk Thongkhao, «A Low-cost Wi-Fi Smart Plug with On-off and Energy Metering
Functions,» 2016.
[3] H. Morsali, S. M. Shekarabi ve K. Arkademi, «Smart Plugs for Building Energy Management
Systems,» 2011.
[4] T. Ganu, V. Arya ve S. A. Husain, «nPlug: A Smart Plug for Alleviating Peak Loads,» India.
[5] Microchip Technology Inc., «Designing Energy Meters with the PIC16F873A,» 2005.
[6] I. Horvat, N. Lukac, R. Pavlovic ve D. Starcevic, «Smart Plug solution based on Bluetooth Low
Energy,» 2015.
[7] M. Choi, W.-K. Park ve I. Lee, «Smart Office Energy-Saving Service Using Bluetooth Low
Energy Beacons and Smart Plugs,» Deajeon,Korea, 2015.
[8] M. S. Ahmed, A. Mohamed ve H. Shareef, «Smart Plug Prototype for Monitoring Electrical
Appliances in Home Energy Management System,» 2015.
[9] O. ELMA ve U. S. SELAMOĞULLARI, «A Home Energy Management Algorithm with Smart
Plug for Maximized Customer Comfort,» 2015.
[10] Yang Zhen, Microchip Technology Inc, «AN1332 Current Sensing Circuit Concepts and
Fundamentals,» 2010-2011.
[11] Microchip Technology Inc, AN1332 Current Sensing Circuit Concepts and Fundamentals, 2011.
[12] Y. Bryan, «Components and Methods for Current Measurement,» Power Electronics Technology,
2012.
57
[13] D.Mohankumar, «Drawbacks of Transformerless power supply,» [Çevrimiçi]. Available:
https://dmohankumar.wordpress.com/2015/02/11/drawbacks-of-transformerless-power-supply/.
[Erişildi: 17 Şubat 2017].
[14] «STM32F4DISCOVERY Discovery kit with STM32F407VG MCU,» [Çevrimiçi]. Available:
http://www.st.com/en/evaluation-tools/stm32f4discovery.html. [Erişildi: 16 Şubat 2017].
[15] STMicroelectronics, «RM0090 Reference manual,» STMicroelectronics, 2016.
[16] «HC-05 Bluetooth modülü,» [Çevrimiçi]. Available: http://www.robotistan.com/hc05-bluetooth-
serial-modul-karti-hc05-bluetooth-to-serial-port-module-br. [Erişildi: 17 Şubat 2017].
[17] STMicroelectonics, %1 içinde STM32F405xx STM32F407xx Datasheet - production data, 2016,
p. 79.
[18] Avago Technologies, «HCNR200 and HCNR201 Application Note 5394».
[19] K. Weranga, S. Kumarawadu ve D. Chandima, Smart Metering Design and Applications,
Springer, 2014.
[20] «ADE 5166 Data Sheet,» [Çevrimiçi]. Available: http://www.analog.com/en/analog-to-
digital.../ade5166/.../product.html. [Erişildi: 21 Haziran 2012].
[21] «ADE 7758 Data Sheet,» [Çevrimiçi]. Available: http://www.analog.com/static/imported-
files/data_sheets/ADE7758.pdf. [Erişildi: 3 Temmuz 2012].
[22] «STPM10 Data Sheet,» [Çevrimiçi]. Available: www.st.com/internet/analog/product/250603.jsp.
[Erişildi: 21 Haziran 2012].
[23] STMicroelectronics, «AN3116 Application note STM32™’s ADC modes and their applications,»
2010.
58
59
EK- 1 STM32F4 PROJE KODLARI
/* Program: Akilli Priz Yazar : Seyit Yildirim */ #include "stm32f4xx.h"// Device header #include "main.h" #include <math.h> #include "stdio.h" #define MAX_STRLEN 12 #define birimfiyat 0.214058 /* Özel degiskenler ---------------------------------------------------------*/ volatile uint16_t aADCDualConvertedValue[2]; // Adc degerlerinin tutuldugu yer volatile int sample=0; uint16_t periyot=0; volatile uint8_t bayrak=0; static uint16_t k=0,sayac=0,sayac2=0,dakika=0,saat=0; volatile double AdcOffset=100, span=4200; volatile double AdcGerilim[64],AdcAkim[64]; volatile double OGerilim[64], OAkim[64]; volatile double Gerilim[64],Akim[64]; volatile double Anlik_Guc[64]; volatile double P[5]={0,0,0,0,0}, S[5]={0,0,0,0,0} , Q[5]={0,0,0,0,0}; volatile double Port=0, Qort=0, Sort=0, pfort=0, Vrmsort=0, Irmsort=0; volatile double AktifPower=0, ReaktifPower=0, AppearantPower=0, PowerFactor=0, VoltageRms=0, CurrentRms=0; volatile double powerfactor[5]={0,0,0,0,0}; volatile double Vtop=0, Itop=0; volatile double Vrms[5]={0,0,0,0,0},Irms[5]={0,0,0,0,0}; volatile char received_string[MAX_STRLEN+1]; char transmit_string[50]; int veri; volatile double HarcananEnerji=0,HarcananTutar=0; /*---------------------------------------------------------------------------*/ /* Fonksiyon ön tanimlamalari------------------------------------------------*/ static void DMA_Config(void); static void GPIO_Config(void); void TIM3_Config(void); void init_USART1(uint32_t baudrate); void USART_puts(USART_TypeDef* USARTx, volatile char *s); void initrcc(void); void AdcCommon(void); void Delay(__IO uint32_t nCount); void Role_init(void); /*---------------------------------------------------------------------------*/
60
/* DMA & ADC veri transferi bittiginde yapilacak islemler--------------------*/ void DMA2_Stream0_IRQHandler(void) { //Test on DMA1 Channel0 Transfer Complete interrupt if(DMA_GetITStatus(DMA2_Stream0,DMA_IT_TCIF0)) { AdcGerilim[sample] =(double)aADCDualConvertedValue[0]; AdcAkim[sample] =(double)aADCDualConvertedValue[1]; OGerilim[sample] =(AdcGerilim[sample]*3/4096); OAkim[sample] =(AdcAkim[sample]*3/4096); Gerilim[sample] =219*OGerilim[sample]-242.74; Akim[sample] = (5.72*OAkim[sample]-7.98)*1.6; Anlik_Guc[sample] =Gerilim[sample]*Akim[sample]; // Anlik Güç degeri P[periyot]=P[periyot]+(Anlik_Guc[sample]); Vtop=Vtop+Gerilim[sample]*Gerilim[sample]; Itop=Itop+Akim[sample]*Akim[sample]; if(sample>62) { P[periyot]=P[periyot]/64; Vrms[periyot]=sqrt(Vtop/64); Irms[periyot]=sqrt(Itop/64); if (Irms[periyot]<1) { Irms[periyot]=0; P[periyot]=0; Q[periyot]=0; S[periyot]=0; powerfactor[periyot]=1; } else { Irms[periyot]=Irms[periyot]; S[periyot]=Vrms[periyot]*Irms[periyot]; powerfactor[periyot]=P[periyot]/S[periyot]; Q[periyot]=sqrt(S[periyot]*S[periyot]-P[periyot]*P[periyot]); } Vtop=0; Itop=0; if(periyot==4) { for(k=0;k<5;k++) { Vrmsort=Vrmsort+Vrms[k];
61
Irmsort=Irmsort+Irms[k]; Sort=Sort+S[k]; Port=Port+P[k]; Qort=Qort+Q[k]; pfort=pfort+powerfactor[k]; } VoltageRms=Vrmsort/5; CurrentRms=Irmsort/5; AppearantPower=Sort/5; AktifPower=Port/5; ReaktifPower=Qort/5; PowerFactor=pfort/5; if(PowerFactor>0.99) PowerFactor=0.99; periyot=0; Vrmsort=0; Irmsort=0; Sort=0; Port=0; Qort=0; pfort=0; if(bayrak==0) { if(PowerFactor<0.6) { GPIO_ResetBits(GPIOB,GPIO_Pin_0); GPIO_ResetBits(GPIOB,GPIO_Pin_1); } else { GPIO_SetBits(GPIOB, GPIO_Pin_0); GPIO_SetBits(GPIOB, GPIO_Pin_1); }
if(VoltageRms>240 && VoltageRms<200) { GPIO_ResetBits(GPIOB,GPIO_Pin_0); GPIO_ResetBits(GPIOB,GPIO_Pin_1); } else { GPIO_SetBits(GPIOB, GPIO_Pin_0); GPIO_SetBits(GPIOB, GPIO_Pin_1); } } } sample=0; periyot++;
62
} sample++; if(sample==65) sample=0; /*------------------------------------------------------------------------------*/ DMA_ClearITPendingBit(DMA2_Stream0,DMA_IT_TCIF0); } } /*---------------------------------------------------------------------------*/ void USART1_IRQHandler(void) {
if( USART_GetITStatus(USART1, USART_IT_RXNE) ) { static uint8_t cnt = 0; char t = USART1->DR; if( (t != '\n') && (cnt < MAX_STRLEN) ){ received_string[cnt] = t; cnt++; } else {cnt = 0; } veri=received_string[0]; if (veri=='b') { bayrak = !bayrak; if(bayrak==0) { GPIO_SetBits(GPIOB, GPIO_Pin_1); } else { GPIO_ResetBits(GPIOB, GPIO_Pin_1); } } USART_ClearITPendingBit(USART1, USART_IT_RXNE); } } void SysTick_Handler(void) {
63
if(sayac==3000) { HarcananEnerji=(AktifPower*saat)/1000; HarcananTutar=HarcananEnerji*birimfiyat; sayac=0; sayac2++; sprintf (transmit_string,"%.2f|%.2f|%.2f|%.2f|%.2f|%.2f|%.2f|%.2f",VoltageRms,CurrentRms,AktifPower,ReaktifPower,AppearantPower,PowerFactor,HarcananEnerji,HarcananTutar); USART_puts(USART1,transmit_string); if(sayac2==20) { sayac2=0; dakika++; if(dakika==60) { dakika=0; saat++; } } } sayac++; } int main(void) { initrcc(); SysTick_Config(SystemCoreClock / 1000); init_USART1(9600); GPIO_Config(); TIM3_Config(); TIM_Cmd(TIM3, ENABLE); DMA_Config(); AdcCommon(); Role_init(); while (1); } /* Gerekli donanimlarin clock hattinin açilmasi-------------------------------------*/ void initrcc(void) { RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_DMA2, ENABLE);
64
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC3, ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); } /*----------------------------------------------------------------------------------*/ static void GPIO_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; /* ADC Channel 10 -> PC0 ADC Channel 11 -> PC1 */ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN; GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL ;//We don't need any pull up or pull down GPIO_Init(GPIOC, &GPIO_InitStructure); } void AdcCommon(void) { ADC_InitTypeDef ADC_InitStruct; ADC_CommonInitTypeDef ADC_CommonInitStruct; /* ADC Common Init **********************************************************/ ADC_CommonInitStruct.ADC_Mode = ADC_Mode_Independent; ADC_CommonInitStruct.ADC_Prescaler = ADC_Prescaler_Div2; ADC_CommonInitStruct.ADC_DMAAccessMode = ADC_DMAAccessMode_Disabled; ADC_CommonInitStruct.ADC_TwoSamplingDelay = ADC_TwoSamplingDelay_5Cycles; ADC_CommonInit(&ADC_CommonInitStruct); ADC_DeInit(); ADC_InitStruct.ADC_Resolution = ADC_Resolution_12b ADC_InitStruct.ADC_ScanConvMode = ENABLE ADC_InitStruct.ADC_ContinuousConvMode = DISABLE ADC_InitStruct.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_Rising; ADC_InitStruct.ADC_ExternalTrigConv = ADC_ExternalTrigConv_T3_TRGO; ADC_InitStruct.ADC_DataAlign = ADC_DataAlign_Right; ADC_InitStruct.ADC_NbrOfConversion = 2; ADC_Init(ADC3, &ADC_InitStruct); ADC_RegularChannelConfig(ADC3, ADC_Channel_10, 1, ADC_SampleTime_3Cycles);//PC0 ADC_RegularChannelConfig(ADC3, ADC_Channel_11, 2, ADC_SampleTime_3Cycles);//PC1
65
ADC_DMARequestAfterLastTransferCmd(ADC3, ENABLE); ADC_DMACmd(ADC3, ENABLE); ADC_Cmd(ADC3, ENABLE); ADC_SoftwareStartConv(ADC3); } static void DMA_Config(void) { DMA_InitTypeDef DMA_InitStruct; NVIC_InitTypeDef NVIC_InitStructure; DMA_InitStruct.DMA_Channel = DMA_Channel_2; DMA_InitStruct.DMA_PeripheralBaseAddr = (uint32_t)&ADC3->DR; DMA_InitStruct.DMA_Memory0BaseAddr = (uint32_t)&aADCDualConvertedValue; DMA_InitStruct.DMA_DIR = DMA_DIR_PeripheralToMemory; DMA_InitStruct.DMA_BufferSize = 2; DMA_InitStruct.DMA_PeripheralInc = DMA_PeripheralInc_Disable; DMA_InitStruct.DMA_MemoryInc = DMA_MemoryInc_Enable;
DMA_InitStruct.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord; DMA_InitStruct.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord; DMA_InitStruct.DMA_Mode = DMA_Mode_Circular; DMA_InitStruct.DMA_Priority = DMA_Priority_High; DMA_InitStruct.DMA_FIFOMode = DMA_FIFOMode_Disable; DMA_InitStruct.DMA_FIFOThreshold = DMA_FIFOThreshold_HalfFull; DMA_InitStruct.DMA_MemoryBurst = DMA_MemoryBurst_Single; DMA_InitStruct.DMA_PeripheralBurst = DMA_PeripheralBurst_Single; DMA_Init(DMA2_Stream0, &DMA_InitStruct); DMA_Cmd(DMA2_Stream0, ENABLE); NVIC_InitStructure.NVIC_IRQChannel = DMA2_Stream0_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); DMA_ITConfig(DMA2_Stream0, DMA_IT_TC, ENABLE);
DMA_Cmd(DMA2_Stream0, ENABLE); } void Delay(__IO uint32_t nCount) { while(nCount--) { } } static void TIM3_Config(void)
66
{ TIM_TimeBaseInitTypeDef TIM_BaseStruct; TIM_BaseStruct.TIM_Prescaler = 0; TIM_BaseStruct.TIM_CounterMode = TIM_CounterMode_Up; TIM_BaseStruct.TIM_Period = 26249; TIM_BaseStruct.TIM_ClockDivision = TIM_CKD_DIV1; TIM_BaseStruct.TIM_RepetitionCounter = 0; TIM_TimeBaseInit(TIM3, &TIM_BaseStruct); TIM_SelectOutputTrigger(TIM3, TIM_TRGOSource_Update); TIM_Cmd(TIM3, ENABLE); } /**/ void init_USART1(uint32_t baudrate) { GPIO_InitTypeDef GPIO_InitStruct; USART_InitTypeDef USART_InitStruct; NVIC_InitTypeDef NVIC_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE); RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE); GPIO_InitStruct.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStruct.GPIO_OType = GPIO_OType_PP; GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_UP; GPIO_Init(GPIOB, &GPIO_InitStruct); GPIO_PinAFConfig(GPIOB, GPIO_PinSource6, GPIO_AF_USART1); GPIO_PinAFConfig(GPIOB, GPIO_PinSource7, GPIO_AF_USART1); USART_InitStruct.USART_BaudRate = baudrate; USART_InitStruct.USART_WordLength = USART_WordLength_8b; USART_InitStruct.USART_StopBits = USART_StopBits_1; USART_InitStruct.USART_Parity = USART_Parity_No; USART_InitStruct.USART_HardwareFlowControl = USART_HardwareFlowControl_None; USART_InitStruct.USART_Mode = USART_Mode_Tx | USART_Mode_Rx; USART_Init(USART1, &USART_InitStruct); USART_ITConfig(USART1, USART_IT_RXNE, ENABLE); NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
67
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1 ; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); USART_Cmd(USART1, ENABLE); } void USART_puts(USART_TypeDef* USARTx, volatile char *s) { while(*s) { while (!USART_GetFlagStatus(USART1, USART_FLAG_TXE)); USART_SendData(USARTx, *s); *s++; } } /*...*/ void Role_init(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_AHB1PeriphClockCmd (RCC_AHB1Periph_GPIOB, ENABLE); GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1 ; GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz; GPIO_Init(GPIOB, &GPIO_InitStructure); } #ifdef USE_FULL_ASSERT /** * @brief Reports the name of the source file and the source line number * where the assert_param error has occurred. * @param file: pointer to the source file name * @param line: assert_param error line source number * @retval None */ void assert_failed(uint8_t* file, uint32_t line) { /* User can add his own implementation to report the file name and line number, ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ /* Infinite loop */ while (1) { }
68
} #endif
69
EK-2 ANDROID UYGULAMA KOD BLOKLARI
70
EK-3: Lisans Bitirme Projesi Özdeğerlendirme Formu
1. Projeniz tasarım boyutu nedir (prototip gerçekleştirme, benzetme veya analiz) ?
Proje kapsamında bir prototip üretimi gerçekleştirilmiştir.
2. Kullandığınız tasarım yöntem (yöntemleri) açıklayınız:
Akım ölçümü için akım algılayıcı direnç metodu kullanılırken gerilim ölçümü için gerilim bölücü
direnç metodu kullanılmış olup iki adet izole devresi ile akım ve gerilim sinyalleri izole biçimde
mikroişlemciye gönderilmiştir. Haberleşme birimi olarak bluetooth ve android uygulama
kullanılmıştır.
3. Kullandığınız veya dikkate aldığınız mühendislik standartları nelerdir?
Elektrik ölçümlerinde Avrupa standartları olan EN 50470-1:2006 ve EN 50470-3:2006
standartları dikkate alınacaktır.
4. Kullandığınız veya dikkate aldığınız gerçekçi kısıtlar nelerdir? (Ekonomi, Çevre sorunları,
Sürdürülebilirlik, Üretilebilirlik, Etik, Sağlık, Güvenlik, Sosyal ve politik sorunlar)
Tasarım sırasında ekonomik kısıtlar etkili olmuştur. Üretilebilirlik etkeni devre elemanları
seçim noktasında etkili olmuştur.
5. Çalışmanızın daha önce yapılmış olan çalışmalardan ne farkları var (standart bakımından,
kullanan malzeme bakımından v.s)
Güç faktörü ölçümünde zero cross devresi kullanılmamıştır. Daha önce yapılan çalışmalarda
elektrik parametrelerinin ölçümü için enerji ölçüm çipleri kullanılmıştır. Bu çalışmada enerji
ölçüm çipi kullanılmamış olup bu işlemler mikroişlemciye doğrudan yaptırılmıştır.
6. Proje çalışma takımınızı ve çalışma tecrübenizi açıklayın. (takım çalışması faaliyetleri
hakkında bilgi veriniz) (disiplin içi takım çalışması, çok disiplinli takım, bireysel çalışma)
Bireysel çalışma
71
6. Proje yönetimini nasıl gerçekleştirdiniz açıklayınız:
a) iş yükü ve zamanı nasıl paylaştınız?
Proje ile ilgili olarak ilk önce yaklaşık 2 ay süren teorik çalışmalar yapıldı. İkinci aşamada
ise yaklaşık 2 ay süren devre tasarımı ve simülasyonları gerçekleştirildi. Son olarak yine 2 ay
süren yazılım kısmına yapıldı. İş yükü ve zaman paylaşımı öneri raporunda öngörüldüğü
şekilde başarıyla sonuçlandırılmıştır.
b) projede karşılaştığınız riskler ve önlemleriniz
Projedeki en önemli risk, gerilim ve akım ölçümü devrelerinde izolasyon olmamasıdır. Bu durum
güvenli çalışma için tehlike arz etmektedir. Bunu önlemek için akım ve gerilim sinyalleri
sonradan tasarlanan bir analog izolasyon devresi ile izole edilmiştir.
c) öneri raporunda öngörülen konu, yöntem, malzeme ve takvimden sapma/değişiklik oldu mu?
Açıklayın.
Öneri raporunda akım ölçümü için hazır modül kullanılacağı öngörülmüştü. Fakat bu ölçüm
devresi proje kapsamında tasarlandı. Akım ölçüm yöntemi için akım algılayıcı direnç metodu
kullanıldı. Takvimde herhangi bir sapma yaşanmadı.