Example program 2: MM_S2_Viz_Basic
Program Introduction
Description |
The robot triggers the Mech-Viz project to run, and then obtains the planned path for picking and placing. |
File Name |
You can navigate to the installation directory of Mech-Vision and Mech-Viz and find the file by using the |
Project |
Mech-Vision and Mech-Viz projects |
Prerequisites |
|
| This example program is provided for reference only. Before using the program, please modify the program according to the actual scenario. |
Program Description
This part describes the MM_S2_Viz_Basic example program.
1. MJOINT(POINTC(264.2282,-217.9533,359.1164,-83.989165,1.303953,176.0864,CFG1,0,0,1), v100perc, fine, tool0);
2. MM_Init_Socket(1);
3. CALL: MM_Open_Socket();
4. CALL: MM_Status := MM_Set_Branch(1, 1);
5. CALL: MM_Status := MM_Start_Viz(1, MM_J);
6. CALL: MM_Status, MM_LastData, MM_POS_NUM, MM_VisPosNum := MM_Get_VizData(1);
7. IF MM_Status <> 2100 THEN
8. STOPPROG;
9. END_IF;
10. CALL: MM_JPS[1], MM_Label[1], MM_Tool[1] := MM_GET_JPS(1);
11. CALL: MM_JPS[2], MM_Label[2], MM_Tool[2] := MM_GET_JPS(2);
12. CALL: MM_JPS[3], MM_Label[3], MM_Tool[3] := MM_GET_JPS(3);
13. CALL: MM_JPS[4], MM_Label[4], MM_Tool[4] := MM_GET_JPS(4);
14. CALL: MM_JPS[5], MM_Label[5], MM_Tool[5] := MM_GET_JPS(5);
15. MJOINT(MM_JPS[1], v500, fine, tool0);
16. MJOINT(MM_JPS[2], v500, fine, tool0);
17. MJOINT(MM_JPS[3], v500, fine, tool0);
18. MJOINT(MM_JPS[4], v500, fine, tool0);
19. MJOINT(MM_JPS[5], v500, fine, tool0);
20. CALL: MM_Close_Socket();
The table below explains the above example program. You can click the hyperlink to the command name to view its detailed description.
| Feature | Code and description | ||
|---|---|---|---|
Move to the image-capturing position |
The entire statement indicates that the robot moves to the taught image-capturing position by using joint position movement. |
||
Initialize communication parameters |
The robot uses the MM_Init_Socket instruction to set the socket number for communication with the IPC.
|
||
Establish the communication |
The TCP communication between the robot and the vision system is established by using the MM_Open_Socket command. |
||
Set the Exit Port for the Branch by Msg Step in Mech-Viz |
In the entire statement, the Mech-Viz project with an ID of 1 takes the port 0 of the Branch by Msg Step, as shown in the following figure.
|
||
Trigger the Mech-Viz project to run |
The entire command indicates that the robot triggers the vision system to run the Mech-Viz project, and then Mech-Viz plans the robot’s picking path base on the vision result output by Mech-Vision. |
||
Get the planned path |
The entire statement indicates that the robot obtains the planned path from the Mech-Viz project.
When the status code MM_Status is 2100, the robot has successfully obtained the planned path. Otherwise, an error has occurred in the vision system. You can perform the corresponding operation based on the specific error code. |
||
Store the planned path |
The entire command “CALL: MM_JPS[1], MM_Label[1], MM_Tool[1] := MM_GET_JPS(1);” stores the joint positions, label, and tool ID of the first waypoint in the specified variables.
|
||
Move to each waypoint in the planned path |
The robot sequentially moves to each waypoint using joint position movement. |
||
Close the communication |
The TCP communication between the robot and the vision system is closed by using the MM_Close_Socket command. |