Polar sand table - Arduino

I was told to buy a 1" cube N52 I got on Amazon for about $10. And the tip I was given was to make sure to mount it NORTH/SOUTH vertically. If you use the wrong side it will attract the ball to the edges of the magnet not the center.

1 Like

Can you home then in a different order?

Yes all order. X then Y or Y then X or Y then both X&Y…

Als erstes den äuseren Arm nach hause bringen, dann erst den inneren.
Aber ich denke du könntest ein Problem mit dem 3mm haben die sich der Arm sich nach dem ersten Endanschlag öffnet. Ich musste den Haltestrom auf dem Motor erhöhen.
Bei mir ist das Problem erst nach der Montage des Magneten aufgetauch.
Das stört mich auch schon lange habe aber noch nicht versucht das zu beheben.

Würde ihn gerne auf 0,5-1mm runterbringen.
Mein Homing dauert momentan in dieser Konfiguration ca 4 - 5 min der Haltestrom war auf 30sek eingestellt. inzwischen hab ich ihn auf 340 sec. in der Konfiguration _adv_h habe ich dann die Zeit von 30 sek. auf 340
M84 auf 340

servus Klaus

1 Like

Hallo
ich glaube ich hab es wieder einmal übertrieben,
den ich hab einen 28 x10 Neodym.
Um die Reibung zu verringern habe ich ihn in Teflon-Rohr eingelassen.

servus Klaus

1 Like

Allo Klaus
No I don’t have any issue with magnet and homing take me 10 seconds max. I use optical sensor. But I have problem when the radius of the table is less that the sum of lengths of the two arms like for example in a rectangular table.

I have try all following configuration

X&Y same time homing: problem because when the first hit the homing the second keep continues and can hit the border
X then Y: same problem
Y then X: same problèm.

the solution would be to first homing the upper arm then homing the lower arm with the lower arm running too with home sensor disable…

It’s quite hard to explain but one of you have maybe a solution?

I’m not sure if there really is a solution for this problem but I would recommend to just redesign the arms to the correct length and then buy new belts for the new length. This is not the easiest idea but that’s the only thing that comes to my mind.

Yes but for me the big advantage of scara is you can do all table design you want…cercle, square, rectangle,…

In my case I want to do a round and a rectangle one. in the rectangle one arms length is egal to the radius from center to one edge. so I cannot change the length arms…

If the magnet is in the corner:

  • If you home the shoulder joint, you will hit the edge.
  • If you home the elbow joint, you will also hit the edge.

If you homed the shoulder joint clockwise and the elbow counter clockwise, at the same speed, the arm should get smaller, until the shoulder hits its endstop, but then the elbow will keep moving in an arc, but it will be moving in. I don’t think it could hit the edge though.

Option 1: You can make the elbow endstop when it is all the way in the center, and the shoulder endstoo when it is pointing at one of the sides (the shortest distance from the center). Then have them home at the same time at the same speed. I think that would work. It might be worth drawing it out in a few cases or even doing a little simulation.

Option 2: Make the space underneath the sides of the circles clear, so it won’t hurt if it goes under there.

Option 3: Send. G1 command to make the arm a little shorter before homing. This might hit the endstop. You could turn on the endstops so they will stop the motion before clobbering the endstop.

Option 4: Dig into the firmware and write the scara motion system into the firmware. Then you can add limits like the rectangle and try to get it to home right.

If the magnet is in the corner:

  • If you home the shoulder joint, you will hit the edge.
  • If you home the elbow joint, you will also hit the edge.

Yes totally right

If you homed the shoulder joint clockwise and the elbow counter clockwise, at the same speed, the arm should get smaller, until the shoulder hits its endstop, but then the elbow will keep moving in an arc, but it will be moving in. I don’t think it could hit the edge though.

No it’s doesn’t work because if upper arm it first the homing, the while the down arm keep moving the upper arm ht the border

Option 1: You can make the elbow endstop when it is all the way in the center, and the shoulder endstoo when it is pointing at one of the sides (the shortest distance from the center). Then have them home at the same time at the same speed. I think that would work. It might be worth drawing it out in a few cases or even doing a little simulation.

OK but how do you know the position of upper or lower arm before making the homing!?

Option 2: Make the space underneath the sides of the circles clear, so it won’t hurt if it goes under there.

Yes but for a rectangle table with L =2l for exemple it need a lot of space!

Option 3: Send. G1 command to make the arm a little shorter before homing. This might hit the endstop. You could turn on the endstops so they will stop the motion before clobbering the endstop.

Again, it’s ok if shoulder hit the endstop before elbow. Else depending of the position, the elbow will hit the border

Option 4: Dig into the firmware and write the scara motion system into the firmware. Then you can add limits like the rectangle and try to get it to home right.

Yes that could the best but hard to do (for me)

What do you thing about my option 5:?

The 2 arms run always in the same direction (counter clockwise) right? so if I first home the shoulder clockwise and I add a mechanical stop on the shoulder so the elbow will hit the mechanical stop when it is in the same axis of shoulder. Then the shoulder will take with the elbow with him until the endstop. and thats all!
In case of the should hit the endstop before the elbow hit the mechanical stop, I can make a homing counter clockwise of the elbow!

I thing this can work well but I have a small issue. when the X (shoulder) is homing, the y motor (elbow) is in feed hold status and the elbow stop the moving of the shoulder.

Someone know how can we disable the feed home during homing in GRBL? How it work in merlin?

thank you!

I’m sorry. I can’t understand what you’re saying with that description. Are you saying you just want to home the elbow while the shoulder is disabled?

Can’t the machine always move towards the center? If not, then I think you will need a lot of work before you can use Marlin anyway.

Yes you are right. Will soon make a drawing for better understanding.

So I have made some picture and a video for better understanding

Let start with a square table. It’s same issue that rectangulare but easier to test!
We assume the following position to be the homing position:
image
And with assume this is the position of both arms before doing the homing. Let see the 3 surface where both arm can move. Cercle for the lower arm and 0 to Pi for the upper arm. Red arrow is the running direction. Blue arrow is the homing direction:

And now we do the homing in video:

This must work in all case but my problem now is I don’t know how to disable motor hold of the upper arm during homing of the moteur of the lower arm any help

I’m not sure about that. You usually don’t want to disable the motors after homing, because you want them to stay homed.

I guess once the elbow is homed, if it just stops, the arm will leave the homing position?

Mit dem Code:
M84 0
M500
wird der Haltestrom von den Motoren genommen.
oder in der Konfiguration _adv_h nach M84 suchen und dort dem Wert auf 0 (Sekunden) stellen.

hoffe konnte dir helfen.
servus Klaus

Hi. Not sure if you have good understand. I don’t want to disable the steppers after the homing. Just want disable the y axis motor during the x homing and after the homing enable again both motors

Ok. Danke. With M84 set to 0 second if I set G1 X6 could you tell me 8f during the X movement, the y axis stepper is disable? Or it is in hold mode?

Motoren sind nach jeder Bewegung Spannungsfrei mit
M84 0
Kein Haltestrom.

I don’t understand you answer. While x running, can y axis be disable or we need to wait until x axis stop?

Motor wird sofort nach der Bewegung abgeschaltet wenn er die angefahrene Position erreicht hat.
Welchen du auch immer erster drehst.

Servus Klaus