Machsupport Forum
Mach Discussion => General Mach Discussion => Topic started by: scudzuki on September 24, 2008, 01:36:31 PM
-
I setup softlimits on my mill. I have the autozero option enabled on XYZ. X homes negative, and Y and Z home positive, so I set the - limit in x and + limit in y and z to 0, then kept the machine in machine coords, jogged to pretty damn close to the limits of the opposite end of the respective axes, noted the machine coords, and configured those softlimits appropriately. I tested by turning on soft limits, then jogging to the axes limits. I found the safe zone to be a bit limiting travel-wise, so I backed it off a bit, and the servos have no problem slowing the axes well in advance of the soft limits. When I run a program after doing a REF ALL, it immediately warns me about soft limits, even though I specify a work offset, then a G0 move that is away from the limits. Is this because the axes are still in the safe zone immediately after referencing? I think it's pretty annoying.
Joe
-
You say the slow zone is limiting travelwise, what do you mean by that? The axis will still move right up to your soft limits even though you have a slow zone, its just the axis will get progressively slower in the zone when jogging into it.
You need the home switches to be zero for machine coords, you then set up the slow zone distance which you find out by trial and error, Basically the slow zone is the distance it will take for your motors to decelerate from rapid speed.
Hood
-
You need the home switches to be zero for machine coords, you then set up the slow zone distance which you find out by trial and error, Basically the slow zone is the distance it will take for your motors to decelerate from rapid speed.
Hood
Isn't that what I just described doing?
My question is, why do I keep getting a softlimit exceeded warning when the next move is away from the softlimits? If I start the same program an inch away from machine coords x0y0z0 I do not get a softlimit warning. Am I getting the warning because the axes are within the slow zone?
-
My apologies, I thought you were meaning you entered a number greater than zero for the X and Y min.
Ok, to answer your question, No it is not that you are in your slow zone, that will make no difference.
If you have X min and Y min and ZMax as zero and X Max, Y Max and Z Min as your axis travels (z a negative number) then it should work fine.
What position is the tool in relation to the workpiece when you are homed ?
Hood
-
I set the slow zone to .7 x and y, any less and it's cutting it too close. Z is set to .8, never get anywhere near the limits jogging the Z.
I am using work offset 3 for this experiment.
machine coords
X0 is -
Z0 is +
Y0 is +
After a G56, my first G0 moves (in machine coords) approx -4". Definitely not going anywhere near the Z+ softlimit, but that's the warning I get.
It definitely makes a difference if, before executing the programs, I jog several inches away from the home positions.
I really want to use the softlimits but if I can't rely on them to not erroneously report softlimit violations, then it's no use having them toggled on.
Joe
-
Please attach your xml and also tell me where your home switches are in relation to the tool. eg if when you are at the home position is your tool is at the lower left corner of your table ( table fully right and away from you)
getting late here so will probably be the morning before I look back.
Hood
-
X home is at the left end of the table, or X-
Z home is at the top of the column, or Z+
Y home is at the far edge of the table, or Y+
Joe
-
Does your machine look like the pic when in the home position? If so then that means that you need a Home Off distance for the Y axis. You need to set Y min as 0, Y Max as 6.47 and have a Home Off Distance set to 6.47. That will mean when you home X and Z will be at zero and the Y will be set to 6.47, confirm by looking at machine coordinates.
At the moment you seem to have all movements in the Y as negative numbers, the Z should really be the only axis that is negative.
Hood
-
Although I understand your logic, I fail to see where it has anything to do with the error that I'm getting. Right now all machine Y coords within the working envelope of the machine are negative. When I'm done, they'll be positive. I can't see where it will fix the softlimit issue, since the errors I'm getting are on the Z axis. I do see that the Mach3 setup guide suggests that both X and Y home negative and that this would be a workaround but seems like I could just as easily change the y to home negative and change the softlimits to suit. I think I will go that route instead, which will have the side benefit of not "tugging" the x servo lead wire when I REF ALL. I'll let you know how it turns out.
Joe
-
Joe, yes it may not be the cause of your problem but I am just trying to get your machine set up so that it knows where the zero position is then we can look into why you have the softlimts issue. I have a SmoothStepper on my mill at the moment and it is busy working but as soon as I have finished the current milling I will put it back to the parallel port and see if I can replicate your problem. BTW what revision of Mach are you using.
Hood
-
The Mach2 config that the machine came with ref'ed y positive and was not zeroing the axes. The guy I bought it from was a wannabe who did not even understand general machining practices so he never noticed.
I am using whatever version of Mach3 ArtSoft had available for download 1 month ago. I use stable code, I do plenty of beta testing in my real job. Haven't checked whether there's a new release available, I will do that now.
Joe
-
Sounds like the guy may have had it set up correctly if I am understanding. If you home the Y so that the axis is furthest away from the column then when you reference the axis it should show your machine coords as Y+ Max. This is what the Home Off value does.
Hood
-
I don't think so. Softlimits im Mach2 were 0,9999 and the original owner never did a REF ALL. He bought the machine retrofitted and never messed with any settings. It was set to home Y+, though. I'll run it in an hour or so and report the results.
-
Okay I changed the homing/limits as follows
y homes negative
ymin limit 0
ymax limit 6.47
REF ALL
and the servo drives the saddle right up to a mechanical stop (past the limit switch) and stalls the servo, and I jump for the estop. Note that this is the first change that I've not tested first time by tripping the limit with my finger and been poised over the estop on the first actual run, and the first one to end up driving the machine to a mechanical stop. @%R^&*!
I check the y- limit switch and its position is fine
I crank y back several inches and REF ALL again, actuating the switch with my finger which it ignores completely, I jump on the estop in time to prevent metal to metal.
Changed the homing/limits back but added home off 6.47
Note that the y- limit WILL trigger the estop and x home. In other words, I REF ALL, let Z and Y ref, when the X is ref'ing, hit the troublsome y- limit switch with my finger and it acts as if it has hit the x limit, let go the y- limit and x stops and zeros. I thought all of the limit switches were wired in parallel? How can it detect an open limit switch for purposes of estop and ignore it for homing... but selectively?
to recap
y- limit switch is ignored when homing y axis but not x axis
y- limit will trigger the estop.
WTF????
BTW I did run my test program once after adding the home offset with no softlimit warning. Logically it does not make sense, but I can see where it could be a bug in Mach3 that only surfaces if the work envelope in y machine coords are all negative.
Joe
-
You say you have them in parallel, you sure? normally you have NC switches wired in series.
So are you sorted now? Some of the earlier versions had a bug for the softlimit warning.
Hood
-
I did not alter the wiring, and I have no schematic for the machine.
I assumed that all the limits would be NC and wired in series, and that opening any of them while an axis is homing would be interpreted by the control as the appropriate axis, after all there's only 1 axis in motion at a time.
I am going to pull the limit switches at some point to have a look at how they are wired.
I have the most current release of Mach3 and have never had an older release. I will run a few more test passes with the program that was giving me the errors. As for the limit switch mystery, I will solve it in the future. Thanks for all your help.
Joe
-
You seem to have two circuits in play for the limits and home switches and they seem kind of weird in the way the are wired. Reason I know there are two circuits are there are two different pins asigned for all of your home and limit switches in Ports and Pins, but without actually seeing them its hard to envisage the connection.
Hood
-
Now that I am looking at that, it doesn't make any sense. X home is assigned the same pin as X+ yet X homes negative. Should I just change the Y home to the other pin and try to home negative? I don't see a problem with how I have it set up now, essentially the same effect, but I'd like to understand it better.
Joe
-
I wouldnt mess to much with asigning the pins until you understand how its wired, it certainly seems unconventional in its pin asignment ;D
If its working for you now I would leave it until you have time to investigate and rewire if needed, if its not working then I would investigate/rewire before I started messing with pin asignments.
Hood
-
Actually, I tried it already, assigned the same pin to y home that is assigned to y+, changed the y home direction to negative, changed the y home off to 0, and triggered the y- limit switch it by hand inches away from the actual limit to test (other hand poised over the e-stop the whole time). It's perfect now.
I bet they have the pin assignments for the limits backwards, after all every axis now has assigned as the home switch pin the same pin as the limit switch at the opposite end of the axis.
I tested REF ALL, soft limits by rapiding up to the limit of each axis, and ran program that was giving softlimit warnings from the home position, no warnings. What else do I have to worry about? Any of the limit switches will trigger an e-stop, so what other potential problems could I be looking at? I can't think of any.
Can you see any benefit to having 2 separate circuits (and pinouts) for the limit switches? Seems to me that one circuit for all would suffice.
Joe
-
Yes one circuit will suffice for ALL limits and home switches and is a good saver of inputs as only one is used. The occasions where seperate Home switches may be required is when you have either home switches mid travel due to having large axis travels (time saved instead of homing to axis extreme) or where you are doing homing with index pulses etc.
Hood
-
Seems to me I could just pull the parallel cable off the PC and check the pins using a multimeter whilst tripping the limit switches by hand. The switches are wired directly to the parallel output, not through the BOB, yes? I suppose it's all academic at this point anyway.
Joe
-
Personally I wouldnt mess with it until I was ready to rewire if needed, I would also buy a BOB or make up a simple one so that there were screw terminals, makes life a lot easier if things need changed around.
Hood
-
I could just as easily leave it alone as it works but I am curious. I can research it and verify my suspicion without changing anything. The BOB used on my machine has screw terminals. I don't know who makes it but it is one of 3 pictured in the Mach3Mill manual on page 30, figure 4.2, the one in the lower right hand corner. Time to make some chips.
Joe