Mündəricat:
- Addım 1: Giriş
- Addım 2: İstifadə olunan mənbələr
- Addım 3: istifadə olunan dövrə
- Addım 4: Çıxış Gərginliyi Rəqəmsal Potansiometr X9C103 -ün Variasiyasından asılıdır
- Addım 5: X9C103 -ə nəzarət
- Addım 6: Bağlantılar
- Addım 7: Yuxarı və Aşağı Rampaların Osiloskopunda çəkin
- Addım 8: Gözlənilən oxunuşa qarşı
- Addım 9: Düzəliş
- Addım 10: Düzəldildikdən sonra oxunması gözlənilir
- Addım 11: C# proqramının icrası
- Addım 12: Rampanın START Mesajını gözləyin
- Addım 13: ESP32 Mənbə Kodu - Düzəliş Fonksiyonuna və İstifadəsinə Nümunə
- Addım 14: Əvvəlki Texnikalarla Müqayisə
- Addım 15: ESP32 QAYNAQ KODU - Bəyannamələr və Quraşdırma ()
- Addım 16: ESP32 QAYNAQ KODU - Loop ()
- Addım 17: ESP32 QAYNAQ KODU - Loop ()
- Addım 18: ESP32 QAYNAQ KODU - Pulse ()
- Addım 19: C # -DƏ PROQRAMIN KAYNAK KODU - C # -də Proqramın İcra Edilməsi
- Addım 20: C# PROQRAMININ KAYNAK KODU - Kitabxanalar
- Addım 21: C # -DƏ PROQRAMIN QAYNAQ KODU - Ad Məkanı, Sınıf və Qlobal
- Addım 22: C# -DƏ PROQRAMIN QAYNAQ KODU - RegPol ()
- Addım 23:
- Addım 24: Dosyaları Yükləyin
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Bu gün "ESP32 avtomatlaşdırılmış ADC kalibrləmə" haqqında danışacağıq. Çox texniki bir mövzu kimi görünə bilər, amma düşünürəm ki, bu barədə bir az məlumat əldə etməyiniz çox vacibdir.
Bunun səbəbi, yalnız ESP32 və ya hətta ADC kalibrlənməsi ilə əlaqədar deyil, oxumaq istəyə biləcəyiniz analog sensorlar ilə əlaqəli hər şeydir.
Sensorların çoxu xətti deyildir, buna görə analog rəqəmsal çeviricilər üçün avtomatik prototipli kalibrator təqdim edəcəyik. Ayrıca, bir ESP32 AD -də bir düzəliş edəcəyik.
Addım 1: Giriş
Bu mövzuda bir az danışdığım bir video var: Bilmirdinmi? ESP32 ADC tənzimlənməsi. İndi bütün polinomlu reqressiya prosesini etməyə mane olan avtomatik bir şəkildə danışaq. Onu yoxlamaq!
Addım 2: İstifadə olunan mənbələr
· Tullananlar
· 1x Protoboard
· 1x ESP WROOM 32 DevKit
· 1x USB kabeli
· 2x 10k rezistorlar
· Gərginlik bölücüsünü tənzimləmək üçün 1x 6k8 rezistor və ya 1x 10k mexaniki potensiometr
· 1x X9C103 - 10k rəqəmsal potensiometr
· 1x LM358 - Əməliyyat gücləndiricisi
Addım 3: istifadə olunan dövrə
Bu dövrədə LM358, "gərginlik tamponu" konfiqurasiyasında işləyən bir gücləndiricidir və iki gərginlik bölücüsünü biri digərinə təsir etməməsi üçün təcrid edir. Bu, daha sadə bir ifadə əldə etməyə imkan verir, çünki R1 və R2 yaxşı bir yaxınlaşma ilə artıq RB ilə paralel olaraq nəzərdən keçirilə bilməz.
Addım 4: Çıxış Gərginliyi Rəqəmsal Potansiometr X9C103 -ün Variasiyasından asılıdır
Dövrə üçün əldə etdiyimiz ifadəyə əsaslanaraq, rəqəmsal potensiometrini 0 ilə 10 k arasında dəyişdiyimiz zaman bu çıxışdakı gərginlik əyrisidir.
Addım 5: X9C103 -ə nəzarət
· X9C103 rəqəmsal potansiyometrimizi idarə etmək üçün onu VCC -ə qoşan ESP32 -ni gücləndirən USB -dən gələn 5V ilə təmin edəcəyik.
· YUKARI / AŞAĞI pinini GPIO12 -yə bağlayırıq.
· INCREMENT pinini GPIO13 -ə bağlayırıq.
· DEVICE SELECT (CS) və VSS -ni GND -ə bağlayırıq.
· VH / RH -ni 5V -ə bağlayırıq.
· VL / RL -ni GND -ə bağlayırıq.
· RW / VW -ni gərginlik tampon girişinə bağlayırıq.
Addım 6: Bağlantılar
Addım 7: Yuxarı və Aşağı Rampaların Osiloskopunda çəkin
ESP32 kodunun yaratdığı iki rampanı müşahidə edə bilərik.
Yüksəlmə rampasının dəyərləri tutulur və düzəliş əyrisinin qiymətləndirilməsi və təyin edilməsi üçün C# proqramına göndərilir.
Addım 8: Gözlənilən oxunuşa qarşı
Addım 9: Düzəliş
ADC -ni düzəltmək üçün səhv əyrisindən istifadə edəcəyik. Bunun üçün ADC dəyərləri ilə C#-də hazırlanmış bir proqramı qidalandıracağıq. Oxunan dəyərlə gözlənilən arasındakı fərqi hesablayacaq, beləliklə ADC dəyərinin bir funksiyası olaraq ERROR əyrisi yaradacaq.
Bu əyrinin davranışını bilə -bilə səhvini biləcəyik və onu düzəldə biləcəyik.
Bu əyrini bilmək üçün C# proqramı bir polinom reqressiyası aparacaq bir kitabxanadan istifadə edəcək (əvvəlki videolarda olduğu kimi).
Addım 10: Düzəldildikdən sonra oxunması gözlənilir
Addım 11: C# proqramının icrası
Addım 12: Rampanın START Mesajını gözləyin
Addım 13: ESP32 Mənbə Kodu - Düzəliş Fonksiyonuna və İstifadəsinə Nümunə
Addım 14: Əvvəlki Texnikalarla Müqayisə
Addım 15: ESP32 QAYNAQ KODU - Bəyannamələr və Quraşdırma ()
Addım 16: ESP32 QAYNAQ KODU - Loop ()
Addım 17: ESP32 QAYNAQ KODU - Loop ()
Addım 18: ESP32 QAYNAQ KODU - Pulse ()
Addım 19: C # -DƏ PROQRAMIN KAYNAK KODU - C # -də Proqramın İcra Edilməsi
Addım 20: C# PROQRAMININ KAYNAK KODU - Kitabxanalar
Addım 21: C # -DƏ PROQRAMIN QAYNAQ KODU - Ad Məkanı, Sınıf və Qlobal
Addım 22: C# -DƏ PROQRAMIN QAYNAQ KODU - RegPol ()
Addım 23:
Addım 24: Dosyaları Yükləyin
RAR