Forum: Mikrocontroller und Digitale Elektronik DAC-Nucleo-Stm32


von Mark S. (mark522)


Lesenswert?

hallo zusammen,


ich möchte variable Analogspannung anhahnd STM32-µC erzeugen. Nun habe 
ich 2 Probleme. Bei der Support Package für Nucleo Boards in Simulink 
gibts nur PWM Outout und keine DAC-Ausganäge.
Ich glaube aber, dass dieses PWM-Signal als Analogspannung funktionieren 
kann. Und selbst wenn der µC über 2 DACs verfügt, reicht mir das nicht. 
Weil ich nähmlich 6 analoge Ausgänge brauche.
Das zweite Problem ist, dass der µC nur bis 3-3.3 V Analog Spannung 
erzeugen kann, jedoch brauche ich so einen analogen Spannungsbereich von 
0V-5V. Weißt ihr, ob es so einen Chip gibt, sodass ich dies mit 
PWM-Signalen von dem µC steuere, und die liefert dann analoge Output.

Ich wäre dankbar für euere Vorschläge.

mfg

von Jörg B. (jbernau)


Lesenswert?

Mark S. schrieb:
> Ich wäre dankbar für euere Vorschläge.

Welche ICs hast Du dem im Auge? Es gibt ja so einige DACs und der 
Spannungsbereich lässt sich evtl. mit einem OPV erweitern.

VG

Jörg

von Cragy Wägy (Gast)


Lesenswert?

Die übliche IngenieurAntwort: es kommt darauf an.

>Erstmal eine Frage: Welche Dynamik soll dein Analogsignal haben?

Wenn du wirklich wirklich bei PWM bleiben willst, kannst du eine PWM 
tiefpass-filtern und so den Analogwert bilden. Das hast du 
möglicherweise schon implizert
>Ich glaube aber, dass dieses PWM-Signal als Analogspannung funktionieren
>kann.
Der Pin des µC selbst wird es nicht können, aber das geglättete 
PWM-Signal schon.
Bei dem Ansatz gibt es immer den Tradeoff zwischen dem Grad der Glättung 
und dem Restrippel. Um so glatter du dein Analogsignal kriegen willst, 
umso höher wird die Zeitkosntante des Tiefpasses. Dadurch verlängert 
sich die Reaktionszeit des Systems. Aber das ist dir bestimmt klar. Man 
kann die Dynamik verbessern, wenn man eine hohe PWM Frequenz wählt.
Falls du diesen Ansatz verfolgst, vielleicht kannst du die 
Zeitkonstanten des/der Tiefpasse in deinem Simulink Modell erfassen.

Vielleicht... vielleicht... vielleicht, könnte man auch mit einem 
RMS-To-DC Chip arbeiten. Bei manchen kann man über externe Beschaltung 
die Zeitkonstante der "Mittelung" festlegen. Ein Fuchs würde die genau 
auf die PWM Frequenz legen.

Um von 0 bis 3,3V auf 0 bis 5V zu kommen, könntest du eine 
Verstärkerschalung nehmen. Eine einfache nicht-invertierende Toplogie 
würde es tun.
>Beachte die Slewrate!!!

von Mark S. (mark522)


Lesenswert?

kommt sowas nicht in Frage ?

https://www.instructables.com/id/How-to-use-an-IC-DAC/

ich weiß aber ganz eherlich nicht, ob die Pins die gleichen analogen 
Ausgangspannung hätten. es geht eigentöich um eine Simulation für eine 
Ntc Sensor mit Matlab-simulink. wäre die Temperatur in der Simulation 70 
Grad dann würde der µC-Pin z.B. 4 Volt erzeugen.

low-Pass filter ist nicht so Zuverlässig denke ich für meinen Fall.

lg

: Bearbeitet durch User
von Cragy Wägy (Gast)


Lesenswert?

Ok, ich kenne Matlab-Simulink nicht und ich bin davon ausgegangen, dass 
dir Bibliotheken die nur mit bekannter Peripherie (PWM) arbeiten 
passenden Code erzeugen und du vielleicht deshalb am liebsten bei PWM 
bleiben willst.

Ansonsten, klar, nimm einen DAC mit I2C oder SPI oder was immer dir in 
den Kram passt mit passenden Spezifikaitonen.
Deine Anwendung klingt nicht danach, dass du Spannungssprünge am DAC im 
µs Bereich brauchst - aber das musst du selbst wissen.
Bei manchen DAC´s kann man externe Referenzspannungsquellen verwenden, 
dann könntest du direkt auf deine 0 bis 5V kommen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.