Programmerstellung Fragen

Programmerstellung Fragen

Postby restamm » 13 Mar 2012, 19:58

Guten Tag,

und zwar bräuchte ich ein paar Tips zum steuern eines PANdrive PD-109-57. Der Motor ist vorhanden und wurde von mir auch schon mal kurz mit der Software über den PC angesteuert.
Der Schrittmotor soll einen Drehteller positinieren, auf dem sich Teile befinden, die dann wieder abgenommen werden. Der Drehteller müsste sich als einfachste Variante immer nur um 45° drehen. Könnte ich als Impuls für eine Drehung irgend ein Eingang auf auf meinem Schrittmotor nehmen? Ich möchte also mit einem High-Signal von einer Sps den Schrittmotor um 45° / 3200 Schritte verfahren lassen. Dann soll der Motor in dieser Position pausieren bis wieder ein High-Signal kommt und er wieder 3200 Schritte verfährt.
Wie würde ein TMCL Programm dafür aussehen.

Anmerkung: Der Drehteller sollte langsam angefahren werden und langsam gebremst werden!

Oder ist es leichter den PANdrive gleich über die Sps zu steuern? Nur habe ich leider keine Ahnung wie ich das machen soll.
Als SPS steht eine S7-300 zur verfügung.

Danke im Vorraus

Rene
restamm
User
User
 
Posts: 7
Joined: 13 Mar 2012, 19:24

Re: Programmerstellung Fragen

Postby Olav Kahlbaum (TRINAMIC) » 14 Mar 2012, 08:47

Das läßt sich mit einnem kleinen TMCL-Programm einfach und schnell machen. Die Forderung, daß der Motor langsam beschleunigt und gebremst wird, kann man durch geeignete Wahl des Beschleunigungswertes (SAP 5) erreichen. Die Eingänge kann man mit dem Befehl GIO abfragen. Dies sieht dann für den Eingang IN_0 (Anschluß 2, Klemme 6) z.B. folgendermaßen aus:

Code: Select all
        SAP 4, 0, 500    //Geschwindigkeit setzen
        SAP 5, 0, 50     //Beschleunigung setzen

Loop:   GIO 0, 0         //Eingang IN_0 abfragen
        JC ZE, Loop      //weiter abfragen wenn nicht High
        MVP REL, 0, 3200    //um 45° weiter drehen
        WAIT POS, 0, 0      //warten bis Position erreicht
        JA Loop          //Eingang weiter abfragen


Am Anfang werden Geschwindigkeit und Beschleunigung gesetzt (diese Werte ggf. durch die für Sie passenden ersetzen), und dann wird in einer Schleife der Eingang abgefragt. Wenn dieser High ist (der GIO-Befehl also 1 als Wert zurückliefert), dann wird die Achse um 3200 Mikroschritte weitergedreht. Danach geht es wieder weiter mit der Abfrage des Eingangs.
User avatar
Olav Kahlbaum (TRINAMIC)
Site Admin
 
Posts: 3359
Joined: 11 Aug 2006, 08:02

Re: Programmerstellung Fragen

Postby restamm » 14 Mar 2012, 18:47

Vielen dank für die Hilfe!
Echt super, dass man so schnell eine super Antwort bekommt!
Ich werde das Programm ausprobieren.Wenn sich noch weitere Fragen ergeben melde ich mich einfach noch mal.

Noch mal danke!

Grüß

René
restamm
User
User
 
Posts: 7
Joined: 13 Mar 2012, 19:24

Re: Programmerstellung Fragen

Postby restamm » 27 Mar 2012, 17:11

Hallo,

ich habe das Programm nun so ausprobiert, es hat aber leider nicht ganz funktioniert. Und zwar hat sich der Motor direkt gedreht und brauchte kein Signal um anzulaufen.
Ich habe das Programm, so wie Sie es aufgeschrieben haben, im TMCL-IDE geschrieben und rübergeschickt. Anschließend habe ich eine 5V Spannung auf den Anschluss 2 Klemme 6 gelegt, die ich mit einem Relais schalte.
Was habe ich falsch gemacht? Wodrauf ist zu achten?

