Grundsätzliches zu Bitmeldungen WinCC Comfort / Advanced TIA

Draco Malfoy

Level-1
Beiträge
1.168
Reaktionspunkte
82
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin Ihrs !

Mich ärgert derzeit massivst die elende Plakkerei, was die Erstellung von Bitmeldungen im TIA Portal angeht, sowohl für Comfort als auch für Basic Panels, is ja alles gleich.
Anstatt daß man per Rechtsklick auf eine entsprechende Variable direkt eine Meldung erzeugen könnte, ist die gebotene Vorgehensweise so, als wäre man noch in der Ära von ProTool. Ja wirklich, hat sich nichts geändert irgendwie.

Ich mache es derzeit so: es wird eine Struktur im DB mit den Meldungsbits angelegt, die dann mittels BLOCKMOVE auf die entsprechenden Meldungs-WORDs kopiert wird, und diese werden im Panel ausgewertet (Rotieren nicht vergessen, weil wegen Little Indian oder war das Big Indian ? Auf jeden Fall, müssen immer jeweils 8Bit kreuzweise umgesetzt werden, sonst passt es nicht).

Gibts irgendwelche Möglichkeiten, wie man das weniger umständlich machen kann ? Bestimmt habt ihr doch irgendwelche Tipps und Tricks auf Lager.

Thanx in Advance

Der Draco
 
Mich ärgert derzeit massivst die elende Plakkerei, was die Erstellung von Bitmeldungen im TIA Portal angeht
Was ist daran eine "Plackerei"?
Ich mache es derzeit so: es wird eine Struktur im DB mit den Meldungsbits angelegt, die dann mittels BLOCKMOVE auf die entsprechenden Meldungs-WORDs kopiert wird, und diese werden im Panel ausgewertet (Rotieren nicht vergessen, weil wegen Little Indian oder war das Big Indian ?
DB Beginn:
Störung 09 .. 16
Störung 01 .. 08
Störung 25 .. 32
Störung 17 .. 24
...
Dann (wie du auch schreibst) Blockmove auf Array of WORD
Zum Schluss die Störtexte einfach per Drag & Drop ins TIA (Meldungen) rüber ziehen

Ach ja und die Sache mit ProTool:
Es ist nicht gleich sonder schlimmer, aber schon seit WinCC, denn bei ProTool brauchte man das Word-Array nicht sondern dort ging es direkt mit einem Array of Bool. ;)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du kannst dir ja mal ProAgent/ PDIAG anschauen.
Damit geht das von dir gewünschte Erzeugen per Rechtsklick.

Bei der 1500er hat Siemens das Alarm-Meldeverfahren stark vereinfacht.
Mal schauen, wie weit da noch Bitmeldungen Sinn machen.

Gruß
Dieter
 
Ich rotiere garnichts ich lege im DB die Meldung einmal richtig an.
Warum soll ich die extra noch einmal umladen, macht die Sache doch
nur noch unübersichtlicher. Gewöhnt euch an Symbolisch zu Programmieren.
 
Schon seit WinCC flexible kann man selber bestimmen, welches Bit zu welcher Meldungsnummer gehört. TIA sollte das auch können. Das kann man so organisieren, daß man kein Byte-Swap braucht, falls man die Meldebits in der SPS einfach fortlaufend angelegt hat.

Da Meldebits zyklisch abgefragt werden müssen, hat es schon Vorteile für die Kommunikationsperformance, wenn die vielen Meldebits in Words zusammengefasst sind und nicht einzeln gelesen werden.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Schon seit WinCC flexible kann man selber bestimmen, welches Bit zu welcher Meldungsnummer gehört. TIA sollte das auch können. Das kann man so organisieren, daß man kein Byte-Swap braucht, falls man die Meldebits in der SPS einfach fortlaufend angelegt hat.

Da Meldebits zyklisch abgefragt werden müssen, hat es schon Vorteile für die Kommunikationsperformance, wenn die vielen Meldebits in Words zusammengefasst sind und nicht einzeln gelesen werden.

