Communication Configuration and Example Program Usage

You are currently viewing the documentation for the latest version (2.1.2). To access a different version, click the "Switch version" button located in the upper-right corner of the page.

■ If you are not sure which version of the product you are currently using, please feel free to contact Mech-Mind Technical Support.

This topic provides two methods on setting up the Standard Interface communication based on the EtherNet/IP protocol between an OMRON PLC and the Mech-Mind Vision System.

  • Use PCI-e card.

  • Configure the software. No card required.

  • When configuring the communication, do not mix the two methods. Choose only one method to complete the setup.

  • Software configuration has a longer response time compared to using the card. For projects requiring high cycle performance, it is recommended to use the PCI-e card.

    The table below compares the receiving time of two methods when the vision system sends the same vision points or waypoints. The times in the table are for reference only and may differ from the actual time consumption.

    Number of Vision Points or Waypoints Sent by the Vision System Software Configuration PCI-e Card

    1

    0.05 s

    0.04 s

    20

    1.4 s

    0.8 s

    100

    6.0 s

    2.5 s

Hardware and Software Requirements

The models and versions listed below are tested and can be used. For other models and versions, you may refer to this guide for operation. If any issues occur, please contact Mech-Mind Technical Support.

Hardware

If you configure the software to set up the EtherNet/IP communication, click this line to view the required hardware and hardware connection settings.
  • OMRON PLC:

    • CJ2H-CPU6x-EIP series; CJ2M-CPU3x series

    • Other models with a CJ1W-EIP21 or CS1W-EIP21 EtherNet/IP Unit

      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).
  • USB Type A Male to Type B Male cable

  • Power supply unit

  • IPC

  • Network switch and Ethernet cables

The hardware connection is as follows. Each device has a unique IP address, but all must be in the same subnet and not in use by other devices. For the IP address settings of the PLC, refer to the section below. For the IP address settings of the IPC and the computer with CX-Programmer installed, see this link.

hardware connection soft
If you use a PCI-e card to set up the EtherNet/IP communication, click this line to view the required hardware and hardware connection settings.
  • OMRON PLC:

    • CJ2H-CPU6x-EIP series; CJ2M-CPU3x series

    • Other models with a CJ1W-EIP21 or CS1W-EIP21 EtherNet/IP Unit

      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).
  • 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 the IPC or host computer

  • Network switch and Ethernet cables

The hardware connection is as follows. Each device has a unique IP address, but all must be in the same subnet and not in use by other devices. For the IP address settings of the PLC and communication card, refer to the section below. For the IP address settings of the IPC and the computer with CX-Programmer installed, see this link.

hardware connection

Software

If you configure the software to set up the EtherNet/IP communication, click this line to view the required software.
Software Description Installed Location

CX-Programmer 9.70

OMRON PLC programming software

Computer that is used for OMRON PLC programming

Mech-Vision & Mech-Viz versions: 2.0.0 or above

Software that provides the Mech-Mind Vision System

IPC

Please copy the example program file from the IPC to the PC with CX-Programmer installed.

  • Software EIP.eds file, which is used to provide the identity information of the IPC in the EtherNet/IP network.

    The Software EIP.eds file can be found in the Communication Component/Robot_Interface/EthernetIP/EDS path in the directory where Mech-Vision and Mech-Viz are installed.
  • PLC example program 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.
If you use a PCI-e card to set up the EtherNet/IP communication, click this line to view the required software.
Software Description Installed Location

CX-Programmer 9.70

OMRON PLC programming software

Computer that is used for OMRON PLC programming

Communication card driver software

IPC

Mech-Vision & Mech-Viz versions: 2.0.0 or above

Software that provides the Mech-Mind Vision System

IPC

Used for setting up the IP address of the PCIe card

IPC

Please copy the example program file from the IPC to the PC with CX-Programmer installed.

  • 005A002B003A0100.EDS file, which is used to provide the identity information of the IPC in the EtherNet/IP network.

    The 005A002B003A0100.EDS file can be found in the Communication Component/Robot_Interface/EthernetIP/EDS path in the directory where Mech-Vision and Mech-Viz are installed.
  • PLC example program 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.

Configure Communication

