Konzept

Hier geht es um einen Filter um aus einem PWM-Signal eine präzise Gleichspannung zu machen.

Es besteht aus drei Teilen:

  • RC-Glied
  • Puffer
  • Sellen-Key-Filter

Entwicklung

Es wurde zusammen mit Chatgpt.com entwickelt.

Berechneter Rippel (p-p)8.0 µV.

Damit ist von der Filterseite her alles getan was erforderlich ist.

Ich habe die Schaltung mit LTSpice simmuliert:

Hier das Ergebnis der Simmulation für 5kHz und 5µS Impulsdauer. Die Zoomdarstellung zeigt, dass ab ca. 120mS die Spannung sich nicht mehr verändert.

Der von Chatgpt.com angegebene Ripple vom 8µV wird durch die Simmulation bestätigt.

Praktische Erprobung

Meine Erfahrungen mit dem ESP32-C3-Board mit 0.42″ Display.

Der erste Schritt – Inbetriebnahme mit Micropython

Ein Micropythonimage zu finden war kein Problem. Unter https://micropython.org/download/ESP32_C3 kann man das herunterladen. Es ist auf die nur 4MB Flash des C3 ausgelegt. Ich habe das Image für den C3-Mini von Wemos genommen. Das hat funktioniert.

Am spannensden war die Inbetriebnahme des Displays. Die Datenlage hierzu ist sehr begrenzt. Offiziell sind nur die Pins des I2C-Busses bekannt: SCL = GPIO6, SDA = GPIO5. Zum Controller ist bei den Verkäufern in China nichts zu finden. ChatGPT.com tippte auf SSD1306.

Ich habe dann in Thonny den ssd1306-Treiber geladen und das von chatgpt vorgeschlagene Testprogrammvorschlag ausprobiert. Und … es funktionierte. Hier das von mir etwas erweiterete Testprogramm:

# Erster Displaytest -> OK

from machine import Pin, I2C
import ssd1306
import gc

# Display I2C
Disp_SCL = const(6)
Disp_SDA = const(5)

# Allgemeiner I2C
SCL = const(9)
SDA = const(8)

# Display Test
i2c = I2C(0, scl=Pin(Disp_SCL), sda=Pin(Disp_SDA))
oled = ssd1306.SSD1306_I2C(72, 40, i2c)
oled.fill(0)
oled.text("Hallo C3", 0, 0)
oled.text("OK", 0, 10)
oled.text(str(gc.mem_free()) + ' kB', 0, 30)
oled.show()

Weitere Fonts verwenden

Den ADC des C3 untersuchen

Gemäß dem Datenblatt des ESP32-C3 beträgt:

  • DNL -7 … 7 LSB – bei 3,3V -> 0.0056 V oder 0.17 %
  • INL -12 … 12 LSB – bei 3,3 V -> 0.0097 V oder 0.29 %

Soweit erstmal meine Ersten Erfahrungen. Sobald ich neue Erkenntnisse habe werde ich sie hier veröffentlichen.