ESP32 ADC Doğrusallık testi

Pwm ile dac oluşturulabilir. Arduino ile 8 bit denemiştim. Doğrusal olmasada sonuç fena olmadı. Sıkıntılı yön çözünürlüğün düşük olmasıydı ama esp de sanıyorum yüksek çözünürlük mümkün. Low pass filter kondansatörünün yarattığı gecikme sorun değil ise kullanılabilir.

Simülasyon link
 
Evet onu da denedim. :)
Sonuçlarını paylaşacağım.

LPF için de 2nd order filtre veya LCR filtre ile daha hızlı transfer mümkün gibi.
 
ESP32-S3 ADC testi de tamamlandı. Kaç gündür derlenip paylaşılmayı bekliyordu. S3 yeni bir model olduğu için biraz daha detaylı inceledim.

Önce özet bir kaç bilgi vereyim. S3 modelinde ADC'nin alt genlikteki kör bölgesi oldukça azalmış. 0 dB attenuator ayarında 11-13 mV seviyesinde. Lineerlik konusunda da WROOM ve WROVER modellerine göre daha iyi diyebilirim. Bunda da 6 ve 11 dB attenuatorde bir miktar eğrilik var. Ancak WROOM ve WROVER'a göre çok daha iyi.

0dB attenuator ve ölçüm başına 1 örnek ile başlayalım.
1673908654305.png


Bir miktar gürültü var ancak ofset çok daha düşük ve üst sınıra kadar lineer diyebiliriz. Aşağıdaki grafikte lineerlik konusunu biraz daha daetaylı analiz edeceğiz (ayarlar aynı):

1673908764560.png


X ekseni Voltajı, Y ekseni ADC değerini (sağ) ve Hata oranını (sol, %) gösteriyor.
Mavi seri multimetre ile ölçülen gerçek voltajı gösteriyor.
Turuncu seri ise ADC verisinden benim hesapladığım voltaj. Bunun için ADC ve ölçüm verilerinden çok noktadan eğim alıp ortalamasını aldım. Sonra bu ortalama eğimi kullanarak ofseti hesapladım. Bu ofset ve eğim bilgisiyle de her ölçümdeki ADC değerinden o noktadaki hesaplanan voltajı elde ettim.
Mor seri hesaplanan voltaj ile gerçek voltaj arasındaki hatanın oranını (gerçek voltaja oranla),
Siyah seri hesaplanan voltaj ile gerçek voltaj arasındaki hatanın oranını (dinamik alana, yani ölçülebilecek en yüksek voltaja oranla) gösteriyor.

Ölçüm başına 1 örnek aldığımız için WROOM ve WROVER serilerinde olduğu gibi gürültü gözle rahat görünüyor. Ancak genel olarak doğrusal ve kullanılabilir bir sonuç olduğunu söyleyebiliriz. Mor seriye baktığımızda düşük voltajlarda voltaja oranla olan hata payının %5 hatta çok düşük voltajlarda %25 seviyelerine kadar çıkabildiğini görüyoruz. Bu çok anormal değil çünkü örneğin 1mV civarında bir hata 15 mV gibi küçük bir değerde büyük bir orana denk geliyor. Ancak toplam dinamik alalığa ranla baktığımızda hatanın düzgün seyrettiğini çoğu zaman %0.5'nin altında olduğunu söyleyebiliriz (ortalama %0.14). Yine siyah çizgiye dikkat ettiğimizde sapmanın çok hafif bir şekilde önce azaldığını, sonra tekrar yükseldiğini görebiliriz. Bu da bize tam lineer gibi görünen hsaplamanın aslında çok hafif bir polinom yapısında olduğunu gösteriyor.

Aşağıda yinr 0 dB attenuator ayarıyla ölçüm başına örneği 5 yaptığımızdaki sonuçları görebilirsiniz.



1673909362144.png
1673909382756.png


Gürültünün önemli ölçüde azaldığını görüyoruz. Diğer sonuçlar çok benzer. Doğrusallık konusunda da bir derdimiz yok gibi. Tek problem 13 mV civarındaki ofset. Ortalama hata (toplam dinamik alana göre) %-0.09.

Örnek sayısını 10'a çıkarttığımızda ise sonuçlar şöyle:
1673909998611.png
1673910018783.png


Artk gürültünün etkisi iyice azalıyor. Hata payı az etkileniyor, çünkü hızlı olsun diye eğim ve ofseti hesaplarken regresyon yapmak yerine basit bir çok noktalı ortalama aldım. Regresayon yaparak hata payı daha da azaltılabilir.

Aşağıda ise ölçüm başına 25 örnek ile olan grafikler var:

1673910166060.png
1673910212260.png


Burada artık gürültü yok denecek kadar az etkiliyor.

Bir sonraki mesajda 2.5dB attenuator ile olan sonuçları paylaşacağım...
 
ESP32-S3 2.5 dB Attenuator Sonuçları


2.5dB attenuator ve ölçüm başına 1 örnek:

1673910342427.png
1673910352308.png


