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

Subsystem simulieren in Matlab

 

ulrich
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 53
Anmeldedatum: 25.03.13
Wohnort: Bingen
Version: ---
     Beitrag Verfasst am: 04.04.2013, 15:09     Titel:
  Antworten mit Zitat      
danke.
ich schaffe irgendwie nicht das Modell mit eingänge und ausgänge zu verbinden.
woran liegt das ?
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 04.04.2013, 15:12     Titel:
  Antworten mit Zitat      
Hallo,

ich weiß nicht, was du gerade versuchst.

Meine Idee war im Grunde genommen, den Embedded MATLAB Function Block wie die Blöcke im Subsystem zu behandeln.
Dein Subsystem hat jedoch In/Out-Blöcke drin, was der Embedded MATLAB Function Block nicht hat. Daher müsstest du für jeden Eingang dieses Blocks noch einen In-Block hinsetzen und für jeden Ausgang einen Out-Block.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
ulrich
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 53
Anmeldedatum: 25.03.13
Wohnort: Bingen
Version: ---
     Beitrag Verfasst am: 04.04.2013, 15:55     Titel:
  Antworten mit Zitat      
Ja genau das habe ich gemacht aber das model verbinden sich nicht mit andere Blöcke.
das ist ein Bild.

MatlabFunktion.PNG
 Beschreibung:
hier habe ich In und Output hingefügt

Download
 Dateiname:  MatlabFunktion.PNG
 Dateigröße:  14.01 KB
 Heruntergeladen:  500 mal
Modell.PNG
 Beschreibung:
Hier das Modell lass sich irgendwie nicht verbinden.

Download
 Dateiname:  Modell.PNG
 Dateigröße:  8.14 KB
 Heruntergeladen:  491 mal
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 04.04.2013, 16:02     Titel:
  Antworten mit Zitat      
Hallo,

du solltest an alle Ein- und Ausgänge In bzw. Out-Blöcke anschließen. Achte darauf, dass das Modell gespeichert ist.

Dann sollten beim Einfügen in das andere Modell auch die Ein- und Ausgänge vorhanden sein.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
ulrich
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 53
Anmeldedatum: 25.03.13
Wohnort: Bingen
Version: ---
     Beitrag Verfasst am: 04.04.2013, 16:48     Titel:
  Antworten mit Zitat      
habe geschaft.
vielen Dank noch.

Ulrich
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
ulrich
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 53
Anmeldedatum: 25.03.13
Wohnort: Bingen
Version: ---
     Beitrag Verfasst am: 08.04.2013, 12:11     Titel:
  Antworten mit Zitat      
Hallo ,
ich habe bemerkt dass wenn ich separat die modelle messe, stimmen die ergebnisse nicht wirklich.

ist es möglich mein model "MotionControl" laufen zu lassen. und während diser simulation die laufzeit von der TeilModelle (MCA und MF) zu wissen?

Danke
Ulrich
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 08.04.2013, 18:52     Titel:
  Antworten mit Zitat      
Hallo,

das kann durchaus zu unterschiedlichen Laufzeiten kommen, wenn du das Teilmodell mit anderen Eingängen laufen lässt oder du mit variabler Schrittweite arbeitest und andere Modellteile auf die Schrittweitensteuerung Einfluss nehmen.
Aber woher weißt du eigentlich, dass die Laufzeitmessungen nicht stimmen? Anders gefragt, woher weißt du die tatsächliche Laufzeit?
Einen anderen Vorschlag habe ich ja in deinem anderen Thread gemacht.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
ulrich
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 53
Anmeldedatum: 25.03.13
Wohnort: Bingen
Version: ---
     Beitrag Verfasst am: 09.04.2013, 08:35     Titel:
  Antworten mit Zitat      
"Aber woher weißt du eigentlich, dass die Laufzeitmessungen nicht stimmen?"

1. die summe von der Laufzeiten(MCA und MF) ist sehr sehr klein als die Laufzeit von MotionControl.

2. ich habe geschaut welche werte MF am ausgang hat , da sind nur 0 werte am ausgang. dh er hat kein eingang werte weil er separat gemessen ist.

es gibt bestimmt eine methode um die Laufzeiten von MCA und MF auszulesen während der Simulation von MotionControl (Ausser Profiler).
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 09.04.2013, 08:40     Titel:
  Antworten mit Zitat      
Hallo,

zu 2.: du musst unter Simulink --> Configuration Parameters im Data Import/Export Tab die Eingänge definieren. Wenn du das nicht machst, wird das Modell für konstante Nulleingänge simuliert.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
ulrich
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 53
Anmeldedatum: 25.03.13
Wohnort: Bingen
Version: ---
     Beitrag Verfasst am: 09.04.2013, 09:44     Titel:
  Antworten mit Zitat      
wie soll ich die eingänge definieren?
ich habe die ausgänge von MCA die in MF reinkommen als Input(data Import/Export) geschrieben aber ich bekomme diese fehler meldung.

Code:

 Error evaluating expression '[a_cartesian_sim,a_cartesian_sim,d_rot,psi_p_sim,psi_pp_sim_filt,v_trans,v_trans]' for
    'Input' specified in the Configuration Parameters dialog for block diagram 'MatlabFunktion_ref': Undefined function or
    variable 'psi_p_sim'.
    Error using test_ulrich (line 60)
    Error evaluating element '1' in list of external inputs specified in Configuration Parameters dialog. External inputs
    may be specified as either (a) a list of matrices and structures or (b) a single MATLAB expression or function
 
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 09.04.2013, 09:50     Titel:
  Antworten mit Zitat      
Hallo,

zum einen muss die erste Spalte immer die Simulationszeit sein, zu der die Daten gehören.

Die genannten Variablen müssen natürlich existieren und Spaltenvektoren gleicher Länge sein, sonst kann das nicht klappen.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
ulrich
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 53
Anmeldedatum: 25.03.13
Wohnort: Bingen
Version: ---
     Beitrag Verfasst am: 09.04.2013, 12:36     Titel:
  Antworten mit Zitat      
so soll es aussehen?
die variable sint die output Variable von MCA:

Aber meldet immer eine fehler Meldung.

variable.PNG
 Beschreibung:
Variable von MatlabFunk_ref

Download
 Dateiname:  variable.PNG
 Dateigröße:  54.71 KB
 Heruntergeladen:  517 mal
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 09.04.2013, 12:44     Titel:
  Antworten mit Zitat      
Hallo,

grundsätzlich ja. Das Problem war zuvor (wie gesagt), dass eine der Variablen nicht gefunden werden konnte. Die Daten müssen als MATLAB-Variablen im verwendeten Workspace vorhanden sein.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
ulrich
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 53
Anmeldedatum: 25.03.13
Wohnort: Bingen
Version: ---
     Beitrag Verfasst am: 09.04.2013, 13:57     Titel:
  Antworten mit Zitat      
Übrigens deine Matlab Funktion hat ein fehler.
erstmal
Code:

coder.extrinsic('tic')
coder.extrinsic('toc')
 

dann

Code:

t = 0;
tic
y = 2*u;
t(1) = toc;
 


sons ist das Ergebnis komisch
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 09.04.2013, 14:17     Titel:
  Antworten mit Zitat      
Hallo,

bei mir liefert dein Vorschlag (wenn ich ihn richtig verstanden habe) anscheinend dasselbe wie meine Variante. Ich verstehe also nicht, wieso da ein Fehler sein soll.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen

Gehe zu Seite Zurück  1, 2, 3  Weiter

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.