Stackshot New Motor Connector Specification

Have questions about the equipment used for macro- or micro- photography? Post those questions in this forum.

Moderators: rjlittlefield, ChrisR, Chris S., Pau

Chris S.
Site Admin
Posts: 4042
Joined: Sun Apr 05, 2009 9:55 pm
Location: Ohio, USA

Post by Chris S. »

concon wrote:After adjusting the settings within the advanced configuration I was expecting to see the step size change when getting a stack ready; I had expected the 1um minimum step size to adjust to a new step size determined by the controller with the given input parameters. I'm reading the instructions to my best of my ability (haven't found a place they reference using a different rail, and have reached out to their support. I imagine that the 1um is a hard limit within their controller, based on my experience so far. I continue to see Zerene being being mentioned- is this a necessity to accurately see the new step size?

Thanks again- almost there!
Concon, you can definitely do what you want. It's been some time since I set up my system (StackShot controller driving a microscope focus block), so forgive me if the following suffers from fuzzy memory.

Originally, the minimum step size that could be set via the StackShot controller was much larger than I needed. I believe Cognisys has addressed this in subsequent firmware versions. However, there is perhaps still a minimum number of microns that can be set on the controller, and this may be too large for your needs. If so, there are at least two ways of getting around it.

Method one: Fool the controller into overcounting the travel distance. Look at section 3.13.1 in the StackShot manual: Distance per Revolution. This section tells you how to inform the controller how far your rig moves per turn of the motor. If the controller has a one-micron minimum, and you prefer a 1/10 micron minimum, simply set the per-turn distance to 10 times the actual distance your rig travels. Then when using the controller, just remember that "one micron" set on the controller really translates to 1/10 micron of actual travel.

Method two: Set the controller so that in daily use, you enter the number of motor steps of travel you desire, instead of entering a desired distance of linear travel. This is my preferred method. See section 3.3.10 in the manual: Units of Measure. Select "Steps." Ignore the specific details that follow, as they apply to the StackShot rail, not your hardware. Then calculate the number of steps you want to use with each lens, and make yourself a handy chart. Be aware that when Cognisys writes "steps," they really mean "microsteps." In this case, a microstep is 1/16 of an actual motor step.

So the math works out like this (I'll use the example of my focus block):
  • Focus block moves 100 microns per turn of shaft
    Motor has 400 steps per turn

    So travel per "step" = 100 microns/(400*16) = 0.015625 microns.
One can enter as little as a single "step" (really microstep) into the controller. Of course, few hardware implementations will deliver such resolution. And in practice, I tend to enter numbers that are multiples of 16, to reduce any effect of "hiccups" between full steps. (One can use "high precision mode" on the StackShot controller to reduce these non-linearities, but on my non-Cognisys stepping motor, this mode produces too much heat and noise.)

As examples, here are settings I use with my hardware and the following lenses:
  • Mitutoyo 5x/0.14: 1184 "steps" (18.5 microns)
    Mitutoyo 10x/0.28: 304 "steps" (4.75 microns)
    Mitutoyo 20x/0.42: 112 "steps" (1.75 microns)
    Mitutoyo 50x/0.55: 48 or 64 "steps" (0.75 or 1 micron)
    Mitutoyo 100x/0.70: 32 "steps" (0.5 micron)
As may be noted from the above, only with the 100x/0.70, and arguably with the 50x/0.55, do I really "need" sub-micron stepping. With the other lenses, rounding up to the nearest micron wouldn't have a noticeable effect.

--Chris S.

concon
Posts: 87
Joined: Thu Jun 01, 2017 6:21 am

Post by concon »

What an awesome reply- I really appreciate your time with that.

I understand both methods that you've explained and will give them a go with my next stack; I am very interested in trying method 2. I was hoping to have a hard readout of .xx ums from the controller, but I love the idea of approaching this in a different manner- utilizing a different unit altogether. I will use your settings as a place to start and adjust for my application and for my gear.

I've noticed the noise from the high-precision setting, but not the heat, as I haven't been looking; thank you for that bit of wisdom, I will keep an eye on it.

Chris S.
Site Admin
Posts: 4042
Joined: Sun Apr 05, 2009 9:55 pm
Location: Ohio, USA

Post by Chris S. »

concon wrote:I've noticed the noise from the high-precision setting, but not the heat, as I haven't been looking; thank you for that bit of wisdom, I will keep an eye on it.
To be fair to Cognisys, my stepping motor is not one of the models they sell. It's one I found myself, though they were kind enough to help me integrate it. My stepping motor gets too hot to touch if the controller is set to precision mode (not good for me, and probably not good for the motor). But with a stock Cognisys motor, I doubt it will get more than moderately warm in precision mode. My motor does work perfectly well in normal mode.

If memory serves, in "precision mode," the StackShot controller applies higher torque (read "current") during the holding phase of motor operation. With my particular hardware, I don't need additional holding torque--nor want the added noise or potential vibration this might impart.

--Chris S.

concon
Posts: 87
Joined: Thu Jun 01, 2017 6:21 am

Post by concon »

Mine too is a non stock motor so this is good advice to look out for. I'm using the 400 steps post revolution motor that was included with the MJKZZ kit :)

mawyatt
Posts: 2497
Joined: Thu Aug 22, 2013 6:54 pm
Location: Clearwater, Florida

Post by mawyatt »

The Stackshot controller is somewhat noisy with my MKJZZ & Wemacro 400 steps NEMA 17 motors. They get warm, but not hot to the touch.

Post Reply Previous topicNext topic