Servos ansteuern - Tiny13 überlastet?

Gast #1323235
Lesenswert?
• ▲
▼
Hallo!

Ich möchte mit einem Tiny13 zwei Servomotoren steuern. Es handelt sich 
hierbei um die 5-Euro-Billigservos von Conrad (sind vermutlich nicht die 
besten aber zum testen reicht es). Nun habe ich das Programm für den 
Tiny geschrieben und unbelastet (Servos abgesteckt) an den Pins zur 
Ansteuerung geschaut, ob die Impulse richtig sind - und das sind die 
(Periodendauer nahezu perfekt, um die 20.2 ms, Impulsdauer auch im 
zulässigen Bereich (1 bis 2 ms)).
Bei der Software werden die Servos zunächst als Initalisierung auf ihre 
maximale und dann auf ihre minimale Position gefahren (mit 1 Sek. Pause 
dazwischen) und nach einer weiteren Sekunde soll einer der Servos sich 
relativ häufig Bewegen (bei meiner Testanwendung wird die Position alle 
100ms etwas variiert).

Soweit so gut, solange die Servos abgesteckt sind, sehen die Signale 
auch prima aus und es verhält sich so, wie es sich verhalten soll.
Schließe ich allerdings die Servos an (bzw. es reicht auch nur der, der 
sich schnell bewegen soll), so arbeitet der Servo ein paar Sekunden und 
dann scheint der AVR neuzustarten, die Initalisierungsprozedur beginnt 
als wieder.

Nun vermute ich, dass der AVR überlastet ist und deswegen einen Reset 
ausführt... oder aber die Servos sonstige Störimpulse erzeugen. Nur was 
kann ich dagegen tun? Die Schaltung (sie ist recht minimalistisch 
gehalten, die drei Abblock C's sitzen zum einen am AVR und dann jew. 
einer am Servo-Stecker) befindet sich im Anhang.

Vielen Dank schon einmal.
Angehängte Dateien:
#1323248
Lesenswert?
• ▲
▼
Da ist wohl nicht der TINY überlastet, sondern Vcc. Benutze mal 
testweise 2 separate 5V-Versorgungen; eine für den Tiny und eine für den 
Rest. Bitte auf saubere Masseführung achten!

Wenn das die Probleme löst:
- Stromversorgung stärker puffern (dicker Elko)
- Zuleitung zum Tiny mit zusätzlicher Drossel abblocken.

Viel Erfolg!
Bernhard
#1323249
Lesenswert?
• ▲
▼
Namenslos schrieb:

> Nun vermute ich, dass der AVR überlastet ist und deswegen einen Reset
> ausführt... oder aber die Servos sonstige Störimpulse erzeugen.

Servos können richtige Dreckschleudern auf der Versorgungsspannung sein. 
Wenn sie dir wirklich den Tiny ausser Tritt bringen, gibt es nur eine 
Möglichkeit: Die Versorgungsspannung der Servos vom AVR fernhalten bzw. 
möglichst gut sieben. 100nF an den Servoanschluessen werden da nicht 
reichen. Probier mal da einen etwas größeren Kondi jeweils parallel 
zuschalten.
Gast #1323280
Lesenswert?
• ▲
▼
Hallo!

Ich schätze einmal dass bei Dir die Versorgungsspannung zusammen bricht. 
Ich hatte bei mir genau das gleiche Problem, wenn auch nicht mit einem 
Tiny. Und die Widerstände R2 und R3 sind auch viel zu Groß. Wenn Du die 
Tiny Ports schützen willst, dann reichen hier 500 Ohm bereits aus.

LG Jens
Gast #1323409
Lesenswert?
• ▲
▼
Juhuuu es funktioniert :-)

Benutze weiterhin nur eine Spannungsquelle, allerdings bin ich etwas 
großzügiger mit Kondensatoren umgegangen und habe eine Drossel vor das 
VCC vom Tiny13 gesetzt. Nun läuft es ohne Zurücksetzer :-)

Im Anhang die Version, die Funktioniert. Die Induktivität der Drossel 
konnte ich nicht bestimmen, aber es ist eine Drossel aus einem alten 
PC-Netzteil.
Angehängte Dateien:

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.