PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Andere Möglichkeit für Servoansteuerung?



easyprivate
01.09.2008, 23:05
Hi@all!

Habe mittlerweile mit dem Aufbau meines ersten Bots begonnen (Hexabot).Das Grundgestell inkl Servos ist nun fast fertig...

Bin mir aber immer noch nicht sicher wie ich die Servos ansteuern soll....

Möglichkeit A: Ich lege mir das RN-Control mit dem 32er zu...
Ich kann allerdings nicht programmieren und weiß auch nicht wie ich das erlernen soll^^.Kenne mich zwar mit zb SPS-Logiken aus aber das bringt mich da wohl nicht wirklich weiter...

Möglichkeit B: Ich realisiere das ganze mit vielen kleinen Relais ganz ohne Microcontroller... Da müsste ich noch rausfinden wie ich einen Servo ohne Microcontroller ansteuern kann...

Kann mich mal bitte jemand aus dem Chaos in meinem Kopf befreien? ](*,)

RP6conrad
01.09.2008, 23:22
B soll ich gleich vergessen. Servos benotigen einen Puls von 1mS bis 2 mS jeden 20 mS. Mit diese Pulszeiten machen die relais nicht mehr mit... So bleibt nur die µ controller ubrig. Da bestehen auch µ controller die schon komplett programmiert sein um 16 Servo's anzusteuern. Die Schnittstelle ist dan meistens Seriel (RS232). Das programmieren bleibt immer notwendig....Wen du SPS programmieren kan, kansst du auch µcontroller lernen programmieren. Habe ich auch so gemacht (erst SPS S5, jetzt WinAVR in C). Macht riesenspass !!

easyprivate
02.09.2008, 00:30
Denke ich mir auch... Naja habe auch mit s5 angefangen... wie hast du es gelernt? bücher o.ä.?

BastelWastel
02.09.2008, 08:58
Das ist nicht viel anders als andere Sprachen.
Wenn du irgend eine Sprache kannst, sei es C, Basic oder der Art hast du schon die halbe Miete.
Schau dir einfach mal das RNwiki durch, da sind schon paar Tips zum anfangen. Fortbildend vllt. ein Buch dazu.
Ohne uC Vorkenntnisse gleich an nen Hexabot zu gehen ist auch nicht optimal, wenn die Erfolgserlebnisse auslbeiben kanns schnell nervig werden ;)

pongi
02.09.2008, 09:06
Im RN-Wissen gibts ein Beispielcode für C, womit man 10 Servos mit einem MegaXX ansteuern kann, funktioniert super, und braucht nur wenige Ressourcen.

Feratu
02.09.2008, 10:22
Du könntest natürlich auch eine SPS S7 servobaugruppe nehmen ;P oder einfach Transistorausgänge benutzen.
Ist zwar dennoch nicht ganz optimal aber intressant wäre es aufjedenfall ^^

Gerko
02.09.2008, 13:01
Ich habe mal einen ATmega8 dazu verwendet 20 Servos anzusteuern. Mittlerweile funktioniert das ziemlich gut, einziges Problem bei meimem Hexabot, ich habe mir vorher nicht wirklich viele gedanken über den Aufbau gemacht, und so ist er leider ziemlich wacklig geworden.

Es gibt allerdings auch eigene Servoconroller soweit ich weiß. Die kannst du dann über alles mögliche Ansprechen, und die Position deiner Servos einstellen.

easyprivate
03.09.2008, 01:32
Ich habe mal einen ATmega8 dazu verwendet 20 Servos anzusteuern. Mittlerweile funktioniert das ziemlich gut....

Du hast nicht zufällig Lust mir das Programm mal als "Mustervorlage" zuzusenden? ;-) Damit ich einfach mal weiß wie sowas aussieht...


Ohne uC Vorkenntnisse gleich an nen Hexabot zu gehen ist auch nicht optimal, wenn die Erfolgserlebnisse auslbeiben kanns schnell nervig werden

Die Herausforderung ist es ja was mich an der Sache so reizt... Naja und mit dem Erfolgserlebnis haste wohl recht,mir is auch klar dass das noch gaaaanz lange dauert bis es so funktioniert wie es soll^^ Bleibe aber dran,will ja schließlich was dabei lernen...

Reicht mir ein RN-Control mit Atmega32,dem RS232 Kabel und Bascom als Programm oder brauche ich sonst noch etwas??? (mal abgesehen von den Servos und dem fertigen Bot)

ikarus_177
03.09.2008, 09:26
Reicht mir ein RN-Control mit Atmega32,dem RS232 Kabel und Bascom als Programm oder brauche ich sonst noch etwas???

hmmm, ich denke, dass eine RN-Control (als alleiniger Controller) nicht optimal ist, allein schon von der zur Verfügung stehenden Rechenleistung. Außerdem sind da schon Bauteile drauf, die dir als Hexa-Bauer nicht viel bringen werden (Motortreiber etc.). Diese Bauteile bedeuten klarerweise wieder mehr Gewicht. Gut, das mag jetzt vielleicht nicht soooo kritisch sein, wenn man Servos hat, die stark genug sind, und auch noch Reserven haben.

Aber die Rechenleistung ist wahrscheinlich viel zu gering, wenn du die Kinematik onboard berechnen willst, und das sollte schon mit einer Frequenz ~50Hz erfolgen, damit die Bewegungen auch "geschmeidig" ;-) aussehen. Wenn du nur vorgefertigte Bewegungsmuster abspielen willst, dürfte es funktionieren, dann hast du dem Bot aber jede Selbstständigkeit genommen. Zumal die Fortbewegung nicht alles ist, es gibt ja noch so spannende Themen wie Sensorik...


Viele Grüße
ikarus_177

hosti
03.09.2008, 10:27
Am besten machst du dir ein eigenes Board, das läst sich mit wenigen Bauteilen aufbauen und nach deinen Wünschen änder und erweitern

Gerko
03.09.2008, 11:12
Also mein ATmega8 wird über einen anderen Controller mithilfe eines TWI angesteuert. D.h. der ATmega8 ist nur für die Position der servos verantwortlich, und übernimmt sonst keine Rechenleistung. Das hat den vorteil das man mit einem anderen Controller nur noch sagen muss, Servo1-110°...
Ich habe seither sehr wenig zeit gehabt den Code zu verbessern. Eigentlich ist das einzige "schirche" daran die TWI übertragungsabfrage. Falls jemand weiß wo man das lernen kann, ich interessiere mich dafür ^^

Von mir aus gebe ich dir auch meinen Code (bin aber derzeit nicht Zuhause, also heute Abend könnt ich in dir schicken), er ist allerdings in Assembler geschrieben, ich weiß nicht in wieweit dir das weiterfhilft, aber ich kann dir ja was erklären wenn du noch Fragen dazu hast.

mfg
Gerko

easyprivate
03.09.2008, 18:20
Von mir aus gebe ich dir auch meinen Code (bin aber derzeit nicht Zuhause, also heute Abend könnt ich in dir schicken), er ist allerdings in Assembler geschrieben, ich weiß nicht in wieweit dir das weiterfhilft, aber ich kann dir ja was erklären wenn du noch Fragen dazu hast.


Das wäre super,danke!

Auch danke an die anderen hilfsbereiten Leute hier^^!!!!!!!!!!