Forum: Mikrocontroller und Digitale Elektronik Zu schnelles PWM-Signal messen


von Walter (Gast)


Lesenswert?

Moin,
ich muss den Strom eines BDC-Motors messen,
dabei brauche ich nur den Mittelwert.
Das Problem:
PWM-Signal ist über 50kHz, der vorhandene AVR kann nur gut 10kHz,
also unterabgetastet.
Meine Idee ist jetzt, nicht in festen Zeitabständen zu messen, sondern 
die Abstände per Zufall variert. Geht das oder gibts da ein 
prinzipielles Problem?

von Düsendieb (Gast)


Lesenswert?

Was spricht gegen eine klassische Glättung mittels integrierendem 
Verstärker?

von Walter (Gast)


Lesenswert?

die aufwändige Analogschaltung,
ich habe halt hier eine fertige Schaltung und wenn es mit der geht 
möchte ich sie verwenden.
Ein integrierender Verstärker ist ja nicht unbedingt trivial

von Dennis S. (bzzzt)


Lesenswert?

Ist doch PWM, also nur zwei Spannungspegel. Der AVR wird doch bestimmt 
mit mehr als 100 kHz getaktet.
Dann misst du in einer Assemblerschleife die Länge des High- und 
Low-Anteile und kannst dir so den Tastgrad berechnen.

Und zum Thema integrierender Verstärker: Ein RC-Glied vor dem 
Analogeingang des AVRs bildet dir auch den Mittelwert, da braucht man 
keinen Verstärker.

von Walter (Gast)


Lesenswert?

Dennis S. schrieb:
> Ist doch PWM, also nur zwei Spannungspegel.

nicht ganz, ich messe ja den Strom der durch eine Spule fließt,
der hat nicht nur zwei Pegel

von Dennis S. (bzzzt)


Lesenswert?

Dann bleibt dir immer noch das RC-Glied, falls sich dir der Mittelwert 
dann nicht zu langsam anpasst.

von Walter (Gast)


Lesenswert?

Dennis S. schrieb:
> Dann bleibt dir immer noch das RC-Glied, falls sich dir der Mittelwert
> dann nicht zu langsam anpasst.

RC geht noch, das lässt sich noch fliegend ergänzen,
den Mittelwert brauche ich auch nur ca. 2x pro Sekunde,
das würde also wohl gehen.

Aber was ist mit der Digitallösung aus meinem ersten Post, was sagt da 
die Systemtheorie dazu?

von holger (Gast)


Lesenswert?

>Aber was ist mit der Digitallösung aus meinem ersten Post, was sagt da
>die Systemtheorie dazu?

Das dein Vorhaben Quatsch ist.

von Dennis S. (bzzzt)


Lesenswert?

Mal vom konkreten Sinn und dem Verhältnis zwischen Aufwand und Nutzen 
abgesehen:

Wenn Walter wirklich Random Sampling betreibt und den Mittelwert der 
Messwerte bildet, sollte es klappen. Jedoch wird er sehr viele Messwerte 
benötigen (in der Größenordnung 2^{Auflösung in Bits} weil sein Signal 
so komisch ist?), um einen passenden Mittelwert zu erhalten.

… mal so aus dem Bauch heraus.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Walter schrieb:
> ich muss den Strom eines BDC-Motors messen,
> dabei brauche ich nur den Mittelwert.
> Das Problem:
> PWM-Signal ist über 50kHz, der vorhandene AVR kann nur gut 10kHz,
> also unterabgetastet.

Das einfachste ist es, den AVR zeitsynchron zur PWM messen zu lassen. 
Lege also einen Pin (Interruptpin) direkt an die PWM-Quelle des BLDC und 
lass dann damit den ADC des AVR samplen und den Strom über dem Shunt 
messen. Gegebenenfalls kann man mit programmierbarer Messverzögerung den 
realen Stromwert messen.

von Walter (Gast)


