WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Erzeugung von verrauschtem Signal.....

 

Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.07.2008, 15:06     Titel: Erzeugung von verrauschtem Signal.....
  Antworten mit Zitat      
Hi @ all,

ich grüble nun schon seit längerer Zeit wie man mittels Matlab/Simulink, ein verrauschtes Rechtecksignal erzeugen kann, und dieses dann im fdatool zu verwenden um verschiedene Filter auszuprobieren.
Es müsste doch funktionieren wenn man zB ein Rechteck (Signalgenerator) mit einem gausschen Rauschen (Signalgenerator) multipliziert und dieses dann über to Workspace ausgibt-aber wie kann ich es dann weiterverwenden, bzw wie bekomme ichs ins fda tool?
Mit simin->digital filter design->to file gehts irgendwie nicht?

Für eure Hilfe wär ich sehr dankbar!!

grüße,
bine


nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.320
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 15.07.2008, 17:12     Titel:
  Antworten mit Zitat      
Hi,

unter Matlab würde ich es so versuchen:
Code:
clear all;
clc;

x=0:1/200:5*pi;
sinus=sin(x);
lo=-0.2;
hi=0.2;
rauschen=lo + (hi-lo) * rand(size(x));
plot(x,sinus+rauschen);

Dann erstellst Du mit
Code:
Deinen Filter.
Den exportierst Du in den Workspace, dann wendest Du
Code:
und dann
Code:
an.
Dein Signal direkt im fdatool filtern kannst Du glaube ich nicht.

Für eine Umsetzung in Simulink wird man vermutlich entsprechend vorgehen, also Sinus und Zufallszahlen im geeigneten Intervall erzeugen, addieren und in den Workspace schreiben.
Mit dem Signal Processing Blockset könnte man wohl die Filterung auch direkt in Simulink machen.
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2008, 13:29     Titel:
  Antworten mit Zitat      
Danke für deine schnelle Antwort. Hab nochmal ein wenig herumprobiert, aber weis nun schon wieder nicht mehr weiter.....Sad
Das Problem ist dass ich ein Rechtecksignal erzeugen will, welches nur hier und da in bestimmten Frequenzbereichen ein paar Störungen (Spitzen) hat.
Die Signale bekomme ich erst, einstweilen soll ich mal selbst ein Rechteck mit Störungen generieren.
Mit fda tool kann ich nur den filter designen, aber wie kann ich dann den Filter (bzw die Koeffizienten ) auf das gestörte Signal anwenden?
Kann man so einen Filter auch selbst programmieren (welcher immer nur ungewöhnlich hohe oder niedrige Werte anpasst), sodass ich Simulink gar nicht verwenden muss?
Hat jemand eine Idee wie so ein Algorithmus aussehen könnte?

lg
 
nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.320
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 16.07.2008, 14:06     Titel:
  Antworten mit Zitat      
Hi,

also nochmal zum fdatool:
- Du erstellt den gewünschten Filter
- File->Export Export To: Workspace, Export As: Coefficients (SOS und G)
- Matlab Command:
Code:
[b,a] = sos2tf(SOS,G);
filtered=filter(b,a,x); % x ist ursprüngliches Signal

_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2008, 14:31     Titel:
  Antworten mit Zitat      
Danke nochmal,

ich probier jetzt mal ein wenig mit dem verrauschten Sinus herum.
Aber kann ich auch ein verrauschtes Rechteck statt einem Sinus erstellen?

lg
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2008, 14:48     Titel:
  Antworten mit Zitat      
Wenn ich mittels fdatool die koeffizienten berechne kann ich aber nur eine Variable exportieren.
Wocher kommt hier das G?
Code:

[b,a] = sos2tf(SOS,G);
 


lg
 
nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.320
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 16.07.2008, 15:03     Titel:
  Antworten mit Zitat      
Ja, richtig. Das hängt damit zusammen, welchen Filtertyp Du verwendest (IIR,FIR). Nominator und Denominator kannst Du direkt für
Code:
verwenden, da kannst Du sos2tf weglassen.
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2008, 15:57     Titel:
  Antworten mit Zitat      
Ok danke vielmals.....
Wie man das mit dem Rechteck hinbekommt, bzw filtern einzelner Störungen ohne FDA Tool weist du nicht oder?

lg
 
nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.320
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 16.07.2008, 16:11     Titel:
  Antworten mit Zitat      
Signale kannst Du evtl hiermit erzeugen:
http://www.mathworks.com/matlabcent.....10542&objectType=File
und mit
Code:
periodisch fortsetzen (->Forensuche).
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2008, 16:31     Titel:
  Antworten mit Zitat      
Danke hast mir sehr geholfen!
 
nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.320
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 16.07.2008, 17:21     Titel:
  Antworten mit Zitat      
Hi,

wenn es nur um vereinzelte Ausreißer geht könnte man das Signal vielleicht in kleine Intervalle zerlegen, jeweils den Mittelwert ausrechnen und alle Werte rausschmeißen, die mehr als 3 Standardabweichungen vom Mittelwert entfernt sind.

Sonst guck Dir mal
Code:
und co an.
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.