Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Welche Rekonfigurationszeit und welche Überwachungszeit der F-Baugruppen hast du projektiert?
Wie lautet die Fehlermeldung genau?
Betreibst du die F-Baugruppen als MRP-Ring und unterbrichst beim Abstecken den Ring?
Ich kenn solche Probleme nur im Kontext mit MRP.
Wenn der Ring 250ms zum...
Jup, sind (bisher) voll abwärtskompatibel.
Geht eigentlich...der TIA-eigene Editor ist halt 💩
Dein Code einmal durch den JSTool-Autoformatierer gejagt sieht so aus:
export function Funktion_Restore_LCID() {
//HMIRuntime.Tags.SysFct.SetTagValue("HMI_LanguageLCID_HMI"...
Deswegen bei Unified möglichst immer die neuste TIA-Version nehmen.
Ist irre wie viel sich zwischen den Versionen, und teilweise auch den Updates einer Hauptversion, tut.
(bzw. wie unfertig Siemens diese 💩 auf den Markt geworfen hat)
Dass du ältere Projekte in neuere Runtimes laden kannst, hast...
Unser Thema ist ja das Reverse-Engineering des KnowHow geschützten Bausteins.
Auch wenn der Vorschlag von @Larry Laffer gut funktionieren würde, wäre eine Änderung des Konzepts nicht Ziel der Fragestellung.
Mal zusammenfassend was wir bisher über den Baustein wissen:
Input-Parameter:
* Ein...
Ist das ein FB oder FC?
Ist "Optimierter Bausteinzugriff" in den Bausteineigenschaften angehakt?
In Classic kenne ich solche Funktionen noch mit zusammengebastelten Pointern...
Ich schätze mal genauso wird der das machen.
So schlimm finde ich deinen Ansatz jetzt gar nicht...
Wenn du nen...
Per Index direkt in einem Struct Elemente zu selektieren geht nicht direkt.
Du könntest per Case-Anweisung den Index auswerten und jeweils den gewählten UDT einer Refernz zuweisen ("?=" und "REF_TO datentyp"), welche du wiederrum an den verarbeitenden Code übergibst.
Bei mir wuppt das wunderbar ¯\_(ツ)_/¯
(TIA V20 Update 3)
Welche TIA-Version verwendest du?
Bitte generell immer TIA-Version / Runtime Version dazu schreiben.
Ist grade bei Unified wichtig, da sich über die einzelnen Versionen bisher viel getan hat.
Thema: synchrone/asynchrone Scripte.
Teste...
Hab schon Vögel getroffen, die das für witzig & pragmatisch hielten.
Und wenn im Lastenheft wortwörtlich steht Für boolsche Festwerte müssen die Werte "M0.0" (FALSE) und "M0.1" (TRUE) verwendet werden....
Meines Wissens nach gar nicht.
Änderung/Umbenennung in der Schnittstelle => Verknüpfung muss manuell korrigiert/wieder hergestellt werden.
Und da Comfort-Panels so langsam zum alten Eisen geschoben werden, wird diesbezüglich wohl kaum noch irgendeine Änderung erfolgen.
Die Beschreibung der ganzen Parameter des Scripts findest du übrigens in der jeweiligen F1-Hilfe des Ereignisses, in deinem fall unter "Button_OnDown()".
Wegen sowas empfehle ich immer den Code, egal was es ist, immer in eine try..catch Struktur zu verpacken.
try {
//Hier den Script-Code...
Welche Abtastrate stellt er sich unter "Realtime" denn genau vor?
Größere SPSen können UPC-UA mit 10ms (ohne Gewähr, ist jetzt nur ausm Kopf).
Ansonsten Kommunikation per I-Device?
Ich hab das mit einer PC Anwendung als Partner zwar noch nie gemacht, gäbe aber entsprechende SDKs um das umzusetzen.
Das nannte sich "Ignition".
https://inductiveautomation.com/ignition/
Der Kunde hat alle Anlagen in seinem Werk darüber angekoppelt & nutzt das zur Steuerung/Planung der Produktion sowie diversen Auswertungend und sonstiger Zahlenschubserei.