HAllo zusammen, Ich möchte gerne mit einem Allegro Motortreiber (A3987) einen Schrittmotor ansteuern. Dazu wird laut Datenblatt des Motortreibers lediglich ein "Rechteckimpuls" mit einer "High-bzw- Low- Pegellänge von je 1us" benötigt. Das wärer dann ein Rechtecksignal von 500kHz. Ich habe ein ARM EvalBoard des AT91SAM3U4E zur verfügung. Jetzt gibt es ja verschiede Möglichkeiten so einen Recteck zu erzeugen. 1) Da der Controller eine PWM Einheit hat, wäre es damit wahrscheinlich machbar. 2) Über einen Timer 3) ? Ich möchte natürlich die Anzahl der Impulse bestimmen können, da diese dier Anzahl der Motorschritte entspricht. Wie würdet Ihr das Lösen ? Wer hat Erfahrung mit der PWM des o.g. Controllers ? Vielen Dank HansM
Hi
>Das wärer dann ein Rechtecksignal von 500kHz.
Das was der Treiber kann ist relativ uninteressant. Was verträgt dein
Motor?
MfG Spess
HansM schrieb: > HAllo zusammen, > > Ich möchte gerne mit einem Allegro Motortreiber (A3987) einen > Schrittmotor ansteuern. Dazu wird laut Datenblatt des Motortreibers > lediglich ein "Rechteckimpuls" mit einer "High-bzw- Low- Pegellänge von > je 1us" benötigt. Wo hast du diese Angabe her? Das ist bestimmt die Angabe, was der IC maximal (in dem Fall: minimal) kann. Der kann sicher auch mit längeren Pulsen als mit 1µs bzw. kleineren Frequenzen umgehen.
HAllo,
vielen Dank für eure Rückmeldung.
@spess53:
Das ist ein wichtiger Punkt. Ich möchte erstmal die Ansteuerung
hinbekommen. bzw. theoretische Vorüberlegungen. Eins nach dem anderen
;-)
@Karl Heinz Buchegger
> Wo hast du diese Angabe her?
Ok Du hast Recht, im Datenblatt steht, dass er ein Rechtecksignal von
mindestens einer 1µs benötigt.
@All:
Aber meine Frage bezog sich eigentlich erstmal aussließlich auf die
Rechteckgenerierung ?
Wie macht man das am Besten ?
Danke
Hi >Aber meine Frage bezog sich eigentlich erstmal aussließlich auf die >Rechteckgenerierung ? >Wie macht man das am Besten ? Du brauchst eine variable Frequenz von (theoretisch) 0Hz bis einige 100Hz (Sonderfälle möglich). Bei AVRs erzeuge ich so etwas per CTC mit einem Timer. Ob dein ARM das kann entzieht sich meiner Kenntnis. MfG Spess
Hallo, also brauche ich eine variable Frequenz um verschiedene Geschwindigkeiten zu fahren ? Was ist CTC ? DAnke HansM
Es reicht nicht ein Rechtecksignal durch diese induktiven Wicklungen zu schicken. Es sollte auch ausreichend Strooom fließen. P=U*I Wie das geht: Über Schrittmotoransteuerung sind noch einige 100 nützliche Links im Forum zu finden. z.B. Beitrag "Bipolare Schrittmotoren/Ansteuerung"
@oszi40 Das stimmt denke ich so nicht. Das MotorIc welches ich einsetze ist relativ intelligent. Im Dateblatt steht: 1 Puls = 1Motorschritt. Der Puls dient ausschließlich zum treiben des Bausteins, nicht zur Leistungstreibung des Motors. HansM
Hi >also brauche ich eine variable Frequenz um verschiedene >Geschwindigkeiten zu fahren ? Nicht nur. Du kannst nicht ohne Schrittverluste aus dem Stand auf die Endgeschwindigkeit schalten oder abrupt stoppen. Da müssen Beschleunigungs-/ Bremskurven gefahren werden. >Was ist CTC ? Clear Timer on Compare Match. Das ist ein Timermode (bei AVRs) bei dem du den Endwert eines Timers vorgeben kannst. Der Timer zählt bis zu diesem Wert, schaltet einen Pin um und fängt wieder von Null an. Damit kannst du eine variable Frequenz an dem Pin erzeugen. >Das stimmt denke ich so nicht. >Das MotorIc welches ich einsetze ist relativ intelligent. Aber er weiss nicht, was der Motor macht. >Im Dateblatt >steht: 1 Puls = 1Motorschritt. Der Puls dient ausschließlich zum treiben >des Bausteins, nicht zur Leistungstreibung des Motors. Aber nur wenn du es richtig machst. Sonst ist ganz schnell 1 Puls <> 1Motorschritt. Mach dich bitte erst mal über die Ansteuerung und Eigenschaften von Schrittmotoren schlau. MfG Spess
HansM schrieb: > Dazu wird laut Datenblatt des Motortreibers > lediglich ein "Rechteckimpuls" mit einer "High-bzw- Low- Pegellänge von > je 1us" benötigt. Dann ist es kein Schrittmotor. Die brauchen 2 versetzte Impulse - woher soll der Motor sonst wissen, in welche Richtung er einen Schritt machen soll? Gruss Reinhard
Hi >Dann ist es kein Schrittmotor. Die brauchen 2 versetzte Impulse - woher >soll der Motor sonst wissen, in welche Richtung er einen Schritt machen >soll? Wenn ein DIR-Eingang vorhanden ist reicht ein Takt. MfG Spess
HansM schrieb: > 1 Puls = 1Motorschritt Wenn Theorie und Praxis stimmen schon. >> je 1us" benötigt. Schon Goethe sagte dazu: "Der Geist ist willig. Das Fleich ist schwach."
Hallo Reinhard! Lies doch bitte erstmal genau, bevor du dich zum Thema äußerst. Der OP schrieb von einem Motortreiber, nicht von einem Motor. Da reicht tatsächlich ein Rechtecksignal (plus Richtungsleitung), wie man dem Datenblatt von Allegro leicht entnehmen kann. Diese Art der Ansteuerung (Takt/Richtung) ist übrigens typisch für die meisten Schrittmotortreiber. Mit freundlichen Grüßen Thorsten Ostermann
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.