Datenaustausch zwischen Modulen (FBs)

OOP

Level-1
Beiträge
49
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo, wir haben eine Maschine,
Welche aus verschiedenen Modulen bestehen kann.
Bspw. Beladeeinheit, Bearbeitungseinheit,
Transporteinheit, Roboter....
Ich würde die Maschine gerne recht Modular aufbauen, allerdings bin ich mir noch unsicher wie die Module miteinander „kommunizieren“ können.
Bspw. Muss aus der Beladeeinheit heraus die Transporteinheit angesprochen werden und eine Achse vor die Beladeeinheit verfahren.
Wie würdet ihr es machen? Über IN_OUT Daten austauschen und eine Auftragsnummer zum Transport schreiben, der meldet diese dann zurück usw.?
Dann müsste man aber in dem einen Modul wieder das andere kennen, das wollte ich vermeiden.
 
Im Prinzip gibt es nur zwei Varianten:
#1 dein Werkstück wird in einer globalen Variable abgebildet und die Bausteine greifen darauf zu incl. Info wo es sich gerade befindet
#2 die Module = FBs haben ein Handshake incl. Werkstückinfo das weitergeschoben wird (INOUT).

So oder so: Die Definition verlangt immer etwas Zeit und Erfahrung. Jede Änderung hinterher ist viel mühsamer als wenn man es von vornherein richtig gemacht hat. Den Aufwand/Erfahrung sieht aber nur jemand der schon durch diese Mühen und Schmerz gelaufen ist.
Geläufiger ist nach meiner Erfharung #2 (es sei denn irgend jemand verlangt eine flexible Produktion mit Kombinationsmöglichkeiten, quasi ein Batch-S88-Modell).

Guga
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es muss ja auch nicht wirklich immer um ein werkstück gehen, man könnte ja auch einfach nur in einem Modul eine Aufgabe anstoßen, die bspw. Eine Schutzhaube herunter fährt oder sonstiges.
Und wenn es zum Beispiel teile gibt, welche von Modul A in Modul B herein ragen, bspw. Ein Zylinder, welcher ausgefahren ist. Wie kann man dies Modul B mitteilen? Denn Modul B kennt ja A eigentlich nicht, weil es ja nicht zwingend erforderlich ist, oder sollte man in der Maschine grundsätzlich alle Module kennen, die möglich sind und wenn sie nicht da sind, einfach die Freigaben entsprechend setzen?

Es gibt doch bei PackML dies „Pack Tgas“
Liegen diese global und man kann sie beschreiben und abfragen?
 
Zuletzt bearbeitet:
Zurück
Oben