Display MoreHello All,
Obligatory first post.
I am in the planning stages for a cell with two machine tending robots, each with a YRC1000 controller. Because there is a pretty large number of workpieces that these robots will eventually handle, I want to have a large number of positions available (maybe eventually 500+ as the customer continues to add new workpieces to their catalogue, more than I could get by just expanding the memory allotment). Because of the shape of the workpiece’s modifying the p-variables by calculations/shifts are probably not going to work. The customer and I are going to have to teach the pick/place positions for each workpiece.
I made a similar cell using a FANUC controller and my strategy was:
-Robot gets part number from PLC
-Robot runs a program specific to each part with the local positions for that particular workpiece which overwrites the global positions to be the same as the local positions taught for that part
-Robot runs does it motion using the newly overwritten global positions. The customer can copy and paste new programs and update the local positions whenever they developed a new part.
I was going to do something similar but Yaskawa local teach points are not numbered/nameable like the ones in a FANUC controller and I don’t think they can be worked on by commands like `GETE` etc.. I searched around the forum and didn’t see the same issue, I'm also pretty new to robotics so maybe I'm overlooking something obvious? Should I possibly be using a FTP system?
Hi,
You can make a teaching job with the positions. The end of the job you can use GETPOS to a local position variable and a CNVRT from local position variable to the global position variable. (you should switch on the enable step number)
Of course you have to make a jump label before of the positions.
For example:
0000 NOP
0001 Jump *LABEL
0002
0003 0001 MOVJ VJ=100.00 PL=0
0004
0005 *LABEL
0006 GETPOS LPX000 STEP#(1)
0007 CNVRT PX000 LPX000 UF#(1) TL#(1)
0008 END