Arbetsvy-animationer¶
Krav
Följande skript krävs för att använda Arbetsvy-animationer:
scWorkviewAnimationscAlertscSuffixscPrototypes
WideQuick Modular Framework innehåller ett inbyggt animationssystem som visar statusindikatorer på objekt för att indikera deras aktuella tillstånd — från larm och varningar till aktiv och manuell styrning. Systemet styrs av taggsuffix, vilket innebär att färgen ett objekt visar bestäms av vilka signaler som är aktiva på det objektet.
För mer information om taggsuffix, se Taggstruktur.

Hur det fungerar¶
När ett DynTouch-objekt placeras på ett objekt i WideQuick Designer® anropas
AnimationHandler()-funktionen i scWorkviewAnimation-skriptet automatiskt.
Detta skapar en hanterare som bevakar alla Datalager-signaler som matchar
objektets taggnamn kombinerat med de konfigurerade suffixen. Hanteraren exponerar ett
booleskt värde för varje kategori — till exempel animation.alarm eller animation.warning,
där animation är referensen till hanteraren — som är true när någon signal
i den kategorin är aktiv.
Det här animationstillståndet delas automatiskt med alla underobjekt i gruppen, så att varje visuellt element kan reagera självständigt på sin tilldelade kategori.
Alla vanliga komponenter i standardobjektbiblioteken levereras med färdigbyggda animerade objekt som fungerar direkt, och täcker kategorierna larm, varning, aktiv och ManAuto. Serviceanimation ingår inte i standardobjekten som standard — exemplet i Bygga ett eget animerat motorobjekt visar hur man lägger till det i ett eget objekt.
För de flesta integratörer räcker det med att konfigurera suffix i driftsättningen. Att skapa egna animerade objekt beskrivs i Skapa egna animerade objekt.
Konfigurera kategorier och suffix¶
Animationskategorierna och deras suffixalias konfigureras i WideQuick Runtime® genom att navigera till Inställningar → Suffix → Suffix - Larm.

