# Erste Hürden im Umgang mit TwinCAT3



## techam (8 Juni 2021)

Guten Tag,

mein Name ist Christian, bin 29 Jahre alt, komme aus dem Emsland und studiere Maschinenbau.
Nun steht ein Projekt an, bei dem geplant ist eine CNC-Maschine mittels Beckhoff TwinCAT3 Steuerung aufzubauen und zu diesem Zweck arbeite ich mich momentan in die Grundlagen der Steuerung ein.

Bisher habe ich nur Erfahrungen mit wesentlich weniger komplexen Steuerungen wie Marlin auf dem Arduino an einem 3D-Drucker und EdingCNC an einer kleinen CNC-Portalfräsmaschine sammeln können.

Zum üben habe ich eine Einheit bestehend aus:

Rechner mit TwinCAT3 XAEShell
Version 15.0.28010.2050
Build 4024.7

und einem Teststand aus folgenden Beckhoff-Komponenten:
- AX5206-0000 Servomotortreiber
- AM3033-0E00-0000 Servo
- EK1100
- 2x EL2400
- 2x EL1014
- EL4004
- EL3064

- Meanwell MDR-60-24

Dazu habe ich einige Übungen erhalten.

Nun stoße ich natürlich immer wieder auf Fragen, Unklarheiten und Probleme und ich hoffe ihr könnt mir dabei behilflich sein.

Aktuell komme ich bei folgendem Problem nicht weiter und weiß leider auch nicht so recht, was ich falsch mache.

Plan ist es ein Programm per Kontaktplan zu schreiben, mit einem Eingang (Taster) und einem Ausgang (LED) welche an der EK1100 Klemme angeschlossen sind.

Jedoch bereits bevor ich zum erstellen des eigentlich Programms komme, entstehen folgende Fehler:
Nach dem Scannen nach Geräten, klicke ich mich durch die entsprechenden Fenster, nach der Übungsanleitung

Die Anleitung empfielt bei:
AX5000 [...] devices are found. Scan Motors?... mit Nein fortzufahren.
Bis dahin ist auchnoch alles gut, wenn ich dann im nächsten Fenster ( EtherCAT drives added) auf Cancel klicke, wie es die Anleiung empfielt, dann bekomme ich im Fehlerfenster drei mal folgene Meldung:
Datum Zeit | 'Klemme2 (EK1100)': recieved invalid DC timings!

Wenn ich darauf hin dann Free Running aktiviere, geht die Servoendstufe in einen Fehler:
Undervoltage Id: 0xED43

Ich kann dann zwar weiter mein Programm schreiben, auch Ein und Ausgang zuweisen, aber nachdem ich in den Run Modus gewechselt habe, kann ich mich nicht in die Steuerung einloggen.

