# Animationen erstellen



## Allmie (21 Dezember 2014)

Hallo,


mein Problem betrifft folgendes:
Ich möchte gerne ein bzw. mehrere Objekte horizontal/vertikal bewegen. Im Eigenschaftsfenster unter Animationen und Horizontaler Bewegung erstelle ich nun eine Animation. Wenn ich nun eine PLC-Variable als Start der Bewegung angebe, sagt TIA mir es wäre ein ungültiger Datentyp. Ich habe gelesen, das nur INT Datentypen zur Verwendung von Animationen gehen würden.
Was sich wiederum als schwierig erweist, da man in der Steuerung mit Boolschen Datentypen arbeitet.
Ich verstehe nicht ganz wie man dann eine Animation umsetzen soll. Ich habe noch etwas gelesen von einem Zähler zur besseren Dynamisierung der Animation, jedoch keinerlei Vorstellungen wie das gehen soll.
Meine Erfahrungen in Sachen Programmierung und Visualisierung sind noch relativ Schulisch-Frisch. (Techniker) Also wäre ich um jeden Tipp Dankbar!
Ich sollte evt. erwähnen das ich mit dem TIA Portal Professional V13 und WinCC Advanced V13 arbeite. Dazu eine Steuerung S7-1200. Die Visualisierung läuft auf einem Standart-PC über die Runtime.

Danke für die Unterstützung


MfG


----------



## dentech (21 Dezember 2014)

Hi,

bei der Animation läßt du einen Zähler im Int-Format hochzählen und dein Wert entspricht deiner Bewegung. Ich mache das immer mit einem Taktsignal und lasse es dann z.B. von 0..10 oder 100 hochzählen.


----------



## Allmie (5 Januar 2015)

Hallo,

sorry für die späte Antwort, aber die Feiertage kamen dazwischen 
Ich habs mal so versucht wie du es erklärt hast, allerdings war ich nicht erfolgreich damit.
Könntest du mir bitte deine Möglichkeit etwas detaillierter erklären?

Danke


----------



## dentech (5 Januar 2015)

Hi,

hab dir mal zwei Screenshots gemacht. Du brauchst in der SPS den Taktmerker, der die Variable von 0..10 oder 0..100 hochzählt oder wieder zurückzählt, ganz so wie du willst. Die Variable wird im HMI unter Animation angebunden.


----------



## Allmie (6 Januar 2015)

Hi,

danke für deine Hilfe,
Ich habe deinen Beitrag erst gerade gelesen. In der Vergangen Nacht habe ich mal etwas rumgespielt und bin auf diese Möglichkeit gestoßen:
	

		
			
		

		
	




Der Takt M5.3 aktiviert den Zähler. Der Absolute Punkt für den Zähler ist hier jetzt 100. Er zählt Quasi bis 100 hoch. Die Variable am CV-Ausgang wird dementsprechend auch hochgezählt. Diese ist in einem Global-DB als INT angelegt.
Diese Variable habe ich dann mit der Animation verknüpft.
Das Testergebnis war das sich die Grafik nicht mehr von A nach B "Teleportiert" hat sondern dies Schrittweise getan hat. Undzwar in 100 Schritten von A nach B (Weil der Zählwert ja 100 war) und in der Geschwindigkeit des Taktes. Zum Rücksetzen des Zählers habe ich ein Provisorischen Eingang genommen. 

Ich denke da wird dann aber schon das nächste Problem sein. Das wenn man den Zähler Rücksetzt durch einen Bedingung die Grafik direkt an den Anfangspunkt springt. Und genau das soll ja auch nicht sein. Sondern Sie soll ja fließend zurück.

Um kurz darzustellen was ich versuche zu Animieren: Es geht um einen Saugarm der die Grundstellung "Oben und Links" hat. Wird eine Bedingung erfüllt, fährt der Saugarm im ersten Schritt nach unten, greift ein Werkstück, fährt wieder nach oben, fährt nach rechts, dann nach unten. Ist er unten angekommen, lässt er das Werkstück los, fährt nach oben, und wieder nach links und befindet sich wieder in Grundstellung.

Meines erachtens muss ich für diesen Vorgang 6 Netzwerke programmieren. 2 mal hoch. 2 mal runter, 1 mal nach rechts und 1 mal nach links.
Ich kann es mir eigentlich nicht so Schwer vorstellen was es aber gerade irgendwie ist.

MfG Allmie


----------



## Philipphos (29 Juni 2020)

Hallo,

ich habe das selbe Problem, dass ich ein Objekt bewegen will. Jedoch brauche ich dafür ja den Datentyp INT. Ich will nun versuchen, das zu programmieren, wie sie in dem Beispiel. Jedoch weiß ich nicht, was ihr erster Baustein ist und was genau bei dem &-Baustein der Eingang "Takt" bedeutet bzw. in welchem Zusammenhang der steht. 
Hoffentlich verstehen sie, was ich meine.

Danke schon mal im Voraus.


----------

