erstmalige Installation von TwinCat mit Problemen

Zuviel Werbung?
-> Hier kostenlos registrieren
a) Woher weiß ich das ein EK1100-Koppler den Gerätetyp "Ethercat - Master" hat wenn nicht durch rumprobieren? Die Stelle finde ich in den Dokus nicht. Dort steht "Direct Mode".
Gar nicht, denn Du bist komplett auf dem Holzweg. Der EK1100 ist, wie alle Buskoppler, ein Slave.
Der Master ist Dein Panel. Wenn Du manuell konfigurierst und keine Verbindung zum Zielsystem hast musst Du, sobald das der Fall ist, die Adaptereinstellungen des Masters anpassen. Außerdem solltest Du über die Topologieansicht des Masters die Firmwarestände kontrollieren und bei einer Differenz entsprechend gegensteuern.
b) Das CP6606 ist nicht in den Listen enthalten, kann sie nicht finden. Ich kann nicht herausfinden welches Gerät ich nun offline hinzufügen muss. Es ist ein IPC mit einer Runtime. Soweit so gut, aber weiter?!
Das kannst Du auch nicht und musst es auch nicht. Im Gegensatz zu Siemens musst Du die eigentliche CPU bei TwinCAT nicht hinzufügen, sondern nur die Feldbus Master und Slave und andere Dinge (z.B. NVRam, Lizenzdongle).
Richtig verwirrend wird es zum Beispiel bei den CX5XXX IPCs, diese sind Master und Slave in einem. Im Gehäuse ist der Master und in dem rechts fest montiertem Netzteil an dem die EL-Klemmen gesteckt werden, ist der Slave (EK1200).
c) Die Visualisierung für das CP6606 wird dann im Projektbaum unter VISUs erstellt?
Die Ordnerstruktur im SPS-Knoten ist nur ein Vorschlag und kann beliebig geändert werden.
Wo Du was ablegst ist Dir überlassen.
Es gibt übrigens zwei grundlegende Visus. Die Visu, die im SPS-Knoten abgelegt wird. Diese bezeichne ich als interne Visu. Von dieser gibt es noch die Varianten Target Visu und Web Visu. Mit der kann man schon einiges machen.
Dann gibt es noch den TC3 HMI Server TE/TF2000. Dieser wird als eigenes Projekt in der Projektmappe hinzugefügt. Die HMI ist sehr mächtig, aber auch nicht so einfach zu beherrschen.
 
Zuletzt bearbeitet:
Gar nicht, denn Du bist komplett auf dem Holzweg. Der EK1100 ist, wie alle Buskoppler, ein Slave.
Der Master ist Dein Panel. Wenn Du manuell konfigurierst und keine Verbindung zum Zielsystem hast musst Du, sobald das der Fall ist, die Adaptereinstellungen des Masters anpassen. Außerdem solltest Du über die Topologieansicht des Masters die Firmwarestände kontrollieren und bei einer Differenz entsprechend gegensteuern.
Okay,
das ist anfänglich verwirrend.

Der CP6606 hat eine Ethernet-Schnittstelle wo mein PG dran kommt und eine EtherCat-Schnittstelle an die der EK1100 angeschlossen wurde.
Den EK1100 spreche ich gar nicht direkt an sondern über das CP6606. Daher ist der EK1100 dessen Slave.
Aber sobald ich in Twincat einen Slave anlege kann ich dort keine Busklemmen hinzufügen. Das geht nur wenn ich das als Master mache.

So habe ich es nun hinzugefügt. Der Master der jetzt "CP6606 HMI ..." heißt war für mich vorher nur "Feldbusklemmen". Habe ich nun umbenannt.
Also nach meinem Wissensstand ist der CP der Master, die -101K1 der Koppler als Slave und darunter alle hinter dem Koppler angebundenen Klemmen.
1746875421513.png

Ich bin bisher davon ausgegangen, mangels Wissen, das bei Ethercat ebenso wie bei Ethernet, alles über die IP angesprochen wird. Habe nun gesehen das Adressen von 0..65535 genutzt werden. Da muss ich nochmal genau nachlesen wie das zusammenhängt, also das EtherCat-Protokoll.

Die Tatsache das ich nach dem CP6606 gesucht habe liegt halt an der Siemens-Welt. Dort wird ja genauestens die Hardware festgelegt, in diesem Fall allerdings muss ich das CP behandeln wie eine WinCC-Runtime auf einem PC oder einer VM.


Die Ordnerstruktur im SPS-Knoten ist nur ein Vorschlag und kann beliebig geändert werden.
Wo Du was ablegst ist Dir überlassen.
Es gibt übrigens zwei grundlegende Visus. Die Visu, die im SPS-Knoten abgelegt wird. Diese bezeichne ich als interne Visu. Von dieser gibt es noch die Varianten Target Visu und Web Visu. Mit der kann man schon einiges machen.
Dann gibt es noch den TC3 HMI Server TE/TF2000. Dieser wird als eigenes Projekt in der Projektmappe hinzugefügt. Die HMI ist sehr mächtig, aber auch nicht so einfach zu beherrschen.

Unter SPS - VISUs habe ich das erstellt:
1746876289910.png
Erst den VisualizationManager, dann das CP als HMI, dann einen Ordner, wo ich eigentlich die Bilder ablegen wollte.
Der Ordner Bilder wird im Dateisystem erstellt, da habe ich ein Bild eingefügt. Das wird aber nicht im System angezeigt.
Dann habe ich einen Imagepool hinzugefügt und darin dann auf die Datei im Ordner Bilder auf der Festplatte gezeigt, nun kann ich das Bild nutzen.

Du schreibst es gibt 4 Varianten von Visus?
"interne Visu", TargetVisu, WebVisu, TC3 HMI Server

Ich gehe mal davon aus das ich für meinen Einsatzzweck lediglich die "interne Visu" benötige.
Damit habe ich mich noch nicht weiter nun befasst, außer ein Bild eingefügt.