Lesenswert?

holger schrieb:
>>Aber was ist mit der Digitallösung aus meinem ersten Post, was sagt da
>>die Systemtheorie dazu?
>
> Das dein Vorhaben Quatsch ist.

habe ich noch in keinem Fachbuch gelesen, da steht immer nur drin warum 
etwas funktioniert bzw. nicht

von Walter (Gast)


Lesenswert?

Knut Ballhause schrieb:
> Das einfachste ist es, den AVR zeitsynchron zur PWM messen zu lassen.

dann fehlt mir aber zum einen das Tastverhältnis und zum anderen 
variiert der Strom doch während der Ein-phase
(und ich kann das Gehäuse des Motors/Controllers nicht öffnen, komme 
also nicht an die PWM Quelle)

von Dennis S. (bzzzt)


Lesenswert?

Wenn du uns das schon am Anfang gesagt hättest, hätten wir dir doch 
gleich das RC-Glied empfohlen. ;)

von G a s t (Gast)


Lesenswert?

Walter schrieb:
> Aber was ist mit der Digitallösung aus meinem ersten Post, was sagt da
> die Systemtheorie dazu?

Wenn du die PWM-Frequenz kennst oder durch den uC messen läßt, kannst du 
Aliasing ausnutzen, indem du dich mit deine Abtastfrequenz dicht daneben 
legst. Dann siehst der uC die PWM-Pulse quasi in Zeitlupe.

von Ralph (Gast)


Lesenswert?

Verwende den Timereingang und messe die PWM Frequenz , falls variabel, 
und das Tastverhältnis.
Dazu die Versorgungsspannung des Motors.
Der Rest ist dann nur noch Mathematik.

von Walter (Gast)


Lesenswert?

Ralph schrieb:
> Verwende den Timereingang und messe die PWM Frequenz , falls variabel,
> und das Tastverhältnis.
> Dazu die Versorgungsspannung des Motors.
> Der Rest ist dann nur noch Mathematik.

vielleicht habe ich mich da etwas unklar ausgedrückt:
ich möchte den Strom messen (über einen Shunt),
aber der ist während der Einphase doch nicht konstant,
also komme ich mit dem Tastverhältnis allein nicht weiter.

Ich bastel jetzt Mal eine Simulation mit der zufälligen Abtastung und 
melde mich dann mit dem Ergebnis ...

von Ralph (Gast)


Lesenswert?

Mit dem Kennwerten des Motors, der Versorgungsspannung und der 
resultierenden Drehzahl lässt sich der Stromverlauf über den Motor 
berechnen.
Und das mit nahezu beliebiger Auflösung, abhängig der vorhandenen 
Rechenzeit und Eingangssignalauflösung.

Beim Messen solch dynamischer Signalverläufe wie es mit Induktivitäten 
bei gepulsten Spannung entstehen wirst du immer Probleme haben.

Im Prinzip hast du 2 Möglichkeiten zum direkten Messen.
1. ein Oversampling mit einem vielfachen der PWM Frequenz um den 
Stromverlauf auch nur annähernd Abtasten zu können.
2. Einen Tiefpassfilter ( RC)  mit einer Grenzfrequenz deutlich unter 
der PWM Frequenz und du kannst einen Mittelwert messen.


Zu deiner ursprünglichen Frage.
Es gibt in einem µC keinen wirklichen Zufallsgenerator.
Damit fehlt schon mal die Basis für eine zufällige Abtastung.
Da die generierte Zufallszahl, die die Abtastung triggert, einem 
Algorithmus folgt wirst du in Relation zur PWM eine Schwebung / 
Modulation erhalten.
Jetzt müsste mal ein Statistiker sagen unter welchen Voraussetzungen, 
sprich Anzahl der Messungen, Verteilung,..... daraus ein brauchbarer 
Mittelwert berechnet werden kann.
Ich denke nicht das dabei etwas sinnvolles raus kommt.

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.