Servo an µC anschließen mit externer Spannung?

Alle allgemeinen Themen zu Elektronik und Elektro

Alle allgemeinen Themen zu Elektronik und Elektro

Moderator: Moderatorengruppe

Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon devkid am Sonntag 12. Dezember 2010, 15:29

Hi!

Hab hier einen stinknormalen Billig-Servo mit drei Anschlüssen (GND, VCC, PWM), den ich mit einem µC (ATmega168) steuern möchte. PWM hängt immer am µC. Wenn ich GND und VCC auch direkt an den µC anschließe, so funktioniert der Servo einigermaßen, zuckt jedoch häufig relativ stark hin und her (ein anderer Servo surrt die ganze Zeit und wird heiß). Ich vermute, das liegt daran, dass er die Spannung µC anzapft und deshalb das PWM-Signal selbst stört.
Deshalb wollte ich den Servo jetzt mit GND und VCC an eine Batterie anschließen und das PWM selbstverständlich am µC lassen. Damit regt sich jedoch gar nichts mehr. :(
Was mache ich falsch?

MfG, devkid.
devkid
Threadstarter
41050
Junior Mitglied
 
Beiträge: 10
Registriert: Sonntag 12. Dezember 2010, 15:24
Postleitzahl: 01809
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon Jornbyte am Sonntag 12. Dezember 2010, 16:41

Du musst auch GND verbinden.
mfg
Jornbyte
Jornbyte
41051
Silber Mitglied
 
Beiträge: 176
Registriert: Samstag 29. Juni 2002, 08:45
Wohnort: Hohenstein-Ernstthal
Postleitzahl: 09337
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon devkid am Sonntag 12. Dezember 2010, 17:05

Also GND vom µC zum GND vom Servo (und damit auch zum GND von der Batterie)? Hab ich auch schon probiert, funktioniert auch nicht.

Edit: Hier die Schaltung dazu: (GND und PWM oben sind vom µC)
Bild

Funktioniert wie gesagt so nicht, der Servo zuckt nur unmerklich, egal was ich als PWM-Signal ausgebe.
Zuletzt geändert von devkid am Sonntag 12. Dezember 2010, 17:27, insgesamt 1-mal geändert.
devkid
Threadstarter
41052
Junior Mitglied
 
Beiträge: 10
Registriert: Sonntag 12. Dezember 2010, 15:24
Postleitzahl: 01809
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon drunkenmunky am Sonntag 12. Dezember 2010, 20:51

Wie sieht denn dein PWM Signal aus? Frequenz, Impulsbreite?

Hast du es schon mal mit einem Oszi gemessen?
Zuletzt geändert von drunkenmunky am Sonntag 12. Dezember 2010, 20:51, insgesamt 1-mal geändert.
drunkenmunky
41055
Gold Mitglied
 
Beiträge: 391
Registriert: Dienstag 15. März 2005, 17:15
Wohnort: Singen
Postleitzahl: 78224
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon devkid am Sonntag 12. Dezember 2010, 21:11

Die Pulsbreite kann ich am PC über einen Schieberegler steuern, also zwischen 1 ms und 2 ms. Die Frequenz müsste bei 50 Hz, also alle 20 ms, liegen. Kann aber auch sein, dass der µC den Puls wirklich alle 2 ms ausgibt. Aber das müsste eigentilch egal sein, da man so trotzdem auf die 20 ms kommt, oder?
Gemessen hab ich das ausgegebene Signal nicht, hab kein Oszi. Aber wenn ich den Servo direkt an GND und VCC vom µC anschließe, funzt es ja wie gesagt, nur dass er manchmal hin und her zuckt (denke das liegt eben daran, dass er an der Spannung des µC's saugt).
Mir ist gerade auch noch aufgefallen, dass im Aufbau wie im Schaltplan eine Potentialdifferenz zwischen VCC und PWM vorliegt, die so ziemlich genau der Potentialdifferenz zwischen PWM und GND minus 5,7 Volt (Spannung der Batterie) des µC entspricht. (kA, ob das irgendwelche Auswirkungen hat?)
Zuletzt geändert von devkid am Sonntag 12. Dezember 2010, 21:20, insgesamt 1-mal geändert.
devkid
Threadstarter
41056
Junior Mitglied
 
Beiträge: 10
Registriert: Sonntag 12. Dezember 2010, 15:24
Postleitzahl: 01809
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon BernhardS am Montag 13. Dezember 2010, 07:18

Hallo,

also ich hab das schon öfters gemacht und hatte nie Probleme dabei. Allerdings bezieht sich das nur auf einen einzigen Servotyp. Vom billigsten Servo der Firma mit dem großen C habe ich mal ein Päckchen gekauft und bastle damit so dieses und jenes.

Der Servo bekommt 6 Volt aus einem Netzteil oder hängt an 4 normalen Alkaline Batterien. Mit 5 Volt ist er erkennbar langsamer als mit 6 Volt, nur ein wenig unter 5 Volt geht er garnicht mehr. Wie gesagt dieser eine Typ.
Das PWM-Signal vom Kontroller hat ziemlich genau die 5 Volt.

Die Differenz zwischen der Versorgung des Servos und dem PWM beträgt aber nur 1 Volt, wie kommst Du auf -5,7?

Bernhard
$2B OR NOT $2B = $FF
BernhardS
41057
Moderator
 
Beiträge: 4597
Registriert: Donnerstag 17. Februar 2005, 17:50
Postleitzahl: 84028
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon anders am Montag 13. Dezember 2010, 09:57

Gemessen hab ich das ausgegebene Signal nicht, hab kein Oszi.
Dann schliess mal anstelle des Servos einen Kopfhörer zwischen GND und PWM an.
Dann solltest du ein gleichmäßiges Summen hören, dessen Klang, normalerweise aber nicht die Tonhöhe, von der Sollwertvorgabe abhängt. Irgendwelche Unregelmäßigkeiten in dem Ton deuten darauf hin, daß deine Software Fehler enthält, die das Servo natürlich entsprechend bewertet.

Ansonsten sind vor allem gute Verbindungen der GND Leitung für die Vermeidung von Störungen entscheidend. Eine Differenz in der Speisepannung ist relativ uninteressant.
Achte darauf, dass die GND-Verbindung zwischen µC und Servo kurz und nicht zu dünn ist und von der Servo-Seite gespeist wird, damit der relativ hohe Strom des Servos keine Störspannungen auf dieser Leitung induziert.

Falls du das Board mit dem µC selbst gebaut hast, so hast du hoffentlich ausreichend viele Angstkondensatoren vorgesehen. Sonst mußt du dich nicht wundern, wenn das Programm öfter mal abstürzt.
anders
41059
Moderator
 
Beiträge: 4686
Registriert: Freitag 28. Februar 2003, 13:46

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon devkid am Montag 13. Dezember 2010, 12:12

BernhardS hat geschrieben:also ich hab das schon öfters gemacht und hatte nie Probleme dabei. Allerdings bezieht sich das nur auf einen einzigen Servotyp. Vom billigsten Servo der Firma mit dem großen C habe ich mal ein Päckchen gekauft und bastle damit so dieses und jenes.
So einen habe ich auch noch. ES-05 heißt der. Dieser zuckt immerhin nicht nur an der Schaltung wie oben im Schaltplan, sondern dreht sich ab und zu in eine beliebige Richtung, das PWM-Signal scheint das "irgendwie" zu beeinflussen.

BernhardS hat geschrieben:Die Differenz zwischen der Versorgung des Servos und dem PWM beträgt aber nur 1 Volt, wie kommst Du auf -5,7?
Nicht insgesamt, sondern PWM - 5,7 V

anders hat geschrieben:Falls du das Board mit dem µC selbst gebaut hast, so hast du hoffentlich ausreichend viele Angstkondensatoren vorgesehen. Sonst mußt du dich nicht wundern, wenn das Programm öfter mal abstürzt.
Hab ich nicht selbst gebaut, ist ein mySmartControl von myAVR.

Das PWM-Signal selbst sollte in Ordnung, sein, da es ja wie gesagt halbwegs funktioniert, wenn ich den Servo direkt an den Controller hänge. Das Signal erzeuge ich auch nicht "händisch", der µC hat eigene Ausgänge für PWM.

Ich Moment würde ich echt nur gerne wissen, was an der Schaltung wie im Schaltplan oben falsch ist. :( Hab auch schon alles mögliche andere ausprobiert, aber es funktioniert einfach nicht. So wie ich es jetzt habe kommt einfach der -Pol der Batterie zum GND vom Servo und der +Pol der Batterie zum VCC vom Servo, das PWM vom µC zum Signal-Eingang vom Servo und das GND vom µC zum GND vom Servo (also hängt auch mit am -Pol der Batterie).
devkid
Threadstarter
41061
Junior Mitglied
 
Beiträge: 10
Registriert: Sonntag 12. Dezember 2010, 15:24
Postleitzahl: 01809
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon devkid am Mittwoch 15. Dezember 2010, 22:03

Ok, das Problem mit dem Nicht-Funktionieren hat sich erstmal erledigt, die Batterie hatte zwar noch 5,7 Volt, konnte aber keinen Strom mehr liefern; ist mir aber nicht aufgefallen, habs mit einer LED getestet und die ging, lag aber an dem sehr geringen Strombedarf.

Um noch mal auf das ursprüngliche Problem zurückzukommen:
Ich hab jetzt erstmal ein Netzteil zum Testen verwendet, das funktioniert. Die Servos zucken allerdings immer noch! Ich hab zwei Servos hier: Der Digitalservo scheint irgendwie von innen ans Gehäuse zu stoßen oder die Zuckungen sind so schnell, dass ich sie nicht erkenne. Der Analogservo fängt an zu surren und wird innerhalb weniger Sekunden ziemlich heiß. Seltsam ist aber, dass diese "Symptome" ab und zu verschwinden, wenn ich die Servos kurz vom Board ziehe und wieder anstecke. Sie treten wieder auf, wenn ich den Servoarm kurz in eine Richtung drücke und verschwinden dann z.B. wieder, wenn ich ihn kurz in die andere Richtung drücke.
Da das Problem bei beiden Servos vorhanden ist, dachte ich, dass es wirklich am µC liegt. Aber da das Problem nur manchmal auftritt, könnte es doch auch daran liegen, dass die beiden Servos einfach nur Billigschrott (beide 4,95 €) sind, oder?
Hat sonst noch jemand eine Idee, woran das ganze liegen könnte oder könnte mir jemand einen brauchbaren Servo bis 10 € empfehlen?
devkid
Threadstarter
41071
Junior Mitglied
 
Beiträge: 10
Registriert: Sonntag 12. Dezember 2010, 15:24
Postleitzahl: 01809
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon Jornbyte am Mittwoch 15. Dezember 2010, 22:42

Poste mal dein Programm, womöglich ist da ein Fehler drinne.
mfg
Jornbyte
Jornbyte
41072
Silber Mitglied
 
Beiträge: 176
Registriert: Samstag 29. Juni 2002, 08:45
Wohnort: Hohenstein-Ernstthal
Postleitzahl: 09337
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon devkid am Mittwoch 15. Dezember 2010, 22:48

Code: Alles auswählen
// PWM aktivieren (8-Bit Counter)
TCCR0A |= 0b00000001;
TCCR0B |= 0b00000011;

// später: PWM einschalten
TCCR0A |= 1 << 6;  // Servo hängt an 0B -> Pin D5

// dann: OC-Value festlegen
OCR0B = 191;  // sollte Mittelstellung sein (128 = 1 ms, 255 = 2 ms)
devkid
Threadstarter
41073
Junior Mitglied
 
Beiträge: 10
Registriert: Sonntag 12. Dezember 2010, 15:24
Postleitzahl: 01809
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon Jornbyte am Donnerstag 16. Dezember 2010, 21:03

Ist das alles? :(
mfg
Jornbyte
Jornbyte
41088
Silber Mitglied
 
Beiträge: 176
Registriert: Samstag 29. Juni 2002, 08:45
Wohnort: Hohenstein-Ernstthal
Postleitzahl: 09337
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon devkid am Donnerstag 16. Dezember 2010, 22:12

Ähm, eigentlich ja. Was soll da noch großartiges kommen? OCR0B nimmt Werte zwischen 0 (0 ms Pulsbreite) und 255 (2 ms Pulsbreite an). Der Code läuft auf einem ATmega168.
Zuletzt geändert von devkid am Donnerstag 16. Dezember 2010, 22:12, insgesamt 1-mal geändert.
devkid
Threadstarter
41089
Junior Mitglied
 
Beiträge: 10
Registriert: Sonntag 12. Dezember 2010, 15:24
Postleitzahl: 01809
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon Jornbyte am Donnerstag 16. Dezember 2010, 22:24

Na da brauch ich noch das Makefile.
mfg
Jornbyte
Jornbyte
41091
Silber Mitglied
 
Beiträge: 176
Registriert: Samstag 29. Juni 2002, 08:45
Wohnort: Hohenstein-Ernstthal
Postleitzahl: 09337
Land: Germany / Deutschland

Re: Servo an µC anschließen mit externer Spannung?

Neuer Beitragvon devkid am Donnerstag 16. Dezember 2010, 22:27

Was soll das helfen? :?: Hab kein richtiges Makefile, nur ein kleines Bash-Script:
Code: Alles auswählen
avr-g++ -mmcu=atmega168 -Os -I $@ -o $1.out
avr-objcopy -j .text -j .data -O ihex $1.out $1.hex

Letztere Datei wird dann auf den Flash geladen, die Programme selbst funktionieren einwandfrei (LEDs an-/ausmachen und so ein Spaß).
devkid
Threadstarter
41093
Junior Mitglied
 
Beiträge: 10
Registriert: Sonntag 12. Dezember 2010, 15:24
Postleitzahl: 01809
Land: Germany / Deutschland

Nächste

Zurück zu Elektronik Allgemein

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 49 Gäste