Harald

Beides bei TIA und Flexibel möglich.
Mann kann einzelne Bits anlegen.
Hinkefuss, wenn man viele Meldungen
hat, wird man die Anbindung nur über
ein Array of Word machen können.
Aber auch das kann man verschmerzen.
 
Bei der 1500er hat Siemens das Alarm-Meldeverfahren stark vereinfacht.
Mal schauen, wie weit da noch Bitmeldungen Sinn machen.
Es geht um 1500er gerade, und KT1000 PN. Wie würdest Du das dann machen, wenn Du dem Anwender mittelen willst, daß das was er da gerade eintippt ein absoluter Bullshit ist, oder z.B. die Druckluft an der Anlage nicht vorhanden ist ?
Sicherlich kann man einige Größen auch als Analogmeldungen rausgeben, aber das frisst ja sicherlich ohne Ende Performance wenn ich 150 analoge Meldungen projektiere.

Wegen Byte-Swap: Nun, klar man kann es auch im Panel machen, indem man die Triggerbits in der Reihenfolge 8...16 0...7 anlegt, ist halt immer noch eine Rotation, bloß woanders. Aber ich fänds irgendwie angenehmer, wenn das Panel gleich mit einer anwenderdefinierten Struktur zurecht käme.
 
Wir stellen nächstes Jahr komplett auf 1500 um
Bei der ersten Testanlage habe ich komplett auf Bit-Meldungen verzichtet und Programm-Alarm verwendet.
Das ist im Prinzip die Alarm-S-Funktionalität der 300er.
Das ganze hat sich mit TIA V13 und der aktuellen Firmware nochmals verbessert.
Hauptvorteil für mich ist, dass die komplette Meldung (inkl. Text und Begleitwerten) nun zum Baustein gehört und mit kopiert wird.

Gruß
Dieter
 
Zuviel Werbung?
-> Hier kostenlos registrieren
aus Bitmeldungen einen DB erzeugen

also ich mach es so, dass ich die meldungen in protool,flex,tia-hmi schreibe. exportiere, ein vbscript drüberlaufen lasse welches mir die db's erzeugt und fertig.
anbei mal die scripte falls jmd interesse hat.
 

Anhänge

  • !_how2.txt
    2,5 KB · Aufrufe: 260
  • PT-M_to_DB.vbs.txt
    6,4 KB · Aufrufe: 87
  • FLEX-M_to_DB.vbs.txt
    8,5 KB · Aufrufe: 106
  • TIA-M_to_DB.vbs.txt
    8,9 KB · Aufrufe: 134
@ Draco: Du sprichst mir aus der Seele, woanders geht es doch auch Bitweise... siehe z.B. WinCC (nicht flex)
Ich finde das auch extrem nervig, ich arbeite derzeit mit Strukturen in welcher die einzelnen Bits für die Meldungen angelegt sind.
Umladen muss ich aber auch, absolut in der HMI eingeben geht wohl nicht mehr! -> bekomme die Meldung "Das Objekt wurde gelöscht" :confused:
Beim Umladen muss ich aber auch absolut addressieren, oder gibt es eine andere möglichkeit eine 16Bit Struktur in ein WORD zu kopieren???

Ein Array will ich nicht, da ich hier nicht für jedes einzelne Bit angeben kann was es für eine Störung ist...
Was gibts noch für Möglichkeiten das sauber hinzubekommen? ->Ich arbeite derzeit nur mit Classic CPUs und neuen Comfort Panels???
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hier mal ein Beispiel zum Program_Alarm der 1500er

PLC-Meldungen.jpg
Aufruf.jpg

Funktioniert eigentlich einfach und simpel.
Bei Multi-Instanzen erleichtert es das Ganze doch erheblich.

Gruß
Dieter
 
Hallo,
das sieht für mich so aus als wenn man statt eines Bits aus einem Word eine Nummer an die Visu (in immer der gleichen Variablen) schickt. Der Nummer sind dann die Störtexte zugeordnet.
Was ist wenn eine Station, die so eine Nummer verschickt, mehr als eine Störung gleichzeitig hat ?
Also für mich sehe ich da noch nicht wirklich den Vorteil zu Bitmeldungen.

