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

Eigene Fehlermeldung während Simulation aufrufen

 

der_eine1337
Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 05.11.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.11.2013, 21:06     Titel: Eigene Fehlermeldung während Simulation aufrufen
  Antworten mit Zitat      
Hallo Leute,
im Rahmen eines Modells für ein Batteriemanagementsystems werden die Spannungen einiger Batteriezellen gemessen und die festgelegten Grenzen überprüft. Die Schaltung dazu ist im Bild unten zu sehen.

Ist eine dieser Spannungen größer oder kleiner als der geforderte Wert so wird der Eingabewert der Embedded Matlab Function geändert und in dieser soll eine Fehlermeldung generiert werden.

Code:

function y = fcn(u)
%#eml
% U : Eingang vom ODER-Gleid kommend
% Y : Ausgang Weiterletiung in den Speicher  

eml.extrinsic('errordlg')

y = 0;

if u==0
    y = 0;
else
    y = 1;
     errordlg ( 'ERROR: Battery Cell Voltage');
end
 


Der Code Embedded Matlab Function funktiert in einem M-File und die Fehlermeldung wird generiert.
Allerdings funktioniert der Vergleich der Eingangsgröße im Embedded Matlab Function Funktionsblock nicht und die Simulation wird abgebrochen.
Hat jemand eine idee wie ich die Bedingung der IF Anweisung ändern muss, damit dies Funktioniert? Auch ein 'true' bzw 'false' anstelle der "0" wird nicht erkannt.

Vielen dank für die Hilfe

Sicherheit_Atmel.PNG
 Beschreibung:
Schaltung

Download
 Dateiname:  Sicherheit_Atmel.PNG
 Dateigröße:  44.3 KB
 Heruntergeladen:  399 mal
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 05.11.2013, 22:39     Titel:
  Antworten mit Zitat      
Hallo,

lass doch mal die "Stop"-Blöcke weg. Funktioniert es dann mit einem Vergleich auf false?
Desweiteren kannst du am Anfang des Codes
Code:

reinschreiben, damit klar wird, ob der Block überhaupt je mit u = true ausgeführt wird.

Bitte nach Möglichkeit auch das Modell als solches anhängen. Dann kann man damit experimentieren, ohne sich erst selbst alles zusammenzuklicken.

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

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 05.11.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.11.2013, 20:25     Titel:
  Antworten mit Zitat      
Zitat:
Bitte nach Möglichkeit auch das Modell als solches anhängen. Dann kann man damit experimentieren, ohne sich erst selbst alles zusammenzuklicken.


Ja das macht mehr Sinn, werde ich beim nächsten mal dran denken!

Zitat:
lass doch mal die "Stop"-Blöcke weg. Funktioniert es dann mit einem Vergleich auf false?


Nachdem ich die Stopblöcke entfernt habe, lief es direkt auch mit den Vergleichen auf "0" bzw. "1" ... wobei das die Fehlermeldungen die vorher erschienen sind nicht erklärt. Aber jetzt läuft es, vielen dank Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 06.11.2013, 21:32     Titel:
  Antworten mit Zitat      
Hallo,

bitte das nächste mal auch sagen, welche unerwarteten Verhalten / Fehlermeldungen du bekommst.

Grüße,
Harald
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 - 2025 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.