Freitag, 17. März 2017

Noto - ein guter Font für die Welt!

Internationale Unternehmen stehen vor der Herausforderung ihre Produkte für alle Weltsprachen zu übersetzen. Andererseits soll das Produkt in allen Sprachen möglichst "gleich" aussehen, d.h. die Schriftzeichen sollen gleich groß sein und auf der gleichen Line stehen.

Google ließ dafür mit großen Aufwand in den vergangenen Jahren den Font Noto entwickeln. Noto ist laut Eigenwerbung von Google "Beautiful and free fonts for all languages", https://www.google.com/get/noto/ Noto wird von Google in den neuen Versionen von Android verwendet, gleichzeitig stellt Google den Zeichensatz für alle zur freien Verwendung bereit.

Noto - was für ein Name ...

Der Name Noto entstammt von "no more tofu", mit tofu sind die kleinen Rechtecke bei nicht vorhandenen Zeichen gemeint.

In der Vergangenheit gab es nur wenige "umfangreiche" Fonts, die viele Zeichen aus verschiedenen Kulturen enthalten, einer davon war Arial Unicode MS von Microsoft. Mit Noto gibt es jetzt einen umfangreicheren und besser angepassten Zeichensatz für eine einheitliche Schrift.

Da der nicht asiatische Teil des Zeichensatzes Noto unter der "Apache License" veröffentlicht wird, kann er frei in allen Projekten verwendet werden und der Sourcecode steht auch zur freien Verfügung. https://github.com/googlei18n/noto-source

Weiterführende Links:
http://www.monotype.com/de/materialien/fallstudien/eine-schrift-spricht-mehr-als-800-sprachen-so-entstand-noto-fuer-google/
https://www.heise.de/ct/ausgabe/2017-5-Google-Noto-Eine-Schriftfamilie-fuer-alle-Sprachen-3622219.html
https://de.wikipedia.org/wiki/Noto_Fonts

Montag, 2. Mai 2016

DCC Translation Editor unterstützt WinCC v7.4 vollständig

WinCC in der Version 7.4 überstützt jetzt auch Windows 10 und hat dafür eine Freigabe erhalten. Auch sind alle bisherigen Updates von WinCC 7.3 in WinCC 7.4 eingeflossen. Siemens hat die Änderungen auf dieser Seite zusammengefasst: https://support.industry.siemens.com/cs/document/109483726/lieferfreigabe-simatic-wincc-v7-4?dti=0&lc=de-WW
WinCC v7.4

Das Exportformat des Text Distributors ist unverändert, so dass der Translation Editor auch WinCC v7.4 vollständig unterstützt.

Mittwoch, 8. Juli 2015

Warum es keine gute Idee ist, sprachabhängige Texte im WinCC User Archive zu speichern

Das WinCC User Archive ist ein Datenbanksystem, das vom Benutzer projektiert werden kann. Der Benutzer kann also die Spalten und die Eigenschaften (Typ, Größe, …) der Spalten selbst definieren.

Der Inhalt des User Archive kann dann als csv-Datei ex- und importiert werden, Texte stehen dabei immer in Anführungsstrichen.

Weiteres zum User Archive ist bei Siemens beschrieben.

Für eine Sprachumschaltung ist seitens des User Archive kein Mechanismus vorgesehen. Eine Möglichkeit ist eine LanguageID als Spalte hinzufügen und in dieser die Sprache des Textes abzulegen. Eine ID und die LanguageID bilden dann den eindeutigen Primärschlüssel einer Zeile, um einen Text aus dem User Archive durch ID, LanguageID und den Spaltennamen auslesen zu können. Ein Überblick, ob die Texte in allen relevanten Sprachen vorliegen, ist ohne geeignete Tools schwierig bis unmöglich.

Alternativ können die verschiedenen Sprachen im User Archive in unterschiedlichen Spalten mit einer gemeinsamen ID abgelegt werden. Die Struktur ist dann sehr ähnlich der Text Library.

Die Freiheit bei der Definition des User Archive ist gleichzeitig die große Schwäche, wenn es um Sprachumschaltungen geht. Da es keine vorgegebenen Mechanismen im User Archive für die Realisierung einer Sprachumschaltung gibt, ist bei jedem Projekt eine individuelle Analyse notwendig, was den Aufwand nach oben treibt.

Wesentlich besser geeignet für sprachabhängige Texte ist die Text Library. Hier stehen die Texte aus verschiedenen Sprachen nebeneinander, für den Ex- und Import gibt es wohl definierte Schnittstellen und die Struktur ist für alle Projekte identisch.

Donnerstag, 28. Mai 2015

Eine Schaltfläche (Button) für die Sprachumschaltung

Visualisierungen, die nur mit einer Sprache projektiert sind, benötigen für die Sprachumschaltung häufig ein Interaktionselement, um die Sprache umschalten. Bei Touch Bedienkonzepten können dies eine oder mehrere Schaltflächen im Bereich der Systemverwaltung sein.

Mit einer Schaltfläche wird zwischen den Sprachen gewechselt, d.h. jeder Tastendruck wechselt zur nächsten Sprache.

Alternativ kann für jede Sprache eine eigene Schaltfläche angelegt werden. Damit kann jede Sprache direkt ausgewählt werden. Wenn viele Sprache vorhanden sind, steigt der Platzbedarf und es wird schnell unübersichtlich.

Ich möchte mich im folgenden nur mit einer Schaltfläche für die Sprachumschaltung beschäftigen, die jeweils zur nächsten Sprache umschaltet. Wenn alle Sprachen durchgeschaltet wurden, wird wieder von vorne begonnen. Auf der Schaltfläche soll dabei immer eine Flagge für das Land der folgenden Sprache angezeigt werden.

Obwohl das Konzept der Darstellung von Sprachen durch Flaggen immer problematisch ist (bspw. Englisch: Flagge USA und/oder Großbritannien?) und Flaggen bei monochromen Bildschirmen oft nicht unterscheidbar sind, haben sich Flaggen als pragmatisches Konzept zur Sprachunterscheidung etabliert.

Also weiter, es soll eine Schaltfläche für die Umschaltung zwischen den Sprachen „Deutsch“,„Englisch“,„Italienisch“ und „Russisch“ projektiert werden. Wenn die aktuelle Sprache „Deutsch“ ist, soll auf der Schaltfläche die englische (Großbritannien) Flagge gezeigt werden. Damit ergibt sich die folgenden Auflistung:

  • Deutsch: Englische (Großbritannien) Flagge
  • Englisch: Italienische Flagge
  • Italienisch: Russische Flagge
  • Russisch: Deutsche Flagge


