ich habe in Simulink das Modell einer Fertigungsmaschine gebaut und versuche nun den Leistungsbedarf zu modellieren. Die Betriebszustände habe ich mit stateflow nachgebildet, das funktionier soweit auch alles.
Ich versuche aber nun noch den aktuellen Leistungsbedarf (abhängig vom Betriebszustand der Maschine) zu modellieren. Dafür stehen mir auch Excel Daten zur Verfügung die ich im Prinzip nurnoch zeitschritt für zeitschritt einlesen und mit der simulationszeit synchronisieren muss.
Wenn ich aber jetzt den Block "from excel sheet" in Simulink einbaue und der Funktion zuführe wird zwar während der Simulation immer der aktuelle Wert zugeführt aber am Ende sehe ich trotzdem nur den letzten Wert
Mein Code sieht bisher so aus:
Code:
function Leistung_Maschine_1 = function1(s_off,s_de,s_sb,s_op,s_w,time,data)
coder.extrinsic('assignin')
m = zeros(735,2);
idx=1;
if s_w == 1;
for idx = [1:1:735] %Zustand working=1 von t=205 bis t=940, delta t=735
m(idx,1)= time; %aktuelle Simulationszeit soll in die erste Spalte
m(idx,2)=data; %entsprechender Leistungswert in zweite Spalte
idx=idx+1;
end end
Die Eingangsgrößen s_off, etc. sind die Signale der Zustände, können also 0 oder 1 sein.
Meine Idee war es jetzt mittels einer if Abfrage zu entscheiden in welchem zustand sich die Maschine befindet und dann dementsprechend die Daten aus den verschiedenen Excel Sheets zu benutzen.
Der Code oben ist erstmal nur für den Zustand working, der geht an bei t=205.
Das Ergebnis von dem Code oben ist eine Nullmatrix m (735x2).
Kann mir jemand helfen und weiß, wie ich meine Schleife modifzieren muss damit das funktioniert? oder muss ich ein Matlab System nutzen für sowas?
Vielen Dank schonmal!!!
Grüße
Einstellungen und Berechtigungen
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
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.