View Full Version : Softlimits in general
HuFlungDung 02-16-2004, 03:02 PM I have pondered the usage of soft limits in cnc controllers, and find a definite lack of functionality. So this is not a Camsoft beef in particular, but maybe this is the PC based cnc solution that could get it right :)
Mind you, I have not seen everything there is to see, so maybe some controllers do have better functionality.
Anyways, let's think about lathes for a moment. There is often great variation in the length of tooling required. And, much of the time, this tooling must work very close to the chuck face of the chuck jaws.
Suppose I have a boring bar projecting 5" to the left of most of the regular OD turning tools. Suppose I must cutoff within .5" of the chuck.
Since the softlimits are relative to machine zero, then it becomes obvious that the boring bar is not going to be protected by soft limits. If you set a limit that protects the bar, it will prevent the cutoff tool from moving into position.
So, my notion, is that there should be a unique softlimit setting associated with every tool in the tool offset register.
The same principle would apply to mill tools of various lengths. There isn't any protection for the longest tools.
Am I missing something here? Why are softlimits in this state of uselessness?
camsoft 02-19-2004, 06:46 PM There are a few things you can do.
Use the Search for Solutions button (Starting with Version 15) to review Question #232
It's true the SOFTLIMITS position settings in CNC SETUP are relative to the machine home not tool or job home. However, these positions can be changed on-the-fly with the logic command equivalent called SOFTLIMITS or the G codes G170,G171,G172.
Think of the SOFT LIMITS as a virtual over-travel limit switch in the computer. These may be used as crash barriers to prevent the tool from hitting the chuck, fixture or clamp for example.
What actions will occur when a crash barrier or SOFTLIMITS is crossed can be customized by the end user in detail inside the SOFTLIMITS.FIL file.
Here are the 3 choices.
(1) Enter in the tool size or length into the CUSTOM1 or CUSTOM2 box on the TOOL PARAMETER screen for each tool number. At each new tool change, perhaps in the logic for the M06 code you can setup the new crash barrier positions for each new tool. Use the lower case t value to determine the current tool number.
Example:
TOOLCUS1STt \123
SOFTLIMITS BACKWARD {-10+\123};0;0
This will retrieve the value stored in the CUSTOM1 box on TOOL PARAMETER SCREEN for current tool number and store it in variable \123 then reset the SOFTLIMITS for the BACKWARD limit of the first axis to -10 were it was originally plus the tool size or length stored in variable \123.
If the physical chuck was at -10 away from machine home in Z (in this case axis number 1 on a lathe) and the lathe tool length stored in CUSTOM1 box was added to the original chuck location then the number 1 axis could not pass this coordinate without causing the SOFTLIMITS event to execute. This would also work for 3D mills or other machine types despite additional offsets for the fixture, job home or other user defined added offsets because the internal position register compares the actual axis location minus any offsets in a separate register and it's this value that is compared to the SOFTLIMITS position. All we are doing here is adding the tool size or length to SOFTLIMITS.
When the tool enters the crash barrier limits the logic in the SOFTLIMITS.FIL file will automatically run. Here you display messages to the operator, stop the machine or even automatically back away slowly.
(2) These G codes setup new crash barriers from within the G Code program G171,G172. The G170 resets them back to the defaults. This way the positions that are given for this particular part would be saved for the next time it's run, right inside the G code file.
(3) Enter logic directly in the GCODE.FIL file table that specifies what will happen, what messages get displayed and what action will occur before the GO command to move the machine takes place. In the example below if the X axis position in the G code program is ever less than or equal to the value 1.234 then the machine stops and displays a message and exits out before it moves there.
The -1.234 maybe the distance from the face of the part Z0 to the chuck jaws.
For example:
If x<=-1.234 THEN ESTOP:MESSAGE CRASH BARRIER HIT:EXIT
The big advantage here is that you are working with numbers in the G code program that are already the tip of the tool. No offsets to worry about in your calculation. The lower case x value is the tip of the tool. All tools despite their length get setup and touched off the part face at Z0 on a Lathe or Z0 on the top of the part on a mill/router. This way the tool number doesn't matter and neither do the offsets. If the tip of the tool is commanded in the G code program to cross a certain fixed coordinate that is the chuck or fixture then this will catch it. Besides this way the move is never actually made so the crash is caught before the tool even gets near the chuck.
(4) In the standard version of CNC professional watch the solid modeled simulation on the screen in SUSPEND PREVIEW mode before you press cycle start. In Level-5 or higher you can also preview a full solid modeled verification of the G code program. Although you can't always count on this method unless you humanly notice something, but again it's a high probability that you will notice well before the machine operator has even has a chance to press cycle start.
Tech Support
CamSoft Corp.
(909) 674-8100
support@camsoftcorp.com
www.cnccontrols.com
HuFlungDung 02-19-2004, 07:40 PM Thank you Camsoft for that detailed reply. I never thought of using the custom1 or custom2 fields for anything as of yet. That's what I will try.
Heretofor, I've only managed to hobble my machine with the soft limits :D
HillBilly 02-23-2004, 06:19 AM I would go with option 3 and never make the move.
It seems to me the softlimits can be jogged over and the overtravel hit, even if short acc-dec ramps are used.
This seems to be a Galil issue. I know the Galil is a state of the art motion controller but I would like to know what has changed in the way home is preformed. On all the retrofits I have done in which the original controller was replaced with A Galil controller the rate at which the home swith had to be attacked was greatly reduced. Most cases I had to move the home dog in more to have time to detect it before the overtravel was hit.
I would think the new controller should be able to match what the 20+ year old controllers did.
Has anyone else noticed the slower home?
HillBilly
HuFlungDung 02-23-2004, 09:04 AM Hillbilly,
Are you calling up the home routine more than once in a session? Are you homing to a switch or to a scale/encoder index?
HillBilly 02-23-2004, 11:56 AM Hu,
Homing as usual, once or twice a session.
In all cases I am finding a reference switch first then going to the next encoder index pulse.
HuFlungDung 02-24-2004, 09:36 AM HillBilly,
Do you use a routine for homing such as is described in the Galil Home command? I think the method described there allows for more speed for the initial switch change of state. I presume that is when you would find most of the time being wasted?
HillBilly 02-24-2004, 10:09 AM Hu,
Yes using the FINDEDGE Galil command is more responsive than the Camsoft routine but I still have to approach the switch at about half the speed as the oringinal controller say a Fanuc 5M.
HillBilly
Wolfe 02-24-2004, 05:03 PM Hu,
I have a lathe with a Fanuc 10T, and when it homes there are 2 limit switches about 1" apart, when it hits the first switch it slows down from rapid to a very slow rate to find the next switch, which would be the home switch. That would be a way to rapidly find home without blowing by the actual home switch.
HillBilly 02-25-2004, 06:18 AM Wolfe,
I would be surprised if this is actually how your machine homes. The slow down after the first switch is usally to creep to the next encoder marker pulse, not the second switch. If your machine moves slower after the first switch and stops at the second switch without finding a encoder marker pulse then your home repeatability
is only as good as the machanics of your switch!
Is there one more switch after these two for O.T.?
HillBilly
Wolfe 02-25-2004, 11:27 AM HillBilly,
There are two O.T. switches, a soft O.T. and a hard O.T. Besides, it could still be a good fix for homeing at a rapid pace. I checked the machine and after it hits the first switch the next stop is at .996 of an inch, at that point the home light comes on. I do not believe that the next index marker would be that far away.
HillBilly 02-25-2004, 12:46 PM Wolfe,
With Fanuc pulsecoders, encoders, the marker pulse is one per revolution. There is also a parameter in the control, grid shift, as to how many revs past the decel switch to actually go to and call home.
I'm getting this from a 3T maintenance manual but it should read the same in the 10T manual.
HillBilly
mtlmnchr 02-25-2004, 01:10 PM Correct assumption Hillbilly,
the 2 switches are actually soft limit, and hard limit. One requires either a push of the reset button, or just moving off of it to clear(depending on the version of software), the other requires a manual override of the hard limit switch to bypass.
HillBilly 02-25-2004, 01:41 PM One thing is for sure when you home one of these machines the first time it tightens you up!
I have not been able too achieve this with any of the Galil controllers, CamSoft excluded.
HillBilly
HuFlungDung 02-25-2004, 02:33 PM Hillbilly,
what speed are you expecting to approach the home switch at?
The search for encoder index should only be at 250 to 500ppm, but I doubt that the approach to the home switch could be done at full rapid. At the same time, it would not need to be as slow as the search for the index.
When running through Windows, I don't know if the I/O is as responsive as one would hope. It also depends if you are using the Galil I/O (which is slower than the recommended add-on PCI card I/O, I understand).
Another method is to write and load a small homing routine to download into the Galil memory. I find that when trying to detect an input to the Galil I/O, that the AI command works the best, so far as being dependably repeatable in its response time.
HillBilly 02-25-2004, 03:01 PM Hu,
I'm just reading from the 3T manual again and it sais the home routine moves towards the decel switches at rapid traverse rate. It would be nice to maintain this feature without adding A switch.
I would also imagine that using the dedicated home input to the Galil and issuing a FE? command from the Galil terminal would be as fast as you can get with this hardware.
HillBilly
Wolfe 02-25-2004, 08:22 PM Guys,
Maybe my machine does not home exactly the way that I thought...who cares. The beauty of the Camsoft control is the ability to work around problems in any number of ways...limited only by the intellegence and patience of the person that writes the control code. On the other hand, Fanuc has teams of engineers that write the code for their control, and yet the Camsoft control can be tailored by you and me, or anyone who wishes to. Yeah, maybe your machine doesn't home like a Fanuc....so what...if you put your mind to it you could make it home better and faster with the Camsoft software, everything is there to do it, You may have to go at it in a different manner, or you may even have to build something extra to make it happen, but in the end all that really matters is that you got it done.
HuFlungDung 02-25-2004, 08:41 PM That's the spirit, Wolfe. :)
Hillbilly, there is no way in hell that your initial homing switch approach is going to be done at full rapid. Maybe at high jog, but not rapid. Rapid is pretty fast nowadays.
If your galil card is set at standard servo update rate, it is also going to be less responsive than if you tune it to the max. This requires adjusting all your feedrate parameters and accel/decel ramps and PID settings all over again.
I would recommend it for maximum performance, but Camsoft won't endorse it because of the additional complexities. If I remember correctly, I have mine set a 375 microseconds, whereas standard is 1000 = 1 millisecond. . If you change the update rate, you can narrow this down a bit, I would expect.
Once home is established, then you can write a completely different logic to return to index home. There is no need to go back through all the home switch routine again. Then you can return to home at rapid. :)
HillBilly 02-26-2004, 07:31 AM It just does not seem like money well spent to me.
If you want to master the CamSoft and Galil code then definitely go this way.
If you want to get back to machining and making money then you may want to consider the alternitives.
HillBilly
Wolfe 02-26-2004, 12:09 PM HillBilly,
I'm pretty sure that if my Fanuc 10T has a servo or encoder go out...I couldn't get just ANY servo, or ANY encoder to work with it. The fact that I can adapt anything or any motor to my Camsoft control is money well spent to me.....besides maybe the code that you wrote for your machine is not as good as what I write...could explain some of your frustration.
HillBilly 02-26-2004, 05:26 PM Wolfe,
I can assure you that you can interchange on a Fanuc 10T system.
By the same tokin I have used Camsoft and Galil with Fanuc servo drives, motors and encoders.
There is no doubt about there will have to be some good code written!
HillBilly
jghuttora 07-15-2006, 09:05 PM I have kitamura mycentre 20 lathe with 10 -t control problem i'm facing is if i have to set my tools for next job after turning my machine once in morning it shows the difference of .236 or 6mill which causes the problem of over cutting please advise.
jghuttora 07-15-2006, 09:10 PM my lathe shows alarm ex14 turret alarm for certain tools the tool post does not go back to its in position after rotation. Also calling for tool no. 1 pocket # 3 shows up so i have to cheat in my program.
Carlo Rechi 07-15-2006, 09:16 PM Are you using Camsoft controls or something else?
Carlo
jghuttora 07-18-2006, 10:23 PM Are you using Camsoft controls or something else?
Carlo
All i know its fanuc 10t control
Al_The_Man 07-18-2006, 11:36 PM This is the Camsoft Forum, you should be posting the question in the Fanuc Forum.
Al.
|
|