-         
+ Antworten
Ergebnis 1 bis 3 von 3

Thema: exakte Winkelangabe

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.02.2004
    Ort
    Baden-Württemberg
    Alter
    29
    Beiträge
    222

    exakte Winkelangabe

    Hallo,

    Ich habe ein Gelenk dass von einem recht Starken Getriebemotor mit aufgesetzter Gewindestange bewegt wird. Das Gelenk soll folgendermaßen Funktionieren.

    Linksausschlag,
    Nullstellung,
    Rechtsausschlag

    Jetzt würde mein MicroController gerne immer ganz genau wissen
    in Welcher Stellung sich das Gelenk den genau befindet damit er den
    Motor exakt Nachstellen kann um Beispielsweise genau eine Position
    zu halten.

    Zu Verfügung habe ich Analoge Ports, Digitale, I²C. Das Ganze sollte
    relativ genau sein.

    Das einfachste ist dann Wahrscheinlich einfach einen Linearen Servo
    zu nehmen. Doch ist die Auflösung genau genug? Wie schließ ich den an,
    Wie ermittle ich seine Größe (Analoger Port Von CCM2).

    Wie ihr seht viele Fragen. Ich freue mich auf Antworten,

    Grüße, nux.
    <p align="center">+++ Lerne die Regeln, dann weißt du, wie man Sie richtig bricht +++</p>

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Felix G
    Registriert seit
    29.06.2004
    Ort
    49°32'N 8°40'E
    Alter
    33
    Beiträge
    1.780
    Also ich würd da einfach ein Poti dran bauen...

    Schaltungstechnisch das Poti zwischen GND und Betriebsspannung,
    dann die Betriebsspannungsseite und den Schleifer an je einen ADC Eingang hängen.
    (eventuell noch mit je einem Verstärker dazwischen um den ADC möglichst gut auszunutzen)

    So, nochmal schnell ein paar Abkürzungen definieren (ja, ich bin schreibfaul )

    ADCg = ADCgesamt (also Betriebsspannungsseite)
    ADCs = ADCschleifer (sollte klar sein)

    In deiner Software ist das Verhältnis ADCg/ADCs dann schon direkt die Positionsangabe in % (naja, nicht ganz... mal 100 sind es dann %).
    Du brauchst aber natürlich noch eine Kalibrierung, um möglichst exakte Werte zu erhalten.

    Dabei ist wichtig, daß man wo es geht immer nur mit Verhältnissen rechnet, nicht mit absoluten Werten.
    (es sollte also nirgends in dem Programm direkt mit den ADC-Werten gerechnet werden)
    Bei der Kalibrierung speicherst du dann die beiden Werte (Volausschlag-links/rechts) jeweils als (ADCg/ADCs)*x.
    Das x ist einfach nur dein Wert für 100%, denn du willst ja sicherlich einen Integer dafür benutzen. (wegen der Performance)


    wenn du deine Kalibrierwerte dann hast, kannst du dir die exakte Position ausrechnen.
    (in Abhängigkeit von ADCg, ADCs und halt den zwei Werten)

    Man könnte meinen das ADCg sei unnötig, aber dadurch brauchen dich Spannungsschwankungen und andere Störungen erstmal nicht mehr zu interessieren.
    Denn wenn sich die Spannung über dem Poti ändert, ändert sich zwar dein Wert für ADCs, aber eben auch der für ADCg.
    Und da die berechnete Potition von beiden abhängig ist, verschwindet der Fehler einfach.
    (d.h. jede beliebige Störung die beide Werte gleich beeinflusst kann man ignorieren)



    Also ich jedenfalls würde das so machen
    So viele Treppen und so wenig Zeit!

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.02.2004
    Ort
    Baden-Württemberg
    Alter
    29
    Beiträge
    222
    wow, erstmal vielen Dank für diese Ausführliche Lösung.
    Der Vorschlag klingt für mich sehr gut.
    Der Poti sollte am Besten linear sein um dumme Rechnungen zu vermeiden.

    Jetzt nur noch ein Problem, wie groß soll der Poti sein?
    Bzw mit welchen Daten kann ich das Berechnen?

    Brauche ich da die Leistung des Potis und UB?

    Danke. nux.
    <p align="center">+++ Lerne die Regeln, dann weißt du, wie man Sie richtig bricht +++</p>

+ Antworten

Berechtigungen

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