What's new
What's new

Sensor for distance/position and how to use with 6 axis robot

rollerman13

Plastic
Joined
Feb 1, 2017
Hello All,

I have currently acquired a 2004 Haas SL40-T lathe and a 2005 Fanuc R2000iA 210F with R-J3iB Controller.

These machines will (hopefully) work in unison - machine load and unload.

I am fairly new to robotics and integration with CNC Machine tools, so this will be a learning experience for me. I am quite excited.

I am wondering if any of you can comment on if using a sensor to calculate distance/position would be a reasonable idea to help the robot place the blank (round stock - of differing lengths)correctly in the "Z" direction of the jaws/chuck? Since the length of the stock will be changing frequently, I was thinking this perhaps might be the best way to ensure the robot moves the round stock blank to the correct Z axial place prior to initiating the chuck to close. I am hoping this is a better/simpler way that may not involve altering a program or movement with each change of length of the round stock?
the general sequence might look like this:
- robot picks up round stock blank
- robot moves round stock blank towards/into range of sensor
- sensor picks up distance from round stock blank and sends to ______ (robot controller?, Cnc controller, aux computer/PLC - I hope not...)
- robot now knows how far to move the round stock in towards the chuck to ensure proper successful loading of the machine
I envision the actual process may look like this (not sure if that is what is actually happening in the video): YouTube

Interested in your thoughts and an extra thanks for any of you who may be able to point me in the direction of some detailed supporting documentation that may help in this integration between the two machines. If you like a better way to accomplish the above task. Please let me know.

Thanks as usual for your help and expertise. Looking forward to this project.

Regards,

Garrett
 
It would help to state the desired level of accuracy you want. What have you learned from a discussion with Keyence, Banner, or some of the other sensor makers? Did you call the robot/control mfg's for possible interface options? Done any searching on the internet about how they did what was done in the video?
 
We have done this with the robot guided by both a vision system (Cognex) as well as with a laser displacement sensor . . . typical accuracy with a camera is dependent upon lensing / lighting and at best will be +/- 0.020 in motion unless going very slowly and +/- 0.005 inches in final position if you never crash the robot. Laser displacement sensors can get you in the +/- 0.001 range with the right surface finish.

Be aware that robot path accuracy is never as good as specs indicate for target repeatability . . . i.e. plan for plenty of clearance with a chuck rather than using a collet.

Lots of ways to skin this cat . . . first question is are you planning on having a separate PLC to interact with the robot and read / write parametric data to the robot that is used in the robot program OR are you planning on managing all programming within the robot itself? Given the age of the controller - I am not sure what kind of programming tools might still be available for it for simulating (i.e. RoboGuide).

Also, you are obviously buying used - what options come with the robot (network interface? Ethernet/IP / ProfiNet / Modbus/TCP) . . . knowing this will help target what kind of PLC interface you might be able to leverage.
 
AD Design and Motion Guru, thank you for the responses.

I don't know much about the control other than it does have ethernet as a means of connection. Fanuc tech support says he believes it does have Profinet but his notes indicate it could be the older profibus. Honestly I don't know the difference in terms of functionality. The robot will arrive next week so I'll probably have to wait until then to open the case and find out. Roboguide is available and will be supported according to Fanuc.

My initial thought was to avoid a separate PLC if possible for no other reason than from a novice's perspective it seems simpler... Fanuc recommends Allen Bradley if a PLC is used.

As far as accuracy goes, that is something I have not considered but will now. I really overlooked the accuracy as I figured that loading a part into a hydraulic chuck wouldn't require pin point accuracy... but certainly I will have to think about this a bit more.

I have not reached out to any of the sensor mfgs yet. This is on my short list.

Thanks again for the responses.

Garrett
 
If all you need is Z part offset this can be done with LVDT, electronic indicator, touch probe, or even a limit switch if you have much to play with in length.
You may find just picking the part to be a problem, note in the video a known "nest" or pallet.
Also grippers wear so you need room for "cocking" of the part or compliant grippers when trying to stick a pin in a hole.
If not real close while the hyd chuck will center it abuses the robot and it's hand so over time......

It all looks and seems so easy.
Different pallets or racks for different length parts being made or is the variation one part number being made and saw cut length variation?
You don't say if you are making one part or a family of parts.
As an example a robot tended machine making axle shafts has to deal with lengths from 8 inches to 28 inches and all sorts of diameters. That complicates things a lot.
Same part all day and dealing with 0.100 off the saws plus pick up point variation is sooo much easier.