Diesen Hardwareaufbau, auch wenn ich da Namen eingefügt habe, plane ich wieder zu entfernen, dann das Projekt bereinigen und aus der Steuerung auszulesen. Dann die Verknüpfungen mit den Variablen zu machen die ich mit AT erstellt habe. Das AT musste ich erst suchen, bin davon ausgegangen das ich die alle in der Tabelle eintragen muss aber da gab es nur Probleme mit. (Copy+Paste einer Excel-Liste ist so gar nicht möglich!?).
Letztendlich habe ich aus unserem CAD unsere SPS-Liste exportiert nach Excel, dort dann ein kleines schnelles Makro drüberlaufen lassen und habe somit nun als textuelle Ansicht die Variablen, auch für zukünftige Programme mit von Excel generierten Befehlen. Lediglich ob Global, GVL, Stat, etc. muss ich dann entsprechend anpassen.



Noch ein paar Fragen hätte ich dann noch:

Ich programmiere bisher sehr viel in SCL, Aufrufe in FUP und logische Verknüpfungen wo ein Intandhalter mal bei müsste ebenfalls in FUP.
Diesen Stil würde ich gerne beibehalten, allerdings erschwert TC3 mir das etwas.
FUP:
1746877215412.png
Name und Kommentar sind noch eindeutig, das darunter liegende ? 1 - Soll das nochmal ein Kommentar zum Aufruf darstellen?

Wenn ich im FB Variablen als Output deklariere, dann bekommt die erste immer nur den "Balken" woran ich eine Zuweisung anfügen kann, alle anderen aber haben mit ??? bereits eine Möglichkeit eine Variable anzuschreiben. Wieso ist das so?



ST:
Es gibt keine Autovervollständigung, irgendwie. D.h. ich muss eventuell längere Variablennamen komplett eintippen oder Copy+Paste nutzen.
Wie ist da am einfachsten zu hantieren?
Immer F2 drücken, auf die Suche, einen Teil meiner Variablen eintippen, mit Maus auswählen und OK klicken? Widerspricht so ein wenig der schnellen Eingabe von Text wenn ich jedes Mal F2 drücken muss und die Maus nutze.
 

Anhänge

  • 1746877647287.png
    1746877647287.png
    9,3 KB · Aufrufe: 2
So, lehn Dich zurück, das wird was längeres.
Zunächst was geschlichtliches, äh, was histerisches, also was altes.
Vor etlichen Jahren hat die Firma 3S, in lang Smart Software Solutions, eine SPS Entwicklungsumgebung und eine dazu passende Laufzeitumgebung herausgebracht. Die Entwicklungsumgebung läuft dabei unter Windows, während die Laufzeitumgebung auf verschiedenen Plattformen läuft. Neben Windows zum Beispiel auch unter VxWorks. Das System nannten Sie Codesys. Mittlerweile heißt die Firma wie das Produkt. Sie haben aber keine eigenen Steuerungen hergestellt und vertrieben, sondern Firmen, die SPSen entwickeln wollten, konnten ein, ich nenne es mal, Developer Kit erwerben, welches teilweise auch die Quelltexte enthielt. Die SPS Hersteller konnten nun Codesys nach ihren Bedürfnissen und an die von ihnen genutzte Hardware anpassen. Bei manchen Herstellern war diese Anpassung kaum zu bemerken, bei anderen blieb fast kein Stein mehr auf dem anderen. Zu letzteren Herstellern zählt Beckhoff.
In der Entwicklungsumgebung erfolgt die Erstellung der Konfiguration und die Programmierung und mit der Entwicklungsumgebung wird das Projekt auf die Steuerung übertragen und es können noch andere Dinge gemacht werden.
Die Laufzeitumgebung führt das Programm aus, steuert die Kommunikation mit den IOs und weiteres.
Kommen wir nun zu Deinem ersten Irrtum/Missverständnis.
Der CP6606 hat eine Ethernet-Schnittstelle wo mein PG dran kommt und eine EtherCat-Schnittstelle an die der EK1100 angeschlossen wurde.
Den EK1100 spreche ich gar nicht direkt an sondern über das CP6606. Daher ist der EK1100 dessen Slave.
Aber sobald ich in Twincat einen Slave anlege kann ich dort keine Busklemmen hinzufügen. Das geht nur wenn ich das als Master mache.

