PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Servo Hack



Bluesmash
07.04.2006, 19:10
Hallo zusammen

Es ist zwar kein riesiges Projekt aber ich denke es würde den einen oder andern Interessieren.

Ich habe soeben mein erstes Servo nach anleitung und inspiration von uwegw umgebaut.

- zuerst wurde die gesamte elektronik entfernt und den hardware anschlag entfernt, damit sich das Servo um 360° drehen kann.

- cny70 mit schmitttriger in das gehäuse gebaut und ein kleines loch damit er freie sicht auf das innerste zahnrad hat.

- das innerste zahnrad ganz schwarz angemalt und 3 weisse markierungen am rand.

somit habe ich jetzt ein antriebsservo mit integriertem impulsgeber mit ca. 145 impulse pro umdrehung

und nun einige Bilder:

http://img424.imageshack.us/img424/4046/sany14853vj.jpg (http://imageshack.us)


http://img471.imageshack.us/img471/5004/sany14862pr.jpg (http://imageshack.us)


http://img447.imageshack.us/img447/3671/sany14872xu.jpg (http://imageshack.us)


http://img413.imageshack.us/img413/5057/sany14882sj.jpg (http://imageshack.us)


http://img461.imageshack.us/img461/3641/sany14900br.jpg (http://imageshack.us)

womb@t
08.04.2006, 04:42
Wow, tolles Projekt, auch die Auflösung mit 145 Impulsen ist gut, wie lang hast du gebraucht? Und was ist das für ein Servo (Preisklasse)?

Goblin
08.04.2006, 07:18
nett nett! Ist der Motor nach Entfernen der Elektronik noch entstört?

Manf
08.04.2006, 07:35
Es gibt hier noch einen ähnlichen Thread, in dem auch ein Servo auf diese Weise gehackt wurde.
In jedem Fall, vielen Dank für die schöne Darstellung.
Manfred


nach anleitung und inspiration von uwegw
Ich sehe gerade es wurde ja auch erwähnt, hier nochmal die Referenz

https://www.roboternetz.de/phpBB2/viewtopic.php?t=8139

https://www.roboternetz.de/phpBB2/files/servo_mit_cny70.jpg

Bluesmash
08.04.2006, 12:08
Ich habe alles in allem ca. 2h daran rumgebastelt. jetzt mus noch das 2. umgebaut werden.

das Servo habe ich von roboter-teile.de für 19,43 Euro. Es ist kugelgelagert mit "Carbonide"-Getriebe und 56Ncm. ich hoffe es hält genug lange durch als antrieb, da ja die servos nicht auf solche dauerbelastungen ausgelegt sind...

nö entstört ist da nix, nach dem entfernen der elektronik ist es ja ein ganz normaler dc motor... da wir gleich beim thema sind, sollte man den motor noch entstören? ich betreibe ihn mit einem L293D, hat der nicht schon ne entstörung integriert?

gruss bluesmash

darwin.nuernberg
08.04.2006, 13:30
Das mit dem Impulsgeber ist auch ne gute Idee.

Erst vor Kurzem habe ich meine ersten Servos gehackt.

Allerdings so Mini-Servos und da ist auch nicht so viel Platz für einen integrierten Pulsgeber.


https://www.roboternetz.de/phpBB2/album_pic.php?pic_id=888

Das Teil hat für seine Größe ein beachtliches Drehmoment,
nur eben gelagert sind die Miniservos nicht und Eiern auch etwas (Kunststoff Getriebe).

Auch die Drehzahl und die daraus resultierende Geschwindigkeit ist eher für Kurzstrecken akzeptabel.



In den Dimensionen eines Normalen Servos kriegt man auch schon fast ein selbstgebautes Getriebe hin.

Wenn es äußerst Platzsparend oder Kompakt werden soll und die Drehzahl nicht so wichtig ist,
dann sind umgebaute, entschuldigung "gehackte" Servos unschlagbar.

ICH_
08.04.2006, 22:15
I ich hoffe es hält genug lange durch als antrieb, da ja die servos nicht auf solche dauerbelastungen ausgelegt sind...


Also ich meine, dass die Servos bei ihrem eigentlichen Arbeitseinsatz mindestens die gleichen Belastungen aushalten müssen. Wenn die in irgendeinem Kunstflugzeug wasweißichwieoft die Ruder durch die Gegend bewegen müssen, und das noch schnell. Und wenn dann so ein Flugzeug auch noch 200km/h fliegt sind die Belastungen alles andere als klein. ;-)

Andre_S
09.04.2006, 09:24
Hallo,



