Forum: Digitale Signalverarbeitung / DSP / Machine Learning Rauschen mit Nutzsignal mit abfallenden SNR mischen


von Ctoly (Gast)


Lesenswert?

Hallo zusammen!
ich habe hier eine Aufgabe, in der ich seit paare Tage stecke und weis 
nicht wie ich das lösen könnte und zwar:

ich soll ein Nutzsignal mit Rauschsignal mischen, wobei das SNR von 60 
dB  bis 5 dB  in Zeit Interval von 4 ms linear wie möglich runterfällt.

Mir steht 12 Bit Dac mit max conversinsrate 120 Mhz und Bandbreit 10 Mhz 
zur Verfügung.

das Nutzsignal habe ich softwarmäßig in C++ generiert und in Vector mit 
Lange N geschrieben und in 4 ms erfolgreich gesendet. Nun wie Kann ich 
da Rauschsignalwerte so erzeugen, dass SNR in vordefiniertem Interval 60 
bis 5 dB in 4 ms ändert.

Ich bin wirklich für jede Hilfe dankbar, Recherche hat mir leider nicht
sonderlich viel weitergeholfen

Gruß
Ctoly

von Timo (Gast)


Lesenswert?

Du erzeugst dir einen Vektor mit (bandbegrenztem) weißem Rauschen und 
multiplizierst den mit der zeitlichen Amplitudenfunktion.

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

Mit LTspice und folgender Funktion:

* ft: transit frequency
* RMS: output voltage in RMS
.subckt noise_Gauss 1 2 params: ft=100k RMS=1m
B1 1 2 
V={RMS}*SQRT(-2*LN(1E-5+rand(time*ft)))*SIN(2*PI*rand(time*ft+2345)) 
tripdv={0.2*rms} tripdt={1m/Ft}
.ends

eine Rauschquelle definieren. Diese über eine weitere Funktion 
amplitudenmodulieren und das Ergebnis mit deinem Nutzsignal addieren.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Das Rauschen darf dann aber keine niederfrequenten Anteile haben, wenn 
es sich in so kurzer Zeit so stark ändert. In welchem Frequenzbereich 
bewegt sich denn das Nutzsignal, und wie breitbandig muß das Rauschen 
wirklich sein, um den Messkanal "weiß" auszufüllen?

Und das ganze soll rein in Software passieren, keine z.B. dB-lineare 
Hardware zur Abschwächung des Rauschens?

von ... (Gast)


Lesenswert?

Christoph Kessler (db1uq) schrieb:
> dB-lineare

Ist das jetzt ein neues Wort für "exponentiell"?

von Ctoly (Gast)


Lesenswert?

Hallo zusammen,
ich versuche das ganze nochmal anders zuformulieren:
die Signalwerte muss ich ersemal auf in Fifo schreiben und diese hat 
maximale Kapazität von 40.000 Samples.das Signal  taste ich immer mit 
maximalen zulässigen abtastfrequenz,die zwischen 1 und 120 Mhz,aber 
diese Abtastfrequnz ist abhängig von den Zeitfenster ,in der Signal 
gesendt sein soll und das berechen ich nach diese Form:

Samplessize=fs*t  // t= Zeitfenster in diesem Beispiel t=5ms,
fs ändere ich zwischen 120 Mhz und 1Mhz  bis Samplessize kleiner oder 
gleich die Kapazität von Fifo, und die max Bandbreite ist  gleich 25% 
von Abtastfrequenz fs.
und dann kann die Funktionswert wie folgt berechnet werden:
1
  double xr=(double)3*pi/Samplessize;   //Abtastschrittweite
2
  double  X =0.0;
3
  for(int i=0; i<Samplessize; i++){
4
                            
5
   Y[i]=sin(4*pi*X)*exp(-X);   //Signalwerte
6
   X+=xr
7
  }

Nun  möchte ich zu diesem Signal  ein Rauschsignal addieren, so dass SNR 
in diesem Zeitfenster 4 ms von zB 20 dB bis 3 dB runterfällt und das 
ganze soll ich softwarmäßig (c/c++) generieren.

Gruß
Ctoly

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

Im Allgemeinen korreliert die Qualität der Antworten mit der Qualität 
der Anfrage. Damit wärst du dann sogar on-topic - bislang eher nicht.

von Ctoly (Gast)


Lesenswert?

Das Nutzsignal soll auf B=25*fs/100 (fs=abtastfrequenz)bandbegrenzt 
sein.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Gut das heißt, ein Viertel der Samplerate, also ist das Nutzsignal 250 
kHz bis 30 MHz breit. Damit ist noch nicht gesagt, ob es ein 
Bandpass-Signal oder ein Tiefpass-Signal ist, also bei etwa 0 Hz 
beginnt.
Das weiße Rauschen muß jedenfalls eine untere Grenzfrequenz haben, die 
deutlich über 1/4ms = 250 Hz liegt.
Für die zuerst genannten -60 bis -5 dB bei z.B. 1 dB-Stufen müßten die 4 
ms nochmal in mindestens 56 Schritte aufgeteilt werden, damit man die 
Stufen in einer Messung am Ende der Versuchsstrecke noch unterscheiden 
kann.

von Ctoly (Gast)


Lesenswert?

Hi Christoph,

Das Nutzsignal ist ersmal nur ein TP-Signal.

von Max G. (l0wside) Benutzerseite


Lesenswert?

Christoph Kessler (db1uq) schrieb:
> Gut das heißt, ein Viertel der Samplerate, also ist das Nutzsignal 250
> kHz bis 30 MHz breit. Damit ist noch nicht gesagt, ob es ein
> Bandpass-Signal oder ein Tiefpass-Signal ist, also bei etwa 0 Hz
> beginnt.
> Das weiße Rauschen muß jedenfalls eine untere Grenzfrequenz haben, die
> deutlich über 1/4ms = 250 Hz liegt.

Der TE hatte kein weißes Rauschen verlangt. Die faktische 
Multiplikation mit einer Dreieckshälfte (eine mögliche Modellierung der 
abnehmenden Leistung) macht das Signal sowieso alles andere als weiß.
Weißes Rauschen mit unterer Grenzfrequenz ist übrigens ein Widerspruch 
in sich, so ähnlich wie ein Kreis mit vier Ecken. Allerdings kenne ich 
keine Definition für "Rauschen" ohne weiteres Attribut, nur die 
praktisch verwendete Form von irgendwie gefiltertem weißen Rauschen.

> Für die zuerst genannten -60 bis -5 dB bei z.B. 1 dB-Stufen müßten die 4
> ms nochmal in mindestens 56 Schritte aufgeteilt werden, damit man die
> Stufen in einer Messung am Ende der Versuchsstrecke noch unterscheiden
> kann.

Jepp.

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.