Git Product home page Git Product logo

dockursim's Introduction

DockURSim

A URSim (Universal Robots Simulator) Docker Container with a Browser Accessible Interface

Runs URSim in a docker container with the Polyscope Interface accessible via a browser.

This is a suitable alternative to using the URSim virtual machine image on windows.

Current URSim Version: 5.4.2.76197

Example Usage

First create volume to store robot configuration.

docker volume create dockursim

Start URSim with an UR5 robot and all interface ports exposed.

docker run -d \
    --name="dockursim" \
    -e ROBOT_MODEL=UR5 \
    -p 8080:8080 \
    -p 29999:29999 \
    -p 30001-30004:30001-30004 \
    -v /path/to/mount/program/folder:/ursim/programs \
    -v dockursim:/ursim \
    --privileged \
    --cpus=1 \
    arranhs/dockursim:latest

The Universal Robot Interface can now be accessed at http://localhost:8080.

Ctrl-Alt-Shft will open a menu that allows changing input options, as well as controlling the clipboard.

NOTE! This container requires running with --privileged set due to pthread spawn issues that couldnt be solved in any other way. This has security implications so DO NOT expose this container to the internet without doing your due diligence first. Use this container at your own risk.

NOTE Number 2! I highly recommend running this container with the --cpus=1 option as the container seems to use all available machine resources otherwise and this will likely cause your simulator container (and possibly your computer) to become unresponsive or slow.

Parameters

Container is configured using parameters passed at runtime.

Parameter Function
-e ROBOT_TYPE=UR5 Specify robot model to use in URSim. Valid options are UR3, UR5 and UR10. Defaults to UR5.
-e TZ=Europe/London Specify a timezone to use e.g. Europe/London
-e PUID=1000 Set UserID
-e PGID=1000 Set GroupID
-v /ursim The URSim application directory
-v /programs The UR programs directory. This is accessible within the robot interface
-p 8080 Allows HTTP access to the robot interface. (Required for Browser Viewing)
-p 3389 Allows RDP access to the robot interface. (Optional. For VNC Viewers)
-p 502 Universal Robots Modbus Port. (Optional)
-p 29999 Universal Robots Dashboard Server Interface Port. (Optional)
-p 30001 Universal Robots Primary Interface Port. (Optional)
-p 30002 Universal Robots Secondary Interface Port. (Optional)
-p 30003 Universal Robots Real-time Interface Port. (Optional)
-p 30004 Universal Robots RTDE Interface Port. (Optional)

The volume and port parameters are separated by a colon and indicate <external>:<internal> respectively. For example, -p 8080:80 would expose port 80 from inside the container to be accessible from the host's IP on port 8080 outside the container.


This container was built in my free time to aid with research work. Please feel free to open any issues.

All rights of the offline simulator application belong to Universal Robots A/S.

dockursim's People

Contributors

ahobsonsayers avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

dockursim's Issues

Support for e-series models

Greetings!
Thanks so much for this image. However, I would like to use it to test the functionality of the UR5e model together with ros. How can I launch your image with the e-series models? In the description, I found that the 'ROBOT_TYPE" parameter can take values UR3, UR5 and UR10, but not UR3E, UR5E, UR10E.

Can not open simulator via https://localhost/8080

Hello! Thanks a lot for your work.
But after I run the following commands :

sudo docker run -d \
--name="dockursim" \
-e ROBOT_MODEL=UR5 \
-p 8080:8080 \
-p 29999:29999 \
-p 30001-30004:30001-30004 \
-v /path/to/mount/program/folder:/ursim/programs \
-v dockursim:/ursim \
--privileged \
--cpus=1 \
arranhs/dockursim:latest

It just get

"ba24c01ddab6c281b010e6d406f8548240c2c76ae7dc09cc5cdfcbcc534339e2"

and I can not open https://localhost/8080 to use the simulator, so how can I solve it, thank u .

Update URSim Version?

The current version of this package contains Version 5.4 from mid 2019, the newest version is 5.9.

It seems like the build-in updater of the simulation does not work, is there any plan to update the packaged version in the docker container?

Support for arm64v8

Getting following error when build the image on MacBook with Apple M1 Chip (ARM):

WARNING: The requested image's platform (linux/amd64) does not match 
the detected host platform (linux/arm64/v8) and no specific platform was requested

Result in browser:
localhost

I guess the image should just build with buildx.

Support for CB3

Thanks so much for this image! Would it be possible to add support for the CB3 controller as well? More specifically, I would like to simulate Polyscope v3.9.1.64192.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.