Picproje Elektronik Sitesi

DİJİTAL & ANALOG ELEKTRONİK => Temel Elektrik/Elektronik => Konuyu başlatan: mfurkan7 - 19 Eylül 2022, 16:57:16

Başlık: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 19 Eylül 2022, 16:57:16
Merhabalar,
Arduino ile 6V'luk pilimin gerilimini ölcüyorum ancak sisteme bagli pompa ve valf calistiginda gerilim düsüyor ve dalgalanma oluyor.
50ms örnekleme aliyorum. 0.47uF'lik 3 seramik kapasitörü paralel baglayip girisin arti ve eksisine baglayip motor sürücümü oradan besledim. Analog pinin ve motor sürücünün GND'lerini ayirdim ancak sonuc hala ayni. Önerileriniz nelerdir?
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: Sozuak - 19 Eylül 2022, 17:04:01
Şimdi hatırlamyorum detayları ama şöyle yapmıştım. sürekli 20-30 ölçüm alıyor, ilk giren ilk çıkar mantığı ile  sürekli ölçüm değerleri alınıp 20-30 ölçümün ortalaması alınınca dalgalanma da oldukça düşük düzeyde kalıyor. Zaman sabitini biraz yüksek tutmuş oluyoruz. Oraya 10uF kondansatör bile koysanız  bu şekilde ölçüm yapıp ortalama almadıktan sonra dalgalanma olur.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 19 Eylül 2022, 21:17:41
Hocam,
Sizin dediginiz ortalamayi arduino'da nasil yapabilirim? Bir de ortalama almak yerine delay'i 50ms'den 1000ms'e ceksem is görür mü?
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: Sozuak - 19 Eylül 2022, 21:28:27
Çok yöntem denemiştim bayağıdır yapmıyorum. Delay melay iş görmüyor. Belli bir sayıda dizi oluşturacaksınız sürekli bu diziye sırayla değer atayacaksınız(okuduğunuz değerleri) ilk giren ilk çıkacak. Bu dizi içinden değerleri alıp ortalamalarını alacaksınız ve göstereceksiniz. Dosyaya bir bakıp o kısmı eklemeye çalışırım.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 19 Eylül 2022, 21:36:34
Hocam,
Bir deneyeyim dediginizi. Dosyayi bulabilirseniz büyük makbule gecer. Simdiden tesekkür ediyorum.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: ilyas KAYA - 19 Eylül 2022, 21:40:52
Arduinonun 5volt beslenmesine 1000uf lik kondansator takip deneyin. Valf vb cihazların arti uçlarına seri çekecekleri akim kadar diyot bağlayın deneyin
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 19 Eylül 2022, 22:25:01
Alıntı yapılan: ilyas KAYA - 19 Eylül 2022, 21:40:52Arduinonun 5volt beslenmesine 1000uf lik kondansator takip deneyin. Valf vb cihazların arti uçlarına seri çekecekleri akim kadar diyot bağlayın deneyin

Hocam,
Pilden besleme yapiyorum. Bir gerilim bölücü ile de pil voltaj degerini okuyorum. Pil ayni zamanda pompa ve valfi de besledigi icin birbirine paralel bagli pompa ve valf aktif olunca ölctügüm pil gerilimi bir anda düsüyor.

1000uF koyunca da ölctügüm gerilim degeri 10V'a cikiyor. Hem arduino üzerindeki 5v kismina 10v'luk kapasitörü bagladim. Olmadi. Sonra ölcüm aldigim voltaj bölücü direncine paralel bagladim yine calismadi. 10v harici de capacitörüm yok. En düsügü elimdeki bu kapasitör. Isin kötüsü elimde diyot da yok 500mA'lik. :/
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: dnacikaya - 19 Eylül 2022, 22:34:12
Protonda kullandığım örneği paylaşıyorum. Arduinoya çevirmelisin. 19 ölçüm alıp ortadan 7-12 değerleri toplanıp 6ya bölünüyor. Filtrenin işe yaraması İlyas hocamın da belirttiği noktaların da sorunsuz olmasına bağlı tabiki.

Dim VAR1 As Word
Dim I1 As Byte
Dim OK1 As Word
Dim TO1 As Word
Dim TEMP1 As Word

For I1 = 0 To 19
    VAR1 = ADIn 0
    VAR1 = OK1[I1]
    DelayUS 10
Next
TO1 = 0
For I1 = 7 To 12
TEMP1 = OK1[I1]
TO1 = TO1 + TEMP1
Next
VAR1 = TO1 / 6
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 19 Eylül 2022, 22:59:37
Sizin dediginiz yöntemi de denedim. Nedense olmuyor.
Anahtari acip pompaya akimi verince pilin gerilimi bir anda düsüyor. delay'i de degistirdim. Ek delay ekledim ama yok. Ölctügüm pil gerilimi yine düsüyor.
Düsünüyorum. Üniteyi besledigim pilin gerilimini ölcerken ünite calistiginda okudugum deger nasil degismez diye ama bir cözüm bulamadim.

int pump_positive = 9;
int pump_negative = 8;
int button = 53;
int button_state = 0;