....irgendeinem Kunstflugzeug wasweißichwieoft die Ruder durch die Gegend bewegen müssen, und das noch schnell. Und wenn dann so ein Flugzeug auch noch 200km/h fliegt sind die Belastungen alles andere als klein. ;-)

wow,...da sind dann aber auch keine Servos für 19 Euro drin...


Gruß André

darwin.nuernberg
13.04.2006, 17:42
Also ich meine, dass die Servos bei ihrem eigentlichen Arbeitseinsatz mindestens die gleichen Belastungen aushalten müssen. Wenn die in irgendeinem Kunstflugzeug wasweißichwieoft die Ruder durch die Gegend bewegen müssen, und das noch schnell. Und wenn dann so ein Flugzeug auch noch 200km/h fliegt sind die Belastungen alles andere als klein. ;-)


Du darfst nicht vergessen, dass die Motörchen in den Servos relativ hoch über- bzw. untersetzt sind.
Und die Motoren laufen ja nicht immer, sondern nur wenn eine andere Stellung angefahren werden muss.
Das ist je nach Servo und Ansteuerung (Qualität) mal mehr und mal weniger.
Auf jeden Fall dreht der Servo nicht ständig in eine Richtung sondern
bleibt mal stehen oder dreht entgegengesetzt.

Das Getriebe sorgt für das Drehmoement duch Umsetztung von Weg in Kraft.
Die eigentlichen Motoren sind alles andere als kräftig, können sie eigentlich garnicht.

ICH_
15.04.2006, 10:18
Schon klar, dass die durch das Getriebe untersetzt sind ;-)
Aber wenn die Servos als Servo benutzt werden wird der Motor ja noch weitaus mehr belastet, da er dauernd unter Strom steht um die Position zu halten! Ein kaum belastetes laufen in eine Richtung schadet wohl viel weniger als einen angehaltenen Motor mit ziemlich viel Strom festzuhalten oder dauernde schnelle Richtungsänderungen.

Gruß Tobias

Omeg@
15.04.2006, 11:13
Moin,

Ich hab mal ne blöde Frage (genau genommen 2): Wozu ist der schmitt-triger gut? Braucht man den unbedingt? Bitte um Aufklährung. :)

MfG Omeg@

raoul4
15.04.2006, 13:25
der cny70 gibt ja nicht entweder 0V (=1) oder 5V (=0) aus, sondern nehmen wir mal an, 1,3V wenn er auf die schwarze fläche "guckt" und 4,4V wenn er die weiße fläche sieht. der schmitt trigger macht daraus eindeutige 0V oder 5V.
mfg

Bluesmash
21.04.2006, 23:44
hat hier schonmal jemand gehackte servos längere zeit eingesetzt? und kann eventuell seine erfahrungen mitteilen? anscheinend gehen hier die meinungen auseinander...

@tobias: der motor wird ja nicht festgehalten wie zum beispiel ein blockierter motor... er läuft ja nur wenn er aus seiner sollposition fällt, ja ok wenn das servo genug belastet ist probiert der motor immer in seine sollposition zu kommen und ist fast blockiert...

@omega: nochmal zum schmitttriger: ich hatte mal ne gabellichtschranke ohne schmitttriger am avr, und anstatt einen impuls hat es manchmal 10-20 impulse gezählt, weil es halt keine sauberen flanken waren, das selbe ist hier auch der fall da ja nicht sofort von weiss auf schwarz geschaltet wird und somit praktisch jede spannung anliegen kann, dies führt dann zu undefinierten zuständen am port des avr...


gruss bluesmash

zardoz
22.04.2006, 01:20
Moin,

zu den "gehackten" Servos gibt es Erfahrungen aus dem 1:35er Modellbaubereich. Als Antriebe haben sie sich nicht bewährt, die Getriebe haben nach relativ kurzer Zeit aufgegeben.

Deshalb teste ich z. Zt. Motoren von http://www.solarbotics.com/. Sind jedenfalls preisgünstig und werden superschnell geliefert, obwohl die Firma in Kanada beheimatet ist.

Nice weekend,
Zardoz

darwin.nuernberg
22.04.2006, 08:25
Als Antriebe haben sie sich nicht bewährt, die Getriebe haben nach relativ kurzer Zeit aufgegeben.

Kommt auf die Gertriebe an.
In billig und in den meisten mini- Servos sind Kunststoff Zahnräder drin,
sehr feine und dünne sogar (z.T.viel dünner als 0,5mm).

Das die irgendwann mal aufgeben, besonders bei höherer Beanspruchung ist wohl klar.

