Strange behaviour with absolute move in sequence

Hi,

We have the 'bot moving ok in all directions - X, Y and Z - using the manual controls. Using FBOS 3.1.6.

If I tell it to go 0, 900, 335, it goes to just above the watering tool. Then telling it to go to 0,0,0.

However, if we try to move to the same spot via a sequence containing an absolute move, then it goes to a seemingly random location - X -322, Y 620, Z 465

Also get similar issue if we setup a tool with XYZ of 0,900,335 - and add a sequence to move to it.

Any thoughts on what that is -
Cheers,
Chris

1 Like

Could you post a screenshot of you sequence?
And a screenshot of the manual controlled coordinates? Sometimes it´s something silly, sometimes not :wink:

1 Like

The bot is off-line at the moment (still need to hook it up to our network). So can’t get a screenshot fo the manual control page - will get it later.

I meant to say the manual movement controls (entering specific X,Y,Z) seems to work consistently, but not via an move absolute sequence.

The last sequence I tried was this (just one step):

Last I heard, moving multiple axes at once may cause issues (possibly related to Arduino power juggling).

Can you try breaking up your moves into single-axis movements? This will make your bot take a bit more time to get to places, but may increase its accuracy. If you insist on moving multiple axes, try moving X and Y together, and in a separate step move Z.

You can also try increasing the output power of the stepper drivers. Use a multimeter if you do.

1 Like

Interesting - tried single axis movements, but it only moves in the Y direction, eg set XYZ to 0,100,0 - moves to Y location.
Subsequent sequences do not make the FB move :frowning:
And XYZ of 100,0,0 or 0,0,100 also move to the Y location - no XZ movement.
If I go back to the control page, it shows the Y movement only - even when X or Z was requested.
So, the coordinates for where it is positioned are correct still.

Here is an example control/manual move that worked ok

Here is an example move that specifed X movement, but resulted in Y movement - but the coordinates adjusted the Y value

And here is my device config



If you use the absolute move action, you must provide all 3 axes with coordinates. To only move one axis at a time, you must keep the coordinates of the other axes the same as they are.

For example, if you are currently at 200,200,200 and you only want to move X axis with absolute move action, you must give a move command like 345,200,200. If you use 345,0,0 then you will move the other axes as well.

You might want to consider the relative move action to be on the safe side if you only want to move one axis per sequence step.

1 Like

Thanks - I was starting from 0,0,0 - so it was a single axis move :slight_smile:

Will give the relative move option a go - perhaps that works. :frowning:

Tried a relative move:

But no matter which axis I move (X,Y or Z), it only moves in the Z direction - which is shown on the control page

Although not the full amount - asked to move 100, shows as 80.

Also tried an absolute move again and that is now locked into the Z direction only. Strange.
When I get time might look at listening the MQTT topics to see what is getting sent - but presume its sending what I ask for …

Are you logged into the web frontend only with one device at a time, e.g. no mobile outside and PC logged in at the same time? Do you press always save, then sync and then save&sync afterwards to test the sequence?
@mdingena these questions should go in your movement debugging FAQ…!

1 Like

I don’t “think” so - as do some config at my desk and “play” on my phone when with the FB. When I get back to my desk, I need to log back in.

Usually been testing with the one button “save & run”. Must try the save/sync/save & run combo :slight_smile:

Having multiple browsers connected to https://my.farmbot.io doesn’t matter. All browsers that support websockets should display the correct state of the bot. If one browser updates or moves the bot, these changes are immediately reflected on all clients. This is not a step to debug.

I agree a word on synchronization could be added to the FAQ article.

My sequences are working. Doing the save/sync/save&run helps

Looks like it even moves ok on multiple axis too

Thanks everyone!

1 Like

I strongly disagree because I feared that problem and it was affirmed:

This is one more nice example why you really need to program in order to not let the user use the system in a way which
it wasn´t programmed for… -.-

Any update with the new version? Same thing and nobody who is new knows?

My motor has been repeatedly shaking around, this is why.thank you

After such a long time exploration, my farm robot have moved, thank you for your advice.But it is slow, I try to set parameters on the web, but it always can’t change, because the cause of the encoder??