Menu

Motor skipping periodically during focusing

2021-09-23
2021-09-27
  • Eric Schubert

    Eric Schubert - 2021-09-23

    I've been finally testing out my new focuser build and seem to be running into some issues with consistency of movement. It's not typically an issue moving outward, as gravity helps the focuser. But moving inward during focusing it will sometimes skip steps, throwing off my V-curve and causing poor focusing.

    My current build:
    * Arduino Nano
    * TMC2209 driver
    * NEMA 14 with 0.9deg/step motor
    * Motor current: 400mA (per manufacturer specs)
    * TBL = 2
    * TOFF = 4
    * Vsense = 1
    * iRun = 7

    I'm not sure what my issue would be, since current tends to be the limiting factor for torque. The motor seems to be fine most of the time, so I don't know why it would skip sometimes and not other times. Focuser movement is smooth when manually moving the draw tube.

    Any additional suggestions to troubleshoot why this thing skips from time to time?

     
  • brownrb

    brownrb - 2021-09-23

    Hi Eric

    I assume that you are using the BigTree Tech TMC2209 with stall guard enabled.

    Inward movements are usually the direction where missed steps occur.

    On a test bed I would have the scope vertical, and then have the focuser move out (pushing the drawing tube upwards against gravity) - coupled with a micrometer gauge to measure repeatability of movements, and then to add a few weights that represent the imaging train (filter wheel, camera etc). Add like a 100gms at a time to find out when it starts missing steps - if the weight comes out to be around the same as your imaging train (or close enough to it) then you know you are in trouble with torque.

    The TMC chip actually interpolates the steps at 1:256 so there is a big reduction in torque. So even if the step mode is set to full or half - the TMC is driving it at 256.

    Aside from things like stiction (at a particular point there is more friction - so if the slippage always occurs around the same position then its likely due to stiction)

    The ultimate solution is to go to the closed loop encoder solution where missed steps become a thing of the past)

    BUT
    I would first try upping the current a bit
    In the file myBoardDefs.h
    line 12

    define TMC2209CURRENT 1000 // 600mA for 8HS15-0604S NEMA8 stepper motor

    what is yours set to?

    And I assume you have followed the setup procedures defined in the PDF - using the spreadsheets to calculate the values you need for configuration? and entered those values from the spreadsheet into the myBoardDefs.h file?

    https://sourceforge.net/projects/arduinoascomfocuserpro2diy/files/Documentation/myFP2-TRINAMIC-09-2.pdf/download

    Regards
    Robert

     

    Last edit: brownrb 2021-09-23
  • Eric Schubert

    Eric Schubert - 2021-09-23

    Interesting... so, in effect, the TMC2209 is still microstepping, even when set to full steps?

    I can definitely push the current up a little higher. I don't want to go too far, as the rated current for the motor is 400mA, which is what it's currently set to. (#define TMC2209CURRENT 400)

    Also, yes, I followed the setup procedures in the PDF provided. I will state that not all steps were 100% clear, as a couple items specified putting values somewhere, but those locations were not clearly defined. I managed as best I could.

     
  • brownrb

    brownrb - 2021-09-24

    the TMC2209 is still microstepping, even when set to full steps?
    Yes
    It is better to run at 1/4 steps, that was the recommendation from the developer group

    The code that is sent to the tmc at startup specifies to use interpolation (from memory)
    They also recommended beefing up the current. It will not hurt the stepper, as it is only for a short time when it is moving.

    And yes, the somewhat cryptic documentation went through a lot of changes, as the code was developing, so the doc did not keep up with the final code - and some of the values mentioned in the pdf ended up not being used. it is the most we have right now, and I do not have the resources to go back into that again *well not right at this moment in time)

    Regards
    Robert

     
  • Eric Schubert

    Eric Schubert - 2021-09-27

    Thanks, Robert. I'll try bumping up the current limit a bit. I know the TMC2209 can handle the current. I'm more concerned about the motor. However, I did slap an aluminum heatsink on the end of it to help dissipate some of the heat, so hopefully it'll protect the motor.

    I also recall reading that overheating the driver can cause skipping steps. But at only 400mA, I doubt that's the main issue as the max current for these drivers is significantly-higher than this value.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.