Fehlermeldungen in Flexible ohne Bitmeldungen

Bensen83

Level-1
Beiträge
777
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute ...

bei uns in der Firma ist imMoment stand der dinge, eine Fehlermeldung über eine Bitmeldung auf dem HMI auszugeben.
Jetzt wollten wir in richtung Fehlercodierung gehen.
Meine Frage jetzt, ist es im Flexible 2008 irgendwie möglich die Fehlermeldungen über eine DINT Variable auszugeben und wenn ja, wie kann ich mehrere Fehler darstellen und können diese auch Archiviert werden?

Hat in diesem Bereich jemand Erfahrung?

Jede Hilfe gerne gesehen ;-)
 
Da musst du etwas basteln, ist leider ziemlich aufwändig.

Ich mache das so:

- Ca. 200 FB's / Module die Fehler verursachen können.
- Einen Fehlerpuffer mit 20 Elementen (Fehlermeldungen)

Hat ein Modul eine Störung, schreib ich die in einen freien Platz des Fehlerpuffers. Jede Element des Fehlerpuffers hat ein Flag (Bitmeldung auslösen) und einen INT mit der Fehlernummer.
Flexible hat 20 Bitmeldungen projektiert, die eigentliche Fehlermeldung wird dabei aus der Textliste geholt (mit dem INT des Fehlerpuffers).

Zum generieren der Textliste und auch der Fehlernummer auf der SPS hat ich ein schönes Excel, das generiert mir einen DB mit den Fehlernummern und ein CSV für Flexible.
--> Leider funktioniert das mit dem Hilfetext nicht, das kann Siemens nicht.
 
Aha ok

Wie kann man denn mit Excel nen DB usw generieren?
Also du erzeugst ne AWL Quelle, oder wie?
Und die CSV ist für die Textliste oder wie?

Also könnte es dann aber sein, dass der Fehler XY einmal mit der Bitmeldung 1 und einmal mit der Bitmeldung 20 kommt, doer wie? Das würde ich gerne verhindern.

Hatte mal gesehen (andere Firma), dass Fehler einfach in nen Syn´mbolischen EA-Feld und ner Textliste ausgegeben wurden.
Da ist dann aber Arichvierung nicht so einfach möglich, oder?
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich erzeuge eine SCL Quelle.

Zum eintragen des Fehlers in den Puffer solltest du natürlich eine separate Funktion schreiben (ebenso zum löschen). Da kannst du dann solche sachen abhandeln, dass du den Puffer durchsuchst ob der Fehler schon in einem Element eingetragen ist, etc.
 
Ok

Kannst du die Excel-Vorlage mal online stellen?
Und vielleicht mal ein beispiel, wie du den fehler erzeugst? :)

Hast du auch Fehlercodes?
Also Prioritäten usw?
 
Excel und Programmcode kann ich dir nicht aushändigen, das ist Eigentum meiner Firma.

--> Ein paar Einblicke, wie das etwa aussieht findest du im Anhang.

Wie gesagt, lohnt sich der Aufwand nur für Standardsoftware, welche in mehreren Projekten eingesetzt werden kann. Wir sind mittlerweilen soweit, dass ich nur noch die Textliste in Flexible einfügen muss - ansonsten muss ich das Flexible nicht mehr berühren.
 

Anhänge

  • flex_BitMsg.JPG
    flex_BitMsg.JPG
    88,3 KB · Aufrufe: 34
  • xls_ErrList.JPG
    xls_ErrList.JPG
    283,3 KB · Aufrufe: 36
  • xls_Export.JPG
    xls_Export.JPG
    36,6 KB · Aufrufe: 31
  • s7_ErrDB.JPG
    s7_ErrDB.JPG
    115,3 KB · Aufrufe: 32
  • s7_TypeDef.JPG
    s7_TypeDef.JPG
    73 KB · Aufrufe: 30
Zuviel Werbung?
-> Hier kostenlos registrieren
Aha

Aber du erstellst dann ja für jede Fehlernummer eine INT, oder wie?


Was mich mal interessieren würde ist, wie die Textliste direkt als Quelle ausschaut.

Ist es da möglich die Datenbausteine direkt ins S7 Projekt einzubinden, also nicht als Quelle. --> das gleiche auch für die textliste
 
Aber du erstellst dann ja für jede Fehlernummer eine INT, oder wie?

Das kommt davon, dass wir komplett symbolisch programmieren (ein weiterer Schwachpunkt von Siemens). Siemens unterstützt keine globalen Konstaten, wie das etwa in C / C++ üblich ist, daher der Umweg über den DB.

Anstelle von
Code:
O_nErrorCode := 47;
schreibe ich
Code:
O_nErrorCode := "dbErr".Timeout_Hubantrieb;

------------------------------------------------------
Was mich mal interessieren würde ist, wie die Textliste direkt als Quelle ausschaut.

Die Textliste ist eine CSV-Datei, die wird dann im Flexible importiert --> Anhang

------------------------------------------------------
Ist es da möglich die Datenbausteine direkt ins S7 Projekt einzubinden, also nicht als Quelle. --> das gleiche auch für die textliste

Wäre mir nicht bekannt.
 

Anhänge

  • errList_CSV.JPG
    errList_CSV.JPG
    88,6 KB · Aufrufe: 16
Wie csv erzeugen

Wie erzeuge ich denn im Flexible ne csv von einer textliste?
Wenn ich auf die textlisten klicke und dann auf textliste exportiern, dann macht er irgendwie alle texte von allen textlisten durcheinander in eine csv. :-(
 
Zurück
Oben