int voltage_input_pin = A0;
float input_voltage_data = 0;
float v_step = 5.071 / 1023.0 ;

float voltage_array[25];
int voltage_measurement_amount=25;
float voltage_sum;
float av_voltage;


void setup() {
  pinMode(pump_positive, OUTPUT);
  pinMode(pump_negative, OUTPUT);
  pinMode(button, INPUT);
  pinMode(voltage_input_pin, INPUT);
  Serial.begin(115200);
  Serial.println("CLEARDATA");
  Serial.println("LABEL,Time,Started Time, Input Voltage Value");
  Serial.println("RESETTIMER");
}

void loop() {
  button_state = digitalRead(button);
  if (button_state == LOW) {
    digitalWrite(pump_positive, LOW);
    digitalWrite(pump_negative, LOW);
  }
  else {
    digitalWrite(pump_positive, HIGH);
    digitalWrite(pump_negative, LOW);

  }
  input_voltage_data = analogRead(voltage_input_pin) * v_step;
  for(int i=0;i<voltage_measurement_amount;i+=1){
      if (input_voltage_data<0.06){
        voltage_array[i]=input_voltage_data;
      }
      else{
        voltage_array[i]=input_voltage_data+ ((input_voltage_data / 9880) * 9990)+0.02;
      }
      delay(50);

     
  }
  for(int k=7;k<13;k+=1){
    voltage_sum+=voltage_array[k];
  }
  av_voltage=voltage_sum/6;
 

  Serial.print("DATA,TIME,TIMER,");
  Serial.println(av_voltage);
  delay(20);   
  voltage_sum=0;


}
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mehmet - 19 Eylül 2022, 23:25:50
https://donanimveyazilim.wordpress.com/2012/09/13/adc-girisine-filtre-mi-desem/

https://donanimveyazilim.wordpress.com/2011/09/14/median-filter-ortanca-filtresi/


Ek:
Pompaya pwm ile yol verin.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: muhendisbey - 20 Eylül 2022, 00:54:34
ADC ölçümlerinde standart sapma ve kalanın ortalaması daha iyidir. Çok sapan sonuçlar direk elenir.

Hassas ölçümlerde analog referans girişine (AREF), referans gerilimi uygulamak çok daha iyidir. Bunun için regülatör benzeri 3 bacaklı referans entegreleri var.

ADC girişine direk kapasitör eklerseniz gecikmeye neden olur. Bir anda şarj ya da deşarj olamayacaktır çünkü.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 20 Eylül 2022, 01:05:00
Alıntı yapılan: muhendisbey - 20 Eylül 2022, 00:54:34ADC ölçümlerinde standart sapma ve kalanın ortalaması daha iyidir. Çok sapan sonuçlar direk elenir.

Hassas ölçümlerde analog referans girişine (AREF), referans gerilimi uygulamak çok daha iyidir. Bunun için regülatör benzeri 3 bacaklı referans entegreleri var.

ADC girişine direk kapasitör eklerseniz gecikmeye neden olur. Bir anda şarj ya da deşarj olamayacaktır çünkü.

Hocam,
Son durumda motor girisine 1n4007 ve 1000uF 10V kapasitör ekledim. Sapmayi biraz engelledim. Yazilimda da diyotun gerilim düsümünü arti olarak ekledim. Suan anahtar acma ve kapama anlari haric yaklasik dogru degeri veriyor. Ancak merak ettigim konu AREF'i nasil koduma entegre edebilirim ya da donanimima. Biraz daha detay verebilirseniz cok sevinirim. AREF hic kullanmadim.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: muhendisbey - 20 Eylül 2022, 01:23:50
https://www.arduino.cc/reference/en/language/functions/analog-io/analogreference/

Kod kısmında tek bir komut:
analogReference(EXTERNAL);
Referans gerilimini:
Zener diyot + direnç
(https://www.nutsvolts.com/uploads/wygwam/NV_0907_Malone_Figure01.jpg)

Ya da LM336 gibi hazır bir eleman kurulumu kullanılabilir.
https://www.motorobit.com/urun/lm336z5-to-92-5v-programlanabilir-sant-regulatoru
kullanımı:
https://www.analog.com/en/products/lm336-2.5.html#product-overview
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: z - 20 Eylül 2022, 01:39:33

Sadece ortalama alarak yapilmis bir ADC uygulamasi.

Yanlis hatirlamiyorsam 1024 yada 2048 ornek ortalamasi aliniyor.

2014 yil basinda yaptigim bu uygulamada ADC girisi 2.014v olursa mutlu yillar yazisi cikiyor.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 20 Eylül 2022, 13:58:09
Alıntı yapılan: z - 20 Eylül 2022, 01:39:33

Sadece ortalama alarak yapilmis bir ADC uygulamasi.

Yanlis hatirlamiyorsam 1024 yada 2048 ornek ortalamasi aliniyor.

2014 yil basinda yaptigim bu uygulamada ADC girisi 2.014v olursa mutlu yillar yazisi cikiyor.
Hocam,
Maksimum arduino mega ile 1201 örnek alabiliyorum zorlamadan. Ancak yine de sizin videonuzdan bunu nasil yaptiginizi cikartamadim. Eger kod vs. varsa ve paylasabilirseniz sevinirim. Bu sisteminize pompa veya bir motor bagli miydi bilmiyorum ama ölcüm oldukca stabil gözüküyor. Benim ölcüm alirkenki problemim pompa-solenoid valf ünitesinin aktif ve deaktif oldugu anda ölcümün sapitmasi.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mehmet - 20 Eylül 2022, 14:04:51
Selenoid üzerinde hızlı diyot bağlı mı?
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: JOKERAS - 20 Eylül 2022, 14:09:02
Alıntı yapılan: mfurkan7 - 19 Eylül 2022, 16:57:16Merhabalar,
Arduino ile 6V'luk pilimin gerilimini ölcüyorum ancak sisteme bagli pompa ve valf calistiginda gerilim düsüyor ve dalgalanma oluyor.
50ms örnekleme aliyorum. 0.47uF'lik 3 seramik kapasitörü paralel baglayip girisin arti ve eksisine baglayip motor sürücümü oradan besledim. Analog pinin ve motor sürücünün GND'lerini ayirdim ancak sonuc hala ayni. Önerileriniz nelerdir?
Burada Adc'yi sorunsuz okuduğunu Sistemdeki Pompa veya Valfin devreye girmesiyle
bunun dalgalandığını söylüyorsunuz.
Bu durumda sorun Adc okumaktan ziyade Besleme veya Pompa veya Valfi sürme tekniğinde hata
olduğu anlaşılıyor.

Bunun için şu yollar takip edilebilinir.

Pilinize Paralel bir Pil veya harici bir besleme daha ekleyip test edin.
İşlemci beslemesi ile Pompa veya valf neyse, bunların beslemesini
soyutlaştırın.Besleme nasılsa Pil,Gerçek DC diye düşünmeyin.
Özellikle Yük geçen her hattın Sonuna mutlaka Kapasite ekleyin.

Aslında şematik olsa daha güzel olurdu. 


Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: z - 20 Eylül 2022, 14:12:13
Pompa/valf beslemeyi oynatiyorsa ADC de olcum sonuclari da etkilenecek tabiki.

PWM teknigiyle pompa ve valfi devreye yavasca sokup cikart.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 20 Eylül 2022, 21:41:05
Alıntı yapılan: mehmet - 20 Eylül 2022, 14:04:51Selenoid üzerinde hızlı diyot bağlı mı?

Hayir Mehmet Hocam bagli degil. Hizli diyot tam olarak ne ise yarar?

Alıntı yapılan: JOKERAS - 20 Eylül 2022, 14:09:02Burada Adc'yi sorunsuz okuduğunu Sistemdeki Pompa veya Valfin devreye girmesiyle
bunun dalgalandığını söylüyorsunuz.
Bu durumda sorun Adc okumaktan ziyade Besleme veya Pompa veya Valfi sürme tekniğinde hata
olduğu anlaşılıyor.

Bunun için şu yollar takip edilebilinir.

Pilinize Paralel bir Pil veya harici bir besleme daha ekleyip test edin.
İşlemci beslemesi ile Pompa veya valf neyse, bunların beslemesini
soyutlaştırın.Besleme nasılsa Pil,Gerçek DC diye düşünmeyin.
Özellikle Yük geçen her hattın Sonuna mutlaka Kapasite ekleyin.

Aslında şematik olsa daha güzel olurdu. 



Hocam,
Sematik hazirlamaya calisacagim vakit bulursam.

Alıntı yapılan: z - 20 Eylül 2022, 14:12:13Pompa/valf beslemeyi oynatiyorsa ADC de olcum sonuclari da etkilenecek tabiki.

PWM teknigiyle pompa ve valfi devreye yavasca sokup cikart.

Dün PWM kullanmayi denedim ancak elimde L9110S motor sürücüden var ve PWM ile kontrol saglayamadim. Motor sürücüsüz de baglamak istemiyorum pompa yüksek akim cekiyor. Arduino'yu da yakmak istemiyorum.

Aslinda niyetim pompa-solenoid ünitesine sabit gerilim vermek. Bunu yapmanin yollari nelerdir?

Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: muhendisbey - 20 Eylül 2022, 23:48:10
ADC'yi ya da mikrodenetleyiciyi izole etmezsen ölçümlerin stabil olmaz.

İzole etmek için illa beslemeyi ayırmana da gerek yok. Yine de çökmenin engellenmesi açısından kapasitör kullan.
Akım çekilirken kaç V'a düşüyor?
Bütün analog değerlerini bu gerilim için ayarlamalısın.

Atıyorum gerilimin 4.5V'a düşüyor.
O halde sensörünün beslemesini 3.3V'a göre ayarla 3.3V regülatör kullan.
AREF 3.3V olacak şekilde referans ver ki tüm ADC bandını kullanabil.
5V gibi bir yerden gerilim okuyorsan ister gerilim böl, ister opamp'ı zayıflatıcı olarak kullan. Dirençleri termal karakteristiği daha iyi olan modellerden seç metal film direnç gibi. Mavi renk olur genelde.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: JOKERAS - 21 Eylül 2022, 14:52:44
Bunun için Sabit akım özellikli Motor ve Selenoid sürücüler vardı galiba.
Eğer bu pahalı olur diyorsanız bunu işlemci ile de yapabilirsiniz.

Diyot,eğer devrenizde bir bobin veya meteor sürüyorsanız Emk'ni Söndürmek için
kullanılan bir eleman.Bu vardır sanırım.Yoksa işlemci ve bir çok yarı iletkenin bozulmasına
sebep oluverir.
 
Onun için şema eklemeniz önemli!
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 21 Eylül 2022, 22:22:38
Degerli hocalarim,
Devrem bu asagidaki gibidir.
Suanda cözemedigim 3 problemim var.

(https://i.ibb.co/s3ZfqJz/Ekran-g-r-nt-s-2022-09-21-211957.png) (https://ibb.co/s3ZfqJz)
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: dnacikaya - 21 Eylül 2022, 23:32:53
Motoru mosfet ile pwm yöntemiyle çalıştırmalısın. Motoru bir anda devreye sokup sistemi alt üst etmeden pwm ile devri yavaşça artırmalısınız. Ayrıca selenoid valfte de ters emk için diyot kullanmak gerekir.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: dnacikaya - 22 Eylül 2022, 00:03:20
L293d de kullanılabilir. Arduino örneği var linkte:

https://simple-circuit.com/arduino-dc-motor-speed-direction-control-l293d/ (https://simple-circuit.com/arduino-dc-motor-speed-direction-control-l293d/)
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: Sozuak - 22 Eylül 2022, 10:08:14
Sorununu yazılımsal çözerek basitçe bir transitörle motor ve valfe enerji verip çözersin. Bu sistem tansiyon holter dediğimiz cihazlarda halihazırda kullanılıyor ve sorunsuz çalışıyor. Voltaj ortalamasını alarak anlık gerilim çökmelerini  gözardı edip düzgün ölçümü sağlamak varken elini boynuna 2 tur dolayıp uzaktaki kulağı tutmaya çalışmak gereksiz.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 23 Eylül 2022, 21:17:13
Alıntı yapılan: dnacikaya - 21 Eylül 2022, 23:32:53Motoru mosfet ile pwm yöntemiyle çalıştırmalısın. Motoru bir anda devreye sokup sistemi alt üst etmeden pwm ile devri yavaşça artırmalısınız. Ayrıca selenoid valfte de ters emk için diyot kullanmak gerekir.
Hocam,
Ben bu motor sürücüyü kullaniyorum ama bunu bir karta basarsam bu devreyi kullanmak istemiyorum acikcasi. Daha ucuz bir yolu var midir?
Suanda motoru PWM ile baslatiyorum ama Arduino'da motoru PWM ile yavasca durdurmayi beceremedim.  :du:

Alıntı yapılan: Sozuak - 22 Eylül 2022, 10:08:14Sorununu yazılımsal çözerek basitçe bir transitörle motor ve valfe enerji verip çözersin. Bu sistem tansiyon holter dediğimiz cihazlarda halihazırda kullanılıyor ve sorunsuz çalışıyor. Voltaj ortalamasını alarak anlık gerilim çökmelerini  gözardı edip düzgün ölçümü sağlamak varken elini boynuna 2 tur dolayıp uzaktaki kulağı tutmaya çalışmak gereksiz.
Hocam, elinizde örnek kod, sema var midir?


******
1) Son durumda AREF ile ölcümlerim öncesine göre cok daha stabil hale geldi ama baska bir problem daha ortaya cikti. Motor sürücüye enerji veriyorum arduino üzerinden. Motor sürücü üzerinde arti ve eksiye dikkat ederek motoru bagladigim pinlere dokunup ölcüm aliyorum. Sonra kutuplama ile pompa üzerinden ölcüm aldigimda pompanin arti bagli ve kirmizi isaretli arti ucunda eksi deger okuyorum. Yok anlamiyorum nasil oluyor bu is. Ayni kablo kisa devre modunda da kontrol ediyorum. Dogru bagli kablo motor üzerinde eksi deger ölcüyorum.

2)Son olarak suanda motora motor sürücü üzerinde diyot ve kapasitör bagliyken 4.3V sabit gerilim verebiliyorum. Ama bunu arttirmak ve azaltmak istiyorum. Ancak burayi da kotaramadim.

