28BYJ-48 (umgebaut zu bipolar), CNC Shield -> brummt nur

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?

Dann brauchst Du die doppelte Spannung für den Motor.

Hallo DrDiettrich,

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);

Die Bibliothek MobaTools hat eingebaute Rampen, ist meine Empfehlung.

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.

Welchen Motortreiber vewendest Du?

Grüße Uwe

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.

Nee, Strom runter bzw. für den Motor passend einstellen. Wie es geht, steht hier:
A4988 Stepper Motor Driver Carrier

Inhalt ungeprüft: Schnell und einfach den A4988 einstellen am 3D Drucker speziell für Deinen Motor.

Den 28BYJ-48 gibt es als 5V und als 12V Version.

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.

laut http://j5d2v7d7.stackpathcdn.com/wp-content/uploads/2015/10/28BYJ-48-Model-Series.gif
gibt es die 5V Version auch mit 60 Ohm und die 12V Version mit mehreren Werten zwischen 120 und 380 Ohm.

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).

Grüße Uwe

Ich seh schon, da hab ich noch Hausaufgaben. Vielen Dank für die super Hilfen! Ich schau mir das mal an und auch was uwefed geschrieben hat.

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 ...

Hausaufgaben! Auch dir danke für den Input!

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.

Grüße Uwe

Dann kanst Du Dir auch den DRV8825 Stepper Motor Driver Carrier, High Current ansehen, vergleichbar mit dem A4988. Der DRV8825 hat den Weg in meine Bastelkiste gefunden.

Ja schon, aber Dein Programm im ersten Beitrag könnte man schnell mit den MobaTools verbessern. So hatte ich das gedacht :slightly_smiling_face:

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.