CoppeliaSim

Last updated
CoppeliaSim
Developer(s) Coppelia Robotics AG
Stable release
4.4 / September 22nd, 2022
Operating system Windows, Linux, macOS
Type Robotics simulator
License Dual licensed (commercial or GPL)
Website Coppelia Robotics web page

CoppeliaSim, formerly known as V-REP, is a robot simulator used in industry, education and research. [1] [2] It was originally developed within Toshiba R&D and is currently being actively developed and maintained by Coppelia Robotics AG, a small company located in Zurich, Switzerland.

It is built around a distributed control architecture having Python and Lua scripts, or C/C++ plug-ins acting as individual, synchronous controllers. Additional asynchronous controllers can execute in another process, thread or machine via various middleware solutions (ROS, remote API, [3] ZeroMQ) with programming languages such as C/C++, Python, Java and Matlab.

CoppeliaSim uses a kinematics engine for forward and inverse kinematics calculations, and several physics simulation libraries (MuJoCo, Bullet, ODE, Vortex, Newton Game Dynamics) to perform rigid body simulation. Models and scenes are built by assembling various objects (meshes, joints, various sensors, Point clouds, OC trees, etc.) into a hierarchical structure. Additional functionality, provided by plug-ins, include: motion planning (via OMPL), synthetic vision and imaging processing (e.g. via OpenCV), collision detection, minimum distance calculation, custom graphical user interfaces and Data visualization (e.g. via plots).

The main fields of application of CoppeliaSim are robotics research [4] and education. [5] [6] [7]

Related Research Articles

<span class="mw-page-title-main">Simulation</span> Imitation of the operation of a real-world process or system over time

A simulation is the imitation of the operation of a real-world process or system over time. Simulations require the use of models; the model represents the key characteristics or behaviors of the selected system or process, whereas the simulation represents the evolution of the model over time. Often, computers are used to execute the simulation.

<span class="mw-page-title-main">Game controller</span> Device used with games or entertainment systems

A game controller, gaming controller, or simply controller, is an input device used with video games or entertainment systems to provide input to a video game, typically to control an object or character in the game. Before the seventh generation of video game consoles, plugging in a controller into one of a console's controller ports was the primary means of using a game controller, although since then they have been replaced by wireless controllers, which do not require controller ports on the console but are battery-powered. USB game controllers could also be connected to a computer with a USB port. Input devices that have been classified as game controllers include keyboards, mouses, gamepads, joysticks, etc. Special purpose devices, such as steering wheels for driving games and light guns for shooting games, are also game controllers.

<span class="mw-page-title-main">Eclipse (software)</span> Software development environment

Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. It is the second-most-popular IDE for Java development, and, until 2016, was the most popular. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug-ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.

<span class="mw-page-title-main">Stewart platform</span> Type of parallel manipulator

A Stewart platform is a type of parallel manipulator that has six prismatic actuators, commonly hydraulic jacks or electric linear actuators, attached in pairs to three positions on the platform's baseplate, crossing over to three mounting points on a top plate. All 12 connections are made via universal joints. Devices placed on the top plate can be moved in the six degrees of freedom in which it is possible for a freely-suspended body to move: three linear movements x, y, z, and the three rotations.

<span class="mw-page-title-main">Player Project</span> Robot interface specification and software system

The Player Project is a project to create free software for research into robotics and sensor systems. Its components include the Player network server and the Stage robot platform simulators. Although accurate statistics are hard to obtain, Player is one of the most popular open-source robot interfaces in research and post-secondary education. Most of the major intelligent robotics journals and conferences regularly publish papers featuring real and simulated robot experiments using Player and Stage.

<span class="mw-page-title-main">Webots</span>

Webots is a free and open-source 3D robot simulator used in industry, education and research.

<span class="mw-page-title-main">Robotics simulator</span>

A robotics simulator is a simulator used to create application for a physical robot without depending on the actual machine, thus saving cost and time. In some case, these applications can be transferred onto the physical robot without modifications.

<span class="mw-page-title-main">OpenRAVE</span>

Open Robotics Automation Virtual Environment (OpenRAVE) provides an environment for testing, developing, and deploying motion planning algorithms in real-world robotics applications. The main focus is on simulation and analysis of kinematic and geometric information related to motion planning. OpenRAVE’s stand-alone nature allows it to be easily integrated into existing robotics systems. It provides many command-line tools to work with robots and planners, and the run-time core is small enough to be used inside controllers and bigger frameworks.

Web-based simulation (WBS) is the invocation of computer simulation services over the World Wide Web, specifically through a web browser. Increasingly, the web is being looked upon as an environment for providing modeling and simulation applications, and as such, is an emerging area of investigation within the simulation community.

Robotics middleware is middleware to be used in complex robot control software systems.

Real-time simulation refers to a computer model of a physical system that can execute at the same rate as actual "wall clock" time. In other words, the computer model runs at the same rate as the actual physical system. For example, if a tank takes 10 minutes to fill in the real world, the simulation would take 10 minutes as well.

<span class="mw-page-title-main">20-sim</span>

20-sim is commercial modeling and simulation program for multi-domain dynamic systems, which is developed by Controllab. With 20-sim, models can be entered as equations, block diagrams, bond graphs and physical components. 20-sim is widely used for modeling complex multi-domain systems and for the development of control systems.