3)Osiloskopta baktigimda akim grafiginde pala biyik gibi kap kalin bir gürültü oluyor. Motor-valf ünitesini PWM ile besliyorum. Muhtemelen ondan diye düsündüm. 103nF'lik seramik kondasatör bagladim pompaya olmadi. Kondansatöre paralel diyot attim shotky, olmadi. Gürültüyü yok edemiyorum.
Pompa ve selenoid valfin akim grafiklerine ayri ayri baktim. Gürültü kesinlikle pompadan geliyor. Valfin kendi grafiginde ihmal edilebilecek ölcüde gürültü vardi. Kisacasi isin icinden cikamadim. Bir de su motora güc verirkenki gereksiz akim tepecigi o da ne diyot ne kapasitör ne ikisinin kombinasyonu ile gitmedi. Parca seciminde hata yapiyorumdur muhtemelen ancak desteginize ihtiyacim var.

(https://i.ibb.co/N1ZvFtQ/current-and-voltage-input-1.png) (https://ibb.co/N1ZvFtQ)
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: dnacikaya - 23 Eylül 2022, 21:32:02
@mfurkan7 23 nolu mesajımda arduino pwm ile hız artırma azaltma kodu var veya sağ sol yapılabiliyor motora. Daha ucuzu varmıdır bilemem ama mosfette kullanabilirsin motoru sürmek için.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: ~ENES~ - 23 Eylül 2022, 22:00:12
Hocam senin problemin pompa ve valf çaliştığında akıma asıldığından pilin akımı bu gücü karşilayamadığı için voltajı düsürüyor olabilir mi ? Pil yerine daha yüksek akımlı bir smps ile denediniz mi ?
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: Sozuak - 23 Eylül 2022, 22:02:19
Sonuç doğru ise ölçüm hesabında mutlak değer kullan. Kaçırmış olabilirim devrenin amacı nedir? Amaç pil voltajını ölçmek mi, pompa voltajını ölçmek mi?  Gürültü ne sorun yaratıyor ? Pompa voltajını değiştirmek derken dinamik olarak mı yoksa  ayarlanabilir yapıp bir değere  sonrasında değiştirmemek üzere sabitlemek mi?  Motoru arduino dan direkt sürme ama  bir transistör üzerinden sür? Hadi bjt ile lineer sür 1-2 saniye gecikme koy sonra transistör doyumda çalışsın. Yani devrenin tasarım gereksinimleri ne ise paylaş ki  uygun öneri olsun. Motor ne sıklıkla çalışıp duracak, sürekli mi çalışacak ölçümün  anlık çökmesi neden önemli hangi fonksiyonu karşılıyor da sorun oluyor. Anlamadığım kadarıyla kapalı bir kutu şu anda. Anlattın da ben kaçırdıysam kusura bakma peşinen.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 23 Eylül 2022, 22:16:23
Alıntı yapılan: dnacikaya - 23 Eylül 2022, 21:32:02@mfurkan7 23 nolu mesajımda arduino pwm ile hız artırma azaltma kodu var veya sağ sol yapılabiliyor motora. Daha ucuzu varmıdır bilemem ama mosfette kullanabilirsin motoru sürmek için.

Sagolun hocam. Gözümden kacmis. Bir bakayim.

Alıntı yapılan: ~ENES~ - 23 Eylül 2022, 22:00:12Hocam senin problemin pompa ve valf çaliştığında akıma asıldığından pilin akımı bu gücü karşilayamadığı için voltajı düsürüyor olabilir mi ? Pil yerine daha yüksek akımlı bir smps ile denediniz mi ?
Güc adaptörü ile denedim aynisi oluyor. Su anda dalgalanmayi AREF ile 2-3V mertebesinden 0.4-0.5V mertebesine indirdim. En azindan bir nebze mutluyum. Ancak transistör isini deneyecegim.

Alıntı yapılan: Sozuak - 23 Eylül 2022, 22:02:19Sonuç doğru ise ölçüm hesabında mutlak değer kullan. Kaçırmış olabilirim devrenin amacı nedir? Amaç pil voltajını ölçmek mi, pompa voltajını ölçmek mi?  Gürültü ne sorun yaratıyor ? Pompa voltajını değiştirmek derken dinamik olarak mı yoksa  ayarlanabilir yapıp bir değere  sonrasında değiştirmemek üzere sabitlemek mi?  Motoru arduino dan direkt sürme ama  bir transistör üzerinden sür? Hadi bjt ile lineer sür 1-2 saniye gecikme koy sonra transistör doyumda çalışsın. Yani devrenin tasarım gereksinimleri ne ise paylaş ki  uygun öneri olsun. Motor ne sıklıkla çalışıp duracak, sürekli mi çalışacak ölçümün  anlık çökmesi neden önemli hangi fonksiyonu karşılıyor da sorun oluyor. Anlamadığım kadarıyla kapalı bir kutu şu anda. Anlattın da ben kaçırdıysam kusura bakma peşinen.
Hocam,
Bu proje benim icin bir nevi kendimi gelistirme projesi. Amacim bir sisteme pompa ile hava basmak. Pompayi durdurdugumda da valfi acip sistemin icindeki hava basincini dis hava basinci ile esitliyorum. Sistemi pil ile besleyecegim icin cekilen akim miktari önemli. Peakleri ve gürültüleri minimalize edip sistemi sabit gerilimle ve gürültüsüz bir akimla beslemek istiyorum. Sistemi ne kadar sabit ve gürültüsüz beslersem de düsünceme göre pil ölcümlerimi de bir o kadar saglikli hale getirebilirim. Kurgumu pil üzerinden yapiyorum ama güc adaptörü ile de calisabilir tabii ki. Motor 0,5sn calisacak ve duracak. Motoru sürmek icin zaten motor sürücüm(L9110S) var. 8 mesaj önce semayi da paylasmistim.
Dedigim gibi özellikle akim grafigindeki o gürültüyü nasil sabitlestirebilecegimi ögrenmek istiyorum. 3 adet konu var halledemedigim.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: Sozuak - 23 Eylül 2022, 22:51:38
Çok sıkı kıstaslar yoksa bu kadar da kasmanın anlamı yok. fonksiyonu bozmuyorsa en yalın haliyle bırakmak sorun olmaz. Motor besleme hatlarını yeterince kalın yapın. Pi filtresi ile (LC) motora verin. Motorun kalkışta çok akım çekmesi sorunsa NTC seri girin. 0.5 sn de çok kısa bir süre. Bunu şarj edeceğiniz uygun değerde bir kapasitörü beslemeden anlık  tek minyatür röle ile ayırıp motora verseniz halledersiniz. Motorun kalkınması zaten 0.5 saniye sürer. 
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 24 Eylül 2022, 21:55:57
Alıntı yapılan: Sozuak - 23 Eylül 2022, 22:51:38Çok sıkı kıstaslar yoksa bu kadar da kasmanın anlamı yok. fonksiyonu bozmuyorsa en yalın haliyle bırakmak sorun olmaz. Motor besleme hatlarını yeterince kalın yapın. Pi filtresi ile (LC) motora verin. Motorun kalkışta çok akım çekmesi sorunsa NTC seri girin. 0.5 sn de çok kısa bir süre. Bunu şarj edeceğiniz uygun değerde bir kapasitörü beslemeden anlık  tek minyatür röle ile ayırıp motora verseniz halledersiniz. Motorun kalkınması zaten 0.5 saniye sürer. 

Hocam saglam bir dizayn yapmak istiyorum. Istiyorum ki yaptigim tasarim en az 7 sene sorunsuz calissin. Sistemi etkilemese de nasil oldugunu ögrenmek istiyorum. Zorlanmadan, arastirmadan, sormadan kendimi gelistiremiyorum. Buradaki herkese de destekleri icin tekrardan cok tesekkür ediyorum. Ancak asagidaki 3 sorun hakkinda yardimci olabilirseniz de cok sevinirim.

Alıntı yapılan: mfurkan7 - 23 Eylül 2022, 21:17:131) Son durumda AREF ile ölcümlerim öncesine göre cok daha stabil hale geldi ama baska bir problem daha ortaya cikti. Motor sürücüye enerji veriyorum arduino üzerinden. Motor sürücü üzerinde arti ve eksiye dikkat ederek motoru bagladigim pinlere dokunup ölcüm aliyorum. Sonra kutuplama ile pompa üzerinden ölcüm aldigimda pompanin arti bagli ve kirmizi isaretli arti ucunda eksi deger okuyorum. Yok anlamiyorum nasil oluyor bu is. Ayni kablo kisa devre modunda da kontrol ediyorum. Dogru bagli kablo motor üzerinde eksi deger ölcüyorum.

