Servo Direkt an TX Controller anschließen

fischertechnik in General
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
patti;-)
Beiträge: 14
Registriert: 25 Nov 2014, 20:16

Servo Direkt an TX Controller anschließen

Beitrag von patti;-) » 30 Jan 2015, 17:47

Hallo,

Kann man das Fischertechnik Servo direkt an den TX Controller anschließen und wenn ja wie? Will mir nämlich nicht Das Control Set kaufen da es mir zu teuer ist.

Danke im Voraus!!!

LG

Patti

thkais
Beiträge: 381
Registriert: 31 Okt 2010, 21:45

Re: Servo Direkt an TX Controller anschließen

Beitrag von thkais » 31 Jan 2015, 08:41

Hallo,

nein, das geht leider nicht.
Eine Möglichkeit bestünde z.B. darin, ein I²C-Modul für Servo-Steuerung einzusetzen. Solche Module gibt es z.B. für Arduino (einfach mal nach "I2C Servo Modul" googeln)
Gruß
Thomas

hamlet
Beiträge: 332
Registriert: 12 Jan 2011, 21:41

Re: Servo Direkt an TX Controller anschließen

Beitrag von hamlet » 31 Jan 2015, 10:48

Hallo,
ich war gerade mutig.
Es geht! Allerdings nur auf abenteuerliche Weise, da sowohl das Servo als auch der TX "etwas" außerhalb der Spezifikation betrieben wird.
Übliche Servos werden mit (4.5-6V) versorgt und werden durch ein PWM Signal angesteuert, wobei die PWM Periode bei 20ms und die Pulsweite zwischen 1ms und 2ms liegt. Die Pulsweite bestimmt dabei die Position des Servos. 1.5ms entspricht der Mittelstellung.
Genauer steht's hier: http://de.wikipedia.org/wiki/Servo
Dort steht auch:
...Die Periodendauer von 20 ms ist kein kritischer Wert und muss bei der Ansteuerung nicht genau eingehalten werden....
Nun ja, wenn dem so ist, könnte man auf die dumme Idee kommen, es mit der ~5ms PWM-Periodendauer der TX "O"-Ausgänge zu versuchen.
Ich habe folgendes mit einem Billig-Plastik-Servo probiert:
  • Den TX wird mit lediglich 7.5V über ein Netzteil versorgt. Er scheint damit stabil zu laufen und die Spannung an den "+"- und "O/M"-Ausgängen liegt bei 7V, also nicht so weit oberhalb der für das Servo erlaubten 6V.
  • Der Anschluss des Servos wird wie folgt vorbereitet:
    • Die Signalleitung an einen "O"-Ausgang
    • Servo-Versorgung an den TX-"+"-Ausgang. Hier evtl. auch einen "O"-Ausgang (Vollgas) wählen, damit man Versorgung und PWM-Signal simultan aktivieren kann.
    • Servo-Masse an die TX-Masse
    • Zwischen Signal- und Masse benötigt man noch einen Lastwiderstand, damit man eine schöne fallende Flanke des PWM-Signals hinbekommt: 500Ohm, ein ft-Lämpchen tut's auch.
  • RoboPro Interface-Test starten und für den verwendeten Servo-PWM-"O"-Ausgang die "512"-Schrittweite wählen:
    • 190 => Pulsdauer 1ms, linker Anschlag
    • 305 => Pulsdauer 1.5ms, Mittelstellung
    • 380 => Pulsdauer 2ms, rechter Anschlag
  • Servo anschließen ... Es klappt!
    • Das Billig-Servo funktioniert tadellos
    • Ein anderes etwas besseres Servo regelte bei längeren Pulsweiten (>1.8ms) die Position nicht gut ein (es brummte) und wurde etwas warm, was es sonst nicht tut. ... Es lebt aber noch.
Naja, mehr eine Spielerei. Ich empfehle das nicht unbedingt zur Nachahmung, auch wenn bei mir alles heil geblieben ist. Leider gibt's keine 9V/200Hz-PWM-Servos.
Beste Grüße,
Helmut

hamlet
Beiträge: 332
Registriert: 12 Jan 2011, 21:41

Re: Servo Direkt an TX Controller anschließen

Beitrag von hamlet » 31 Jan 2015, 13:21

Hallo,
Danke für den Tip mit den Dioden: Es sind 0.7V Spannungsabfall pro Si-Diode (?). Dann müsste man bei vier in Reihe und einem vom Akku versorgten TX bei den Servos im grünen Bereich sein.
Ich habs wie vorgeschlagen nochmal mit einer 6V Versorgung des TX und einem weiteren Servo-Typen probiert. Die Spannung an den Servos lag bei knapp über 5V, also im grünen Bereich. Das Resultat mit dem Billig-Servo aus dem ersten Test und dem neu getesteten etwas größeren Typen ist perfekt. Sie funktionieren einwandfrei. Das Servo, dass schon im ersten Test Ärger machte, regelte wieder die Positionen nicht sauber ein und brummte auf der Zielposition weiter. Das liegt dann wohl an der 4-fach zu hohen PWM-Frequenz. Aber immerhin zwei von drei Servo-Typen kommen damit klar.
Ich denke, dass das PWM-Signal von einem HW-Modul, das wahrscheinlich sogar im ARM-Controller integriert ist, erzeugt wird. Wenn dem so ist, ist die zeitliche Stabilität des Signals von der CPU-Last unabhängig.
Beste Grüße,
Helmut

rfeneberg
Beiträge: 49
Registriert: 01 Nov 2010, 02:33
Wohnort: München

