KUKA Standard Interface Commands

The KUKA Standard Interface provides the following subprograms:

When writing your own program, pay attention to the following:

  • Multiple parameters should be separated by commas.

  • All parameters should be defined as runtime variables in the program file.

  • Parameters can be defined as IN or OUT parameters.

This Standard Interface is over the TCP/IP protocol.

Initialize Communication

MM_Init_Socket(XML_Name[]:IN,Alive_Flag:IN,Recv_Flag:IN,Time_Out:IN)

This subprogram sets the name of the XML file used for setting up the TCP/IP communication, flag for successful communication, flag for successful data reception, and wait time before the program stops trying to establish the communication.

Parameters

  • IN parameters

    Name

    Description

    XML_Name[]

    Name of the XML file, case-sensitive

    Alive_Flag

    ALIVE flag number in the XML file

    When the flag is set to ON, the communication is successfully established

    Recv_Flag

    RECEIVE flag number in the XML file

    When the flag is set to ON, the robot has successfully received data

    Time_Out

    Wait time in seconds before stopping connection attempt

Example

MM_Init_Socket("XML_Kuka_MMIND",873,871,60)

This example sets the XML file for setting up communication as XML_Kuka_MMMIND, the flag for successful communication as 873, the flag for successful data reception as 871, and wait time as 60 seconds.

Start Mech-Vision Project

MM_Start_Vis(Job:IN,Pos_Num_Need:IN,SendPos_Type:IN,MM_J:IN)

This subprogram is for applications that use Mech-Vision but not Mech-Viz. It runs the corresponding Mech-Vision project to acquire and process data.

Parameters

  • IN parameters

    Name

    Description

    Job

    Mech-Vision Project ID, from 1 to 99

    Can check and adjust in Mech-Vision

    Pos_Num_Need

    Number of vision points for Mech-Vision to send, from 0 to 20, where 0 means “send all”

    SendPos_Type

    Set the robot pose to send to Mech-Vision, from 0 to 3

    See the following table for explanations of the 4 values

    MM_J

    E6AXIS variable for storing the joint positions of the start point when SendPose_Type = 3

    SendPos_Type value

    Pose sent to Mech-Vision

    Applicable scenario

    0

    No robot pose sent to Mech-Vision

    Project is in the eye-to-hand mode. If the “Path Planning” Step is used, the planned path starts at the Home point set in the path planning tool.

    1

    Current joint positions and flange pose of the robot as image-capturing pose

    Project is in the eye-in-hand mode. Applicable to most robots (excluding truss robots).

    2

    Current flange pose of the robot as image-capturing pose

    Project is in the eye-in-hand mode. The robot has no joint positions and only flange pose (such as truss robots).

    3

    Joint positions of a specific start point

    Project is in the eye-to-hand mode and the Mech-Vision project contains the “Path Planning” Step, whose start point needs to be set from the robot side.

Example

MM_Start_Vis(1,1,1,MM_J)

This example runs Mech-Vision project No. 1, and asks the project to send over 1 vision point, and the robot sends its current joint positions and flange pose when this subprogram is called as the image-capturing pose.

Get Vision Target(s)

MM_Get_VisData(Job:IN,Last_Data:OUT,Pos_Num:OUT,MM_Status:OUT)

This subprogram is for applications that use Mech-Vision but not Mech-Viz. It obtains the vision result from the corresponding Mech-Vision project.

Note

If custom outputs are defined in the “Procedure Out” Step in the Mech-Vision project, use MM_Get_Dy_Data to obtain the vision result instead.

Parameters

  • IN parameter

    Name

    Description

    Job

    Mech-Vision Project ID, from 1 to 99

    Can check and adjust in Mech-Vision

  • OUT parameters

    Name

    Description

    Last_Data

    Variable, indicating whether all vision points have been sent, 0 or 1

    0: NOT all vision points have been sent (more on the way) 1: All vision points have been sent

    Pos_Num

    Variable for storing the number of received vision points

    MM_Status

    Variable for storing status code. Please see Status Codes and Troubleshooting

Example

MM_Get_VisData(1,Last,Pose_Num,Status)

This example obtains the vision result from Mech-Vision project No. 1. Whether all vision points have been sent is stored in Last, the number of vision points received is stored in Pose_Num, and the status code is stored in Status.

Start Mech-Viz Project

MM_Start_Viz(SendPos_Type:IN,MM_J:IN)

