Minimum Speed of NEMA 17 Step Motor With Various Resolution of TB-6600 Step Motor Driver.
by rirmak in Circuits > Arduino
155 Views, 1 Favorites, 0 Comments
Minimum Speed of NEMA 17 Step Motor With Various Resolution of TB-6600 Step Motor Driver.
In this project I tested minimim speed of NEMA 17 Step Motor with various resolution of TB-6600 Step Motor Driver.
Supplies
Main Components
1) NEMA 17-HS4401 Step Motor
2) TB-6600 Step Motor Driver
3) Arduino UNO
4) 24 V 3A Power Supply
Other Components
5) Nema 17 Stepper Motor Holder
6) 350mm Lead Screw Nut - Trapezoidal T8 8mm
7) T8 Trapezoidal Nut Mounting Bracket
8) 3D Printer Flexible Coupling 5x8mm Coupler
9) KP 08 Pillow Block Bearing (Bore Diameter: 8mm)
10) 8mm Chrome-Plated Induction Hardened Shaft - 350mm
11) SK8 Aluminum Shaft Holder 8mm
12) 40x40x11mm Heatsink Block - Adhesive
13) Limit Switch
14) SCE8UU Linear Bearing
Fundamental Terms I
Each single step consist of one high and one low duration. Sum of this duration is called Step Duration.
Step Duration (s) = 2 x Step Delay
Step Frequency (Hz) = 1/Step Duration
e.g.
Step Delay= 500 micro seconds (500 micro seconds for LOW and 500 microseconds for HIGH)
Step Duration= 2 x 500 micro seconds = 1000 micro seconds = 0.001 seconds
Step Frequency (Hz) = 1/Step Duration = 1/ 0.001 =1000 Hz
Fundamental Terms II
Motor Speed (RPM) = (Step Frequency (Hz) x 60 ) / Driver Resolution
e.g. If driver resolution is 800 steps per revolution
Motor Speed = (1000 Hz x 60) / 800 =75 RPM
How Tables Are Calculated
According to formulas above I have calculated possible values for each driver resolution.
When I tested the calculated values for each resolution, I removed the values ββββfor which I could not get movement from the step motor.
Micro Step Settings of TB-6600
NEVER CHANGE RESOLUTION SETTINGS WHEN THE DRIVER IS POWERED
ARDUINO C++ Code
e.g.
const int delayTime=500; // 500 micro seconds
....
....
digitalWrite(stepPin, HIGH);
delayMicroseconds(delayTime);
digitalWrite(stepPin, LOW);
delayMicroseconds(delayTime);
Full Step 200 Pulse Per Revolution
200 microsecond is the minimum stepDelay at 200 pulse/rev resolution. Noise level is high.
1/2 Step (400 Pulse/rev)
100 microsecond is the minimum stepDelay at 400 pulse/rev resolution.
1/4 Step (800 Pulse/rev)
60 microsecond is the minimum stepDelay at 800 pulse/rev resolution.
1/8 Step (1600 Pulse/rev)
30 microsecond is the minimum stepDelay at 1600 pulse/rev resolution.
1/16 Step (3200 Pulse/rev)
10 microsecond is the minimum stepDelay at 800 pulse/rev resolution.
1/32 Step (6400 Pulse/Rev)
1 microsecond is the minimum stepDelay at 800 pulse/rev resolution.
Summary
1/8 Step (1600 Pulse/rev) and higher resolutions may be suitable for stabil appications.
If I have time I will put youtube videos about these tests.
Maximum speed that I have tested are last row of tables.