MC_MoveCircularRelative

../_images/322d1998e831ba840a331390011198ce

MC_MoveCircularRelative

This Function Block commands an interpolated circular movement on an axes group from the actual position of the TCP. The end point as well as the auxiliary point (meaning depending on applied mode, see below) are defined in the specified coordinate system relatively to the starting point.

Note

This Function Block applies to the MCS or PCS System, depending which is activated and also follows the dynamic transformation when activated.

This Function Block is only supported for PLC-based central Motion Control with Coordinated Motion structures.

CircMode = BORDER

../_images/93c6bfa1f2f1a8930a3313900137634b

The user defines the end point and a border point (= input ‘AuxPoint’) on the sector of the circle, which shall be cruised by the machine. Both points are defined relatively to the starting point.

Advantages of this mode:

  • The border point usually can be reached by the machine, i.e. it can be teached.

Inconvenience of this mode:

  • Restriction to angles <2π in one single command.

CircMode = CENTER

../_images/86cebc95f2f1eb8f0a3313900014bdbe

The user defines the end point and the center point (= input ‘AuxPoint’) of the circle. Both points are defined relatively to the starting point When using this mode, the input ‘PathChoice’ defines, if the short or the long sector has to be cruised by the machine.

Inconveniencies of this mode:

  • Restriction to angles < 2π and ≠π in one single command,
  • Overdetermination of circle equation,
  • The center point usually cannot be teached-in due to collisions with obstacles.

CircMode = RADIUS

../_images/5df1793df2f228170a331390012534ca

The user defines the end point and the perpendicular vector of the circle plane according to the rule of right thumb (see figure below). The length of the vector corresponds to the radius of the circle. The spearhead point of the vector is defined relatively to the starting point at the input signal ‘AuxPoint’. If the diameter is larger than the distance between starting and end point, two different circles have to be considered. When using this mode, the input ‘PathChoice’ defines, if the circle with the short sector or the circle with the long sector to reach the end point has to be cruised by the machine. With positive radius value the shortest possible circle is determined, and with negative radius value the largest possible circle

../_images/feaf6e9cf295475a0a33139001bb2070

Inconvenience of this mode:

  • Restriction to angles <2π in one single command,
  • The perpendicular vector has to be computed,
  • Overdetermination of circle equation.

Example:

AuxPoint = (starting_point[0], starting_point[1] - 30, starting_point[2]) ® Circle in plane parallel to x-z plane with radius 30 and rotation around axis parallel to y-axis contrariwise the rule of right thumb (CoordSystem = MCS).

With CircMode=MC_RADIUS, Endpoint is a point at the circle and Auxpoint a vector which is perpendicular of the circle plane according to the rule of right thumb. The radius of the circle is the length of Auxpoint. The moving direction is always positive (counterclockwise), PathChoice determines if the long or short distance is moved.

MC_RADIUS

../_images/b4c5c129f30da2330a33139001bff0e1
MC_RADIUS PathChoice Auxpoint Endpoint
1 FALSE (short) 0,0,200 200,200,0
2 TRUE (long) 0,0,200 200,200,0
3 FALSE (short) 0,0,-200 200,200,0
4 TRUE (long) 0,0,-200 200,200,0

MC_CENTER

../_images/b75e255bf30dd80a0a331390015b2b5b

With CircMode=MC_CENTER, Endpoint is a point at the circle where the movement stops and Auxpoint is the center point. Both are relative to the start point. The circle plane is defined by Auxpoint x Endpoint. Restriction to angles <2π and ≠πas the definition is not unique otherwise.

MC_CENTER PathChoice Auxpoint Endpoint
1 FALSE (short) 0,200,0 200,200,0
2 FALSE (short) 200,0,0 200,200,0
3 TRUE (long) 0,200,0 200,200,0
4 TRUE (long) 200,0,0 200,200,0

MC_BORDER

../_images/64e94b6af30e17190a331390006a208d

With CircMode=MC_BORDER, Endpoint is a point at the circle where the movement stops and Auxpoint is a point on the circle. Both are relative to the start point.

MC_RADIUS PathChoice Auxpoint Endpoint
1 - 0,400,0 200,200,0
2 - 400,0,0 200,200,0
3 - 141,59,0 200,200,0
4 - 59,141,0 200,200,0