# Schrittmotoransteuerung mit der Klemme  KL2531 TwinCat



## Wischnor (15 November 2007)

Hallo ,
  ich versuche schon seit Tagen verzweifelt einen Schrittmotor mit der Klemme KL2531 http://www.beckhoff.de/default.asp?busterm/kl2531.htm
  und dem Buskoppler BK9500 http://www.beckhoff.fr/default.asp?busterm/bk9500.htm
in Betrieb zu nehmen.

  Mein Problem ist es, ich weiß nicht wie ich den Schrittmotor ansteuern kann.
  Ich habe im Internet seit Tagen versucht nützliche Informationen zu finden, die weiterhelfen.
  Bin auf eine Bibliothek gestoßen die TcMC.lib heißt.
  Durch einen Telefont zu Beckhoff erführ ich das die Library  nur im "TwinCat NC" zur Verfügung steht.
  Meine Frage ist, gib es überhaupt eine Möglichkeit mit dem „normalen“ TwinCat, der als 30 Tage Demo zur Verfügung steht einen Schrittmotor anzusteuern?
  Wenn ja bitt ich um Hilfe, denn die Beispiele die sonst vorhanden waren, für andere Klemmen, gibt es für die KL2531 leider gar nicht, oder ich bin blind.

  Es gibt bei der ganzen Sache noch ein Haken, das KS2000 ist für den Buskoppler BK9500 nicht kompatibel. Steht so in der Hilfe von KS2000 und ich habe mich auch selbst überzeugen können, dass die Software KS2000 jedes Mal beim Einloggen  versagt.
  Meine Frage hier ist ob man mit der KS8000 ( die ich morgen hoffentlich bekomme in der Uni) auch alles so konfigurieren kann wie mit der KS2000.


  Danke im Voraus für die Antworten

  Mit freundlichen Grüßen
  Wischnor


----------



## trinitaucher (16 November 2007)

