WinCC Animation - Bewegung (Rechteck)

Earny

Level-1
Beiträge
422
Reaktionspunkte
38
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich möchte eine Bewegungsanimation einer Zylinderkolbenstange in WinCC erstellen.
Ich nehme ein Rechteck und bewege das Rechteck in Abhängigkeit des Variablenwertes "Stange1_Position" nach rechts (Kolbenstange ausfahren) oder links (Kolbenstange einfahren).
Das funktioniert. Irgendwie kommt mir das Ganze aber relativ umständlich vor.

Meine grobe Vorgehensweise:
- Durch Klicken der Schaltfläche "Ausfahren" setze ich eine boolesche Variable ("Zylinder_ausfahren" - mit Anbindung zur PLC) auf true.
- Solange "Zylinder_ausfahren" auf true steht, ändere ich in der PLC ständig den Wert meiner booleschen Variable "Trigger".
- In der HMI erfasse ich die Wertänderung der Variable "Trigger".
- Mit jeder Wertänderung rufe ich den Skript "Zylinder_bewegen" auf. Der Skript erhöht oder erniedrigt den Wert meiner Variable "Stange1_Position" um einen definierten Wert.
- Den Wert von "Stange1_Position" lege ich auf die Animation Bewegung (mit Variable) meines Rechtecks.


Das klappt wie gesagt, kommt mir aber reichlich umständlich vor.
Außerdem habe ich das Gefühl, dass dieses "System" auch leistungsmäßig schnell an seine Grenzen stößt. Manchmal ruckelt die Animation.

Wäre für Anregungen dankbar.
 
Wie soll es denn besser gehen ? Wenn du eine Wegmessung an dem Zylinder hättest , dann könntest du den Wert auf die Variable Stange_1_Position legen. Warum bearbeitest du diese variablae eigendlich nicht in der PLC sondern über ein Script ?

Das ruckeln wird wohl mit der Aktualisierungszeit der HMI zusammenhängen. Evtl. kommt nicht jeder "Trigger" an.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
- Solange "Zylinder_ausfahren" auf true steht, ändere ich in der PLC ständig den Wert meiner booleschen Variable "Trigger".
- In der HMI erfasse ich die Wertänderung der Variable "Trigger".
- Mit jeder Wertänderung rufe ich den Skript "Zylinder_bewegen" auf. Der Skript erhöht oder erniedrigt den Wert meiner Variable "Stange1_Position" um einen definierten Wert.
Wenn Du die Variable "Stange1_Position" in die SPS legst und dort manipulierst, dann sparst Du das ganze Gedöns mit dem Skript und dem Triggern.

Harald
 
"Bewegung" in der PLC erzeugen, war auch meine erste Idee.
Ich habe mich dann aber nach längerer Überlegung für den falschen Weg entschieden.;)

Danke für die Tips. Ich werde die Animation umbauen.
 
Ich habe mich in den letzten Woche immer mal wieder mit Bewegungsanimationen in WinCC-TIA beschäftigt. Das klappt jetzt eigentlich ganz gut, krankt aber immer am gleichen Umstand:
Flüssige (schnelle) Bewegungen bekomme ich nicht ruckelfrei hin. Es spielt keine Rolle, ob ich eine Kombination aus Grafikliste mit grafischem E/A-Feld einsetze oder den Variablenwert, der die Bewegung eines HMI-Objekts steuern soll, direkt auf das Objekt schalte. In allen Fällen sind keine schnellen ruckelfreien Bewegungen möglich.
Das zentrale Problem sind die zu niedrigen Erfassungszyklen der HMI. Auch bei der WinCC Runtime für PC ist der schnellstmögliche Erfassungszyklus nur 100 ms.
Meiner Meinung nach müsste das aber eher bei 20 bis 10 ms liegen, um ruckelfreie schnelle Bewegungen hinzubekommen.
(Mir ist schon klar, dass bei derart niedrigen Zykluszeiten eine hohe Kommunikationslast entsteht.)

Oder gibt es irgendeinen Trick, den ich noch nicht kenne?
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe noch nie eine solche Animation ausprobiert. Habt ihr es geschafft? Ich persönlich habe in der Vergangenheit normalerweise Animationen bestellt. Ich habe als Marketing-Spezialist für ein großes Unternehmen gearbeitet und wir brauchten oft Animationen für die Kampagnen des Unternehmens. Wir haben normalerweise Animationsfirmen eingesetzt. Eines der besten, das wir verwendet haben, war Donker Media (Sie können den Link für ihre Arbeit hier überprüfen: [url]https://donkermedia.nl[/URL]). Sie haben erstaunlich gearbeitet. Ich habe einige ihrer Werke gesehen und es war super interessant, also fing ich an zu lesen und mehr Informationen über Animation und deren Funktionsweise zu erhalten. Ich liebe es. Ich nehme tatsächlich an einigen Online-Kursen über Animation teil.
 
Zuletzt bearbeitet:
Ich habs kürzlich noch mal mit WinCC 7.4 probiert. Ich wollte auf Rohrleitungen in Abhängigkeit von geöffneten Schiebern und sich in Betrieb befindlichen Pumpen animierte Pfeile legen, die sich wenn der Weg geöffnet ist entsprechend auf der Rohrleitung bewegen. Ich habe das bei Intouch so verwendet, und da sieht das sehr flüssig aus. Bei WinCC habe ich den Eindruck, dass selbst der schnellste 100ms Änderungszyklus in dem ich eine Variable ändere, nicht in der Runtime in der Geschwindigkeit ankommt. Es war langsamer, und ruckelt auch gelegentlich.
 
Zurück
Oben