The virtual world framework (VWF) is a means to connect robust 3D, immersive, entities with other entities, virtual worlds, content and users via web browsers. It provides the ability for client-server programs to be delivered in a lightweight manner via web browsers, and provides synchronization for multiple users to interact with common objects and environments. For example, using VWF, a developer can take video lesson plans, component objects and avatars and successfully insert them into an existing virtual or created landscape, interacting with the native objects and users via a VWF interface.

<span class="mw-page-title-main">Lego Mindstorms EV3</span>

LEGO Mindstorms EV3 is the third generation robotics kit in LEGO's Mindstorms line. It is the successor to the second generation LEGO Mindstorms NXT kit. The "EV" designation refers to the "evolution" of the Mindstorms product line. "3" refers to the fact that it is the third generation of computer modules - first was the RCX and the second is the NXT. It was officially announced on January 4, 2013 and was released in stores on September 1, 2013. The education edition was released on August 1, 2013. There are many competitions using this set, including the FIRST LEGO League Challenge and the World Robot Olympiad, sponsored by LEGO.

<span class="mw-page-title-main">Hazelcast</span> In-memory data grid

In computing, Hazelcast IMDG is an open source in-memory data grid based on Java. It is also the name of the company developing the product. The Hazelcast company is funded by venture capital and headquartered in Palo Alto, California.

Unmanned aircraft system simulation focuses on training pilots to control an unmanned aircraft or its payload from a control station. Flight simulation involves a device that artificially re-creates aircraft flight and the environment in which it flies for pilot training, design, or other purposes. It includes replicating the equations that govern how aircraft fly, how they react to applications of flight controls, the effects of other aircraft systems, and how the aircraft reacts to external factors such as air density, turbulence, wind shear, cloud, precipitation, etc.

<span class="mw-page-title-main">Salvius (robot)</span>

Salvius is the first open source humanoid robot to be built in the United States. Introduced in 2008, Salvius, whose name is derived from the word 'salvaged', has been constructed with an emphasis on using recycled components and materials to reduce the costs of designing and construction. The robot is designed to be able to perform a wide range of tasks by having a body structure that is similar to that of a human. The primary goal for Salvius is to create a robot that can function dynamically in a domestic environment.

AirSim is an open-source, cross platform simulator for drones, ground vehicles such as cars and various other objects, built on Epic Games’ proprietary Unreal Engine 4 as a platform for AI research. It is developed by Microsoft and can be used to experiment with deep learning, computer vision and reinforcement learning algorithms for autonomous vehicles. This allows testing of autonomous solutions without worrying about real-world damage.

<span class="mw-page-title-main">Asynchronous multi-body framework</span> Robotic simulator

Asynchronous multi-body framework (AMBF) is an open-source 3D versatile simulator for robots developed in April 2019. This multi-body framework provides a real-time dynamic simulation of multi-bodies such as robots, free bodies, and multi-link puzzles, paired with real-time haptic interaction with various input devices. The framework integrates a real surgeon master console, haptic or not, to control simulated robots in real-time. This feature results in the simulator being used in real-time training applications for surgical and non-surgical tasks. It offers the possibility to interact with soft bodies to simulate surgical tasks where tissues are subject to deformations. It also provides a Python Client to interact easily with the simulated bodies and train neural networks on real-time data with in-loop simulation. It includes a wide range of robots, grippers, sensors, puzzles, and soft bodies. Each simulated object is represented as an afObject; likewise, the simulation world is represented as an afWorld. Both utilize two communication interfaces: state and command. Through the State command, the object can send data outside the simulation environment, while the Command allows to apply commands to the underlying afObject.

References

  1. Rohmer, Eric; Singh, Surya P. N.; Freese, Marc (3 November 2013). CoppeliaSim (formerly V-REP): a Versatile and Scalable Robot Simulation Framework (PDF). 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems. Tokyo, Japan. pp. 1321–1326. doi:10.1109/IROS.2013.6696520.
  2. "CoppeliaSim / V-REP paper references" . Retrieved 9 September 2020.
  3. "Remote API reference" . Retrieved 26 April 2021.
  4. Jiménez, A.; Anzola, J.; Rubén González Crespo, Vicente García-Díaz; L., Zhao (2020). "PyDSLRep: A domain-specific language for robotic simulation in V-Rep". PLOS ONE. 15 (7): e0235271. Bibcode:2020PLoSO..1535271J. doi: 10.1371/journal.pone.0235271 . PMC   7329094 . PMID   32609761.
  5. Caio, Camargo; Gonçalves, José; Conde, Miguel Á.; Rodríguez-Sedano, Francisco J.; Costa, Paulo; García-Peñalvo, Francisco J. (2021). "Systematic Literature Review of Realistic Simulators Applied in Educational Robotics Context". Sensors. 21 (12): 4031. doi: 10.3390/s21124031 . PMC   8230607 . PMID   34208046.
  6. "CoppeliaSim Introduction - Northwestern Mechatronics Wiki". hades.mech.northwestern.edu. Retrieved 2021-04-22.
  7. Pitonakova, Lenka; Giuliani, Manuel; Pipe, Anthony; Winfield, Alan (2018). Giuliani, Manuel; Assaf, Tareq; Giannaccini, Maria Elena (eds.). Feature and Performance Comparison of the V-REP, Gazebo and ARGoS Robot Simulators. Towards Autonomous Robotic Systems. Springer International Publishing. pp. 357–368. ISBN   978-3-319-96728-8.