PROTOYPING a MAXESP3- Stepper configuration question #tmc2209 #esp32 #drv8825 #maxesp3


Wally
 

Hi Howard,
I am doing a test Verobaord of my OnStep setup. Power is from a 12V lab bench power supply for now.
I have a 200 step NEMA17 but not the one I will use in the final build.
I am also using DRV8825 stepsticks but I have ordered the TMC2209 and the MAXESP4 PCB
The final design I hope to use a NEMA17 200 step + 50:1 planetary greabox + 100:1 harmonic reducer.
From the spreadsheet with 16 micro steps, the AXIS1/2_STEPS_PER_DEGREE is compiled as 44,444.444

Now I have is conecting via Bluetooth and the test stepper is spinner nice and sedatly (1 REV every 17second) when I have tracking enabled in SharpCap.
If I try to slew with the highes speed of 1 deg/sec the stepper looses sync and cant keep up.

I set the current to the stepper via the pot on the DRV8825, to be around 150mA. Running it higher at 400mA doesnt help and makes the stepper noticably warm.

My config.h looks like this

#define AXIS1_DRIVER_MODEL        DRV8825 //    OFF, (See above.) Stepper driver model.                                      <-Often
#define AXIS1_DRIVER_MICROSTEPS        16 //    OFF, n. Microstep mode when tracking.                                        <-Often
#define AXIS1_DRIVER_MICROSTEPS_GOTO    4 //    OFF, n. Microstep mode used during gotos.                                     Option
#define AXIS1_DRIVER_IHOLD            OFF //    OFF, n, (mA.) Current during standstill. OFF uses IRUN/2.0                    Option
#define AXIS1_DRIVER_IRUN             OFF //    OFF, n, (mA.) Current during tracking, appropriate for stepper/driver/etc.    Option
#define AXIS1_DRIVER_IGOTO            OFF //    OFF, n, (mA.) Current during slews. OFF uses same as IRUN.                    Option
#define AXIS1_DRIVER_REVERSE          OFF //    OFF, ON Reverses movement direction, or reverse wiring instead to correct.   <-Often
#define AXIS1_DRIVER_STATUS           OFF //    OFF, TMC_SPI, HIGH, or LOW.  Polling for driver status info/fault detection.  Option

So what can I change to get the best slew speed as I do not want the stepper to ever loose steps as I am not using any encoders.
Will this be all a bit better when using the MAXESP4 board with the TMC2209 stepsticks?

Thanks so much for such a wonderful project.

 


Howard Dutton
 
Edited

Your overall reduction ratio planned for is rather high so that will likely limit slew speeds as stepper motors can only spin so fast.

Higher operating voltage helps, like 24VDC we usually recommend.
A lower inductance (higher current rated) motor helps, like perhaps a NEMA17 1.7A or 2.0A rated one.

You might find that about 1/2 to 1/5 of that overall reduction gets the best results.


Peter Boreland
 

Wally, the ideal step resolution seems to be around 0.14 to 0.56 arcsec/step.  Dec seems to benefit more than Ra with regard finer step size. It allows the mount to respond to smaller size pulses issued by the guiding software, Because the Ra axis is always moving, I've personally not seen really any improvement below about 0.56 arcsec/step. In addition, planetary gearboxes have a horrid frequency response. They produce loads of high frequency noise that cannot be guided out, and they have loads of backlash. Direct or belt drive are your best choice here. 400 step motors are cheap and give you a 2:1 advantage off the bat. Stepper motors perform better at a higher voltage like 24V, due to the ability to raise the current faster. I drive between 1.5 and 1.8A through my nema 23 motors during tracking. 

Peter


Peter Boreland
 

And Wally, the mount will slew so slowly that you will want to brew a cup of tea between each slew. Once you've  slewed at 8 degrees/sec, there is not going back. Like connecting to the internet using a 9600 baud modem and broadband. 

Peter


Wally
 

