>>> ŞEBEKE VOLTAJ ÖLÇÜMÜ - Pic ve 220v.!

Başlatan peko, 17 Ağustos 2004, 11:21:48

ahmetu

ben pek basic'ten anlamam ama (if) komutunun (endif) komutu ile bitmesi gerekmiyormu?

start: 
   if porta.1 = 0 then
      portb.1 = 1
   else
      portb.1 = 0
   endif
   waitms 1
   goto start
end




Alıntı Yap
işte bu şekilde iken LED 4-6 sn yanıyor ,1 sn sönüyor.!

buna da bir anlam veremedim, scope'um olsa deneyeceğim ama maalesef yok :( . Yukarıda verdiğim şema yaklaşık 2 yıldır 3 ayrı yerde sorunsuz çalışıyor.

peko

" Bazıları zeka'sını iş'i zorlaştırmak için, bazıları ise kolaylaştırmak için kullanır.. "

z

Alıntı yapılan: "ahmetu"birde bu gerilim bölme metodu çok sağlıklı değil diyelim 220v' u 10 yada 20 Mohm'la böldük çıkan sonuçta 0-5v arası oldu, ya elektrik bir ara 250v'a çıkarsa ne olacak hatta yerine göre gece yarısı daha bile fazla çıkabilir yada 20 Mohm'dan daha büyük bir dirençle böldük 500v'a kadar işe yarayacak bu seferde ölçüm hassas olmayacak 3 er 5 er volt aralıklarla ölçeceğiz bunalmış usta ne dersin nasıl olacak bu iş 7107 gibi bişey lazım ama çıkışı led display değilde digital (i2c - spi) olacak.

ADC nin tum araligindan yeterince yararlanmak istiyorsan tek cozum aralik (range) degistirme. Bu durumda ADC onune oldukca dogru ve degerleri degismeyen analog bir devre koymak gerekir.

(Bu durumda devreniz auto range denen ozellige sahip olmuş olacaktir.)

Bu tur olcum devlerelerinde dikkat edilmesi gereken en onemli sey, ADC onunde dogrusal  olmayan  (non linear) devre elemanari kullanmamaktir. (Zener, diod vs)

Konacaksa da tamamen koruma amacli oldugundan ve normal olcumlerde devreye girmediklerinden emin olmak gerekir.

Yanlis hatirlamiyorsam 7107 turu IClerin BUS tipi serileri de var. Onlardan yararlanilabilir yada macera oldun derseniz display suren tipininin display cikislarini PIC portlarina baglayip sonuclari PIC'e dolayli yoldan atabilirsiniz.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

fsan

Alıntı yapılan: "peko"Herkese merhaba ;
Şebekede 3 faz'ı ölçmek için dijital  ekranlı bir cihaz yapmak istiyorum ölçmeye çalıştığımda ekranda 220 v okuyorum fakat 2 sn sonra
220 değeri > 220 > 180 > 150 > 100 > 75 > 20 >0 > 20 > ...
gibi değişmeye başlıyor. Acaba bu neden kaynaklanır ?
Birde şebeke frekansını  (50hz) nasıl okuyabilirim ?
(picbasic + 16F84 kullanarak..)

@peko
usta opto kopler ile "ŞEBEKE VOLTAJ ÖLÇÜMÜ" yapilirmi bilmiyorum ama ben kücük bir 220/12 volt trafo kullanarak yapilabilir diye düsündüm.
3 fazi kolayca ve güvenli bir sekilde ölcebilmek icin 3 tane miniature trafo L1-N, L2-N, L3-N baglanmis sekilde ve 3 A/D converter girisli bir PIC yada asagidaki semadaki gibi multiplex ederek yapabilirsin.. Belki daha kolay baska bir yöntemlede yapilir bilmiyorum.

RX ve REF direnclerle oynayarak dogru ölcüm icin gerekli ayarlar yapilabilir diye düsünüyorum ?

Not:
PIC programi yazarken rölelerin sadece birisi devrede olacak sekilde yapmak lazim, yoksa ??  8O

ayrica 50HZ ölcmek icin borda birara bir devre ve PBP kod vermistim bilmiyorum hala varmi.. biraz arastir istersen

Kolay gelsin

Veli B.

Fsan'ın verdiği yöntem gayet güzel ama ref girişini sabit AN1 diye düşünme.Kullanacağın denetleyicinin datasheetine bakarak Vref için ideal configirasyonu bulabilirsin (877 için ADCON1>RA3) .Sağlıklısı bence de sabit ref vermek.Ama VDD yi de kullanabilirsin.

peko

:idea: Arkadaşlar işte benim fantezim..

Özet:
Cihaz ile şebekenin 3 faz voltajı ve frekansını kontrol edip
girilen değerler dışına çıkıldığında alarm rolesini çektirmek
istiyorum.

Set butonuna her bastığımda sıra ile voltaj - alt,üst - frekans - alt,üst değerleri giriliyor. O anda hangi değeri set ettiğin led'lede görülebiliyor.
İşte bu alet voltaj kısmında ölçme yaparken değişim gösterince :x
ordan ileri gidemedi..  :( Birçok yöntem var ;7107,ADC vs.. kullanmak gibi
ama asıl amacım  :arrow: "yazılımın gücünden yaralanmak". ;)

(Devrenin opto kısmı çalışan bir devreden alıntıdır..)

" Bazıları zeka'sını iş'i zorlaştırmak için, bazıları ise kolaylaştırmak için kullanır.. "

z

Bu devre ile ancak kaz kesilme ve faz sırası rolesi yapabilirsin. Ekranda da fazladan frekans gösterebilirsin.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

peko

" ÖĞRENDİKÇE CAHİLLİĞİM ARTIYOR "

