Problem with simple circles, is there direct input method for programming them

• I am a rookie programmer (this is my first Fanuc) and i have been struggling with my application. Basically, I have an Acrmate 100iRc, we are simply welding a small circle (plug weld). My issue is that we are welding a very small circle, 2mm diameter for our root pass and 3mm diameter for our final pass. Trying to shove my face in the fixturing to find the center of this circle then trying to accurately position the robot for a c type point for both circles has been tough.

I figure out where my center point of the circle is and then go to the world position screen and drive it blindly to each point by adding or subtracting my new point coordinate from my current x-y position.

Is there any way i can simply position the robot into the center of my circle and just tell it to make a 3mm diameter circle?

• You could call a program to make a circle and pass the diameter and speed to it as arguments, then use tool offsets to generate the circle.
For example:

!Pass diameter as argument 1, divide by 2 to get radius
R[1]=AR[1]/2
!Pass movement speed as argument 2
R[2]=AR[2]
!Copy the current TCP to PR[1]
PR[1]=LPOS
!Zero PR[2] through PR[5]
PR[2]=PR[2]-PR[2]
PR[3]=PR[3]-PR[3]
PR[4]=PR[4]-PR[4]
PR[5]=PR[5]-PR[5]
PR[2,1]=R[1]
PR[3,2]=R[1]
PR[4,1]=R[1]*-1
PR[5,2]=R[1]*-1
!Move from center to start point
L PR[1] R[2]mm/sec FINE Tool_Offset,PR[2]
!You'll probably want to put in code to start welding here
!Circular motion
C PR[1] Tool_Offset,PR[3]
PR[1] R[2]mm/sec CNT75 Tool_Offset,PR[4]
C PR[1] Tool_Offset,PR[5]
PR[1] R[2]mm/sec CNT75 Tool_Offset,PR[2]

I'm not an expert and I'm sure there's probably some bugs in what I just wrote (I don't have a controller or roboguide in front of me to test it on), but hopefully this helps you out. I use a similar program for routing circles.

• thanks for the advice! i had not thought to try it that way.

I will give it a try today and see how it goes!

thanks again!

• There is Touch Sensing option for ID/OD of the circle. Teach the robot with original weld and then it will compensate the differences of the fitup.
Is that what you mean? In terms of programming you can do the program posted by titus lepic as a separate program and call it every time you need to weld next plug.