This subprogram is for applications that use both Mech-Vision and Mech-Viz. It runs the corresponding Mech-Viz project (which triggers the corresponding Mech-Vision project to run), and sets the initial joint positions of the simulated robot in Mech-Viz.

Parameter

  • IN parameters

    Name

    Description

    SendPos_Type

    Set the initial pose for the simulated robot in Mech-Viz, from 0 to 2

    See the following table for explanations of the 3 values

    MM_J

    E6AXIS variable for storing the joint positions of the start point when SendPose_Type = 2

    SendPos_Type value

    Pose sent to Mech-Viz

    Applicable scenario

    0

    No robot pose sent to Mech-Viz

    Project is in the eye-to-hand mode. The simulated robot in Mech-Viz moves from joint positions = [0, 0, 0, 0, 0, 0] to the first waypoint.

    1

    Current joint positions and flange pose of the robot

    This setting is recommended for projects in the eye-in-hand mode. The simulated robot in Mech-Viz moves from the input joint positions to the first waypoint.

    2

    Joint positions of a specific start point

    This setting is recommended for projects in the eye-to-hand mode. The simulated robot in Mech-Viz moves from the input joint positions to the first waypoint.

Note

When the scene contains objects that obstruct the robot to move from [0,0,0,0,0,0] to the first waypoint, this parameter should not be set to 1.

Example

MM_Start_Viz(1,MM_J)

This example runs the corresponding Mech-Viz project, and sets the initial joint positions of the simulated robot to the current joint positions of the real robot.

Get Planned Path

MM_Get_VizData(Jps_Pos:IN,Last_Data:OUT,Pos_Num:OUT,VisPos_Num:OUT,MM_Status:OUT)

This subprogram obtains the planned path from Mech-Viz.

Note

Only the poses and their corresponding labels and velocities are obtained by this subprogram. If any other type of data are needed, such as custom outputs from Mech-Vision project or depalletizing planning data, use MM_Get_PlanData to obtain the planned path instead.

Parameters

  • IN parameter

    Name

    Description

    Jps_Pos

    Whether Mech-Viz should send waypoint poses as joint positions or TCPs, 1 or 2

    1: Mech-Viz sends joint positions 2: Mech-Viz sends TCPs

  • OUT parameters

    Name

    Description

    Last_Data

    Variable, indicating whether all waypoints have been sent, 0 or 1

    0: NOT all waypoints have been sent (more on the way) 1: All waypoints have been sent

    Pos_Num

    Variable for storing the number of received waypoints

    VisPos_Num

    Variable for storing the position of the first Vision Move waypoint in the path

    Example path: Move_1, Move_2, Vision Move_3, Move_3, Vision Move_2 In this path, the position of the first Vision Move waypoint is 3. If the path does not contain Vision Move waypoint, the return value is 0.

    MM_Status

    Variable for storing status code. Please see Status Codes and Troubleshooting.

Example

MM_Get_VizData(2,Last,Pose_Num,VisPose_Num,Status)

This example obtains the planned path from Mech-Viz in the form of TCPs. Whether all waypoints have been sent is stored in Last, the number of waypoints received is stored in Pose_Num, the position of the Vision Move waypoint is stored in VisPose_Num, and the status code is stored in Status.

Obtain Pose

MM_Get_Pose(Serial:IN,MM_P:OUT,MM_Label:OUT,MM_Speed:OUT)

This subprogram stores a vision pose returned by Mech-Vision or a waypoint pose (as TCP) returned by Mech-Viz in the specified variable.

Parameters

  • IN parameter

    Name

    Description

    Serial

    Specify the index of the pose to be stored

  • OUT parameters

    Name

    Description

    MM_P

    Variable for storing the specified pose

    MM_Label

    Variable for storing the label corresponding to the specified pose

    MM_Speed

    Variable for storing the velocity corresponding to the specified pose

Example

MM_Get_Pose(1,XP1,Label,Pose_Speed)

This example stores the first received pose to XP1, the corresponding label to Label, and the corresponding velocity to Pose_Speed.

Obtain Joint Positions

MM_Get_Jps(Serial:IN,MM_J:OUT,MM_Label:OUT,MM_Speed:OUT)

This subprogram stores a set of joint positions returned by Mech-Viz in the specified variable.

Note

As Mech-Vision does not output joint position data, this subprogram can only be used with Mech-Viz.

Parameters

  • IN parameter

    Name

    Description

    Serial

    Specify the index of the set of joint positions to be stored

  • OUT parameters

    Name

    Description

    MM_J

    Variable for storing the specified set of joint positions

    MM_Label

    Variable for storing the label corresponding to the specified set of joint positions

    MM_Speed

    Variable for storing the velocity corresponding to the specified set of joint positions

Example

MM_Get_Jps(1,JP1,Label,Pose_Speed)

This example stores the first set of received joint positions to JP1, the corresponding label to Label, and the corresponding velocity to Pose_Speed.

Switch Mech-Vision Recipe

MM_Switch_Model(Job:IN,Model_Number:IN)

This subprogram specifies which parameter recipe of the Mech-Vision project to use. For more information on parameter recipe, please see Parameter Recipe.

Note

  • This subprogram must be called BEFORE MM_Start_Vis.

  • The corresponding Mech-Vision project must have parameter recipes already configured and saved.

Parameters

  • IN parameters

    Name

    Description

    Job

    Mech-Vision Project ID, from 1 to 99

    Can check and adjust in Mech-Vision

    Model_Number

    The ID of a parameter recipe in the Mech-Vision project, from 1 to 99

Example

MM_Switch_Model(2,2)

This example switches the parameter recipe used to No. 2 in Mech-Vision project No. 2.

Select Mech-Viz Branch

MM_Set_Branch(Branch_Num:IN,Export_Num:IN)

This subprogram is used to select along which branch the Mech-Viz project should proceed. Such branching is achieved by adding Branch by Msg Step(s) to the project. This subprogram specifies which exit port such Step(s) should take.

Note

  • MM_Start_Viz must be called BEFORE this subprogram.

  • When the next Step to be executed in Mech-Viz is a Branch by Msg Step, Mech-Viz will wait for this subprogram to send the exit port number it should take.

Parameters

  • IN parameters

    Name

    Description

    Branch_Num

    Step ID of the “Branch by Msg” Step, can be viewed in Mech-Viz

    Export_Num

    The number of the exit port to take + 1, from 1 to 99

    Example: To select exit port 0 in Mech-Viz, set the value of this parameter to 1.

Example

MM_Set_Branch(1,3)

This example tells Mech-Viz to take exit port 3 for the “Branch by Msg” Step whose Step ID is 1.

Set Move Index

MM_Set_Index(Skill_Num:IN,Index_Num:IN)

This subprogram sets the value for the Current Index parameter of Mech-Viz Steps. Steps that have this parameter include Move by List, Move by Grid, Custom Pallet Pattern, and Smart Pallet Pattern.

Note

  • MM_Start_Viz must be called BEFORE this subprogram.

Parameters

  • IN parameters

    Name

    Description

    Skill_Num

    Step ID of the Step, can be viewed in Mech-Viz

    Index_Num

    Value for the Current Index parameter when the Step is executed

Example

MM_Set_Index(2,10)

This example sets the Current Index value to 9 for the Step whose Step ID is 2. When the Step is executed, the Current Index value will be added 1 and become 10.

Get Software Status

MM_Get_Status(MM_Status:OUT)

This subprogram is currently capable of checking whether Mech-Vision is ready to run projects. In the future, this subprogram can be used for obtaining the execution status of Mech-Vision, Mech-Viz, and Mech-Center.

Parameter

  • OUT parameter

    Name

    Description

    MM_Status

    Variable for storing status code

    Status code 1101 indicates that Mech-Vision is ready to run projects. For other status codes, please see Status Codes and Troubleshooting.

Example

MM_Get_Status(Status)

This example obtains the status code and stores it in Status.

Input Object Dimensions to Mech-Vision

MM_Set_BoxSize(Job:IN,Lenght:IN,Width:IN,Height:IN)

This subprogram inputs object dimensions to the Mech-Vision project.

Note

  • This subprogram must be called BEFORE MM_Start_Vis.

  • The corresponding Mech-Vision project must contain the “Read Object Dimensions” Step, and the Read Sizes from Properties parameter of this step must be checked.

Parameters

  • IN parameters

    Name

    Description

    Job

    Mech-Vision Project ID, from 1 to 99

    Can check and adjust in Mech-Vision

    Lenght

    Length of object in mm

    Width

    Width of object in mm

    Height

    Height of object in mm

Example

MM_Set_BoxSize(1,500,300,200)

This example sets the object dimensions in the Read Object Dimensions Step in the Mech-Vision project No. 1 to 500*300*200 mm.

Get DO Signal List

MM_Get_DoList()
MM_Set_DoList()

These two subprograms obtain the planned DO Signal list for controlling multiple sections of a sectioned vacuum gripper and set the DOs accordingly.

Note

  • MM_Get_VizData must be called BEFORE this subprogram.

  • Please deploy the Mech-Viz project based on the template project in xxx\Mech-Mind Software Suite-x.x.x\Mech-Center\tool\viz_project\suction_zone, and set the suction cup configuration file in the Mech-Viz project.

Parameters

No parameters.

Example

MM_Get_DoList()
MM_Set_DoList()

These two examples obtain the DO signal list planned by Mech-Viz, store it in Do_Port[i], and input the values to the corresponding digital outputs.

Input TCP to Mech-Viz

MM_Set_Pos(Out_Pos:IN)

This subprogram inputs TCP data to the External Move Step.

Note

  • This subprogram must be called BEFORE MM_Start_Viz.

  • Please deploy the Mech-Viz project based on the template project in xxx\Mech-Mind Software Suite-x.x.x\Mech-Center\tool\viz_project\outer_move, and put the External Move Step at a proper position in the workflow.

Parameter

  • IN parameter

    Name

    Description

    Out_Pos

    Variable for storing the TCP data to be sent to Mech-Viz

Example

MM_Set_Pos(XP50)

This example sends the TCP data stored in XP50 to the External Move Step in the Mech-Viz project.

Calibration

MM_CALIB(Move_Type:IN,PosJps:IN,WaitTime:IN,E1:IN)

This subprogram is used for hand-eye calibration (camera extrinsic parameter calibration). It automates the calibration process in conjunction with the Camera Calibration function in Mech-Vision. For detailed instructions, see KUKA Calibration Program.

Parameters

  • IN parameters

    Name

    Description

    Move_Type

    Motion type, 1 or 2

    1: LIN 2: PTP

    PosJps

    Pose as flange pose or joint positions, 1 or 2

    1: flange pose 2: Joint positions

    WaitTime

    The time the robot waits to avoid shaking after it moves to the calibration point; the default value is 2 (s)

    E1

    Data of the external 7th axis in mm

Example

MM_Calib(2,1,2,0)

This example moves the robot in PTP type, receives pose data in the form of flange pose, and sets the wait time to 2 seconds to avoid the robot from shaking after it moves to the calibration point. This robot does not have an external axis installed.

Get Vision Result from Mech-Vision

MM_Get_Dy_Data(Job:IN,Pos_Num:OUT,MM_Status:OUT)

This subprogram is used for obtaining the vision result that includes custom port outputs from the corresponding Mech-Vision project. “Custom port outputs” refers to data output by ports other than poses and labels of the “Procedure Out” Step in Mech-Vision. The output ports can be customized if the Port Type parameter of the Step is set to “Custom”.

Note

  • MM_Start_Vis must be called BEFORE this subprogram.

  • If only poses and labels are needed (no custom output ports defined), use MM_Get_VisData to obtain the vision result instead.

Parameters

  • IN parameter

    Name

    Description

    Job

    Mech-Vision Project ID, from 1 to 99

    Can check and adjust in the Project List panel in Mech-Vision

  • OUT parameters

    Name

    Description

    Pos_Num

    Variable for storing the number of received vision points

    MM_Status

    Variable for storing status code. Please see Status Codes and Troubleshooting.

Example

MM_Get_Dy_Data(1,Pose_Num,Status)

This example obtains the vision result that includes custom port outputs from Mech-Vision project No. 1. The number of vision points received is stored in Pose_Num, and the status code is stored in Status.

Save Vision Point to Specified Variables

MM_Get_DyPose(Serial:IN,MM_P:OUT,MM_Label:OUT)

This subprogram stores the data in a vision point returned by Mech-Vision in the specified variables.

Note

This subprogram is called AFTER MM_Get_Dy_Data.

Parameters

  • IN parameter

    Name

    Description

    Serial

    Specify the index of the vision point to be stored

  • OUT parameters

    Name

    Description

    MM_P

    Variable for storing the pose in the specified vision point

    MM_Label

    Variable for storing the label in the specified vision point

    MM_UserData

    Predefined global variable for storing the custom port outputs in the specified vision point, max length is 50

Example

MM_Get_DyPose(1,XP1,Label)

This example stores the pose in the first received vision point to XP1, the corresponding label to Label, and the corresponding custom port outputs to MM_UserData.

Get Waypoint from Mech-Viz

MM_Get_PlanData(Jps_Pos:IN,Pos_Num:OUT,VisPos_Num:OUT,MM_Status:OUT)

This subprogram is used for obtaining the planned path from Mech-Viz. This subprogram can obtain all data output by Mech-Viz, including motion type, tool number, custom port outputs from Mech-Vision and depalletizing planning data.

“Custom port output” refers to data output by ports other than poses and labels of the “Procedure Out” Step in Mech-Vision. The output ports can be customized if the Port Type parameter of the Step is set to “Custom”.

“Depalletizing planning data” is explained below.

Note

  • MM_Start_Viz must be called BEFORE this subprogram.

  • If only poses, labels and velocities are needed, use MM_Get_VizData to obtain the planned path instead.

Parameters

  • IN parameters

    Name

    Description

    Jps_Pos

    Expected format of the returned data, see the following table for explanations

    The relationship between the value of Jps_Pos and the format of the returned data is summarized below.

    Jps_Pos value

    Format of returned data (Explained below)

    1

    Pose (joint positions), motion type, tool number, velocity, number of custom ports, custom port output, custom port output, … custom port output

    2

    Pose (TCP), motion type, tool number, velocity, number of custom ports, custom port output, custom port output, … custom port output

    3

    Pose (joint positions), motion type, tool number, velocity, depalletizing planning data, number of custom ports, custom port output, custom port output, … custom port output

    4

    Pose (TCP), motion type, tool number, velocity, depalletizing planning data, number of custom ports, custom port output, custom port output, … custom port output

    Pose

    The pose of the waypoint, as joint positions (in degree) or TCP, which is composed of Cartesian coordinates (XYZ in mm) and Euler angles (ABC in degree).

    Motion type

    • Value is 1: joint motion

    • Value is 2: linear motion

    Tool number

    The index number of the tool to be used at this waypoint. -1 means no tool is used.

    Velocity

    Velocity percentage of the waypoint, equals to the velocity setting in the corresponding move-type Step × the global velocity setting in Mech-Viz.

    Depalletizing planning data:

    Data used in planning multi-pick depalletizing tasks. These data are part of the waypoint of the “Vision Move” Step. The following data are included:

    • Label: composed of 10 integers, if fewer than 10 labels are obtained, the rest of the digits are filled with 0.

    • Number of picked workobjects

    • Number of workobjects to be picked this time

    • Edge-corner ID of vacuum gripper: can be checked by double-clicking the corresponding tool in Resources in Mech-Viz and then selecting Configure control logic.

    • TCP offset: The offset between the tool pose at the center of the to-pick workobjects and the actual tool pose.

    • Workobject orientation: whether the X-axis of the workobject reference frame is aligned with the X-axis of the tool reference frame (value: 0 or 1).

    • Dimensions of the workobjects combined

    Number of custom ports

    The number of output keys excluding poses and labels when the Port Type parameter of the “Procedure Out” Step in the Mech-Vision project is set to “Custom”.

    Custom port outputs

    The outputs excluding poses and labels when the Port Type parameter of the “Procedure Out” Step in the Mech-Vision project is set to “Custom”. These data are part of the waypoint of the “Vision Move” Step.

    The custom port outputs are arranged in alphabetical order of the custom port names.

Waypoints in a planned path can be divided into two types: those of the “Vision Move” Step and those of other move-type Steps.

  • All waypoints contain the following data: pose, motion type, tool number and velocity.

  • The waypoints of the “Vision Move” Step also contain depalletizing planning data.

  • If custom ports are defined for the “Procedure Out” Step in Mech-Vision, then the waypoints of the “Vision Move” Step also contain custom port outputs.

To obtain the depalletizing planning data, set Jps_Pos to 3 or 4; if the depalletizing planning data are not needed, set Jps_Pos to 1 or 2.

  • OUT parameters

    Name

    Description

    Pos_Num | Variable for storing the number of received waypoints

    VisPos_Num

    Variable for storing the position of the first Vision Move waypoint in the path

    Example path: Move_1, Move_2, Vision Move_3, Move_3, Vision Move_2 In this path, the position of the first Vision Move waypoint is 3. If the path does not contain Vision Move waypoint, the return value is 0.

    MM_Status

    Variable for storing status code. Please see Status Codes and Troubleshooting.

Example

MM_Get_PlanData (2,Pose_Num,VisPose_Num,Status)

This example obtains the planned path that includes custom port outputs from Mech-Viz, and the poses obtained are in the form of TCPs. The number of waypoints received is stored in Pose_Num, the position of the Vision Move waypoint is stored in VisPose_Num, and the status code is stored in Status.

Save Waypoint to Specified Variables

When Jps_Pos in MM_Get_PlanData equals to 1 or 3:

MM_Get_PlanJps(Serial:IN,Jps_Pos:IN,MM_J:OUT,MM_MoveType:OUT,MM_ToolNum:OUT,MM_Speed:OUT)

When Jps_Pos in MM_Get_PlanData equals to 2 or 4:

MM_Get_PlanPose(Serial:IN,Jps_Pos:IN,MM_P:OUT,MM_MoveType:OUT,MM_ToolNum:OUT,MM_Speed:OUT)

These subprograms store the data in a waypoint returned by Mech-Viz in the specified variables.

Note

These subprograms are called AFTER MM_Get_PlanData.

  • IN parameters

    Name

    Description

    Serial

    Specify the index of the waypoint to be stored

    Jps_Pos

    Expected format of the returned data, must be the same value as in MM_Get_PlanData

  • OUT parameters

    Name

    Description

    MM_J

    Variable for storing the joint positions in the specified waypoint

    MM_P

    Variable for storing the TCP in the specified waypoint

    MM_MoveType

    Variable for storing the motion type in the specified waypoint

    1: joint motion 2: linear motion

    MM_ToolNum

    Variable for storing the tool number in the specified waypoint, -1 means no tool is used

    MM_Speed

    Variable for storing the velocity in the specified waypoint

    MM_UserData

    Predefined global variable for storing the custom port outputs in the specified waypoint, max length is 50

    MM_Plan_Results

    Predefined global variable for storing the depalletizing planning data in the specified waypoint, max length is 20

Examples

MM_Get_PlanPose(1,4,XP1,MoveType,ToolNum,Pose_Speed)

This example stores the TCP in the first received waypoint to XP1, the corresponding motion type to MoveType, the corresponding tool number to ToolNum, the corresponding velocity to Pose_Speed, the corresponding custom port outputs to MM_UserData, and the corresponding depalletizing planning data to MM_Plan_Results.

MM_Get_PlanJps(1,3,JP1,MoveType,ToolNum,Pose_Speed)

This example stores the joint position in the first received waypoint to P1, the corresponding motion type to MoveType, the corresponding tool number to ToolNum, the corresponding velocity to Pose_Speed, the corresponding custom port outputs to MM_UserData, and the corresponding depalletizing planning data to MM_Plan_Results.

Get Result of Step “Path Planning” in Mech-Vision

MM_Get_VisPath(Job:IN,Jps_Pos:IN,Last_Data:OUT,Pos_Num:OUT,VisPos_Num:OUT,MM_Status:OUT)

This subprogram is for applications that use Mech-Vision but not Mech-Viz. It obtains the collision-free path planned by the “Path Planning” Step from the corresponding Mech-Vision project.

Note

  • MM_Start_Vis must be called BEFORE this subprogram.

  • The Port Type parameter of the “Procedure Out” Step in the Mech-Vision project must be set to “Predefined (robot path)”.

  • Input parameters

    Name

    Description

    Job

    Mech-Vision Project ID, from 1 to 99

    Can check and adjust in the Project List panel in Mech-Vision

    Jps_Pos

    Whether Mech-Vision should send poses as joint positions or TCPs, 1 or 2

    1: Mech-Vision sends joint positions 2: Mech-Vision sends TCPs

  • Output parameters

    Name

    Description

    Last_Data

    Variable, indicating whether all waypoints have been sent, 0 or 1

    0: NOT all waypoints have been sent (more on the way) 1: All waypoints have been sent

    Pos_Num

    Variable for storing the number of received waypoints

    VisPos_Num

    Variable for storing the position of the first Vision Move waypoint in the path

    Example path: Move_1, Move_2, Vision Move_3, Move_3, Vision Move_2 In this path, the position of the first Vision Move waypoint is 3. If the path does not contain Vision Move waypoint, the return value is 0.

    MM_Status

    Variable for storing status code. Please see Status Codes and Troubleshooting.

Example

MM_Get_VisPath(1,1,Last,Pose_Num,VisPos_Num,Status)

This example obtains the planned path from Mech-Vision project No. 1 in the form of joint positions. Whether all waypoints have been sent is stored in Last, the number of waypoints received is stored in Pose_Num, the position of the Vision Move waypoint is stored in VisPose_Num, and the status code is stored in Status.