TCWORLD / AstroEQ

DIY Electronics System for connecting a non-Goto telescope to EQMOD
https://www.astroeq.co.uk
Other
52 stars 40 forks source link

Microstepping using spiral search #16

Closed N-DD closed 7 years ago

N-DD commented 10 years ago

Hi!

I installed AstroEQ on an Arduino Mega2560 and I am using it to control two steppers with 200 steps/rev, 16x micro stepping, 1:10 reduction, 1:144 worm reduction. Due to Pin18 being dead on my board I changed PinMappings.h (and wired the DEC stepper driver accordingly) as following:

#define modePins0_0_Define 15
#define modePins1_0_Define 16
#define modePins2_0_Define 17
#define modePins0_1_Define 21//20
#define modePins1_1_Define 20//19
#define modePins2_1_Define 19//18

I then uploaded the modified Arduino sketch and using the config utility I set a maximum slew speed of 144x sidereal rate: according to what I have read, the system should always use 16x micro stepping (speed is always <200x sidereal). However, I noticed that when using the "spiral search" feature of EQMOD, the motors seem to run at 2x micro stepping, and also after a slew there is a small "correction" done at 2x. Is this a normal behavior?

Thanks,

Nico

TCWORLD commented 10 years ago

The spiral slew is done using Go-To movements. EQMOD has no way of knowing what speed the mount will move for go-to's, so I believe it assumes that it should do it using the high speed slew for which AstroEQ uses a higher torque stepping mode.

Again, the corrections are done in high speed mode as that is what EQMOD asks for.

I will ask Chris to see how EQMOD decides which type of movement to use. The thing is, I don't want AstroEQ to be ignoring what EQMOD is telling it and doing its own thing, otherwise I would add in a check to make AstroEQ use low speed go-to's if the speed is slow enough.

N-DD commented 10 years ago

Hi,

thanks a lot. In my case, switching to a different speed results often in loosing the PEC synchronization (my motors cannot keep up, maybe I have to feed them more current). However, if the EQMOD team asked for hi-speed, there should be a reason, even though at the moment is not clear to me...

TCWORLD commented 10 years ago

If you go to line 474 of AstroEQ.cpp, you will find the following:

/*if (packetIn[0] == '0'){
    packetIn[0] = '2'; //don't allow a high torque goto. But do allow a high torque slew.
}*/

Try uncommenting that and see if it works better for you.

If it works I'll look at making it a variable set by the configuration utility if the go-to speed is <200x

N-DD commented 10 years ago

Thanks!

I will try it tonight (weather allowing...) and let you know.

Nico

N-DD commented 10 years ago

Hi,

surprisingly yesterday the weather was enough clear for testing! Uncommenting those lines forced both the spiral search and the correction to a lower speed: now I don't get anymore micro stepping switching. In my case, this preserves the PEC sync, so it's a big improvement. However, the speed during spiral searches and corrections is now lower than the maximum speed I have selected (144x sidereal). It is a minor point, but maybe it also could be addressed (maybe user-selectable correction speed?)

Thanks,

Nico

TCWORLD commented 7 years ago

Once the V7.5 firmware is released (currently in beta on the AstroEQ forum), the option to disable high torque go-to movements is now merged and selectable from the config utility.

It is not possible to set a different go-to speed for the corrections because as far as the AstroEQ is concerned there is no way to tell them apart from normal go-to movements. However due to the option to disable high torque now being present in the config utility, the go-to speed is now calculated to account for high torque being disabled, so you may be able to go faster.

Once the beta testing is done and the v7.5-dev branch merged, I hope to close this issue. If you continue to have problems you can reopen it.