Gürültü 0dB'e geöre biraz daha azalıyor. Doğrusallık neredeyse aynı. Belki çok çok az daha eğri olabilir üst bölgede (siyah seriye bakın). Ofset 14 mv, dinamik aralık 13-1260 mV.


2.5dB attenuator ve ölçüm başına 5 örnek:
1673910456331.png
1673910469696.png

Gürültü doğal olarak azalıyor. 0dB 5 örnek seçeneğine göre gürütünün etkisi daha az.



2.5dB attenuator ve ölçüm başına 10 örnek:
1673910544373.png
1673910561948.png

Doğrusallık aynı. Gürültü oldukça azaldı. Artık dümdüz bir çizgi görüyoruz sayılır. Alt bölgedeki hata payı da oldukça azaldı. Bu giriş katındaki gürültüden önmli ölçüde kurtulduğumuzu gösteriyor.
 
Son düzenleme:
ESP32-S3 6 dB Attenuator Sonuçları

6dB attenuator ve ölçüm başına 1 örnek:
1673910830341.png
1673910840591.png

Gürültü daha az turuncu çizgi de doğrusal görünüyor. Ancak dikkat ederseniz siyah serideki eğrilme arttı. Bu da çizginin biraz daha eğrildiğini gözteriyor. Yakından bakarsanız turuncu çizginin çok hafif bir yay çizdiğini göreceksiniz. Ancak hata payı oldukça düşük. Ofset 20 mV civarına çıktı. Dinamik aralığımız da 20-1775 mV oldu.


6dB attenuator ve ölçüm başına 5 örnek:
1673911025952.png
1673911047068.png

Gürültü iyi durumda. Diğer özellikler aynı.



6dB attenuator ve ölçüm başına 10 örnek:
1673911289094.png
1673911309868.png
 
ESP32-S3 11 dB Attenuator Sonuçları

11dB attenuator ve ölçüm başına 1 örnek:

1673911868566.png
1673911366386.png


Üst kısımdaki eğrilme hemen göze çarpıyor. Onun dışında çizginin genelinde de eğrilme arttı. Eğimi daha iyi hesaplamakla uğraşsaydım sonuç daha iyi olabilirdi ancak üst kısmı görünce gerek olmadığını düşündüm. Gürültü etkisi diğer attenuator seçeneklerine göre çok daha az ancak ofset 32 mV civarına çıktı ve dinamik aralık 32-3260 mV. Ancak bunun 2400mV'a kadar olan bölgesi doğrsala yakın. Sonrasında eğrilmeye başlıyor. Siyah seriden de daha iyi görebilirsiniz.



11dB attenuator ve ölçüm başına 5 örnek:
1673911887667.png
1673911747064.png

Gürültü iyice azaldı. Diğer özellikler aynı.



11dB attenuator ve ölçüm başına 10 örnek:
1673911903974.png
1673911918876.png

Gürültü neredeyse yok.



11dB attenuator ve ölçüm başına 25 örnek:
1673911964967.png
1673911983185.png

Gürültü yok...
 
Sonuç olarak ESP32-S3 serisinde WROOM ve WROVER'a göre ADC daha gelişmiş görünüyor. Benim şahsi tercihim ESP32-S3 modelini gürültü ve doğrusallık açısından 2.5 dB attenuator seviyesinde ölçüm başına 5-10 örnek ortalaması alarak kullanmak gibi görünüyor.

Bu arada tekrar hatırlatayım ESP32-S3'de WROVER ve WROOM'dan farklı olarak DAC yok.
WROVER kullanarak bir DAC testi de yaptım. S3 ile de PWM sinyali üreterek bir DAC denemesi yaptım. Onların sonuçlarını da daha sonra ayrı bir konuda paylaşacağım.
 

Çevrimiçi personel

Forum istatistikleri

Konular
5,654
Mesajlar
97,283
Üyeler
2,438
Son üye
İbrahimSönmez

Son kaynaklar

Son profil mesajları

cemalettin keçeci wrote on HaydarBaris's profile.
barış kardeşim bende bu sene akıllı denizaltı projesine girdim ve sensörleri arastırıyorum tam olarak hangi sensör ve markaları kullandınız yardımcı olabilir misin?
m.white wrote on Altair's profile.
İyi akşamlar.Arabanız ne marka ve sorunu nedir.Ben araba tamircisi değilim ama tamirden anlarım.
* En mühim ve feyizli vazifelerimiz millî eğitim işleridir. Millî eğitim işlerinde mutlaka muzaffer olmak lâzımdır. Bir milletin hakikî kurtuluşu ancak bu suretle olur. (1922)
Kesici/Spindle hızı hesaplamak için SpreadSheet UDF'leri kullanın, hesap makinesi çok eski kalan bir yöntem :)
Dr. Bülent Başaran,
Elektrik ve Elektronik Mühendisi
Yonga Tasarım Özdevinimcisi
Üç güzel "çocuk" babası
Ortahisar/Ürgüp/Konya/Ankara/Pittsburgh/San Francisco/Atlanta/Alaçatı/Taşucu...

Back
Top