Hi - I have a machine here that includes a motor whose sole purpose is to strafe back and forth rapidly at maximum acceleration.
e: you can see the machine being tested here on youtube.
The performance I have with my current setup is perfect: One of the two cores of an ESP32 is dedicated to the Accelstep motor loop, the little 2A motors are surprisingly very strong and fast running through TB6600 drivers with a 36v/7a power supply behind it all.
The driver has a dedicated channel on the power supply, and the TB6600s are set to Quarter step. So it goes 36v/7a power -> TB6600 -> 2A motor
And the motor is driving a threaded linear axis.
My issue is that with prolonged use, the strafing program's boundaries (start and finish points) move over very slowly, so it's going out of bounds (but it seems to think that's where it should be).
(I'm reading about resonance right now, but I'd still like to hear from anyone about what they think is the best way to eliminate the step loss)
I will illustrate the issue:
This is the leadscrew:
|--------------------------------|
This is the programmed boundaries on the leadscrew:
|X-------X-----------------------|
And after about 3 minutes of use, here are the programmed boundaries shifting over:
|-----X-------X------------------|
An ugly way to deal with it would be to occasionally bring the motor back to the bump stop and re-establish a zero point to work from. But this totally breaks up the continuity of the operation I'd like to have.
So I'm just wondering if it's possible that this small 2A motor is losing some steps whilst ripping back and forth at full acceleration.
And if so, would a larger motor (Nema 23) with similar amperage theoretically correct this issue?
(all the leadscrew math and motor setup is correct, no need to double check that stuff)
e: quick note: the acceleration setting on the motor is probably set higher than it's capable of, especially in such a short distance it's traveling back and forth (~20mm). Maybe that's causing issues? Or just the motor's torque capabilities maybe...
I'm slightly out of my depth when it comes to troubleshooting motor performance, so any help is greatly appreciated!
e: here is the motor code that's running on a single core of the esp32...i know it's fairly large and ugly, but the performance is fine. i don't know if that would contribute to the shifting...there's a couple modes of operation there, and the work is all done in blocks (that's the i<20 up top) so one driving job follows another, usually switching between different modes.
stepper2 is the one in question.
e2: i ordered this motor with about 100oz holding torque just in case that's the issue, but i'd still like to hear from anyone who may have an idea about this stuff