So habe ich es nun hinzugefügt. Der Master der jetzt "CP6606 HMI ..." heißt war für mich vorher nur "Feldbusklemmen". Habe ich nun umbenannt.
Also nach meinem Wissensstand ist der CP der Master, die -101K1 der Koppler als Slave und darunter alle hinter dem Koppler angebundenen Klemmen.
Anhang anzeigen 87397
Es gibt keine EtherCAT Schnittstelle, das sind alles einfach Ethernetschnittstellen, die nur unterschiedliche Aufgaben haben (können). Im Falle Deines Panels ist die Aufgabe eines der Ethernetschnittstellen, die Funktionalität eines EtherCAT Masters bereitzustellen. Die Schnittstelle am Panel verschickt einfach Ethernet Frames nach der Norm IEEE 802.3, das können HTTP Daten, FTP Daten, PROFINET Daten sein, wobei diese dann noch in andere Protokolle eingebettet sind, oder halt EtherCAT Daten.
Auf der Slave Seite sieht die Sache schon anders aus. Im Gegensatz zu PROFINET, wo der Slave erst das komplette Datenpaket empfängt ehe die Verarbeitung der Daten startet und ein Antworttelegramm auf den Weg geschickt wird, erfolgt bei EtherCAT die Verarbeitung der Daten im Durchlauf. Der Slave sucht sich während die Daten empfangen werden, die für ihn bestimmten Daten aus dem Datenstrom heraus und fügt während des Durchlaufs Daten für den Master in den Datenstrom ein. Schau Dir mal diesen Wikipedia Artikel zum Thema EtherCAT an.
Damit diese Form der Kommunikation im Slave funktionieren kann, wird, im Gegensatz zum Master, im Slave bestimmte Netzwerkhardware benötigt. Dies ist unter anderem ein ESC, nein, das ist keine integrierte Escape Taste, sondern die Abkürzung steht für EtherCAT Slave Controller. An diesen Spezial IC können bis zu vier Netzwerkschnittstellen angeschlossen werden. Die Topologie bei EtherCAT ist immer eine Linientopologie auch wenn es mal anders aussieht, denn der Ethernet Frame durchläuft nacheinander alle Slaves. Beim letzten Slave wird das Paket dann auf der Sendeleitung vom Ethernet Anschluss wo es angekommen ist wieder zurück zum Master geschickt und durchläuft dabei wieder alle Slaves in umgekehrter Reihenfolge, diesmal aber ohne weitere Bearbeitung.
Deine SPS, welche das Panel ist, kommuniziert direkt mit dem EK1100 und den an diesen angesteckten EL-Klemmen, die jede auch wieder ein EtherCAT Slave ist und einen ESC verbaut hat.
Was hattest Du eigentlich für eine Idee, dass Du geschrieben hast, dass nicht direkt mit dem EK1100 kommuniziert wird?
Wenn Du die Hardware von Hand hinzufügst, musst Du erst einen EtherCAT Master hinzufügen, zu dem eine Ethernetschnittstelle im Panel durch die Konfiguration wird. Dies geschieht durch die Auswahl des hier markierten Objektes.
1747048334027.png
Erfolgte das Hinzufügen der Hardware ohne Verbindung zum Zielsystem musst Du, sobald Du mit dem Panel verbunden bist, noch bei den Adaptereinstellungen des Masters festlegen, welche Ethernetschnittstelle des Panel der EtherCAT Master sein soll.
1747038284171.png
1747038297309.png
Anschließend fügst Du unter dem Master den EK1100 als Slave ein und an diesem dann die Klemmen.
Ich bin bisher davon ausgegangen, mangels Wissen, das bei Ethercat ebenso wie bei Ethernet, alles über die IP angesprochen wird. Habe nun gesehen das Adressen von 0..65535 genutzt werden. Da muss ich nochmal genau nachlesen wie das zusammenhängt, also das EtherCat-Protokoll.
Nein, bei der EtherCAT Kommunikation wird TCP/IP nicht verwendet und es wird somit auch keine IP-Adresse verwendet. EtherCAT liegt direkt in den Nutzdaten des Ethernet Frames. und da gibt es nur eine sogenannte MAC-Adresse, die bei EtherCAT aber nicht wirklich verwendet wird.
Bezüglich des EtherCAT Protokolls kannst Du Dir mal die folgende Beschreibung ansehen.
Ja, bei Siemens muss man auch die CPU konfigurieren, bei TwinCAT 3 entfällt dies bei der Hardware. Bei TwinCAT muss man in der Entwicklungsumgebung an anderer Stelle den Runtime Type angeben.
1747038176806.png
Die Adressierung der einzelnen Slaves macht TwinCAT automatisch, da musst Du Dich nicht drum kümmern. Es gibt Klemmen, da kann man eine Adresse über Drehschalter fest vorgeben und bei den anderen kann man das in der Hardwarekonfiguration, aber das ist in den seltensten Fällen erforderlich.
Ende erster Teil
 
Zuletzt bearbeitet:
Die Ordnerstruktur im SPS-Knoten ist nur ein Vorschlag und kann beliebig geändert werden.
Wo Du was ablegst ist Dir überlassen.
Es gibt übrigens zwei grundlegende Visus. Die Visu, die im SPS-Knoten abgelegt wird. Diese bezeichne ich als interne Visu. Von dieser gibt es noch die Varianten Target Visu und Web Visu. Mit der kann man schon einiges machen.
Dann gibt es noch den TC3 HMI Server TE/TF2000. Dieser wird als eigenes Projekt in der Projektmappe hinzugefügt. Die HMI ist sehr mächtig, aber auch nicht so einfach zu beherrschen.
Unter SPS - VISUs habe ich das erstellt:
Anhang anzeigen 87398
Erst den VisualizationManager, dann das CP als HMI, dann einen Ordner, wo ich eigentlich die Bilder ablegen wollte.
Der Ordner Bilder wird im Dateisystem erstellt, da habe ich ein Bild eingefügt. Das wird aber nicht im System angezeigt.
Dann habe ich einen Imagepool hinzugefügt und darin dann auf die Datei im Ordner Bilder auf der Festplatte gezeigt, nun kann ich das Bild nutzen.
Das ist Dein nächster Irrtum. So etwas wie eine WinCC Runtime gibt es nicht bei TwinCAT. Auf dem Zielsystem, welches in Deinem Fall das Panel ist, läuft die TwinCAT XAR, dass ist die SPS Runtime, die das SPS Programm ausführt.
Du nutzt die interne Visu, ohne Zusstzoptionen, das bedeutet, dass das SPS Programm auf dem Zielsystem läuft, die Anzeige der Visu erfolgt aber in der Entwicklungsumgebung, wenn das SPS Programm auf dem Zielsystem geladen ist und ausgeführt wird und man in der Entwicklungsumgebung auf dem Zielsystem eingelogged ist.
Wurde unter dem Visualisierungsmanager das Objekt "TargetVisualization" hinzugefügt, wird standardmäßig auf dem Zielsystem, wenn alles übertragen wurde, der SPS-Dienst im Run ist und das SPS Programm läuft eine Anwendung automatisch gestartet, in der dann die Visualisierung angezeigt wird. Diese Anwendung kann aber auch auf einem anderen Rechner ausgeführt werden.
Eine andere Variante wird genutzt, wenn unter dem Visualisierungsmanager das Objekt "WebVisualization" hinzugefügt wurde. Dann erfolgt der Zugriff auf die Visualisierung über einen Webbrowser.
Näheres zu dem Thema findest Du hier.
Übrigens der TwinCAT 3 HMI Server TE/TF2000 stellt die Visu auch als Webseite bereit.
Zum TwinCAT 3 HMI Server findest Du hier nähere Infos.
Bei diesem läuft auf dem Zielsystem tatsächlich ein Serverdienst, aber das kann man glaube ich auch nicht mit WinCC vergleichen, da dieser Dienst ja nicht direkt für die Darstellung zuständig ist, aber dafür kenne ich mich leider zu wenig mit Siemens aus.
Bezüglich der Bilder noch ein Hinweis. Wie Du schon selber herausgefunden hast musst Du bei der internen Visu im SPS-Projekt erst einen Image Pool hinzufügen und in diesem die benötigten Bilder. Ich würde die Bilder direkt im Projektordner ablegen, damit meine ich allerdings die Windows Ordnerstruktur auf dem Entwicklungsrechner. Erzeuge am Besten einen Ordner direkt unter dem Ordner wo das SPS-Projekt abgelegt ist. Ich kann jetzt nicht erkennen, wie bei Dir der SPS-Knoten heißt. Mal angenommen Du hast Dein SPS-Projekt "MeineSPS" genannt, dann heißt der Ordner in Windows genau so. In diesem legst Du nun einen Ordner an, den Du z.B. Bilder nennst. In diesen Ordner packst Du dann alle benötigten Bilder. Wenn Du jetzt Bilder aus diesem Ordner dem Imagepool hinzufügst, verwendet TwinCAT einen relativen Pfad und keinen absoluten Pfad, wie z.B. "C:\Users\Ich\Pictures\Bild01.jpg". Das hat den Vorteil, dass die Bilder auch noch gefunden werden, wenn das Projekt von einem anderen Benutzer auf einem anderen Rechner geöffnet wird.
Du schreibst es gibt 4 Varianten von Visus?
"interne Visu", TargetVisu, WebVisu, TC3 HMI Server