Dann sind die Achsen auch noch aus Kunststoff und auch noch in Kunststoff gelagert.

Das muss ja irgendwann den Geist aufgeben, auch wenn die Teile geschmiert sind, es entsteht Reibung.
Und was Kunststoff und vor allem Thermoplast bei höheren Themperaturen macht weis ja wohl jeder.


Entsprechend höherwertige Servos haben Zahnräder aus Metall und sind auch noch Kugel-/Rollen- gelagert.

Also explizit nach diesen Eigenschaften suchen wenn man die Anforderungen schon kennt.


Für Robonova und Konsorten sollen sogar Spezialservos eingesetzt werden, speziell auf die Robotik zugeschnitten.
Was das für weitere spezialitäten sind weis ich jetzt auch nicht,
auf jeden Fall mit Metallgetriebe und ggf. mehrfach Kugelgelagert.

http://www.ls129.nildram.co.uk/RoboSavvyPages/Home//images//robonova1.gif
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=147685#147685



Ich habe schon von Spezialservos für die Robotik gehört,
da soll einer über €250,-- kosten.
Klar Preise nach Oben können meist/immer unbegrenzt sein.
Der muss dann wohl ein Edelstahlgetriebe und ein imens hohes
Drehmoment sowie eine absolut genaue Positionierung
(mit hoher wiedeholgenauigkeit) haben,
ob das so ist vermute ich nur.

Allerdings wird wohl kaum jemand so einen Hi-End Servo hacken oder?



Immerhin ist dervon Bluesmash verwendete Servo schon mal Kugelgelagert.
Die Zahnräder sind wohl aus kunststoff, scheinen aner Faserverstärkte Varianten zu ein (reine Vermutung).
Ein bisschen Silikonöl oder Fett
(Modellabau Stoßdämpferöl 100% silikon oder Klüberpaste auch aus dem Modellbau)
wären bestimmt nicht schlecht um die Reibung an den Zähnen zu vermindern.
Wer gut schmiert, der gut fährt..



Schon klar, dass die durch das Getriebe untersetzt sind ;-)
Aber wenn die Servos als Servo benutzt werden wird der Motor ja noch weitaus mehr belastet, da er dauernd unter Strom steht um die Position zu halten!

Du darfst aber nicht vergessen,
die Kraftumsetzung funktioniert in beide Richtungen in emen Getriebe.

Also ein schwaches Morordrehmoment wird vom Getriebe
in ein hohes umgesetzt (Weg in Kraft), das erwähnt ich schon mal.

Umgekehrt wird ein hohes Drehmoment vom Getriebe
in ein kleines Drehmoment zum Motor umgesetzte (Kraft in Weg).
Der Motor braucht also garnicht so viel Bestromung um die Welle zu blockieren.