Für eine Demo nehme ich TIA V13, es funktioniert in anderen Versionen aber ähnlich.

Ich gehe davon aus, dass in der Projektierung bereits die Sprachen angelegt sind, ansonsten können diese unter Sprachen & Ressourcen, Projektsprachen angelegt werden.

In einem beliebigem Bild, hier „Systemverwaltung“ lege ich eine neue Schaltfläche an. Das Verhältnis der Breite zur Höhe der Schaltfläche sollte zu dem vorhandenen Layout passen. Wenn das Verhältnis frei gewählt werden kann, ist 3:2 optimal, die Flaggen sind in diesem Verhältnis angelegt.
Schaltfläche hinzugefügt


Bei den Eigenschaften der Schaltfläche wird als Modus Grafik und für die Eigenschaft Grafik wird Grafik ausgewählt, siehe auch folgendes Bild.
Eigenschaften Modus: Grafik und Grafik: Grafik


Dann müssen die Flaggen hinzugefügt werden. Die Grafiken für die Flaggen sind im TIA Portal enthalten, müssen nach der Installation aber noch aus einer zip-Datei entpackt werden. Das Flaggenverzeichnis lautet:
C:\Program Files (x86)\Siemens\Automation\Portal V13\lib\Graphics\Basic symbols\Flags\

Für die Flaggen wird unter Sprachen & Ressourcen in die Grafiksammlung gewechselt und auf Hinzufügen geklickt. Im Explorer wird in das Flaggenverzeichnis ausgewählt und die Flagge von Großbritannien hinzugefügt. Da die erste Flagge gleichzeitig die Standardflagge ist, erscheint sie für alle Sprachen. Für die weiteren Sprachen kann mit dem Kontextmenü Ersetze mit Grafik die richtige Flagge ausgewählt werden. Da in einer Sprache die Flagge der nächsten Sprache angezeigt werden soll, ist bei Deutsch die Flagge von Großbritannien, bei Englisch die Flagge von Italien, usw… auszuwählen. Der Eintrag in der Grafiksammlung bekommt noch einen sprechenden Namen, bspw. FlagForLanguage.
"Ersetze Grafik"

So sollte die Grafik für die Sprachen aussehen!


Jetzt geht es wieder zurück zur Schaltfläche, um die Grafik zu verbinden. Im Eigenschaftenfenster wird für Grafik, wenn Schaltfläche nicht gedrückt die gerade angelegte Grafik FlagForLanguage ausgewählt. Unter Ereignisse, Klicken kann unter Funktion hinzufügen die Funktion SetzeSprache mit der Eigenschaft Umschalten ausgewählt werden.
Grafik mit Schaltfläche verbinden
Funktion für Schaltfläche hinzufügen


Das war es schon, in der Simulation kann das Ergebnis gleich begutachtet werden. Falls nicht alle Sprachen verfügbar sind, müssen unter den Runtime-Einstellungen des Panels die Sprachen aktiviert werden. Auch kann hier die Reihenfolge der Sprachen festgelegt werden.
Sprachen für Panel aktivieren und Reihenfolge festlegen


Montag, 2. März 2015

WinCC: Liste mit Bildnamen erstellen

Bei der Bearbeitung von Projektierungen ist manchmal die Liste der vorhandenen Bilder interessant. Anhand der Liste können dann Bilder markiert werden, die z.B. weiter bearbeitet werden sollen.

Für Simatic WinCC kann eine Liste mit vorhandenen Bildern am schnellsten mit dem DOS-Befehl dir erstellt werden. Die Textdatei kann dann mit jeder Tabellenkakulation, wie Excel oder OpenCalc weiter bearbeitet werden.

Vorgehen:
  1. In Windows eine Commandshell (Befehlszeile) öffnen 
  2. Mit cd in das Bildverzeichnis (GraCS) des Projektes wechseln 
  3. Mit dir /B *.pdl > c:\temp\pdl-list.txt eine Textdatei mit den Namen der pdl-Dateien erzeugen. Der Schalter /B erzeugt eine einfache Liste, Kopf, Fuß und Dateigrößen werden nicht aufgelistet. 
  4. Die Datei pdl-list.txt mit einer Tabellenkalkulation öffnen und weiterbearbeiten. 
Mit diesem Vorgehen müssen die Dateinamen nicht mühsam abgeschrieben werden, sondern stehen im Handumdrehen in einer List, die mit jeder Textbearbeitung oder Tabellenkalkulation weiterbearbeitet werden kann.

Die folgenden Bilder zeigen den Ablauf:

Commandshell öffnen


In das Bildverzeichnis der Projektierung wechseln

Alle *.pdl-Dateien in eine Datei schreiben


Inhalt der pdl-list.txt-Datei in Excel

Mittwoch, 7. Mai 2014

Texte in WinCC C-Scripten

In Simatic WinCC werden in den C-Scripten oft Texte zur Anzeige verwendet. Wenn diese Texte auch sprachumgeschaltet werden sollen, sind längliche If-Abfragen das Ergebnis. Viel eleganter ist das Schreiben der Texte in die Text Library und die Verwendung einer Funktion zum Auslesen der Texte aus der Text Library mittels der TextID. Da die Text Library die Texte entsprechend der eingestellten Sprache zurückliefert, ist damit auch die Sprachumschaltung berücksichtigt.

Anwendung:

Das ursprüngliche C-Script mit einem festen Text lautete:
if(GetTagByte(TAG) & 0x1)
return "Fehler bei Schliessen";

Dies wird geändert in:
if(GetTagByte(TAG) & 0x1)
return GetTextTL(91940786);

(91940786 ist die ID in der Text Library) und der Text "Fehler bei Schliessen" wird für die verschiedenen Sprachen in die Text Library geschrieben. Ab jetzt wird der korrekte Text bei einer Sprachumschaltung angezeigt.

Die folgenden Bilder zeigen die Schritte nochmals.
Ursprüngliches C-Script

C-Funktion zum Lesen von Text aus der WinCC Text Library

Texteintrag in Win CC Text Library mit ID, Englisch und Deutsch

