Hi Freunde,
ich möchte 18 Servos unabhängig von einander Regeln (für Hexapod
Roboter).
Dafür lege ich 8 bit (0-255) entsprechend dem gewünschten Servo Winkel
an einen Port. Dann die Servo-Adresse in Form von 5 Bit (Servo 1 - 18)
an einen anderen Port. Dann brauche ich eine Leitung, die ein Interrupt
am Controller auslöst, damit dieser die Werte für die Software-PWM
übernimmt. So schicke ich dem Controller die gewünschten Servo
Stellwinkel.
An 18 Augängen generiert der Controller dann für jeden Servo eine
entsprechendee Software PWM. Mit einem 20 Mhz Quarz sollte das kein
Problem sein, oder?
Was halter ihr davon? Irgendwo ein Denkfehler?
1.
Kann ich die PWM direkt an die PW Eingänge der Servos hängen?
2.
Die Servos haben eine gemeinsame 5 Volt Spannungsversorgung. Krieg ich
da Probleme und muss Kondensatoren vor jeden Servo hängen? Ich speise
das ganze mit Akkus.
3.
Da ich einen externen Quarz an XTAL1 und 2 hänge, kann ich die Pins dann
überhaupt noch nutzen? Sonst fehlen mir 2 IOs und ich müßte auf interne
Clock (16 Mhz) umschalten.
4. Ist der interne Takt genau genug, um die Servos anzusteuern? Habe
gehört die schwankt in Temperatur Abhängigkeit. Und meine Pins haben ja
ordentlich zu schalten, was ja auch Wärme bewirkt...
5. Porterweiterung (Schieberegister) kommt nicht in Frage, da die
Software so simpel und schnell wie möglich gehalten werden soll. Die
wird noch kompliziert genug.
6. Verbraten Servos nur bei Positionswechsel Energie, oder auch wenn sie
eine Position halten? Bei einem Schnecken getriebe, dürfte das halten ja
kein Problem sein...
Das war es erstmal. Ich bedanke mich herzlich für alle konstruktiven
Beiträge und Hilfestellungen.
Schönen Gruß,
Chris
#5. Porterweiterung (Schieberegister) kommt nicht in Frage, da die
#Software so simpel und schnell wie möglich gehalten werden soll. Die
#wird noch kompliziert genug.
Würde ich nicht sagen, so kannst du min.8 Servos an 2 Ports hängen, und
das ganze noch per Hardware-PWM !!!!!
Alles andere (Viele Servos per Software-PWM) ist murks und bringt nur
geringe Auflösungen.
Gruß,
Ich
1. kommt auf die servos an weiviel strom die wolle
2. ja musst du, den controller am besten mit einer stromkompensierenden
drossel von der versorgung "isolieren" um gleichtaktstörungen zu
unterdrücken
3. wenn da etwas dranhängt, zB ein quarz kann man die pins
logischwerweise nicht mehr nutzen
4. ist er schon, wenn du keine wiederholgenauigkeit brauchst und keine
kommunikation zur außenwelt
6. die verbrauchen immer energie, wieviel hängt aber pprimär vom moment
ab das die motoren aufbringen müssen:
tipp: benutzt mehrere "servo" controller mit 16bit pwm's, 8bit ist zu
ungenau und steuer das ganze über einen zentralen controller ! als clock
kannst du einen gemeinsamen quarzooszillator o.ä. nehmen
>1. Kann ich die PWM direkt an die PW Eingänge der Servos hängen?
Alle Servos werden sich dann gleich verhalten. Willst Du das?
>2. Die Servos haben eine gemeinsame 5 Volt Spannungsversorgung. Krieg ich>da Probleme und muss Kondensatoren vor jeden Servo hängen? Ich speise>das ganze mit Akkus.
Kommt drauf an we steif Deine Stromversorgung ist.
>3. Da ich einen externen Quarz an XTAL1 und 2 hänge, kann ich die Pins dann>überhaupt noch nutzen? Sonst fehlen mir 2 IOs und ich müßte auf interne>Clock (16 Mhz) umschalten.
Wie soll die Doppelnutzung denn aussehen, die IO-Pins stellen den
Quarzoszillator dar. Da ist dann nix mehr mit I oder O.
Das parallele Eingabekonzept halt ich eher für übearbeitungsbedürftig.
Da verbrätst du eine Menge IO-Pins.
Ich schrieb:> Würde ich nicht sagen, so kannst du min.8 Servos an 2 Ports hängen, und> das ganze noch per Hardware-PWM !!!!!
Du meinst sicher an zwei Pins, oder? Würde das dann mit Schieberegistern
laufen? Die Idee hört sich interessant an. Weiß nur nicht wie das gehen
soll... Hardware PWM ist doch nur auf den zwei(?) Timern möglich. Kannst
du mir noch ein paar Zeilen mehr dazu schreiben wie du auf 8 PWMs
kommst?
Hiernoch mal die Anforderung:
18 Servos -> jeder eine eigene Pulsweite.
Gruß, Chris
Andi D. schrieb:> 4. ist er schon, wenn du keine wiederholgenauigkeit brauchst und keine> kommunikation zur außenwelt
Dann ist das Quarz Problem ja gelöst und die 32 Ports reichen exakt für
mein Projekt.
slow schrieb:>>1. Kann ich die PWM direkt an die PW Eingänge der Servos hängen?> Alle Servos werden sich dann gleich verhalten. Willst Du das?
Ich meinte natürlich, jeweils die PWM eines Pins zum jeweiligen Servo.
Also 18 unterschiedliche Software generiert PWMs an 18 unterschiedliche
Servos.
Andi D. schrieb:> tipp: benutzt mehrere "servo" controller mit 16bit pwm's, 8bit ist zu> ungenau und steuer das ganze über einen zentralen controller ! als clock> kannst du einen gemeinsamen quarzooszillator o.ä. nehmen
8 bit, sind doch 255 Schritt auf 180°. Das ist auf 0,7° exakt gesteuert.
Denke das reicht. Der Atmega644 ist übrigens, nur für die Servos da. Ein
weiterer Controller übernimmt die Bewegungssteuerung, also welches Bein
wohin.
Vielen dank schon mal so weit, ihr seid Klasse!
Chris schrieb:> 8 bit, sind doch 255 Schritt auf 180°. Das ist auf 0,7° exakt gesteuert.> Denke das reicht. Der Atmega644 ist übrigens, nur für die Servos da. Ein> weiterer Controller übernimmt die Bewegungssteuerung, also welches Bein> wohin.
das stimmt so nicht... du hast eine ON und OFF zeit.. lies dir mal das
servo tutorial durch... der servo braucht einen 1...2ms HIGH pegel mit
dem du die position steuerst. danach eine pause von 10ms++.
Andi D. schrieb:> 1. kommt auf die servos an weiviel strom die wolle> 2. ja musst du, den controller am besten mit einer stromkompensierenden> drossel von der versorgung "isolieren" um gleichtaktstörungen zu> unterdrücken
Lohnt es sich, die einzelnenPWMs zu verschiedenen Zweiten zu starten? So
hätte ich doch die Gleichtaktstörung per Software vermieden. Mit
Drosseln habe ich noch nie gearbeitet. Mache mich aber mal schlau.
> 3. wenn da etwas dranhängt, zB ein quarz kann man die pins> logischwerweise nicht mehr nutzen
Schade...
> 4. ist er schon, wenn du keine wiederholgenauigkeit brauchst und keine> kommunikation zur außenwelt
...Problem gelöst -> interner 16Mhz Takt!
Servos haben drei Eingänge. Vcc, Gnd und Pw. Pw kriegt meine PWM vom
uController. Da dürfte doch kaum Strom drüber gehen, da es nur ein
Steuersignal ist, oder? Nicht das mit der uController verbrät bei 18
Servos. Treiber brauche dafür noch nicht, oder?
Andi D. schrieb:> Chris schrieb:>> 8 bit, sind doch 255 Schritt auf 180°. Das ist auf 0,7° exakt gesteuert.>> Denke das reicht. Der Atmega644 ist übrigens, nur für die Servos da. Ein>> weiterer Controller übernimmt die Bewegungssteuerung, also welches Bein>> wohin.>> das stimmt so nicht... du hast eine ON und OFF zeit.. lies dir mal das> servo tutorial durch... der servo braucht einen 1...2ms HIGH pegel mit> dem du die position steuerst. danach eine pause von 10ms++.
Bei Software PWM kann ich doch meine 8bit voll für die ein Zeit
aufbringen und die Auszeit immer hintendranhängen. Dann sollt ich die
8bit auflösung haben.
Also bei Wert 128: 1ms + 0.5 ms EIN, dann 0,5ms aus und weitere 10ms
aus.
Bei 64 entsprechend 1ms + 0,25 ms EIN, dann 0,75 aus und weitere 10ms
aus.
Muss mich nun für ein paar Stunden abmelden aber freue mich heute Abend
auf alle Beiträge.
Viele Grüße,
Chris
Chris schrieb:> Dafür lege ich 8 bit (0-255) entsprechend dem gewünschten Servo Winkel> an einen Port. Dann die Servo-Adresse in Form von 5 Bit (Servo 1 - 18)> an einen anderen Port. Dann brauche ich eine Leitung, die ein Interrupt> am Controller auslöst, damit dieser die Werte für die Software-PWM> übernimmt. So schicke ich dem Controller die gewünschten Servo> Stellwinkel.
Bei dem Teil kann ich Dir leider nicht folgen. Sollen diese beiden Ports
als Eingänge dienen über die der µC Winkel und Servoadresse übernimmt?
>> An 18 Augängen generiert der Controller dann für jeden Servo eine> entsprechendee Software PWM. Mit einem 20 Mhz Quarz sollte das kein> Problem sein, oder?>> Was halter ihr davon? Irgendwo ein Denkfehler?>> 1.> Kann ich die PWM direkt an die PW Eingänge der Servos hängen?
Kommt sicher auf die Servos an. Bei mir laufen (testweise) sowohl ein
Analogservo als auch ein Digitalservo über einen Widerstand am Port des
µC.
> 6. Verbraten Servos nur bei Positionswechsel Energie, oder auch wenn sie> eine Position halten? Bei einem Schnecken getriebe, dürfte das halten ja> kein Problem sein...
Ich persönlich kenne keine Servos die ein Schneckengetriebe enthalten.
Was möchtest überhaupt für Servos verwenden? Analogservos oder
Digitalservos? Digitalservos brauchen mehr Energie als Analogservos weil
die auch ohne aktiven PWM-Signal versuchend die Position zu halten. (Ich
persönlich kann mir nicht vorstellen, daß man bei so einem Projekt mit
Analogservos glücklich wird.)
Paß auf, daß Du nicht überrascht wirst vom Stromverbrauch der 18 Servos.
Je nach Last wird sich das im A-Bereich bewegen.
Willst Du die Servos parallel oder sequentiell ansteuern? Du wirst
feststellen, daß die Servos einen größeren Bereich ansteuern können als
von 1ms-2ms Signalbreite. Wenn Du also von 750µs bis 2250µs ausgehst und
die Servos sequentiell ansteuerst dann bewegt sich der letzte erst ~40ms
nach dem ersten Servo. Ich weiß nicht ob das für Dich ein Thema ist oder
nicht. Nachdem sich Digitalservos typischerweise mit einer Frequenz von
330 Hz, also ca. alle 3ms ansteuern lassen wären alle 40ms für mich
keine Option. (Aber da scheiden sich die Geister im Forum wie ich schon
festgestellt habe)
Du mußt Dir auch überlegen ob Du die Servos "verlangsamen" möchtest.
Also angenommen, Du möchtest ein Bein heben. Sagen wir bei 1500µs steht
es am Boden und Du möchtest das Bein auf 2000µs Servoposition heben. Je
nach Servogeschwindigkeit geht das sehr flott. (Gute Servos schaffen 60°
in 0,06s oder weniger)
> Kann ich die PWM direkt an die PW Eingänge der Servos hängen?
Ja.
> Die Servos haben eine gemeinsame 5 Volt Spannungsversorgung. Krieg ich> da Probleme
Eventuell. Servos enthalten Motoren die stören und viel Strom brtauchen.
> und muss Kondensatoren vor jeden Servo hängen?
Eher die Versorgungsspannung des uC gut filtern.
> Ich speise das ganze mit Akkus.
Das ist gut weil die recht niederohmig sind.
> Da ich einen externen Quarz an XTAL1 und 2 hänge, kann ich die Pins dann> überhaupt noch nutzen?
Nein.
> Sonst fehlen mir 2 IOs und ich müßte auf interne Clock (16 Mhz)> umschalten.
Tja.
> 4. Ist der interne Takt genau genug, um die Servos anzusteuern?
Ja.
> Habe gehört die schwankt
Tut sie, auch mit der Versorgungspannung, da aebr niemand deine
Genauigkeitsanforderungen kennt, weiß niemand, ob dich z.B. 5%
Abweichung stören.
> 6. Verbraten Servos nur bei Positionswechsel Energie,
Nein, aber am meisten.
> oder auch wenn sie eine Position halten?
Ja, wenn Last drauf einwirkt der sie gegenhalten müssen.
> Bei einem Schnecken getriebe, dürfte das halten ja kein Problem sein...
Haben sie aber i.A. nicht, wäre viel zu langsam.
> Lohnt es sich, die einzelnen PWMs zu verschiedenen Zweiten zu starten?
Ja. Weil viele Servos so gebaut sind, daß sie, wenn eine Abweichung
vorliegt, genau dann den Strom auf die Motoren schalten, und wenn das
alle 18 gleichzeitig tun, wird die Spannung zusammenbrechen.
Hi und danke schon mal für die Infos.
Ernst B. schrieb:> Chris schrieb:>> Dafür lege ich 8 bit (0-255) entsprechend dem gewünschten Servo Winkel>> an einen Port. Dann die Servo-Adresse in Form von 5 Bit (Servo 1 - 18)>> an einen anderen Port. Dann brauche ich eine Leitung, die ein Interrupt>> am Controller auslöst, damit dieser die Werte für die Software-PWM>> übernimmt. So schicke ich dem Controller die gewünschten Servo>> Stellwinkel.>> Bei dem Teil kann ich Dir leider nicht folgen. Sollen diese beiden Ports> als Eingänge dienen über die der µC Winkel und Servoadresse übernimmt?
Ja, die Ports nutze ich als Eingänge. Ich lese die Pulsweite des Servos
in Form von 8 Bit an einem Port ein und an einem weiteren Port die
Adresse, für welchen Servo diese Pulsweite gewünscht ist. Speichere so
zu jedem der 18 Servos eine Pulsweite/Winkelstellung im Stack.
MaWin schrieb:>> 4. Ist der interne Takt genau genug, um die Servos anzusteuern?>> Ja.>>> Habe gehört die schwankt>> Tut sie, auch mit der Versorgungspannung, da aebr niemand deine> Genauigkeitsanforderungen kennt, weiß niemand, ob dich z.B. 5%> Abweichung stören.
Also wenn der Interne Quarz um 5% schwankt, schwankt ja folglich auch
die Winkelposition der Servos um 5 % und das stört mich erheblich. Habe
nun auch keinen Atmega gefunden, der intern 16 Mhz generieren kann und 8
Mhz sind mir zu langsam.
Habe mir überlegt, die fünf Adressleitungen wegzulassen und die
Winkelpositionen nacheinander vom übergeordneten Controller
"anzufordern". So habe ich 2 oder 3 Leitungen gewonnen von die ich für
einen stabilen 20 hz Quarz nutzen kann.
Das mit den Servos ist mir noch nicht ganz klar.
Die ideale PWM Periode ist wohl 20 ms?
1ms HIGH, dann innerhalb der nächsten Millisekunde je nach gewünschten
Winkel auf LOW schalten (0 - 1 ms entsprechen 0° - 180°), dann 18ms auf
LOW halten und von vorn beginnen.
Sind die 20ms Periodendauer standard? Jemand hatte hier auch 40ms
genannt und irgendwo habe ich 10 ms Periodendauer gelesen. Was ist
ideal?
Was macht der Servo von der mal 10 Sekunden keinen Takt kriegt? Ist die
Welle dann "schlaff" oder zieht der Servo weiter Saft um seine Position
zu halten? Dann müsste ich ja nur Positionsänderungen übertragen...
Viele Grüße Chris
Chris schrieb:> Die ideale PWM Periode ist wohl 20 ms?
Das ist ein weit verbreitetes Gerücht. Die 20 ms sind historisch bedingt
und entsprechen der Periode des Summensignals.
Die Position der Servos hängt nur von der Pulsbreite, aber nicht von der
Periode ab. Die Periode bestimmt die Häufigkeit der
Positionsaktualisierung und was da optimal ist, hängt von der Anwendung
ab.
Modellbauer schrieb:> Die Position der Servos hängt nur von der Pulsbreite, aber nicht von der> Periode ab. Die Periode bestimmt die Häufigkeit der> Positionsaktualisierung und was da optimal ist, hängt von der Anwendung> ab.
Das stimmt so nicht ganz, da die Servocontroller eine Erholzeit
brauchen, um die Steuerpulse eindeutig zu identifizieren und vom
Idle-Zustand zu unterscheiden. Das hängt einzig und allein von dem
verwendeten Servo ab. Man sollte bei dem Wiederholintervall also
deutlich über 10ms bleiben und unter 25ms. Sonst könnte es sein, dass
sich der Servocontroller verschluckt. Ein Blick in´s Datenblatt des
Servos könnte helfen, falls vorhanden.
Modellbauer schrieb:> Die Position der Servos hängt nur von der Pulsbreite, aber nicht von der> Periode ab. Die Periode bestimmt die Häufigkeit der> Positionsaktualisierung und was da optimal ist, hängt von der Anwendung> ab.
Welche Eigenschaften hat denn eine kurze Periode (10ms) gegenüber einer
längeren (40ms)?
Besonders schnell müssen meiner Servos nicht sein. Dafür aber Kraftvoll,
Stromsparend und Preisgünstig. Am besten noch leicht und klein ^^. Kann
da jemand Servos empfehlen? Würde mir gerne mal 2 oder drei anschaffen
und damit experimentieren. Kosten am besten unter 10 Euro, da ich
immerhin 18 Stück brauche.
Knut Ballhause schrieb:> Man sollte bei dem Wiederholintervall also deutlich über 10ms> bleiben und unter 25ms.
Dann liege ich mit den 20ms doch im sicheren Bereich. Das schafft mein
Atmega auch für 18 Servos, so wie ich das gerechnet habe.
Chris schrieb:> da ich> immerhin 18 Stück brauche.
Brauchst Du unbedingt 2 Kniegelenke pro Bein? Denke mal an das Spiel der
Servos, welches durchaus 1° ausmachen kann. Das addiert sich dann pro
Gelenk.
Knut Ballhause schrieb:> Brauchst Du unbedingt 2 Kniegelenke pro Bein? Denke mal an das Spiel der> Servos, welches durchaus 1° ausmachen kann. Das addiert sich dann pro> Gelenk.
Ja, ich will auf jeden Fall drei pro Bein einbauen. Hexapods mit nur
zwei Servos pro Bein humpeln/wackeln ziemlich. Bei drei Servos läuft das
teil Butterweich. Gewichtsverlagerung, Kippen, Drehen, Aufrichten,
Hinlegen und weiche Gangarten werden so erst möglich.
Zwei Servos bilden die zwei Freiheitgrade des Hüft gelenken und der
drite das Kniegelenk.
Knut Ballhause schrieb:> Modellbauer schrieb:>> Die Position der Servos hängt nur von der Pulsbreite, aber nicht von der>> Periode ab. Die Periode bestimmt die Häufigkeit der>> Positionsaktualisierung und was da optimal ist, hängt von der Anwendung>> ab.>> Das stimmt so nicht ganz, da die Servocontroller eine Erholzeit> brauchen, um die Steuerpulse eindeutig zu identifizieren und vom> Idle-Zustand zu unterscheiden. Das hängt einzig und allein von dem> verwendeten Servo ab. Man sollte bei dem Wiederholintervall also> deutlich über 10ms bleiben und unter 25ms. Sonst könnte es sein, dass> sich der Servocontroller verschluckt. Ein Blick in´s Datenblatt des> Servos könnte helfen, falls vorhanden.
Das stimmt ja so auch nicht.
Solange hier undifferenziert über Analogservos und Digitalservos
gesprochen wird wird man laufend aneinander vorbei reden.
Analogsevos vertragen keine hohen Frequenzen, die gehen davon kaputt,
teilweise ziemlich schnell. Schneller als 70Hz sollte man die nicht
ansteuern. Das wären so ca. alle 14ms.
Digitalservos hingegen vertragen bis zu 560Hz je nach Modell, die
meisten können aber 330Hz und bei 270Hz ist man auf der sicheren Seite.
Sprich, es ist kein Problem die alle ca. 3ms anzusteuern.
Man kann also keinesfalls sagen, daß man bei Servos über 10ms
Wiederholintervall bleiben sollte.
Chris schrieb:> Habe> nun auch keinen Atmega gefunden, der intern 16 Mhz generieren kann
Das kann ja auch nur der Tiny26 (und vermutlich auch seine
Nachfolger)...
> und 8> Mhz sind mir zu langsam.
Das halte ich für ein Gerücht.
Ich habe vor einigen Jahren eine Sequenz (7 Servos, geht auch mit mehr)
mit 1µs Auflösung mit 1 MHz internem Takt realisiert.
http://www.hanneslux.de/avr/mobau/7ksend/7ksend02.html
Das Ding tut einfach, was man von ihm erwartet.
Wenn man die Positionen nicht life ermittelt sondern aus einem Array
nimmt, wird der Rechenzeitbedarf in der ISR sehr gering (I/O-Bitmuster
ändern, OCR1x lesen, Impulsdauer aus Array holen und aufaddieren, OCR1x
zurückschreiben, fertig...).
Eine zweite Sequenz für weitere Servos (im zweiten Compare-Interrupt)
findet da auch noch genügend Rechenzeit. Mit 8 MHz Takt und
Timer-Vorteiler 1 zu 8 hat man dann mehr als genug Rechenzeit, um Jitter
(bei fast gleichzeitigem Zuschlagen beider Compare-Interrupts) zu
vermeiden.
Es wäre sogar einen Versuch wert, die 18 Servoimpulse in einer Sequenz
zu erzeugen, einfach immer reihum. Die mittlere Zyklusdauer wäre dann 27
ms, die maximale etwa 36 ms.
Von der Größe des Programms passt das alles noch in den Tiny2313.
Aufgrund der benötigten I/O-Pins braucht es aber einen DIL40. Der
Mega8515 ist dafür völlig ausreichend und hat sogar noch 3 I/O-Pins mehr
als der Mega644. Für das Füttern mit Daten würde ich SPI bevorzugen,
oder UART, wenn alle MCs mit Quarz laufen.
...
Chris schrieb:>> Besonders schnell müssen meiner Servos nicht sein. Dafür aber Kraftvoll,> Stromsparend und Preisgünstig. Am besten noch leicht und klein ^^. Kann> da jemand Servos empfehlen? Würde mir gerne mal 2 oder drei anschaffen> und damit experimentieren. Kosten am besten unter 10 Euro, da ich> immerhin 18 Stück brauche.
Du hast jetzt immer noch nicht gesagt ob Du Analogservos einsetzen
möchtest oder Digitalservos?
Je kraftvoller, kleiner und leichter desto teurer.
Wenn Du drei Stück unter 10 Euro suchst dann bekommst leider nur Schrott
dafür. Und sowieso nur Analogservos.
> Man kann also keinesfalls sagen, daß man bei Servos> über 10ms Wiederholintervall bleiben sollte.
Doch.
Denn es ist ja nicht bekannt welches Modell von Servo
er hat.
Also bleibt man mit Aussagen auf der sicheren Seite,
und empfiehlt nicht Werte, die ev. zur Zerstörung führen.
Es sei denn, man schreibt eine ganze differenzierende
lange Erklärung, wie du es getan hast.
Ernst B. schrieb:> Du hast jetzt immer noch nicht gesagt ob Du Analogservos einsetzen> möchtest oder Digitalservos?
Ich weiss es noch nicht. Die Kraft spricht für Digitalsservos, der
Strombedarf für Analogservos.
Wenn mein Hexapod 5Minuten laufen kann, reicht mir das im Grunde schon.
Jedoch fürchte ich mich vor 2 Ampere und mehr pro Servo. Bei 18 Stück
sind das 36 Ampere. Das ist ja irrsinnig für mein Projekt. Da muss ich
erstmal nenn Schaltregler finden, der das mitmacht....
Also muss es wohl auf Analogservos und eine möglichst leichte Bauform
aller Komponenten hinauslaufen. Oder was meint ihr?
Hannes Lux schrieb:> Ich habe vor einigen Jahren eine Sequenz (7 Servos, geht auch mit mehr)> mit 1µs Auflösung mit 1 MHz internem Takt realisiert.
Ich setzte in dem Projekt ja mehrer Mikrocontroller ein. Und da die auch
untereinander Datenaustauschen, sollen die mit möglichst der gleichen
Frequenz arbeiten. Und warum da nicht die höchste von 20 Mhz nehmen?
Vielleicht brauche ich die Rechenpower noch an anderer Stelle.
Hannes Lux schrieb:> Der> Mega8515 ist dafür völlig ausreichend und hat sogar noch 3 I/O-Pins mehr> als der Mega644
Denn 8515 kenne ich nicht, mache mich aber mal schlau. Danke für den
Tipp.
Hannes Lux schrieb:> Für das Füttern mit Daten würde ich SPI bevorzugen,> oder UART, wenn alle MCs mit Quarz laufen.
Ich wollte die Daten Byte-Weise parallel übertragen. 20 ms Periodendauer
für die Servo PWM. jeder der 18 Servos kriegt 1ms PWM, bleiben 2 ms
übrig für die Datenübertragung. Denke Byteweise ist schnell und leicht
zu programmieren.
Chris schrieb:> Denn 8515 kenne ich nicht, mache mich aber mal schlau.
Das ist ein alter ATMega, würde ich Dir nicht empfehlen, auch wenn
Hannes gut damit klarkommt ;-). Bleib ruhig beim Mega644 oder dessen
kleinen Bruder Mega164 oder Mega324, die haben die neuere und teils auch
bessere Peripherie drin. Und als (P/PA)-Variante sind sie auch
sparsamer.
Chris schrieb:> Ernst B. schrieb:>> Du hast jetzt immer noch nicht gesagt ob Du Analogservos einsetzen>> möchtest oder Digitalservos?>> Ich weiss es noch nicht. Die Kraft spricht für Digitalsservos, der> Strombedarf für Analogservos.>> Wenn mein Hexapod 5Minuten laufen kann, reicht mir das im Grunde schon.> Jedoch fürchte ich mich vor 2 Ampere und mehr pro Servo. Bei 18 Stück> sind das 36 Ampere. Das ist ja irrsinnig für mein Projekt. Da muss ich> erstmal nenn Schaltregler finden, der das mitmacht....>> Also muss es wohl auf Analogservos und eine möglichst leichte Bauform> aller Komponenten hinauslaufen. Oder was meint ihr?>
Es kommt auch darauf an welche Bewegungen geplant sind. Es wird wohl
wenige Bewegungen geben wo wirklich alle 18 Servos gleichzeitig
angesteuert werden.
Hier ein Link zu einem günstigen 8-15A UBEC. Notfalls nimmst halt zwei
und hast pro UBEC nur noch 9 Servos. Die Lipos machen den Strom leicht
mit.
http://www.hobbyking.com/hobbyking/store/__6233__TURNIGY_8_15A_UBEC_for_Lipoly.html
Mit großen Strömen mußt Dich auf jeden Fall anfreunden bei 18 Servos.
Analogservos haben halt auch den Nachteil, daß sie während kein Signal
anliegt auch keine Haltekraft haben. Und sie sind ungenauer als digitale
Servos was die Stellgenauigkeit betrifft. Allerdings kosten sie, wenn Du
keinen Schrott kaufen willst und das wirst Du nicht wollen bei so einem
Projekt doch erheblich mehr.
So aus dem Bauch heraus würde ich Dir folgende Servos empfehlen um mal
zu testen:
Analog: MG90 (Achtung, keine MG90S nehmen, die überschwingen)
http://www.ebay.at/itm/4X-9g-MG90-Metal-Gear-RC-Servo-Futaba-Hitec-HS-55-GWS-/290481953169?pt=RC_Modellbau&hash=item43a212d991
Die MG90 stellen ziemlich genau, haben ein Metallgetriebe und sind
spielfrei. Und sie sind sehr günstig. 4 Stück für 16 Euro.
Digital: KST DS115MG
http://www.ebay.at/itm/2011-Hot-On-Sale-Low-Price-2x-KST-Digital-Servo-450-heli-CCPM-metal-gear-3D-fly-/270851163771?pt=AU_Toys_Hobbies_Radio_Controlled_Vehicles&hash=item3f0ffcc67b
Die kenne ich leider nicht aus eigener Erfahrung aber soweit ich weis
sind sie baugleich mit den MKS DS95 (wo aber eines 70Euro kostet). Die
KST sollen extrem genau stellen, natürlich auch mit Metallgetriebe. Und
sie sind auch extrem schnell was aber für Dich nicht so eine Rolle
spielt. Und kosten ca. 20 Euro das Stück.
Ansonsten ist es sehr schwer halbwegs brauchbare digitale Servos zu
finden für um die 20 Euro.
Ist klarerweise persönliche Sicht und Erfahrung.
LG
Ernst
Knut Ballhause schrieb:> Das ist ein alter ATMega, würde ich Dir nicht empfehlen, auch wenn> Hannes gut damit klarkommt ;-). Bleib ruhig beim Mega644 oder dessen> kleinen Bruder Mega164 oder Mega324, die haben die neuere und teils auch> bessere Peripherie drin. Und als (P/PA)-Variante sind sie auch> sparsamer.
Alles klar ^^ Bin mit dem Atmega 644 auch schon bißchen vertraut. Dann
bleib ich da bei. Werd mir aber trotzdem mal die Daten vom Dinosaurier
ansehen.
Was haltet ihr von folgendem Servo?:
http://www.conrad.de/ce/de/product/233751/TOP-LINE-STANDARD-SERVO-RS-2-JR/1207063&ref=list
Abm. (L x B x H) 41 x 20 x 42 mm
Gewicht 39,2 g
Stell-Moment bei 4,8 6 V 32 35 Ncm
Stell-Zeit bei 4,8 / 6 V 0,19 / 0,17 s
Getriebe Kunststoff
Lagerart Gleitlager
Stecksystem JR
Servo-Technologie Analog-Servo
Servo-Typ Standard-Servo
Herst.-Teilenr. RS 2 JR
Stell-Moment bei 6 / 7,4 V 35 Ncm
Stell-Zeit 6 V / 7,4 V 0,17
Preis 5,95 Euro
Ernst B. schrieb:> Analog: MG90 (Achtung, keine MG90S nehmen, die überschwingen)> Ebay-Artikel Nr. 290481953169
Hi Ernst, vielen Dank für den Hammer Tip, die M90 sind um längen besser,
als alle die ich bisher gesehen habe. Und der Preis ist unschlagbar.
Gruß,
Chris
Michael V. schrieb:> Hier noch ein digitales Servo mit dem ich gute Erfahrungen gemacht habe:>> http://www.ebay.de/itm/Emax-ES08MD-Digital-Metall-...
Nicht schlecht, aber 15 Euro pro Stück, wolle schon ca. 5 Euro bleiben.
Die MG90 sind unter anderem Namen und zum doppelten Preis übrigens auch
bei Conrad zu haben :)
Weiß jemand wie ich auf die Ströme der Servos komme? Im Datenblatt stet
nichts darüber. Wenigstens eine grobe Abschätzung wäre ganz hilfreich.
Werde aber auch auf jeden fall messen.
Chris schrieb:> Ernst B. schrieb:>> Analog: MG90 (Achtung, keine MG90S nehmen, die überschwingen)>> Ebay-Artikel Nr. 290481953169>> Was meinst du mit überschwingen?
Die MG90 mit dem S also MG90S fahren ein bisschen über die angesteuerte
Position drüber um dann zurück zu fahren. Sie schießen also übers Ziel
drüber. Ich hoffe, Du weißt was ich meine. Die MG90 machen das nicht.
Wenn ich dazu komme kann ich Dir mal den Strom der MG90 messen, habe ich
noch irgendwo 4 Stück herumliegen.
Im Vergleich zu dem von dir genannten Conrad-Servo haben sie auch
Metallgetriebe und sind kugelgelagert, nicht nur Gleitlager.
LG
Ernst
Ernst B. schrieb:> Wenn ich dazu komme kann ich Dir mal den Strom der MG90 messen, habe ich> noch irgendwo 4 Stück herumliegen.
Eine Strommessung würde mir natürlich sehr weiterhelfen. Wenn die
nämlich nur wenig ziehen, komme ich auch mit nemm kleinen Akku aus. Dann
wird das ganze Projekt schön schlank.
Kann den Strom aber gar nicht einschätzen. Von 100 mA bis 2 A ist doch
alles drin, oder?
Kannst du mir noch etwas über den Bewegungsradius sagen? Haben die echte
180° oder wie manche Servos nur 90°?
Chris schrieb:>> Kannst du mir noch etwas über den Bewegungsradius sagen? Haben die echte> 180° oder wie manche Servos nur 90°?
Mechanischer Anschlag habe ich gerade geschaut ist 180°. Ob man die auch
anfahren kann muß ich aber erst testen. Das dauert aber auch ein bisl
genau so wie die Strommessung. Vielleicht komme ich morgen dazu ein
kleines Programm zu schreiben um zu testen wie der Radius ausschaut.
LG
Ernst
Chris schrieb:> Kann den Strom aber gar nicht einschätzen. Von 100 mA bis 2 A ist doch> alles drin, oder?>> Kannst du mir noch etwas über den Bewegungsradius sagen? Haben die echte> 180° oder wie manche Servos nur 90°?
Also...
180° kann man anfahren, dazu muß man aber die Signale stark aus dem
"normalen" Bereich nehmen - und zwar von (ca) 600µs bis 2600µs.
Strom messen ist doch schwieriger als ich dachte, dazu ist mein
Equippment nicht das beste. Beim Stellen ohne Last komme ich auf knapp
200mA. Aber ob der Wert stimmt da mit einem einfachen Multimeter
gemessen? Kann durchaus sein, daß das zu langsam ist um den wahren Wert
zu erfassen. Und ohne Last sagt es auch ned viel aus selbst wenn es
stimmen sollte.
Achja, nochwas: Wenn ich mir ansehe wie der analoge Servo fährt und im
Vergleich dazu einen digitalen... Persönlich würde ich einen Hexapot
wohl mit digitalen Servos aufbauen statt analogen. Bevor Du 18 Stück
bestellst solltest erst mal mit einem Servo bzw. mit einem Bein testen
ob ein analoger Servo Deinen Ansprüchen genügt.
Hier verkaufen die 4 Stück, digitale Servos, doppelt kugelgelagert mit
Metallzahnrädern für 20 Euro.
http://www.ebay.de/itm/4X-MG996R-Metal-Gear-Digital-Servo-MG995-MG996-1-10-CAR-/300622397807?pt=Radio_Control_Parts_Accessories&hash=item45fe7dc16f
Weshalb willst du ein Hexapod bauen?
Es gibt da einen Vierbeiner der für das US Militär Ausrüstung
transportieren soll und dabei nicht so träge und unbeholfen wirkt wie
die Hexapods bei Youtube.
Der Vorteil dabei ist dass man nicht so viel beachten muss, es sind ja
immer nur zwei Beine auf dem Boden.
Wenn mindestens drei Beine auf dem Boden stehen ist der Vierbeiner
eigentlich auch stabil.
Ein paar Drucksensoren wären noch wichtig und ein paar Gummipuffer oder
eine kleine Federung, bei den meisten Hexapods schaut es so aus als ob
die Beine teilweise in der Luft hängen da der Servo nicht weiß bis wo
das Bein bewegt werden muss oder wann Schluss sein sollte da sonst der
Körper des Hexapod angehoben wird und die anderen Beine in der Luft
hängen.
Vielen Dank Ernst für die Mühe, die du dir machst!!! Du hilfst mir
wirklich weiter!
Ernst B. schrieb:> Mechanischer Anschlag habe ich gerade geschaut ist 180°
Ist doch klasse.
Ernst B. schrieb:> 180° kann man anfahren, dazu muß man aber die Signale stark aus dem> "normalen" Bereich nehmen - und zwar von (ca) 600µs bis 2600µs.
Das läßt sich per Software doch machen. Den Servo stört sowas ja nicht.
Ernst B. schrieb:> Beim Stellen ohne Last komme ich auf knapp> 200mA.
Ist doch schon mal ein Wert :) Auch wenn es zu bestimmten Zeitpunkt
deutlich mehr wird; Ich steuere alle 6 Beine wenigstens leicht versetzt
an. So dürften die Stromspitzen nicht aufeinanderfallen.
Also in der 200mA * 18 Servos= 3,6 Ampere. Als Schätzung sag ich mal das
5 A dauerhaft fließen. Da reicht ja ein kleiner ca. 2000 mAh Akku für 24
Minuten Spaß :)
Ernst B. schrieb:> Achja, nochwas: Wenn ich mir ansehe wie der analoge Servo fährt und im> Vergleich dazu einen digitalen...
Wo liegt denn der Unterschied? Ist der digitale schnelle, weicher oder
kräftiger? Generell kann ich die Kraft doch über die Angaben (Ncm)
ablesen. Kann also ein gleich starken analogen nehemen. Bleibt doch nur
noch der Stromvorteil der analogen Akkus, oder?
Mike J. schrieb:> Hier verkaufen die 4 Stück, digitale Servos, doppelt kugelgelagert mit> Metallzahnrädern für 20 Euro.>> Ebay-Artikel Nr. 300622397807
Danke für den Link. Die sind aber mit 13 bis 15 Ncm etwas zu schwach für
mein Projekt.
Mike J. schrieb:> Weshalb willst du ein Hexapod bauen?
Weil die einfach genial aussehen und sich vielfältig programmieren
lassen. Die können Laufen, tanzen, klettern, sich ducken, drehen,
aufrichten... alles durch den richtigen Code. Abgesehen davon lerne ich
viel über Servomotoren, Robotik, Kommunikation mehrerer Mikrocontroller,
Akkus, Mechanik und vieles mehr.
Mike J. schrieb:> Es gibt da einen Vierbeiner der für das US Militär Ausrüstung> transportieren soll und dabei nicht so träge und unbeholfen wirkt wie> die Hexapods bei Youtube.
Da hat man aber mit Gewichtsverlagerung zu kämpfen. Das schränkt die
Schrittgröße doch arg ein, wenn man das Gewicht nicht dynamich
verlagert. Aber mit sicherheit auch ein interessantes Projekt. Denke da
ein bißchen an die Walker aus StarWars (ATAT) :)
Mike J. schrieb:> Ein paar Drucksensoren wären noch wichtig und ein paar Gummipuffer oder> eine kleine Federung, bei den meisten Hexapods schaut es so aus als ob> die Beine teilweise in der Luft hängen
Das Problem ist mir auch schon aufgefallen. Und ein Bein in der Luft
heißt wackeln der Hexapod und Mehrbelastung für einzelne Servos. Denke
ich bleibe bei eine Kombi aus Federung und umgedrehten Gummitastern als
Füße (Druck Sensoren). Die Tastenabfrage macht das Programm aber um
länger komplizierten, da ich nicht nur ein Porgramm abspule sondern auch
6 Rückmeldungen verarbeite um 18 Gelenke zu bewegen.
Kann ich die Servos eigentlich mit 5V speisen, oder sind eher 6V - 7V zu
empfehlen? Wahrscheinlich 6V Akkus -> Parallel die Servos dran mit ein
paar Kondensatoren und parallel ein 5V Schaltregler für die Controller
und Sensoren.
Danke soweit für eure Unterstützung,
Gruß Chris
Chris schrieb:> Ich schrieb:>> Würde ich nicht sagen, so kannst du min.8 Servos an 2 Ports hängen, und>> das ganze noch per Hardware-PWM !!!!!>> Du meinst sicher an zwei Pins, oder? Würde das dann mit Schieberegistern> laufen? Die Idee hört sich interessant an. Weiß nur nicht wie das gehen> soll... Hardware PWM ist doch nur auf den zwei(?) Timern möglich. Kannst> du mir noch ein paar Zeilen mehr dazu schreiben wie du auf 8 PWMs> kommst?>> Hiernoch mal die Anforderung:> 18 Servos -> jeder eine eigene Pulsweite.>> Gruß, Chris
Einfach ein PPM-Signal per Hardware-Timern erzeugen und en einem der 2
PINS ausgeben.
Am anderen Pin den Reset (also immer nach dem letzten Puls).
Das Auswerten/Aufsplitten kann man dann per Schieberigister erledigen.
Geht auch mit 16 und mehr Servos pro 2PIN's.
Gruß,
Olli
Chris schrieb:> Ich schrieb:>> Würde ich nicht sagen, so kannst du min.8 Servos an 2 Ports hängen, und>> das ganze noch per Hardware-PWM !!!!!>> Du meinst sicher an zwei Pins, oder?
Ne, er meinst schon 8 Servos an einem Port oder eben mehr als 8 an 2
Ports.
> Würde das dann mit Schieberegistern> laufen?
Würde, ist aber mehr Aufwand als notwendig, wenn man die Ausgabepins
hat.
> Die Idee hört sich interessant an. Weiß nur nicht wie das gehen> soll... Hardware PWM ist doch nur auf den zwei(?) Timern möglich.
Reicht doch. Kein Mensch sagt, dass alle Servos ihre Pulse gleichzeitig
bekommen müssen.
> Hiernoch mal die Anforderung:> 18 Servos -> jeder eine eigene Pulsweite.
18 sind mglw. schon ein wenig viel für nur 1 Timer. Da würde ich auch
eher zu 2 Timern tendieren. Müsste man aber ausprobieren. 12 Servos an 1
Timer ist aber noch kein Problem
Modellbauservo Ansteuerung ganz unten
Ich meinte schon min. 2Pins pro Schieberegister,
einer für die Daten, der andere für den Reset, ansonsten benötigt man
noch einen 'Timeout-Reset-Logik' am Register.
Der Vorteil an der Sache ist halt, das man kein Software-PWM benötigt,
und die ganze Sache Rock-Hard ist, also kein Zittern bei z.B.
Seriellen-Übertragungen oder sonstigen IRQ's.
Die Auflösung kann auf über 8bit gehoben werden.
An dem Schieberegister wird über das PPM-Signal dabei Tackt und
Daten-Eingang gemeinsam gespeist.
Hi, also ich werde mal ne Software PWM programmieren und dann eine Timer
PWM, so wie von euch beschrieben. Damit kann ich mich aber erst vertraut
machen, wenn ich die Servos habe. Vielen Dank auf jeden Fall für die
Hinweise. Da würde dann vielleicht schon ein Atmega 8 reichen. Die Frage
ist, wieviel Platz die anderen Bauteile brauchen. Sonst bleibe ich doch
lieber bei meinem Atmega644 und der Software PWM. Habe nämlich nicht
viel Platz auf der Platine.
Habe soeben die MG90 Analog Servos bestellt. Dauert nun wohl 4 - 5
Wochen bis sie aus China ankommen. Dafür kosten sie aber auch nur 4,07
Euro das Stück :)
Chris schrieb:> Habe soeben die MG90 Analog Servos bestellt. Dauert nun wohl 4 - 5> Wochen bis sie aus China ankommen. Dafür kosten sie aber auch nur 4,07> Euro das Stück :)
Nein, so lange eher nicht. Sind ca. drei Wochen bis sie in Österreich
aufschlagen. Wird für D nicht anders sein.
Früher waren es bei mir immer recht genau 14Tage,
eine weile lang ist es dann mal auf 4Wochen hoch gegangen,
heute habe ich aber wieder was bekommen, das hat nur 12Tage gedauert.
Kurz gesagt, man steckt nicht drin :-)
Aber sorgen würde ich mir erst nach 4 Wochen machen !
Gruß,
Olli
PS: ansonsten kann ich nichts schlechtes über diese Servos sagen, billig
aber brauchbar !
Std.-Servos mit Kunststoffgetriebe bekommt man aber auch bei Conrad für
3-4 Euro (im Laden, ohne Servohörner und Schrauben).
EDIT: http://www.youtube.com/watch?v=I3w6lzuge8w
Hi,
dauert wohl noch ein/zwei Wochen bis die Servos kommen. Sind aber
versandt.
Ich habe mal ein paar Fragen zur Spannungsversorgung. Die Servos
brauchen wohl 6.0 Volt um ihre 25 Ncm zu bringen.
Jetzt habe ich diesen Lithium Ionen Akku gefunden:
http://www.conrad.de/ce/de/product/251301/LIION-AKKU-SAMSUNG-ICR18650-2ER-PACK/0501037&ref=list
Der hat eine Spannung von 7,4 Volt, die ich mittels Schaltregler auf 6.0
Volt bringen will.
Hatte überlegt, zwei Akkus dieses Typs zu nehmen, mit je einem eigenen
Schaltregler für jeweiles drei Beine. So habe ich die doppelte Kapazität
und die halbe Strombelastung der Akkus und Schaltregler.
1.
Was haltet ihr von dem Konzept?
2.
Könnt ihr mir einen Schaltregler empfehlen?
3.
Was braucht der Schaltregler für weitere Bauteile?
4.
Brauche dann ja auch noch einen 5V Schaltregler für den uController.
Gibt es da ein Standardbauteil? Der 7805 kommt ja mit den 7,4 Volt nicht
klar. Habt ihr da einen geeigneten Schaltregler?
5.
Die Massen der beiden Akkus muss ich verbinden, richtig? Sonst gibt
Probleme mit den PWMs und den Servos, habe ich gelesen...
Ich hoffe, ihr verzeiht mir die vielen Fragen. Ich habe bisher immer mit
dem 7805 gearbeitet. Für dieses Projekt bin ich aber wegen der Akkus und
Servos auf mehr angewesen und da habe ich null erfahrung.
Vielen Dank euch allen,
Chris
> Der hat eine Spannung von 7,4 Volt
Humbug.
Auch bei dir werden Akkus während des Entladens mit der Spannung runter
gehen, von 8.4V auf 6V.
> Was braucht der Schaltregler für weitere Bauteile?
Siehe Datenblatt. Es gibt ja auch Module (a la Recon).
Im Prinzip muß der Schaltregler immer so ausgelegt sein,
daß er die maximale Belastug liefern kann, also alle
Servos brauchen gleichzeitig so viel Strom wie beim Anlauf
(Blockierstrom).
Daher muß man Schaltregler (und Linearregler) immer sehr
gtosszügig auslegen, kaum sinnvoll. Mit geschickter
Ansteuerung kann man meist den Strombedarf auf den Strom
von nur einem Servo drücken.
Chris schrieb:> Hi,> dauert wohl noch ein/zwei Wochen bis die Servos kommen. Sind aber> versandt.>> Ich habe mal ein paar Fragen zur Spannungsversorgung. Die Servos> brauchen wohl 6.0 Volt um ihre 25 Ncm zu bringen.>> Jetzt habe ich diesen Lithium Ionen Akku gefunden:> http://www.conrad.de/ce/de/product/251301/LIION-AKKU-SAMSUNG-ICR18650-2ER-PACK/0501037&ref=list
Viel zu teuer bei viel zu schlechten Werten.
Schau mal den an (gibt dort aber noch viel mehr nur ist der in D auf
Lager)
http://www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=10363
Kostet 14 Euro und kann 30C und nicht nur knappe 2C = 3,6A wie der von
Conrad. (30C*2,65=79,4A Dauerlast)
Da gibt es auch einen Lipo-Finder:
http://www.hobbyking.com/hobbyking/store/lithium_polymer_battery_configuration.asp?con=2&cap1=2000&cap2=3500&location=EUR
Da stellst einfach ein wie viele Zellen Seriell (Du hast 2S = 7,4 V
Nennspannung) (voll aufgeladen werden die aber 8,4 V haben) und wie
viele mAh und suchst im Euro Warehouse, das steht in Deutschland. Wenn
Du international einstellst gibt es noch viel mehr Auswahl. Der Zoll in
D soll aber derzeit Probleme machen (Zollamt Ulm)
Der
http://www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=10321
würde auch gehen, hat 2200mAh und 20C. Und ist leichter dadurch.
>> Der hat eine Spannung von 7,4 Volt, die ich mittels Schaltregler auf 6.0> Volt bringen will.>> Hatte überlegt, zwei Akkus dieses Typs zu nehmen, mit je einem eigenen> Schaltregler für jeweiles drei Beine. So habe ich die doppelte Kapazität> und die halbe Strombelastung der Akkus und Schaltregler.>
Wenn Du einen gescheiten Akku kaufst (und nicht so einen überteuerten
schwachbrüstigen bei Conrad) dann brauchst Dir über die Strombelastung
der Servos keine Sorgen machen wenn nur die Servos dran hängen. Der
obige zuckt bei 18 Servos nicht mal mit der Wimper.
Aus Gewichtsgründen würde ich eher nur einen Akku einsetzen und dafür um
das gesparte Geld (14 Euro zu 33 Euro) lieber mehr Akkus kaufen.
Wie Du die Akkus wieder auflädst, darüber mußt Dir auch mal Gedanken
machen.
> 1.> Was haltet ihr von dem Konzept?
s. o.
>> 2.> Könnt ihr mir einen Schaltregler empfehlen?
Ich würde nicht die Akkus zweiteilen sondern eventuell überlegen die
Schaltregler zweizuteilen. Wenn Du zum Beispiel annimmst, daß jeder
Servo max. 1A zieht sind das bei 18 Servos 18 Ampere. (Wobei es halt
stark darauf ankommt ob die wirklich gleichzeitig belastet werden, aber
das weißt nur Du) Für 18A Last einen Schaltregler zu finden ist IMHO
nicht leicht.
Ich glaube, ich habe Dir eh schon mal einen empfohlen:
http://www.hobbyking.com/hobbyking/store/__6233__TURNIGY_8_15A_UBEC_for_Lipoly.html
Ob man sowas sinnvoll selbst bauen kann weiß ich nicht, kenne ich mich
auch nicht aus.
>> 3.> Was braucht der Schaltregler für weitere Bauteile?>> 4.> Brauche dann ja auch noch einen 5V Schaltregler für den uController.> Gibt es da ein Standardbauteil? Der 7805 kommt ja mit den 7,4 Volt nicht> klar. Habt ihr da einen geeigneten Schaltregler?
Wieso kommt der 7805er mit 7,4-8,4 Volt nicht klar? Laut Datenblatt max
35V input DC. Oder machst Du Dir über die Vin Min Sorgen?
>> 5.> Die Massen der beiden Akkus muss ich verbinden, richtig? Sonst gibt> Probleme mit den PWMs und den Servos, habe ich gelesen...>> Ich hoffe, ihr verzeiht mir die vielen Fragen. Ich habe bisher immer mit> dem 7805 gearbeitet. Für dieses Projekt bin ich aber wegen der Akkus und> Servos auf mehr angewesen und da habe ich null erfahrung.>> Vielen Dank euch allen,> Chris
LG
Ernst
Ernst B. schrieb:> Wieso kommt der 7805er mit 7,4-8,4 Volt nicht klar? Laut Datenblatt max> 35V input DC. Oder machst Du Dir über die Vin Min Sorgen?
Laut Datenblatt braucht er min. 8 Volt umd 5 Volt auszugeben. Wenn mein
Akku also unter 8 Volt fällt, kriegt mein uC Probleme... Abgesehen davon
verbrennt der 7805 einen Teil Leistung ja für Wärme. Und in diesem
Projekt ringe ich um ja um jede mA-Stunde :)
Ernst B. schrieb:> Schau mal den an (gibt dort aber noch viel mehr nur ist der in D auf> Lager)>> http://www.hobbyking.com/hobbyking/store/uh_viewIt...>> Kostet 14 Euro und kann 30C und nicht nur knappe 2C = 3,6A wie der von> Conrad. (30C*2,65=79,4A Dauerlast)
Der sieht doch super aus. Hatte die 2C des Conrad Akkus nicht bedacht.
Wenn dieser 30C schafft ist er für mein Projekt perfekt. Danke!
MaWin schrieb:> Daher muß man Schaltregler (und Linearregler) immer sehr> gtosszügig auslegen, kaum sinnvoll. Mit geschickter> Ansteuerung kann man meist den Strombedarf auf den Strom> von nur einem Servo drücken.
Also ich Takte die Servos ja jeweils um 1ms zeitversetzt. Das liegt bei
18 Servos ja noch sgerade in der Servo PWM-Periode von 20ms. Sollte also
nicht alle Stromspitzen gleichzeitig gezogen werden, sondern im
idealfall schön der Reihe nach.
Ernst B. schrieb:> Ich glaube, ich habe Dir eh schon mal einen empfohlen:>> http://www.hobbyking.com/hobbyking/store/__6233__T...>> Ob man sowas sinnvoll selbst bauen kann weiß ich nicht, kenne ich mich> auch nicht aus.
Der sieht von den Daten her schon mal gut aus. Jetzt habe ich endlich
mal einen gesehen. Sowas in der Art suche ich. Aber am liebsten als
TO220 Bauteil für ein paar Cent. Aber sowas gibts wohl bei den
Schaltreglern nicht, oder?
Ernst B. schrieb:> Wie Du die Akkus wieder auflädst, darüber mußt Dir auch mal Gedanken> machen.
Gibt doch bestimmt Ladestationen für die Akkus, oder? Tausche sie dann
halt immer aus. Was sich an Elektronik auslagern läßt will ich auch
auslagern und so Gewicht und Arbeit sparen. Das Projekt ist komplex
genug.
Soweit ich weiß. Sind die LiIon Akkus auch nicht einfach an Spannung zu
hängen, sonder da muss eine spezielle Ladekurve eingehalten werde. Hatte
das mal irgendwo gelesen.
Chris schrieb:> Soweit ich weiß. Sind die LiIon Akkus auch nicht einfach an Spannung zu> hängen, sonder da muss eine spezielle Ladekurve eingehalten werde. Hatte> das mal irgendwo gelesen.
Nein. Googlen.
Grundsätzlich: Mit konstanter Spannung laden, dabei den Strom auf einen
nicht-kritischen Wert beschränken. Dieser Wert liegt typisch bei 0,5C.
Bessere Lipos schaffen auch 10C.
@Alle
Wie löst man typischerweise das Spannungsproblem bei billigen Servos?
Diese dürfen oft nur mit 6V oder 7,2V betrieben werden. Bei vollen 2S
Lipo werden sie abrauchen. 1S ist wieder zu wenig.
Bei einem Linearregler wäre der Wirkungsgrad im worst-case bei 71%
(8,4V), im Mittel (7,4V) wären es 83% Wirkungsgrad.
Mit einem Schaltregler wird es sehr schwer über 90% Wirkungsgrad in der
Leistungsklasse zu kommen. Dazu braucht man gute Spulen und große
Leistungsreserven.
Was ist also eurer Meinung nach die beste Lösung?
Du kannst eine Zelle nehmen und einen StepUp oder zwei Zellen und einen
StepDown um auf 5V zu kommen.
Wenn du einen Regler nimmst der die Diode durch einen MosFET erstetzt
kommst du auf einen hohen Wirkungsgrad.
Wenn du noch einen findest mit einer hohen Schaltfrequenz kannst du eine
kleine Spule nutzen.
Chris schrieb:> Ernst B. schrieb:>>> 180° kann man anfahren, dazu muß man aber die Signale stark aus dem>> "normalen" Bereich nehmen - und zwar von (ca) 600µs bis 2600µs.>> Das läßt sich per Software doch machen. Den Servo stört sowas ja nicht.
Leider doch. Wenn der Servo auf Grund der Sollwert-Vorgaben durch die
Pulsdauer an einen Anschlag fährt, läuft der Motor blockiert im
Dauerbetrieb, für den viele Servos thermisch nicht ausgelegt sind.
Knut Ballhause schrieb:> Man sollte bei dem Wiederholintervall also deutlich über 10ms> bleiben und unter 25ms.
Woher stammt die Angabe von 25ms? Auch bei 140ms Periode habe ich bisher
noch keine Probleme beobachtet, außer natürlich einer etwas trägeren
Reaktion.