PDA

View Full Version : Nema34 - DM860A Driver & Mach3



Channel
06-09-2018, 10:14 AM
Hello to all,:thumsup:

Last year I bought a cnc project with a wooden frame.
(I do not know if I can paste the site link here).

At the moment I have assembled the whole structure with the engines too, but I have some difficulty in configuring them.

The engines are:

- 2 Nema 34 1232oz.in 5.6A 4 leads (X axis & Y axis)
- 1 Nema 23 425oz.in 3.0A (Z axis)

The drivers are DM860A, one per engine.

- 3 Power supplies 350Watts (60VDC / 5.83A)

- 1 Breakout Board DB25-1205

Mach3 management program.

First Question:

On these engines it is not specified if the power supply is Peak or RMS, so at the moment the dip switches for the Nema 34 are set to OFF OFF OFF >> 7.8A Peak / 5.6A RMS is right? Or do I have to set them ON ON OFF >> 5.7A Peak /4.0A RMS?

Second question:

From my information the engines have the following technical specifications:
- 200 steps
- 256 microsteps

So if I do 200 * 256 = 51200 it should be the maximum resolution that these engines support and it is also a value that I can set by dip switches on the drivers.

In this configuration, however, the machine is moving very slowly even if objectively with this setting I have not changed speed and acceleration

Based on your experience, what values ​​should I set on the dip switches?

Besides I can not find the right parameters for the motor tuning section of Mach3, is there a way to calculate it (including speed and acceleration) or do I have to use the "auto-calibration" tool once the dip switches have been set?


If you need more information (for example pulleys - motor ratio), tell me.

For a better understanding I am attaching some photos of the work (now it is completely assembled and wired but I have no more recent photos)


24771 24772 24773 24774

I thank all those who can help me in advance.