C-Script mit Aufruf der obigen C-Function zum Lesen des Textes aus der Text Library


Mittwoch, 29. Januar 2014

Terminologie und Translation Memory – Was ist das noch mal?

Terminologe und Translation Memory werden beide häufig verwechselt, die Begriffe klingen ähnlich und beide haben häufig mit Übersetzungen zu tun. Im Folgenden versuche ich ein wenig Klarheit in die Begriffe zu bringen.

Die Terminologie wird bei Wikipedia als die Menge aller Fachausdrücke (Termini) eines Fachgebiets beschrieben. Die Speicherung erfolgt in Terminologiedatenbanken. Für Übersetzungen bestehen die Einträge der Terminologiedatenbanken häufig aus einer Beschreibung oder Erläuterungen eines Begriffes und der Übersetzungen in die Zielsprache. Die Terminologiedatenbank dient der Einhaltung bei Terminologie bei der Texterstellung. Beispielsweise können damit auch ‚verbotene’ Begriffe der Konkurrenz vermieden werden.

Im Translation Memory werden die übersetzten Texte für die weitere Verwendung gespeichert, sei es beim gleichen Text oder bei späteren Übersetzungen. Bei der Erstellung der Übersetzung werden die Texte dann im Translation Memory gesucht und vorgeschlagen.

Das Bild zeigt wann Terminologie und Translation Memory verwendet werden


Bei der Suche im Translation Memory werden auch ähnliche Texte gefunden, wie das folgende Beispiel zeigt. Zum Text „Oberstempelanschlag unten“ werden im Translation Memory die folgenden ähnlichen Texte gefunden: „Sollwert Oberstempelanschlag unten“, „Oberstempelanschlag“, „Oberstempel unten“, „Sollposition des Oberstempelanschlages unten“, „Anschlagverstellung unten“, „Oberstempelanschlag unten motorisch weiter nach oben fahren“ und „Oberstempelanschlag oben motorisch weiter nach unten fahren“. Die Ähnlichkeit der Texte kann mit verschiedenen Verfahren ermittelt werden, eines ist die Levenshtein-Distanz. Die Levenshtein-Distanz zwischen zwei Zeichenketten ist die minimale Anzahl von Einfüge-, Lösch- und Ersetz-Operationen, um die erste Zeichenkette in die zweite umzuwandeln
Translation Memory zum Text "Oberstempelanschlag unten", die linke Spalte zeigt die Ähnlichkeit zum Ausgangstext als Prozentwert und mit hinterlegter Farbe (identische Texte sind grün, dann geht es von gelb nach rot absteigend)

Freitag, 15. November 2013

Fehler beim Textexport mit dem Text Distributor von WinCC 7 und WinCC 7.2

Für den Textexport aus WinCC 7 haben wir bei DCC global eigene VB-Scripte geschrieben, damit der Text in beliebigen Sprachen exportiert werden kann. WinCC 7.0 hat beim Im- und Export eine signifikante Einschränkung. Es können nur Sprachen aus dem gleichen Sprachraum und Englisch exportiert werden. Mit den DCC-eigenen Skripten existiert diese Beschränkung nicht. So exportieren wir mit unseren eigenen Skripten bei WinCC 7 beliebige Sprachkombinationen. Jetzt haben wir in WinCC 7.2 den Textexport mit dem Text Distributor wieder einmal verwendet und sind auf einen Fehler im Exportformat gestoßen, der auch in WinCC 7.0 enthalten ist.

Der Fehler tritt durch die fehlende Verdoppelung von Anführungszeichen beim Export auf. Texte werden in Anführungszeichen gestellt, wenn das Spaltentrennzeichen in dem Text vorhanden ist. Das Spaltentrennzeichen ist bei csv-Dateien das Semikolon ";" und bei txt-Dateien das Tabulatorzeichen (0x09). Mit diesem Wissen kann ein Text zusammengebaut werden, der beim Ex- und folgenden Import in WinCC zu Fehlern führt.


Beispiel für den Export in csv-Dateien

In einem Static Text-Objekt wird der folgende Text geschrieben:
Text1";"Text2
Es beginnt mit einem beliebigem Text, dann folgt die Kombination Anführungszeichen, Semikolon, Anführungszeichen und dann wieder ein beliebiger Text.

Beim Export mittels des Text Distributors wird aus dem obigen Text dann
"Test1";"Text2"
Die äußeren Anführungszeichen sind durch den Export ergänzt worden. In einer csv-Datei sind aus dem einen Text damit zwei Spalten, getrennt durch das Semikolon geworden.


Beispiel für den Export in txt-Dateien

Für eine txt-Datei wird ein ganz ähnlicher Text, wie bei einer csv-Datei zusammengebaut. Als Spaltentrennzeichen fungiert bei txt-Dateien das Tabulatorzeichen. Das Tabulatorzeichen (→) kann über die Tastatur mit <STRG><TAB> eingegeben werden. Der Text lautet:
Text1"→"Text2
Im WinCC Graphics Designer wird das Zeichen "→" nicht angezeigt, sondern nur ein Leerraum. Beim Export wird aus dem obigen Text
"Text1""Text2"
Wieder sind die äußeren Anführungszeichen durch den Export ergänzt worden. In der txt-Datei sind damit wieder zwei Spalten entstanden.


Welche WinCC Versionen sind betroffen?

Der Fehler tritt in allen WinCC 7.0 WinCC 7.2 Versionen auf.


Warum ist der Fehler kritisch?

Die exportierten csv- und txt-Dateien lassen sich mit WinCC 7.2 mittels Text Distributor nicht mehr importieren, es tritt ein Fehler auf. Die folgende Hardcopy zeigt den Fehler beim Import aus txt-Dateien.



Lösung

Für eine Lösung bei den txt-Dateien sind zwei unterschiedliche Vorgehensweisen denkbar:
a) Das Spaltentrennzeichen (<Tab>) wird wie ein Zeilenumbruch kodiert, z.B. mit {TAB} und Texte mit <Tab>-Zeichen werden nicht mehr mit Anführungsstrichen umgeben
Bsp.: Text1"{TAB}"Text2
oder b) die Anführungszeichen innerhalb von Texten werden verdoppelt, einfache Anführungszeichen sind dann Feldbegrenzer, wenn ein Spaltentrennzeichen oder Feldbegrenzer im Text vorkommt.
Bsp.: "Text1""→""Text2"

Für eine Lösung bei den csv-Dateien bietet sich das folgende Verfahren an: Die Anführungszeichen werden innerhalb von Texten verdoppelt. Der obige Text würde dann in der csv-Datei wie folgt geschrieben:
"Text1"";""Text2"

Für beide Lösungsansätze muss der Softwarehersteller, also Siemens aktiv werden.

Dienstag, 3. September 2013

WinCC 7.2 und Mehrsprachigkeit

Die neue Version 7.2 von WinCC bietet jetzt auch Unicode-Unterstützung an. Vorteil der Unicode-Unterstützung ist, dass damit an vielen Stellen auch nicht-lateinische Zeichen verwendet werden können. Siemens selbst sagt dazu:

Unicode für weltweiten Einsatz

Der weltweite Einsatz von SIMATIC WinCC wird durch die UNICODE Unterstützung erheblich vereinfacht. Mit UNICODE ist die Umschaltung auf eine individuelle Sprache jederzeit möglich, sowohl beim Engineering als auch zur Laufzeit. Unabhängig von der Sprache des WinCC Servers und von der im Betriebssystem aktivierten Sprache.
http://www.automation.siemens.com/mcms/human-machine-interface/de/visualisierungssoftware/scada-wincc/simatic-wincc/wincc-news/seiten/produktankuendigung-wincc-v7-2.aspx#

Und in der Tat, vereinfacht die Unicode-Unterstützung die Sprachumschaltung an einigen Stellen, die in der Vergangenheit immer geschmerzt haben.

Textexport mit dem Textdistributor

Mit dem Textdistributor in WinCC 7.2 können beliebige Sprachkombinationen exportiert werden. So kann jetzt Deutsch wieder zusammen mit Chinesisch und Russisch exportiert werden. Das ist ein großer Fortschritt gegenüber Version 7.0. In Version 7.0 war immer nur Englisch zusammen mit Sprachen aus einer Codepage möglich.

WinCC 7.2: Chinesisch, Deutsch, Englisch, Französisch und Russisch gemeinsam ex-/ und importieren

Mehrsprachigkeit in einem Bild

Durch die Unicode Kodierung der Texte können in den Bildern jetzt alle Zeichen gleichzeitig dargestellt werden. In älteren Versionen von WinCC waren jeweils nur die Zeichen einer Sprachregion (Codepage) möglich. Jetzt können so z.B. die Texte für Deutsch, Chinesisch, Russisch und Tschechisch gleichzeitg angezeigt werden.
Deutsch, Chinesisch, Russisch und Tschechisch
können gleichzeitig angezeigt werden

Nach besser wird es bei den Alarmmeldungen. Mit dem AxAlarmControl können jetzt verschiedene Sprachen zur gleichen Zeit angezeigt werden. Bei der Inbetriebnahme einer Anlage im Ausland ist dies ein tolles Feature. Kunde und Inbetriebnehmer verstehen die Meldung dann jeweils in der eigenen Sprache.
Alarmmeldung in Russisch, Deutsch und Englisch

Bild- und Tagnamen in beliebiger Sprache

Die Bezeichnung der Bildnamen kann in jeder Sprache erfolgen. Dies ist auf den ersten Blick nett, übertreiben sollte man es damit aber nicht, da chinesische Namen für die Meisten von uns zur schlecht les- und merkbar sind.
WinCC 7.2: Bildbezeichnungen mit lateinischen, russischen und chinesischen Zeichen
Die jetzt in Unicode kodierten Bildnamen sind an vielen Stellen nutzbar. So kann ein Bild mit chinesischem Bildnamen durch eine Direktverbindung oder VBS (Visual Basic Script) geöffnet werden.

Kein Unicode in C-Scripten

Das Verwenden von Unicode-Zeichen in C-Scripten funktioniert leider nicht. Die Unicode-Zeichen können in den C-Scripten zwar eingegeben und gespeichert werden, aber im C-Compiler werden die Zeichen in der einzustellenden Codepage kodiert. Es erfolgt bei der Kompilierung der C-Scripte eine Konvertierung der Unicode-Zeichen in die eingestellte Codepage. Die Einstellung der Sprache erfolgt im C-Editor, siehe gelbe Markierung im folgenden Screenshot.
Sprache des C-Scriptes muss im C-Editor eingestellt werden

Test: Auf einem deutschen Windows mit WinCC 7.2 Update 2 können Bilder mit russischen oder chinesischen Bildnamen durch ein C-Script nicht geöffnet werden, wenn die Sprache des C-Scriptes auf Deutsch steht. Eigentlich sollte der folgende Befehl OpenPicture("загрузки.pdl");  das Bild "загрузки.pdl" öffnen. Das funktioniert aber nicht. Versuche zeigen, wenn der Bildname einen Codepoint größer als 127 enthält, kommt das C-Script damit nicht zurecht. Auch wenn das Windowssystem auf Russisch eingestellt wird, lässt sich das Fenster auf die Art nicht öffnen. Es ist notwendig die Sprache des C-Scriptes auf die Sprache der Bildnamen oder Variablennamen einzustellen. Damit sind die C-Scripte sprachabhänging.
Siemens sagt in der Hilfe dazu: "Verwenden Sie in sprachunabhängigen WinCC-Elementen keine nationalen Sonderzeichen oder asiatische Schriftzeichen. Diese Zeichen sind nach einer Sprachumschaltung nicht mehr lesbar bzw. verhindern den korrekten Ablauf von WinCC."

In der Hilfe findet sich auch der folgende Abschnitt:
Sobald also der C-Compiler ins Spiel kommt, ist die Zeichenkodierung mit Unicode nicht mehr gegeben. Insbesondere bei Projektierungen, die Chinesisch und Russisch enthalten, wäre der Ablauf der Programme von der Sprache abhängig. Daraus folgt, dass entweder die Variablen und Bildnamen kein Unicode enthalten dürfen oder aber keine C-Scripte verwendet werden dürfen.

Empfehlung: In den Bild- und Tagnamen nur Zeichen bis zum Codepoint 127 benutzen, also kein  Russisch oder Chinesisch.


Donnerstag, 29. August 2013

Neue Version des DCC Translation Editor 4.2

Wir bei DCC global haben eine neue Version des DCC Translation Editor veröffentlicht. Der DCC Translation Editor ist ein Tool, welches spezialisiert ist auf das komfortable und effiziente Ändern und Pflegen von mehrsprachigen SIMATIC Projektierungen.

