Pm-940m-cnc (pre-assembled)

Hello all!

I am taking over for @chocadile troubleshooting and will try to get our CNC running.

He mentioned that we have an issue with our axes running past the limit switches...

Well I'm unable to get the motors running at the moment LOL.

Below I've attached pictures of our set-up and of the mach3 software settings that are mostly copied after @cut2cut 's pictures.

Powered on the nMotion CNC Controller via the software which finally had the limit switches registering under the diagnostic page once I pushed down on the plungers. But still unable to get the motors moving.

I figure I have the wrong port specified?

Any input would be greatly appreciated!

Thanks,

Salman

Edit: I am an idiot and forgot to power the motors LOL. Ok all three motors are working. Now the Z-axis and X-axis are not homing correctly. Y-axis is fine. @chocadile last stated

288788


288789


288790


288792


288793


288794


288795


288796


288797


288798


288799


288800


288801


288802


288803


288804


^That is with me pushing down on the Z-axis limit switch plungers.
 
Last edited:
All of the wires in my limit switches were loose, and a few of them were pulled out of their terminals. I'd start there.

PZ
 
@phazertwo thanks for the tip, but I already solved the issue!

The pins specified in my software did not align with the physical wiring. The X & Z pins were mixed.

Everything is now homing and zero-ing as it should be.

Took a whole day of following wiring, checking voltages, and the whole nine-yards before realizing the error lol

The correct settings and wiring diagram displayed below

288813


288814


288817
 
When the stepper "spun but the table never moved at all" you where missing steps. In my experience a stepper won't miss just one step or micro step, it misses all the steps until the speed becomes low enough that it can actually get going again. Remember, if the motor misses a step, that means it basically stopped for an instant, but the controller is still driving it at what ever speed it was at when it missed the step, which means you essentially have unlimited acceleration. Think about it like this, you're on a train that is moving, and you fall off, you're not going to be able to get back on that train until it slows to the point you can catch it. So that sound you heard was the stepper trying to rotate, but not actually rotating (missing steps).

Hope this makes sense.

PZ

Hi PZ,

I understood that the sound was of the stepper missing all the steps, I was confounded as to what velocity and acceleration I must have inserted in the the motor tuning to cause it. I was incrementally increasing the Vec and Accel to see when I would start missing steps and then suddenly I must have gone way overboard on the settings (operator error). Maybe I typed in the Accel at a value significantly higher than 40in/sec-sec. That would do it for sure, but I should have caught this. Anyway, when this happened I set the Accel back to the factory setting of 20in/sec-sec. and started my measurements over.

Forgive me for writting the stuff below. I just wanted to work through it for my own thought processes.

Some simple math. For a given acceleration setting, I want to determine the travel distance before reaching the terminal velocity (V1, velocity as set in the motor tuning configuration page) is reached. Assume: X=distance, Xo=initial starting location (Xo=0), V=velocity as a function of time (initial velocity is zero), A= the acceleration (constant value as set in the motor tuning), t = time, at time t1, the terminal velocity, V1, is reached. So the position during acceleration is described by X-Xo=0.5At^2. The instantaneous velocity during the acceleration period (time 0 until t1) is simply V(t)=dx/dt=At. So t1 can be obtained by solving for where V(t1)= V1. So t1=V1/A. (simple) So the distance traveled to reach terminal velocity is X(t1)-Xo= .5At1^2. Now lets assume the motor tuning values of V1 to be 120 in/minute and A to be 40 in/sec-sec. Use 60 second in a minute. Then t1=V1/A=(120/60)/40 =2/40 = 0.05 seconds. This then corresponds to a distance of X(t1)-Xo= .5At1^2=.5400.05^2=0.05 inch. In other words, the stage only has to travel 0.050 inches before reaching the terminal velocity and so get out of the acceleration process. From a visual perspective, the acceleration to the terminal velocity is essentially instantaneous and difficult to distinguish for moves of any common length!

