Burkhard
Level-2
- Beiträge
- 161
- Reaktionspunkte
- 2
-> Hier kostenlos registrieren
Hallo liebe SPS-Software-Entwickler,
ich soll ein mittelgroßes Projekt für eine Metallbearbeitungsmaschine mit Beckhoff TwinCat entwerfen. Bisher habe ich die Hardware IO, also die Eingänge und Ausgänge von den Reihenklemmen, aber auch die Schnittstelle zur MotionControl (NCI) immer über globale Variablen gemacht.
Ich möchte einen Objekt-Orientierten Aufbau erzeugen, mit mehreren Ebenen.
MAIN --> Maschine --> Antrieb1
MAIN --> Maschine --> Antrieb2
usw...
Mit lokalen Variablen würde ich alle Eingänge und Ausgänge sowie deren Adressen auf der Ebene MAIN deklarieren und müsste diese dann zur Schnittstelle von "Maschine" routen. Dann auf der Ebene des Maschinen-Objektes, würde ich die Ein- und Ausgänge weiter routen zu den Objekten "Antrieb1" und "Antrieb2".
Natürlich könnte ich das Objekt "Maschine" auch weglassen und gleich die Antriebe auf der Ebene MAIN deklarieren. Das Objekt "Maschine" würde ja nur Sinn machen, wenn es auf dieser Ebene noch andere Objekte geben würde.
Mein Gedanke ist nur: mit den lokalen Variablen hätte ich viel mehr Aufwand für die Erstellung der Interfaces und das Routing. Da können auch Fehler passieren.
Mit den globalen Variablen müsste ich diese nur einmal deklarieren, adressieren und könnte sie dann überall in jedem anderen Objekt sofort verwenden.
Ich glaube der Aufwand wäre geringer. Wie ist eure Meinung?
ich soll ein mittelgroßes Projekt für eine Metallbearbeitungsmaschine mit Beckhoff TwinCat entwerfen. Bisher habe ich die Hardware IO, also die Eingänge und Ausgänge von den Reihenklemmen, aber auch die Schnittstelle zur MotionControl (NCI) immer über globale Variablen gemacht.
Ich möchte einen Objekt-Orientierten Aufbau erzeugen, mit mehreren Ebenen.
MAIN --> Maschine --> Antrieb1
MAIN --> Maschine --> Antrieb2
usw...
Mit lokalen Variablen würde ich alle Eingänge und Ausgänge sowie deren Adressen auf der Ebene MAIN deklarieren und müsste diese dann zur Schnittstelle von "Maschine" routen. Dann auf der Ebene des Maschinen-Objektes, würde ich die Ein- und Ausgänge weiter routen zu den Objekten "Antrieb1" und "Antrieb2".
Natürlich könnte ich das Objekt "Maschine" auch weglassen und gleich die Antriebe auf der Ebene MAIN deklarieren. Das Objekt "Maschine" würde ja nur Sinn machen, wenn es auf dieser Ebene noch andere Objekte geben würde.
Mein Gedanke ist nur: mit den lokalen Variablen hätte ich viel mehr Aufwand für die Erstellung der Interfaces und das Routing. Da können auch Fehler passieren.
Mit den globalen Variablen müsste ich diese nur einmal deklarieren, adressieren und könnte sie dann überall in jedem anderen Objekt sofort verwenden.
Ich glaube der Aufwand wäre geringer. Wie ist eure Meinung?