Inställningarna är organiserade i två nivåer:
- Grupper — definierar animationskategorin och dess färg. Fem grupper finns tillgängliga som standard: 1 - Larm, 2 - Varningar, 3 - Service, 4 - Aktiv och 5 - ManAuto.
- Suffixalias — definieras inom varje grupp. Varje alias har ett läsbart
namn, till exempel
Fellarm, och är kopplat till ett faktiskt taggsuffix, till exempel_LF. När en signal som slutar med det suffixet blir aktiv animeras objektet i gruppens färg.
Grupper prioriteras efter nummer — lägre nummer har högre prioritet. Om ett objekt har både ett aktivt larm och en varning ges larmet prioritet eftersom det är grupp 1.
Att välja en grupp visar två inställningspaneler till höger:
Inställningar för kategori — konfigurerar gruppens beteende:
- Referensnamn — det namn som används i animationsuttryck, till exempel
alarmellerwarning. Används vid byggande av egna animerade objekt, se Skapa egna animerade objekt. - Temafärg — den färg som visas när något suffixalias i gruppen är aktivt. En färgförhandsvisning visas till höger.
- Färgreferens (automatisk) — genereras automatiskt från referensnamnet. Behöver inte konfigureras manuellt.
- Vektornamn (automatiskt) — genereras automatiskt från referensnamnet. Behöver inte konfigureras manuellt.
Att välja ett suffixalias inom en grupp visar:
Inställningar för suffix — konfigurerar det valda suffixaliaset:
- Suffix — det faktiska taggsuffixet kopplat till detta alias, till exempel
_LFeller_LG. - Beskrivning — en läsbar beskrivning av vad suffixet representerar,
till exempel
Fellarm.
Standardtemafärgerna för varje grupp är:
| Grupp | Temafärg |
|---|---|
| 1 - Larm | error |
| 2 - Varningar | Symbol_Warning |
| 3 - Service | Symbol_Service |
| 4 - Aktiv | Symbol_Active |
| 5 - ManAuto | Symbol_ManAuto |
Om inga suffixalias i någon grupp är aktiva får objektet färgen
Symbol_Default.
Lägga till suffixalias i en grupp¶
För att lägga till ett suffixalias i en grupp, välj gruppen och klicka på Lägg till nytt suffixalias
i vald kategori. Ge aliaset ett läsbart namn som Fellarm,
ange det faktiska taggsuffixet som _LF och lägg till en beskrivning. Klicka
på Skriv ändringar till DB för att spara.
Alla objekt med en signal som matchar det konfigurerade suffixet och som aktiveras kommer att animeras i gruppens färg.
Lägga till egna grupper¶
Ytterligare grupper kan läggas till utöver de fem standardgrupperna genom att klicka på Lägg till ny
kategori. Ge gruppen ett Referensnamn, välj en Temafärg och lägg till
relevanta suffixalias. Den nya gruppen blir tillgänglig som ett animationstillstånd
på alla objekt som använder AnimationHandler()-funktionen i
scWorkviewAnimation-skriptet.
Note
Referensnamnet för en egen grupp är det du använder i animationsuttryck
när du bygger egna objekt. Välj ett kort namn med gemener
utan mellanslag, till exempel pressure eller fault.
Skapa egna animerade objekt¶
För integratörer som vill bygga egna animerade objekt förklaras nedan hur man kopplar ett underobjekt till en animationskategori.
Varje underobjekt som ska reagera på en animationskategori behöver tre saker:
onLoad-skript — sparar objektets ursprungliga färger så att de kan återställas när ingen kategori är aktiv:
this.defaultColor = System.themes.color("background");
this.defaultpColor = this.pen.color;
Synlighetsuttryck — visar objektet bara när kategorin är aktiv:
Färguttryck — ställer in färgen baserat på den aktiva kategorin, och återgår till standardfärgen när den är inaktiv:
if (this.animation.alarm) {
return scWorkviewAnimation.alarmColor;
} else {
return this.defaultColor
}
Ersätt alarm med det relevanta kategorinamnet. De tillgängliga kategorinamnen är:
| Kategori | Namn |
|---|---|
| Larm | alarm |
| Varningar | warning |
| Service | service |
| Aktiv | active |
| ManAuto | manauto |
Note
Egna kategorier som lagts till i driftsättningen är också tillgängliga här. Använd kategorinamnet som det definierades i Inställningar → Suffix → Suffix - Larm.
Tip
Det enklaste sättet att skapa ett eget animerat objekt är att kopiera ett befintligt animerat objekt från standardobjektbiblioteken och anpassa det. Det säkerställer att alla uttryck och skript redan finns på plats.
Exempel - Bygga ett eget animerat motorobjekt¶
Det här exemplet visar hur man bygger ett enkelt eget motorobjekt som reagerar på fyra animationskategorier — larm, varning, service och aktiv. Det visar också hur man lägger till serviceanimation, som inte ingår i standardobjektbiblioteken som standard.
Steg 1 - Verifiera suffixkonfigurationen¶
Innan du bygger objektet, kontrollera att alla fyra animationskategorier som används i det här exemplet är konfigurerade i Inställningar → Suffix → Suffix - Larm. Kategorierna 1, 2 och 4 bör redan vara konfigurerade som standard — expandera varje och bekräfta att suffixalias kopplade till de relevanta suffixen finns under suffix:
- 1 - Larm — bör innehålla suffixalias kopplade till larmsuffix som
_LDeller_LG - 2 - Varningar — bör innehålla suffixalias kopplade till varningssuffix som
_LM - 4 - Aktiv — bör innehålla suffixalias kopplade till aktivsuffix som
_IT
Kategori 3 kräver manuell konfiguration eftersom suffixet _SERVICE inte ingår som
standard. Expandera 3 - Service och kontrollera om _SERVICE visas under
suffix. Om det inte finns där, klicka på Lägg till nytt suffixalias i vald kategori,
ange _SERVICE som suffix och ge det en beskrivning som passar dina behov.

Steg 2 - Skapa de visuella elementen¶
I WideQuick Designer®, skapa följande objekt:
- En cirkel — den blinkar i larm-, varnings- eller servicefärgen när någon av dessa kategorier är aktiv.
- En triangel — dess kontur ändrar färg när kategorin aktiv är aktiv.
- Ett
DynTouch-objekt — detta kopplar animationen till taggen.

Steg 3 - Lägg till onLoad-skripten¶
Lägg till följande onLoad-skript på cirkeln:
Lägg till följande onLoad-skript på triangeln:
this.brush.color1 = System.themes.color("background");
this.defaultpColor = this.pen.color;
Dessa skript sparar de ursprungliga färgerna för varje objekt så att de kan återställas när ingen animationskategori är aktiv.

Note
Eftersom triangelns penselgfärg inte styrs av något animationsuttryck ställs den in till temats bakgrundsfärg vid inläsning. Det säkerställer att fyllningen följer det aktiva temat istället för att vara hårdkodad till en specifik färg.
Steg 4 - Lägg till färguttrycken¶
Cirkel — penselgfärg:
Lägg till följande uttryck i penselgfärg-dynamiken på cirkeln. Cirkeln blinkar i den färg som hör till den aktiva kategorin med högst prioritet:
if (this.animation.alarm && _sys_pulse_1_Hz) {
return scWorkviewAnimation.alarmColor;
} else if (this.animation.warning && _sys_pulse_1_Hz) {
return scWorkviewAnimation.warningColor;
} else if (this.animation.service && _sys_pulse_1_Hz) {
return scWorkviewAnimation.serviceColor;
} else {
return this.defaultColor
}
GIF:en nedan visar var detta uttryck ska läggas till:

Triangel — pennfärg:
Lägg till följande uttryck i pennfärg-dynamiken på triangeln. Triangelns kontur ändrar färg när kategorin aktiv är aktiv:
if (this.animation.active) {
return scWorkviewAnimation.activeColor;
} else {
return this.defaultpColor
}
GIF:en nedan visar var detta uttryck ska läggas till:

Steg 5 - Gruppera objekten¶
Konfigurera DynTouch-objektets egenskaper innan grupperingen för att koppla det till
rätt tagg. Under fliken Egenskaper, ange följande:
- Connection — anslutningsnamnet, till exempel
MB - Device — enhetsnamnet, till exempel
AS01 - Sys — systemnamnet, till exempel
VS10 - ObjectName — objektnamnet, till exempel
PV01
Dessa fyra egenskaper kombineras till taggnamnet MB.AS01_VS10_PV01, som AnimationHandler()-funktionen i scWorkviewAnimation-skriptet använder
för att hitta alla signaler som matchar de konfigurerade suffixen.
När egenskaperna är ifyllda, markera cirkeln, triangeln och DynTouch-objektet
och tryck Ctrl+G för att gruppera dem. Animationstillståndet delas automatiskt
med alla underobjekt i gruppen.
Note
Egenskaperna Connection, Device och Sys kan också ställas in på
Arbetsvy-egenskaperna istället för på varje DynTouch-objekt individuellt. Se
Taggstruktur för mer information.
Steg 6 - Testa i Runtime¶
Starta projektet och kontrollera att:
- Cirkeln blinkar rött när en signal som slutar med ett larmsuffix är aktiv.
- Cirkeln blinkar gult när en signal som slutar med ett varningssuffix är aktiv.
- Cirkeln blinkar lila när en signal som slutar med
_SERVICEär aktiv. - Triangelns kontur ändras till aktivfärgen när en signal som slutar med ett aktivsuffix är aktiv.

Tip
För att testa utan en PLC ansluten, högerklicka på objektet i WideQuick Runtime®
för att öppna felsökningspopupen. Härifrån kan Datalager-variablerna växlas mellan
true och false för att verifiera att animationerna fungerar som förväntat.