BØ-based remote APIBlueZero is deprecated. We highly recommend using the ZeroMQ remote API instead. The B0-based remote API is one of several ways an application can connect with CoppeliaSim. The B0-based remote API allows to control a simulation (or the simulator itself) from an external application or a remote hardware (e.g. real robot, remote computer, etc.). The CoppeliaSim B0-based remote API is composed by approximately one hundred specific functions and one generic function, that can be called from a C++ application, a Python script, a Java application, a Matlab program, or a Lua script. The B0-based remote API functions are interacting with CoppeliaSim via the BlueZero middleware and its interface plugin to CoppeliaSim. All this happens in a hidden fashion to the user. The remote API can let one or several external applications interact with CoppeliaSim in a synchronous* or asynchronous* way (asynchronous by default), and even remote control of the simulator is supported (e.g. remotely loading a scene, starting, pausing or stopping a simulation for instance). Note: the word Synchronous is used in the sense that each simulation pass runs synchronously with the remote API application (i.e. the simulator will wait for a trigger signal from a client to start next simulation pass at a time t+dt). This is different from synchronous/asynchronous in the sense of blocking/non-blocking operation. The remote API also supports blocking and non-blocking operations. Make sure you understand how the B0-based remote API is operating by reading this section. Also have a look at the external controller tutorial. The B0-based remote API functionality comes in 2 separate entities, that are interacting via the BlueZero framework: |