TIA Program Alarm im Multilanguage Projekt

TGIF

Level-2
Beiträge
11
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo allerseits,

ich bin schon etwas länger daran, unsere ganzen standard Bausteine mit Program Alarmen zu versehen,
da wir die ganzen Bitmeldungen dafür nicht mehr manuell erstellen möchten.
In meinem ersten Projekt hatte ich dort keinerlei Probleme und war begeistert wie viel Arbeit man sich in Zukunft sparen kann.
Das Projekt war jedoch einsprachig.

Jetzt habe ich ein Projekt, welches nach China geht und stoße sehr schnell an Grenzen.
Für chinesische Zeichen muss ich alles mit WSTRING anlegen => pro Character also 2 byte.
Programm alarm erlaubt aber nur 512 byte als Beiwert.

Die Programmierung ist in diesem Projekt auf Englisch, wir haben auch auf der Visualisierung
eine Sprachumschaltung zwischen Englisch und Chinesisch.

Das heißt pro Meldung habe ich bei zwei Sprachen 128 Zeichen pro Sprache. Das wird je nach Meldung schnell mal knapp.

Eigentlich war der Plan alle Bausteine gleich für Deutsch, Englisch und Kundensprache auszulegen. --> Dann hat man nur noch 85 Zeichen. Damit komme ich jedoch nicht aus.

Wenn ich hier nicht etwas essentielles übersehe, müssen die Texte in allen Sprachen zur steigenden Flanke der Meldung als Beiwert anliegen.
Wie löst ihr die Problematik? Ich hoffe es gibt hier einen Trick der mir die ganze Zeit entgeht...
 
Der Meldungstext muss doch nicht als Begleitwert übergeben werden.
Sondern im Meldungseditor wird der Text übersetzt und dort kann man Platzhalter für die Begleitwerte definieren.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Glon danke für deine Antwort, das ist mir zum Teil schon klar.

Aber hier vlt ein Beispiel:
Für einen Zylinder habe ich die Laufzeitfehlermeldungen integriert im Multiinstanzbaustein des Aktors

Angenommen die Meldung lautet:
St100: Portal Montage Hülse: Laufzeitfehler Z-Achse ab =PLC1+XXXbXXXX


In dem Fall ist nur der Text ": " und ": Laufzeitfehler " ein fester text, der rest ergibt sich aus den Bezeichnungen des Actors (Stationsnummer, Substation, Eigentlicher Aktor und Betriebsmittelkennzeichen des erwarteten Sensors) und wir sind in diesem einfachen Beispiel bei etwas mehr als 50 Zeichen.

Jetzt kommt es natürlich darauf an, wie ausführlich die Klartextbeschreibungen von Stationen, Substationen und dem eigentlichen Aktor sind.

In meinem Projekt hatte ich viele Meldungen, mit mehr als 100 Zeichen.

Ich möchte mich hier aber eigentlich in der länge der Texte nicht einschränken,
da es durch abkürzungen auch beim Übersetzen oft mehr Probleme gibt.
Also ist das die letzte Variante, die ich als Lösung verwenden möchte.

Daher will ich erst mal wissen, ob es technisch anders lösbar ist.
 
Du kannst für jede Instanz den Meldetext anpassen. Du musst nur auf das Kettensymbole im Meldungseditor drücken.

Habe leider kein TIA Portal vor mir, am Montag könnte ich ein Screenshot liefern.
 
Du kannst bei Program_Alarm auch mit Textlisten arbeiten. In den Textlisten kann man jeden Eintrag in mehreren Sprachen hinterlegen. Da könntest du den statischen Teil der Meldung Ablegen

<<AKZ>>: <<Dein Text aus der Textliste DE/ENG/whatever>> <<HERKUNFT>>

So in etwa könnte deine Meldung dann aussehen. Dazu muss aber jedem Program_Alarm immer einen Eintrag aus der Textliste mitgeben
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Idee mit den Meldetextlisten hatte ich auch schon, dort könnte man die Aktoren, die Stationen, Substationen usw in Listen anlegen und sich dann die Meldung mit IDs zusammensetzen.

Die statischen Texte, wie in meinem Beispiel " Laufzeitfehler: " habe ich ja schon direkt im Progalarm angelegt und nicht als Beiwert übergeben.

Die Idee ist aber, das ich vorhandene Informationen direkt aus dem Programm nehme und mir die Meldungen so komplett zusammenbauen kann.
Die Texte haben wir sowiso schon im Programm, da wir diese zur Anzeige auf der HMI verwenden. z.B. automatisch generierte EA Übersichten, Handsteuerung der Aktoren, usw.

Leider komme ich aus dem Programm nicht an diese Texte der Meldetextlisten dran (Das kann scheinbar nur der Prog Alarm), so das ich die Texte dann doppelt in meinem Programm pflegen muss --> Aufwand, Fehleranfälligkeit

Die "große Idee" ist, dass ich an einer zentralen stelle alle Texte definiere und diese für Meldungen und Anzeige verwenden kann.
Am liebsten wären mir da tatsächlich die Meldetextlisten, aber durch den fehlenden Zugriff auf die Texte aus dem Programm heraus fällt das leider weg.
 
Eine echt saubere Lösung suche ich auch. 1 Sprachig mit Multiinsanzname ist das super.. aber... Im Moment habe ich die Begleitwerte händisch übergfben. Meinerseits bin ich nich an Zeichen Grenzen gestoßen
 
Zurück
Oben