In der Version 4.2 sind neu:


  • Unterstützung des Dateiformates von TIA Portal V11SP2 und V12
  • Unterstützung des Dateiformates von WinCC 7.2
  • Vollständig neuer Import-/Exportfilter für xlsx-Dateien 
  • Kopieren von Text im rtf-Format vom DCC Translation Editor nach Word, OpenOffice Writer oder LibreOffice
  • Bugfixing 


Unterstützung neuer Dateiformate

In den neuen Versionen des TIA Portals wurde in den xlsx-Formaten intern einiges geändert. Dies erforderte Anpassungen in unserem xlsx-Reader/Writer. Wir haben uns nach interner Diskussion entschieden, den eigenen xlsx-Treiber zu entfernen und auf EPPlus http://www.codeplex.com/EPPlus zu setzen. Diese Bibliothek (LGPL) bietet tolle Funktionen und erfüllt ihre Aufgaben exzellent. Bei den Tests haben wir in der aktuellen Version 3.1.3 von EPPlus auch einen klitzekleinen Bug (https://epplus.codeplex.com/workitem/14849) gefunden, den wir korrigiert und an den Entwickler gemeldet haben. 

Bei TIA V12 ist jetzt auch das Office Open XML-Format (xlsx) näher an der Formatdefinition von Microsoft herangerückt. Der in den vorherigen Versionen fehlende Tag <fill><patternFill patternType=\"gray125\" /></fill> wurde von Siemens im Bereich \xl\styles.xml ergänzt.

In TIA V12 sind die Variablen jetzt mit Anführungsstrichen umgeben. In der xlsx-Datei steht die Variable in der folgenden Notation: "Konfiguration_DB_Ofen.Konf_X_min_Netzausfallzeit". In den vorherigen Versionen wurden die Variablen nicht mit Anführungsstrichen umschlossen. Die Version 4.2 des Translation Editors kann mit den Variablen in Anführungsstrichen umgehen.

Kopieren von Text im RTF-Format

Beim Kopieren von Text aus dem DCC Translation Editor in eine Textverarbeitung wird jetzt das rtf-Format für die Zwischenablage genutzt. Damit werden die Texte in Word, LibreOffice oder OpenOffice optisch wie im Translation Editor eingefügt.
Kopieren von Text nach Word, LibreOffice oder OpenOffice

Download 

Die neue Version kann unter der folgenden Url heruntergeladen werden: http://download.translation-editor.com/download/SetupTE_4.2.13241.3964.exe

Updates werden auch über den automatischen Updatemechanismus verteilt. Der Lizenzschlüssel bleibt weiterhin gültig.

Freitag, 16. August 2013

Ex- und Import ausgewählter Texte aus dem TIA-Portal

Im Simatic TIA Portal können die Projektierungen für verschiedene Geräte gemeinsam verwaltet werden. Damit werden auch die Texte für alle Geräte gemeinsam verwaltet. Wenn jetzt aber nur die Texte einiger Geräte übersetzt werden sollen, so geht dies auch, wenn auch das Vorgehen nicht ganz intuitiv ist.

Das Vorgehen ist wie folgt: Im Project tree wird der Knoten Languages & resources geöffnet. Dann mit Doppelklick den Editor für die Projekttexte Project texts öffnen (Bild 1). Im Project texts-Editor dann im Device filter die Geräte auswählen, deren Texte exportiert werden sollen (Bild 2). Anschließend müssen die Texte in der Liste markiert werden, am schnellsten mit STRG-A (Bild 3). Im folgenden Schritt neben dem Device filter auf der Icon für Export project texts klicken (Bild 4) und im Exportdialog die Zielsprache und das Exportverzeichnis auswählen (Bild 5). Mit dem Klick auf Export wird der Export gestartet.

Die Schritte sind in den folgenden Bildern dokumentiert.
Bild 1: Project texts öffen


Bild 2: Geräte auswählen

Bild 3: Texte markieren, STRG-A für alle Texte
Bild 4: Auf das Icon Export project texts klicken
Bild 5: Zielsprache und Exportverzeichnis auswählen und auf Export klicken

Mittwoch, 31. Juli 2013

Panel-PC ersetzt Bedienterminal und wird um Sprachumschaltung ergänzt

Über eine, wie ich finde, interessante Idee berichten die VDMA-Nachrichten in ihrer aktuellen Ausgabe (Juli 2013, S. 73). Ein Panel-PC ersetzt ein Bedienterminal, wobei der Panel-PC die an Hard- und Softwareschnittstellen der Maschine angepasst wird. Bei einem solchem Retrofit kann dann auch eine Sprachumschaltung ergänzt werden, die mit dem alten Bedienterminal nicht möglich war.


Den gesamten Artikel als pdf-Datei können Sie hier herunterladen.

Donnerstag, 25. April 2013

Projektierungstechnik: Qualitätsgesicherte Sprachumschaltung

In dem letzten Post habe ich mich mit dem Übersetzungsmanagement beim Erstellen einer qualitätsgesicherten Sprachumschaltung beschäftigt. Jetzt geht es mit der Projektierungstechnik weiter.


Unterschiedliches Vorgehen bei verschiedenen Visualisierungen

Das Erstellung einer Sprachumschaltung startet mit dem Export der Texte aus der Visualisierung und der Weiterverarbeitung in speziellen Übersetzungstools (CAT – Computer Aided Translation). Nach der Übersetzung erfolgt der Import in die Visualisierung und abschließend die Qualitätsprüfung durch Projektierungsingenieur und Muttersprachler.

Textexport

Die Qualität des Textexports oder anders gesagt, dass was exportiert wird, ist bei den verschiedenen Visus recht unterschiedlich. Mit eigenen Skripten lassen sich hier bei einigen Visualisierungen mehr Informationen exportieren als mit den Standardmethoden. So exportieren wir mit unseren eigenen Skripten bei WinCC 7 beliebige Sprachkombinationen. Mit dem Text Distributor geht dies nicht. Hier sind immer nur Sprachen einer Sprachgruppe sowie Englisch exportierbar. Bei WinCC 6.2 exportieren unsere eigenen Skripte auch die Texte und weitere Attribute von UDOs. Dies geht mit den Standardexportmethoden ansonsten erst ab WinCC 7. Ein weiterer Vorteil ist die bessere Filtermöglichkeit der exportierten Texte in der folgenden Bearbeitung, da wir auch die Objektart, -namen, und die Fensternamen in denen die Texte vorkommen, exportieren.