Also laut InfoSystem (http://infosys.beckhoff.com/index.php?content=content/1031/bk9500/html/bt_bk9500 ks2000 config.htm) kann man den Koppler mit der KS2000 konfigurieren  Wo in der Hilfe steht denn das Gegenteil?
Die KS8000 ist keine Software wie die KS2000, sondern lediglich eine Bibliothek für Zugriffe aus einem Anwenderprogramm auf eine bestimmte Art von Kopplern!


----------



## Wischnor (16 November 2007)

Hey, wenn man sich die Hilfsdatei von KS2000 herunterläde ftp://ftp.beckhoff.com/Software/TwinCAT/Infosystem/1031/chm/KS2000.chm

unter dem Menupunkt: Inbetriebnahme und Diagnosedaten mit KS2000 ->Notwendige Firmware für Inbetriebnahme:
Wird eine Liste aufgelistet, in der Mitte der Hilfsdatei steht USB - BK9500 - nicht unterstützt.

Aus diesem Grund funktioniert es nicht, denke ich mal

cu


----------



## ge_org (16 November 2007)

Bei mir läuft eine 2541 auf einem BC9100, Steuerung erfolgt über Kontroll und Statuswort wie in der Bedienungsanleitung beschrieben. Die Register die du komfortabel über KS2000 ansprechen kannst, kannst Du aber auch direkt über das Programm ansprechen (ist halt aufwändiger). Es sollte daher möglich sein ohne TwinCat NC oder Libraries die KL2531 zu Fuss zu programmieren.

Georg


----------



## Wischnor (16 November 2007)

-Ich bin ein Student und habe vorher noch nie mit einer SPS gearbeitet, gibt es ein Beispiel, wie ich ein 9V Schrittmotor mit er oben genannten Konfiguration ansteuern kann? 
-Muss ich mich um die 9V kümmern, oder regelt das die SPS für mich( meine Meinung ist, das ich mich darum kummern muss) aber wie kriege ich dann die steilen Flanken her?

Danke im Voraus

Wischnor


----------



## Wischnor (16 November 2007)

Ich habe herausgefunden, um die Spannung von 24V auf 9V herabzusenken benötige ich eine KL9100. Soweit sogut, die werde ich auch bald bekommen.
Aber ich benötige troztdem ein Beispiel für die Ansteuerung.
KS2000 funzt weiterhin nicht, wie oben schon erwähnt.

Bitte um Hilfe


----------



## nekron (20 November 2007)

Hi ...

also die Schrittmotorklemme laeuft auch mit einem BC/BX (hab ich hier selbst zig-mal am laufen um einen anderen Schrittmotorcontroller zu ersetzen)

Entweder rufst du mal beim Beckhoff-Support an, die Schicken dir einen Quellcode zu womit alle Parameter einzustellen sind und die diversen Funktionen anzusteuern sind oder du schreibst hier, dann kann ich es morgen oder uebermoren per email schicken ...

Tschau
  michael


----------



## Wischnor (20 November 2007)

Hey, wenn du mir einen Quellcode schicken würdes, womit ich mein Problem in den Griff kriegen würde, das wäre super.

Ich heute wieder mal versucht das ding in den betrieb zu nehmen, leider muss ich das SB.0 bit setzten, ohne ks2000, weiss ich das ja leider nicht.

also wenn du mir was schicken könntest, das mir weiterhilft,
wäre ich dir sehr dankbar.

mit freundlichen grüßen
Wischnor.


----------



## ge_org (21 November 2007)

Was musst Du eigentlich mit dem Schrittmotor machen?
Du hast zwar eine KS2000 zur Verfügung mit der du einen Schrittmotor in Betrieb nehmen könntest, hättest Du den richtigen BK.
Aber wie soll das Ding automatisiert (?) angesteuert werden, wenn Du KS2000 hast(Lizenzkostenpflichtig), sollte PC-Control doch auch vorhanden sein.
Da Du Hilfe-Dateien lesen kannst (ist ja bewiesen) dürfte eine Ansteuerung der KL2531 keine Probleme bereiten.
Geht eigentlich die Parametrierung der Klemme mit der KS2000?
Georg


----------



## Wischnor (21 November 2007)

Hey, die Parametrierung geht leider nicht mit der KS2000. 
Da es sich um ein Projekt der UNI Bochum handelt, habe ich keine Probleme mit den Lizenzen, da wir alles nötige zur Verfügung gestellt bekommen haben.

Leider steht über die Klemme KL2531 keine alternative Parametrierung. Das ist das ganze Dilemma.


----------



## nekron (25 November 2007)

Hier ein Export-File eine Beckhoff-Beispieles der KL25x1 mit einem BC/BX ...

Beim BC muessen die PLC->KL25x1 Variablen noch i/o-bereichen zugeordnet werden, da bei den kleinen Systemen ja nicht mit dem System-Manager zur Konfiguration gearbeitet wird ...

also sowas ala ...

VAR_GLOBAL
 X_KL25x1_To_PLC AT %IB0: KL25x1_To_PLC;
 X_KL25x1_To_IO AT %QB0: KL25x1_To_IO;

END_VAR

Viel Spass mit der Klemme, falls noch fragen sind einfach stellen 

michael


----------



## trinitaucher (25 November 2007)

Hallo!
Die Parametrierung sollte auch ohne die KS2000 über die Registerkommunikation möglich sein.
Schau doch mal unter infosys.beckhoff.com unter:
-> Feldbuskomponenten -> Busklemmen -> KL2531 -> Zugriff aus dem Anwenderprogramm -> Control- und Status-Byte (dort unter "Registerkommunikation")

Dort steht auch ein Beispiel.


----------



## Wischnor (27 November 2007)

Hey, danke für die Hilfe. Aber irgendwie bin ich nicht in der Lage das zum Laufen zu kriegen. Ich kriege diese Gelbleuchtende Lampe nicht aus. das ist die Stall detect mit dem Parameter  SB.0 soll ich auf 1 setzen. Aber ich kann auf den Registereintrag nicht zugreifen.

Hat jm ein Programm, das mir zeigt wie ich darauf zugreifen kann ein Beispiel.

Wäre sehr hilfreich.

DANKE IM VORAUS


----------



## ge_org (28 November 2007)

Vielleicht hilft es wenn du CB.0 auf 1 setzt.


----------



## Wischnor (28 November 2007)

Klar will ich das machen, aber ich weiss nicht wie ich auf CB zugreifen kann, das ist doch das problem.


----------



## ge_org (28 November 2007)

Du probierst seit fast 2 Wochen einen Schrittmotor zum Laufen zu kriegen, hast Code zum Ansehen bekommen, bekommst alles an Beckhoff-Lizenzen was du brauchst (deine Aussage) und bist noch keinen Schritt weiter?
Wie wäre es wenn du die einfachen Beispiele in TwinCat probierst(sind in der Hilfe zu finden-Erste Schritte), dann tust du dir sicher leichter.


----------



## trinitaucher (29 November 2007)

Es gibt in TwinCAT PLC-Control die Bibliothek "TcPlcCoupler", in der befindet sich der Baustein "ReadWriteTerminalReg". Mit diesem kannst du in Kombination von System-Manager und PLC-Control die Klemme parametrieren. Ohne KS 2000!
An den Baustein werden das Control- und Status-Byte der Klemme, sowie, im Fall der KL2531, die Bytes "Position" und "Velocity", denke ich mal, angelegt.
Der Baustein macht dann nichts anderes, als das höchstwertigste Bit im Control-Byte zu setzten (das bedeutet für die Klemme "Parametriermodus"). Bit-Nr. 7 bedeutet dann "lesen" oder "schreiben". Die Bits 6 bis 1 kennzeichnen das Register.
Du kannst über den System-Manager, z.B. im Free-Run-Modus, das alles von Hand machen, oder nutzt den Baustein mit PLC-Control.

Das alles hab ich jetzt nach ein bisschen Rumsuchen im InfoSystem gefunden.
Mein Link von oben + http://infosys.beckhoff.com/index.p...clibcoupler/html/tcplclibcoupler_overview.htm


----------



## Wischnor (9 Mai 2008)

Hier ist das fertige Programm zum Ansteuern eines Schrittmotors mit C# für Eingabeparameter.

Sowie das Orignal SchrittmotorProgramm mit Beckhoff-visualisierung


Viel Spaß damit

cu


----------



## Wischnor (9 Mai 2008)

Have Fun Titan


----------



## ingenieuse (2 Juli 2008)

*Dringende Hilfe benötigt!*

Hallo zusammen!
ich dreh nächstens durch!!! auch ich versuche einen Schrittmotor per KL2541 von Beckhoff anzusteuern. den trick mit ReadWriteTerminalReg kenn ich schon.. nur hab ich keine Ahnung wie ich die Register richtig schreiben muss!! hab mal sowas versuchtwie in der Angehängten Datei..aber irgendwie krieg ich nichts vernünftiges raus! auch weiss ich nicht ob ich z.B. das CW.2 so richtig "0" setzen kann!

ich hab so gut wie keine ahnung vom Programmieren auf Registerbasis.. ansonsten komm ich mit dem TwinCat PLC recht gut zurecht!

ich hoffe schwer, dass mir jemand helfen kann!
danke im voraus herzlichst!!


----------



## ram (26 Dezember 2013)

Hallo,

ich wollte eine Referenzierung (Homing) machen.
Dazu muss man einfach in Register 7 das Kommando 0x0520 schreiben.
Das funktioniert aber bei mir nicht. Ich kann in andere Register schreiben. Ich kann sogar in Register 7 das Kommando 0x7000 schreiben, dazu muss aber zuerst das Anwender-Kodewort 0x1235 in Register 31 eingetragen werden. Das ist aber beim Kommando 0x0520 nicht nötig (Steht zumindest in der Anleitung). 
Es funktioniert weder mit noch ohne vorherige Kodewort eingabe.

Ich schalte die Signale direkt über TwinCat 3 in dem ich die I/O's ansteuere, also ich benutzte nicht die Software KS2000.
Andere Betriebsarten wie z.B. Fahrauftrag (einfach) funktionieren.

Ich wäre Dankbar für eure Hilfe


----------



## ostermann (24 Januar 2014)

Die Anteilung aus der Klemmendoku hast du beachtet? Es ist nicht damit getan, nur das Kommando 0x0520 in das Kommando-Register zu schreiben.

[h=5]Beispiel[/h] In dem folgenden Beispiel wird eine Referenzierung durchgeführt.


Tragen Sie über Registerkommunikation die Parameter in die Register RP0.R40, RP0.R50, RP0.R53, RP0.R54, RP0.R55 und RP0.R56.
Setzen Sie im Control-Byte das Bit CB.0 auf 1[SUB]bin[/SUB], um die  Motoransteuerung freizuschalten.
Tragen Sie über Registerkommunikation das Kommando 0x0520 in Register  R7 ein, um die  Referenzierfahrt vorzubereiten.
Die Prozessausgangsdaten DataOUT müssen jetzt Null sein,  damit die Referenzierung gestartet werden kann.
Die beide digitalen Eingänge dürfen zu Beginn der Referenzfahrt nicht  angesteuert sein, da sie miteinander oder-verknüpft sind!
Setzen Sie im Control-Byte das Bit CB.2 auf 1 um die Referenzierung zu  starten. Die Schrittmotorklemme fährt den Motor jetzt mit der Geschwindigkeit  v[SUB]ref,b[/SUB] in negativer Richtung auf den Endschalter zu (falls das Bit RP0.R52.0 gesetzt ist mit  der Geschwindigkeit v[SUB]ref,f [/SUB]in positiver Richtung).
Erkennt die Klemme das Erreichen der Nocke durch eine steigende Flanke an  einem der beiden Eingänge, stoppt sie den Motor mit der Notfall Beschleunigung.
Anschließend fährt die Schrittmotorklemme den Motor mit der Geschwindigkeit  v[SUB]ref,b[/SUB] in entgegengesetzter Richtung.
Erscheint an dem angesteuerten digitalen Eingang jetzt eine fallende Flanke  (Motor ist von der Nocke gefahren), stoppt die Klemme den Motor mit der Notfall  Beschleunigung.
Die Klemme meldet jetzt durch Setzen des Bits SW.3 im Status-Wort die erfolgreich  abgeschlossene Referenzierung. Gleichzeitig wird die in RP0.R55 und RP0.R56 konfigurierte  Referenzierposition als Ist-Position gesetzt.
Löschen Sie im Control-Byte das Bit CB.2 um die Referenzierung  abzuschließen.
Die Klemme quittiert dies durch Löschen des Bits SW.3.

Mit freundlichen Grüßen
Thorsten Ostermann


----------



## ostermann (24 Januar 2014)

Doppelpost gelöscht.


----------

