====== V-REP robotic simulator, installation and Python API ====== [[http://www.coppeliarobotics.com/|V-REP]] is a powerful cross-platform 3D simulator based on a distributed control architecture: control programs (or scripts) can be directly attached to scene objects and run simultaneously in a threaded or non-threaded fashion. It features advanced physics engines which allows to simulate real-world physics and object interactions (collisions, object dynamics, etc.). ==== V-REP installation ==== [[http://www.coppeliarobotics.com/|V-REP]] is cross-platform and works on Windows, Linux and macOS. Download the educational version [[http://www.coppeliarobotics.com/downloads.html | V-REP Pro EDU]] for your particular system.\\ * **On Linux** * Download the archive .tar.gz, unpack it, navigate to the unpacked directory in the terminal and run the simulator calling the script: ''./vrep.sh'' * **On Windows** * Download the .exe installation file, run it and follow the instructions in the installer. Most likely you will be prompted to install Visual C Redistributable package. You can run the V-REP simulator by launching the ''vrep'' from desktop. When running V-REP you may see a firewall or antivirus popup as the V-REP simulator uses UDP and TCP/IP sockets for communication which is okay. * **On macOS** * Download the archive .zip, unpack it, navigate to the unpacked directory and run the simulator by launching ''vrep'' === V-REP python remote API === V-REP supports [[http://www.coppeliarobotics.com/helpFiles/en/externalControllerTutorial.htm|multiple ways]] of simulation control including internal Lua scripting, ROS connectivity or external API. The documentation for external API functions can be found in:\\ [[http://www.coppeliarobotics.com/helpFiles/en/remoteApiFunctionsPython.htm|V-REP Python remote API documentation]]\\ [[http://www.coppeliarobotics.com/helpFiles/en/remoteApiFunctions.htm|V-REP C++ remote API documentation]] Tutorial on basic interfacing between V-REP and python can be found on the web: [[http://www.edisondev.net/VREP/04PythonTutorial|V-REP Python remote API tutorial]] When using the connection through remote API, it is necessary to include the V-REP remote API binding scripts and library located at the installation directory of the V-REP in:\\ ''./programming/remotaApiBindings/python/python'' - the scripts\\ ''./programming/remotaApiBindings/lib/lib'' - the library\\ It is necessary to copy all the sources within these two directories and include them in the python script. === Labs Python Scripts === The python scripts for controlling the robot in V-REP used in during the labs are for python version 3.5. Besides, they rely on python libraries that help to solve the lab tasks. The required libraries are already installed on the lab computers, but they can be install using, e.g., sudo apt install python-numpy python-scipy python-matplotlib python-pandas python-sympy python-nose