Re: Servo Direkt an TX Controller anschließen

Beitrag von rfeneberg » 31 Jan 2015, 18:40

Hallo hamlet,

Das ist wirklich eine gute Idee und einen Versuch wert. "Digital-Servos" sollten mit den 200 Hz klarkommen. Normale Servos überleben das nicht lange. Beispiele für passende Servos findet man z.B. In solchen Listen:
http://www.beastx.com/deu/servoliste_frame.php

Die Servoversorgung könnte man mit einer getrennten, geregelten 5 oder 6 V Quelle (bei HV-Servos bis 7,2 oder gar 8,4 V, wobei diese doch in einer höheren Leistungsklasse liegen und relativ viel Strom benötigen) realisieren. Evtl. kann man einen Modellbaufahrtregler mit integrierten BEC einsetzen und daran gleich einen kräftigeren Motor betreiben...
Über die TX(T)-Anschlüsse würde ich die Servos jedenfalls nicht versorgen, da bei Servos doch ganz schöne Stromspitzen auftreten können.
Die in Reihe geschalteten Dioden braucht man dann nur noch für das PWM-Signal um die Ausgangsspannung auf die Höhe der Servospannungsversorgung zu begrenzen.
Alternativ: Kleiner Vorwiderstand im PWM-Signalpfad und Diode gegen Servospannungsversorgung zur Spannungsbegrenzung. Die um 0,7 V oder 0,3 V zu hohe Spannung am PWM-Eingang gegenüber der Servoversorgung sollten die Servos überleben. Vorteil: Das PWM-Signal wird wegen fehlenden Dioden im Signalpfad noch aktiv nach GND gezogen.

Viele Grüße und vielen Dank noch einmal für die Idee,
Robert

thkais
Beiträge: 381
Registriert: 31 Okt 2010, 21:45

Re: Servo Direkt an TX Controller anschließen

Beitrag von thkais » 01 Feb 2015, 10:43

moin,
@hamlet: Manchmal sieht man den Wald vor lauter Bäumen nicht.... gute Idee, die so offensichtlich ist, dass ich nicht drauf gekommen bin... :roll:
Das PWM-Signal wird "etwas" aufwändiger erzeugt, die Motortreiber sind per SPI am ARM angebunden - es werden permanent neue Daten vom ARM über die SPI an die Motortreiber gesendet, die PWM wird also "zu Fuß" per Software erzeugt. Vermutlich läuft das in einem (Timer-)Interrupt, die Frage wäre dann inwiefern dieses Signal bei verschiedenen Belastungszuständen des Prozessors stabil bleibt (ist abhängig von den Interrupt-Prioritäten).
Gruß
Thomas

hamlet
Beiträge: 332
Registriert: 12 Jan 2011, 21:41

Re: Servo Direkt an TX Controller anschließen

Beitrag von hamlet » 01 Feb 2015, 15:45

Hallo,
Klasse, es gibt also Servos, die mit den 200Hz zurechtkommen. Ich hab nur kurz gesucht: Preiswerte digitale Servos sind schon ab 20€ zu haben. (Sie können aber auch richtig teuer sein.) In Verbindung mit Roberts klasse Vorschlag „Kleiner Vorwiderstand im PWM-Signalpfad und Diode gegen Servospannungsversorgung zur Spannungsbegrenzung.“ könnte man diese sogar sehr elegant am TX anschließen. Bleibt dann nur noch die Herausforderung die Servos mechanisch sauber in ein ft-Modell einzubauen.
Der Riesen-Vorteil von Servos im Vergleich zum Encoder ist, dass man lediglich einen „O“ und keinen „M“-Ausgang zur Ansteuerung benötigt. Im Prinzip ließen sich 8 Servos ansteuern. Die Counter-Eingänge und der Eingänge für die Nullposition blieben auch frei und ließen sich anderweitig nutzen.
Bleibt nur noch die Frage wie stabil das SW-generierte PWM-Signal bei hoher Prozessorlast ist … Da hilft wohl nur Probieren. (Danke Thomas für die Info. Wo hast du die her? Hab gerade ins Datenblatt vom TX-ARM geschaut … keine HW-PWM … Die 6 general purpose PWM Module meines mbed LPC1768 würden für die 8 TX-Ausgänge auch nicht reichen.)
Die beiden analogen Servos, die bei mir funktionierten, sind von demselben Hersteller “DGServo“.
http://www.exp-tech.de/servo-generic-me ... -rob-10333
http://www.exp-tech.de/dagu-pan-tilt-kit-with-servos (DGServo 9g)
Dasjenige, das Ärger machte, wird von einem uns bekannten in Waldachtal ansässigem Spielwarenhersteller vertrieben (-;
Beste Grüße,
Helmut

thkais
Beiträge: 381
Registriert: 31 Okt 2010, 21:45

Re: Servo Direkt an TX Controller anschließen

Beitrag von thkais » 01 Feb 2015, 16:03

Hallo Hamlet,

Gehäuse auf - Chips ansehen - Motortreiber identifizieren - Datenblätter runterladen - Oszilloskop - fertig ;)

Die üblichen Analog-Servos (die ich bislang analysiert habe) haben eine Schaltung, die einen Sägezahn erzeugt und anhand des ankommenden Impulses die Soll- mit der Ist-Position (internes Poti) vergleichen. Wenn man die zu schnell ansteuert, kann sich diese Schaltung nicht sauber neu initialisieren.
Gruß
Thomas

Antworten