So erzeugen Sie mit Matlab breitbandige Zufallssignale

WBOY
Freigeben: 2024-01-25 09:54:06
nach vorne
568 Leute haben es durchsucht

So erzeugen Sie mit Matlab breitbandige Zufallssignale

So verwenden Sie Matlab, um Breitband-Zufallssignale zu erzeugen

Matlab Pseudozufallssignalerzeugung (M-Sequenz)

Hier werden zwei Hauptmethoden erläutert: Eine besteht darin, m-Dateien zu bearbeiten, die andere darin, Simulink zum Generieren zu verwenden

1. Mit m-Datei bearbeiten

Np=63;% Zyklusperiode

delta_T = 1; % Uhr tickt

a=1;% Amplitude

%M-Sequenz initialisieren

M(1)=1;

M(2)=0;

M(3)=0;

M(4)=1;

M(5)=1;

M(6)=0;

M_XuLie(Np) = 0;

für n = 1 : Np

temp = xor(M(6), M(5));

if(temp == 0)

M_XuLie(n) = a;

sonst

M_XuLie(n) = -a;

Ende

M(6) = M(5);

M(5) = M(4);

M(4) = M(3);

M(3) = M(2);

M(2) = M(1);

M(1) = temp;

Ende

Abbildung(4)

Treppe(M_XuLie)

ylim([-2 2])

Beschreibung:

1. Prinzip: Da es im Code geschrieben ist, ist der Ausdruck des Prinzips möglicherweise nicht sehr intuitiv. Das Prinzip wird später in Form einer Simulation angegeben

2. Periode: Wenn es N Schieberegister gibt, beträgt die Periode 2^N-1

3. Fortsetzung des Zyklus:

r = 3; % Anzahl der Zyklen

u=repmat(M_XuLie,1,r+1);% weist dem Eingang die M-Sequenz als Eingangssignal zu

2. Verwenden Sie Simulink, um eine M-Sequenz zu generieren

1 Wählen Sie 6 Schieberegister, also 1/Z-Register. Ordnen Sie sie der Reihe nach an und stellen Sie die Anfangsbedingungen auf alle 1 ein

2 Verknüpfen Sie zunächst diese 6 Schieberegister, verbinden Sie den ersten Ausgang mit dem zweiten Eingang usw., bis das sechste mit OUT verbunden ist, und schließen Sie dann hier ein Oszilloskop an, um die Signalwellenform zu beobachten, oder verbinden Sie es mit dem Arbeitsbereich (in). Dieses Beispiel ist mit dem Arbeitsbereich verbunden. Legen Sie den Variablennamen und das Ausgabeformat wie folgt fest.

Hinweis: Versuchen Sie, die Ausgabe in Matrixform zu wählen, da der Aufruf sonst umständlich ist.

3 Wählen Sie einen logischen Operator aus und stellen Sie ihn in den Einstellungen auf XOR ein, 2 Eingänge

4 Weiter verbinden

5 Parameter einstellen, hauptsächlich Schrittgröße und Gesamtlaufzeit einstellen (klicken Sie auf das Menü Simulation-Konfigurationsparametereinstellungen)

6 Klicken Sie zum Ausführen. Was im Bereich angezeigt wird, ist die m-Sequenz! Oder geben Sie „stairs(M_seque)

“ in die Befehlszeile ein

Hinweis: Tatsächlich gibt es bei der tatsächlichen Verwendung dieser Methode einige Probleme, das heißt, das Ausgangssignal ist vom Typ Bool, also eine logische Sequenz, und kann nicht als Eingabe der Übertragungsfunktion verwendet werden In einer M-Datei kann es über Double und andere Methoden zur Konvertierung verwendet werden. Simulink sollte über eine Methode zum Konvertieren verfügen, die entsprechende Abfrage wurde jedoch noch nicht durchgeführt.

So generieren Sie eine PN-Sequenz in Matlab

für k=1:length(x) gfpretty(x(k,:));end

m Pseudozufallssequenz-Matlab-Quellcode

%5 Bestell-M-Sequenz

% Geben Sie im MATLAB-Befehlsfenster Folgendes ein:

% fbconnection=[0 1 0 0 1];

% mseq="m"_sequence(fbconnection);

% mseq

Funktion mseq="m"_sequence(fbconnection)

n=Länge(fbconnection);

N=2^n-1;

register=[ones(1,n-1) 1]; %Der Anfangszustand des Schieberegisters

mseq(1)=register(n); %mDas erste Ausgabesymbol der Sequenz

für i="2:N"

newregister(1)=mod(sum(fbconnection.*register),2);

für j="2:n",

newregister(j)=register(j-1);

Ende;

register="newregister";

mseq(i)=register(n);

Ende

Speichern als m_sequence.m;

Das obige ist der detaillierte Inhalt vonSo erzeugen Sie mit Matlab breitbandige Zufallssignale. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:docexcel.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!