Hi guys. I have some kind of speed problems. I make a rotator on a worm gear. Total gear ratio 1: 233. I use Arduino Nano, the tb6600 driver (8 microsteps) and the Nema 23 0.7Nm stepper motor. On GRBL firmware, I have no problem having a speed of 1 revolution in 30 seconds and a soft sound of the motor. On the stepper_motor_control firmware, I can’t get the device working well. I tried various MAX_SPEED settings and it seems to me that the engine doesn’t react to them after some value. I need to get about 500 rpm on the shaft of a stepper motor at 8 microsteps and (200 pulses per revolution 1.8 degrees).
1 turn = 200 pulses * 8 microsteps. 1600
500 * 1600/60 = 13333 steps per second. But that does not work. The speed is still limited by some low value and the quality of the STEP signal is not satisfactory. I determine by ear that the engine is not running smoothly. The angular position corresponds to my settings.
My settings are below. Thanks and sorry for my English
#define SAMPLE_TIME 0.1 ///< Control loop in s
#define RATIO 233 ///< Gear ratio of rotator gear box
#define MICROSTEP 8 ///< Set Microstep
#define MIN_PULSE_WIDTH 20 ///< In microsecond for AccelStepper
#define MAX_SPEED 13333 ///< In steps/s, consider the microstep
#define MAX_ACCELERATION 6400 ///< In steps/s^2, consider the microstep
#define SPR 1600L ///< Step Per Revolution, consider the microstep
#define MIN_M1_ANGLE 0 ///< Minimum angle of azimuth
#define MAX_M1_ANGLE 360 ///< Maximum angle of azimuth
#define MIN_M2_ANGLE 0 ///< Minimum angle of elevation
#define MAX_M2_ANGLE 180 ///< Maximum angle of elevation
#define DEFAULT_HOME_STATE HIGH ///< Change to LOW according to Home sensor
#define HOME_DELAY 120 ///< Time for homing Deceleration in millisecond
I think the problem is in the AccelStepper.h library because I find online complaints about this library.
1 Like