-
        
+ Antworten
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 17

Thema: Modellbauservo -Ansteuerung mit Schieberegister

  1. #1

    Modellbauservo -Ansteuerung mit Schieberegister

    Hallo,

    Um einen Modellbauservo mit einem Mikrokontroller anzusteuern muss man alle 20ms einen Impuls ausgeben – das stört mich sehr denn die kleinste Zeiteinheit der C-Conrol beträgt bei Basic 20ms. Daher will ich etwas bauen dass einmal einen Impuls erhält und diesen dann alle 20ms wiederholt bis eine neue Pulslänge kommt.

    Ich habe dazu folgende Realisierungsidee: Ich würde ein 1024bit Schieberegister (1.Frage gibt es so etwas) nehmen und dieses mit 51.2 kHz takten (2.Frage woher bekommt man 51.2 kHz). Dann käme alle 20ms am Datenausgang das gleiche heraus. Wenn nun der Impuls 1,5ms betragen soll würde ich für 77 Takte eine 1 in das Register schreiben. Dann würde ich den Dateneingang des SRG vom Controller auf den Ausgang des SRG schalten (Signal würde sich wiederholen).

    Meine Fragen: Könnte das so funktionieren? Gibt es einfachere Lösungen?

    Ich hoffe das ihr mir helfen könnt

    MFG Lukas

  2. #2
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    63
    Beiträge
    12.204
    Ich schätze mal, dass man anstelle des Aufwands für ein Schiebegregister gleich die Regelelektronik des Servos herausnehmen kann und das Poti an einen A/D Eingang des Controllers anschließt.
    Mit ein paar Impulsen an einen Brückentrieber schiebt man den Servomotor dann in die gewünschte Stellung.
    Manfred

  3. #3
    Danke für den Vorschlag!
    Habe leider ein Problem mit dieser Lösung: Die periodischen Impulse braucht der Servo als Soll-Wert. Um nur eine Position anzufahren wären nur wenige Impulse notwendig (hängt von Stellzeit ab). Wenn aber der Servo bei einer Abweichung vom Soll-Wert nicht mehr reagieren kann (da Elektronik ausgebaut) muss dies der der Controller machen. Eine Dauerhafte Gegenkraft auf den Servo würde dann bedeuten, dass der Controller ständig regeln muss.

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    17.04.2004
    Beiträge
    140
    Schau mal hier http://www.electronicsplanet.ch/Scha...s/servopos.htm
    Ist zwar nur eine min/max einstellung, du kannst aber dir das aber auch noch umbauen auf einen geregelten Betrieb.

    MFG

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    18.03.2004
    Beiträge
    225
    1024 Bit? Sicher sind 10 Bit gemeint, denn 2^10=1024.
    Und 10-bit-Schieberegister gibt es meines Wissens als IC.
    RG

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.03.2004
    Ort
    Paderborn
    Alter
    32
    Beiträge
    614
    Bei Conrad gibt's auch einen Bausatz "Servotester", der über ein Poti ein Servosignal erzeugt. Das ist da einfach ein Multivibrator aus Logic-ICs. Den Schaltplan gibt's netterweise auf deren Seite. Wenn du jetzt das Poti entfernst und den Schleifkontakt durch den DA-Ausgang der C-Control(mit 'nem kleinen Kondensator gefiltert) ersetzt, kannst du über den dein Servo stellen.

    Als Alternative würde sich ein schnellerer µC anbieten(ein AVR kann sowas z.B.).
    it works best if you plug it (aus leidvoller Erfahrung)

  7. #7
    Eigentlich meine ich schon, dass 1024 bit geschoben werden da sonst die Auflösung zu gering ist. (20ms/1024=ca.20µs)

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    17.04.2004
    Beiträge
    140
    1024 bits ergäben ca. 1,8 E+308 Zustände, na dann viel Spaß damit (wie lange wäre denn dann die benötigte Zeit zum schieben? 1 Jahr? )

    Ich denke mal (wie schon gesagt), das du ein 10bit Register meinst, welches du schiebst.
    Bei nem Schrittmotor kommst du auch schon mit nem Nibble weiter.

    Trotzdem würde ich lieber einen Multivibrator nehmen (NE555), den du ansteuerst. So sind Fehlerquellen auch einfacher auszumachen.

    Wenn du trotzdem 1024bits schieben willst, dann meld dich mal, wenn der µC damit fertig ist

  9. #9
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    09.08.2004
    Ort
    Potsdam
    Beiträge
    190
    Schon mal dran Gedacht, das mit den 1024 Bit die zu schiebende Datenmenge gemeint sein könnte und nicht die Auflösung?!?

    @a3000 Wie viele Servos willst Du denn mit einem Schieberegister ansteuern und wie willst Du die Wiederholrate realisieren?
    ___________
    Überleg mal wie groß eines mit einer Quantisierung (Auflösung) von 1024 Bit sein müsste. (jedes Bit = ein Anschluß)
    Wenn bei Deiner Konstruktion "nur" die zu schiebende Datenmenge ausschlagebend für das Steuersignal ist, dann erhöhe doch die Frequenz des Datenstroms. Damit ließe sich die Auflösung erhöhen.
    Wenn Du Servo's etc. ansteuern willst und wie ich gelesen habe Du schon gewisse Kenntnisse in Basic hast, dann würde ich Dir empfehlen auf Atmel-Controller umzusteigen und Bascom als Compiler (Demo kostet nix, ist aber auf 2k Programmcode begrenzt) zu nutzen.
    Ein selbstgebauter ISP-Programmierdongle kostet Dich nicht mal 5 Eu's. (gibts aber auch zu kaufen)
    Für den Anfang würde es ja reichen einen Controller per RS232 von der C-Control mit den Notwendigen Daten zu versorgen und dem Controller die Erzeugung des Steuersignals für die Servos zu überlassen. Man kann die Daten im Hintergrund in den Speicher schreiben wodurch der Programmablauf nicht unterbrochen wird.
    Einige belächeln Basic, scheinen aber auch nicht zu wissen wie leicht wie Dinge damit realisieren lassen.
    (kleines Beispiel: Ich hab ein Prog mit Bascom geschrieben, das einen AT90S2313 neun Servos steuern lässt. Die Frequenz der Steuersignale beträgt dabei immer genau 50Hz und nebenbei werden noch diverse Dinge mittels I²C abgearbeitet)

  10. #10
    ich plane etwas ähnliches. Die Timer Iinterupts der AVR's scheinen mir für diesen Zweck geeignet. Der erste Timer schaltet einen Port alle 20 ms high, der andere nach einer variablen Zeit wieder auf low.

+ Antworten
Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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