Channel
09-09-2018, 11:05 AM
Today I tried to set the drivers to 1600 as someone suggested in this other post >>> LINK (http://www.mycncuk.com/threads/11987-Help-please-Dip-switches-and-mach-3-settings/page1)


While in the motor tuning section I put the values 320 steps 1500 speed and 40 acceleration.

Then I used the auto-calibration tool of Mach3 and it slightly changed value, like 326.5 ....

The axes with this configuration move quite well, maybe it's a little too fast.

What is still not good is the accuracy of the movement, in fact it is wrong about:
- 0.5 cm if I do G0 X20 F400
- 1 cm if I do G0 X40 F400
- 2 cm if I do G0 X80 F400

The positive thing is that when I do G0 X0 F400 from one of the commands above it is not wrong and returns correctly to the point of origin.

What could be the problem? The settings in the driver? Should I redo the mach3 motor-tuning?


For the Nema 23 engine, at the moment I used the same settings (different current values of course) but I have not yet checked if it is wrong during the movements.

Clive S
09-09-2018, 11:44 AM
Today I tried to set the drivers to 1600 as someone suggested in this other post >>> LINK (http://www.mycncuk.com/threads/11987-Help-please-Dip-switches-and-mach-3-settings/page1)


While in the motor tuning section I put the values 320 steps 1500 speed and 40 acceleration.

Then I used the auto-calibration tool of Mach3 and it slightly changed value, like 326.5 ....

The axes with this configuration move quite well, maybe it's a little too fast.

What is still not good is the accuracy of the movement, in fact it is wrong about:
- 0.5 cm if I do G0 X20 F400
- 1 cm if I do G0 X40 F400
- 2 cm if I do G0 X80 F400

The positive thing is that when I do G0 X0 F400 from one of the commands above it is not wrong and returns correctly to the point of origin.

What could be the problem? The settings in the driver? Should I redo the mach3 motor-tuning?


For the Nema 23 engine, at the moment I used the same settings (different current values of course) but I have not yet checked if it is wrong during the movements.

First it is good you get consistent results.

How are you using the auto calibration? When testing use G1 not G0 (Go are rapid moves)

The greater the distance you measure over is better so try G1 X500 F400 and measure the distance moved then put that in the auto box and test again. Don't mix units up ie 0.5cm and 5mm generally we use mm or inches.

Another way is to work out the % difference in the distance moved and then use that % to change the step per.

Channel
09-09-2018, 05:31 PM
Hi Clive,

Thanks for the tip on not mixing the units. :cool:

unfortunately this afternoon I did not have time to try to execute the command you suggested to me.

As a self-calibration I used that of the Mach3 software, in practice I have to enter a distance X for a given axis, the machine performs the movement and then I have to enter what has actually moved.
After that, the machine modifies the steps in the motor tuning section.


But, while I'm answering you, I'm in doubt ... the movement you suggested to me >> G1 X500 F400 in practice moves the x axis of 500 MM with a speed of 400 right?


Because in reality if I do, for example G0 X20 F400, the X axis moves 20 CM ...

So I might have set ten times bigger values ..

What do you think about it??

cropwell
10-09-2018, 12:31 AM
I do not know your leadscrew pitches, but let us assume 10mm pitch and direct drive (no pulley ratio to consider).

One turn of the stepper motor (200 steps) will take you forward 10mm so your resolution (distance per step) is 10/200 i.e .05mm (which is OK for woodwork).

If you use microstepping, you will gain resolution - for example 16 microsteps will give you a resolution of .05/16 or .003125, which is over the top for woodworking and especially difficult to achieve that accuracy with a wood framed machine.

All that microstepping will do for you is make the motors sound smoother. I would suggest a value of 8 is practical, 16 at the most. Any higher and you will lose speed.

There is a common misconception that you gain accuracy with higher microstep values, but if you look at the way microstepping is done, you will see that for the majority of us amateurs, it has little practical advantage.

Have a look at this article https://hackaday.com/2016/08/29/how-accurate-is-microstepping-really/ It is a simplification, but an easy read.

Channel
10-09-2018, 02:48 PM
I took a quick look at the link you suggested, I read it better tonight.

What I knew is that if I increase the resolution too much then I will have problems with the engine torque. In fact, I imagined that 51200 steps / revs could not be used as a value.

My transmission of the X axis is made with:

- M12 screw
- a pulley 20 teeth 5 pitch on the motor axis (I have to check if it is 20 or 15 teeth)
- a 60-tooth pitch 5 tooth pulley on the M12 screw
- two 40-tooth pitch 5 pulleys connected to the ends of the screw
- two 40-tooth pulleys step 5 for "neutral"

I attach photos:
24799

For the Y axis it's all the same except that the screw is an M10.

I attach photos:
24800

For the Z axis I have:

- a pulley 15 teeth step 5 on the drive axle
- a pulley 20 teeth 5 pitch on M10 screw

I attach photos:
24801


The information I miss is:

- How much should you set the driver for? (from what you say 8 could be an optimal value)

- Once the driver has been set how to calculate the "step for" parameter in the motor tuning section of mach3. (My idea is to do the theoretical calculation, and then use the "auto-calibration" tool of mach3 to adjust the value.

For speed / acceleration I thought I would try some values ​​until I found the optimal ones. (unless there is a formula to calculate these two values)

How can I get these values?

Thanks again for the advice and patience XD :thumsup:

cropwell
10-09-2018, 05:36 PM
OK, so X and Y are belt drive and are a different problem.

On your Z axis you say M10 screw. Do you mean a piece of threaded rod with the normal coarse pitch of 1.5mm?

If this is so then on your Z axis 200 steps -> 15 (driving pulley)/20 (driven pulley)x 1.5 mm of movement = 1.125mm, so steps per mm is 200 / 1.125 = 225 (note this is steps per millimetre). If you then use microstepping, you will have to multiply that by the factor you set in the driver DIP switches. (other forum members - could you check this as I am tired today, I have done some work and I am not used to it :unconscious:)

I will get to the X and Y later.

A lot of information is here http://www.machsupport.com/wp-content/uploads/2013/02/Mach3Mill_Install_Config.pdf

Channel
11-09-2018, 12:54 PM
Hello,

yes, it is exactly a piece of M10 threaded bar.

So for the Z axis I was able to calculate it like this:

driving-pulley / driven pulley x 1.5mm (threaded bar) the result is divided by 200 (physical steps)
and in this case it would be just like you wrote:

15/20 * 1.5 = 1,125mm 1,125 * 200) 225.

Assuming to set the driver through the dipswitches to 1/4 (400) I have to make 225 * 4 = 900.
Or if set to 1/8 (800) 225 * 8 = 1800

This value is what I have to set in the motor tuning section of mach3 for the right Z axis?

Is this calculation valid even if the pulley on the threaded rod has not been tapped but is held in place by nut-locknut?
I attached a photo for a better clarity:

24809

cropwell
11-09-2018, 05:35 PM
Is this calculation valid even if the pulley on the threaded rod has not been tapped but is held in place by nut-locknut?
24809

Only if the pulley does not slip, and that arrangement looks as if it will do so at some time.

You are only using threaded rod on X and Y as axles, so the pitch is irrelevant.

I have yet to get my head round the X and Y axis arrangements, but it looks like the belt attached to the axis will move 200mm per turn of the axle, but you are geared down 3: or 4:1 depending on the number of teeth on your drive pulley. So if you are using 15T drive then your resolution is 4 steps per mm or if 20T 3 steps/mm. So I can see why you are hoping to get some positional accuracy using microstepping to increase your resolution.

I have doubts that this current design will be very accurate. You should also look at some way of fixing your pulleys to the axles other than locking nuts, are there no grubscrew holes on the pulleys ?

Channel
11-09-2018, 06:42 PM
Hello,

First of all, thanks for the answers I understood more in these two days than in a month of homemade research.:tears_of_joy::tears_of_joy:

Let's start with order:

I counted the teeth on the motor pulley (X & Y axis) and is 15 teeth

On the engine pulleys there are two grubscrews and two "footprints" on the shaft, so as to make everything more stable.

As for the pulleys on the threaded bars the nuts and lock nuts that hold everything are stopped with the threadlocker (like the loctite) and also here they should not go anywhere.

As for precision as a first mention the project was bought so I'm pretty sure it should go (unless of my assembly errors)

There is also a video that shows how it works on youtube, and as I said its author is mentioned a couple of times in this forum or Mirko slepko ...

Tomorrow I will try to set the values for the Z axis in order to verify the behavior ...

Channel
12-09-2018, 10:10 PM
Hi all!

today I counted the teeth of the pulleys of the Z axis and both result from 20 teeth.

So I applied the formula suggested by cropwell using the value of drivers 8.

(20/20) * 1.5 = 1.5 >> 200 / 1.5 = 133.333 >>> 133.33X 8 = 1066.66

So I set this value in the Z axis.

By moving the axis, however, I noticed that it still moved in an inaccurate way.

So I used the "Auto-tuning" tool from mach3 which calibrated the steps to 533.33 (exactly half)

I have tested some movements such as

- G1 Z10 F400
- G1 Z0 F400
- G1 Z-30 F400
- G0 Z0 F400

And all the movements were performed correctly. (and to be honest, I' am REALLY HAPPY)

The only thing I would like to know because I have this difference between the steps that the machine has calculated and those instead obtained by formula.

I'm pretty sure the driver is at 8 and not at 4 (setting that would justify 533.33 as a step value) but tomorrow I will recheck. XD

As for the X & Y axes, maybe this is the formula?

(engine step * (driven pulley / driving pulley) * driver value) / 50mm

The 50mm value I obtained by making a complete turn to the 60-tooth pulley and measuring the displacement of the trolley.

So the calculation would remain ...
(200 (60/15) x8) / 50 >> (200x4x8) / 50 >>> 6400/50 = 128.

Is this value the one I have to set in the motor tuning section for the X & Y axes?

Thanks all again for your precious help

Channel
13-09-2018, 06:34 PM
OK, so X and Y are belt drive and are a different problem.

On your Z axis you say M10 screw. Do you mean a piece of threaded rod with the normal coarse pitch of 1.5mm?

If this is so then on your Z axis 200 steps -> 15 (driving pulley)/20 (driven pulley)x 1.5 mm of movement = 1.125mm, so steps per mm is 200 / 1.125 = 225 (note this is steps per millimetre). If you then use microstepping, you will have to multiply that by the factor you set in the driver DIP switches. (other forum members - could you check this as I am tired today, I have done some work and I am not used to it :unconscious:)




I think you make an error... because the result of 200/1.125 is not 255 but 177,77 ... BUT 200 X 1.125 is 225... so is the calculation or the result wrong?

Anyway I confirm the accuracy of the movements of the Z axis with the values set at 533.33 as described in the previous post ...

cropwell
13-09-2018, 07:54 PM
I think you make an error... because the result of 200/1.125 is not 255 but 177,77 ... BUT 200 X 1.125 is 225... so is the calculation or the result wrong?

Anyway I confirm the accuracy of the movements of the Z axis with the values set at 533.33 as described in the previous post ...

It is 200/1.125 but I did say I was tired.