Denso Robotics

Interface for Denso Wave robots

Overview

The Denso Robot Interface in realvirtual.io facilitates the connection between real and virtual robot controllers, enabling both Hardware in the Loop (HIL) and Virtual Robot Controller (VRC) functionalities. This interface ensures synchronization between the robot controller and realvirtual.io for key parameters, including Axis Positions, boolean, integer, float, position (p), and string signals.

Prerequisites

To use the Denso interface, ensure the following prerequisites are met:

  1. Wincaps III Software: Install the Wincaps III software on your computer.

  2. License Keys: Obtain valid license keys for Wincaps, VRC, and ORiN2 SDK.

  3. bCapConfig.exe: Start bCapConfig.exe on your computer to enable communication between Wincaps III or a real robot and realvirtual.io.

For detailed installation instructions, refer to the documentation here: https://github.com/DENSORobot/denso_robot_ros2#simulated-environment-with-wincaps-iii

Interface setup

  1. Placement: Position the interface on top of the robot.

  2. Hierarchy: Under the interface, create a game object hierarchy containing the robot and its attached drives. A demonstration model, including the robot VS068, is available at Assets/realvirtual/Interfaces/Denso/Denso.unity.

  3. Axis Assignment: Assign all axis at RobotAxis. Use the "Get Robot Drives" button for automatic assignment.

  4. Select Controller Type: Choose the appropriate robot controller type by selecting either RC8 or RC9 in the "RobotController Type" setting.

  5. Set Robot Controller IP Address: Specify the IP address of the robot controller. Use "localhost" or "127.0.0.1" when connecting to the virtual robot controller Wincaps III.

  6. Select Wincaps Project: Enter the path or click the "Select Project" button to choose the Wincaps project associated with your Denso robot.

  7. Select the Robot Flange by dragging and dropping the Flange to the property field "Robot Flange"

Connecting the robot controller

Before initiating the simulation, you have the option to connect to the robot controller, providing access to additional information regarding Safety Areas, Tool, and Work Coordinate Systems. Follow these steps:

  1. Connection Setup:

    • Click the "Connect" button to establish a connection with the robot controller.

  2. Connection Confirmation:

    • In the console log, a successful connection is indicated. Look for confirmation messages ensuring the successful establishment of the connection.

  3. Access to Additional Information:

    • Once connected, the model can display supplementary information such as Safety Areas, Work Coordinates, and Tool configurations.

Ensure that the connection process is successful by monitoring the console log for confirmation messages

Connecting Input and Output Signals

To establish connections between input and output signals, follow these steps by creating signals manually as child objects under the Denso Interface:

  1. Access QuickEdit Overlay Menu:

    • Open the QuickEdit Overlay Menu, which provides a streamlined interface for adding signals.

  2. Create Signal Gameobject:

    • Using the QuickEdit menu, add a new signal by creating a GameObject under the Denso Interface.

  3. Signal Naming Convention:

    • While you can give the GameObject any name, it's crucial to name the Signal itself with the corresponding number of the Input. This applies to all variable types, including E/A, Type P, Type I, Type F, and Type S.

Now connect signals with various behavior models in your realvirtual.io simulation model, such as Sensors, Drives, Logic Steps, and more.

Syncing P-Variables

P Variables, akin to I (Integer), F (Float), and S (String) variables, represent positions in the coordinate system of the robot, applicable within the robot program. In Wincaps, P values serve as both inputs and outputs simultaneously, while realvirtual.io strictly separates inputs and outputs.

To bridge this gap, you can define a PLCOutputTransform for transferring P values from Wincaps to realvirtual.io during simulation. Similarly, a PLCInputTransform facilitates the transfer of P values from realvirtual.io to Wincaps. This proves particularly useful for displaying robot points in Unity.

To add a P variable:

  1. Manually add an empty GameObject.

  2. Attach a PLCOutputTransform or PLCInputTransform to this GameObject.

  3. In the Name field of the Signal, specify the number of the variable, similar to other signals.

During edit mode, you can efficiently synchronize all P variables, regardless of their type (PLCOutputTransform or PLCInputTransform), between the robot and realvirtual.io. This synchronization can be initiated by clicking the corresponding buttons:

  • Sync all Transforms from Robot:

    • Utilize this button to sync all P variables from the robot to realvirtual.io during the editing phase.

  • Sync all Transforms to Robot:

    • Alternatively, use this button to sync all P variables from realvirtual.io to the robot during editing.

Starting simulation

To initiate the simulation in Wincaps III, click the designated "Start Simulation Mode" button. Additionally, launch the robot program by selecting the corresponding button.

After this you can start the Unity simulation.

Last updated