Projektierungsanalyse

Nach dem Textexport folgt die Analyse von Skripten (C oder VB), Dynamiken und UDOs innerhalb der Visualisierung. Dazu exportieren wir, wenn möglich auch diese und arbeiten anhand des Exports die Objekte ab. So werden die Skripte gesichtet und Texte gefunden, für die eine Sprachumschaltung realisiert werden muss. Oftmals werden in C-Skripten Texte verwendet und diese Texte sollen auch von einer Sprachumschaltung erfasst werden. Eine Möglichkeit ist die Verwendung von Texten aus der Text Library und das Laden der Text per C-Skript. In dem Post „Sprachumschaltung für Texte in WinCC C-Skripten“ stehen die Einzelheiten.

Textimport

Wichtig vor dem Import ist eine „saubere“ Übersetzung, konsistent und ohne Fehler. Im vorherigen Beitrag habe ich beschrieben, wie wir dies erreichen. Diese Übersetzung importieren wir jetzt in die Visualisierung, wenn möglich wieder mit den eigenen Skripten.

Am Beispiel von Texten in Dynamiken wird schnell die Bedeutung klar. Für einen Button ist die Beschriftung als Dynamik in Abhängigkeit vom Wert einer Variablen (Dynamischer Wertebereich) projektiert. Ist die Bitvariable gesetzt, soll „Auto“, ansonsten „Manuale“ auf dem Button stehen. Mit Easy Language ist der Text der Dynamik nicht zu importieren, mit dem DCC-Skript schon. Der Text wird also übersetzt und gespeichert. Nachteilig ist, dass der Text von dynamischen Wertebereichen nicht sprachumschaltbar ist, er bleibt also immer in der eingegebenen Sprache stehen. Unter dem Gesichtspunkt der Sprachumschaltung ist es hier vorteilhaft, die Wertebedingung in einem Skript (C oder VB) zu formulieren und die Texte aus der Text Library zu laden.

WinCC 6.2 mit festen Texten in der Dynamik

Besonderheiten

Texte in C oder VB Skripten müssen von Hand angepasst werden. Ebenso gibt es bei einigen Visualisierungen Probleme, wenn die Fensternamen Umlaute oder Sonderzeichen enthalten und die Systeme auf chinesischen oder russischen Windows-Systemen laufen. Bei System dieser Art hat es sich bewährt, die Fensternamen mit Umschreibungen (Ae, Oe, Ue, ss) anstatt Umlauten zu schreiben.

Überprüfung in Visualisierung

Die Überprüfung in der Visualisierung beginnt mit der Überprüfung alle Objekte nach Umstellung der neuen Sprache. Dazu werden alle Fenster der Visualisierung von einem Projektierungsingenieur und einem sprachkundigen Muttersprachler gemeinsam kontrolliert. Die Überprüfung erfolgt Text für Text. Überprüft werden dabei der Kontextbezug der Übersetzung und die Textlänge. Wenn Texte zu lang sind, kann der Muttersprachler die Texte sinnvoll abkürzen. Wo dies nicht möglich ist, aber noch Platz auf dem Bildschirm vorhanden ist, kann das Textobjekt gegebenenfalls vergrößert werden. Dieser Schritt wird immer in der Designumgebung (Graphics Designer bei WinCC) ausgeführt. Eventuell vorhandene Textlisten werden in diesem Schritt ebenso auf korrektem Kontextbezug und Textlänge überprüft.

Im folgenden Schritt wird die Visualisierung in der Simulationsumgebung gestartet. Dies ist bei einigen Projektierungen nicht möglich, beispielsweise wenn eine SPS für die Initialisierung von Variablen notwendig ist. In der Simulation werden dann alle erreichbaren Fenster nochmals durch Projektierungsingenieur und Muttersprachler kontrolliert. Im Vergleich zur Kontrolle in der Designansicht können bei diesem Schritt Texte gefunden werden, die nur in nach dem Setzen von Werten sichtbar sind. Korrekturen aus der Überprüfung werden in der Designumgebung umgesetzt.

Bei sämtlichen Überprüfungen wird fortlaufend zwischen der Quell- und Zielsprache umgeschaltet. Alternativ wird eine Kopie der virtuellen Maschine gestartet. Diese läuft mit Anzeige der Quellsprache. In der zweiten virtuellen Maschine wird die Zielsprache angezeigt. Eine ausreichende Anzahl von großen Monitoren ist dabei hilfreich.

Nach der Kontrolle in der Visualisierung erfolgt ein erneuter Textexport, um die Texte in das bei uns geführte Translation Memory aufzunehmen und für Folgeprojekte verfügbar zu haben.

Die gemeinsame Kontrolle und Korrektur der Visualisierung von einem Projektierungsingenieur und einem Muttersprachler der Zielsprache hat sich als sehr effizient im Implementierungs- und Qualitätssicherungsprozess herausgestellt. Das Ergebnis sind Projektierungen, die sofort beim Zielkunden eingesetzt werden können.

Freitag, 22. März 2013

Qualitätsgesicherte Sprachumschaltung – Wie wird dies erreicht?

Die Erstellung der Sprachumschaltung für eine Prozessvisualisierung kann grob in zwei Bereiche unterteilt werden. Der erste, offensichtliche Bereich betrifft die Übersetzung bzw. das Übersetzungsmanagement. Der zweite Bereich betrifft die Projektierungstechnik.

In diesem Blogeintrag wird das Übersetzungsmanagement betrachtet, ein folgender Blogeintrag wird sich mit der Projektierungstechnik beschäftigen.

Das Übersetzungsmanagement umfasst den Aufbau der Terminologie, die Erstellung der Übersetzung, die Kontrolle und das Lektorat. Beim Aufbau der Terminologie werden die wesentlichen Begriffe einer Visualisierung festgehalten, beschrieben und übersetzt. Unbekannte Begriffe werden mit dem Kunden geklärt. Diese zweisprachige Terminologie wird später für die Kontrolle der Übersetzung verwendet. Die Übersetzung wird mit Hilfe eines Translation Memory durchgeführt. Aus diesem Translation Memory werden bei der Übersetzung alle ähnlichen Texte angezeigt und können vom Übersetzer übernommen und weiter verarbeitet werden. Gleichzeitig werden Texte nach der Übersetzung in dem Translation Memory gespeichert.