2)Son olarak suanda motora motor sürücü üzerinde diyot ve kapasitör bagliyken 4.3V sabit gerilim verebiliyorum. Ama bunu arttirmak ve azaltmak istiyorum. Ancak burayi da kotaramadim.

3)Osiloskopta baktigimda akim grafiginde pala biyik gibi kap kalin bir gürültü oluyor. Motor-valf ünitesini PWM ile besliyorum. Muhtemelen ondan diye düsündüm. 103nF'lik seramik kondasatör bagladim pompaya olmadi. Kondansatöre paralel diyot attim shotky, olmadi. Gürültüyü yok edemiyorum.
Pompa ve selenoid valfin akim grafiklerine ayri ayri baktim. Gürültü kesinlikle pompadan geliyor. Valfin kendi grafiginde ihmal edilebilecek ölcüde gürültü vardi. Kisacasi isin icinden cikamadim. Bir de su motora güc verirkenki gereksiz akim tepecigi o da ne diyot ne kapasitör ne ikisinin kombinasyonu ile gitmedi. Parca seciminde hata yapiyorumdur muhtemelen ancak desteginize ihtiyacim var.

(https://i.ibb.co/N1ZvFtQ/current-and-voltage-input-1.png) (https://ibb.co/N1ZvFtQ)

Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: muhendisbey - 24 Eylül 2022, 22:34:48
Verdiğin referansa göre ve ortak gnd ye göre multimetre ile gerilim farkını ölçebilir misin? Negatif çıkmasının nedenine bir bakayım.

Floating yani toprağı izole ederek osiloskopla da ölçebilirsin.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 26 Eylül 2022, 00:52:28
Alıntı yapılan: muhendisbey - 24 Eylül 2022, 22:34:48Verdiğin referansa göre ve ortak gnd ye göre multimetre ile gerilim farkını ölçebilir misin? Negatif çıkmasının nedenine bir bakayım.

Floating yani toprağı izole ederek osiloskopla da ölçebilirsin.

AREF referansim 5.1V'luk zenerle Arduinoya verebildigim 4.991 Volt.
Hocam sema üzerinde diyotu schotky yaptim. Ölcümlerim asagidaki görseldeki gibi.

Diyotun datasheeti asagidadir.

https://www.farnell.com/datasheets/2358778.pdf (https://www.farnell.com/datasheets/2358778.pdf)


(https://i.ibb.co/zhRfpJZ/Ekran-g-r-nt-s-2022-09-25-234418.png) (https://ibb.co/zhRfpJZ)
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: muhendisbey - 26 Eylül 2022, 17:32:56
Schotky her ne kadar düşük Vf'ye de sahip olsa sızıntı akımı yüksek bir diyot çeşididir. Açıkçası iyi mi olur bilemedim, gözlemlemek gerekli. 1N4001, 1N4004 ya da 1N4007'den birisini seçmek daha mantıklı olabilir. O nedenle  Bence önceki diyoda ek bir RC filtre yani snubber daha iyi olurdu.

Gönderdiğiniz osiloskop görüntüsünde GND üzerinde bir dalgalanma gözlemlenmiş. Negatif ölçüm büyük ihtimalle bundan kaynaklı olabilir.

Bu durumda yapacağınız şey basit. Değer negatif ise tekrar ölç. Küçük bir while döngüsüne hapsetmek.

Bir diğeri de normalde ADC ölçeğinden büyük bir gerilim geldiğinde son değer ne ise onu gösterir. 5V max olan bir ADC, 5.1V'luk gerilimi de 8 bit ise 255 olarak gösterir. Fakat burada dalgalanma belki de hatalı değerlendirmeye neden olmuştur. Yoksa ADC'nin negatif bir değer üretmesi beklenmez.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 26 Eylül 2022, 21:28:43
Alıntı yapılan: muhendisbey - 26 Eylül 2022, 17:32:56Schotky her ne kadar düşük Vf'ye de sahip olsa sızıntı akımı yüksek bir diyot çeşididir. Açıkçası iyi mi olur bilemedim, gözlemlemek gerekli. 1N4001, 1N4004 ya da 1N4007'den birisini seçmek daha mantıklı olabilir. O nedenle  Bence önceki diyoda ek bir RC filtre yani snubber daha iyi olurdu.

Gönderdiğiniz osiloskop görüntüsünde GND üzerinde bir dalgalanma gözlemlenmiş. Negatif ölçüm büyük ihtimalle bundan kaynaklı olabilir.

Bu durumda yapacağınız şey basit. Değer negatif ise tekrar ölç. Küçük bir while döngüsüne hapsetmek.

Bir diğeri de normalde ADC ölçeğinden büyük bir gerilim geldiğinde son değer ne ise onu gösterir. 5V max olan bir ADC, 5.1V'luk gerilimi de 8 bit ise 255 olarak gösterir. Fakat burada dalgalanma belki de hatalı değerlendirmeye neden olmuştur. Yoksa ADC'nin negatif bir değer üretmesi beklenmez.

Hocam isin en kafa karistirici kismi ölcümü multimetre ile aliyorum. Normal valf ve pompayi 6v ile besledigimde arti oluyor ancak motor sürücü üzerinden besledigim de motor sürücünün girisi cikisi arti olmasina ragmen ayni uca bagli pompa ve valf eksi. Bir sürü farkli yolla dogrulama yaptim ama nasil eksi oluyor anlamadim.

Diyot konusunda 1n4007'de kullandim ne yazik ki sonuc degismedi. Seri port üzerinden okudugum degerlerde suan icin majör bir sikinti yok. Ben zaten pili ölcüyorum. 0.4V'luk bir fark var. Artik bu farki kabullendim.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: muhendisbey - 26 Eylül 2022, 21:40:39
COM ucunu GND'den ölçüyorsun değil mi?

Kullandığın sürücü H bridge ise polarizasyonu yani + ve - kutbu tersleyebilir. Zaten bu sayede motoru ileri ya da geri hareket ettirir.
Ancak bunda da GND'ye göre ölçersen ya 0V civarı ya da pilinden dolayı 6V'tan düşük bir gerilim görmen gerekir. Haliyle negatif bir gerilim sadece gürültü olarak oluşabilir o da çok düşük seviyelerde olur. Kullandığın komutasyon diyodunun gerilimi kadar oluşur öyle söyleyeyim. Schottky için 0.35V-0.4V, klasik diyotlarda  0.7V-0.75V civarı olur.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 26 Eylül 2022, 22:41:22
Alıntı yapılan: muhendisbey - 26 Eylül 2022, 21:40:39COM ucunu GND'den ölçüyorsun değil mi?

Kullandığın sürücü H bridge ise polarizasyonu yani + ve - kutbu tersleyebilir. Zaten bu sayede motoru ileri ya da geri hareket ettirir.
Ancak bunda da GND'ye göre ölçersen ya 0V civarı ya da pilinden dolayı 6V'tan düşük bir gerilim görmen gerekir. Haliyle negatif bir gerilim sadece gürültü olarak oluşabilir o da çok düşük seviyelerde olur. Kullandığın komutasyon diyodunun gerilimi kadar oluşur öyle söyleyeyim. Schottky için 0.35V-0.4V, klasik diyotlarda  0.7V-0.75V civarı olur.

6V'un altinda gerilim okuyorum. COM ucunu motorun eksisine dokunduruyorum. Hatam burada olabilir, deneyecegim. Cünkü polaritemi asagidaki gibi yapiyorum. Forward gitmesi gerekiyor. Ancak okudugum gerilim kesinlikle gürültü degil. Bundan eminim. Dediginiz dogru.

(https://i.ibb.co/rcgqBWD/pol.png) (https://ibb.co/rcgqBWD)
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: muhendisbey - 27 Eylül 2022, 00:16:21
Motorun -'si yön değiştirebilir. Bu nedenle zaten h bridge sürücülerde motor bağlantısı - ya da + şeklinde değil, A-B şeklinde isimlendirilir.

Eğer motorunuz tek yönlü dönecekse n kanal bir mosfetle de sürebilirsiniz. Hem maliyet açısından da daha uygun olur. İleride büyük bir motor kullanacağınız zaman da, daha yüksek akımlı aynı tetik seviyesine sahip olanla değiştirerek büyük bir tasarım değişikliğinden de kurtulursunuz.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: mfurkan7 - 27 Eylül 2022, 09:48:06
Alıntı yapılan: muhendisbey - 27 Eylül 2022, 00:16:21Motorun -'si yön değiştirebilir. Bu nedenle zaten h bridge sürücülerde motor bağlantısı - ya da + şeklinde değil, A-B şeklinde isimlendirilir.

Eğer motorunuz tek yönlü dönecekse n kanal bir mosfetle de sürebilirsiniz. Hem maliyet açısından da daha uygun olur. İleride büyük bir motor kullanacağınız zaman da, daha yüksek akımlı aynı tetik seviyesine sahip olanla değiştirerek büyük bir tasarım değişikliğinden de kurtulursunuz.

Hocam,
Pompa'da imalatci +'yi kirmizi nokta ile sabitlemis. Bundan dolayi da +'yi dogru sekilde vermem gerekiyor pompaya. Tasarimimda sabit gerilim ve tetiklenme süresi cok kritik. Sabit gerilimi motora bagli paralel bir zener ile saglayabilir miyim? Tetiklenme süresi icin de MOSFET'in hangi parametresi benim icin kritik olur. Datasheet'de nereye bakmaliyim?
Motor kisa devre ve maksimum akim cekme durumlarinda koruyucu bir sistem de gelistirmem gerekecek sadece mosfet kullanirsam.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: Sozuak - 27 Eylül 2022, 10:09:10
Motor gerilimi hiç çökmesin isterseniz en başta çok düşük iç  direnci olan (genelde yüksek akım kapasiteli) bir pili mümkün olduğunca  kalın ve kısa hatlarla bağlamanız lazım. Motora enerji verince hemen döner 50mS den kısa süre gecikmeniz olur ne kadar çok ön devre olursa o kadar  süre uzar. Tabi güç devrenizin de olması gerekenden güçlü olması gerekir ki akım darbesini karşılasın.
Zenerle motora sabit gerilim olmaz. Başta zener akımını sınırlamak için kullanacağınız ön direnç zaten sorun olur.

Zamanlama kritik sistemlerde şöyle olur. Pompa sürekli yada daha geniş zaman aralığında çalışır halde tutulur. Gerekirse ek valf ile motor bypass edilir zorlanmasın diye.  Valflerle  hassas zamanlama tutturulur yada pompa bir depoya ara ara hava basar yada vakum yapar. Stok basıncınız olur. Buradan basınç kritik seviyeye düştükçe motor çalıştırılır . Valfle de hassas  basınçlama işlemi yapılır. Motorun  çalışma süresinden ziyade pompanın gerekli basınca ulaşma süresi sizin için sorun olur bence.
Başlık: Ynt: Arduino Mega Gerilim Ölcümünde Dalgalanma Problemi Cözümü
Gönderen: muhendisbey - 27 Eylül 2022, 10:29:52
Zener tek başına gerilimi sabit tutamaz. Hele de bir motor beslemesinde.

Tetikleme süresi bir mosfette özellikle bu uygulamada sorun olabilecek son şeydir. Sürücü tekli mosfete göre yavaş bile kalabilir. Mosfete neredeyse enerji verdiğiniz anda zaten tetiklenmiş olur. Sizin uygulamanızda mosfette en dikkat etmeniz gereken şey mikrodenetleyicinin çalışma geriliminde saturasyona ulaşıp ulaşmadığıdır. Saturasyona ulaşmazsa hızla ısınır ve yanar. Yani motora seri çok küçük bir direnç atılmış gibi olur.

Bir ara ST Omnifet adında mosfetler çıkarmıştı. Bunlar tam istediğiniz gibi fakat Türkiye'de bulmak imkansız gibi bir şey.
Dediğiniz korumaları yapmak hazır sürücüden pahalıya gelebilir. Bu dediğinizde haklısınız.