-         

Ergebnis 1 bis 9 von 9

Thema: Positionsbestimmung eines Servos

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    20.05.2004
    Alter
    37
    Beiträge
    24

    Positionsbestimmung eines Servos

    Anzeige

    Hallo zusammen

    Wochenende->Fragen!

    Also hier wird ja oft erklärt und diskutiert, wie man einen Servo ansteuert. Was mich jetzt noch Wunder nimmt ist, wie man herausfindet, wann der Servo an der gewünschten Position "angekommen" ist. Der uC ist ja viel schneller als die Mechanik des Servos, weshalb dieser schon wieder eine neue Position übermittelt bekommt, bevor er überhaupt dort angekommen ist wo er sollte. Gibt es da eine einfache Lösung die Position des Servoarms zu bestimmen, die nicht andere Sensoren benötigt, oder ist es gar Softwaremässig lösbar (wohl kaum oder)?

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Natürlich kannst du aus der Differenz Wert-vorher Wert-neu und bekannter Geschwindigkeit die erforderliche Zeit rausrechnen und dich danach richten.
    Du könntest das Servo-Pot anzapfen, theoretisch auch den Motor (ob er Strom zieht oder wieder steht)
    Du kannst auch den Stromverbrauch des ganzen Servos (aller Servos) messen. Ziehen sie Strom, wird noch positioniert, Wenn minimal, sind alle dort, wo sie hinsollen.
    ist alles ein gefummel, ich tät's eher saftware-mäßig
    differenz Position * zeit pro einheit --> Zeitwert
    und den mit einem Timer Interrupt runterzählen, bis er Null ist.
    mfg robert

  3. #3
    Gast
    Hm ja danke, so sollte es eigentlich genügend genau sein für meine Verwendung.

  4. #4
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    22.11.2003
    Beiträge
    214
    Hallo,
    kann man nicht auch die position eines Servos bestimmen?
    Ich würde nämlich gerne einen Entfernungssenor als radar verwenden und wenn ein gegenstad gefuden wurde den Roboter auf diesen ausrichten. Dabei würde Rechenleistung verloren gehen wenn ich immer ausrechnen müssste, wo sich der servo gerade befindet.
    Gruß
    Stefan

  5. #5
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Wo der Servo-Arm tatsächlich ist, weiß letztlich nur das Poti im Servo.
    @bergowitch : Bei einem Servo geht man davon aus, daß es eine vorgegebene Position immer auch prompt einnimmt. Wenn das nicht reicht, isses besser, einfach einen Motor zu nehmen und die Armposition gleich selbst zu messen (poti, encoderscheibe) und auszuwerten.
    Informative Frage für den Laien: wenn den "Radar" etwas findet, warum willst du dann darauf ausrichten ? Das wird doch dadurch nicht genauer ?
    mfg robert

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    22.11.2003
    Beiträge
    214
    Hallo,
    ich baue einen Sumo-Bot. Das "Radar" soll hin und herschwenken und nach dem Gegner suchen. Wenn es ihn gefunden hat, soll sich der roboter auf den Gegner ausrichten und ihn verfolgen. Dazu soll dann das "Radar" dem Gegner folgen und der Roboter soll sich dann weiter nach der gefundenen Position ausrichten. Was ich als Sensor nehme? Ultraschall oder einen Sharp IR sensor - ich werde beides ausprobieren und das bessere auswählen (hoffentlich).
    Wenn ich dich also richtig verstanden habe, kann ich also das pwm signal auswerten oder aber eine Spannungsmessung am Poti vornehmen? Kann man an den Poti einfach die Spannung abgreifen und sie an einen ad-wandler auswerten?
    Danke Gruß
    Stefan

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    24.02.2004
    Ort
    Starnberg
    Alter
    40
    Beiträge
    170
    Hallo,

    Bei einem Servo geht man davon aus, daß es eine vorgegebene Position immer auch prompt einnimmt.
    Würde ich auch so sehen. Du schickst eine bestimmte Pulsbreite an das Servo, und wenn dein US/IR-Sensor in dieser Richtung etwas erkennnt, kannst du aufgrund der gerade gesendeten Pulsbreite die Position/Winkel bestimmen. Dazu muß man natürlich davon ausgehen, daß das Servo nicht mechanisch blockiert werden kann.

    Grüsse, Martin

  8. #8
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Spannung abgreifen: Im Prinzip ja, der Servo tut's ja auch. Man müßte wohl sehr hochohmig anschließen, um die Servo-Elektronic nicht zu verwirren, am besten mit einem OP. Wenn du aber schon einen AD-Wandler beschäftigen willst, würd ich gleich ein externes Poti dazutun und mitdrehen.
    Meine Frage war dahingehend: Wenn Du auf ein Objekt ausrichtest, mußt du doch dann erst recht hin und herschwenken, ob es rechts oder links auswandert, oder ob du eh drauf bist.
    These: wenn du beim schwenken zwischen (sagen wir) 134 und 168 einen Reflex kriegst, ist das Hindernis doch dann bei ca 151 (Mittelwert). Dein Heading 0 (vorne) ist (sagen wir) bei 127, also Fahrzeug links drehen, bis der Mittelwert auch ca 127 ist, dann volle Pulle, runterschubsen.
    Echtes Radar bleibt ja auch nicht stehen. mfg

  9. #9
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    22.11.2003
    Beiträge
    214
    Ja, ein echtes radar soll ja auch nicht nur ein Objekt finden. Deshalb muss, wenn ich ein Objekt gefunden habe dieses nur verfolgen - also nur den kleinen Winkelbereich beachten den du vorschlägst. Ob ich es hinkriege wohin der gegner fährt zu bestimmen, werde ich erst testen, wenn das Grundprinzip funktioniert...
    Gruß
    Stefan

Berechtigungen

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