Circle with variable radius
Demonstrates how to make the robot move in a circle, that has a variable radius.
Examples are valid for:
CB2 Software version: 1.8.16941
CB3 Software version: 3.1.17779
e-Series Software version: All versions
Note that older or newer software versions may behave differently.
To create a 360° circle requires two half circles. Each half circle will consist of 3 waypoints, the first waypoint defines the start of the circle and the two subsequent waypoints must be teached as CircleMove, the robot will then automatically calculates the radius of the circle.
In this example all waypoints in the circular movement will be calculated from a center point of circle. The four waypoints are variable waypoints and the centre point is teached manually.
When starting the program, the operator is requested to enter the radius in mm.
The four circle points p1, p2, p3 and p4 are calculated using pose variables of the form p[x,y,z,rx,ry,rz].
p1 = p[(c[0]+r),c[1],c[2],c[3],c[4],c[5]]
p2 = p[c[0],(c[1]+r),c[2],c[3],c[4],c[5]]
p3 = p[(c[0]-r),c[1],c[2],c[3],c[4],c[5]]
p4 = p[c[0],(c[1]-r),c[2],c[3],c[4],c[5]]
Where r is the radius in meters, and c[0] is the x parameter is the centre point position, c[1] is the y parameter and so on.
If desired, the centre point of the circle may also be variable and can be manipulated in program execution.