WinCC externe Variablen zerstückeln

Zuviel Werbung?
-> Hier kostenlos registrieren
Sry bin momentan auf Inbetriebnahme und nicht wirklich motiviert Abends noch große Romane zu schreiben :(

Bei der Visualisierung die ich bei dem Projekt von einem Kollegen übernommen habe, hat er einige Arrays in der Variablenliste von WinCC Flexible erstellt und hat mir gesagt das man dafür nur einen Powertag angerechnet bekommt.
(z.B. ein INT Array mit 32 Feldern/Variablen)

Das einzige Problem an den Arrays ist nur das man nicht für alle Funktionen auf die Felder zugreifen kann...

Ich werde hoffentlich morgen mal dazu kommen nen screeni einzustellen.

sry, eYe
 
Hier noch was von mir... ...ShiftAndMask

' 2. Parameter: Zylinder 1..32 zur Grundstellung: Auswerten (Bit 0..31)
TempLong = CLng(SmartTags("EcmRezeptur\Edit\AblaufIntern")(Adresse+1))
For ZylinderIndex = 0 To 31
ShiftAndMask TempLong,Ergebnis, ZylinderIndex, &H0001
If Ergebnis Then
SmartTags("EcmRezeptur\Edit\Aktion2ZylinderZurGs")(ZylinderIndex) = True
Else
SmartTags("EcmRezeptur\Edit\Aktion2ZylinderZurGs")(ZylinderIndex) = False
End If
NextIf
Next
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke Euch, habs jetzt gefunden.
Wer lesen kann ist klar im Vorteil!
Man kann natürlich, genau so wie`s "geduldiger" geschildert hat, eine externe Variable vom Typ "Word" angeben, und mit der Schaltfläche "Bit" dann das entsprechende Bit auswählen.
Schönen Abend noch!

Hallo Leute,

hab jatzt eine Stunde lang versucht, irgendwie springt der Funke nicht. Kann mir das jemand genauer erklären.


mfg mst

ach ja Basic Panel KTP600
 
Hallo allerseits

habe nun mein erstes echtes WinCC Projekt auf dem Tisch, und natürlich die "kleine Lizenz-Nummer". (by King Customer)
Also muß ich externe Variablen sparen.
Habe mir in der SPS also meine Bits in DWs gesammelt, und muß sie in WinCC nun wieder auseinanderpflücken.

Und da beginnt mein Problem. Hat jemand einen Ansatz oder ein C-script, mit dem man diese Auflösung in einzelne Bits bewerkstelligen kann? Habe bisher noch nicht mit scripten gearbeitet.

Genau daselbe Problem hab ich auch.

Danke Euch, habs jetzt gefunden.
Wer lesen kann ist klar im Vorteil!
Man kann natürlich, genau so wie`s "geduldiger" geschildert hat, eine externe Variable vom Typ "Word" angeben, und mit der Schaltfläche "Bit" dann das entsprechende Bit auswählen.
Schönen Abend noch!

Ich finde die Schaltfläche "Bit" nicht.
 
OK Leute,

bin anscheinend nicht ganz bei mir, hab nun festgestellt das alle von WinCC reden und ich von WinCC Flex *schäm*.

..gibts da auch so eine Möglichkeit?
Hab mir die multiplexe Funktion angesehen, allerdings werden da die externen Variablen natürlich auch gezählt.
 
OK - ich glaub ich hab für genug Verwirrung gesorgt.

Ich hab zum ersten mal ein Basic Panel KTP600 color (6AV6 647-0AD11-3AX0), dieses ist auf 128 Variablen begrenzt, ist von mir übersehen worden.

Ich benötige jetzt allerdings 158, suche jetzt nach einer Möglichkeit diese 30 einzusparen. Hab genug Bit Variablen die ich zusammenführen kann, aber finde keine Möglichkeit dies in WinCC Flex wieder zu trennen.

mfg mst
 
... dann fallen schon mal alle Sachen aus, die sich irgendwie mit demaskieren und auf andere Variablen aufteilen machen lassen ...

Du hast natürlich in Flex die Möglichkeit z.B. wenn du Eingänge oder Ausgänge oder Merker (als Bit) anzeigst, dir das Byte zu laden und die Animation an das einzelne Bit zu hängen. Das würde sich lohnen, wenn du relativ viele Bits einzeln lädst. Eventuell kann man hier sogar mit Worten arbeiten (wobei sich da dann die Bit-Reihenfolge verdreht).

Das gleiche würde gelten für binäre Steuer-Befehle. Hier gäbe es ja auch die Funktion "SetzeBitinVariable" (oder so ähnlich), die es ermöglichen würde in einem Byte (oder größer) ein einzelnes Bit umzusteuern. Hierbei wäre dann auch nur das Byte (oder Wort) dein Tag.

Trifft das für dich zu ... oder hast du das sowieso schon so gemacht ?

Gruß
LL
 
... dann fallen schon mal alle Sachen aus, die sich irgendwie mit demaskieren und auf andere Variablen aufteilen machen lassen ...

Du hast natürlich in Flex die Möglichkeit z.B. wenn du Eingänge oder Ausgänge oder Merker (als Bit) anzeigst, dir das Byte zu laden und die Animation an das einzelne Bit zu hängen. Das würde sich lohnen, wenn du relativ viele Bits einzeln lädst. Eventuell kann man hier sogar mit Worten arbeiten (wobei sich da dann die Bit-Reihenfolge verdreht).

Das gleiche würde gelten für binäre Steuer-Befehle. Hier gäbe es ja auch die Funktion "SetzeBitinVariable" (oder so ähnlich), die es ermöglichen würde in einem Byte (oder größer) ein einzelnes Bit umzusteuern. Hierbei wäre dann auch nur das Byte (oder Wort) dein Tag.

Trifft das für dich zu ... oder hast du das sowieso schon so gemacht ?

Gruß
LL

... hab das mit den Animationen gemacht, und div. Sachen die nicht ganz so Wichtig sind einmal weggelassen. - Somit komm ich fürs erste klar, ist allerdings keine Dauerlösung, werd wohl ein anderes Panel einsetzen oder auf die neue Firmeware ende des Jahre warten, mit der lt. Siemens die Grenzen höher gesetzt werden.

... die Funktion "SetzeBitinVariable" kann ich nicht finden, wird bei diesem Panel anscheinend nicht understützt.

besten dank, mst
 
Zurück
Oben