As Motion stated be weary of repeat numbers.
If trying to control part length be aware that even with probing the length the robot moves then moves around to load it. One robot error in space when measuring and the another error of the same when placing it.
All good when they cancel each other, not so good when they add.
If part length needs to be held or the clamp end is a datum a hard stop inside works best and you make the robot sort of force against it, sliding the part a tad in the gripper.
Downside, you eat gripper faces.
Much depends on where that back face has to be to the area you will machine.

Other than machine start and end signals I'd try to do it all in the robot. The robot becomes the human, loads as needed, pushes the green button and waits for a cycle stop.
Sometimes you have to stuff offsets into the machines control but better to stay away from that when possible.
Bob
 
How much length and diameter difference are we talking about? I have a feeling you might have more issues with the payload schedules.

As Motion said, there are a lot of different ways to go about this. The first thing that comes to my mind is to use an angled infeed the parts roll down with pneumatic cylinders on each end. Toggle the cylinders on to roughly center it, or have one cylinder to push the part on a stop. One thing I've done before is to use torque skip to push a part into position. It's a software option we didn't get so I had to write the system variables to registers to get it working.

The program itself will be the easy part of the equation, though. The first thing you need to do is to get an idea of what you have to work with. If you give Fanuc a call you might be able to get them to give you a list of the installed options. Otherwise you'll need to get power to the robot to turn it on and check. From there, determine what (if any options) you need to put get for how you want to deploy the cell. If you want to cram it in a tiny area, maybe you need DCS, or the extra 20 deg for J1, etc.

The documentation can be a sticky thing to get ahold of. Check the cabinet for a CD with the manuals, but RJ3iB's might be old enough to not have come with them. You might need to get them from Fanuc, who probably wouldn't give them to you without paying to re-license the robot software.

If you work where I think you work, I'm a stroll away in Elgin. If you need somebody to look something over for you, I wouldn't mind.
 
One additional item of potential concern . . . the topic of "re-licensing" of software on the robot and any options can get sticky. If you ever need support from Fanuc, this will trigger a question about software licenses on the robot and if you are not the original purchaser / licensee . . . you will be required to re-license the software. Purchasing the license through a Fanuc authorized reseller is typically cheaper than buying from Fanuc direct. (We are not a reseller)
 
Carbidebob and Footpetaljones, thank you for your responses. I am definitely learning here.

To give you an idea of the staging for the picking of the round stock... a simple idea I have, not fancy, see the attached image. Now, perhaps there will be more than 6 "holders", but this is just to give you an idea... The part can be pretty easily centered within the "v block holder" so for the robot to find the axial center of the round stock I think will be straightforward - go to the center of the v block holder each time. The difference in diameter of the round stock can be accounted for by the following: while 6 stations are shown, there can be numerous "stations" within each v block holder, which can just be a vertical offset. That way, if you know a 5" diameter round stock is needed, you still only have to direct the robot to a preset station. Not sure this will be a great option, but I am going for simple.

This application is similar to CarbideBob's suggestion of an axle shaft application where both diameter and length of the round stock will differ day-to-day. Figure diameters from 3-10" and lengths from 8-40". I will have some issues with payload as a 10" diameter x 40" long steel round will overload the robot - there are always compromises to be made and these parts will need to be loaded into a different machine or manually.

Carbidebob, is a "hard stop" that you mentioned just slowly running the blank into the chuck/jaws until it hits? The robot effectively "crashes" into the chuck/jaws albeit at a very slow speed?

See another picture to give you a ROUGH idea of how the round stock will be placed in the chuck (don't mind that it is a manual chuck on a manual lathe, lol). Another challenges is getting the tailstock into proper position. A challenge for another day i'm afraid.

I'm very interested in the LVDT, elect. indicator, and touch probe as options, I will look into this. I will have to figure out how the outputs of these devices can quantify the location of the robot/round stock so the robot knows just "exactly" where to place the round stock in the jaws. Seems tricky.

What did you mean by stuffing offsets into the machines control? I'm hoping you might clarify that just a bit.

Footpetaljones, I may contact you sometime in the future to discuss the application in more detail. I appreciate the offer. In the meantime, thank you for your thoughts.

Regards,

Garrett Rausch part in jaws_1.JPGpickup array_1_20200626.jpg
 








 
Back
Top