TwinCAT 3 - "Multiprojekt"

Gerri3d

Level-1
Beiträge
127
Reaktionspunkte
4
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
wie löst man das Problem wenn zwei unabhängige Applikationen auf einem IPC laufen sollen (als ein internes Projekt und eine Anlage einer Fremdfirma).

Ich weiß dass man bei TC2 mehrere Laufzeitsystem hat, mir macht es nur sorgen wenn eine Fremdfirma sich am indirekten Speicherzugriff aufhängt oder von den Prioritäten die Tasks auslutscht.

Wie ist das bei TC3 gelöst (gegebenenfalls auch Saftey und Webviso/ein Monior zum Togglen/zwei Webserver)

gruß Gerri 3d
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Du kannst zwei PLCs auf zwei unterschiedlichen Kernen laufen lassen. Die sollten dann voneinander erstmal nichts sehen und nichts mitbekommen. Kommunikation geht dann entweder über ADS, Netzwerkvariablen oder einfach nur IOs übern Feldbus. In dem Fall solltest du dann auch die Kerne vor Windows verstecken (nennt sich dann Core Isolation). Aus Erfahrung mindestens 4-Kern CPUs verwenden, dann kannst du zwei für die PLCs verstecken und für Windows bleiben dann noch zwei übrig.

Der Zugriff von außen wird dann über die Ports gelöst. Die erste PLC hat Port 851, die zweite 852 usw...
Es funktioniert auch mit beiden PLCs auf einem Kern, da sollte dann halt von beiden Programmen genügend Laufzeit Reserve übrig gelassen werden, damit es keine Task-Zeitüberschreitungen gibt.

Es kommt halt auch drauf an, was die beiden Progrämmchen machen müssen. Aufgrunddessen entscheidet man sich dann für die eine oder andere Lösung.
Vielleicht hilft das Video etwas weiter? http://multimedia.beckhoff.com/webinar/Webinar_TwinCAT_3_Multicore/default.htm

Wenn du sie richtig trennen willst, weil kritische Anwendung, dann wirst du wohl zwei PCs verwenden müssen. Unter Windows hast du leider immer das Problem, dass der Cache des Prozessors für alle Prozessoren zur Verfügung steht. Wenn nun ein Programm im Windows Kontext hier mal richtig Leistung braucht, kann ein Quereinfluss auf die PLCs passieren (sieht man schön mit dem Snipping Tool...)

Sg
M.
 
Wäre es möglich zwei Visu (aus zwei Laufzeitsystemen) auf einem Bildschirm zu inetgrieren. Zum Beispiel zwei Webserver die mittels Taste navigierbar wären. Also für einen Bediener nicht erkennbar.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also mit einer ganz normalen TcAdsdll.dll Verbindung aus C# oder der Twincat visu sollte das auf jeden Fall gehen. Du kannst ja getrennt für jede Verbindung den Port angeben. Bei der WebVisu sollte es auch gehen, ich weiß nur nicht wie Beckhoff das mit der Lizenzierung gelöst hat. Soweit ich mich dunkel erinnern kann, muss man pro Client Verbindung eine Lizenz kaufen. Dh. in deinem Fall dann zwei Lizenzen.
Aber hier musst du wohl Doku lesen gehen...
 
Ich habe das Thema weiter gesponnen und es stellt sich mir nun eine Frage die ich anhand der geringen Erfahrung mit TC3 nicht beantworten kann.

Ist es möglich einzelne POUs in TC3 zu laden bzw einzelne Visualisierungsbilder?

Können zwei Sicherheitsprogramme abgefahren werden (vermutlich mit 2 EL6900 auf zwei EtherCAT - Strängen).
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ist es möglich einzelne POUs in TC3 zu laden bzw einzelne Visualisierungsbilder?
Du kannst einzelne Teile von der Kompilierung ausschließen und somit auch von der Übertragung, aber bei den FBs musst Du dann deren Instanziierung und Aufruf auskommentieren und sämtliche Zugriffe. Ansonsten schau mal bei den Pragmas nach, ob es da welche für bedingte Kompilierung gibt, das weiß ich im Moment leider nicht.
Können zwei Sicherheitsprogramme abgefahren werden (vermutlich mit 2 EL6900 auf zwei EtherCAT - Strängen).
Das geht sogar mit einer EL69X0 in dem Du mehrere Gruppen anlegst. Übrigens müssen mehrere EL69X0 nicht auf mehrere EtherCAT Stränge verteilt werden, die können auch an einem hängen, sie müssen auf jeden Fall unterschiedliche Adressen haben, das gilt meine ich übrigens auch, wenn diese nicht am selben Strang hängen.
 
In Step 7 kannst du einzelne Funktionen/ Funktionsbausteine bzw Datenbausteine die geändert wurden in die Steuerung laden.

Da man sich einen IPC mit einer anderen Fa. teilen soll suche ich eine TC3 Lösung.
Sorgen macht mir die Wartung des Programmes und wenn eine Seite nun Code neu laden muß bzw im Falle von Desaster - Recovery Fällen.
Es sollte also trotz eines IPCs möglich sein die beiden Anlagen so weit als Möglich zu trennen. Am liebsten wäre mir dass die Berührungen nur am Visualisierungsgerät und über ADS vorhanden sind.

Man kann sich das vorstellen das Fa A ein Beschickungssystem und Fa B ein anschließendes Bearbeitungssystem hat. Der Sinn alles in einem IPC zu betreiben hat sich mir zwar noch nicht offenbart aber ich fürchte das muß man mal so hinnehmen. Wie es in 15 Jahren aussieht falls das System zB erweitert werden soll will ich mir gar nicht vorstellen.
 
In der neuen Version von TC3 (4024) gibt es die Multiuser Funktion. Damit hast du eine Quellcodeverwaltung direkt auf der SPS. Allerdings geht das bisher nur für das SPS Programm. Sache wie Visu, Hardwarekonfig und NC können damit noch nicht verwaltet werden.

Wenn die ihr 2 getrennte Systeme habt, die von verschiedenen Firmen bearbeitet werden, dann wäre es aus meiner Sicht die bessere und unkompliziertere Variante 2 Steuerungen zu verwenden. Ich kann mir nicht vorstellen, dass es gut geht wenn 2 Firmen auf einer Steuerung herum hantieren. Auch wenn es möglich wäre nur einzelne FBs zu laden. Du weist ja nie was der andere macht.
 
Zurück
Oben