... und @Dieter:
auch Bitmeldungen kann ich in eine Instanz integrieren - mache ich bei uns so (sogar mit dem Classic-Kram).

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Larry
Die Lösung bei der 1500er ist schon noch wesentlich komfortabler als das Bitmeldeverfahren.
Du brauchst dich nicht mehr mit irgendwelchen Nummern rumschlagen. Du kannst die Meldetexte entweder so lassen, wie du Sie im FB definiert hast oder entsprechend der Multiinstanz ergänzen.
Zusätzlich kann die Steuerung den Baustein und das Netzwerk als Begleittext übergeben. Somit wird der Instandhalter gleich mal an die richtige Programmstelle geführt.
Mehrsprachige Texte werden wohl auch unterstüzt ... habe ich aber nocht nicht probiert.
Die Meldungen werden auch über die Weboberfläche ausgegeben ... Spart auch manchen Weg an die Anlage :D

Neben dem SCL-Editor ist die Meldungsgeschichte für mich persönlich einer der Vorteile von TIA.

Gruß
Dieter
 
@Dieter
Wie erfolgt die Übermittlung des Quittierstatus an das Programm, falls eine Einzelquittierung erforderlich ist?

Gruß
Ralph
 
@ Draco: Du sprichst mir aus der Seele, woanders geht es doch auch Bitweise... siehe z.B. WinCC (nicht flex)
Ich finde das auch extrem nervig, ich arbeite derzeit mit Strukturen in welcher die einzelnen Bits für die Meldungen angelegt sind.
Umladen muss ich aber auch, absolut in der HMI eingeben geht wohl nicht mehr! -> bekomme die Meldung "Das Objekt wurde gelöscht" :confused:
Beim Umladen muss ich aber auch absolut addressieren, oder gibt es eine andere möglichkeit eine 16Bit Struktur in ein WORD zu kopieren???

Ein Array will ich nicht, da ich hier nicht für jedes einzelne Bit angeben kann was es für eine Störung ist...
Was gibts noch für Möglichkeiten das sauber hinzubekommen? ->Ich arbeite derzeit nur mit Classic CPUs und neuen Comfort Panels???

Exakt. Die Frage stelle ich mir auch. Und weil man eben absolut umladen muss, gehen nur absolut adressierte Bausteine mit "nicht optimiertem Zugriff". Im Ergebnis wird so das symbolische Konezpt von 1500er schon zu Anfang zerschossen. Ich muss sagen, daß mir die Vorgehensweise von Dieter (Programmalarme) noch nicht geläufig ist bzw. dafür müsste man hier erst mal noch so einiges umprogrammieren an Bausteinen, die eig. schon fertig sind und funktionieren.

Neben dem SCL-Editor
Stimmt, der ist in der Tat eindeutig besser.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Dieter: und wie kommt diese Störmeldung jetzt in die HMI ? Wo muss ich das projektieren ? Ist die in der "normalen" Meldeanzeige / im Meldefenster schon automatisch mit drin ?
 
@Blockmove
Yep, mich würde auch interessieren, wie die Quittermeldung an die SPS erfolgt und ob man auch zentral (alle oder Gruppenweise) quittieren kann.
Das ist eigentlich der Hauptgrund, warum ich noch immer Bitmeldungen nutze.

@Larry
Wenn du das in deinen Instanzen drin hast, dann auch die Texte? Wird das nicht ein wenig zu viel für den Mickerspeicher der S7 und die Verbindung zur HMI?
 
@Ralle:
Nein - nicht die Texte - nur die Bitmeldungen und die immer zu einem WORD zusammengefasst.
Der Visu (ob nun Flex oder VisiWin) ist das egal, ob sie von hier oder von da mehrere Worte als Meldungstrigger abholt.

Gruß
Larry
 
Zurück
Oben