EtherNet/IP–OMRON PLC Setup Instructions
This topic provides instructions on setting up the Standard Interface communication based on the EtherNet/IP protocol between an OMRON PLC and the Mech-Mind Vision System.
Hardware and Software Requirements
Hardware
-
OMRON PLC:
-
CJ2H-CPU6[]-EIP series; CJ2M-CPU3[] series
-
Other models with a CJ1W-EIP21 or CS1W-EIP21 EtherNet/IP Unit
-
-
USB Type A Male to Type B Male cable
-
Power supply unit
-
HMS IXXAT INpact EIP Slave PCIe interface card installed on the IPC in Mech-Mind Vision System
-
Network switch and Ethernet cables
An CJ2H CPU65-EIP model and CJ1W-PA205R power supply unit are used in the example below. The UNIT NO. is set to 0, and the NODE No. is set to 15 (in HEX; 21 in the decimal numeral system). |
The connection of the hardware system is shown as below.
Software
-
CX-Programmer V9.70
-
Mech-Vision & Mech-Viz versions: 1.7.0 or above
-
VCI V4 (driver software for HMS IXXAT INpact 40 interface card)
-
Mech-Mind EDS file name: 005A002B003A0100.EDS; Location:
Communication Component/Robot_Interface/EthernetIP
in the installation directory where Mech-Vision and Mech-Viz are installed -
PLC routine files:
-
AUTOEXEC.OBJ
-
PROGRAMS.IDX
-
SYMBOLS.SYM
-
COMMENTS.CMT
The files are stored in
Communication Component/Robot_Interface/EthernetIP/Programming Samples/Omron CX-Programmer CJ2H PLC EthernetIP
in the installation directory where Mech-Vision and Mech-Viz are installed. Please copy and paste all files to the computer with CX-Programmer installed. -
Configure IPC and Initiate Communication
Check PCI-e Card and Driver Software
-
Please make sure that the INpact EIP Slave PCIe interface card has been pressed into the PCI-e slot of the IPC, as shown below.
-
Start the IPC, go to Start ‣ Device Manager and check if the driver software VCI4 INpact PCIe has been installed.
Set up “Robot Communication Configuration”
-
Click Robot Communication Configuration on the toolbar of Mech-Vision.
-
In the Robot Communication Configuration window, complete the following configurations.
-
Click the Select robot drop-down menu, and select Listed robot. Click Select robot model, and select the robot model that you use. Then, click Next.
-
In the Communication mode area, select Standard Interface for Interface service type and select ETHERNET IP for Protocol.
-
(Optional) Select Auto enable interface service when opening the solution.
-
Click Apply.
-
-
On the main interface of Mech-Vision, make sure that the Robot Communication Configuration switch on the toolbar is flipped and turned to blue.
Configure IP address of the PCI-e Card
-
Download and install HMS IPconfig software on the IPC first. Use an Ethernet cable to connect the network ports of the IPC and the INpact EIP Slave PCIe.
After configuring the IP and initiating communication successfully, the Ethernet cable used here can be removed. -
Open HMS IPconfig, click to scan and select Ixxat INpact EtherNet/IP(TM). Then uncheck Retrieve IP settings dynamically from a DHCP server and enter the IP address and subnet mask, as shown below. The IP address should be the same as what is configured in the PLC. After configuration, click Apply.
Install EDS File and Configure Communication
Create PLC Project
-
Open the CX-Programmer software, click New in the menu bar and then a Change PLC window will pop up. Select the Device Type according to the model in use, and then click Settings. Select the CPU type in the pop-up Device Type Settings window. Click OK to save the changes.
-
Click Save in the menu bar, a Save CX-Programmer File window will pop up. Select a folder to save the project file, name the file, and then click Save.
-
Click Connect in the menu bar, and then select Yes in the pop-up window to connect to the PLC.
-
Click Program in the menu bar. Make sure that there aren’t any problems if the PLC is stopped, and then select Yes.
-
Select
in the project workspace to open the PLC IO Table. -
In the PLC IO Table, go to Built-in Port/Inner Board (The instructions in this step is based on a specific model of PLC. Please configure according to the actual PLC model you are using.). Double-click CJ2B-EIP21 and select TCP/IP in the CJ2B-EIP21 Edit Parameters window, enter the IP address (The last number of the IP address should be the same as the NODE No. set on the PLC.) and subnet mask. Then click Transfer[PC to Unit]. Select Yes in the pop-up window to transfer parameters.
-
After transferring the parameters successfully, click Close.
-
Select Yes to restart the unit, and click OK in the pop-up window. Go back to the CJ2B-EIP21 Edit Parameters window and click OK to complete configuration.
Install EDS File and Configure Network
-
In the PLC IO Table, right click on
. -
Select Network Configurator in the pop-up window, and click OK to open the Untitled - Network Configurator window.
-
In the Untitled - Network Configurator window, click Install EDS in the menu bar, and an Install EDS File file will pop up.
-
Locate and select the EDS file and click Open.
The EDS file is stored in the Mech-Mind IPC. Location: Communication Component/Robot_Interface/EthernetIP
in the installation directory where Mech-Vision and Mech-Viz are installed Copy theEthernetIP
folder and paste it to the PC with CX-Programmer installed. Then click Open to find the folder. -
In the Untitled - Network Configurator panel, go to EtherNet ‣ IP HardWare ‣ Vendor ‣ HMS Industrial Networks AB ‣ Generic Device. Right click on Ixxat INpact EtherNet/IP™ and select Add to Network in the context menu.
-
Then go to EtherNet/IP Hardware ‣ Vendor ‣ OMRON Corporation ‣ Communications Adapter ‣ CJ2B-EIP21. Right click on Rev 3 and select Add to Network in the context menu.
-
In EtherNet/IP_1 window, right click Mech-Mind visual device icon, select Change Node Address in the context menu, and then configure the IP address to 192.168.1.10. Right click the CJ2B-EIP21 device icon, select Change Node Address in the context menu, and then configure the IP address to 192.168.1.21.
-
In EtherNet/IP_1 window, right click the visual device icon, and select Property.
-
In the Property window, click I/O Information to check the I/O size, and then click Close.
-
In EtherNet/IP_1 window, double click the CJ2B-EIP21 icon. Select Tag Sets in the pop-up Edit Device Parameters window, and then click Edit Tags. Select In-Consume, and click New. Then edit the tag according to actual situation. Click Regist and Close. Select Out-Produce and edit the tag in the same way. Click OK in the Edit Tags window in the end.
-
Select Ixxat INpact EtherNet/IP(TM) in the Unregister Device List, click the icon to move down. Then double click Ixxat INpact EtherNet/IP™ in the Register Device List.
-
A Ixxat INpact EtherNet/IP™ Edit Connection window showing Input and Output will appear. Configure the tag sets as shown below. Click Regist and Close to close the window.
-
Now the tag sets will appear in the Register Device List, then click OK.
-
After the IPC is connected, a small arrow will appear as shown below:
Download Hardware Configuration to PLC
-
Click Connect in the Network Configurator window. Then select OK in the pop-up Setup Interface window. Now you can see a Select Connect Network Port window.
-
In the Select Connect Network Port window, Select BackPlane‣ #0 CJ2B-EIP21‣TCP:2, and then click OK. Select Using the existing network‣ EtherN IP_1 in the Select Connected Network window and click OK.
-
Click Download to Network in the Network Configurator window, and select Yes to start downloading parameters.
-
After the download is completed, click OK.
Check Communication
-
In the Untitled-Network Configurator window, go to
. -
A Monitor Device window will appear. Click Connection. If the connection is successful, the status indicator will be blue.
-
The PLC is successfully connected if the following message is displayed in the Console tab of Mech-Vision Log panel: Connect to ETHERNET IP controller successfully. If you don’t see this log message, please check:
-
If the hardware is properly connected;
-
If the Interface Service has been started successfully in Mech-Vision;
-
If the hardware configuration has been downloaded to the PLC.
-
Import Example Program and Download to PLC
Before you add the example program to a project already in use, it is recommended to import it to a new project and test it first. In the following steps, the project created earlier is used to import and test the example program. |
Import Mech-Mind Example Programs
-
Open CX-Programmer, right click MM_Camera_CX[CJ2H] Offline and select Transfer ‣ From File.
-
Check Programs, Program Index, Symbols and Program comments. Then click … next to the File name under Programs, select the OBJ file, and click Open. If other files are stored in the same folder, they will be auto filled. Click OK in the end.
-
Select OK in the pop-up window to load the example program.
Download PLC Program to PLC
-
Right click MM_Camera_CX[CJ2H] Offline and select Work Online in the context menu to switch the project to monitor mode.
-
Right click MM_Camera_CX[CJ2H] Monitor Mode and select
. -
Click OK in the Download Options window.
-
Click Yes if the safety of connected devices can be ensured. Click OK after downloading the program successfully.
Test with Mech-Vision/Mech-Viz Project
This section introduces how to use the example program function block to trigger the Mech-Vision project to obtain vision points and trigger the Mech-Viz project to obtain the planned path. For detailed information on the I/O units, please refer to EtherNet/IP - Omron PLC Commands.
Prerequisites
-
Mech-Vision project(s): Right-click the solution and select Autoload Solution. Projects in the solution are also autoloaded. Meanwhile, the project number will show up before each project name.
-
Mech-Viz project: Right-click the project name in Resources of Mech-Viz and select Autoload Project.
The Mech-Viz project used for testing should contain a “Branch by Msg” Step that has been renamed to 1 as shown below.
Run Mech-Vision Project and Obtain Vision Points
Parameter Settings
-
Open CX-Programmer, go to Programs ‣ NewProgram1(00) Running, double click CameraTest, and set the condition flag of ToCamera.COM_ENABLE to be Always ON.
-
Set the Mech-Vision project ID according to the displayed number in the Project List panel in Mech-Vision. Set the value of VISION_PROJ_NUM to 1, then project No.1 in Mech-Vision will be started.
-
Set the number of vision points to be sent by Mech-Vision project. Set the value of REQ_POSE_NUM to 0, which means the Mech-Vision project will send all the vision points.
Start Mech-Vision Project
-
Double click the input variable Start_Vis of the FB MM_Start_Vis. Set the value to 1 in the Set New Value window and then click Set to start Mech-Vision project and trigger the camera to capture images. Then reset the value to 0.
-
Click Toggle Watch Window button, locate FromCamera.STATUS_CODE in the Name column, and then check its value. 1102 represents that the project was started successfully. Otherwise, the corresponding error code will be returned. Please refer to Status Codes and Troubleshooting for troubleshooting.
Obtain Vision Points from Mech-Vision
-
After the status code 1102 is returned, double click the input variable Get_VisData of the FB MM_Get_VisData. Set the value to 1 in the Set New Value window and then click Set to obtain vision points. Then reset the value to 0. The result is shown below. The value of SendPoseNum is 3, which means 3 vision points were obtained.
-
Double click Memory in the project workspace, and a PLC Memory window will appear. Double click D, set the Start to 10000, click decimal, 2w to set the data format as signed decimal and double word, and then click monitor to start monitoring (This example received 3 poses. Divide the transferred values by 10000 to obtain the actual pose data.).
Run Mech-Viz Project and Obtain Planned Path
Parameter Settings
-
Open CX-Programmer, double click input variable Start_Empty of the FB MM_Get_VisData. Set the value to 1 in the Set New Value window and then click Set to clear the previously obtained vision data. Then reset the value to 0.
-
Set the value of Branch_Name and Branch_Exit_Port to 1 respectively, the Mech-Viz project will proceed along exit port 1 of Step 1.
-
Set the value of Request_Pose_Type to 1. This asks Mech-Viz to send joint positions (instead of TCP data).
Start Mech-Viz Project
-
Double click the input variable Start_Viz of the FB MM_Start_Viz, set the value to 1 in the Set New Value window to start Mech-Viz project and then reset it to 0.
-
Check the value returned by the variable FromCamera.STATUS_CODE. 2103 represents that the project was started successfully. Otherwise, the corresponding error code will be returned. Please refer to Status Codes and Troubleshooting for troubleshooting.
Select Branch in the Mech-Viz Project
-
Double click the input variable Set_Branch of the FB MM_Set_Branch, set the value to 1 in the Set New Value window to select branch in the Mech-Viz project and then reset it to 0.
-
Check the value returned by the variable FromCamera.STATUS_CODE. 2105 represents that the branch was selected successfully. Otherwise, the corresponding error code will be returned. Please refer to Status Codes and Troubleshooting for troubleshooting.
Obtain Mech-Viz Planned Path
-
Double click the input variable Get_VizData of the FB MM_Get_VizData, set the value to 1 in the Set New Value window to obtain planned path from Mech-Viz project and then reset it to 0.
-
Check the value returned by the variable FromCamera.STATUS_CODE. 2100 represents that planned path was obtained successfully. Otherwise, the corresponding error code will be returned. Please refer to Status Codes and Troubleshooting for troubleshooting. The result is shown in the figure. The value of SendPoseNum is 10, which means that 10 robot poses in JPs have been obtained. The JPs are stored in TargetPose.
-
Go back to PLC Memory window, the 10 poses are shown below. Please divide the transferred values by 10000 to obtain the actual pose data.