So my motor tuning logic is: Keep the acceleration value low so that steps are not lost during the period when the motor has to exert the most force to over come the inertia of the mass of the stage+vise+work piece. (During the constant velocity portion of a x or y move, in concept, the motor only has to over come the friction of the stage. During the constant velocity of the z stage it must over come both the friction and the gravitational weight.) In the motor tuning set up that I recieved from the factory, the x,y,z acceleration values were all set the same at 20in/sec-sec while the terminal, x, y, z, velocities were set at 40, 30, and 20, respectively.

By the way, a "g" is 9.8meter/sec-sec or 385.8 in/sec-sec, so when Mach shows 40in/sec-sec for the acceleration this corresponds to 0.103 g's , so is only 10% of the g from gravity for moves in the z direction! Clearly the 940M can lift the z stage's 250 #s of weight. So the z-axis stepper, which is a little larger than the x and y steppers, can carry a force associated with more than 1 g. So most of the above discussion seems almost irrelevant.
However, there is another part of physical mechanics which is less talked about in the physics text books. Rather than just dynamic friction it is static friction, sometimes called stiction and the extension of this being stick-slip-stick-slip... process. When an object sits for a while on a surface it tends to stick to it due to molecular bonding. This would especially be true for the x and y stages where with the full weight of the stages setting stationary the weight would tend to spread the oil out or push it out totally yielding a bond between the stage and the ways. Breaking this loose initially can take much more force than just discussed. However, this would be another reason to set the tuning acceleration to a lower value... give the stepper a little more time to break the stiction and get the stage up to speed. I suspect that this is less critical on the z-axis due to the weight of the head tilting the contact (wedge) at the ways. The bottom corners of the ways will have a lot of pressure between the parts while the top will have little to nothing.

Dave
 
Hi Sal_the_man,

Glad to hear you got the machine working. I guess I was lucky. Mine worked right out of the crate, but I did have some fixes to make.

If you do not mind could you post a picture of the outside of your electronics control box showing the wiring connectors to the nMotion ... the outside of the cabinet, where they come through. I posted an image of the inside of my machine and it is quite different from yours as to the location of the nmotion box and its attachment to the cabinet. Mine is on the other side and the nMotion is not touching the side of the metal cabinet, but is fully inside. Also, my logic power supply is next to the nMotion box not in the row above.



If it would be of any help to you I could provide you with the factory Mach3 profile that came with my machine. You probably do not need it any more, but you might want to compare yours to mine?
 
@B2 I'd really appreciate it if you could share your Mach3 profile!

We're going to have our first crack at machining today. So if it doesn't work I can have your settings to work with.

I'll take a picture of the outside panel shortly
 
@B2

Side panel conduit. Top one goes to control box. Bottom one runs to motor and chuck on the floor (don't know why it's there, just started working on this thing yesterday).

288895


Large conduit running from the control box

288896


Computer connections, going straight into the CNC control box

288897


Top of the panel. Middle line of conduit runs to the Z-axis motor

288898


Top-left conduit runs to Z-axis limit switch

288899


Bottom of panel conduit. The four right lines include the wiring for the X & Y-axis limit switches and motors. The far left line is for the oil pump motor.

288900


Our beloved CNC controller that is claimed to be a POS by the internet

288901


The wiring here is for the limit switches

288902


This panel carrying spade connectors is at least for limit switches from what I traced

288903


These wires connect to their respective motor drivers. All wrapped in conduit that snakes around inside the panel

288904


Not sure what these wires are for, but I have the wiring diagram :D

288905
 
Hi Hi Sal_the_man,

Great set of pictures of the wiring. Thanks. My 940M is very similar, but as I noted the layout of the nMotion is different. Your nMotion mount with the Pendant cable connector firmly screwed to the cabinet is an improvement over mine. It is not clear how your USB cable enters the cabinet, but I assume that there is a mechanical holder for it as well. Of course I had punch and drill some new holes in my cabinet for the reoriented wires and to move all of my wire feeds around when I mounted the box on the right side of my vertical post. With the cabinet rotation the doors now face toward the front and I can push the mill closer to the back wall. I also mounted my light on the left side of the post. The doors now have a clearance problem with the big vertical limit switches, but this is something I can fix with time.

I will attach the .XML file and the .dll file that came with my Mill from the factory on a USB jump drive. However, the forum will not allow me to attach a file with a .xlm or .dll extension. So I will change the extensions to .doc and you can change it back after you down load it. Of course if you try to open the .dll file with Word or a text editior does not work as it is a bin file. This is the first time I have tried to upload any file other than an image so well will see.

There was also a minor set of instructions for their installation.
"
Pls copy file "nMotion.dll" to "Mach3\PlugIns" after mach3 software installed.
And the "mach3mill.xml" is the configuration file of mach3 sofeware you can copy it to "mach3\" (the mach3 install directory).
"
As you work on your machine please see if your mechanical E-Stop is wired Normally Open (NO) or Normally Closed (NC). The mine is, and PZ's (Phazertwo) was wired NO. Hence throwing the E-stop switch takes the input, Pin 16 to to ground to activate the stop. This is not good (not safe) since the wires from the switch to the ground or the sense wire to pin 16 could come loose or break and E-stop would not function. The proper way to do this would be that that the nMotion require the swich be NC for the machine to run. That way a wire break would shut the machine down. Anyway, in the Mach3 settings there is a place where one can choose E-stop logic active low so maybe unchecking this box will call for an active high signal. What not clear is if the nMotion would work with this reversal setting!
 

Attachments

  • Mach3Mill-factory PM940M_CNC.doc
    148.4 KB · Views: 139
  • nMotion.doc
    356 KB · Views: 210
Hi PZ,

I understood that the sound was of the stepper missing all the steps, I was confounded as to what velocity and acceleration I must have inserted in the the motor tuning to cause it. I was incrementally increasing the Vec and Accel to see when I would start missing steps and then suddenly I must have gone way overboard on the settings (operator error). Maybe I typed in the Accel at a value significantly higher than 40in/sec-sec. That would do it for sure, but I should have caught this. Anyway, when this happened I set the Accel back to the factory setting of 20in/sec-sec. and started my measurements over.

Forgive me for writting the stuff below. I just wanted to work through it for my own thought processes.

Some simple math. For a given acceleration setting, I want to determine the travel distance before reaching the terminal velocity (V1, velocity as set in the motor tuning configuration page) is reached. Assume: X=distance, Xo=initial starting location (Xo=0), V=velocity as a function of time (initial velocity is zero), A= the acceleration (constant value as set in the motor tuning), t = time, at time t1, the terminal velocity, V1, is reached. So the position during acceleration is described by X-Xo=0.5At^2. The instantaneous velocity during the acceleration period (time 0 until t1) is simply V(t)=dx/dt=At. So t1 can be obtained by solving for where V(t1)= V1. So t1=V1/A. (simple) So the distance traveled to reach terminal velocity is X(t1)-Xo= .5At1^2. Now lets assume the motor tuning values of V1 to be 120 in/minute and A to be 40 in/sec-sec. Use 60 second in a minute. Then t1=V1/A=(120/60)/40 =2/40 = 0.05 seconds. This then corresponds to a distance of X(t1)-Xo= .5At1^2=.5400.05^2=0.05 inch. In other words, the stage only has to travel 0.050 inches before reaching the terminal velocity and so get out of the acceleration process. From a visual perspective, the acceleration to the terminal velocity is essentially instantaneous and difficult to distinguish for moves of any common length!

So my motor tuning logic is: Keep the acceleration value low so that steps are not lost during the period when the motor has to exert the most force to over come the inertia of the mass of the stage+vise+work piece. (During the constant velocity portion of a x or y move, in concept, the motor only has to over come the friction of the stage. During the constant velocity of the z stage it must over come both the friction and the gravitational weight.) In the motor tuning set up that I recieved from the factory, the x,y,z acceleration values were all set the same at 20in/sec-sec while the terminal, x, y, z, velocities were set at 40, 30, and 20, respectively.