Frekansı nasıl ölçebilirim ?

Yazılım yaparken lojiğin yanında formülde kullanmak istiyorum ama
ne nedir onu bilemiyorum. :cry:
öğrenmem gerek...
Birde faz sırasını algılamanın yöntemi nedir ?

ya bunalmış.. bana rasgeldin ,daha çok bunalma sakın emi :(

yardımcı olan tüm dostlarıma Teşekkür ederim..
Ama bende soru çookkkk, fantezide.. ;)
" Bazıları zeka'sını iş'i zorlaştırmak için, bazıları ise kolaylaştırmak için kullanır.. "

z

Bir saniyelik referans zaman diliminde optocoupler dan gelen pulsların sayısı sana dogrudan frekansı verir.

Faz sırası mantığı:

Şemada (T)RA0, (S)RA1 ve (R)RA2 optocouplerlara bağlanmış.

RA0 0 iken döngüde kal ve tam 0 dan 1 e geçiş anını bekle.

1 olduğu anda RA1 ve RA2 yi oku.

RA1=1  RA2=0 ise faz sıralaması doğru kabul edilirse

yanlış sıralamada  RA1=0  RA2=1 olacaktır.

Bu işlemi pek çok  peryodda tekrar edip sonuçların çoğunluğa göre faz sırasının düz yada ters olduğuna karar verirsen olası bozucu etkilere karşı sistem daha güvenli çalışacaktır.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

peko

fsan hocam bunu isis yapma şansımız varmıdır?
Hem görmek, hemde foruma bilgi olsun isterim.
" Bazıları zeka'sını iş'i zorlaştırmak için, bazıları ise kolaylaştırmak için kullanır.. "

z

Fsan, seman uzerinde konusmak gerekirse trafo cikisinin dogrultulup filitre edilmesi ardindan da ADC ile olculmesi fikri guzel ancak faz degistirip yeni fazin voltajini okumak icin uzun sure beklemen gerekecek.

Bunun icin ADC girisinden cok akim cekilmedigini dusunecek olursak filitre kapasitesini iyice dusurmekte fayda var.

Yada Pic kontrolunde filitre kapasitesini bir direnc ile yukleyip ardindan direnci devreden cikartip oyle olcum yapmak lazim.

Aksi halde pes pese fazlarin voltajini olcmek mumkun olmayacak.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

peko

Ben yukarıdaki şemada faz girişlerine kapasite ve 10M direnç bağlasam yinede voltajı ölçemezmiyim bunalmış hocam ?
Frekans içinde ayrı bir giriş yaparım :?:
" Bazıları zeka'sını iş'i zorlaştırmak için, bazıları ise kolaylaştırmak için kullanır.. "

fsan

merhaba peko,
50HZ frekans ölcmek icin asagidaki kodu incele bir istersen..
ben birara proteuste bu kodu denedim gayet güzel calisti.  Senin verdigin semadaki opto girisleri kullanabilirsin, kodda bazi degisiklikler yaparsan olur biter.  
'**************************************************************** 
'* Name : LINEFREQ.BAS * 
'* Author : Ingvar Gillholm * 
'* Notice : Use as you please. * 
'* : * 
'* Date : 2003-03-24 * 
'* Version : 1.0 * 
'* Notes : A program that measures the mainsfreq * 
'* : * 
'**************************************************************** 

'@ device pic16F628, hs_osc, wdt_off, pwrt_on, mclr_on, bod_off, lvp_off, protect_off 
@ device pic16F628, xt_osc, wdt_off, pwrt_on, mclr_on, bod_off, lvp_off, protect_off 

'define osc 20 

DEFINE PULSIN_MAX 15000 

'define HSER_BAUD 9600 
DEFINE HSER_RCSTA 90h 
DEFINE HSER_TXSTA 24h 
'DEFINE HSER_SPBRG 129 '9600 @20 MHz 
DEFINE HSER_SPBRG 24 '9600 @4 MHz 

LoPulse var word 
HiPulse var word 
Pulse var word 

dummy var word 
dummy1 var word 
dummy2 var word 
Freq var word 'freq * 1000 

MeasPin var PortB.0 

WHILE 1 
   pause 100'Slow it down 
   Gosub GetPeriod 
   Gosub CalcFreq 
   Hserout ["Mains frequency = ", dec1 freq dig 4, dec1 freq dig 3,".",dec1 freq dig 2, dec1 freq dig 1," Hz",13,10]'Don't bother showing the last digit 
WEND 

GetPeriod: 
   Pulsin MeasPin,0,LoPulse 
   Pulsin MeasPin,1,HiPulse 
   Pulse = LoPulse + HiPulse 
return 

CalcFreq: 
   dummy1 = 10000 'change to 50000 if 20MHz 
   dummy2 = 10000 
   dummy = dummy1 * dummy2 
   Freq = DIV32 Pulse 
return

Volt ölcme kismina gelince, biraz önce asagidaki linkte yazdigim bir mesaj var "Voltmetre" oradaki koduda incelersen bu isi halledersin..
https://www.picproje.org/index.php/topic,3277&highlight=

kolay gelsin

Veli B.

Aslında aklıma gelen bir yöntem daha var ama üzerinde çalışmaya hiç vakit bulamadım.ADC yerine VCO kullansak ve frekansı saysak osilasyon frekansı lineere yakın bir artış gösteriyor çünki.Eminimki çok daha hassas bir ölçüm yapabiliriz.

sezgin05

Katana sana katılıyorum.Bunun için TL331 entegresi tecrübelerime dayanarak ideal diyorum. Dolayısıyla Analog girişli pic kullanmayada gerek kalmaz.COUNT komutuyla yapılabilir.