Der folgende Screenshot zeigt ein Übersetzungstool mit dem zu übersetzenden Text, dem Translation Memory in der unteren Tabelle und der Kontextterminologie rechts. In der Kontextterminologie werden nur die Terminologieeinträge angezeigt, die zum aktuellen Text passen. Im dem unten stehenden Translation Memory werden gleiche und ähnliche Quelltexte mit Übersetzungen angezeigt. Die Ähnlichkeit der Texte kann schnell durch die Farbe (Grün, Gelb, Rot) und dem Prozentwert vor dem Text erfasst werden.

DCC Translation Editor in der Enterprise Edition





So soll im Beispiel oben der Text „Zentralschmierung Fermenter“ übersetzt werden. In der Terminologie (rechts) werden die Terminologieeinträge „Fermenter“ und „Zentralschmierung“ mit den zugehörigen Übersetzungen angezeigt. Im Translation Memory (unten) werden auch ähnliche Texte, wie in diesem Beispiel „Zentralschmierung Fermenter Austragsseite“ und „Zentralschmierung Fermenter Eintragsseite“ angezeigt. Die Ähnlichkeit zwischen dem zu übersetzenden Text und den Texte im Translation Memory beträgt 65% bzw. 63%. Der Übersetzer kann sich bei der Übersetzung an den ähnlichen Texten orientieren.

Nach dem Übersetzungsprozess wird mit den QS-Filtern (Qualitätssicherungsfilter) die Übersetzung überprüft. Dabei wird in der Quell- und Zielsprache nach unterschiedlichen Ziffern, Satzzeichen, Formatierungen (Fett, Unterstrichen, …) und Anzahl der Zeilen gesucht. Die Texte der Zielsprache werden anschließend auf Rechtschreibfehler überprüft. Dazu wird ein Filter aufgerufen, der nur Texte mit Rechtschreibfehlern anzeigt. Ein weiterer Filter zeigt Texte, die nicht passend zur Terminologie übersetzt wurden. Die so gefundenen Texte können dann nachgearbeitet werden. Die Überprüfung mit den QS-Filtern ist ein wesentlicher Schritt der Qualitätssicherung im Bereich der Übersetzung, da hiermit die typischen Übersetzungsfehler gefunden und korrigiert werden. Diese QS-Filter werden nach Fertigstellung der Übersetzung ebenso durch den Lektor durchgeführt.

Nach der Übersetzung folgt die Kontrolle der Übersetzung durch einen weiteren Übersetzer, die die Texte gegenliest und ggfs. Korrekturen vornimmt. Anschließend werden die Texte vom Lektor mit den oben skizzierten QS-Filtern abermals überprüft und ggfs. werden Formatierungen wie Leerzeichen, Fettschreibung, Groß-/Kleinschreibung und die Textlänge korrigiert.

Die Einhaltung der oben skizzieren Schritte zur Qualitätssicherung werden durch einen Vorgangsbeleg dokumentiert.

Die weiteren Schritte erfolgen im Bereich der Projektierungstechnik und sind Inhalt eines folgenden Blogeintrages.

Mittwoch, 16. Januar 2013

WinCC 7: Der SQL Server startet nicht

Bei virtualisierten Systemen passiert es häufiger, dass der SQL-Server auf einem WinCC 7 System nicht startet. Die Fehlermeldung im EventLog des Windows Rechners lautet dann:
The SQL Server (WINCC) service terminated with a service-specific error 10049 (0x2741).
Diese Fehlermeldung kann vieles bedeuten, also geht es bei der Fehlersuche weiter in der Log-Datei des SQL-Server (C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\ERRORLOG). Hier findet sich der folgende Fehler:
Error: 26024, Severity 16, State: 1.
Server failed to listen on xxx.xxx.xxx.xxx <ip4> 1433. Error: 0x2741. To proceed, notify your system administrator.
Der SQL-Server ist also an spezifische IP-Adressen gebunden. Die Fehlerbehebung ist einfach, es gibt verschiedene Alternativen:
  1. entweder im SQL Server Configuration Manager die aktuelle IP-Adresse einstellen oder 
  2. die geforderte IP-Adresse am Netzwerkadapter einstellen oder
  3. eine neue virtuelle Netzwerkkarte mit der geforderten IP-Adresse im virtuellen System einrichten.
Bei Kundensystemen gehen wir meistens den zweiten Weg und verzichten damit auf die Einbindung des Windowssystems in unser Netz. Dafür bleibt die Konfiguration des virtuellen Systems und die Zuordnung der Netzwerkadapter zur IP-Adresse unverändert. Ist der Netzwerkzugriff notwendig, installieren wir einen weiteren virtuellen Netzwerkadapter mit einer IP-Adresse aus unserem lokalen Netzwerk.

Montag, 19. November 2012

Neue Website und Umfirmierung

Vierzehn Jahre nach der GmbH-Gründung haben wir uns umbenannt. Aus Display of Chinese Characters GmbH, kurz: DCC wurde die DCC global GmbH. Mit der Namenserweiterung global tragen wir der mittlerweile vollzogenen Angebotserweiterung für Sprachumschaltungen von den asiatischen Sprachen auf alle Weltsprachen Rechnung. Der Unternehmenssitz, Unternehmenszweck und die Eigentümerstruktur bleiben ebenso unverändert wie unsere Steuernummer und Bankverbindungen.

Neue Website: http://www.dcc-global.com

Gleichzeitig haben wir unsere Website radikal erneuert und an die Kundenanforderungen angepasst: Einfach und verständlich erfolgt die Darstellung der Leistungen und Angebote.

Video zum Thema Sprachumschaltung

Unterstützt wird dies von zwei Videos, die sehr kurzweilig das Thema Sprachumschaltung und Translation Editor behandeln.

Freitag, 28. September 2012

WinCC 7: Der Eigenschaften-Dialog im Graphics Designer ist verschwunden

Für die Bearbeitung von komplexeren Visualisierungen wird oft eine kundenspezifische Konfiguration der Entwicklungswerkzeuge benötigt. DCC hält zwar alle relevanten Entwicklungswerkzeuge vor, aber die Konfiguration verschlingt teilweise viel Zeit, einfacher ist der Austausch von passend konfigurierten Systemen. Für den Austausch dieser Umgebungen zwischen dem Kunden und DCC haben sich Festplattenkopien oder virtuelle Maschinen bewährt. Bei einem neuen Projekt haben wir vom Kunden sogar einen kompletten Rechner mit Entwicklungsumgebung für die Bearbeitung bekommen.