If you configure the software to set up the EtherNet/IP communication, click this line to view the detailed operations.
  1. Open Mech-Vision, and you may enter different interfaces. Create a new solution according to the instructions below.

    • If you have entered the Welcome interface, click New blank solution.

      create solution 1
    • If you have entered the main interface, click File  New Solution on the menu bar.

      create solution 2
    1. Click the Select robot dropdown, and choose either Listed robot or Custom robot according to the robot used in your project. Then click Next.

      • Listed robot: Suitable for most robots. Click Select robot model to choose the specific robot model.

      • Custom robot: Suitable for gantry robots or robots not included in the listed robot category. Robot Euler angle convention and robot coordinate system need to be selected.

  2. In the Robot Communication Configuration window, complete the following configurations.

    1. 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.

    2. In the Communication mode section, set Interface service type to Standard Interface, set Protocol to ETHERNET IP (Software), and set Network Adapters and IP Address to the network adapter and IP address used by the IPC.

    3. (Optional) Select Auto enable interface service when opening the solution.

    4. Click Apply.

      ethernet ip software
  3. On the main interface of Mech-Vision, make sure that the Robot Communication Configuration switch on the toolbar is flipped and has turned blue.

    interface service
If you use a PCI-e card to set up the EtherNet/IP communication, click this line to view the detailed operations.

Check PCI-e Card and Driver Software

  1. 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.

    install communication board
  2. Start the IPC, go to Start ‣ Device Manager and check if the driver software VCI4 INpact PCIe has been installed.

    device manager

Set up “Robot Communication Configuration”

  1. Open Mech-Vision, and you may enter different interfaces. Create a new solution according to the instructions below.

    • If you have entered the Welcome interface, click New blank solution.

      create solution 1
    • If you have entered the main interface, click File  New Solution on the menu bar.

      create solution 2
  2. Click Robot Communication Configuration on the toolbar of Mech-Vision.

  3. In the Robot Communication Configuration window, complete the following configurations.

    1. Click the Select robot dropdown, and choose either Listed robot or Custom robot according to the robot used in your project. Then click Next.

      • Listed robot: Suitable for most robots. Click Select robot model to choose the specific robot model.

      • Custom robot: Suitable for gantry robots or robots not included in the listed robot category. Robot Euler angle convention and robot coordinate system need to be selected.

    2. In the Communication mode area, select Standard Interface for Interface service type and select ETHERNET IP for Protocol.

    3. (Optional) Select Auto enable interface service when opening the solution.

    4. Click Apply.

      ethernet ip
  4. On the main interface of Mech-Vision, make sure that the Robot Communication Configuration switch on the toolbar is flipped and turned to blue.

    interface service

Configure IP address of the PCI-e Card

Ensure the interface service has been enabled before proceeding with the following operations.
  1. 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.
  2. 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.

    set ip

Create and Configure the PLC Project

Create PLC Project

  1. 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.

    create plc 1
  2. 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.

    create plc 2
  3. Click Connect in the menu bar, and then select Yes in the pop-up window to connect to the PLC.

    create plc 3
  4. Click Program in the menu bar. Make sure that there aren’t any problems if the PLC is stopped, and then select Yes.

    create plc 4
    create plc 5
  5. Select IO Table and Unit Setup  Open in the project workspace to open the PLC IO Table.

    create plc 6
  6. 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.

    create plc 7
  7. After transferring the parameters successfully, click Close.

    create plc 8
  8. 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.

    create plc 9
    create plc 10

Install EDS File and Configure Communication

