Hallo Community, ich möchte mir meinen "eigenen" Servo bauen. Ich benutze einen DC-Getriebemotor (12V / ca. 400mA) als Motor und ein 10K (linear-) Poti als "Messglied". Als Führungsgröße hab ich eine Spannung von 0-5V (Konvertiert aus einem PWM-Signal). Der Motor ist so verbaut, dass er seine Position von sich aus nicht halten kann, da er einen schwereren Hebel zuverlässig vertikal drehen soll (~0-180°). Ich würde auch eher keinen Mikrocontroller verwenden wollen, da ich zwei Dutzend solcher "Servos" betreiben möchte und dies mir zu Kostenspielig werden würde und ich so bei eventuellen Softwarefehlern alle einzeln Updaten müsste - Lasse mich in diesem Punkt allerdings gerne vom Gegenteil überzeugen aber aus meiner Sicht scheint es sich aktuell nicht zu lohnen. Deshalb bin ich den "altmodischen" weg gegangen und verwende OP's. Ich dachte mir, dass ich einfach die Rückführungsgröße und die Führungsgröße subtrahiere und komme so zu einer Spannung von -5V bis +5V. Jetzt bin ich an einem Problem angekommen, dass ich so einfach nicht alleine gelöst bekomme. Wie baue ich jetzt den Passenden Motor-Treiber? Wenn ich eine H-Brücke verwende wie Steuer ich diese mit einer solchen Spannung an? Und kann die Reaktion auch träge sein? - Kurze Erklärung hierzu, was ich mir unter träge vorstelle ist, dass bei einer geringen Differenz der Motor nicht mit 100% der Energie betrieben wird. Vielleicht habe ich auch Google falsch benutzt und ihr könnt mir direkt ein passenden Antwort-Link schicken oder mir ein paar Schlagworte geben. Ich wäre euch für jede Hilfe dankbar! Viele Grüße, Sebastian
Billiger und einfacher als mit einem uC wirst Du keine einigermaßen anspruchsvolle Servosteuerung hinbekommen.
>Rückführungsgröße und die Führungsgröße >subtrahiere und komme so zu einer Spannung von -5V bis +5V. mag in der theorie funktionieren, in der Praxis fängt das System um den Sollwert an zu schwingen...Hochmoderne Servotreiber können sich selbst parametrisieren, bei allen anderen bleibt nur das manuelle finden und einstellen der PID Werte... Gruß J
Sebastian W. schrieb: > Ich würde auch eher keinen Mikrocontroller verwenden wollen, da ich zwei > Dutzend solcher "Servos" betreiben möchte und dies mir zu Kostenspielig > werden würde und ich so bei eventuellen Softwarefehlern alle einzeln > Updaten müsste - Lasse mich in diesem Punkt allerdings gerne vom > Gegenteil überzeugen aber aus meiner Sicht scheint es sich aktuell nicht > zu lohnen. Andreas B. schrieb: > Billiger und einfacher als mit einem uC wirst Du keine einigermaßen > anspruchsvolle Servosteuerung hinbekommen. Auch wenn sie nicht anspruchsvoll sein soll, gehts nicht billiger. Ein 8-Pin µC und eine 800mA Motorbrücke gibts für zusammen weniger als 1,50€. Die Stützkondensatoren könnten da auch schon dabei sein. Und selbst wenn man sich die Versorgung des µC lokal aus den 12V herstellen muß, bleibt man unter 2€. Und damit erledigt man von Hysterese bis PID alles. Eine fehlerhafte Software updaten ist immer noch einfacher als einen Widerstand zu tauschen oder einen Kondensator nachzusetzen. Und wenn man nicht mehrere Prototypen baut und testet wird das vorkommen. MfG Klaus
jb schrieb: > mag in der theorie funktionieren, in der Praxis fängt das System um den > Sollwert an zu schwingen... Da bräuchte man sowas wie eine Toleranz.. Ich merke schon ganz so einfach wie ich es mir vorgestellt habe wird das wohl nicht. Also Ihr würdet einen µC verwenden. Könnt ihr mir da einen Empfehlen? Ich kenne nur die ATMega-"Reihe" und an sich benötige ich ja nur 4Bit (eventuell mit PWM damit ich meine "Trägheit" hab) Output für die H-Brücke und 2 AD-Wandler - Oder ich lese die Führungsgröße direkt als PWM ein. Habt Ihr hier schon Erfahrungen gemacht? Eher PWM direkt einlesen oder vorher zu einer Spannung konvertieren? Schon mal Danke für eure Antworten! Viele Grüße, Sebastian EDIT: Ich meine 2 Outputs. Ich war im Kopf bei dem Schrittmotor-Treiber L298N. Auch hier wäre ich für Empfehlungen offen für einen 1-Channel Treiber.
:
Bearbeitet durch User
Andreas B. schrieb: > Billiger und einfacher als mit einem uC wirst Was für ein Humbug. Auch ein uC kann keine 400mA liefern (schon gar nicht den bei so einem Motor vermuteten Anlaufstrom von 4A), man braucht also Treiber. Und weil der passende Treiber die Servofunktion schon selbst machen kann, braucht man keine uC mehr. (Poti regelt Gleichstrommotor auf Position die ebenfalls per Poti erfasst wird oder als Spannung vorgegeben wird): TDA3629 geht bis 0.8A, TLE4206 und MC33030 bis 1A, DRV590/591/593/594 regeln Motoren bis 3A durch PWM).
1 | +------------------+-- +16..60V |
2 | | | |
3 | 10k +-----|+\ LM675 |
4 | | | | >--+-----+----+ |
5 | +--+--+ | +--|-/ | | | |
6 | |soll | | | | 1R | |
7 | 5KPoti-(---22k--(--+---1M---+ | (M) |
8 | | | | | 22n | |
9 | | 5kPoti--22k--+ +--|+\ | | |
10 | | ist| | | >--+--+--(----+ |
11 | +--+--+ +-----|-/ | | | |
12 | | | | | 1R | |
13 | 10k +--1M--(----+ | | |
14 | | | 22n | |
15 | +------------------+-------+--+-- GND |
Ein uC ist also so überflüssig wie ein Kropf. jb schrieb: > mag in der theorie funktionieren, in der Praxis fängt das System um den > Sollwert an zu schwingen... Dazu gibt es PID Kompensation, jeder blöde Leuchtweitenregelungmotor bekommt das hin, jeder Fernsteuerservo, das kann also intellektuell nicht überfordern.
Beitrag #5484531 wurde vom Autor gelöscht.
Hallo Michael, ich habe mal eine Preisliste erstellt, da kosten für mich unter anderem ein wichtiger Punkt ist. LM875 5€ MC33030 30€-70€ TDA36269 SMD 4€ DIP-8 20€ DRV590 5€ DRV591 30€ DRV593 35€ Die DRV scheinen, wenn ich das Datenblatt richtg verstsanden habe auch nur für Motoren mit einer einer Spannung von bis zu 5V geeignet zu sein. Gehe hier davon aus, dass die AVDD die Spannung für den Motor ist und die PVDD die Spannung für die Logik. Ich beziehe mich auf das Datenblatt http://www.ti.com/lit/ds/symlink/drv593.pdf Der MC33030 scheidet obwohl ich ihn als geeignetsten halte aus, da viel zu teuer ist. Der TDA3629 ist eine gute eventuelle alternative. Aber du hast schon recht, der Motor könnte schon in Extremfall über eventuell 800mA kommen. Michael B. schrieb: > +------------------+-- +16..60V > | | > 10k +-----|+\ LM675 > | | | >--+-----+----+ > +--+--+ | +--|-/ | | | > |soll | | | | 1R | > 5KPoti-(---22k--(--+---1M---+ | (M) > | | | | 22n | > | 5kPoti--22k--+ +--|+\ | | > | ist| | | >--+--+--(----+ > +--+--+ +-----|-/ | | | > | | | | 1R | > 10k +--1M--(----+ | | > | | 22n | > +------------------+-------+--+-- GND Was das angeht, hätte ich vorher sagen sollen, dass ich nur eine Spannung von 12V zu Verfügung habe. Klar könnte man hier mit einem StepUp arbeiten. Diese sind aber soweit ich weiß verlustreicher als StepDowns was wiederum für einen µC sprechen würde. Den TDA3629 würde ich aber näher in betracht ziehen. Ich danke dir für deine ausführliche Antwort. Falls du einen günstigen Tipp hast, wie ich es doch so umsetzten kann sag mir bitte Bescheid! Viele Grüße, Sebastian
Michael B. schrieb: > jb schrieb: >> mag in der theorie funktionieren, in der Praxis fängt das System um den >> Sollwert an zu schwingen... > > Dazu gibt es PID Kompensation, jeder blöde Leuchtweitenregelungmotor > bekommt das hin, jeder Fernsteuerservo, das kann also intellektuell > nicht überfordern. Falls du was findest, einen Schaltplan o.ä. wie ein ganz normaler Servo aufgebaut ist. Wäre ich dir dankbar, wenn du mir einen Link schicken könntest.
Michael B. schrieb: > Was für ein Humbug. Auch ein uC kann keine 400mA liefern (schon gar > nicht den bei so einem Motor vermuteten Anlaufstrom von 4A), man braucht > also Treiber. Ah, so schlau bin ich auch schon. Einen Treiber braucht man so oder so. Und, was meinst Du was mehr kostet? Ein Tiny 85 oder ein OP? Richtig, ungefähr das Gleiche. Was ist mehr flexibler, kann auch Anlaufströme steuern und alle PID Parameter auswählbar machen? Nein, es ist kein OP.
Ich setzte es mit einem uC um + H-Brücke. Um diesen Thread zu schließen.
Auch wenn ich für diesen Vorschlag gesteinigt werde: Da ich PICs verwende, würde ich den PIC16F1823 für 0,92€ (Microchip direkt) oder den PIC16F1825 (mehr Flash und RAM) für 1,09€ einsetzen. Die haben mit 14 Pins noch etwas Reserve. Es gibt aber sicher auch passende AVRs zum ähnlichen Preis. Dazu dann einen L9110 als Motortreiber. Haben die Chinesen erfunden, um kleine Motore in Spielzeugen zu steuern. Das passt gut zu den 400mA. Die kosten um 0,10€ (ca. 1$ im Zehnerpack bei Ali). Dazu einen 3,3V oder 5V Linearregler (µC und Brücke können beides) für 0,25€ und zwei, drei MLCCs. Wenn man dann noch 8 Nutzen in das gängige chinesische 100x100mm Platinemaß bekommt, kost die Einzelplatine 0,25€. Das Aufsummieren spar ich mir mal, ist aber weniger als ein Glas Wein beim Italiener. Einen Schaltplan spar ich mir auch, nur das Poti und das Eingangssignal sollten an analoge Eingänge des µC angeschlossen werden. MfG Klaus P.S. so etwa sind die preiswerten Digitalservos innen auch aufgebaut. Mal 5€ bei Hobbyking investieren und in so ein Servo reinschauen.
Klaus schrieb: > Auch wenn ich für diesen Vorschlag gesteinigt werde: Nö, genau so. Ob es jetzt AVR oder Pics sind, muß der TO aufgrund seiner Präferenz am besten wissen. Ich würde auch eher einen uC mit etwas mehr Pins nehmen. Bei AVR etwa tiny841, der hat eine HW Uart und noch genug Ports frei um Status Leds anzuschließen. Allerdings halte ich den L9110 etwas zu schwach für 400mA Motoren. Der Anlaufstrom dürfte einiges höher sein. Eher so Richtung L6201. Weiterer Tip für die praktische Programmierung von PID Reglern: https://rn-wissen.de/wiki/index.php?title=Regelungstechnik
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.