Hallo,
ich möchte auch Schrittmotoren in Reihe schalten.
Leider laufen sie aktuell nur in eine Richtung... habe irgendwo einen
gravierenden Fehler
ich habe hier einen TB6600 mit 5A
gesteuert wird alles über einen Arduino Uno
Der TB6600 erhält 24V
der Arduino 9V
Beim TB6600 habe ich folgende Einstellung an den Fip-Schaltern
0,6A
und
1/8 Schritte
Der Arduino Code ist wie folgt
1
#include <AccelStepper.h>
2
3
// defines pins numbers
4
#define stepPin 5
5
#define dirPin 4
6
constintenPin=6;// wird nicht genutzt, ist aber angeschlossen
7
#define motorInterfaceType 1
8
9
// das sind die Schalter die ich verwenden möchte um den Motor Links oder rechts drehen zu lassen bzw. zu stoppen... wird auch noch nicht genutzt
10
11
constintUpPin=1;// the number of the pushbutton pin
12
constintStopPin=2;// the number of the pushbutton pin
13
constintDownPin=3;// the number of the pushbutton pin
14
15
// Create a new instance of the AccelStepper class:
intUpState=0;// variable for reading the pushbutton status
20
intStopState=0;// variable for reading the pushbutton status
21
intDownState=0;// variable for reading the pushbutton status
22
23
voidsetup(){
24
stepper.setMaxSpeed(1000);
25
stepper.setAcceleration(500);
26
27
// Sets the two pins as Outputs
28
pinMode(stepPin,OUTPUT);
29
pinMode(dirPin,OUTPUT);
30
31
pinMode(enPin,OUTPUT);
32
digitalWrite(enPin,LOW);
33
34
pinMode(UpPin,INPUT);
35
pinMode(StopPin,INPUT);
36
pinMode(DownPin,INPUT);
37
38
}
39
40
41
42
voidloop(){
43
UpState=digitalRead(UpPin);
44
StopState=digitalRead(StopPin);
45
DownState=digitalRead(DownPin);
46
47
// Set the target position:
48
stepper.moveTo(8000);
49
// Run to target position with set speed and acceleration/deceleration:
50
stepper.runToPosition();
51
delay(1000);
52
// Move back to zero:
53
stepper.moveTo(0);
54
stepper.runToPosition();
55
delay(1000);
56
57
}
Sieht jemand das Problem... habe ich die Verkabelung falsch?
ich habe die Motooren 2x12V in Reihe geschaltet deshalb bekommen sie
auch 24V über den Treiber
Grüße Jürgen
Dann werde ich mich als erster aufs Glatteis wagen. Vorausgesetzt, Dein
Program funktioniert, würde ich hauptsächlich Motorphysik verdächtigen.
Da bei Deinem TBB600 der Motorstrom gemessen und kontrolliert wird,
vermute ich, daß sich durch die Induktivität des 2. Motors die
Magnetfelder falsch aufbauen und deswegen Schrittmotor Fehlfunktion
einstellt weil ja die magnetischen Felder zur Rotorbewegung genau ihre
vorgeschriebene Unterschiede zwischen den Wicklungen einhalten müssen.
Der zweite Motor verändert die Verhältnisse ungünstig.
Aber. Da der TBB6000 den Strom der Windungen reguliert, würde ich
vorschlagen nur einen Motor anzuschliessen. Die Spannungsangabe beim
Motor kannst Du ignorieren. Es kommt auf die korrekte Stromeinstellung
an. Solange der TBB6000 richtig eingestellt wurde, kann nichts
passieren. Wenn ein einzelner Motor sich richtig verhält, dann beweist
das, daß magnetische Fehlfunktion die Ursache Deines Problems ist.
Ansonsten würde ich vorschlagen, zwei Motortreiber parallel anzusteuern
und die Motoren wie vorgesehen, einzeln zu betreiben. Magnetisch ist die
Serienschaltung zweier Motoren nicht elektrisch/physikalisch
"schmutzig".
Aber vielleicht wissen mehr Erfahrene hier mehr. Ist halt meine Meinung.
Jürgen schrieb:> Sieht jemand das Problem... habe ich die Verkabelung falsch?
Schon mal mit nur einem Motor versucht?
Zumindest bei mir funktioniert dein loop mit einem Motor.
Laut deines angehängten Verdrahtungsplanes hast du die "A" Wicklungen
parallel und die "B" Wicklungen in Reihe geschaltet.
Bei Parallelschaltung sollte der Strom auf 1,2A eingestellt werden.
Hallo
Danke für die Antworten
Mmhh... Muss es zuhause umbauen...wenn ich einen Motor zum laufen bringe
(links und rechts Rum) Muss ich dann um 2 Motoren zu betreiben diese
parallel schalten oder wurde auch seriell funktionieren wenn korrekt
angeschlossen.
?
Grüsse Jürgen
Nein, um zwei Motoren zum Laufen zu bringen, brauchst du zwei
Ansteuerschaltungen. Du kannst zwar die Ausgänge DIR und PUL an beide
Endstufen parallel anschliessen, aber die Motortreiber können jeweils
nur einen Motor ansteuern.
Helmut -. schrieb:> Nein, um zwei Motoren zum Laufen zu bringen, brauchst du zwei> Ansteuerschaltungen. Du kannst zwar die Ausgänge DIR und PUL an beide> Endstufen parallel anschliessen, aber die Motortreiber können jeweils> nur einen Motor ansteuern.
Und für die 12V 0,8A tuns diese Teile
Ebay-Artikel Nr. 392743953062
Da bekommst du 5 Stück für knapp 8€. Da kannst du beim experimentieren
auch mal einen abbrennen.
MfG Klaus
...
ich hab das noch nicht ganz begriffen. (mit dem seriell schon aber
parallel macht kopfzerbrechen)
wenn ich beide Motoren parallel an einen Treiber hänge so dachte ich
das die Motoren es gar nicht merken und der Treiber auch nicht
ich will ja nicht jeden Motor einzeln steuern... ich möchte nur das
diese einigermaßen parallel laufen also gleichmäßig.
oder geht das rein gar nicht?
wenn dem so ist... dann habe ich aber den TB6600 umsonst gekauft oder?
den brauch ich dann nicht mehr.
ich wollte/müsste eigentlich das Teil heute zum laufen bekommen... mist
in einem youtube video hatte ich gesehen das jemand 2 schrittmotoren an
einen TB6600 hängte und diese parallel angeschlossen hat.. nur hat der
den einen rechts und den anderen links rum laufen lassen..
https://www.youtube.com/watch?v=CkmShoIe0rs
aus diesem Grund dachte ich das müsste ja auch funktionieren wenn beide
dann rechts rum laufen sollen...
Jürgen schrieb:> wenn ich beide Motoren parallel an einen Treiber hänge so dachte ich> das die Motoren es gar nicht merken und der Treiber auch nicht
Bei Parallelschaltung teilen sich die beiden Schrittmotoren den Strom
des Treibers - jeder Motor bekommt nur noch den halben Strom (in Deinem
Fall sind das dann nur noch 0,3A).
> ich will ja nicht jeden Motor einzeln steuern... ich möchte nur das> diese einigermaßen parallel laufen also gleichmäßig.>> oder geht das rein gar nicht?
Die Lösung mit Parallel- bzw. Reihenschaltung ist in der Tat suboptimal.
Es sollte besser für jeden Schrittmotor ein eigener Treiber eingesetzt
werden. Die Steuereingänge der Treiber musst Du dann parallel schalten.
Ich bin nicht der Motorspezialist.
Das Thema Serien oder Parallelschaltung kenne ich aus der 3D-Drucker
Welt.
Dort werden die Z-Motoren öfters in Serie geschaltet.
Bei Parallelschaltung (keine Ahnung ob es funktioniert) musst du
beachten dass jeder Motor nur mehr den halben Strom abbekommt.
Besser wäre es sicher mit 2 getrennten Treibern.
Aber probiers doch einfach aus bevor du verzweifelst die Klippe
runterspringst ;)
wenn ich sie parallel schalte dreht sich gar nix mehr.. grrr
wie soll dann die serielle Schaltung funktionieren?
die hatte ich ja schon .. hatte aber 2 drähte vom Motor seriell und die
anderen parallel... ok das ist natürlich mist.. kann ich dann die
anderen beiden auch seriell schalten
bzw. muss ich
TB6600 A+ ==> Motor1-A+
Motor1 A- ===> Motor2 A+
Motor2 A- ===> TB6600 A-
TB6600 B+ ===> Motor1 B+
Motor1 B- ===> Motor2 B+
Motor2 B- ===> TB6600 B-
?
Jürgen schrieb:> wenn ich sie parallel schalte dreht sich gar nix mehr.. grrrMagnus M. schrieb:> Bei Parallelschaltung sollte der Strom auf 1,2A eingestellt werden.Jürgen schrieb:> wie soll dann die serielle Schaltung funktionieren?> TB6600 A+ ==> Motor1-A+> Motor1 A- ===> Motor2 A+> Motor2 A- ===> TB6600 A->> TB6600 B+ ===> Motor1 B+> Motor1 B- ===> Motor2 B+> Motor2 B- ===> TB6600 B->> ?
Das sieht erst mal "vernünftig" aus. Probiere es und berichte vom
Ergebnis.
habe ich jetzt alles zerstört?
ich bin jetzt auf Singlebetrieb gegangen und kein Motor dreht sich mehr
Ich habe also nur einen Motor angeschlossen
wenn ich am Motor drehe (mit der Hand) so dreht er sich sehr schwer...)
wenn kein Strom drauf ist, ist er leichtgängig...
Das ist nun bei beiden Motoren der Fall... sind nun die Motoren oder der
TB6600 kaputt?
Magnus M. schrieb:> Jürgen schrieb:>> wenn ich sie parallel schalte dreht sich gar nix mehr.. grrr>> Magnus M. schrieb:>> Bei Parallelschaltung sollte der Strom auf 1,2A eingestellt werden.
habe ich ja eingestellt...
es dreht sich aber keiner mehr
>> Jürgen schrieb:>> wie soll dann die serielle Schaltung funktionieren?>>> TB6600 A+ ==> Motor1-A+>> Motor1 A- ===> Motor2 A+>> Motor2 A- ===> TB6600 A->>>> TB6600 B+ ===> Motor1 B+>> Motor1 B- ===> Motor2 B+>> Motor2 B- ===> TB6600 B->>>> ?>> Das sieht erst mal "vernünftig" aus. Probiere es und berichte vom> Ergebnis.
Bei dem seriellen Betrieb
hatte ich 0,6A eingestellt
beim Parallel Betrieb 1,2A
Bei beiden Schaltungen lies ich die Spannung beim TB6600 auf 24V...
da hier gar nichts mehr ging bin ich zurück zum reinen Singlebetrieb
also 0,6A und nur ein Motor angeschl...
der Motor dreht sich nicht... wenn ich ihn via hand bewegen möchte dann
geht er sehr schwer... ist alles ausgeschaltet geht der Motor mit der
Hand gedreht leichtgängig.
irgend was habe ich wohl zerschossen
aber was?
1) Überprüfe doch mal die Verkabelung auf der Ansteuerungsseite deines
TB6600. Womöglich hat sich da was gelockert?
2)Bist du dir sicher dass der TB6600 überhaupt noch (korrekt)
angesteuert wird?
Magnus M. schrieb:> Nachtrag:>> Du hast doch nicht etwa die Motoren umgekabelt während der TB6600 noch> mit Spannung versorgt wurde?
nein das habe ich natürlich nicht
muss mal sehn ob sich da was gelockert hat...
die vom TB6600 abgehenden Kabel waren zumindest korrekt und an der
Arduino-Seite hatte ich nichts gemacht...
Vielleicht hat sich dort was gelockert
Jürgen schrieb:> Magnus M. schrieb:>> Nachtrag:>>>> Du hast doch nicht etwa die Motoren umgekabelt während der TB6600 noch>> mit Spannung versorgt wurde?>
ok
im Singlebetrieb geht der eine Motor (anderen habe ich noch nicht
getestet)
(Ich habe nur den Sketch neu hochgeladen) dann ging es
Was aber auch bei dem einen motor nicht geht ist das er zurück fährt...
er läuft also nur in eine Richtung (siehe mein Sketch oben)
Am Motor habe ich folgende Farben
die wie folgt angeschlossen sind
Motor-Rot===> TB6600 A+
Motor-Blau===> TB6600 A-
Motor-Grün ===> TB6600 B+
Motor-Schwarz===> TB6600 B-
Die sind auch so in der Reihenfolge am Motor via Stecker dran
Rot, Blau, Grün, Schwarz
habe ich da was falsch gemacht?
Jürgen schrieb:> im Singlebetrieb geht der eine Motor (anderen habe ich noch nicht> getestet)
Und warum testest du den zweiten Motor nicht auf die selbe Weise?
Magnus M. schrieb:> Warum hast Du die ENABLE-Eingänge (ENA+/ENA-) nicht angeschlossen?
die habe ich jetzt angeschlossen im sketch aber auf Low gesetzt (ich
gehe dabei nur nach Beispiele aus dem Netz)
Ok.. jetzt läuft zumindest der eine Motor korrekt Vor und zurück
es lag an den Kabeln... sorry... ich sah den Wald vor lauter...
Frage.
aktuell läuft er wie im sketch 5000 steps vor und dann zurück auf 0
Ich möchte hier eine Hebeanlage bauen die via Schalter rauf und runter
fahren soll... ich habe dazu 3 Schalter eingebaut.
Auf, Ab und stop
bis jetzt habe ich nur Beispiele mit Steps gefunden wo diese fix
definiert sind
weiss jemand wie ich den sketch umschreiben muss das der Motor ständig
vor oder zurück fährt... wie ich die schalter dann im Programm einbauen
muss weiss ich...
Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.
Wichtige Regeln - erst lesen, dann posten!
Groß- und Kleinschreibung verwenden
Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang