PDA

View Full Version : Formula for Unit Value calculation



blackhawk
05-09-2013, 11:15 PM
I am trying to understand the formulas for calculating the unit values on my PRT alpha. I have 7.2 gear motors on X, Y and the Z has no gear box. I found the following formula in the User's Guide.

Computing the Unit Value for an indexer would be done as follows, assuming you want to express the rotary motion in degrees. With an indexer having a 10:1 gearbox and with the alpha driver set at 500 steps/rev, we would have: (10 * 500) / 360 = 13.8889 [or, 13.8889 steps per degree].

My unit value for the Z is 1273.2395. The Z has no gearbox and the Vexta drive has the DIP switches set to 1000 steps/rev. So, my formula is (1 * 1000 steps)/360 deg = 2.77778 steps/deg. Now, you have to convert that to linear motion. My Z has a 20 tooth pinion which has a pitch diameter of 1.00". For a rack and pinion setup, you get (1.00" x pi = 3.1416") of linear travel per 360 degrees (Circumference formula). So, (2.77778 steps/deg)*(360deg/3.1416 inches) = 318.309 steps/inch. Now, I multiply this by 4, which is the resolution multiple in my VU fill in sheet. This works out to 4*318.309 = 1273.2395, bam! I got it!

My X and Y unit values are both set to 2482.8171. Now if I do the same for the X and Y with the 7.2 gearbox. The drives for X and Y are set to 1000 steps/rev. So, (7.2*1000 steps)/360 deg = 20 steps/deg. X and Y have 30 tooth pinions with a pitch diameter of 1.50". Converting to linear motion again, (1.50" x pi = 4.71239") of linear travel per 360 degrees. So, (20 steps/deg)*(360 deg/4.71239") = 1527.887 steps/inch. Now, I multiply by 5, which is the resolution multiple for X and Y. This works out to 7639.4356.

7639.4356 is way off from the correct setting of 2482.8171. Why doesn't the formula match up for X and Y?

Stay with me, If I replace the 1000 steps/rev with 325 steps/rev on X and Y, the formula works and it comes out to exactly 2482.8171. But, the Vexta drive is set to 1000 steps/rev per the DIP switches, not 325 steps/rev. I know that Oriental Motors does some type of special programming for Shopbot on their drives. The only thing that I can figure is that even though the DIP switches are set to 1000, it is really set to 325 internally.

Does anyone know if that is the case? Or where that 325 comes from.

Thanks, that was a long post I know.

gordon
05-10-2013, 09:26 AM
I'm going to start with the easier explanation. The Z motor you've acquired, 10:1 alpha, has a default step resolution of 10,000 steps/rev of the pinion with the switch set at 1000. If you're using a 20 tooth pinion the formula for your Z unit value is 10,000/pi = 3183.09886.

To explain this a little further the dip switch is setting the steps per motor rev before the gearbox. So, in your case when the switch is set at 1000 the pinion shaft will need 10 * 1000 = 10,000 steps to turn 1 rev. Note: If you set the dip switch to 500 the unit value will be exactly half of the above value.

In both cases above the multiplier is 4 for this axis.

Next, the X & Y drivers that were programmed for ShopBot have a motor resolution of 1625 steps/motor rev when the dip switch is set to 1000 position and 1300 when set to 500. So, the new formula for your X & Y unit values when set at 1000 is (1625*7.2)/(1.5*pi) = 2482.8171

When the dip switch is set to 1000 the multiplier is 5 and when set to 500 the multiplier is 4. It's important to make sure you're using the correct multiplier in [VU].

To answer your last question: the 325 is the 1625 value above divided by 5.

Hope this helps.

Gordon Bergfors
ShopBot Tools, Inc.

blackhawk
05-10-2013, 10:23 AM
Gordon - Thank you for the reply. I think that I have this straight, but could you please double check me?

1) For my new Z motor, I will be using a 10:1 with a 25 tooth pinion (1.25 pitch diameter). So, with my DIP switch set to 1000, my unit value would be (10*1000)/(1.25*pi)=2546.479 and I should set the resolution multiplier to 5. Is this correct?

2) Just for further understanding, my original Z did not have a gearbox, it used the ASM911AA motor with an ASD30E-A-B1 drive and 20 tooth pinion. The DIP switches here are set to 1000 also. Using your formula, I should get 1000/(1.00*pi)=318.3099. But, the unit value in the control software is 1273.2395. Are the ASD30E-A-B1 drives programmed differently to give 4000 step/rev when set to 1000 on the DIP switches? That would give me 4000/(1.00*pi) = 1273.2395, which matches up.

Thanks

gordon
05-10-2013, 05:46 PM
You're correct in both. The direct drive motor drivers were programmed to 4000 steps per rev to give better resolution to the axes. So, your formulas are correct.

blackhawk
05-10-2013, 06:26 PM
Gordon - Great! Thank you very much.

One last thing, you wrote in your first reply: "When the dip switch is set to 1000 the multiplier is 5 and when set to 500 the multiplier is 4."

My original setup with all Shopbot programmed drives had X,Y, and Z drives with the DIP switches set to 1000. But, the Z had the resolution multiplier set to 4, which worked. I was just wondering how this was working since it doesn't match your statement above?

gordon
05-11-2013, 05:32 PM
The original direct drive driver that you had on the Z was your tool had the factory multiplier setting of 4. The newer gear motor drivers on your X&Y have settings for ShopBot multiplier of 5 when dip at 1000 and 4 with dip at 500. Now, the driver that came with your 10:1 gear motor with factory default settings has a multiplier of 4 on both 1000 and 500 resolution settings like the original Z motor driver.

Hope this clears up your question.

blackhawk
05-12-2013, 08:56 PM
Gordon - Thanks for all your help. I have a much better understanding of this now.

With a fair amount of time, I finally got everything working on my new Z setup with the 10:1 motor. In order to use the 1000 p/r setting, I had to remove the 2 wires in the connector that go to the "X10 input" at the controller. That X10 input signal was making all my move commands to be divided by 10. If I commanded MZ=.1, it would move .01 inches.

After I removed the 2 wires, everything worked at 1000 p/r at the 2546.4791 unit value. But, I had to set the resolution multiplier to 1. When I tried setting it to 4, my JZ commands were divided by 4. For example, I commanded JZ=.1 and it moved .025 inches. Anyway, with it set to 1, the distances are correct and the move and jog speeds are good.

Thanks again.