Benedikt.Seidl
22.04.2006, 08:47
ich spiele auch mit dem gedanken ein servo zu hacken und es als antrieb zu nutzen. deswegen habe ich mal kruz gegoogelt und bin dabei auf folgendes gestoßen: auf das hier (http://www.seattlerobotics.org/encoder/200304/Futaba%20S148%20Servo%20mod%20for%20PWM.htm) und das hier (http://www.seattlerobotics.org/guide/servohack.html).

der eine übernimmt die komplette elektronik des servos und ersetzt nur das poti durch 2 festwiderstände, sodass das servo denkt es würde genau in der mitte stehen. zum steuern verwendet er dann die ganz nochmalen servo "befehle". nur das das servo dann nie zu seinem ziel kommt, da sich das poti ja nicht mehr mitdreht (ups,.. so steht das ja in der wiki (https://www.roboternetz.de/wissen/index.php/Servos#Anmerkungen) auch schon)

der andere übernimmt nicht mehr die ganze elektronik sondern nur noch die h-brücke des servos.

was ist jetzt das sinnvollste? was kann man am leichtesten aus einem microcontroller ansprechen?

und noch eine frage: welche servos (der unteren preisklasse) empfehlen sich zum hacken?

edit: ich bin in diesem thread (https://www.roboternetz.de/phpBB2/viewtopic.php?t=8139) auch noch fündig geworen (auf den wird weiter oben auch schon gelinkt )

SEIDL.

darwin.nuernberg
22.04.2006, 09:05
der eine übernimmt die komplette elektronik des servos und ersetzt nur das poti durch 2 festwiderstände, sodass das servo denkt es würde genau in der mitte stehen. zum steuern verwendet er dann die ganz nochmalen servo "befehle".
der andere übernimmt nicht mehr die ganze elektronik sondern nur noch die h-brücke des servos.

was ist jetzt das sinnvollste? was kann man am leichtesten aus einem microcontroller ansprechen?

und noch eine frage: welche servos (der unteren preisklasse) empfehlen sich zum hacken?

SEIDL.

Du hast einen Denkfehler drin:
ein Servo hat einen Anschlag, der muss raus um ihn als Motor zu verwenden.
Die Selvoelekronik drinn zu lassen ist mit Deiner Variente keine schlechte Idee.

Angesprochen wird der Servo dann wie ein normaler Servo.
Du musst eben bevor Du diesen benutzen kannst jeden Servo "trimmen"
also bestimmen welche impulsbreite die Nullstellung ist (Toleranzen von den Widerständen)

Wie eine Servo angesprochen wird ist relativ einfach (in Bascom)
Ein Beispiel ist sogar dabei:


'Bascom Beispiel:
' Hier noch die Compiler Direktiven einsetzten
' Servo an PortB.0
Config Servos = 1 , Servo1 = Portb.0 , Reload = 10
Config Portb = Output
Enable Interrupts

Dim I As Byte
Do
For I = 0 To 100
Servo(1) = I
Waitms 1000
Next
Loop
End

oder Du nimmst gleich das komplette Demo von MCS

'-----------------------------------------------------------------------
' servo.bas demonstrates the SERVO option
'-----------------------------------------------------------------------

Achso ja der Servo wird mit VCC (+5V) und GNG verbunde sund der Steuereingang kann direkt an den Port des AVR (manchmal hilft ein 10k Pullup Widerstand (nach VCC natürlich).

Benedikt.Seidl
22.04.2006, 09:22
Du hast einen Denkfehler drin:
ein Servo hat einen Anschlag, der muss raus um ihn als Motor zu verwenden.
Die Selvoelekronik drinn zu lassen ist mit Deiner Variente keine schlechte Idee.

stimmt. das habe ich vergessen zu erwähnen.

wow. so ein servo anzusteuern geht also wirklich einfach (zumindest schaut es für mich als laie so aus ;-) ).

geht das mit c dann genauso einfach? (ich glaube nämlich dass es für basecom keinen os-x compiler gibt, oder?)

ich muss noch entschuldigend hinzufügen, dass ich bis jetzt alles nur in meinem kopf zusammen spinne und noch nichts real gemacht/ausprobiert habe,... aber die teile sind auf dem weg ;-)

SEIDL.

darwin.nuernberg
22.04.2006, 09:57
Also Bascom gibts (noch) nicht füt MAC
BASCOM-AVR is the original Windows BASIC COMPILER for the AVR family. It is designed to run on W95/W98/NT/W2000 and XP

Aber mit C sollte es auch kein Problem sein.
Der Servo erwartet 'nur' ein Pulsweiten moduliertes Signal.
Je nach Stellung.

Schau mal im WiKi: https://www.roboternetz.de/wissen/index.php/Servos

Da steht zur Ansteuerung der Hardwar alles was man wissen muss.

Evt. gibts für C auch fertige includes welche Servos bedienen.

Schau mal im Forum "AVR C-Programmierung" oder stelle da Deine Frage.
https://www.roboternetz.de/phpBB2/viewforum.php?f=34

Benedikt.Seidl
22.04.2006, 10:20
danke schön für die freundliche beantwortung dieser anfängerfragen!

SEIDL.

darwin.nuernberg
22.04.2006, 10:31
Vielleicht legst Du Dir ja doch noch 'nen PC zu.
Muss ja nichts aufregendes sein.
Das billigste vom billigen reicht für reine AVR Experimente mehr als aus.

/* Ich will Dich keinesfalles nicht vom MAC abbringen...
Aber wie Du selbst siehst alles bekommt man weder für das eine noch für das andere.*/

Bascom ist echt toll, gut es kostet was, wenn man die Vollverion braucht,
die Demo ist kostenlos, macht aber nur 2k (oder 4k?) fertigen Code.

Benedikt.Seidl
22.04.2006, 10:58
joa,.. im keller würde schon noch ein pc stehen,.. das dumme ist nur dass ich so mac verwöhnt bin, dass ich den pc nicht mal ins netzwerk bekomme. und nach einer gewissen zeit rumprobieren höre ich dann immer entnervt auf *g*

aber bald komm ein "atmel + mac os x"-tut von macgyver hier aus dem forum *freu* und dann wird das schon hinhauen,.. hoffe ich,..

und dann kommen noch mehr so einfache fragen für euch :-P

SEIDL.