Ok, I get it. yeah I was hoping to get a very accurate mount.
BUT I was also hoping to track the ISS... so I might need to rethink a little.

Is there any advantage then in not using the micto-stepping? Or using a lower micro-stepping.

I now have my TMC2130 stepsticks. Can I use the differential micro steps for GOTO to speed up the mount?

#define AXIS1_DRIVER_MODEL        TMC2130 //    OFF, (See above.) Stepper driver model.                                      <-Often
#define AXIS1_DRIVER_MICROSTEPS        16 //    OFF, n. Microstep mode when tracking.                                        <-Often
#define AXIS1_DRIVER_MICROSTEPS_GOTO    4 //    OFF, n. Microstep mode used during gotos.                                     Option
#define AXIS1_DRIVER_IHOLD            OFF //    OFF, n, (mA.) Current during standstill. OFF uses IRUN/2.0                    Option
#define AXIS1_DRIVER_IRUN             OFF //    OFF, n, (mA.) Current during tracking, appropriate for stepper/driver/etc.    Option
#define AXIS1_DRIVER_IGOTO            OFF //    OFF, n, (mA.) Current during slews. OFF uses same as IRUN.                    Option
#define AXIS1_DRIVER_REVERSE          OFF //    OFF, ON Reverses movement direction, or reverse wiring instead to correct.   <-Often
#define AXIS1_DRIVER_STATUS           OFF //    OFF, TMC_SPI, HIGH, or LOW.  Polling for driver status info/fault detection.  Option

#define AXIS1_LIMIT_MIN              -180 //   -180, n. Where n= -90..-270 (degrees.) Minimum "Hour Angle" for Eq modes.      Adjust
                                          //         n. Where n=-180..-360 (degrees.) Minimum Azimuth for AltAzm mode.
#define AXIS1_LIMIT_MAX               180 //    180, n. Where n=  90.. 270 (degrees.) Maximum "Hour Angle" for Eq modes.      Adjust
                                          //         n. Where n= 180.. 360 (degrees.) Maximum Azimuth for AltAzm mode.


Wally
 

Thanks Howard.
Is there a reason why I cant set the microsteps to 8 instead of 16?

And can I set the GOTO micro steps now that I have TMC2130 stepsticks?

I feel like trying miscrosteps at 8 and microsteps GOTO at 1 or 2

Wally


Howard Dutton
 

On Sat, Dec 3, 2022 at 10:59 PM, Wally wrote:
Is there a reason why I cant set the microsteps to 8 instead of 16?

And can I set the GOTO micro steps now that I have TMC2130 stepsticks?

I feel like trying miscrosteps at 8 and microsteps GOTO at 1 or 2
TMC2130 SPI drivers support setting any microstep modes and using mode switching in the MaxESP3 design.


Wally
 

Howard, I have a MAXESP3 prototype with 2 DRV8825 stepstick on it. I now have 2 NEMA11 200 step steppers and 720:1 gear boxes.
How do I configure the config.h to get the fastest slewing possible?
Currently I get 1 deg/sec and no more. I tried Microsteps at 32 and 16.


Howard Dutton
 

On Wed, Dec 7, 2022 at 03:56 PM, Wally wrote:
How do I configure the config.h to get the fastest slewing possible?
Too little information.


Wally
 

Oh I figured it out. such a derp. it is RIGHT IN THE CONFIG.h file. 

#define SLEW_RATE_BASE_DESIRED        8.0 //    1.0, n. Desired slew rate in deg/sec. Adjustable at run-time from            <-Req'd

I am now happily spinning much faster.
Thanks.


George Cushing
 

Design of your mount? 
How are you getting 720:1? How many stages? 

IIRC A4988s are limited to 16 µsteps. A GR1 of 5 and a 144T worm wheel is 720:1.


Stepper-Steps MICROSTEPS GR1 (Other stages) GR2 (Final stage)
6400.00000 200 16 5 144

This setup might get you 4°/sec slew and 0.81 arcsec/sec tracking resolution.