PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : servo wie ansteuern



mcmonkey
01.09.2004, 11:35
kann mir jemand sagen wie ich einen servo "richtig" ansteuere.
ich habe nämlich immer ein proplem mit dem dritten pol.

Frank
01.09.2004, 11:51
Welcher Controller? Welche Programmiersprache?

DerInder
01.09.2004, 12:03
Welcher Servo-Anschluss? (Futuba/Graupner....)
Analog-/Digital-Servos?
So viele Fragen [-(

trickTronic
01.09.2004, 12:15
Servos haben 3 Anschlüsse:
V+
GND
PWM
Der PWM-Eingang wil in 20ms eine Flanke von 0,6 bis 2ms haben.
Also 0,6ms beim einen Anschlag, 2ms für die gegenteilige Position.

Den Rest gilt es auszuprobieren....
schöne Grüße, Alex

Frank
01.09.2004, 12:21
Programmiersprache Assembler, Bascom oder C? In Bascom brauchst du dich um nix zu kümmern, da gibt es Befehl für Servos!

RCO
01.09.2004, 12:26
Servos haben 3 Anschlüsse:
V+
GND
PWM
Der PWM-Eingang wil in 20ms eine Flanke von 0,6 bis 2ms haben.
Also 0,6ms beim einen Anschlag, 2ms für die gegenteilige Position.


Könntest du das mit dem PWM etwas näher erklären.
Also wenn ich das richtig verstehe, dann lege ich wenn ich:
Schnell in die eine Richhtung will -> 2V
Langsan in die eine Richhtung will -> 1,5V
Schnell in die andere Richhtung will -> 0,6V
Langsam in die andere Richhtung will -> 1,1V

UNd sind das immer von 0,6 bis 2 V?

MFg Moritz

01.09.2004, 13:12
Nö, so geht das nicht. Entscheident ist die Impulsdauer und nicht die Spannung.
Siehe:
https://www.roboternetz.de/phpBB2/viewtopic.php?t=2413&highlight=servo+ansteuern
https://www.roboternetz.de/phpBB2/viewtopic.php?t=1697&highlight=servo+ansteuern

RCO
01.09.2004, 13:26
Ja, langsam blick ich...
ISt ja garnicht so einfach.
Irgendwie dacht ich immer, dass der Servo nur nen kleiner GLeichsctrom-Getriebemotor sei...

MFg Moritz

eFFex
01.09.2004, 15:53
Irgendwie dacht ich immer, dass der Servo nur nen kleiner GLeichsctrom-Getriebemotor sei...

...der mit einer steuerungselektronik versehen ist, die eben die ansteuerung wie oben erklärt ermöglicht.

mcmonkey
01.09.2004, 18:07
Danke das war alles was ich wissen wollte .
Übrigents ich versuche es in Bascom

raptor_79
04.03.2005, 16:01
hallo

muß man die servos unbedingt an portB anschließen?? da hab ich schon ein display dran?? ghet nicht portC?? den hätte ich noch frei.

Siggi83
04.03.2005, 16:59
Hallo raptor_79,

kommt ganz darauf an was für eine Lösung du anstrebst. Am besten ist meiner Meinung nach die PWM Lösung, dafür benötigst du am den OC1 Ausgang am AVR.
Falls du aber das Signal Softwaremäßig erstellst kannst du auch jeden x-beliebigen Port verwenden...

gruss Siggi

P.S: Kannst du nicht einfach dein Display auf PortC hängen?
Und beim nächsten mal kannste doch einfach einen neuen Thread aufmachen...

raptor_79
04.03.2005, 17:36
@ siggi

ne, des display soll da bleiben. gut ich hab einen avr tamega32 der hat ja mehrere pwm ausgänge. 2 brauch ich für motoren.
das mit dem display ist so eine sache, weil, ich weiß nicht, wie man es auf einem anderen port zum laufen bringt.

aber nochmal zum servo.
muß ich da nur einen takt generieren? (also, mich würde die software pwm schon ansprechen. )
muß ich da nur einen port-pin aus und ein schalten?? oder wie geht das??
wie wird dann das servo gedreht, und auf null zurückgefahren?? hast an codeschnipsel für mich?? wäre super, wennst mir des erklären könntest, bin nämlich noch ein anfänger....

Siggi83
04.03.2005, 18:38
Servus, da bin ich wieder...

Was für eine Programmiersprache verwendest du denn? Muss ganz ehrlich sein- ich kann nur C, aber vom Grundprinzip müssten ja alle gleich sein. Bascom hat anscheinend den Vorteil der fertigen Routinen zum ansprechen der Servos. Hab das aber hier auch nur gelesen...

Die Softwarelösung hat anscheinend den Nachteil das dein Controller nur für die generierung des Signals beschäftigt ist. Kann das dir aber nicht bestätigen da ich das selber noch nicht ausprobiert habe. Das Ansteuern eines Servos funktioniert ja so das du ein Signal hast mit ca. 50Hz oder besser 20ms Periodendauer. In diesen20ms hast du einen kurzen Spike von 1 bis 2 ms der die Laufrichtung des Servos bestimmt. Im Prinzip setzt du einen Port für diese Zeit (1 bis 2ms) auf einen High-Pegel, wartest dann 20ms und machst das auf ein neues...

2ms entspricht volle Fahrt in die eine Richtung, 1ms genau die andere Richtung und 1,5ms ist mitte...
Effizient ist das ,glaube ich zumindest, nicht.

wo liegt denn das Problem mit dem Display?
Was willst du denn mit dem Servo machen?

gruss Siggi

achso, das mit dem Anfänger ist gut- hab mich jetzt auch erst seit einer Woche mit dem Thema beschäftigt und mir mal just for fun einen Roboter zusammengebaut...

raptor_79
05.03.2005, 20:22
ich will mit dem servo eine kmera drehen. sonst nix. will nur links oder rechts drehen. und dann wieder in die mitte stellen können(fahrtrichtung)

binaer
05.03.2005, 21:09
Dann würd ich den Servo in kleinen Schritten drehen lassen. D.H. immer wieder auf kleine zwischenstationen positionieren, denn direkt vom einen ende zum andern könnte man einfach machen, aber das dürfte für eine Kamera doch ziemlich schnell sein.
lg binaer

Siggi83
06.03.2005, 14:31
Nur 'ne ganz kurze Antwort da ich gleich zum Skifahren geh *freu*:

Probier das mal mit der Software PWM aus, ich kann dir nichts versprechen aber einen Versuch ist das allemal Wert. Soll sich deine Kamera ständig bewegen oder nur ab und zu mal falls ein Hindesnis (oder ähnliches) entdeckt worden ist?

ich bin dann die nächste Woche weg, deshalb gibts von mir jetzt ne Woche lang keine Antworten mehr, aber ich denke es gibt hier genug die sich auch damit auskennen....

gruss Siggi

Superhirn
25.03.2005, 17:16
Also ich verwende Servos als Antrieb für meinen Roboter.
Ansteuern kann ich sie einfach mit einem PWM-Signal. Das geht immer! Wenn nicht dann ist das Servo hin!
V+ auf V+ (5V)
GND auf GND
PWM auf den Anschluss am Controller.
Ich hab zwar keine erfahrung mit diesen Controllern (kenne bisher nur BS2 von Parallax, aber mit ihn funktioniert es!).

Außerdem kannst du deine Kamera mit den Servos auf Millimeter genau stellen und wieder genau in die Nulllage stellen. Alles mit den PWM Signal!

Gruß
Superhirn

sdz55
11.02.2006, 13:17
Verwendest du 360° Servos?
Oder hast du sie umgebaut?

Superhirn
11.02.2006, 18:17
Verwendest du 360° Servos?
Oder hast du sie umgebaut?

umebaut. aber wenn du immer speziell die richtung wissen willst musst ein 360° haben

super_castle
11.02.2006, 18:48
...aber wenn du immer speziell die richtung wissen willst musst ein 360° haben...

geht auch mit einem 180ziger servo...........he.....


Castle

Superhirn
12.02.2006, 09:26
...aber wenn du immer speziell die richtung wissen willst musst ein 360° haben...

geht auch mit einem 180ziger servo...........he.....


Castle

ich dachte du willst eine kamera (oder war das wer anders) im kreis drehen