Ich gehe mal davon aus das ich für meinen Einsatzzweck lediglich die "interne Visu" benötige.
Damit habe ich mich noch nicht weiter nun befasst, außer ein Bild eingefügt.
Da hast Du mich etwas missverstanden, war aber im gewissen Rahmen auch mein Fehler, sorry. Als interne Visu bezeichne ich die Varianten der Visus, die direkt im SPS-Knoten hinzugefügt werden. Eine deren Varianten bezeichnet Beckhoff wiederum ebenfalls als interne Visu. Damit ist, wie eben schon erklärt, die Variante der Visu gemeint, die nur in der Entwicklungsumgebung angezeigt wird. Die Entwicklungsumgebung läuft meist nicht auf dem Zielsystem, daher würde diese Variante der Visu bei Dir auch nicht auf dem Panel angezeigt werden. Die Varianten TargetVisu und WebVisu könnten auf dem Panel angezeigt werden.
Diesen Hardwareaufbau, auch wenn ich da Namen eingefügt habe, plane ich wieder zu entfernen, dann das Projekt bereinigen und aus der Steuerung auszulesen. Dann die Verknüpfungen mit den Variablen zu machen die ich mit AT erstellt habe. Das AT musste ich erst suchen, bin davon ausgegangen das ich die alle in der Tabelle eintragen muss aber da gab es nur Probleme mit. (Copy+Paste einer Excel-Liste ist so gar nicht möglich!?).
Letztendlich habe ich aus unserem CAD unsere SPS-Liste exportiert nach Excel, dort dann ein kleines schnelles Makro drüberlaufen lassen und habe somit nun als textuelle Ansicht die Variablen, auch für zukünftige Programme mit von Excel generierten Befehlen. Lediglich ob Global, GVL, Stat, etc. muss ich dann entsprechend anpassen.
Die Verknüpfung der Hardwarevariablen mit den entsprechenden I/Os kann auch automatisiert über Pragmas erfolgen, schau dazu mal hier nach.
Global und GVL ist übrigens das Selbe. Bei TwinCAT 3 stehen globale Variablen in sogenannten "Globalen Variablenlisten", kurz GVL, von denen es übrigens mehrere geben kann.
Noch ein paar Fragen hätte ich dann noch:

