PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Servo Ansteuerung



Gerko
26.11.2006, 13:34
Hi Leute!

Welche Controller eignet sich eigentlich am besten zur Ansteuerung mehrerer Servos? Ich will ca. 16 Servos ansteuern können, wobei ich später vielleicht noch mehr dazu geben will. Es sollten natürulich dann auch noch I/Os für verschiedene Sensoren ... frei bleiben.
Erfahrung hab ich bis jetzt nur mit einem ATmega16, aber ich habe damit noch nie einen Servo angesteuert. Im Wiki habe ich mir schon ein bischen durchgelesen wie soetwas funktioniert.

Ich hoffe ihr könnte mir dabei Weiterhelfen

Gerko

coCo
26.11.2006, 13:52
Hi,
wenn es nicht unbedingt ein einziger Controller sein muss, dann könnte eventuell das hier für dich interessant sein:
http://www.kreatives-chaos.com/artikel/rs232-servocontroller-s8io

Du könntest dann noch deinen Mega16 als "Master" verwenden und mit ihm die zwei Servo Boards ansteuern und hättest noch ein paar Pins für die Sensoren frei. Das ganze würde dann über Software UART laufen.

MfG

Gerko
26.11.2006, 18:05
der Link ist aufjedenfall einen Blick wert, ich denke sogar drüber nach das so durchzuführen, aber kann man nicht auch einfach mit 16 Pins vom ATmega16 direkt die Servos ansprechen?

recycle
26.11.2006, 19:40
aber kann man nicht auch einfach mit 16 Pins vom ATmega16 direkt die Servos ansprechen?

Grundsätzlich kannst du Servos mit dem ATMega auch direkt ansteuern.
Servos müssen aber kontinueirlich mit einem gepulsten Signal angesteuert werden. Dieses Signal zu erzeugen kostet Resourcen und je mehr Servos angesteuert werden sollen, desto mehr Resourcen sind erforderlich.
Ein paar Servos kann der ATMega nebenher ansteuern, aber nicht beliebig viele.
Ich glaube bis zu 8 Stück schafft er noch halbwegs problemlos, hat dann aber kaum noch Zeit sich um etwas anderes zu kümmern.
Mit sehr geschickter Programmierung gehts vermutlich auch noch mit mehr als 8 Servos, aber irgendwann ist dann Schluss.

Daher ist es bei mehrern Servos geschickter die Erzeugung des Signals für die Servos einem anderen Chip/Controller zu überlassen.