www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Effektivwert von einem aperiodischem Signal ermitteln..


Autor: Der Techniker (_techniker_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich habe hier ein aperiodisches Signal (im Prinzip ein Stromwert; 
ermittelt über einen Hallsensor). Das Signal sieht aus wie ein 
NF-Signal. Auch die enthaltenen Frequenzen bewegen sich in diesem 
Bereich.

Nun muß ich daraus im 500ms-Takt einen Strom ermitteln, welcher in 
diesem 500ms-Zeitfenster dem DC-Effektivwert entspricht - Tipps?

MfG,
techniker

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abtasten, quadrieren, aufsummieren, Wurzel berechnen. Wenn die maximale 
Frequenz im kHz-Bereich liegt sollte das ein AVR gut schaffen.

Autor: Der Techniker (_techniker_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
d.h. wie folgendes Beispiel?

T=0ms -> Zähler=0

Schleife:
1. Abgetasten: z.B. 500dez
2. Quadrieren: z.B. 500dez*500dez -> 250000
3. Aufsummieren: z.B. Zähler += 250000
Schleife wiederholen bis T=500ms

4. Vom Zähler die Wurzel ziehen -> fertig?!?


Wenn ja, dann wird die Zähler-Variable ja gigantisch gross..?!? :-o
Auch das Wurzel-ziehen wird dann seine Zeit brauchen - oder?

Autor: STK500-Besitzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wenn ja, dann wird die Zähler-Variable ja gigantisch gross..?!? :-o

Die Zahl wird vermutlich nicht mehr als 8Byte groß sein...

>Auch das Wurzel-ziehen wird dann seine Zeit brauchen - oder?

Klar, ist ja eine Berechnung. Dazu sollte es aber optimierte Algorithmen 
geben...

Autor: Der Techniker (_techniker_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
..was kommt eigendlich raus wenn ich das Signal durch einen OP, welcher 
als Integrierer arbeitet, durchschicke?

Autor: Hauke Radtki (lafkaschar) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du vorher nicht gleichrichtest wohl nur der DC Offset.

Autor: Der Techniker (_techniker_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@hauke:
Sorry, natürlich hätte ich vor davor einen elektronischen 
Zweiweggleichrichter (aufgebaut mit OPs) zu verwenden..

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Die Zahl wird vermutlich nicht mehr als 8Byte groß sein...

Wenn du die Variablen von WINAVR verwendest (long int) wird sie maximal 
4 Byte werden können. Was größer ist mußt du selbst basteln.
Bei Berechnung alle 500ms dürfte das Timing kein Problem sein, das geht 
recht fix.

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Muss mich korrigieren, long long (uint64) sind ja 8 Byte! ;)

Autor: Der Techniker (_techniker_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
..interessant wäre hald, was der Integrator nach der elektronischen 
Zweiweggleichrichtung liefert?

Da es keine hochgenaue Messung sein muß, würde ich eine Hardwarelösung 
favoritisieren..

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thilo M. wrote:
>>Die Zahl wird vermutlich nicht mehr als 8Byte groß sein...
>
> Wenn du die Variablen von WINAVR verwendest (long int) wird sie maximal
> 4 Byte werden können. Was größer ist mußt du selbst basteln.
> Bei Berechnung alle 500ms dürfte das Timing kein Problem sein, das geht
> recht fix.

uint64_t bzw. unsigned long long sind 64bit bzw. 8byte.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Techniker wrote:
> d.h. wie folgendes Beispiel?
>
> T=0ms -> Zähler=0
>
> Schleife:
> 1. Abgetasten: z.B. 500dez
> 2. Quadrieren: z.B. 500dez*500dez -> 250000
> 3. Aufsummieren: z.B. Zähler += 250000
> Schleife wiederholen bis T=500ms

3,5: Zähler durch Anzahl der Werte teilen

> 4. Vom Zähler die Wurzel ziehen -> fertig?!?

Genau. Bei der Abtastung aber aufpassen dass keine höheren 
Frequenzanteile als Abtastfrequenz/2 enthalten sind, also bei Bedarf 
einen Tiefpass einbauen.

> Wenn ja, dann wird die Zähler-Variable ja gigantisch gross..?!? :-o
> Auch das Wurzel-ziehen wird dann seine Zeit brauchen - oder?

Wenn das nur zwei mal pro Sekunde gemacht werden muss sollte das kein 
Problem sein.

> ..was kommt eigendlich raus wenn ich das Signal durch einen OP, welcher
> als Integrierer arbeitet, durchschicke?

Der Mittelwert. Um den Effektivwert zu bekommen musst du vorher 
quadrieren. Man kann das auch analog machen, lohnt sich in dem 
Frequenzbereich heutzutage aber nicht mehr.

Autor: Der Techniker (_techniker_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Man kann das auch analog machen, lohnt sich in dem
> Frequenzbereich heutzutage aber nicht mehr.

Nur der Interesse halber: Wie? :-)

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
http://de.wikipedia.org/wiki/Quadratisches_Mittel

Wenn ich mich nicht irre, heißt diese Art des Mittelwertes auch 
Quadratisches Mittel.

Autor: Der Techniker (_techniker_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Simon:
..ich dachte da eher an die Schaltung, als an die Formel.. ;)

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Techniker wrote:
>> Man kann das auch analog machen, lohnt sich in dem
>> Frequenzbereich heutzutage aber nicht mehr.
>
> Nur der Interesse halber: Wie? :-)

Es gibt Analogmultiplizierer als IC, ich glaube die arbeiten intern mit 
dem Logarithmus (x*y = exp(ln(x) + ln(y)). Man kann das so auch mit 
OP-Amps aufbauen. Oder man nimmt etwas mit einer ungefähr quadratischen 
Kennlinie (Diode).

Autor: Helmi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der AD636 bildet dir den Effektivwert nach der Formel

http://www.analog.com/en/prod/0,,773_866_AD636,00.html

oder falls du es lieber aus einzelnen Bauteilen haben willst
http://www.national.com/ms/LB/LB-25.pdf

Bedenke bei dieser Schaltung das die Transistoren auf einem gemeinsammen 
Chip sein muessen wegen der Temperatur Drift

Gruss Helmi

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.