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

Ein Array in Simulink Stückweise einlesen

 

senmeis
Forum-Guru

Forum-Guru


Beiträge: 301
Anmeldedatum: 09.03.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.03.2015, 16:01     Titel: Ein Array in Simulink Stückweise einlesen
  Antworten mit Zitat      
Servus,

ein Array von 65536 Elementen soll stückweise in Simulink eingelesen werden, mit 1024 Elementen pro Stück, also 64 Stücke insgesammt. Ich habe ‚FromWorkspace‘ probiert aber leider funktioniert das nicht. Tipps?

Owen
Private Nachricht senden Benutzer-Profile anzeigen


twols
Forum-Anfänger

Forum-Anfänger



Beiträge: 44
Anmeldedatum: 05.03.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.03.2015, 18:44     Titel:
  Antworten mit Zitat      
Eine Variable mit den Werten als Matrix in dem Workspace anlegen. Dann eine Konstante in Simulink einfügen und dort den Namen der Variable eintragen.

Damit hättest du schon mal das Array in Simulink.

Dann kannst mit "Index Vector" und "Selector" einzelne Blöcke aus der Variable abgreifen.
_________________

bitmarker eLearning Videos zu MATLAB, Simulink, LabVIEW bei YouTube: http://leogo.es/youtubebm
Private Nachricht senden Benutzer-Profile anzeigen
 
rien

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.04.2015, 13:33     Titel:
  Antworten mit Zitat      
In Modell eine Variable aus dem Workspace auslesen, das Ergebniss fals gewünscht in den Workspace schreiben.

script:
Code:

Output=0;
for k=1:64
Hilfsmatrix=Matrix(a,b,c); %Dimension anpassen und Werte über k-ändern
sim('Model')
%Ausgabeteil, entsprechend Matrixdimensionen anpassen oder dim-fallunterscheidung
if k==1;
Output=simout;
else
Output=cat(3,Output,simout);
end
end
 
rien

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.04.2015, 13:34     Titel:
  Antworten mit Zitat      
In Modell eine Variable aus dem Workspace auslesen, das Ergebniss fals gewünscht in den Workspace schreiben.

script:
Code:

Output=0;
for k=1:64
Hilfsmatrix=Matrix(a,b,c); %Dimension anpassen und Werte über k-ändern
sim('Model')
%Ausgabeteil, entsprechend Matrixdimensionen anpassen oder dim-fallunterscheidung
if k==1;
Output=simout;
else
Output=cat(3,Output,simout);
end
end
 
rien

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.04.2015, 13:34     Titel:
  Antworten mit Zitat      
In Modell eine Variable aus dem Workspace auslesen, das Ergebniss fals gewünscht in den Workspace schreiben.

script:
Code:

Output=0;
for k=1:64
Hilfsmatrix=Matrix(a,b,c); %Dimension anpassen und Werte über k-ändern
sim('Model')
%Ausgabeteil, entsprechend Matrixdimensionen anpassen oder dim-fallunterscheidung
if k==1;
Output=simout;
else
Output=cat(3,Output,simout);
end
end
 
rien

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.04.2015, 13:36     Titel:
  Antworten mit Zitat      
Sorry, wenn ein Mod hier aufräumen könnte wäre ich dankbar, irgendwie hat das mit dem Antworten nicht so geklappt wie geplant Embarassed
 
senmeis
Themenstarter

Forum-Guru

Forum-Guru


Beiträge: 301
Anmeldedatum: 09.03.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.04.2015, 15:42     Titel:
  Antworten mit Zitat      
Danke. Es gibt nur einen einzigen Eingang, deswegen kann Index Vector nicht verwendet werden. Selector nimmt nur einen Eingang ein, das ist gut, aber irgendwie fällt mir schwer, die Anleitung zu verstehen. Wie wird Selector konfiguriert, um eine 10x5 Matrix zeilenweise einzulesen? Und was passiert nachdem die letzte Zeile eingelesen ist, wiederholen?

Owen
Private Nachricht senden Benutzer-Profile anzeigen
 
senmeis
Themenstarter

Forum-Guru

Forum-Guru


Beiträge: 301
Anmeldedatum: 09.03.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.04.2015, 16:15     Titel:
  Antworten mit Zitat      
Danke. Es gibt nur einen einzigen Eingang, deswegen kann Index Vector nicht verwendet werden. Selector nimmt nur einen Eingang ein, das ist gut, aber irgendwie fällt mir schwer, die Anleitung zu verstehen. Wie wird Selector konfiguriert, um eine 10x5 Matrix zeilenweise einzulesen? Und was passiert nachdem die letzte Zeile eingelesen ist, wiederholen?

Owen
Private Nachricht senden Benutzer-Profile anzeigen
 
senmeis
Themenstarter

Forum-Guru

Forum-Guru


Beiträge: 301
Anmeldedatum: 09.03.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.04.2015, 16:19     Titel:
  Antworten mit Zitat      
Danke. Es gibt nur einen einzigen Eingang, deswegen kann Index Vector nicht verwendet werden. Selector nimmt nur einen Eingang ein, das ist gut, aber irgendwie fällt mir schwer, die Anleitung zu verstehen. Wie wird Selector konfiguriert, um eine 10x5 Matrix zeilenweise einzulesen? Und was passiert nachdem die letzte Zeile eingelesen ist, wiederholen?

Owen
Private Nachricht senden Benutzer-Profile anzeigen
 
senmeis
Themenstarter

Forum-Guru

Forum-Guru


Beiträge: 301
Anmeldedatum: 09.03.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.04.2015, 15:10     Titel:
  Antworten mit Zitat      
Was Dein Code betrifft ist in Matlab, aber ich will Werte in Simulink importieren.

Owen
Private Nachricht senden Benutzer-Profile anzeigen
 
twols
Forum-Anfänger

Forum-Anfänger



Beiträge: 44
Anmeldedatum: 05.03.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.04.2015, 12:52     Titel:
  Antworten mit Zitat      
Damit wir uns verstehen: Du hast eine Variable mit 65536 Werten in dem Workspace. Mit jedem Simulation Step oder getriggert willst du einen Block von 1024 Elementen aus dieser Variable abgreifen und irgendetwas damit machen?
_________________

bitmarker eLearning Videos zu MATLAB, Simulink, LabVIEW bei YouTube: http://leogo.es/youtubebm
Private Nachricht senden Benutzer-Profile anzeigen
 
senmeis
Themenstarter

Forum-Guru

Forum-Guru


Beiträge: 301
Anmeldedatum: 09.03.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.04.2015, 14:22     Titel:
  Antworten mit Zitat      
Richtig.
Private Nachricht senden Benutzer-Profile anzeigen
 
twols
Forum-Anfänger

Forum-Anfänger



Beiträge: 44
Anmeldedatum: 05.03.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.04.2015, 15:28     Titel:
  Antworten mit Zitat      
Ich habe eine kleines Beispiel angehängt, ich hoffe das passt.

IndexArrayExample.mdl
 Beschreibung:

Download
 Dateiname:  IndexArrayExample.mdl
 Dateigröße:  24.47 KB
 Heruntergeladen:  627 mal

_________________

bitmarker eLearning Videos zu MATLAB, Simulink, LabVIEW bei YouTube: http://leogo.es/youtubebm
Private Nachricht senden Benutzer-Profile anzeigen
 
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.