Ich habe jetzt schon einiges versucht, das Beispielprogramm einige dutzend mal neu programmiert und auch im Netz nach antworten gesucht.
Laut Beckhoff Informationsystem liegt der Fehler im DC-Link (https://infosys.beckhoff.com/english.php?content=../content/1033/tcncerrcode2/index.html&id=)
Wirklich schlauer bin ich dadurch jedoch noch nicht.

Daher wäre ich sehr dankbar, wenn jemand eine Ahnung hat, woran das liegen kann.

MfG Christian


----------



## Mrtain (9 Juni 2021)

Hallo Christian,

möchtest du dir KOP wirklich antuen? KOP hat ja durchaus seine Berechtigung, aber wenn du schon Erfahrung mit dem Arduino gemacht hast, wäre da nicht ST die bessere Wahl für dich?

Bei “Undergoltage“ würde ich mal schauen, ob die Spannungsversorgung des Servoreglers in Ordnung ist ( Steuerspannung und Leistung).

Bin aber auch nicht unbedingt der Experte was Beckhoff bzw. Twincat angeht


----------



## Frohnius (9 Juni 2021)

hi,
ich tippe ebenfalls auf probleme / fehlende stromversorgung / gnd der baugruppe ...
und wirf mal einen blick auf dein io-mapping ...
codesys kann automatisch die io's mappen wenn aktiviert ...
z.b. bei digital i/o kann das iw0 - word gemappt sein ... werden aber die einzelnen bits zusätzlich gemappt kommen wirre fehlermeldungen ...

achja .. edit ... 
und in jedem fall rate ich dir ebenfalls, wie Mrtain schon schreibt, in ST zu programmieren ... !!!!


----------



## Guga (9 Juni 2021)

Da wirst du eine gewaltige Lernkurve hinlegen müssen.
Programmierst du lokal oder ist dein Steuerungsrechner ein Remote-Rechner? Was für ein Teil ist der Steuerungsrechner?

Die Servo-Fehlermeldung kommt daher dass du die 400V/230V Versorgung nicht aktiv hast. Du könntest im DriveManager dir das Spannungspegel auch das anschauen aber eigentlich sagt die Meldung dir das ja schon alles.
 Guga


----------



## techam (9 Juni 2021)

Vielen Dank schonmal für eure Antworten.

Im Kontaktplan programmiere ich zum aktuellen Zeitpunkt, da das Teil der Übungen ist. Erste Übungen sind zum KOP, später kommt dann auch ST hinzu. Nur bis dahin komme ich aufgrund des aktuellen Fehlers leider garnicht erst.

Und in der Tat habe ich da noch Einiges vor mir, aber dazu mache ich das ja auch, um etwas Neues zu lernen. Leicht wird das bishin zur funktionstüchtigen CNC-Steuerung natürlich nicht.

Damit ihr euch etwas besser vorstellen könnt, wie das Ganze aussieht, hier mal ein Bild des Übungsaufbaus:



Diese Einheit habe auch nicht ich aufgebaut, sondern ein Elektroingenieur, der sich damit auskennt. Das hat auch auf alle Fälle schonmal funktioniert und die gleichen Übungen wurden damit schon vielfach abgearbeitet. Aufgrund der aktuellen Corona-Lage sind die Labore jedoch geschlossen und ich musste die Einheit mit nach Hause nehmen um mich einzuarbeiten.

Rechner ist ein:
Win10 64bit 1909
i5 7400
4GB RAM
TwinCAT-Intel PCI Ethernet Adapter

Der Rechner ist dediziert nur als Steuerungsrechner und hat vorher auch mit der Steuerung funktioniert. Alles findet lokal statt und die gesamte Einheit ist nicht mit weiteren Netzwerken verbunden.

Ich werde mal jetzt als erstes mal die 240V-Versorgung überprüfen, ob sich dort vielleicht beim Transport etwas gelöst hat.

MfG Christian


----------



## DeltaMikeAir (9 Juni 2021)

Auch wenn es nur ein Testaufbau ist aber vielleicht in Zukunft die zulässige Einbaulage beachten:


----------



## jensemann (9 Juni 2021)

DeltaMikeAir schrieb:


> Auch wenn es nur ein Testaufbau ist aber vielleicht in Zukunft die zulässige Einbaulage beachten:
> Anhang anzeigen 54791
> 
> 
> Anhang anzeigen 54790


vertikale Einbaulage wohl hauptsächlich aus thermischen Gründen, die man bei so einem Übungsaufbau vernachlässigen könnte.
Aber du hast recht, mir kam bei dem bild gleich etwas komisch vor 

@OP: die Frage "Scan Motors?" sollte man nur mit Nein beantworten, wenn kein Motor angeschlossen ist. Man kann den Motor auch später noch scannen bzw. manuell hinzufügen aber man kann sich auch ein paar Klicks sparen. Erfahrungsgemäß erkennt der Drivemanager sehr zuverlässig besonders die Beckhoff-Motoren und macht die ersten Einstellungen automatisch so dass man danach (Reglerfreigabe vorausgesetzt) schon im Drivemanager den Motor testweise bewegen kann.


----------



## oliver.tonn (9 Juni 2021)

Gibt es denn beim Versuch Online zu gehen irgendwelche Fehlermeldungen?
Weil das Zielsystem ist ja erreichbar, sonst hättest Du ja nicht in den Run-Modus wechseln können. Die gefundene Hardware hast Du auch aktiviert?


----------



## oliver.tonn (9 Juni 2021)

Ansonsten könntest Du den AX5000 mal aus dem Bus nehmen und es dann erneut probieren. Da die anderen Komponenten aber nicht zwingend Distributed Clock benötigen sollte der DC Fehler sich eigentlich nicht auswirken.


----------



## techam (9 Juni 2021)

Mit Online gehen ist sicherlich das Einloggen in die Steuerung gemeint?
Leider komme ich garnicht erst soweit, sobald ich im Verlauf der Übung an den Punkt komme, dass ich mich eigentlich einloggen müsste, ist dieses nicht möglich, da der entsprechende Button ausgegraut ist.

Was genau ist mit dem aktivieren der gefundenen Hardware gemeint?

Ich habe jetzt mal bei "Scan Motors?" auf Ja geklickt, dann gibt mir der Servoverstärker sofort eine Fehlermeldung:
Error Id: 0xF148 (Systeminitialisierung: Frontkarte: UnbekanntesFeedback-System)
Error Id: 0xF140 (Systeminitialisierung: Fehlgeschlagen)

Danach ist dann alles wie im Eingangspost beschrieben, wenn ich beim nächsten Fenster auf Cancel klicke bekomme ich zunächst die invalid DC-timings Warnung und beim start von Free Running den Undervoltage Fehler.

Mit der Einbaulage ist ein guter Hinweis, wenn ich später irgendwann mal die CNC-Steuerungs aufbauen sollte, dann werde ich das beachten. Bei diesem Testaufbau kann ich das leider nicht ändern, daran darf ich nicht herumschrauben.

Ich habe jetzt mal die 240V Versorgung überprüft und kann keine Fehler finden, Spannung liegt überall an und Stecker und Kabel sind auch nicht lose. Habe alles sogar nochmal in der Werkstatt getestet, dort ist eine wesentlich neuere Elektroinstallation.

Mit aus dem Bus herausnehmen ist sicherlich gemeint, den Steuerungsrechner direkt mit der EK1100 Klemme zu verbinden ohne verbindung zum AX5000?
Leider ist es mir nicht erlaubt etwas an der Verkabelung der Testeinheit umzuändern. Dafür musste ich unterschreiben.
Auch sehe ich mich zum aktuellen Zeitpunkt definitiv noch nicht in der Lage derartig tief dort einzugreifen, wie ihr sicherlich schon gemerkt habt bin ich auf dem Gebiet der Beckhoff SPS und EtherCAT noch ein absoluter Neuling.

Wenn der Fehler sich nicht damit erklären lässt, dass ich irgendwo einen Fehler mache oder einen Schritt vergessen habe, werde ich mit der Einheit wohl oder übel in die Hochschule zurück und es dort mit einem Verantwortlichen zusammen anschauen müssen. Das kann in der aktuellen Zeit aber leider sehr lange dauern...

MfG Christian


----------



## Guga (9 Juni 2021)

wenn du schnell bist und den Rechner ans Internet bekommst dann starte dort in den nächsten 45 Minuten Teamviewer (beim Starten der *.exe wirst du gefragt "starten oder installieren". Starten reicht aus). und schicke mir eine Tel-Nummer per PN. Ich rufe dich dann an und schau remote auf deine Kiste. Ansonsten befürchte ich wird das nichts.
Guga


----------



## oliver.tonn (9 Juni 2021)

techam schrieb:


> Mit Online gehen ist sicherlich das Einloggen in die Steuerung gemeint?
> Leider komme ich garnicht erst soweit, sobald ich im Verlauf der Übung an den Punkt komme, dass ich mich eigentlich einloggen müsste, ist dieses nicht möglich, da der entsprechende Button ausgegraut ist.
> 
> Was genau ist mit dem aktivieren der gefundenen Hardware gemeint?


Oh Mann, sind die Fragen wirklich ernst gemeint? Falls ja, frage ich mich was man Euch überhaupt über die Bedienung/Benutzung von TwinCAT  3 beigebracht hat. Du solltest vielleicht die Hardware erstmal links liegen lassen und im Infosys von Beckhoff Dir dieses Einführungsprojekt anschauen, das kommt ohne Hardware aus.
Zum Thema wie man die Hardware aktiviert, durch Klicken auf den markierten Button:


Übrigens kannst Du Dich nur einloggen, wenn der SPS-Dienst Deines Zielsystems im RUN ist, sprich das Kästchen neben dem markierten gedrückt ist. Das macht TwinCAT allerdings schon automatisch wenn Du die Hardware aktivierst.


----------



## techam (9 Juni 2021)

Hey Guga, 
vielen Dank für das Angebot, da war ich wohl nicht schnell genug.

Ja, die Fragen sind schon ernst gemeint.
Ich kannte bisher nur die Begriffe 'Einloggen' und 'Kompilieren' für diese beiden Funktionen, daher habe ich lieber nachgefragt.

Was man mir bisher beigebracht hat lässt sich leicht beantworten: Hier sind Übungen, versuchen Sie's.
So ist das leider aktuell mit Corona, wäre mir auch lieber wenn ich klassisch im Labor diese Dinge unter Anleitung lernen könnte, statt mir stundenlang im Selbststudium den Kopf zu zerbrechen, aber so ist das nunmal.

Besprechungstermine per Videokonferenz bekommt man leider auch nicht jeden Tag und wartet da teilweise Wochen drauf. Bleibt nur in den sauren Apfel beißen und hier um Hilfe zu fragen, wenn man vorankommen möchte. 

Morgen habe ich aber die Möglichkeit mich in eine Videokonferenz mit einzuklinken wo es ebenfalls um die Beckhoff Steuerung geht, vielleicht bekomme ich dort einen Lösungshinweis.

Aber vielen Dank schonmal für den Hinweis mit dem Einführungsprojekt, das hilft mir sicherlich einige Grundlagen zu verstehen, da werde ich mich gleich mal dransetzen.

MfG Christian


----------



## oliver.tonn (9 Juni 2021)

techam schrieb:


> Ja, die Fragen sind schon ernst gemeint.
> Ich kannte bisher nur die Begriffe 'Einloggen' und 'Kompilieren' für diese beiden Funktionen, daher habe ich lieber nachgefragt.


Hallo Christian,
weder das Eine noch das Andere hat etwas damit zu tun. Kompilieren hieß bei TC2 "übersetzen" und bei TC3 "Projektmappe erstellen" und hat lediglich Dein Programm übersetzt. Einloggen hieß bei beiden Systemen schon immer einloggen und damit ging man Online auf die SPS, soweit dabei festgestellt wird, dass auf der SPS noch kein Programm oder ein anderes sich befindet erfolgt noch die Frage, ob das aktuelle eingespielt werden soll. Bei einem bereits vorhandenen Programm hat man dann noch die Auswahl zwischen Online Change und Download oder aber gar nichts herunterladen.
Damit das System auch die Hardware kennt muss diese aktiviert werden, selbst wenn man keine I/Os hat muss das erfolgen, da darüber auch die Lizenzen abgefragt werden und die Task angelegt wird. In TC2 hieß das "Aktiviert Konfiguration" und das Symbol sah wie ein Würfel aus, weswegen manche auch von Würfeln reden wenn sie das Aktivieren meinen. In TC3 heißt es "Konfiguration aktivieren".


----------



## techam (9 Juni 2021)

Danke für die kleine Historie zu den Begriffen, das macht es sicherlich leichter in Zukunft den Tutorials zu folgen, wenn dort die unterschiedlichen Begriffe auftauchen.


----------

