DocumentationSimulation to a Real Robot › UR3

Universal Robots UR3

Send a trajectory simulated in BabaCAD Robotics Web to a real UR3 · CB-series (CB3) controller

download

Download

Each package contains the bridge app, the BRW plugin (folder brw-plugin) and README.txt. The Windows and Mac packages include Node.js, so after unzipping there is nothing to install.

ZipSizeForStart with
BRW-UR-Bridge-win-x64.zip35.1 MBWindows 10 / 11 (64-bit)double-click start-bridge.bat
BRW-UR-Bridge-mac-arm64.zip39.4 MBMac with Apple silicon (M1 and newer)double-click start-bridge.command
BRW-UR-Bridge-mac-x64.zip40.7 MBMac with Intel processordouble-click start-bridge.command
BRW-UR-Bridge-no-node.zip33 KBany computer with Node.js 18 or newerstart-bridge.bat, start-bridge.command or ./start-bridge.sh
All details (every setting in config.json, the plugin's messages, troubleshooting, and testing without a robot) are in README.txt inside the zip. It is a plain text file, so it opens in Notepad or TextEdit with a double-click.
checklist

What You Need

The e-Series UR3e is not supported by this package. Its wrist links are about 19 mm and 10 mm longer than the UR3's, so the same joint angles would put the tool in a different place. The controller reports "UR3" for both, so the bridge cannot tell them apart. Make sure the robot really is a CB3 UR3.
smart_toy

1. Prepare The Robot

lan

2. Start The Bridge

  1. Unzip the package for your computer.
  2. Open app/config.json in a text editor and set the robot's address and model:
    "robotIp": "192.168.1.10",
    "robotModel": "UR3",
    With robotModel set, the bridge accepts only UR3 trajectories. The bridge also asks the controller for its model before every run (a UR3 reports UR3) and refuses a mismatch.
  3. Start the bridge: on Windows double-click start-bridge.bat, on a Mac double-click start-bridge.command. If macOS refuses to open it, right-click it and choose Open once. On Windows, allow Node.js through the firewall when asked.
  4. Wait for Connected to UR robot 192.168.1.10 in the bridge window and leave the window open. Type stop and press Enter there to stop the robot at any time.
play_circle

3. Run From BRW

  1. Open BabaCAD Robotics Web and pick the UR3 model. With several arms in the scene, click the UR3 so it is the active arm.
  2. Import / Export → select the brw-plugin folder from the package.
  3. Build the posture queue and press Play full once, so BRW computes the trajectory. Check the motion on screen.
  4. Press User Command 3: the BRW console shows whether the bridge sees the robot, the robot's mode, and its current joint angles. Chrome and Edge ask once for local network access for babacad.com; choose Allow.
  5. Make sure the robot is running, then press User Command 1. The robot first moves slowly to the start pose, then follows the simulated path. Progress appears in the BRW console.
  6. User Command 2 stops the robot.
Before the first run, put the robot in any pose, read its angles with User Command 3, set the same angles in BRW's Joint Control, and check that the model looks the same as the robot. Start with "speedScale": 0.5 in config.json and keep the emergency stop within reach.
3d_rotation

UR3 Joint Data

BRW gives every joint angle in the UR3 controller's own convention: real = sign · sim + offset. The plugin checks that the arm in BRW uses exactly this mapping and sends nothing if it has been changed. The bridge keeps every joint inside its limits and below its speed; maxJointSpeed in config.json can only lower these speeds.

J1 BaseJ2 ShoulderJ3 ElbowJ4 Wrist 1J5 Wrist 2J6 Wrist 3
Sign+1−1−1−1+1+1
Offset−90°−90°90°
Range±360°±360°±360°±360°±360°±360°
Max speed180°/s180°/s180°/s360°/s360°/s360°/s

The BRW home pose is the UR3 pose 0°, −90°, −90°, 0°, 90°, 0°. The UR3's joints 2, 3 and 4 have sign −1, because its model uses the opposite axis direction to the UR5 and UR10e models.

Because every joint can turn ±360°, the same pose can be one full turn apart in BRW and on the robot. The bridge shifts such a joint by 360° so that the robot does not make a full turn on the way to the start pose. It logs every joint it shifts.