Z-Axis Motor Not Moving and Unreliable

Ahh I understand. :wink:
Ok got it, that makes sense.

After the farmbot is done making that sound does it say that it’s in the 0,0,0 position?

or does it say that the movement was not complete?

I’m not using encoders when doing this action. It happily reports 0,0,0.

That’s good to know! and just to make sure, its the Z axis that’s making that noise, not the Y axis trying to push farther than the track allows?

It sounds like it’s not spazzing out but just not getting enough juice to keep going up.

1 Like

It’s not Y.

1 Like

Then it’s the Z stepper driver that needs some tuning with the screw.

The bot sends it’s 10000 something pulses for 400 mm up so the bot should theoretically go all the way up. Without encoders it doesn’t know of that worked or not, so it most assume it arrives at 0,0,0. If in the meantime the motor doesn’t get enough current to stay in position you get this situation.

1 Like

This page could benefit greatly from a follow-up step where you tune the potentiometers so that newbies like me don’t run into these problems. When I get back to work on my bot I’ll try to increase the voltage a bit for the motors and see if this still reproduces.

I wonder if you could reproduce this problem as well. My drivers are all measuring at 600 mV. If you follow the steps above, do you get the same?

1 Like

@Tim

Could you elaborate on the tuning screw stuff? I’d like to give that a shot but don’t really know what to do.

Then it’s the Z stepper driver that needs some tuning with the screw.

For testing, I just turn the screw once clockwise if the motor can’t move like it should, when the motor is not activated. Repeat until motor runs smooth enough. That’s not the correct way, so I’ll give you the official stuff below:

Motor specifications:

LDO-42STH47-1684BC (official motor).pdf (143.2 KB)

The exact procedure from the manufacturer:

1 Like

Would this help my X axis movement to not sound so loud and “grindy”?

maybe my X axis motors both need a little more juice.

Anyone attempting this really should measure the voltage on the tuning screw before activating their motors. As such, don’t tune it on a live Z axis (unless you turned off its “always on” function)

1 Like

I think tweaking your top speed might help a lot. Could be that you’re hitting a resonance frequency and if you slightly increase or decrease steps per second your motors won’t vibrate at parametric resonance

Ordinarily, when running, your ponytail would move up and down opposite your body motion, and side to side a little bit. But, if the frequency of your run is twice the swing frequency of your ponytail, the ponytail swings wildly from side to side. The two frequencies resonate, and the running motion magnifies the motion of the “unstable” ponytail. That’s parametric resonance.

You can really notice this when your motors are accelerating and decelerating. They will pass a few of these frequencies as they wind up. So make sure your top speed is not dead on one of these frequencies. They way your motor is mounted can alter its resonance frequencies. Re-tighten some screws or worst case, add some rubbers.

Hmmm very informative @mdingena

thanks for the cool read on parametric resonance! and actually, I did tweak the speed a bit. got it to be a lot less loud now!

I appreciate the resources! this has indeed helped.

-C

@Tim

I’ve turned the screw for the z axis and it doesn’t seem to be solving the problem. Unlike what @mdingena is seeing, my bot just suddenly stops and says it might be stuck. There is no clicking or anything. Just stops.

@Cjaramillogrows @mdingena are you able to get your bot to do much of anything consistently? Mine craps out after 1 or 2 moves rendering essentially useless. Trying to figure out if I’ve somehow assembled or installed something incorrectly or whether it’s just the current state of the software.

@detchi
indeed I have had some issues but in total, our farmbot has successfully executed about 13 out of 20 sequences of my “plant seed” sequence.

I’m going to throw a few quick questions at you so I can get an idea of where you’re at and what your bot might be doing.

Q1: So I see that your farmbot Z-0 position is all the way up, ok so if that’s the case then the farmbot should make + movements just fine. The use of negative coordinates wouldn’t even be needed here as you z-0 position is all the way to the top so your only move options are to go down.

Q2: are you entering specific move commands via the control tab or are these part of a sequence you’ve set up.
I did read above in one of your earlier posts:

Did you try and add some wait commands of about 1 second to see if that has helped fix the issue?

Does the movement issue happen with both manual move commands and sequence move commands?

It has been a good while since I’ve had movement issues like that. Last Monday I was experiencing some of those issues but seem to be fine now.

And just to make sure, your Z axis 0 position is all the way to the edge of the track? that includes your Y axis being all the way to the left or right of the track and its been already established that your Z axis 0 is 100% retracted or at the top most position?

We noticed that when the bot is moving, you can still send a new command. That new command is ignored by the firmware because it’s already executing a command and the command times out. The RPI goes into panic mode because the command timed out and assumed lost communication. Restarting communication restarts the bot with immediately stopping all motors and sets the position to 0, 0, 0.

There is a (partial) fix for that in the latest update and we’re working on a permafix. It also helps by adding enough pause time between commands and not pushing buttons while a sequence is running.

1 Like

This is really a matter of personal taste. You could power the motor such that moving down is negative only. It depends how you plugged it into RAMPS and the way you think about position. Reason could be: it’s going down so numbers should go down too.

For making the bot fool-proof, it shouldn’t require those waits. And since the frontend seems to know the bot is moving (the absolute axis input boxes update on the go) the web app should either ignore your additional clicks until it’s done, or put those in a queue.

Like I said:

@Cjaramillogrows

Yep, I do have the z-axis all the way up and X & Y zero points in the corner. So I’m using all positive coordinates.

You made a good point about the manual controls vs. sequences. I have noticed it is more reliable using manual commands although I did have 1 second waits between each command in my sequence. The bot usually worked with manual commands all though it did stop and reset once.

I’ve made modest improvements in reliability by doing the following:

  1. I increased all speeds from 400 to 800.
  2. I never move the z-axis when x and/or y movements are happening. Always move the Z axis by itself.
  3. I increased the waits between commands within a sequence from 1000 to 2000

While this seems to have provided some help, the bot still does randomly stop and then reset itself. I’m definitely not at a place where I can leave the bot unattended. After every stop interruption, I have to manually move the bot back to 0,0,0 which is an especial pain for the Z axis, having to manually screw it back to the top.

@Tim @roryaronson @Gabriel @RickCarlino Any other ideas?

I too have begun to add wait commands between all chained sequences. this has indeed helped me a lot also.

Also, I never noticed that but you are right. Whenever I have a complicated combo of x,y and z-movements the farmbot usually has a bit of a delay when executing the sequences and sometimes will just stop mid-command. saying the movement was incomplete and then sets itself to 0,0,0.

@detchi have you ever used the calibration command? I personally haven’t done it and wonder if maybe, by setting up the calibration the farmbot will have a better understanding of its space, movements and incomplete moves.

@Tim that’s super exciting to know that a perma-fix will be implemented!! :smiley: