Ich habe einen auf bipolar umgebauten Stepper 28BYJ-48 an ein CNC Shield angeschlossen. Er sitzt als X-Achse auf dem Shield. Spannung am Shield sind 5V mit rund 1W.
Mit folgendem Code möchte ich testen, ob er läuft. Brummt aber nur ...
// CNC Shield Stepper Control Demo
// Superb Tech
// www.youtube.com/superbtech
const int StepX = 2;
const int DirX = 5;
const int StepY = 3;
const int DirY = 6;
const int StepZ = 4;
const int DirZ = 7;
int steps = 2000;
void setup() {
pinMode(StepX,OUTPUT);
pinMode(DirX,OUTPUT);
pinMode(StepY,OUTPUT);
pinMode(DirY,OUTPUT);
pinMode(StepZ,OUTPUT);
pinMode( DirZ,OUTPUT);
}
void loop() {
digitalWrite(DirX, HIGH); // set direction, HIGH for clockwise, LOW for anticlockwise
digitalWrite(DirY, HIGH);
digitalWrite(DirZ, HIGH);
for(int x = 0; x<steps; x++) { // loop for 200 steps
digitalWrite(StepX,HIGH);
delayMicroseconds(500);
digitalWrite(StepX,LOW);
delayMicroseconds(500);
}
delay(1000); // delay for 1 second
for(int x = 0; x<steps; x++) { // loop for 200 steps
digitalWrite(StepY,HIGH);
delayMicroseconds(500);
digitalWrite(StepY,LOW);
delayMicroseconds(500);
}
delay(1000); // delay for 1 second
for(int x = 0; x<steps; x++) { // loop for 200 steps
digitalWrite(StepZ,HIGH);
delayMicroseconds(500);
digitalWrite(StepZ,LOW);
delayMicroseconds(500);
}
delay(1000); // delay for 1 second
}
Ich bin kein Elektroniker, verstehe also eher wenig von Spannung und auch von Schrittmotoren, die nur brummen, anstatt loszulaufen. Hat hier jemand eine Idee, die mich weiterbringt?
das war schon mal ein guter Hinweis, vielen Dank. Er läuft jetzt mit 10V (und zieht etwa 0,8W).
Wenn ich ihn jetzt noch etwas langsamer andrehen lasse, dann schnurrt er wie ein Kätzchen.
...
// größere Pause = langsamere Startgeschwindigkeit.
int rest = 800;
// 2048 steps = etwa eine Umdrehung
for (int x = 0; x < 2048; x++) {
// anfahren von 800 auf 500 microseconds
if (rest >= 500) rest--;
digitalWrite(StepX, HIGH);
delayMicroseconds(rest);
digitalWrite(StepX, LOW);
delayMicroseconds(rest);
}
delay(1000);
jein.
Wenn man eine Unipolaren Schritt-Motor zu einem Bipolaren umbaut (in konkreten Fall beim 28BYJ-48 die Verbindung der beiden Mittelanzapfungen durchtrennt). dann muß man die Verlustleistung berücksichtigen. Der Motor ist mindestens so bemessen daß die Abwärme von 2 gleichzeitig durchflossenen Halbspulen über die Gehäusefläche soweit abgeführt werden kann daß die Temperatur in der Spule nicht die max Betriebstemperatur der verwendeten Materialien ( Kupfer Kunsstoffisolierung) überschreitet.
Verwende ich den Motor nun als Bipolaren Motor und geben Strom auf alle 4 Halbspulen so wird doppelt soviel Abwärme produziert. Dies kann zu einer thermischen Überlastung des Motors führen.
Schau ich mir mal an, danke. Im Moment bau ich an einem CNC Aufbau herum, um das Prinzip zu verstehen. Ich denke, dass ich hier mich auf die GBRL Software verlassen muss ...
Das habe ich schon gemerkt. 2 von 3 Motoren werden echt heiß. Ich mach mal bei Gelegenheit ne Temperaturmessung. Der dritte interessanterweise nicht, obwohl sie alle gleich angesteuert werden. Wie bekomme ich die Temperatur runter? Spannung runter oder Drehzahl??
Ich verwende einen A4988 Schrittmotortreiber. Kam zusammen mit dem CNC Shield von Amazon.
Mit Strombegrenzung wenn der Treiber das kann, sonst mit der Spannung. Leistung original: 5V*I an R gibt Ualt²/R, soll jetzt Uneu²/2R. Gefühlt 5V*1.4=7V.
Die 5V Version hat laut Datenblatt ca 50 Ohm Spulenwiderstand.
Hab an einem dieser Motoren nachgemessen. Ich messe 21,8 Ohm pro Halbspule und 42,8 Ohm einer Gesamtspule.
Die 12V Variante hat laut Datenblatt 300 Ohm Spulenwiderstand und 40mA Nennstrom.
Nehmen wir mal an Du hast die 5V 50 Ohm Variante so fließen bei 5V auf der Halbspule oder 10V auf der Vollspule 200mA.
Der A4988 ist meiner Meinung nicht für diesen Motor geeignet. Der Motor ist wegen des höheren Wicklungswiderstandes für Spannungsansteuerung gebaut. Der 4988 ist aber ein Stromtreiber. Zu guten Funktion des Stromtreibers vor allem bei Microstepping muß der Stromtreiber den Strom begrenzen und nicht der Wicklungswiderstand bzw die Wicklungsinduktivität des Motors. Damit der A4988 den Strom begrenzen kann muß die Versorgungsspannung höher als die Nennspannung des Motors sein. Bei der 5V Variante in Bipolarmodus also mehr als 10V, am besten mindestens 4 mal die Nennspannung. Der A4988 ist aber nur bis 35V Motorversorgungsspannung geeignet.
Für einen würde ich einen A3967 nehmen oder Noch besser einen A4988 mit einem geeigneten Motor (Nennspannung unter 4V und Nennstrom zwischen 1 und 2A).
Ich schnapp mir mal das Datenblatt und versuche mal alles nachzuvollziehen und zu verstehen. Dann schau ich mal was einfacher ist - einen A3967 Treiber oder einen anderen Motor ...
Entschuldige, hab mich wohl falsch ausgedrückt.
Der A3967 ist auch nicht mehr optimal als der A4988 für den 28BYJ-48. Der A3967 ist der klein Bruder des A4988, ein Microstep-Stromtreiber aber nur für 750mA.
Mein Vorschlag ist ein A4988 und ein dafür geeigneter Motor.
Geeignete Motoren wären solche die für 3D Drucker erhältlich sind.