Schrittmotor nur mit 60RPM

Hallo zusammen,

begebe mich mal wieder auf neuland und versuche einen Schrittmotor zum laufen zu bringen. Zu testzwecken habe ich mir einen
Trinamic QMOT QSH41218 Motor (http://www.trinamic.com/tmc/media/Downloads/QMot_motors/QSH4218/QSH4218_manual.pdf)
besorgt und eine
L293D (http://www.reichelt.de/index.html?;ACTION=7;LA=3;OPEN=0;INDEX=0;FILENAME=A200%252Fl293.pdf;SID=12UQcXGn8AAAIAAD8mzwMab2b7c4abf7b9a89fb5bd1fb14191aa4) Dual H-Bridge.

beides habe ich mit einem Arduino Uno verbunden.

Lade ich nun das standard script stepper_oneRevolution hoch klappt alles wunderbar. Das ändert sich in dem Augenblick, wo ich die RPM ändere egal ob 59 oder 61. Selbst vielfache von 60 machen nicht das was sie sollen.

Entweder dreht sich der Motor garnicht, oder aber nicht die gesamt Umdrehung sondern nur einen Teil. Ist das richtig so, oder habe ich da irgendwo einen Fehler drin? Habe gelesen, dass das passieren kann, wenn man keine Microsteps verwendet aber das das so extrem ist hätte ich nicht gedacht, daher meiner Frage, ob ich einen Fehler drin habe?

Danke schon mal

Steve

Meine Konfiguration:

1.8 Stepper somit 200 Schritte pro Umdrehung
(Pins am IC in Klammern)
VCC1( 16 ) + 1,2EN(1) + 3,4EN(9) = +5V Arduino
VCC2( 8 ) = +12V Externer Stromquelle
Ground (4,5,12,13) = gemeinsame GND von Arduino und externer Stromquelle

1A( 2 ) = Arduino 8
2A( 7 ) = Arduino 9
3A( 10 ) = Arduino 10
4A( 15 ) = Arduino 11

1Y( 3 ) = Stepper Grün
2Y( 6 ) = Stepper Schwarz
3Y( 11 )= Stepper Rot
4Y( 14 )= Stepper Blau

Du hast zwar nicht spezifiziert welchen der 4 im Datenblatt genannten Motore Du hast, aber alle Motore des Datenblattes verbrauchen mehr Strom ( 1A oder 2,8A) als der L293D schafft ( 0,6A). Auch ist keiner der Motoren für 12V geeignet ( 1,4V bis 5V).
So machst Du den L293 und den Motor kaputt.

Wenn das der richtige Sketch ist:

/* 
 Stepper Motor Control - one revolution
 
 This program drives a unipolar or bipolar stepper motor. 
 The motor is attached to digital pins 8 - 11 of the Arduino.
 
 The motor should revolve one revolution in one direction, then
 one revolution in the other direction.   
  
 Created 11 Mar. 2007
 Modified 30 Nov. 2009
 by Tom Igoe
 
 */

#include <Stepper.h>

const int stepsPerRevolution = 200;  // change this to fit the number of steps per revolution
                                     // for your motor

// initialize the stepper library on pins 8 through 11:
Stepper myStepper(stepsPerRevolution, 8,9,10,11);            

void setup() {
  // set the speed at 60 rpm:
  myStepper.setSpeed(60);
  // initialize the serial port:
  Serial.begin(9600);
}

void loop() {
  // step one revolution  in one direction:
   Serial.println("clockwise");
  myStepper.step(stepsPerRevolution);
  delay(500);
  
   // step one revolution in the other direction:
  Serial.println("counterclockwise");
  myStepper.step(-stepsPerRevolution);
  delay(500); 
}

Der Code müßte mit Werten Verschieden von 60 funktionieren
myStepper.setSpeed(60);

Versuchs mal wieder wenn Du die Hardware Probleme beseitigt hast.

Grüße Uwe

Hallo Uwe,

mann bin ich doof :frowning: das habe ich überlesen......

also entweder als Motor sowas nehmen

http://www.reichelt.de/Schrittmotoren/TMCM-MOTOR/3/index.html?;ACTION=3;LA=446;ARTICLE=48553;GROUPID=3299;artnr=TMCM-MOTOR;SID=12UQcXGn8AAAIAAD8mzwMab2b7c4abf7b9a89fb5bd1fb14191aa4

oder aber

nicht den 293D sondern den B nehmen

richtig?

Steve

Welchen Motor hast Du denn genau? QSH-4218 .... Welche Zahlen kommen danach?

In der Beschreibung des Motors von Reichelt steht: Coil-Current: 0,8 to 1,5 A und weder Nennspannung noch Wicklungwiderstand. Ist die berüchtigte Katze im Sack.

Der L293B ist auch nicht die Lösung. Wennschon den L298 und 8 schnelle 2A-Dioden.

Wenn Du einen Schrittmotor zum probieren kaufen willst (ohne Konkrete Idee eines Projekts) dann zB diesen: Schrittmotoren - Watterott electronic
Dieser funktioniert mit einem L293D.

Ansonsten einen 5V Schrittmotor findest Du in der Kopfpositionierung jedes CD-DVD Laufwerks.

Grüße Uwe

Also der Motor ist ein QSH 4218-41-10-035, ist somit die 1A Variante. :frowning:

Der L298 ist im Prinzip ähnlich wie der L293 nur eben mit 1A bzw 2A Leistung und einem Current Sensing, was auch immer das ist.

(Habe die Doku noch nicht komplett gelesen). Was mit nicht klar wird aus der Zeichnung (mag an der schlechten Qualität liegen, ist wie die Dioden angeschlossen werden sollen, und welche man am besten nimmt. Ich denke mal das viele der Punkte in der Zeichnung nicht geplant sind und somit eigentlich je zwei Dioden an einen Ausgang kommen sollen, und einmal mit dem +pol und einmal mit dem GND verbunden werden sollen richtig?

Kann man das Bauteil eigentlich auf ein BreadBooard packen? Wie gesagt bin noch in der Versuchsphase :smiley:


Worum es bei mir geht ist in ganz ferner Zukunft mal eine CNC-Frese zu realisieren. NAchdem ich meine Temperatursteuerung umgesetzt habe und damit erste Arduino Luft schnuppern konnte ist das nun das nächste Projekt.

Vorgehensweise hatte ich mir überlegt:

  1. Billigen Motor mit einfachen Kommandos zum Laufen bringen
  2. Begreifen wie die Kommunikation zwischen einem Arduino und z.B. linuxCNC umgesetzt werden kann (Gibt es ja schon Projekte wo ich schauen kann wie man sowas machen kann, aber lernen will ichs durch selber schreiben
  3. Die CNC selber bauen um herauszubekommen welche Leistungen die einzelnen 3 Motoren bringen müssen
  4. Nach diesen Vorgaben dann einen Treiber und entsprechende Motoren kaufen

Von einem Freund habe ich mal als ich das Projekt erwehnte Nanotec IMT 901 Module bekommen. Das sind ja auch treiber für Motoren, nur leider reicht mein wissen noch nicht aus um diese schon zu verweden geschweige denn anzusteuern mit dem Arduino :smiley:
http://de.nanotec.com/page_product_archive__schrittmotor_treiber_imt901__de.html
So sieht zumindest mein Plan für dieses Jahr aus :smiley:

Grüße

Steve

Jeder Ausgang bekommt einen Diode nach +Pol und eine nach Masse. Die Dioden werden so montiert, daß sie nicht leiten, also Katode zum Plus-Pol und Anode zum Minuspol.

Kann man das Bauteil eigentlich auf ein BreadBooard packen? Wie gesagt bin noch in der Versuchsphase

Mit etwas viel herumbiegen: ja.

Für CNC Anwendungen verwendet man Treiber mit Microsteps. (Wie den IMT 901) Für diese Treiber sind die Motore mit niedriger Versorgungsspannung notendig, weil sie mit ca 4 fachen Nennspannung betrieben werden müssen.
Es werden oft Module mit dem A4988 verwendet (Pololu oder Bigeasydriver).

Grüße Uwe

Aha ok,

Kann ich denn den Stepper den ich habe (hat ja 5V min Spannung) an dem 901 verwenden? Wenn ja würde es ja sinn machen herauszubekommen (also für mich zu lernen) wie ich den Anschließen und betreiben kann, weil ich dann später ja im Prinzip nur den Motor tauschen müßte richtig?

Steve

Wenn Du microsteps mit Stromsteuerung haben willst brauchst Du ca 20V
Grüße Uwe

Wäre ja kein Problem, aber muß denn der Motor soviel abkönnen? oder wird das nur für den Treiber benötigt......?

Das Datenblatt von dem 901 schlägt ja sogar 37V für die Schaltung vor, schreiben aber nirgendwo wieviel davon wirklich an den Stepper gehen :frowning: (Ok oder aber ich sehe es nicht :smiley: Oder sind das die "Output Voltage" mit 4,5 - 5 V. Wenn denn dem so ist werde ich dem Teil wohl eine ordentliche Kühlung verpassen müssen :smiley:

Wenn Du eine Schrittmotor mit Strom steuern willst, dann mußt Du den Strom durch den Treiber konstant halten. Die Induktivität des Motors wirkt einem schnellen Stromanstieg bei anlegen der Spannung entgegen. Damit der Strom dennoch den Sollwert erreicht wird der Motor mit einer höheren Spannung betrieben. Der Treiber schaltet den Ausgang ab sobald der Sollstrom erreicht ist um ihn nach kurzer Zeit wieder einzuschalten und dann bei Sollstrom wieder einzuschalten ecc. Dem Motor wird der Nennstrom gegeben und er bekommt auch keine Überspannung da das Ohmsche Gesetz gültig ist. Die Differenz zwischen Nennspannung und Versorgungspannung dient dem Aufbau des Magnetfelds.

Der Treiber wird auf den Nennstrom des Motors kalibriert.

Grüße Uwe

Hallo Uwe,

ok danke für die Infos nochmals. Das hatte ich gestern Abend mir auch bei Roboternetz.de auch angelesen. Im Prinzip ist das auch immer der Anfänger Fehler. Es geht nicht im die Spannung des Motors sondern im den Strom. Dieser beeinflusst das mögliche Drehmoment. Die Induktion, die die Spulen aufbauen wirkt "meinem Strom" entgegen, somit brauche ich eine Höhere Spannung an dem Motor um den Strom zu erhalten, den ich haben möchte.

Was ich nur bisher nicht verstanden habe ist, wo ich dem Treiber die Versorgungsspannung mitteile, sprich wo sage ich ihm, wie viel sein darf und wie viel nicht. Ist dafür im dem Fall der 901 der Ref-In und die NF-a und NF-b zuständig?

Grüsse

Steve

Hallo Steve

mit REF IN wird der Motorstrom von 100% auf 65% abgesenkt um bei stehenden Motor die Verlustleistung zu reduzieren.

Ich habe den Verdacht, daß die Stromeinstellung über Rsens erfolgt. Daß man die so wählt daß bei gewähltem Motorstrom eine gewisse Spannung abfällt. Ich hab noch kein ausführiches Datenblatt gefunden und jetzt leider auch nicht die Zeit dazu.
Bei genaueren Hinsehen steht im Blockschaltbild: Rsens 0,8 Ohm=1A/Phase

Grüße Uwe

Hi Uwe,

überhaupt kein Ding, bin ja schon für die vielen Infos die du mir gegeben hast dankbar. Bin auch dabei mehr Infos über den 901 zu sammeln. Habe bei Roboternetzwerk.de gesehen, das dort einige Projekte mit dem Teil gemacht haben, werde da mal anfragen, des weiteren habe ich auch ein CNC Projekt gefunden, wo jemand eine Parallel Port Steuerung auch mit den Treibern realisiert hat, den werde ich auch mal Anschreiben, ob der detaillierte Infos hat, sobald ich was erfahre, schreibe ich das hier rein, damit sich eventuell andere die Suche sparen können :smiley:

Steve

So,

habe mich mal weiter Informiert und siehe da der eignetliche Hersteller des ICs ist Toshiba. Hier läuft das Teil unter dem Namen TA8435H und Toshiba ist nicht so sparsam mit Informationen.

@Uwe du hattest wie üblich recht, die Spannung wird über die REFsens gesteuert, zumindest soweit ich das Datenblatt verstehe. Verstehen tu ich aber noch nicht so ganz, wie man den Berechnet bzw ansteuert, das wird wohl Hauptsächlich an meinen eingerosteten Englishkentnissen in Kombination mit den weit im Hinterstübchen befindlichen Elektronik Kenntnissen zusammen hängen :smiley:

Naja aber erstmal ein Anfang :smiley:

373762_DS (IMT 901).pdf (886 KB)