TIA TIA V13 Bitmeldungen strukturieren

schwimmer

Level-3
Beiträge
1.030
Reaktionspunkte
300
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,
gibt es eine Möglichkeit Bitmeldungen zu strukturieren?
In meinem Projekt, einer übergeordneten SPS, müssen Meldungen von unterschiedlichen Anlagenteilen angezeigt werden. In WinFlex konnte ich bei den Bitmeldungen Unterordner anlegen und hatte so eine gewisse Struktur in den Meldungen. War halt einfacher wenn mann mal etwas sucht. Bei TIA finde ich die Möglichkeit nicht und bei ca. 1000 Fehlermeldungen macht die Suche etcht keinen Spass.

Danke für eure Infos.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Gleichstromer,
danke für die Info, leider hilft sie mir nicht wirklich weiter. Wie in so vielen Dingen sehe ich bei TIA leider mehr Rückschritt als Fortschritt.
Auch die vielgepriesene symbolische Programmierung ist für mich ein Witz wenn ich Bits in einem DB nichtmal alphabetisch sortieren kann. Gleiches gilt auch für die Bitmeldungen.
Trotzdem Danke für deine Info.
 
Mit den Bitmeldungen, das kann ich nicht so ganz nachvollziehen, du kannst doch die Meldenummern festlegen und deine Anlage blockweise aufteilen. So mache ich das schon immer und benötige kein Ordner für die Bitmeldungen, weil ich mich immer an der Nummer orientiere. Klar ist das für dich ein Rückschritt (wie so vieles in TIA), aber bei einigen Dingen, muß man wohl immer Kompromisse eingehen und nach einer möglichst praktikablen Lösung suchen.
 
ich kann schon den Wunsch nach Ordnern nachvollziehen, weil:
  1. es schon bei WinCCflexibel ging
  2. man wirklich besser Strukturieren kann
  3. man alles bei TIA in Ordner packen kann bis auf die Bitmeldungen

Ich Stukturiere auch mit Nummern, habe aber vorher eine unterscheidung
zwischen Betriebsmeldungen und Störmeldungen gemacht.
Verstehen warum das jetzt abgeschafft wurde, muss man nicht.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für euere Infos.
Sicher, nach den Nummern strukturieren ist ein Weg, wobei ich für die Nr. ansonsten keinerlei Verwendung habe.
Wenn du aber von einem Zulieferer ein SPS-Projekt bekommst und dessen Fehlermeldungen mit anzeigen sollst musst du dich hinsetzen und alle Fehler Nr. umschreiben, auch nicht gerade der Bringer.
Hab mir jetzt mal die PLC-Meldungen angeschaut aber das bringt mich auch nicht viel weiter und eine Arbeitserleichterung sehe ich darin auch nicht.
 
@schwimmer

Einen großen Vorteil hat für mich die Nummer recht häufig, bei einem Anruf, der sich auf eine Fehleranzeige im Panel bezieht, frage ich immer sofort nach der Nummer, weil der Anlagenbediener i.d.R. den Text nicht wiedergeben kann. Antworten wie "Ja, Störung an irgendeiner Station, rote Lampe blinkt, Text weiß ich grad nicht" sind da recht häufig. Ich frag dann erst einmal nach der Nummer, und suche mit das selbst aus dem Programm. Zugegeben, nur ehe Kleinigkeit, aber immerhin :)
 
@Ralle: Genau

und wenn in der Dokumentation die Fehlernummer mitgeführt wird, ist das Hilfe zur Selbsthilfe.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Stimmt schon, nur nehme ich dafür nicht die Fehlernummer sondern das Bit welches den Fehler in der SPS setzt. Ist zwar etwas mehr Aufwand bei den Fehlertexten, dafür muss der Instandhalter nicht erst in WinCCflex nach dem Bit suchen. Wir haben nämlich auch Kunden die nur Step7 aber keine FlexLizenzen haben.
 
Stimmt schon, nur nehme ich dafür nicht die Fehlernummer sondern das Bit welches den Fehler in der SPS setzt. Ist zwar etwas mehr Aufwand bei den Fehlertexten, dafür muss der Instandhalter nicht erst in WinCCflex nach dem Bit suchen. Wir haben nämlich auch Kunden die nur Step7 aber keine FlexLizenzen haben.

Das kann man auch einfach lösen, ich habe die Meldungen im Nummernbereiche aufgelöst.
1xxx sind Störmeldungen
2xxx sind Betriebsmeldungen
Das gleiche gilt auch für die ganze Elektrokonstruktion, Aggregate werden in Funktionsbaugruppen
aufgelöst. Diese Funktionsbaugruppen fangen beim Schaltplan an, gehen über das SPS-Programm
bis in die HMI.

Dann bekommen die Meldungen immer als Zusattext die Funktion.

1008001 - Störung Schutzschalter
1009002 - Störung Druckluft
2016421 - Endlage max. Achse Horizontal

Da die Symbole für die Programmbausteine den gleichen Nummernbereich haben,
Kann der Programmierer ohne Flex bei der Meldung 2016 den Baustein 421 öffnen
dort findet er dann die Ansteuerung. Braucht man nicht mal einen Querverweis.

Das Bit anzugeben findet ich Altmodisch.
 
Naja so groß ist der Unterschied ja nun nicht, ob ich nun die Funktionsnummer der Baugruppe angebe oder direkt das Bit.
Bei unseren Anlagen kann ich es mir auch nicht erlauben für jede Meldung einen eingenen Baustein zu programmieren, somit hätten wieder zahlreiche Fehlermeldungen die gleiche Funktionsbaugruppe und dann muss ich diese durchsuchen. Wenn dann noch eine Fremdsprache dazu kommt bleibt mir wieder nur der Umweg über Flex. Aber ich denke das sind nur Penuts und jeder hat da so sein System.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Naja so groß ist der Unterschied ja nun nicht, ob ich nun die Funktionsnummer der Baugruppe angebe oder direkt das Bit.
Bei unseren Anlagen kann ich es mir auch nicht erlauben für jede Meldung einen eingenen Baustein zu programmieren, somit hätten wieder zahlreiche Fehlermeldungen die gleiche Funktionsbaugruppe und dann muss ich diese durchsuchen. Wenn dann noch eine Fremdsprache dazu kommt bleibt mir wieder nur der Umweg über Flex. Aber ich denke das sind nur Penuts und jeder hat da so sein System.

Wie währe es mal mit richtig lesen, wer hat geschrieben das für jede Fehlermeldung ein eigener Baustein erstellt wird.
Es wird für jedes Aggregat eine eigene Funktionsbaugruppe bzw. Baustein festgelegt. Dort findet man den ganzen Programmteil
für das Aggregat, das können dann 1 bis x Fehlermeldungen sein. Es muss keinesfalls Flex geöffnet werden, mit der Funktions-
kenzeichnung, kannst du gleich den zugehörigen Baustein öffnen.

Das hat einfach nur etwas mit Strukturierung zu tun.
 
Programmierung mit SIMATIC STEP 7 (TIA Portal) zur Steuerung eines el. Energiespeiche

Hallo Leute !

für meinen ich Projekt , ich muss einer Siemens SPS S7-314c mit SIMATIC STEP 7 (TIA Portal) zur Steuerung eines elektrischen Energiespeichers Redox Flow programmieren,
Der Redox flow ( elektrischen Energiespeicher) bestehend aus:
1-Ladesteuerung (vorhanden, Kommunikation über Modbus läuft)
2- zwei Ebenen von bidirektionalen DC/DC Stellern (DC/DC1 und DC/DC2) (vorhanden, Kommunikation über Profinet läuft).
sind über eine zentrale SPS gemeinsam so zu steuern, dass ein erster Betrieb möglich wird.
Dabei ist mit diesen Komponenten eine Kommunikation über Profinet bzw. Modbus aufzubauen und Signale auszutauschen.
Der Steuerumfang umfasst:
#Sicheres Einschalten aller Komponenten
#Betriebart Laden, Pause, Entladen für Ladesteuerung vorgeben
#Sollwert des Stroms und Richtung vorgeben
#Verarbeiten von Betriebs-, Warn-, Störmeldungen
#Fehler Behandlung Routine machen (Erwartungswerte in der Speicher, Reaktion des Systems)

Also die kommunikation ist schon erstellt, nun will ich nur Implementierung machen.Dh(Auswerten der eingelesenen Daten vom Modbus RTU und Profinet aus den Komponenten des Speichersystems.

anbei die Modbus Interface , und mein Zustandsdiagramm.

Danke im voraus für Unterstützung
 

Anhänge

  • Schnittstellen-Protokoll.PNG
    Schnittstellen-Protokoll.PNG
    63,9 KB · Aufrufe: 48
  • Operational_Status_Register.PNG
    Operational_Status_Register.PNG
    55,3 KB · Aufrufe: 47
  • Watchtabelle_Modbus_funktioniert.jpg
    Watchtabelle_Modbus_funktioniert.jpg
    101,2 KB · Aufrufe: 48
  • Zustände.pdf
    98,6 KB · Aufrufe: 14
  • Safety_Status_Regíster.PNG
    Safety_Status_Regíster.PNG
    51,3 KB · Aufrufe: 35
Benutze einfach die Programmalarme anstatt die Bitmeldungen.
Dann ordnest Du deine Alarme direkt im S7 Programm und musst gar nichts mehr an der HMI machen. Voraussetzung ist natürlich eine 1500er.

Ansonsten symbolisch adressieren und über die Symbolik der Triggervariable sortieren.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@ rostiger Nagel
Letzlich ist es doch eine Frage der persönlichen Vorlieben und Arbeitsweisen. Wir schreiben das Bit in die Fehlermeldung, du die Fehlernummer in seinen DB-Kommentar & die Nr. der Funktionsgruppe in den Fehlertest. Vom Arbeitsaufwand für mich identisch. Habe dein Post schon richtig gelesen, wenn dir aber eine Funktionsgruppe mehrere Fehler bringen kann dann musst du eben in dem FB bzw. über deinen Srörmelde DB suchen welcher Fehler gerade gemacht wird. Hinzu kommt noch dass wir auch die Störmeldungen noch strukturieren müssen, nicht alle sollen die Anlage sofort stillsetzen. Unter Step 7 konnte mann halt die Bits als Meldung benutzen und dann auch zusätzlich im Programm nutzen und sie gleichzeitig als WORD abfragen ob eine Störung vorliegt. Und das eben für jede Störungsart (eigener DB) getrennt. Jetzt ist eben Bit definieren & WORD abfragen nicht mehr möglich, bzw, nur über Umwege.

@ miasma
Die PLC-Alarme haben schon Vorteile aber nicht immer kommt die 1500er zum Einsatz und vom Arbeitsaufwand sehe ich auch keinen großen Vorteil. Gut ich muss nichts in der HMI machen, dafür mus ich für jeden Fehler den FB aufrufen und den Fehlertext muss auch erstellt werden. Was ich noch nicht probiert habe ist wie es mehrsprachig aussieht. Oftmals müssen wir die Bedienoberfläche 3-sprachig machen.
 
Habe dein Post schon richtig gelesen, wenn dir aber eine Funktionsgruppe mehrere Fehler bringen kann dann musst du eben in dem FB bzw. über deinen Srörmelde DB suchen welcher Fehler gerade gemacht wird. Hinzu kommt noch dass wir auch die Störmeldungen noch strukturieren müssen, nicht alle sollen die Anlage sofort stillsetzen. Unter Step 7 konnte mann halt die Bits als Meldung benutzen und dann auch zusätzlich im Programm nutzen und sie gleichzeitig als WORD abfragen ob eine Störung vorliegt. Und das eben für jede Störungsart (eigener DB) getrennt. Jetzt ist eben Bit definieren & WORD abfragen nicht mehr möglich, bzw, nur über Umwege.

Gelesen aber nicht verstanden, ich muss nicht in irgendeinen DB suchen der gerade ansteht.
Ich lese auf dem Display. 2008 : 001 - Störung Schutzschalter.

So die 2008 ist die Störungsnummer. Das Symbol zur Störung ist dann SM2008, ob Merker
oder DB spielt keine Rolle, damit ist Störung genauso eindeutig wie eine Absolute Adresse.
001 ist das Symbol für den Baustein wo ich die Meldung finde, in diesem Fall der FB1, so wenn
ich diesen Baustein bin sollte ich doch wohl Rückzug die Stelle der Verwendung finden, üblicher-
Weise am Bausteinanfang.

Bei deiner verwendung muss ich doch wohl zuersteinmal einen Querverweis machen. Die Funktion
'Querverweis' habe ich in den letzten 20 Jahren nicht mehr benötigt. Das verstehe ich unter Strukturietes
und Symbolisches Programmieren, wenn du irgendwann zwangsweise TIA einsetzt, wirst du den
Programmierstiel aus den 80er ändern müssen. Willkommen im 21 Jahrhundert.
 
@ miasma
Die PLC-Alarme haben schon Vorteile aber nicht immer kommt die 1500er zum Einsatz und vom Arbeitsaufwand sehe ich auch keinen großen Vorteil. Gut ich muss nichts in der HMI machen, dafür mus ich für jeden Fehler den FB aufrufen und den Fehlertext muss auch erstellt werden. Was ich noch nicht probiert habe ist wie es mehrsprachig aussieht. Oftmals müssen wir die Bedienoberfläche 3-sprachig machen.

Mehrsprachigkeit ist kein Problem bei Programmalarmen zumindest bei 3 Sprachen.
Denn Fehlertext kannst du auch dynamisch erzeugen wenn dieser z.b. aus dem Bausteinnamen ableitbar ist. Hierfür gibt es Reflexionsanweisung wie z.B. GetInstance, GetFunction usw.
Ich baue gerade eine Bibliothek für TIA in der alle Bausteine ihre Meldungen selber erzeugen. Im Alarmfall wird die Meldung einfach zusammengebaut. Ist ganz einfach weil der Programmalarm FB 10 Begleitwerte unterstützt.
Auch UNICODE Strings werden unterstüzt somit sind auch Meldungen in kyrillisch oder chinesisch möglich.
 
Zurück
Oben