ääääääääh...
geht das nicht auch in Software via timer?
MfG
Lunarman
Hallo,
ich möchte ein Servosignal mit nem µC generieren. Das einzige was ich noch brauche ist eine Möglichkeit 18ms zu stoppen. Wie zeitstabil sind Monostabile Kippstufen?
Oder gibt es neben DEM NE555 auch IC´s die genau für sowas da sind?
THX
The Man
Chuck Norris kann Windows Vista auf einem Atmel in Assembler implementieren!
Chuck Norris coded mit 3 Tasten:"1","0" und "compile"
ääääääääh...
geht das nicht auch in Software via timer?
MfG
Lunarman
o
L_
OL
This is Schäuble. Copy Schäuble into your signature to help him on his way to Überwachungsstaat!
http://de.youtube.com/watch?v=qV1cZ6jUeGE
Hallo
Möglichkeiten gibts da eine Menge, ich steuere z.b. 3 Servos mit einem 8MHz-ATMega8 ohne Interrupts (also blockierend) mit Zählschleife so:
https://www.roboternetz.de/phpBB2/vi...=321483#321483
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
@ radbruch,
wenn du auf einen Dummy Wert die Pulslänge aufaddierst, ist das doch nach definition kein echtes PWM mehr, weil sich ja die Periodendauer ändert. Sofern ich deine Programmbeschreibung korrekt verstanden habe.
Also braucht ein Servo kein echtes PWM? Und es kommt vorallem auf die Dauer des HIGH Pegels an?
Ich wollte die ms extern machen, um den Chip davon zu entlasten.
Hallo
Streng genommen ist es schon eine Pulsweitenmodulation, allerdings nicht so wie man es von Antriebsmotoren kennt:
https://www.roboternetz.de/wissen/index.php/Servo
Entscheidend für die Position ist die Länge des High-Impulses (0,5-1,5ms). Mit der Low-Pause kann man beeinflußen, wie "aggressiv" das Servo die gewünschte Position ansteuert. Zum Austesten der Werte finde ich solche Zählschleifen prima, weil man genau weiß, was man da tut. Die Servos brauchen diese Puls/Pause-Folge übrigens bis sie die Position erreicht haben.
Viel eleganter und für mehr Servos geeignet ist der Beispielcode mit dem 100kHz-Timer in dem RNWissen-Beitrag oben. So erledigt der Prozessor die Servoaufgabe locker nebenher.
Übrigens hat die dummy-Zuweisung in den Schleifen keine pwm-Funktion. Sie dient nur dazu den Kompiler zu zwingen, den Code nicht wegzuoptimieren und die Schleife etwas zu verzögern.
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
ich nehme an mit "Viel eleganter und für mehr Servos geeignet ist der Beispielcode mit dem 100kHz-Timer in dem RNWissen-Beitrag oben. meinst du deinen verlinkten Beitrag?
Mein Prog soll über Kanalwechsel vier AD Werte ermitteln und die an vier Servos geben. Ich wollte das haben, um für zukünftige Projekte einen Simulator zu haben und nicht auf den RC Kasten angewiesen zu sein.
Am Ende des Servo-Artikels im RNWissen ist ein Beispiel mit Timer und Interrupt. Aber das macht man nur so, wenn der µC zusätztlich auch noch viele andere Dinge tun soll.
Wenn du nur die 4 ADC-Werte an je ein Servo weitergeben möchtest, würde die Zählvariante vollkommen ausreichen. Mit wenig Mehraufwand könnte man auch noch eine einfache Trimfunktion einbauen und den Servoweg bei Vollausschlag beeinflussen.
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Hi, radbruch,
.. und dann? Ich dachte immer, Servos halten ihre Position nur, solange sie ein Signal bekommen!? Aber man hat doch sowieso bei EINEM Servo rund 18 bis 19 ms Pause - da kann man bei paar MHz einiges machen . . .Zitat von radbruch
Ciao sagt der JoeamBerg
Und dann werden die Servos nur durch die Selbsthemmung von Motor und Getriebe auf Position gehalten. Selbstverständlich kann man die Servos auch durchgehend mit dem Signal ansteuern. Ich wollte nur drauf hinweisen, weil die Servos eben auch eine Stellzeit benötigen. Aber das ist wohl eher unnötig, denn das hast du ja schon selbst gut im Griff.
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Ja schon. Da gehts den Servos wie mir , aber irgendwo hat diese Selbsthemmung bei den Servos natürlich ein Ende. Und das ist relativ bald. Bei den Servos .Zitat von radbruch
Na ja, im Griff ist übertrieben. Ich versuche immer noch einen PWM-Kanal für nur einen Schuss in der nötigen Länge hinzukriegen. Das könnte dann prächtig in einer ISR von 20 ms fahrbar sein. Weil ich doch in (m)einem tiny blos einen 8bit-timer habe .
Ciao sagt der JoeamBerg
Lesezeichen