PWM Signal Glätten

Themabewertung:
  • 1 Bewertung(en) - 4 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
tesacrep
Administrator
*******

Beiträge: 500
Registriert seit: Dec 2013
Bewertung: 2
#1
10.01.2016, 16:59

Hallo Zusammen:

ich habe folgendes Problem bzw. Ausgangssituation:

Ein Arduino der ein PWM Siganl ausgibt aber ein Gerät welches 0-5V Eingang hat.
Ich hätte gerne eine Lineare Kurve von 0 bis 5V.

Einen analog Pin zu verwenden geht nicht weil diese bei dieser Anwendung alle belegt sind.

Aktuelle habe ich Anhang befindliche Schaltung. Diese Funktioniert aber lässt bei 5V Input nur 4....V raus. Ich hätte aber gerne 5V. Lieder muss die Schaltung auch flott reagieren. Deswegen hab ich nicht viel Spielraum am Kondensator.

Wie glättet ihr eure Spannungen.


Angehängte Dateien Thumbnail(s)
   
Zitieren
Unilein
Fachgebiet Rauchentwicklung
*******

Beiträge: 741
Registriert seit: Apr 2014
Bewertung: 5
#2
10.01.2016, 17:15

Hi,

ein PWM-Signal ist ja letztendlich eine Aneinanderreihung von Rechtecksignalen. Die maximale Amplitude des PWM-Signals dürfte also maximal an die Betriebsspannung des Ardiuno heran kommen, wird aber eher etwas darunter liegen.

Wenn ich Dich richtig verstehe, möchtest Du am Ende eine Sinusfürmige Spannung haben? Die von Dir gezeigte Schaltung ist im Grunde ein klassischer kleiner Verstärker. Wie flott muss die Schaltung denn reagieren? Und was genau ist Dein Ziel? Vielleicht gibt es einen anderen Ansatz.

Gruß
Uni

Mal noch eine Frage:

Du hast ja im linken Teil Deiner Schaltung einen Hochpassfilter. Klassisch geeignet, um ein Rechtecksignal zu glätten. Hast Du mal an Ausgang des Filters gemessen, wie die Spannung dort aussieht? Vielleicht sogar mit einem Oszi?

Gruß
Uni
-----

Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
(Dieser Beitrag wurde zuletzt bearbeitet: 10.01.2016, 17:35 von Unilein.)
Zitieren
Unilein
Fachgebiet Rauchentwicklung
*******

Beiträge: 741
Registriert seit: Apr 2014
Bewertung: 5
#3
13.01.2016, 22:25

Und? Wie schauts denn jetzt?

Ich würde ja gerne helfen, aber ein paar Infos wären wichtig.

Gruß
Uni
-----

Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Zitieren
tesacrep
Administrator
*******

Beiträge: 500
Registriert seit: Dec 2013
Bewertung: 2
#4
17.01.2016, 00:17

Hi,

hatte erst heute wieder zeit mich mit dem Thema auseinanderzusetzen.

Also ich fange mal mit den Anforderungen an:

- Reaktionszeit unter 0.25 Sec.
- Linearer Output

Mein nächster Versuch wird:

Zitat:Hast Du mal an Ausgang des Filters gemessen


Nun mal zum allgemeinen Nutzen der Schaltung.
Ich übergebe über den Arduino einen Wert (Temperatursignal). Dieses Sieht wie folgt aus:

0V -> 0C
2.5V -> 500C
5V -> 1000C

Lieder misst der Controller an den ich den "wert" übergebe alles über 0.01V als 5V.
Deswegen muss die Spannung geglättet werden.
Zitieren
Unilein
Fachgebiet Rauchentwicklung
*******

Beiträge: 741
Registriert seit: Apr 2014
Bewertung: 5
#5
17.01.2016, 16:15

Zitat:Nun mal zum allgemeinen Nutzen der Schaltung.
Ich übergebe über den Arduino einen Wert (Temperatursignal). Dieses Sieht wie folgt aus:

Also Du misst mit dem Arduino eine Temperatur. Entweder mit einem Sensor, der Dir bereits einen digitalen Wert liefert oder mit einem Temperaturabhängigen Widerstand, der Dir ein analoges Signal liefert, welches Du mit dem Arduino in ein digitales Signal umwandelst?

Zitat:Lieder misst der Controller an den ich den "wert" übergebe alles über 0.01V als 5V.
Deswegen muss die Spannung geglättet werden.

Demnach übergibst Du den Wert nicht digital sondern Analog? Und der Empfänger sagt beim Empfang einer Spannung > 0,01 Volt, dass es immer 5 Volt ist. Also 0,02 Volt ist auch auch 5 Volt?

Was hast Du denn da für einen Empfänger? Du musst ja da, zumindest nach meiner Interpretation , nichts glätten, sondern Du musst Dir den Empfänger ansehen und überlegen, was dieser benötigt, damit es funktioniert.

Hast Du mal ein Bild der gesamten Schaltung? Also wie es mal aussehen soll? Ich habe immer noch Probleme, mir das im Ganzen vorzustellen.

Gruß
Uni
-----

Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Zitieren
tesacrep
Administrator
*******

Beiträge: 500
Registriert seit: Dec 2013
Bewertung: 2
#6
18.01.2016, 22:35

Zitat:Also Du misst mit dem Arduino eine Temperatur. Entweder mit einem Sensor, der Dir bereits einen digitalen Wert liefert oder mit einem Temperaturabhängigen Widerstand, der Dir ein analoges Signal liefert, welches Du mit dem Arduino in ein digitales Signal umwandelst?

Werder noch. Ich verwende einen so genannten Thermocouple (auch K-Type genannt). Dieser muss erstmal verstärkt werden (MAX 6675). Dieser wird per SPI an den Arduino angeschlossen.

Dieser "Konvertiert" das Signal wie in der Tabelle:

PWM C zu gewünschter V nach Glätter
0 0 0
127 500 2,5
255 1000 5

Nun ist das Problem das der Arduino numal die Werte aus der Tabelle mit PWM ausgibt.

Der Controller der die Temperatur wieder einliest braucht aber ein 0-5V Signal. Also eine Kurve.

Dieser werter PWM Wie folgt:

PWM C
0 0
1 1000
2 1000
255 1000

Eine gesamte Schaltung habe ich leider nicht. Nur den aufbau des Moduls welche die Spannung glätten soll.

Achja: Einen Analogpin mit dem die ganze Schaltung hinfällig wäre habe ich leider nicht.

Kannst du dir nun ein wenig besser vorstellen was ich vorhabe?
Zum messen der Spannung bin ich leider noch nicht gekommen, hoffe aber dies morgen zu schaffen.

Die Zwischenschritte in der Tabelle musst du dir denken.
(Dieser Beitrag wurde zuletzt bearbeitet: 18.01.2016, 22:43 von tesacrep.)
Zitieren
Unilein
Fachgebiet Rauchentwicklung
*******

Beiträge: 741
Registriert seit: Apr 2014
Bewertung: 5
#7
18.01.2016, 23:18

Ja, ich glaube, jetzt verstehe ich es.

Du hast für die Ausgabe des Signals nur einen Digitalpin. Die Ausgabe erfolgt dann als PWM. Dein Empfängermodul benötigt ein analoges Signal und interpretiert das PWM-Signal, welches ja ein Digitales ist, als analoges Signal, was dann zu Deinem Ergebnis führt.

Ich hätte da ja mal einen anderen Denkansatz.

Wie wäre es, wenn Du das PWM-Signal in ein 8-Bit Schieberegister leitest und die Ausgänge dann an einen 8-Bit-Digital-Analog-Wandler packst. Die Analoge Ausgangsspannung musst Du dann evtl noch ein wenig anpassen.... Könnte aber klappen.

Eine grobe Idee habe ich mal angehängt. Mit SN74HC595 und TLC7528. Ist natürlich nur ein Beispiel.

Gruß
Uni


   
-----

Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Zitieren
schuppeste
Junior Member
**

Beiträge: 3
Registriert seit: Jan 2016
Bewertung: 0
#8
20.01.2016, 15:10

Das ganze sollte doch mit einem analog-digitalfilter funktionieren.. Das das für eine genaue Messung nicht die beste Methode ist, müsste einleuchten. Ich bekomme bei Google 1000 Ergebnisse bei "pwm to analog circuit" meist ein einfacher Rc Filter der auf die pwm Frequenz abgestimmt ist.

Gesendet von meinem D5803 mit Tapatalk
Zitieren
Unilein
Fachgebiet Rauchentwicklung
*******

Beiträge: 741
Registriert seit: Apr 2014
Bewertung: 5
#9
20.01.2016, 17:20

@tesacrep: mit welcher Frequenz haust Du das PWM-Signal maximal raus? In Deinem Schaltplan hast Du einen 1µF Kondensator und einen 10 kOhm Widerstand. Rechnerisch resultiert daraus eine Frequenz von ca 15 Hz.
-----

Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Zitieren
schuppeste
Junior Member
**

Beiträge: 3
Registriert seit: Jan 2016
Bewertung: 0
#10
20.01.2016, 17:45

Ups sorry, Dank Tapatalk hab ich die Anhänge und den Eröffnungspost nicht gesehen. Da muss ich nochmal Zuhause lesen.

Gesendet von meinem D5803 mit Tapatalk
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste