Wenn ich folgenden Code verwende funktioniert der Schrittmotor, wenn ich ihn allerdings nicht laufen lasse, was in meiner Anwendung recht häufig der Fall sein wird, wird er heiss. Per Hand drehen lässt er sich nicht, es fühlt sich an, als würden die beiden Spulen genau entgegengesetzt arbeiten. Verhindern kann ich das nur, wenn ich die PWM Ausgänge ausschalte. Ist das normal ? Also sollte ich pwmA und B nur dann einschalten, wenn der Motor auch betrieben wird ? Und warum wird der Motor heiss ? #include <Stepper.h> const int stepsPerRevolution = 48; // change this to fit the number of steps per revolution // for your motor // initialize the stepper library on the motor shield Stepper myStepper(stepsPerRevolution, 12,13); // give the motor control pins names: const int pwmA = 3; const int pwmB = 11; const int brakeA = 9; const int brakeB = 8; const int dirA = 12; const int dirB = 13; int x = 0; void setup() { Serial.begin(9600); // set the PWM and brake pins so that the direction pins // can be used to control the motor: pinMode(pwmA, OUTPUT); pinMode(pwmB, OUTPUT); pinMode(brakeA, OUTPUT); pinMode(brakeB, OUTPUT); digitalWrite(pwmA, HIGH); digitalWrite(pwmB, HIGH); digitalWrite(brakeA, LOW); digitalWrite(brakeB, LOW); // initialize the serial port: Serial.begin(9600); // set the motor speed (for multiple steps only): myStepper.setSpeed(2); } void loop() { myStepper.step(48); myStepper.step(-48); delay(2000);
Natürlich werden Schrittmotor im Stillstand heiss, es fliesst ja schliesslich Strom durch, und der ist nötig damit der Schrittmotor stillsteht, denn er braucht den Strom für das Magnetfeld um sein Haltemoment erzeugen zu können. Wenn man beispielsweise eine Last an einem Kran per Schrittmotor nach oben zieht, möchte man ja nicht, daß die Last wieder runterfällt wenn man oben stoppt. Da muss das Haltemoment aufgebraucht werden. Wenn man das nicht braucht, weil man beispielsweise nur etwas waagerecht verschiebt, kann man dem Strom im Stillstand verringern, dazu muss aber die Steuerung eine Stromregelung besitzen, oder die Motor-Spannung verringern bei Schrittmotorsteuerungen ohne Stromregelung. Und wenn der Motor frei drehen dürfte, kannst du auch die Steuerung ganz abschalten.
Ok danke, der Motor wird an eine Linearführung angebaut, also schalte ich ihn einfach komplett ab, wenn er nichts bewegen soll.
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.