By the way, a "g" is 9.8meter/sec-sec or 385.8 in/sec-sec, so when Mach shows 40in/sec-sec for the acceleration this corresponds to 0.103 g's , so is only 10% of the g from gravity for moves in the z direction! Clearly the 940M can lift the z stage's 250 #s of weight. So the z-axis stepper, which is a little larger than the x and y steppers, can carry a force associated with more than 1 g. So most of the above discussion seems almost irrelevant.
However, there is another part of physical mechanics which is less talked about in the physics text books. Rather than just dynamic friction it is static friction, sometimes called stiction and the extension of this being stick-slip-stick-slip... process. When an object sits for a while on a surface it tends to stick to it due to molecular bonding. This would especially be true for the x and y stages where with the full weight of the stages setting stationary the weight would tend to spread the oil out or push it out totally yielding a bond between the stage and the ways. Breaking this loose initially can take much more force than just discussed. However, this would be another reason to set the tuning acceleration to a lower value... give the stepper a little more time to break the stiction and get the stage up to speed. I suspect that this is less critical on the z-axis due to the weight of the head tilting the contact (wedge) at the ways. The bottom corners of the ways will have a lot of pressure between the parts while the top will have little to nothing.

Dave


You are forgiven, don't worry, I nerd out on this stuff too ;). If (I don't have time to double check your math) your table does really take 0.050" to get up to Vmax, that's not really instantaneous. If you make some adaptive tool paths in Fusion, then simulate it and turn on all the dots that represent lines of code, you can see that often times lines of code are "closer" that 0.05" in the tool path. This is where problems show up.

The static friction bit defiantly makes sense (I refer to this as stiction).

As for the Z axis and gravity, your missing a step there, which would be force. Nothing changes velocity with out a force acting on it. The stepper is not generating acceleration, it's generating force and force is F=mA. So it;s generating enough force to cause an acceleration of 0.103g's in the opposite direction as gravity.

You said your head weighs 250lbs, which is 113kg. So F = 113kg x (9.8m/s^2*.103) = 114N of force. Or ~25lbs. So we know that the net force on the head is +25lbs (+for up direction), but we also know there is the force from gravity, which is -250lbs (negative for down direction). That means that the stepper is providing 250lbs to over come gravity + 25lbs to provide the acceleration. When you sum the forces, you get 275lbs, so we know the stepper is generating at least that much force, but we know is more than that because we didn't take into account stiction, or friction.

Hopefully that all makes sense....

PZ
 
Hi Hi Sal_the_man,

Great set of pictures of the wiring. Thanks. My 940M is very similar, but as I noted the layout of the nMotion is different. Your nMotion mount with the Pendant cable connector firmly screwed to the cabinet is an improvement over mine. It is not clear how your USB cable enters the cabinet, but I assume that there is a mechanical holder for it as well. Of course I had punch and drill some new holes in my cabinet for the reoriented wires and to move all of my wire feeds around when I mounted the box on the right side of my vertical post. With the cabinet rotation the doors now face toward the front and I can push the mill closer to the back wall. I also mounted my light on the left side of the post. The doors now have a clearance problem with the big vertical limit switches, but this is something I can fix with time.

I will attach the .XML file and the .dll file that came with my Mill from the factory on a USB jump drive. However, the forum will not allow me to attach a file with a .xlm or .dll extension. So I will change the extensions to .doc and you can change it back after you down load it. Of course if you try to open the .dll file with Word or a text editior does not work as it is a bin file. This is the first time I have tried to upload any file other than an image so well will see.

There was also a minor set of instructions for their installation.
"
Pls copy file "nMotion.dll" to "Mach3\PlugIns" after mach3 software installed.
And the "mach3mill.xml" is the configuration file of mach3 sofeware you can copy it to "mach3\" (the mach3 install directory).
"
As you work on your machine please see if your mechanical E-Stop is wired Normally Open (NO) or Normally Closed (NC). The mine is, and PZ's (Phazertwo) was wired NO. Hence throwing the E-stop switch takes the input, Pin 16 to to ground to activate the stop. This is not good (not safe) since the wires from the switch to the ground or the sense wire to pin 16 could come loose or break and E-stop would not function. The proper way to do this would be that that the nMotion require the swich be NC for the machine to run. That way a wire break would shut the machine down. Anyway, in the Mach3 settings there is a place where one can choose E-stop logic active low so maybe unchecking this box will call for an active high signal. What not clear is if the nMotion would work with this reversal setting!

My bad, below is how our wires go into the CNC controller. It's quite convenient.

What design software, CAM software, and Post Processor are you using?

At the moment we're using Autodesk Inventor and HSM

288940
 
Back
Top