Forum: Digitale Signalverarbeitung / DSP / Machine Learning ANC (active noise cancellation) um Temperaturabhängigkeit zu vermindern


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Enigma432 (Gast)


Angehängte Dateien:

Lesenswert?

Hallo liebe Forenmitglieder,

ich habe eine generelle Frage:

Kann ich ANC dazu nutzen um Senorsignale gegen Umwelteinflüsse zu 
kompensieren?
Z.B. Ein Drucksensor hat eine gewisse Temperaturabhängigkeit. 
Normalerweise würde ich eine Kennlinie aufnehmen (Ändern der Temperatur 
und Antwort des Drucksensors aufnehmen (unter konstantem Druck)). Mit 
dieser Kurve und einem zusätzlichen Temperatursensor kann ich dann das 
Drucksensorsignal temperaturkompensieren. Das macht natürlich einen 
gewissen Aufwand.

Deswegen nun meine Frage. Kann ich mir das sparen wenn ich ANC benutze?
Ich habe das umkompensierte Drucksensor Signal das von der Temperatur 
abhängt. Was im angehängten Bild das s+n0 sein soll.
Dann habe ich noch das Noise source s1 was der Temperatursensor sein 
soll.
Kann dann ANC "lernen" automatisch den Temperatureffekt zu kompensieren?

Ein Problem ist vll das Druck und Temperatur korrelieren? Eine 
Temperaturerhöhung führt zu mindestens in "geschlossenen Kammern" zu 
höheren Drücken?
Kann ich ANC einfach trainieren indem ich in einer Kammer unkorrelierte 
Druck- und Temperaturänderung einstelle?

Danke schonmal!

: Verschoben durch Admin
von A. S. (achs)


Lesenswert?

Nein.

Es sei denn Du baust Deine eigene ANC-schaltung, die dann halt nicht für 
ANC taugt.

von Mark B. (markbrandis)


Lesenswert?

Ich sehe jetzt nicht, was die Kennlinie eines elektrischen Bauteils mit 
dem Thema Active Noise Cancelling zu tun haben soll. Der Verlauf der 
Kennlinie ist bauartbedingt, also eine inhärente Eigenschaft des 
Bauteils. Beim ANC versucht man, einen unerwünschten äußeren Einfluss zu 
eliminieren bzw. zu minimieren. Das sind physikalisch zwei völlig 
verschiedene Dinge, die nichts miteinander zu tun haben.

von Enigma432 (Gast)


Lesenswert?

Danke für die Antworten!
Okay mehr Details.
Ich stelle mir das ganze so vor:
Die Temperatur ändert sich mit der Zeit (ähnlich wie Noise/Rauschen -> 
Rein zufällig).
Dieses Rauschen beeinflusst mein Druck-Ausgangssignal. Z.B. ändert sich 
der Druck linear mit der Umgebungstemperatur. Der ANC Algorithmus stellt 
das fest und cancelt diesen "Noise" also die Temperaturabhängigkeit des 
Sensors...
Oder habe ich einen Denkfehler?

von Rolf M. (rmagnus)


Lesenswert?

Enigma432 schrieb:
> Oder habe ich einen Denkfehler?

Mir scheint, dass du ein völlig falsches Verständnis davon hast, was ANC 
macht.
Die Idee hinter ANC ist eigentlich so: Man hat eine Schallquelle und 
möchte nun, dass die nicht so laut zu hören ist. Dazu nimmt man das 
Signal dieser Schallquelle auf und gibt es mit einem Lautsprecher so 
aufbereitet wieder, das an der Stelle, wo der "Zuhörer" ist, das 
originale Signal und das des Lautsprechers genau gegenphasig sind und 
sich so gegenseitig auslöschen.
Bei einem ANC-Kopfhörer ist z.B. an der Ausßenseite ein Mikrofon 
angebracht, über das der Kophörer entsprechend angesteuert wird, um die 
Störgeräusche auszulöschen.
Ich sehe jetzt nicht, wie man das auf die Kompensation der 
Temperaturabhängigkeit eines Drucksensors übertragen könnte.