Dialog bleibt verschwunden

Bei der Bearbeitung des Projektes staunten die DCC Projektierungsingenieure nicht schlecht, als der Graphics Designer den Eigenschaften-Dialog nicht anzeigen wollte. Nach dem Klicken auf dem entsprechenden Menüpunkt passiert auf dem Bildschirm etwas, aber der Dialog blieb verschwunden. Von der Kundenkonfiguration ist die Zwei-Monitor-Ansicht bekannt, also flugs einen zweiten 24 Zoll Monitor mit 1920x1200 Auflösung geholt, angeschlossen sowie zur Sicherheit den Rechner neu gestartet und ….  NICHTS. Der Eigenschaften-Dialog bleibt verschwunden.

So geht's

Also geht es weiter mit Google, hier suchen wir: Graphics Designer zeigt den Eigenschaften-Dialog nicht an und Voilà… Der erste Eintrag weist auf den Siemens Industry Automation Support und zeigt die Lösung. Die Koordinaten des Eigenschaften-Dialogs liegen außerhalb der sichtbaren Bildschirmauflösung und die Position wird in der Registry abgelegt. Dem Supportbeitrag liegt auch ein Registry Eintrag bei, der die Koordinaten auf 0,0 setzt. (Der Registry Schlüssel lautet: HKEY_CURRENT_USER\Software\Siemens\WINCC\Graphics Designer\PropSheet) Toll wäre es, wenn der Graphics Designer beim Start überprüft, ob sein Eigenschaftsfenster komplett außerhalb des sichtbaren Bildschirmbereiches liegt und dies dann korrigiert. Wer will im Graphics Designer schon ohne Eigenschaften-Dialog arbeiten?

Nach dem Importieren des Registry Eintrages und Neustart des Graphics Designers ist der Dialog wieder sichtbar und die Arbeit kann beginnen.

Weiteres im Siemens Support Bereich: https://support.automation.siemens.com/WW/llisapi.dll?func=ll&objid=22780065&nodeid0=10805593&load=treecontent&lang=de&siteid=cseus&aktprim=0&objaction=csview&extranet=standard&viewreg=WW#A20781462

Weitere Support Foren:
- Das SPS-Forum kennt auch die Lösung.
- Ebenso das AC-Board: http://ac-board.kilu.at/viewtopic.php?f=15&t=24

Donnerstag, 20. September 2012

Sprachumschaltung für kundenspezifische SIMATIC Produkte

Siemens bietet an, die standardmäßigen SIMATIC Panels um kundenspezifische Lösungen zu erweitern. Das gilt für Branchenprodukte ebenso wie für Hardwaremodifikationen. Das Portfolio für Änderungen reicht dabei vom individuellen Design über Installation von speziellen Software-Images, bis hin zu Hardwareänderungen.

Die kundenspezifischen Lösungen können mit den vorhandenen SIMATIC Werkzeugen projektiert werden. Konkret werden die Panelprojektierungen mit WinCC flexible oder TIA bearbeitet. Bei kundenspezifischen Hardwareänderungen ist es wichtig, dass das passende Image in der Projektierungssoftware verwendet wird.

Bsp.: Ein kundenspezifisches Panel ist auf Basis des MP170 entwickelt. Die Anpassung besteht im Tausch des Displays durch ein kleineres Display mit geringerer Auflösung. Wenn das Image nicht verwendet wird, so wird die Projektierungssoftware nicht die korrekte Auflösung und damit die korrekte Positionierung und Größe der Texte anzeigen können.

Zusammenfassung: Zu hardwaremodifizierten Panels gehört ein Software-Image und dies muss in WinCC flexible oder im TIA verwendet werden, damit die Projektierungssoftware die besonderen Feature der Hardware kennt und berücksichtigt. Dann steht einer Sprachumschaltung auf einem kundenspezifischen Panel nichts mehr im Weg.

Weiteres zu Sprachumschaltungen: http://www.dcc-global.com/sprachumschaltung

Weiteres zu kundenspezifischen Panels unter: http://www.automation.siemens.com/mcms/human-machine-interface/de/kundenspezifische-produkte/Seiten/Default.aspx

Donnerstag, 6. September 2012

Neuer Blog zu Siemens Produkten

Seit April diesen Jahres gibt es bei Siemens einen neuen Blog (https://blogs.siemens.com/wettbewerbsfaehige-industrie/) der sich mit Automatisierungs- und Antriebstechnik befasst. Es finden sich interessante Artikel und Blicke hinter die Kulissen. Ein Blick lohnt sich...

Donnerstag, 12. Juli 2012

Übersetzung der Texte aus Simatic WinCC flexible

Für die Übersetzung können Texte aus WinCC flexible exportiert, mit externen Tools (z.B.DCC Translation Editor SIMATIC Edition) übersetzt und anschließend wieder importiert werden. Jetzt gibt es aber ab WinCC flexible 2008 zwei Stellen im Menü für den Im- und Export:
  1. Projekt, Im-/Export
  2. Extras, Texte, Export

Was sind die Unterschiede?

Menüpunkt: Projekt, Im-/Export
Mit dem Befehl Projekt, Im-/Export werden Daten aus einem Projekt exportiert, um sie in einem anderen Projekt zu importieren. Durch den Export und Import wird der Arbeitsaufwand reduziert. Anstatt z. B. neue Meldungen anzulegen, werden Meldungen verwendet, die bereits in früheren Projekten erstellt wurden.

Mit dem Befehl Extras, Texte werden die Texte für die Übersetzung exportiert. Bei großen Textmengen in mehreren Sprachen ist die externe Übersetzung von Projekttexten von Vorteil. Über die Exportfunktion können die Texte des Projekts an externe Übersetzer zur Bearbeitung gegeben werden. Anschließend können die übersetzten Texte über die Importfunktion wieder in das Projekt integriert werden.

Menüpunkt: Extras, Texte

Der richtige Weg

Export der Texte über Extras, Texte und die folgende Übersetzung. Damit werden nur die Texte übersetzt, die Konfiguration der Projektierung bleibt unverändert.