-> Hier kostenlos registrieren
Hallo zusammen,
Bin gerade dabei mich mit WinCC Unified V18 und einem MTP1900 auseinander zusetzen sowie Javascript in der WinCC Unified Umgebung.
Ich schreib jetzt mal so meine Erfahrungen und Probleme die ich habe und vielleicht hat der ein oder andere Tips für mich.
Die letzten Wochen habe ich das Panel und auch die Steuerung simuliert und mich viel mit Scripten und auch den Parametersatz Typen (und dazugehörigen Sript Methoden wie bsp. CreateParameterSet etc).
Jetzt habe ich ein reales MTP1900 gekriegt und als Steuerung habe ich eine CPU1515F-2PN.
Das Panel hab ich zuvor aus einem Advanced TP1500 it Data2Unified migriert, mehr schlecht als recht aber zumindest hat man ein paar Bilder zum spielen.
Panel wurde auf FW V18.0.0.0 hochgerüstet, ich kann zwar im Engineering System auch seit dem letzten Update V18.0.0.1 auswählen aber dazu konnte ich keine passende FW fürs Panel finden, also wieder Retour auf V18.0.0.0.
Die ersten Versuche am Panel:
So liebe Community das war jetzt relativ viel von mir, vielleicht hat ja der ein oder andere Tips etc. oder auch andere Probleme die ich vl schon gelöst habe.
Ich werde auch bei Siemens noch einen SR auslösen vielleicht wird ja die Entwicklungsabteilung dann tätig.
PS: Ich errinnere mich grad an den Marketing Spruch von Siemens "TIA Portal Automatisieren in 10 Minuten", spätestens mit WinCC Unified klappt das nicht mehr . (Auch wenn nicht alles schlecht ist)
Bin gerade dabei mich mit WinCC Unified V18 und einem MTP1900 auseinander zusetzen sowie Javascript in der WinCC Unified Umgebung.
Ich schreib jetzt mal so meine Erfahrungen und Probleme die ich habe und vielleicht hat der ein oder andere Tips für mich.
Die letzten Wochen habe ich das Panel und auch die Steuerung simuliert und mich viel mit Scripten und auch den Parametersatz Typen (und dazugehörigen Sript Methoden wie bsp. CreateParameterSet etc).
Jetzt habe ich ein reales MTP1900 gekriegt und als Steuerung habe ich eine CPU1515F-2PN.
Das Panel hab ich zuvor aus einem Advanced TP1500 it Data2Unified migriert, mehr schlecht als recht aber zumindest hat man ein paar Bilder zum spielen.
Panel wurde auf FW V18.0.0.0 hochgerüstet, ich kann zwar im Engineering System auch seit dem letzten Update V18.0.0.1 auswählen aber dazu konnte ich keine passende FW fürs Panel finden, also wieder Retour auf V18.0.0.0.
Die ersten Versuche am Panel:
- Als ich die Applikation übertragen habe wurden alle EA-Felder die mit der Steuerung verbunden waren ausgegraut und mit einem "gelben Warndreieck" dargestellt. Erstens glaubte ich das keine Verbindung zur CPU besteht und so und das ich noch irgendwas mit "Zertifikaten" instalierern muss um eine "richtige" Verbindung aufzubauen das war nicht der Grund sondern nur weil meine CPU in Stop war wurde das so dargestellt. Variablenänderung funktionierte auf beiden Seiten (bis ich das gemerkt habe sind Stunden vergangen).
- Was mir dann aufgefallen ist das der Bild aufbau sehr Träge ist:
- Das Screenlayout hab ich mehr oder weniger vom HMI Template Suite übernommen und im Bildfenster "swContent" werden die migrierten Bilder dann aufgerufen, bzw hab ich auch ein paar Bilder neu erstellt
- ich verwende auch das Navigationsmenü und die Dazugehörigen Scripte aus der Template Suite
- Durchschnittlicher Aufbau der Bilder (EA-Felder, Grafiken etc)
- ca. 4-10 Grafiken,
- ein paar Rechtecke als Hintergrund für die verschiedenen Bildbereiche
- 10-20 EA-Felder
- 5 Unsichtbare Buttons
- 10 sichtbare Buttons
- und noch ein paar Balken etc.
- in Einem Bild hab ich auch eine Rezeptanzeige/Parametersatz Anzeige und ein Faceplate mit UDT Anbindung -> in dem UDT sind 40 Variablen verbunden also insgesamt vl so 60 Variablen im Bild.
- Beim Aufruf oder umschalten der "Bildfenster" kann man am MTP1900 direkt beobachten wie die einzelnen Element eingeblendet werden, vor allem beim ersten mal nach einem Runtime Start, läuft die Runtime dann ists etwas schneller.
- Dann verwende ich auch eine "Lokale Benutzerverwaltung"
- habe da ein paar eigene Nutzer angelegt
- auch eigene Rollen sowie Rechte
- insgesamt sinds 8 Nutzer oder so.
- Wenn der Anmeldedialog erscheint und seine Daten User und Password eingibt, dann dauert es auch gefüllt eine ewigkeit bis nachdem betätigen des Login- Buttons was passiert.
- Weiters habe ich im Header einen Button zum Ausloggen, über ein Script lese ich die aktuelle "UserRole" aus
/coCode:let userRole = HMIRuntime.UserManagement.GetRolesFromUser();
- In der Simulation am Engineering Rechner und dem Script Debugger von Chrome hat das auch einwandfrei funktioniert nur am MTP 1900 klappt das nicht-> ich habs jetzt anders gelöst mit der Systemvariable @UserName
- Aber es steigert nicht unbedingt das vertrauen in das Scripting am Panel, vor allem weil man es ja zuvor eigentlich nur vernünftig debuggen kann mit der Simulation und Chrome.
- Es gibt zwar mit dem RTILtraceTool.exe wo man Fehler etc vom Panel an den Engineering Rechner senden kann aber halt nicht direkt was beobachten mit Breakpoints etc sowie im Chrome debugger.
- Dann zu den Parametersätzen:
- Das man im Engineering nicht schon ein paar Default Parametersätze pro Parametersatztyp sowie bei Flexible oder auch Advanced anlegen kann ist schon nervig
- Das dann auch beim Import/Export über die Runtime eine *.tsv datei erzeugt wird anstatt einer *.csv datei ist ja der nächste humbig.
- die tsv konnte ich zwar in Excel öffnen aber sobald ich was geändert habe und erneut gespeichert habe konnte ich diese nicht mehr importieren bzw es kam ein Fehler beim Import.
- Mit einem Texteditor geht es zwar aber das funktioniert auch nur wenn man 4 Werte hat sowie das Siemens Beispiel aber nicht wenn man Rezepte mit mehr als 20 Werten hat und ich denke da gibts genügend anwendungsfälle
- Ausser das wird dann jedesaml mit externen Datenbanken etc gelöst?
- Ist bei mir später auch mal der Fall bei dieser Maschine aber für die Inbetriebnahme und bis zur Abnahme brauchts halt ein Standalone system
- die tsv konnte ich zwar in Excel öffnen aber sobald ich was geändert habe und erneut gespeichert habe konnte ich diese nicht mehr importieren bzw es kam ein Fehler beim Import.
- Dann zu den verschieden Script Methoden bei den Parametersatztypen.
- Also hab die ganze Palette durchprobiert im Script und auch direkt als Funktionsliste -> bsp CreateParamterSet gibt mir immer als Status 12 zurück was heißt das dass erstellen fehlgeschlagen ist
- das ist der Code wenn man es in JavaSript übersetzt aus der Funktionsliste
-
Code:
export async function btnRecipeViewNew_OnTapped(item, x, y, modifiers, trigger) { try { await HMIRuntime.ParameterSetTypes.SysFct.CreateParameterSet(1, undefined, undefined, true, HMIRuntime.Tags.SysFct.CreateSetTagCommand("RecipeBtnStates.new")); } catch (err) { } }
- Auch wenn ich einen Namen und/oder eine Nummer für den Parametersatz eingebe funktionierts nicht
- Generell zum Script Editor:
- Die Syntax Prüfung oder auch "Intelisense" Vorschläge ist sehr "mau"
- Selbst beim Übersetzen wird nicht erkannt ob eine Variable nicht deklariert wurde etc. das kann dann schon ziemlich nervig sein vor allem weil das Starten der simulation jedes mal eine Minute oder mehr dauert
oder am Panel wo man auch nicht so richtig weiß ob beim Delta Laden das Script übernommen wurde, zumindest ist ein erneuter Bildaufruf bei lokalen Scripten notwendig und manchmal auch ein Runtime Stopp/Start wenn im Header, der immer Sichtbar ist was angepasst wurde.
- Das Runtime beenden ist auch so eine Sache, habe die funktion an einen Button hinterlegt, drückt man diesen dann passiert mal eine Ewigkeit nichts und plötzlich ist sie dann doch beendet.
- Ich werds so lössen das ich ein Bild einblende mit Text das die Runtime beendet wird aber warum ist das nicht on Board sowie bei WinCC Flexible/Advanced??
So liebe Community das war jetzt relativ viel von mir, vielleicht hat ja der ein oder andere Tips etc. oder auch andere Probleme die ich vl schon gelöst habe.
Ich werde auch bei Siemens noch einen SR auslösen vielleicht wird ja die Entwicklungsabteilung dann tätig.
PS: Ich errinnere mich grad an den Marketing Spruch von Siemens "TIA Portal Automatisieren in 10 Minuten", spätestens mit WinCC Unified klappt das nicht mehr . (Auch wenn nicht alles schlecht ist)