: Bearbeitet durch User
von Enigma432 (Gast)


Lesenswert?

Das ist ziemlich genau das was ich machen möchte. Ich versuch deine 
Erklärung umzumünzen:
Die Idee hinter ANC ist eigentlich so: Man hat eine 
Temperaturquelle(Normale Alltagstemperaturänderungen) und
möchte nun, dass die nicht so stark im Drucksensorsignal zu sehen sind. 
Dazu nimmt man das
Signal des Temperatursensors auf und gibt es so
aufbereitet wieder an den Drucksensor, das an der Stelle, wo der 
"Drucksensoroutput" ist, das
temperaturabhängige Signal und das der ANC Korrektur genau gegenphasig 
sind und
sich so gegenseitig auslöschen.
Bei einem "ANC-Drucksensor" ist z.B. ein Temperatursensor angebracht, 
über den der Drucksensor entsprechend angesteuert wird, um die
Temperaturabhängigkeit auszulöschen.

Ich hoffe das hilft meine Idee zu verstehen...

von Mirko W. (Gast)


Lesenswert?

Es ist nicht so, dass die anderen dich nicht verstehen.
Sie zeigen dir auf, wo deine Missverständnisse liegen.
Jetzt musst nur noch du versuchen, ihre Antworten zu verstehen.

Ansonsten gilt natürlich: nicht den Troll füttern.

von A. S. (achs)


Lesenswert?

Enigma432 schrieb:
> Ich hoffe das hilft meine Idee zu verstehen..

Ja. Aber sie zeugt von einem falschen Verständnis.

ANC versucht, solche Geräusche von sich zu geben, dass die Störgeräusche 
sich damit ausblenden.

Du möchtest einen temperaturabhängigen Offset generieren.

Deines ist quasistatisch, Töne sind es in keinster Weise.

Deine arbeit erledigt ein Widerstand mit einem Transistor viel besser, 
ANC ist eine Signalverarbeitung größeren Aufwands.

Ja, wie gesagt, Du kannst einen ANC entwerfen, der Deine Aufgabe gut 
macht. Der wird dann nur vermutlich nicht als ANC taugen.

Warum einen DSP und komplexe Algorithmen, wenn es ein Widerstand mit 
einem Transistor tut?

von Andreas M. (amesser)


Lesenswert?

Das was Du willst hat mit ANC rein gar nichts zu tun sondern ist eine 
ganz normale Kompensation von Störquellen. Und natürlich kann man einen 
Algorithmus entwerfen, den man "anlernt", also eine Datenbasis erzeugt 
auf deren Basis dieser dann die Störquelle (versucht) zu kompensieren. 
Das bedeutet aber nichts anders als eben die Temperaturkurven bei 
verschiedenen, bekannten Drücken aufzunehmen. Es gibt keinen Algorithmus 
der alleine aus Druckmesswert und Temperaturmesswert erkennen könnte, ob 
eine Messwertänderung rein wegen einer Temperaturänderung, wegen einer 
Druckänderung oder einer Kombination von beidem zustandekommt. Woran 
sollte er das auch erkennen können?

Aber warum sollte man das tun? Die Temperaturabhängigkeit sollte im 
Datenblatt stehen, die bildet man mathematisch ab (entweder in der 
Schaltug oder in der Software), führt ne Zwei(Mehr-?) Punktkalibrierung 
durch und fertig. Genauer bekommst du es auch nicht mit einem 
"lernenden" Algorithmus hin, einfacher schon gar nicht. Das Problem wird 
mit einem lernenden Algortihmus sogar komplizierter, denn du müsstes die 
Lernkurven sogar noch auf Sinnhaftigkeit verifizieren, könnte ja sein 
das dein Sensor kaputt ist und dann kalibriert Dein "intelligenter" 
Korrekturalgorithmus den Fehler weg, er weis ja nicht was sinnvolle 
Daten sind und was nicht.

von Enigma432 (Gast)


Lesenswert?

"Es gibt keinen Algorithmus
der alleine aus Druckmesswert und Temperaturmesswert erkennen könnte, ob
eine Messwertänderung rein wegen einer Temperaturänderung, wegen einer
Druckänderung oder einer Kombination von beidem zustandekommt. Woran
sollte er das auch erkennen können?"
Mir ist nicht ganz klar warum das so ist? Das ist doch genau das was ANC 
macht? ANC schaut genau nach dieser Korrelation? Wo ist der Unterschied 
ob es zufälliger Schall ist? oder zufällige Temperaturänderungen?

von Jonas B. (jibi)


Lesenswert?

>Mir ist nicht ganz klar warum das so ist?

Weil ANC ohne Mikrophone auch nicht funktioniert.

von Enigma432 (Gast)


Lesenswert?

>Mir ist nicht ganz klar warum das so ist?

Weil ANC ohne Mikrophone auch nicht funktioniert.

Deswegen ja der Temperatursensor.

Hier die Analogie:
Noise verhält sich zu Mikrophon, wie Temperaturfehler (Noise der durch 
Temperaturänderungen entsteht) zu Temperatursensor.

von Jonas B. (jibi)


Lesenswert?

>Deswegen ja der Temperatursensor.

Versteh dich nicht. Was hast du gewonnen, wenn du ja doch wieder einen 
Temperatursensor einsetzt? Oder willst du das Kompensieren 
automatisieren und das mit dem ANC vergleichen? Merkwürdig du denkst

von Rolf M. (rmagnus)


Lesenswert?

Enigma432 schrieb:
> Das ist ziemlich genau das was ich machen möchte. Ich versuch deine
> Erklärung umzumünzen:
> Die Idee hinter ANC ist eigentlich so: Man hat eine
> Temperaturquelle(Normale Alltagstemperaturänderungen) und
> möchte nun, dass die nicht so stark im Drucksensorsignal zu sehen sind.

Und hier siehst du schon den Unterschied: Bei mir geht es um einen 
Schall - kein elektrisches Signal auf einer Leitung, sondern um echten 
physischen Schall. Den erzeugt einmal meine Störquelle, und gleichzeitig 
erzeugt auch mein ANC echten Schall, der den anderen physisch auslöscht. 
Du hast dagegen das elektrische Ausgangssignal eines Sensors, und dieser 
Sensor hat intern eine systematische Abweichung, die die kompensieren 
willst.
Wenn man nun versuchen würde, das irgendwie halbwegs auf dein System zu 
übertragen, müsstest du jetzt mit einem Temperatursensor außerhalb die 
Umgebungstemperatur aufnehmen und dann mit einem Kühlaggregat so 
"dagegen" kühlen, dass bei deinem Drucksensor die tatsächliche 
Temperatur immer konstant bleibt. Das Kühlaggregat wäre dabei der 
entscheidende Teil, durch den es überhaupt erst "active" wird - weil 
damit aktiv die Temperatur beeinflusst wird.

> Dazu nimmt man das Signal des Temperatursensors auf und gibt es so
> aufbereitet wieder an den Drucksensor, das an der Stelle, wo der
> "Drucksensoroutput" ist, das temperaturabhängige Signal und das der ANC
> Korrektur genau gegenphasig sind und sich so gegenseitig auslöschen.

Das wäre dann einfach eine normale Temperaturkompensation, wie du sie 
hier schon beschreibst:

Enigma432 schrieb:
> Normalerweise würde ich eine Kennlinie aufnehmen (Ändern der Temperatur
> und Antwort des Drucksensors aufnehmen (unter konstantem Druck)). Mit
> dieser Kurve und einem zusätzlichen Temperatursensor kann ich dann das
> Drucksensorsignal temperaturkompensieren.

: Bearbeitet durch User

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]
  • [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.

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