Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 4 von 4

Thema: Werte die über analoge Eingangsklemme kommen, direkt an den Schrittmotor schicken

  1. #1
    Registriert seit
    09.12.2008
    Beiträge
    55
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    Hätte wieder einmal eine Herausforderung für das SPS - Forum.

    Besitze einen CX und eine KL2541 über die ich meinen Schrittmotor ansteuere. Ebenfalls eine analoge Eingangsklemme.

    Situation:
    An der analogen Eingangsklemme hängt ein "Joystick" der verschiedene Werte (Bereich 0 - 10V) abfragen kann. Diese Werte möchte ich direkt an die Schrittmotorklemme weitergeben. Das heißt wenn der Joystick z.B. 5V liefert, sollte der Schrittmotor 5mm absolut verfahren. Wenn der Joystick 0V liefert sollte der Schrittmotor wieder in die Ausgangsstellung zurückfahren. Wichtig dabei ist mir, das der Wert was der "Joystick liefert auch 1:1 an den Schrittmotor weitergegeben wird (nicht zeitverzögert, sodass der Motor hinten "nachhinkt").

    Habe bereits ein Programm geschrieben, dass der Schrittmotor verfährt. Habe hierfür den Baustein MC_MoveAbsolut verwendet. --> Dabei gibt es nur ein Problem, wenn während der Fahrt der "Joystick" einen anderen Wert als ursprünglich geschickt wurde, erhält, wird erst nachdem der erste Wert vollständig verahren wurde, der zweite Wert bearbeitet --> Schrittmotor hängt hinten nach!!!

    Lösung:
    Variante 1: dies hardwaremäßig so zu lösen, dass der Schrittmotor nicht hinten nach hinkt (Anlaufzeit, etc. auf ein minimum zu redzuieren)
    --> bereits gemacht, Schrittmotor hängt trotzdem einwenig hinten nach, nicht akzeptabel!!

    Variante 2: dies softwaremäßig lösen. Habe mit dem Baustein New_Pos probiert, dies porgrammtechnisch zu lösen, bekomme dies jedoch nicht in den Griff!!

    Variante 3: einen anderen Baustein verwenden (dass wirklich der "Joystick" mit dem Schrittmotor im Einklang ist und nicht hinten nach hinkt), oder es hat jemand im Forum schon mal ein Programm mit New_POS und MC_MoveAbsolut geschrieben, dass mir vielleicht hier weiterhilft.

    Danke für eure Hilfe.

    mfg
    Wolfi
    Zitieren Zitieren Werte die über analoge Eingangsklemme kommen, direkt an den Schrittmotor schicken  

  2. #2
    Registriert seit
    19.11.2006
    Beiträge
    1.346
    Danke
    6
    Erhielt 254 Danke für 231 Beiträge

    Standard

    Mehrere Baustellen auf einmal ....

    dann fangen wir mal an

    Also du verwendest die NC (bitte immer angeben) und hast entsprechende Skalierungsfaktoren schon korrekt eingestellt, nehmen ich an.

    Zitat Zitat von wolfi999 Beitrag anzeigen
    An der analogen Eingangsklemme hängt ein "Joystick" der verschiedene Werte (Bereich 0 - 10V) abfragen kann. Diese Werte möchte ich direkt an die Schrittmotorklemme weitergeben. Das heißt wenn der Joystick z.B. 5V liefert, sollte der Schrittmotor 5mm absolut verfahren. Wenn der Joystick 0V liefert sollte der Schrittmotor wieder in die Ausgangsstellung zurückfahren.
    Also du hast eine Verfahrstrecke von 10mm. Je nach Joystickstellung wird die Achse "ausgelenkt", sozusagen, richtig?
    Zitat Zitat von wolfi999 Beitrag anzeigen
    Wichtig dabei ist mir, das der Wert was der "Joystick liefert auch 1:1 an den Schrittmotor weitergegeben wird (nicht zeitverzögert, sodass der Motor hinten "nachhinkt").
    Meinst du mit "nachhinken", dass ein Schleppfehler bestehen bleibt?

    Zitat Zitat von wolfi999 Beitrag anzeigen
    Habe bereits ein Programm geschrieben, dass der Schrittmotor verfährt. Habe hierfür den Baustein MC_MoveAbsolut verwendet. --> Dabei gibt es nur ein Problem, wenn während der Fahrt der "Joystick" einen anderen Wert als ursprünglich geschickt wurde, erhält, wird erst nachdem der erste Wert vollständig verahren wurde, der zweite Wert bearbeitet --> Schrittmotor hängt hinten nach!!!
    Der MoveAbsolute ist ein Baustein für eine einmalige Positionierung. Es wird ein Fahrauftrag abgesetzt und mit dem erstellten Verfahrprofil positioniert. Erst wenn der Baustein fertig ist, kann eine neue Positionierung gestartet werden.
    Also egal ob währen des Verfahrens die Zielposition geändert wird, der Motor wird zunächst die ursprünglich vorgegebene Position anfahren. Nachtirggern geht nicht.
    Es gibt aber den Baustein MoveAbsoluteOrRestart. Der kann auch nachgetriggert werden. Nur macht es wenig sinn, jedes mal wenn der Joystick sich nen µ bewegt soft nachzutriggern. "nachhinken" wird der Motor schon aufgrund von Zeitverzögerungen, Brems- und Beschelunigungsrampen etc. Auch beim MoveAbsoluteOrRestart wird bei jedem nachtriggern zunächst ein neues Verfahrprofil errechnet.
    Das geht bei Positionierung in eine Richtung gut, aber sobald du umkehren musst, wird es aufgrund der Rampen und der Motorträgheit bestimmt trotzdem zu einem Überschwingen kommen.

    Oder nervt dich vieleicht eher, das Zielpositionsfenster, dass der Motor im Endeffekt nach der Positionierung nicht dort steht, wo du eigentlich möchstest.
    Dann wär's eher eine Frage der Reglereinstellung.

    Wenn du nicht an das Poti gebunden wärst, wäre das sinnvollste, du schnappst dir einen linearen oder rotatorischen Absolutwertgeber (Drehgeber). Dann könntest du in der NC eine Encoderachse erzeugen, die ihre Position der NC übermittelt. Dann könnte der Schrittmotor auf diese Achse gekoppelt werden (zB 1:1) und dann folgt er auch der Encoderbewegung. Ganz ohne Funktionsbausteine und Rampen

  3. Folgender Benutzer sagt Danke zu trinitaucher für den nützlichen Beitrag:

    ybbs (18.04.2009)

  4. #3
    Registriert seit
    09.12.2008
    Beiträge
    55
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke für die Antwort trinitaucher.

    • Also, hast du richtig erkannt, verwende die NC.
    • Genau, max. Verfahrstrecke von 10mm. Skalierfaktor richtig eingestellt.
    • Nein ein Schleppfehler besteht nicht. Unter nachhinken meine ich, wenn ich mit dem Baustein MC_MoveAbsolut arbeite, dann arbeitet er zunächst die Postion die ich als ersten Wert eingestellt habe fertig und danach verfährt er erst den nächsten Wert. Wie du auch weiter unten erklärt hast --> dass der Baustein nur für eine einmalige Positionierung da ist.
    Damit der Schrittmotor nicht jedes µ verfahren muss (postionsveränderung), werde ich den wert vom "Joystick" auf ganze Zahlen auf/abrunden, wenn nicht sogar in Blöcke aufteilen (z.B. dritteln).
    Und dann mal mit dem Baustein MC_MoveAbsolutorRestart arbeiten wie du mir gesagt hast.

    Danke. halte dich auf dem laufenden.

    mfg wolfi
    Zitieren Zitieren Antwort  

  5. #4
    Registriert seit
    09.12.2008
    Beiträge
    55
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    Danke, trinitaucher. Mit dem Baustein MC_MoveAbsolutorRestart funktioniert es einwandfrei. Danke für deine hilfe.

    mfg
    Wolfi
    Zitieren Zitieren Hallo  

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 01.03.2011, 14:54
  2. DCF-77 über eine Eingangsklemme
    Von malibu-tg im Forum CODESYS und IEC61131
    Antworten: 10
    Letzter Beitrag: 19.08.2010, 13:01
  3. Schrittmotor direkt über S7-300 DA-Karte ansteuern?
    Von Jan im Forum Antriebstechnik
    Antworten: 7
    Letzter Beitrag: 18.08.2009, 16:26
  4. berechnung analoge werte
    Von patrickkhr im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 11.11.2007, 12:53
  5. Analoge Werte in SCL?
    Von hobel im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 08.09.2006, 17:05

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •