Step 7 Daten flexibel schieben

C7633

Level-1
Beiträge
224
Reaktionspunkte
13
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Kollegen

Ich habe mehrere Quelldatenbereiche in einem DB.
Diese möchte ich nacheinander, aber immer nur einen in den Zielbreich in den statischen Daten eines FBs übertragen, und von dort aus an das Gerät schicken.

Da ich flexibel bleiben muss, möchte ich nur einen Move Befehl haben.

Der Zielbereich ist immer der gleiche also kein Problem.

Aber wie adressiere ich den Quellbereich.

Ich habe mir gedacht, dass ich in den Lokaldaten einen Anyzeiger anlege, diesen situativ zusammenbaue, und dann dem Movebefehl übergebe.

Oder hat jemand eine bessere Idee.

Die indirekte Adressierung, die TIA jetzt scheinbar untersützt, scheidet leider aus, da die CPU noch eine 300er ist.

Vielen Dank

C7
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ein ähnliches Problem hatte ich auch mal.
Habe mir dann einen FC gebaut, der zwei Anypointer ausgibt, diese beiden Anypointer schalte ich dann an einen SFC 20 "BLKMOV". Ein normales Move geht da natürlich nicht.
Dort kann ich Daten beliebiger Herkunft und beliebiger Länge an beliebige Ziele schieben.

calcany.JPG
 
Ein ähnliches Problem hatte ich auch mal.
Habe mir dann einen FC gebaut, der zwei Anypointer ausgibt, diese beiden Anypointer schalte ich dann an einen SFC 20 "BLKMOV". Ein normales Move geht da natürlich nicht.
Dort kann ich Daten beliebiger Herkunft und beliebiger Länge an beliebige Ziele schieben.

Anhang anzeigen 29627

In diesem Beispiel habe ich mir einen UDT erstellt, aus dem ich einen DB erstellt habe und den ich auch im STAT Bereich meines FBs stehen habe.
So lasse ich mir immer die Länge der Bereiche ermitteln und bin von Änderungen unabhängig.
 
Zurück
Oben