I am using Gazebo as a comparison, but this really, is applicable for any physics simulator.
Even if you are on a Linux machine, go to the link and download the simulator for non-linux machines. You will have to create a free login in the Universal Robots website. Then extract the same.
I prefer virtualbox for all my VMs but feel free to use VMWare. The instructions below are for virtualbox:

scp /path/to/cap/file/on/host ur@192.168.56.101:/home/ur/ursim-current/programs.UR10
Remember the sudo password is easybot
In a catkin workspace,
a. First we need the UR ROS driver
git clone https://github.com/UniversalRobots/Universal_Robots_ROS_Driver.git src/Universal_Robots_ROS_Driver
b. Now we get the robot’s description
git clone -b calibration_devel https://github.com/fmauch/universal_robot.git src/fmauch_universal_robot
c. After installing all necessary dependancies with
rosdep install --from-paths src --ignore-src -y
We can finally catkin_make to build everything
You have to calibrate your robot controller to the exact configuration of the robot. You can do this with
roslaunch ur_calibration calibration_correction.launch robot_ip:=<robot_ip> target_filename:="${HOME}/my_robot_calibration.yaml"
Now, we run the robot with the launch command
roslaunch ur_robot_driver <robot_type>_bringup.launch robot_ip:=192.168.56.101 kinematics_config:=path/to/your/calib/file/my_robot_calibration.yaml
Note that I am using the default IP of the robot. Change this if you have made changes to your defaults in the host-only-network adapter. Also, edit the path to point to the calibration file that you saved.
You are now ready to move your UR!!!
To check if everything works run the following test script that comes with the driver
rosrun ur_robot_driver test_move
Please note that except for getting and installing the virtual machine, the rest of the steps are valid even if you had the real robot.
Ideas? comments? suggestions for improvement?
Feel free to reach me on my E-mail