Gruß
restamm
User
User
 
Posts: 7
Joined: 13 Mar 2012, 19:24

Re: Programmerstellung Fragen

Postby Olav Kahlbaum (TRINAMIC) » 28 Mar 2012, 07:45

Bitte probieren Sie zunächst einmal den Eingang im Direktmodus aus. Führen Sie im Direktmodus der TMCL-IDE den Befehl GIO 0, 0 aus einmal mit eingeschaltetem Relais und einmal mit ausgeschaltetem Relais und beobachten Sie, wann der Rückgabewert 0 ist und wann 1. Eventuell muß die Abfrage umgegkehrt sein (JC NZ statt JC ZE) oder an die Beschaltung muß verändert werden, falls z.B. immer 1 oder immer 0 herauskommt.
User avatar
Olav Kahlbaum (TRINAMIC)
Site Admin
 
Posts: 3359
Joined: 11 Aug 2006, 08:02

Re: Programmerstellung Fragen

Postby restamm » 04 Apr 2012, 19:07

Hallo,

habe das Programm jetzt auf NZ umgeschrieben und es läuft. Muss jetzt aber das Signal Invertieren, was aber nicht schlimm ist.
Ich hab aber leider noch ein weiteres Problem. Wenn ich den Motor ausschalte, und dann wieder einschalte fängt er nicht mit dem Programm an. Wie kann ich dies ändern?

Außerdem würde ich gerne beim einschalten des Motors eine Referenzefahrt durchführen, damit der Motor beim Start immer in der selben Position steht. Eine Lichtschranke ist schon angebracht, die an der gewünschten Position ein Signal gibt. Welche Klemmen muss ich benutzen und wie sieht das Programm aus?

Danke im Vorraus
restamm
User
User
 
Posts: 7
Joined: 13 Mar 2012, 19:24

Re: Programmerstellung Fragen

Postby Olav Kahlbaum (TRINAMIC) » 10 Apr 2012, 09:42

Damit das Programm beim Einschalten gleich automatisch getartet wird, muß die Autostart-Funktion aktiviert werden. Dies kann mit der TMCL-IDE geschehen über Setup/Configure Module/Other, dort dann bei "Autostart" auf "On" klicken.
Die Lichtschranke für die Referenzfahrt wird bei diesem Modul (und allen anderen, die keinen spziellen Home-Eingang haben) an die Klemme für den linken Endschalter angeschlossen. Dann kann eine automatische Referenzfahrt mir Hilfe des Befehls RFS START erfolgen. Mit Hilfe des Befehls WAIT RFS kann man im Programm warten, bis die Referenzfahrt beendet ist.
Zum Durchführen der Referenzfahrt genügen somit die Befehle
Code: Select all
RFS START, 0
WAIT RFS, 0, 0
User avatar
Olav Kahlbaum (TRINAMIC)
Site Admin
 
Posts: 3359
Joined: 11 Aug 2006, 08:02

Re: Programmerstellung Fragen

Postby restamm » 10 Apr 2012, 17:35

Danke für die Antwort!
Werde es direkt morgen ausprobieren.
Sorry für die wahrscheinlich einfachen Fragen.

Gruß Rene
restamm
User
User
 
Posts: 7
Joined: 13 Mar 2012, 19:24

Re: Programmerstellung Fragen

Postby restamm » 11 Apr 2012, 09:40

Guten Morgen,

habe den Referenzfahrt Befehl nun so eingegeben doch ich hab keine Funtkion.
Ich hab auf den StopL Anschluss 5V geschaltet doch der Motor hört nicht auf zu drehen.
restamm
User
User
 
Posts: 7
Joined: 13 Mar 2012, 19:24

Re: Programmerstellung Fragen

Postby restamm » 11 Apr 2012, 16:23

Okey hat jetzt doch Funktioniert.
restamm
User
User
 
Posts: 7
Joined: 13 Mar 2012, 19:24


Return to Trinamic Motion Control Language (TMCL)

Who is online

Users browsing this forum: Google [Bot] and 1 guest