Ich programmiere bisher sehr viel in SCL, Aufrufe in FUP und logische Verknüpfungen wo ein Intandhalter mal bei müsste ebenfalls in FUP.
Diesen Stil würde ich gerne beibehalten, allerdings erschwert TC3 mir das etwas.
FUP:
Anhang anzeigen 87399
Name und Kommentar sind noch eindeutig, das darunter liegende ? 1 - Soll das nochmal ein Kommentar zum Aufruf darstellen?
Könntest Du mir bitte einmal das Projekt zu dem Beispiel schicken? Ich habe im Moment keine Idee, was das sein soll.
Ende zweiter Teil.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn ich im FB Variablen als Output deklariere, dann bekommt die erste immer nur den "Balken" woran ich eine Zuweisung anfügen kann, alle anderen aber haben mit ??? bereits eine Möglichkeit eine Variable anzuschreiben. Wieso ist das so?
Was den Punkt angeht müsstest Du mit Codesys reden, warum das so ist, denn das stammt von denen. Letzten Endes ist es in FUP so, dass immer nur ein Ausgang eines Bausteins mit dem Eingang eines anderen Bausteine direkt verknüpft werden kann, parallel dazu kann man noch eine oder mehrere Zuweisungen hinzufügen und an diesen dann Variablen angeben. Dies ist der von Dir erwähnte Balken. Natürlich kann man an dieser Stelle statt eines Bausteins auch eine Variable nutzen. Bei allen anderen kannst Du nur eine Variable nutzen, wobei das zum Beispiel auch die Eingangsvariable eines Funktionsbausteins sein kann. Mal angenommen der boolesche Ausgang eines Bausteins soll an die Eingangsvariable IN der Instanz einer Einschaltverzögerung (TON) mit dem Namen Delay01 gehen, der weiter unten in einem anderen Netzwerk ausgeführt wird, dann müsstest Du die Fragezeichen durch Delay01.IN ersetzen.
Was ich selber bisher nicht wusste ist, dass man die Festlegung, welcher Ausgang für eine, wie Beckhoff es nennt, Weiterverschaltung benutzt wird, ändern kann (Wieder was gelernt). Wenn Du auf den Ausgang, der für die Weiterverschaltung genutzt werden soll einen Rechtsklick machst erscheint ein Kontextmenü. Wählst Du in diesem nun den Eintrag "Weiterverschaltung festlegen" aus wird ab jetzt dieser Eingang genutzt. Sind mit dem Ausgang, der bisher dafür genutzt wurde, schon weitere Objekte verbunden, dann werden die Objekte an den neuen Ausgang verschoben. Im Gegenzug wird eine an dem Ausgang schon vorhandene Variable an den anderen Ausgang verschoben. Da das doch etwas verwirrend ist, hier mal kurz ein Beispiel.
Forum_04.png
Jetzt einen Rechtsklick auf den Ausgang mit der Variable xTest02.
Forum_03.png
Nach der Auswahl sieht das Ganze dann so aus.
Forum_02.png
ST:
Es gibt keine Autovervollständigung, irgendwie. D.h. ich muss eventuell längere Variablennamen komplett eintippen oder Copy+Paste nutzen.
Wie ist da am einfachsten zu hantieren?
Immer F2 drücken, auf die Suche, einen Teil meiner Variablen eintippen, mit Maus auswählen und OK klicken? Widerspricht so ein wenig der schnellen Eingabe von Text wenn ich jedes Mal F2 drücken muss und die Maus nutze.
Natürlich gibt es bei TwinCAT in der Entwicklungsumgebung auch Autovervollständigen. Nennt sich im Visual Studio (Die XAE Shell basiert auf der Visual Studio Shell) Intelli Sense. Wie sich dieses aber verhalten soll, muss eingestellt werden. Standardmäßig kommen Vorschläge automatisch nach der Eingabe eines Punktes, also z.B. nach der Eingabe von "Delay01." würde er bei einem TON nun IN, PT, Q und ET vorschlagen. Du kannst die Vorschläge manuell für die aktuelle Eingabe aktivieren, in dem Du, nachdem du schon etwas getippt hast, die Strg Taste und die Leertaste drückst. Soll das von Anfang an automatisch erfolgen musst Du das in den Einstellungen der XAE Shell einstellen. Ich habe leider nicht die aktuellste XAE Shell installiert, denke aber, das wird bei dieser auch noch an dieser Stelle sein. Wähle im Menü "Extras" und dort "Optionen" aus. Dort gehe zu "TwinCAT->SPS Programmierumgebung->Intelligentes Kodieren" und aktiviere dort die im Screenshot markierten Optionen.
Forum_01.png
Ende des dritten und letzten Teils (Beitrag hatte unwesentlich über 10.000 Zeichen).
 
Zuletzt bearbeitet:
Heute bin ich unterwegs bei ner IBN, werde daher erst am Abend richtig dazu kommen.
Die Information das das CE-Panel nur bis 4024 und nicht 4026 funktioniert könnte Beckhoff gern irgendwo hinterlassen, zumindest sehe ich diese nicht in den Informationen irgendwo.
Das ist mMn eins der größten Probleme von Beckhoff die Dokumentation ist entweder nicht gut, oder schlecht zu finden oder gar nicht erst vorhanden....
 
@oliver.tonn
Ich muss mich erneut bei Dir für Deine sehr umfangreichen Information bedanken!

Insgesamt bin ich mittlerweile soweit das ich Soft- und Hardware in Einklang bringen konnte.
Wie geschrieben habe ich die Station Offline entfernt und einfach die Konfiguration ausgelesen. Ich war überrascht das dies bei dieser Hardware so einfach funktionierte.

Die Autovervollständigung mittels "." - daran hab ich nicht mehr gedacht. Nun ist sie immer aktiv und es läuft sehr viel flüssiger beim Tippen.


Die Variablenverknüpfungen sind erledigt (sind nur wenige) und sie können von der HMI aus angesteuert werden, also durch die Visu.
Das ich das Target erst durch den Visualization Manager definieren konnte ist in der Dokumentation schwer zu finden, aber klappt.
Lediglich danach wurde mir mitgeteilt die TF1800-Lizenz wäre nicht vorhanden und gefragt ob ich die Testversion aktivieren will. Nun, da ich an der Stelle nicht weiterkam habe ich sie aktiviert, nun kann bis 20. Mai 2025 die Visu genutzt werden.
Bei TF1800 auf der Beckhoff-Seite steht allerdings
Downloadhinweis: Bitte nur lizenzieren, ist in der Installation von TwinCAT 3.1 – eXtended Automation Engineering (XAE) enthalten.
Das ist mal wieder eine der Stellen wo es hakt. Es gibt in "meinem" Twincat nur eine TF1800-Lizenz und dies ist die Testlizenz. Ich kann eine Datei erzeugen, aber mit welchen Daten. Und einfach reinschreiben "Bitte nur lizenzieren" ist für mich wie ein Schlag ins Gesicht.
Morgen beschäftige ich mich mit jedenfalls dieser Thematik indem ich mich TwinCat-3-Lizenzen aktivieren widme und danach dann mit den Achsen.
Sehr viel zu lesen im Moment.

