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

Simulinkmodell mit Standardblöcken: NaN or Inf error

 

Flo214
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 16.08.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.08.2019, 16:55     Titel: Simulinkmodell mit Standardblöcken: NaN or Inf error
  Antworten mit Zitat      
Hi Leute,

Ich habe das unten angehängte Simulinkmodell aufgebaut und bekomme folgende Fehlermeldung:

An error occurred while running the simulation and the simulation was terminated
Caused by:
Algebraic state in algebraic loop containing 'Modell/Divide' computed at time 0.0 is Inf or NaN. There may be a singularity in the solution. If the model is correct, try reducing the step size (either by reducing the fixed step size or by tightening the error tolerances)

Die Matrizen M,C und K mit den Dimensionen 52*52 erhalte Ich aus einem Matlabskript genauso wie die üblichen notwendigen Werte aus dem folgenden Code:
Code:

clear
clc
close all

magnetischeFeldkonstante = 4*pi*10^(-7);
Nullvektor1 = zeros(5,1);
Nullvektor2 = zeros(46,1);
Gleichspannung = 230;

Aktor = struct('Ankeraussendurchmesser',140*10^(-3),'Ankerinnendurchmesser',58*10^(-3),'Stegbreite',13*10^(-3),'Lagerbreite',70*10^(-3),'Spulenpaarwinkel',35/360*2*pi,'Spaltbreite0',1*10^(-3));
Spulenpaar = struct('Windungszahl',600,'Vormagnetisierungsstrom',5);
Draht = struct ('Temperatur',80,'Durchmesser',1*10^(-3),'spezWiderstand',0.01786*10^(-6),'Temperaturkoeffizient',3.92*10^(-3)); %Temperatur in °C, spezWiderstand in ohm*m

Aktor.Polflaeche=Aktor.Lagerbreite*Aktor.Stegbreite;
Aktor.Wicklungshoehe = (Aktor.Ankeraussendurchmesser - Aktor.Ankerinnendurchmesser - 2*Aktor.Stegbreite)*0.5;
% Aktor.Wicklungsbreite = Draht.Durchmesser.^2*Spulenpaar.Windungszahl/Aktor.Wicklungshoehe;

Draht.Laenge = 2*Spulenpaar.Windungszahl*(Aktor.Lagerbreite + Aktor.Stegbreite + 2*Aktor.Wicklungshoehe);
Draht.Querschnitt = (pi/4)*Draht.Durchmesser.^2;

Draht.Widerstand20 = Draht.Laenge*Draht.spezWiderstand/Draht.Querschnitt;
Draht.Widerstand = Draht.Widerstand20*(1+Draht.Temperaturkoeffizient*(Draht.Temperatur-20));
 


Ursprünglich hatte Ich das Modell mit fcn-Blöcken aufgebaut, aufgrund der schlechten Performance wollte Ich das ganze nun mit den Standardsimulinkblöcken aufbauen, was zu der obigen Fehlermeldung geführt hat. Vorher ließ sich das Modell also zumindest starten.

Modell.slx
 Beschreibung:

Download
 Dateiname:  Modell.slx
 Dateigröße:  31.26 KB
 Heruntergeladen:  352 mal
Modell.slx
 Beschreibung:

Download
 Dateiname:  Modell.slx
 Dateigröße:  31.26 KB
 Heruntergeladen:  327 mal
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


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

das Struct Matrizen mit den Informationen für den State Space Block fehlt.

Die an der algebraischen Schleife beteiligten Variablen werden in der Regel ja angegeben? Oft steht dahinter ein Modellierungsproblem, d.h. die gewünschten Gleichungen werden nicht korrekt umgesetzt.

Der Übersichtlichkeit halber sollten Signalkreuzungen und Zickzack-Linien vermieden werden. Auch Ableitungen sollten möglichst vermieden werden, stattdessen würde ich zu Integratoren raten.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
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.