If you configure the software to set up the EtherNet/IP communication, click this line to view the detailed operations.
  1. In the PLC IO Table, right-click on CJ2B-EIP21  Start Special Application  Start with Settings Inherited.

    eds file 1
  2. Select Network Configurator in the pop-up window, and click OK to open the Untitled - Network Configurator window.

    eds file 14
  3. In the Untitled - Network Configurator window, click Install EDS in the menu bar, and an Install EDS File file will pop up.

    eds file 2
  4. Locate and select the Software EIP.eds file and click Open.

    The EDS file is stored in the IPC. The Software EIP.eds file can be found in the Communication Component/Robot_Interface/EthernetIP/EDS path in the directory where Mech-Vision and Mech-Viz are installed. Copy the EDS folder and paste it to the PC with CX-Programmer installed. Then click Open to find the folder.

    eds file software 3

    If the following window pops up, click Yes to install the icon.

    eds file software 3 2

    In the pop-up window, select the corresponding icon file and click Open.

    The icon file is located in the same folder as the above EDS file.

    eds file software 3 3
  5. In the Untitled - Network Configurator window, expand EtherNet/IP Hardware/Vendor/Mech-Mind Robotics Technologies Ltd./Generic Device, right-click Mech-Mind Standard Interface, and click Add to Network.

    eds file software 4
  6. Then go to EtherNet/IP Hardware/Vendor/OMRON Corporation/Communications Adapter/CJ2B-EIP21. Right-click on Rev 3 and click Add to Network in the context menu.

    eds file software 5
  7. In EtherNet/IP_1 window, modify the IP address as follows.

    1. Right-click Mech-Mind device icon, select Change Node Address in the context menu, and then modify the IP address of the visual device.

      The IP address here must be consistent with the IP address selected under Network Adapters and IP Address in the robot communication configuration settings in Mech-Vision.

      eds file software 6 1
      eds file 15
    2. Right-click the CJ2B-EIP21 device icon, select Change Node Address in the context menu, and modify the IP address of the PLC master. The IP address here must be the same as the one set in the IO Table.

      The IP addresses of the two devices in the figure must be in the same subnet.
      eds file software 6
      eds file 16
  8. In EtherNet/IP_1 window, right-click the Mech-Mind device icon, and click Property.

    eds file software 7
  9. In the Property window, click I/O Information to check the I/O size, and then click Close.

    eds file software 8
  10. 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.

    eds file 9
  11. In the Edit Device Parameters window, select the Mech-Mind Standard Interface device, click Move Down, and double-click the device in the Register Device List window to open the Edit Connection window.

    eds file software 10
  12. A Edit Connection window showing Input and Output will appear. Configure the tag sets as shown below. Click Regist and Close to close the window.

    eds file software 11
  13. Now the tag sets will appear in the Register Device List, then click OK.

    eds file software 12
  14. After the IPC is connected, a small arrow will appear as shown below.

    eds file software 13
If you use a PCI-e card to set up the EtherNet/IP communication, click this line to view the detailed operations.
  1. In the PLC IO Table, right-click on CJ2B-EIP21  Start Special Application  Start with Settings Inherited.

    eds file 1
  2. Select Network Configurator in the pop-up window, and click OK to open the Untitled - Network Configurator window.

    eds file 14
  3. In the Untitled - Network Configurator window, click Install EDS in the menu bar, and an Install EDS File file will pop up.

    eds file 2
  4. Locate and select the 005A002B003A0100.EDS file and click Open.

    The EDS file is stored in the IPC. The 005A002B003A0100.EDS file can be found in the Communication Component/Robot_Interface/EthernetIP/EDS path in the directory where Mech-Vision and Mech-Viz are installed. Copy the EDS folder and paste it to the PC with CX-Programmer installed. Then click Open to find the folder.

    eds file 3
  5. 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(TM) and click Add to Network in the context menu.

    eds file 4
  6. Then go to EtherNet/IP Hardware/Vendor/OMRON Corporation/Communications Adapter/CJ2B-EIP21. Right-click on Rev 3 and click Add to Network in the context menu.

    eds file 5
  7. In EtherNet/IP_1 window, modify the IP address as follows.

    1. Right-click Mech-Mind device icon, select Change Node Address in the context menu, and then modify the IP address of the visual device.

      The IP address here must be consistent with the IP address set in HMS IPconfig.

      eds file 6 1
      eds file 15
    2. Right-click the CJ2B-EIP21 device icon, select Change Node Address in the context menu, and modify the IP address of the PLC master. The IP address here must be the same as the one set in the IO Table.

      The IP addresses of the two devices in the figure must be in the same subnet.
      eds file 6
      eds file 16
  8. In EtherNet/IP_1 window, right-click the Mech-Mind device icon, and click Property.

    eds file 7
  9. In the Property window, click I/O Information to check the I/O size, and then click Close.

    eds file 8
  10. 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.

    eds file 9
  11. In the Edit Device Parameters window, select the Ixxat INpact EtherNet/IP(TM) device, click Move Down, and double-click the device in the Register Device List window to open the Edit Connection window.

    eds file 10
  12. A Edit Connection window showing Input and Output will appear. Configure the tag sets as shown below. Click Regist and Close to close the window.

    eds file 11
  13. Now the tag sets will appear in the Register Device List, then click OK.

    eds file 12
  14. After the IPC is connected, a small arrow will appear as shown below.

    eds file 13

Download Hardware Configuration to PLC

If you configure the software to set up the EtherNet/IP communication, click this line to view the detailed operations.
  1. 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.

    download configuration software 1
  2. In the Select Connect Network Port window, expand BackPlane/#0 CJ2B-EIP21/TCP:2, and click OK.

    download configuration 2
  3. A Select Connected Network window will appear. Select Use the existing network, choose EtherNet/IP_1, and click OK.

    download configuration 3
  4. In the Network Configurator window, click Download to Network and select Yes to start downloading parameters.

    download configuration software 4
  5. After the download is completed, click OK.

    download configuration 5
If you use a PCI-e card to set up the EtherNet/IP communication, click this line to view the detailed operations.
  1. 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.

    download configuration 1
  2. In the Select Connect Network Port window, expand BackPlane/#0 CJ2B-EIP21/TCP:2, and click OK.

    download configuration 2
  3. A Select Connected Network window will appear. Select Use the existing network, choose EtherNet/IP_1, and click OK.

    download configuration 3
  4. In the Network Configurator window, click Download to Network and select Yes to start downloading parameters.

    download configuration 4
  5. After the download is completed, click OK.

    download configuration 5

Check Communication

  1. In the Untitled-Network Configurator window, go to Device  Monitor.

    establish communication 1
  2. A Monitor Device window will appear. Click Connection. If the connection is successful, the status indicator will be blue.

    establish communication 2
  3. 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:

    1. If the hardware is properly connected;

    2. If the Interface Service has been enabled successfully in Mech-Vision;

    3. 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

  1. Open CX-Programmer, right-click MM_Camera_CX[CJ2H] Offline and select Transfer ‣ From File.

    import file 1
  2. 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.

    import file 2
    import file 3
  3. Select OK in the pop-up window to load the example program.

    import file 4

Download PLC Program to PLC

  1. Right-click MM_Camera_CX[CJ2H] Offline and select Work Online in the context menu to switch the project to monitor mode.

    build plc 1
  2. Right-click MM_Camera_CX[CJ2H] Monitor Mode and select Transfer  To PLC.

    build plc 2
  3. Click OK in the Download Options window.

    build plc 3
  4. Click Yes if the safety of connected devices can be ensured. Click OK after downloading the program successfully.

    build plc 4
    build plc 5

Test with Mech-Vision/Mech-Viz Project

This section introduces how to use the example program FB 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

  1. Return to Mech-Vision and create a Mech-Vision project. 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.

  2. Create 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.

    preparation 4

Run Mech-Vision Project and Obtain Vision Points

Configure Programs

  1. 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.

    test vision 1
  2. 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.

  3. 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.

    test vision 2

Trigger Mech-Vision Project to Run

  1. 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.

    test vision 3
  2. 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.

    test vision 4
    test vision 5

Obtain Vision Points from Mech-Vision

  1. 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.

    test vision 6
    test vision 7
  2. 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.).

    test vision 8

Automate the Process of Getting Vision Result from Mech-Vision

The previous section introduces how to manually obtain the vision result from Mech-Vision. To automate the process of obtaining the vision result from Mech-Vision, connect the programs as the following example.

get vis results automatically 1
get vis results automatically 2
get vis results automatically 3
get vis results automatically 4

Obtain Planned Path from Mech-Viz

Configure Programs

  1. 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.

    test viz 1
    test viz 2
  2. 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.

    test viz 3
  3. Set the value of Request_Pose_Type to 1. This asks Mech-Viz to send joint positions (instead of TCP data).

    test viz 4

Trigger Mech-Viz Project to Run

  1. 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.

    test viz 5
  2. 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.

    test viz 6

Set Mech-Viz Branch Exit Port

  1. 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.

    test viz 7
  2. 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.

    test viz 8

Obtain Planned Path from Mech-Viz

  1. 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.

    test viz 9
  2. 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 joint positions have been obtained. The JPs are stored in TargetPose.

    test viz 10
  3. 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.

    test viz 11

Automate the Process of Getting Planned Path from Mech-Viz

The previous section introduces how to manually obtain the planned path from Mech-Viz. To automate the process of obtaining the planned path from Mech-Viz, connect the programs as the following example.

get viz results automatically 1
get viz results automatically 2
get viz results automatically 3
get viz results automatically 4
get viz results automatically 5
get viz results automatically 6

Is this page helpful?

You can give a feedback in any of the following ways:

We Value Your Privacy

We use cookies to provide you with the best possible experience on our website. By continuing to use the site, you acknowledge that you agree to the use of cookies. If you decline, a single cookie will be used to ensure you're not tracked or remembered when you visit this website.