Was nicht so richtig geht ist die EL7062 mit NC PTP. Also alle 4 Achsen lassen steuern (Online als auch über PLC-Programm(HMI), das ist nicht das Problem. Mein Problem ist, das es nur inkrementelle Encoder hier sind und ich keine Möglichkeit irgendwo finde um eine Referenz am Festanschlag zu machen. Die Dokumentation ist etwas träge, sehr viel kommt aus TC2 und in TC3.1 mit 4024.65 sind einige Dinge anders, wie z.B. COE - die Adressen passen nicht 1:1 zur Dokumentation. Manche Namen haben sich geändert, manche Adressen sind schlicht an anderer Position. Viel Nachlesen und für den eigenen Fall adaptieren eben.
Was für mich am einfachsten wäre, wäre es die Information Motorstrom aktuell (act.current) auswerten zu können, aber dort hänge ich noch mitten im Lesen Dokumentation wie ich das richtig einstellen muss.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Bitte nur lizenzieren, ist in der Installation von TwinCAT 3.1 – eXtended Automation Engineering (XAE) enthalten.

Das bedeutet, daß die TF1800 schon mit der XAE installiert wurde, du brauchst sie nicht extra herunterladen. Um die Visu nutzen zu können, musst du aber die Lizenz kaufen. Oder erstmal die Trial Lizenz beliebig oft um 7 Tage verlängern.

Bei den von Oliver gezeigten Optionseinstellungen würde ich auch "Alle Instanzvariablen in der Eingabehilfe auflisten" aktivieren. Sonst siehst du nach Eingabe von "MeinFB." oder "MeinStruct." nicht die Variablen, die der FB oder die Struktur von Basisklassen geerbt hat.

Und wer CodeSys bzw. TwinCat sagt, muß auch ST sagen. KOP, FUP, CFC und AS sind grottig. Man hat das Gefühl, daß diese Sprachen nur der Vollständigkeit halber unterstützt werden. Ich mache nur aufwändige Verriegelungen von Handfunktionen in CFC und kriege selbst dabei regelmäßig Schreikrämpfe.
 
Die Variablenverknüpfungen sind erledigt (sind nur wenige) und sie können von der HMI aus angesteuert werden, also durch die Visu.
Das ich das Target erst durch den Visualization Manager definieren konnte ist in der Dokumentation schwer zu finden, aber klappt.
Lediglich danach wurde mir mitgeteilt die TF1800-Lizenz wäre nicht vorhanden und gefragt ob ich die Testversion aktivieren will. Nun, da ich an der Stelle nicht weiterkam habe ich sie aktiviert, nun kann bis 20. Mai 2025 die Visu genutzt werden.
Bei TF1800 auf der Beckhoff-Seite steht allerdings
Downloadhinweis: Bitte nur lizenzieren, ist in der Installation von TwinCAT 3.1 – eXtended Automation Engineering (XAE) enthalten.
Von der von mir "interne Visu" genannten Visu gibt es drei Varianten. Bei der auch von Beckhoff "interne Visu" genannte Variante, kann die Visu nur in der Entwicklungsumgebung angezeigt werden und diese ist nicht Lizenzpflichtig, daher wird bei den Lizenzen auch nicht automatisch eine benötigte Lizenz hinzugefügt, weil keine benötigt wird, und es erfolgt beim Aktivieren der Konfiguration auch kein Hinweis.
Dann unterliegst Du wieder einem Irrtum. Das Objekt unter dem Visualisation Manager definiert nicht das Target, sondern welche der beiden lizenzpflichtigen Varianten du nutzen möchtest. Für die dritte Variante muss unter dem Visualisation Manager nichts hinzugefügt werden.
Da "nur" diese beiden Varianten lizenzpflichtig sind, wird erst dann eine Meldung bei der Aktivierung der Konfiguration angezeigt, dass eine Lizenz fehlen würde.
Was @StructuredTrash da geschrieben hat ist soweit richtig, bedarf meiner Meinung nach aber noch weiterer Hinweise. Bei TC3 Versionen < 4026 ist das meiste automatisch in der XAE, also der Entwicklungsumgebung installiert, zum Beispiel die Bibliotheken für die Netzwerkkommunikation, aber das ist nur die eine Seite der Medaille. Dadurch kann man die Funktionalität zwar in seinem SPS-Programm einbinden, aber auf dem Zielsystem nicht unbedingt nutzen. Dafür muss auf diesem das entsprechende TF Paket installiert werden. So paradox es klingen mag, bevor man es auf dem gewünschten Zielsystem installieren kann muss diese Erweiterung, obwohl die Bibliotheken schon vorhanden sind und genutzt werden können, je nach Betriebssystem des Zielsystems zunächst auch auf dem Rechner mit der Entwicklungsumgebung installiert werden. Dies ist der Fall, wenn auf dem Zielsystem ein CE Betriebssystem vorhanden ist, also CE oder WEC. Bei diesen OS kann nicht die EXE-Datei, die von der Beckhoff Webseite heruntergeladen wurde, zum Installieren genutzt werden, sondern es muss eine CAB-Datei genutzt werden. Durch die, auf den ersten Blick sinnlose, Installation des TF-Pakets wird diese CAB-Datei im TwinCAT Ordner abgelegt. Um die Verwirrung noch zu vergrößern, obwohl für TwinCAT 3, werden diese Datein nicht im Unterordner 3.1 abgelegt, sondern sind direkt im TwinCAT Ordner unter dem Ordner "Functions" zu finden. Dort zunächst aufgeteilt in Ordner für das jeweilige TF-Paket und in diesem nochmals für das jeweilige OS.
In dem Zusammenhang noch ein Tipp. Wenn Du bei der Nutzung von FBs aus Bibliotheken immer einen Fehler mit der Fehlernummer 6 (Ziel-Port nicht gefunden – ADS Server ist nicht gestartet oder erreichbar) erhältst kann das unter anderem daran liegen, dass ein Lizenzproblem vorliegt (Die benötigte Lizenz fehlt oder ist abgelaufen) oder das entsprechende Paket ist auf dem Zielsystem nicht installiert.
Das ist mal wieder eine der Stellen wo es hakt. Es gibt in "meinem" Twincat nur eine TF1800-Lizenz und dies ist die Testlizenz. Ich kann eine Datei erzeugen, aber mit welchen Daten. Und einfach reinschreiben "Bitte nur lizenzieren" ist für mich wie ein Schlag ins Gesicht.
Morgen beschäftige ich mich mit jedenfalls dieser Thematik indem ich mich TwinCat-3-Lizenzen aktivieren widme und danach dann mit den Achsen.
Sehr viel zu lesen im Moment.
Naja, was denkst Du denn? Beckhoff möchte erstmal Geld von Dir sehen, ehe es eine Lizenz vergibt. Du kaufst bei Beckhoff eine Lizenz für die Zusatzfunktionen (z.B. TF6310 TwinCAT 3 TCP/IP), dann erhältst Du ein Lizenzdokument mit allen benötigten Daten und kannst eine Lizenz beantragen. In dem Zusammenhang ein Tipp. Nutzt einen Lizenzdongle auf dem Ihr die Lizenzen einspielt. Bei einem defekt der SPS kann so die Lizenz einfacher übertragen werden. Für erste Tests reicht aber auch die Testlizenz. Diese kann für fast alle Funktionen erzeugt werden und beliebig oft neu erzeugt werden. Ist diese abgelaufen, einfach die Konfiguration erneut aktivieren, dann wird auch eine neue Testlizenz erzeugt.
Ich hänge an diesen Beitrag mal den Teil der neuen PowerPoint Präsentation an und dazu den Teil des Scriptes, da die gesprochenen Kommentare noch nicht hinzugefügt sind. Vielleicht hilft das weiter.
Was nicht so richtig geht ist die EL7062 mit NC PTP. Also alle 4 Achsen lassen steuern (Online als auch über PLC-Programm(HMI), das ist nicht das Problem. Mein Problem ist, das es nur inkrementelle Encoder hier sind und ich keine Möglichkeit irgendwo finde um eine Referenz am Festanschlag zu machen. Die Dokumentation ist etwas träge, sehr viel kommt aus TC2 und in TC3.1 mit 4024.65 sind einige Dinge anders, wie z.B. COE - die Adressen passen nicht 1:1 zur Dokumentation. Manche Namen haben sich geändert, manche Adressen sind schlicht an anderer Position. Viel Nachlesen und für den eigenen Fall adaptieren eben.
Was für mich am einfachsten wäre, wäre es die Information Motorstrom aktuell (act.current) auswerten zu können, aber dort hänge ich noch mitten im Lesen Dokumentation wie ich das richtig einstellen muss.
Das musste ich auch erst suchen. Es gibt eine Bibliothek, mit der Du das was Du möchtest machen kannst. Schau mal hier im Infosys nach.
Bezüglich der Nutzung von Achsen habe ich mal ein Beispielprojekt für Azubis erstellt, damit diese auch ohne Hardware spielen können. Für das Projekt benötigst Du nur eine Runtime auf dem Rechner wo die Entwicklungsumgebung läuft. Was Du leider noch machen musst, ist die Konfiguration der Echtzeit anpassen, da Du eine andere Anzahl an Kernen hast als ich. Wähle als Zielsystem zunächst "<Local>" aus. Öffne beim Projekt dafür in der Projektmappe den Knoten "System" und mach hier einen Doppelklick auf den Eintrag "Echzeit". Dann öffnet sich dieses Fenster.
1747113734367.png
In diesem klickst Du auf den markierten Button, dann liest er die benötigte Konfiguration aus, danach kannst Du die Konfiguration aktivieren und loslegen.
Das Projekt nutzt die interne Visu mit der Option Target Visu, dadurch kannst Du auch sehen, wie diese Visu genutzt wird.
Spiel damit mal ein bisschen, falls Du noch Hilfe bei der Bedienung brauchst schreibe ich eine kurze Anleitung.
 

Anhänge

Zuletzt bearbeitet:
jop. Dazu tcpkg config set TcXaeShell, damit du auch alle Pakete für die 32 bit Version bekommst. Danach dann auf jeden Fall den Outdated Feed (https://public.tcpkg.beckhoff-cloud.com/api/v1/feeds/outdated) als weitere Paketquelle einrichten.

Die Remote Manager für die jeweiligen Versionen findest du dann im Outdated Feed mit tcpkg list TwinCAT.StandardRM.XAE --all-versions
Wie bist du denn darauf gekommen? Hab bisher noch nie was von dem Feed gehört.

Und könnt ihr mir sagen, warum ich das über die Kommandozeile machen muss, und es mir in der GUI nix anzeigt? (Outdated ist als einziger Feed aktiv, aber die 64bit-Shell ist auch aktiv. Liegt es daran?)
1747126015003.png
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wie bist du denn darauf gekommen? Hab bisher noch nie was von dem Feed gehört.

Und könnt ihr mir sagen, warum ich das über die Kommandozeile machen muss, und es mir in der GUI nix anzeigt? (Outdated ist als einziger Feed aktiv, aber die 64bit-Shell ist auch aktiv. Liegt es daran?)
Anhang anzeigen 87457
Schaust Du eventuell an der falschen Stelle nach?
Auf dem Screenshot ist "Installed" ausgewählt, für neue Sachen musst Du aber auf "Available" klicken.
 
Schaust Du eventuell an der falschen Stelle nach?
Auf dem Screenshot ist "Installed" ausgewählt, für neue Sachen musst Du aber auf "Available" klicken.
Hmm, "Available" ist aber bei "outdated" komplett leer.
1747127240019.png
Und normalerweise ist es doch so, dass ich Produkte, die ich schon installiert habe eh nicht mehr in "Available" finde. Um hier ein Up- oder Downdrade zu machen muss man sie doch immer bei "Installed" anklicken. Und dann werden sie rechts in der Liste angezeigt.

Wenn es ein Update gibt, dann sieht man das links immer an dem mini-Häkchen mit der Box drum rum. Dann werden sie normal rechts auch unter "Upgrade" einsortiert.

Wenn man aber ein Produkt anwählt, für das es kein Update gibt, dann wird es rechts ohne Vorwarnung unter "uninstall" eingruppiert.

Muss man sich auch fragen, wer sich so was ausgedacht hat…
 
Hmm, "Available" ist aber bei "outdated" komplett leer.
Anhang anzeigen 87458
Bitte entschuldige, das war leider einer meiner berüchtigten Blödsinn Antworten. Ich habe 4026 zwar installiert, arbeite damit aber nicht und hab einfach ins blaue geantwortet.
Wenn man über ein vorhandenes 4024 die 4026 installiert holt er sich vermutlich die Outdated Sachen selber, zumindest sieht es im Infosys danach aus.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Okay, ich habs.

1747127671955.png

Sobald ich bei "Installed" auf den "Standard Remote Manager" klicke kommen rechts 3 (ja, drei!) Einträge für Updates des Standard-Remote-Managers.

Ist das ein Bug oder ein Feature?

PS: Das ganze geht auch, wenn man im Stable-Feed unterwegs ist.

Was ich mich dann hier wieder frage: Ich hab ja den Remote Manager in der Version 4026.14.0. Wie kann ich den Remote Manager denn jetzt Up- oder Downgraden?
deinstallieren kann ich ihn dreimal:
1747127943362.png

Oder würde ich mir damit "TwinCat Standard" deinstallieren?
 
Am besten mal beim Support nachfragen.. mein letzter Stand war, dass 4024 und 4026 nicht auf dem gleichen System installiert sein "können" weil die sich irgendwie beißen.. ist aber auch schon fast ein gutes Jahr her, dass ich damit zu tun hatte
 
Am besten mal beim Support nachfragen.. mein letzter Stand war, dass 4024 und 4026 nicht auf dem gleichen System installiert sein "können" weil die sich irgendwie beißen.. ist aber auch schon fast ein gutes Jahr her, dass ich damit zu tun hatte
Das ist richtig, die 4026 duldet nur sich selber, aber das hat ja nichts mit dem Remote Manager zu, da kann man schon den für 4024 einsetzen.
Dieser dient dazu, zu der im remote Manager ausgewählten Version mit einer aktuelleren Entwicklungsumgebung, einen kompatiblen Steuerungscode zu erzeugen.
Dabei gibt es aber ein paar Stolpersteine. Zum Beispiel werden eventuell die auf der aktuelleren Entwicklungsumgebung vorhandenen Versionen der in dem alten Projekt verwendeten Bibliotheken verwendet, was zu Problemen führen kann.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wie bist du denn darauf gekommen? Hab bisher noch nie was von dem Feed gehört.

Und könnt ihr mir sagen, warum ich das über die Kommandozeile machen muss, und es mir in der GUI nix anzeigt? (Outdated ist als einziger Feed aktiv, aber die 64bit-Shell ist auch aktiv. Liegt es daran?)
Bzgl. des Outdated Feeds: Keine Ahnung, ich glaube im Infosys gelesen oder in einem gemeinsamen Gespräch mitgenommen. Die GUI vom Package Manager finde ich persönlich auch nicht so toll gelungen. Mit der Konsole bin ich deutlich schneller. Es gibt im Testing Feed mittlerweile aber ein Update von der UI, die soll wohl besser sein.

Das ist richtig, die 4026 duldet nur sich selber, aber das hat ja nichts mit dem Remote Manager zu, da kann man schon den für 4024 einsetzen.
Dieser dient dazu, zu der im remote Manager ausgewählten Version mit einer aktuelleren Entwicklungsumgebung, einen kompatiblen Steuerungscode zu erzeugen.
Dabei gibt es aber ein paar Stolpersteine. Zum Beispiel werden eventuell die auf der aktuelleren Entwicklungsumgebung vorhandenen Versionen der in dem alten Projekt verwendeten Bibliotheken verwendet, was zu Problemen führen kann.
Zu beachten ist zusätzlich, dass der 4024 RM immer eine 32-bit XAE erfordert. Mit Version 40265 könnte man reintheoretisch (endlich) in 64-bit arbeiten und könnte die 32-bit Installation weglassen. Für den 4024 RM benötigt man die 32-bit XAE aber auf jeden Fall.
 
Bzgl. des Outdated Feeds: Keine Ahnung, ich glaube im Infosys gelesen oder in einem gemeinsamen Gespräch mitgenommen. Die GUI vom Package Manager finde ich persönlich auch nicht so toll gelungen. Mit der Konsole bin ich deutlich schneller. Es gibt im Testing Feed mittlerweile aber ein Update von der UI, die soll wohl besser sein.

Ich habe den neuen Package Manager jetzt mal installiert. (kann man den "über sich selbst" updaten?) Ich hab mir auf der Homepage eine neue .exe runtergeladen. Dort ist sie nämlich schon verfügbar, auch ohne Testing branch.

Im neuen Package-Manager wird der outdated-feed dann sogar erwähnt (links unten aufs Zahnrad, dann auf "Feeds":
1747136468305.png

Das neue UI ist komplett anders. Definitiv gewöhnungsbedürftig. Aber ich glaube auch deutlich besser. Hier kann man die einzelnen Pakete anwählen.
1747136152126.png
Dann sollte sich rechts ein Tab öffnen, dort auf "Versions"

1747136170864.png

hier kann man dann übersichtlich sehen, welche Versionen installiert sind.

Und auf den ersten Blick scheint das auch zu passen:
In der 64-bit Shell habe ich folgende Auswahlmöglichkeiten:
1747136239914.png
und in der 32-bit Shell (die gleichzeitig auf demselben PC aktiviert und geöffnet ist):
1747136287680.png

So langsam wird 4026 dann ja richtig brauchbar (y)
 
Zurück
Oben