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.
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
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.
Ich würde mal vom Einbrechen der Spannungsversorgung oder von heftigen Störimpulsen auf der Versorgungsleitung durch den Servo ausgehen. Überprüfe diese mal, am besten mit einem Oszilloskop.
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
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.
Trotzdem sollte der 100nF-Kondensator für den Tiny auf die andere Seite der Drossel, also direkt an den Tiny!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.