-
        

Ergebnis 1 bis 5 von 5

Thema: Motor Positionsregelung

  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    24
    Beiträge
    1.544

    Motor Positionsregelung

    Anzeige

    Hallo,

    ich habe ein altes DVD-Laufwerk zerlegt und bin gerade dabei, die Laser-Motoreinheit anzusteuern. Der Laser ist unbenutzt, da mir das zu gefährlich ist und ich auch keinen Verwendungszweck dafür habe. Allerdings finde ich die Motor-Einheit sehr interresant. Diese besteht aus einem DC-Motor, welcher über eine "Zahnradstange" den Laserschlitten bewegt. Zur Positionserfassung befinden sich zwei Hallsensoren auf einer Platine, welche ich mittels LM339 digitalisiere. Momentan nutze ich allerdings nur eine davon, da ich ja weiß, in welche Richtung sich der Schlitten bewegt. Mit diesem Schlitten möchte ich ein paar Punkte möglichst genau anfahren.
    Aber: Wie realisiere ich eine Regelung dafür? Die Sensorsignale gebe ich auf den Int0, das funktioniert. Der Motor wird über einen L293D (aufm RN-Control) gesteuert, d.h. ich gebe mittels 2 Pins die Richtung und mittels PWM (Timer1) die Geschwindigkeit vor. Einen PID-Regler habe ich schonmal für meinen Quadrocopter programmiert, das stellt kein Problem dar. Aber wie werden die PI-Werte verrechnet? Wenn der Fehler größer 0 ist, muss in die eine Richtung gesteuert werden, ansonsten in die andere Richtung. Bei Ist = Soll wird der Motor zum Bremsen kurzgeschlossen und die PWM voll aufgedreht. Soll ich die PWM in Abhängigkeit vom P / I Wert einstellen? Oder wie werte ich die Werte sonst aus? Irgendwie habe ich das Gefühl, ich stehe da etwas auf dem Schlauch. Wäre nett, wenn mir jemand helfen könnte

    Vielen Dank & Gruß
    Chris

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.03.2011
    Beiträge
    1.397
    Zitat Zitat von Che Guevara Beitrag anzeigen
    Zur Positionserfassung befinden sich zwei Hallsensoren auf einer Platine, welche ich mittels LM339 digitalisiere. Momentan nutze ich allerdings nur eine davon, da ich ja weiß, in welche Richtung sich der Schlitten bewegt. Mit diesem Schlitten möchte ich ein paar Punkte möglichst genau anfahren.
    Ich denke mal nicht, daß die Hallsensoren zu Positionserfassung gut sind. Sie werden nur als Endlagenschalter eingesetzt werden. Und selbst wenn, nach dem LM339 ist keine analoge Positionserkennung mehr möglich. Als Fehler bekommst du nur 0 oder 1, und auch nur in Bezug zur Position des verwendeten Sensors und nicht zu deiner Sollposition. Ein CD/DVD Laufwerk erkennt seine Position, an den Daten auf der Scheibe, die hast du ja nicht.

    Du bräuchtest einen Positionssensor mit analogem Ausgang (wie das Poti beim Servo). Ob das die Hallsensoren leisten können, weiß ich nicht.

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    24
    Beiträge
    1.544
    Hallo,

    ich denke, ich habe mich nicht klar genug ausgedrückt. Ich bekomme x Impulse pro Umdrehung des Motors, d.h. wenn sich der Schlitten von dem einen Ende zum anderen Ende bewegt, bekomme ich ca. y Impulse. Wie viele jetzt x (ca. 6) und y (ca. 120) genau sind, kann ich dir momentan nicht sagen, spielt bis jetzt auch nicht eine so große Rolle.

    Gruß
    Chris

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.03.2011
    Beiträge
    1.397
    Du hast Recht, das hab ich so nicht verstanden.

    Du brauchst für deinen Regler die wirkliche Position des Schlittens. Dazu brauchst du einen Zähler. Diesen mußt du auf geeignete Weise auf Null setzen. Das macht man mit einem Endlagenschalter, oder wie bei den alten Apple II Floppies indem man den Schlitten "sanft" gegen einen Anschlag fährt. Ab da wird jeder Puls von deinem Sensor gezählt. Ob der Puls addiert oder subtrahiert wird, weißt du aus der Ansteuerung des Motors. Um Fehler durch das Weiterdrehen des Motors zu minimieren, solltes du den Motor beim Abschalten hart bremsen, also kurzschließen.

    Dieser Zähler ist deine "Istposition". Jetzt müßtest du deine Regelalgarithmen anwenden können. Viel Erfolg

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    24
    Beiträge
    1.544
    Genauso weit bin ich schon Aber ich weiß eben nicht, wie ich meine PI-Werte dann zur Ansteuerung verwenden soll?! Berechne ich die Geschwindigkeit aus den PI-Werten oder doch etwas anderes?

    Gruß
    Chris

Ähnliche Themen

  1. RN-Motor I2C Kommunikation klappt, am Motor tut sich nichts
    Von hspecht74 im Forum Bauanleitungen, Schaltungen & Software nach RoboterNetz-Standard
    Antworten: 1
    Letzter Beitrag: 24.11.2008, 14:04
  2. Antworten: 0
    Letzter Beitrag: 15.03.2008, 18:28
  3. Antworten: 2
    Letzter Beitrag: 23.07.2007, 09:44
  4. Positionsregelung mit DC-Motoren
    Von clupus im Forum Motoren
    Antworten: 13
    Letzter Beitrag: 07.05.2006, 23:20
  5. Antworten: 3
    Letzter Beitrag: 18.11.2004, 19:50

Berechtigungen

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