Tutorials¶
Welcome in the MORSE tutorials section!
As an academic simulator for robotics, MORSE is a large piece of software which may take some time to master.
However, you should hopefully be able to get your first simulation running very quickly.
If you haven’t yet read it, we recommend you to first read the Quickstart page and come back here afterwards.
What is the general workflow?¶
MORSE relies on the Blender 3D package to run your simulation. To create a simulation scene, you need to describe it using the Builder python API, which allows you to simply describe simulation scenes. More about that in a moment.
Once you have a description of your simulation, you can run it:
$ morse run <your file>
Now, instruct your middleware (ROS, YARP,…) to address
the simulator instead of the real robot, and start your control softwares as
you would do on a real robot. If you are not relying on an explicit middleware,
you can also use the socket interface socket
or the Python API pymorse
. MORSE supports the two
classic interaction mechanisms provided by most robotic middleware:
- Using RPC-oriented calls
service
- Using stream-oriented interfaces.
datastream
Note
In various places in the documentation, you will see labels like
builder
, ros
or service
. They denote the main subjects
that the section or the tutorial deal with.
The first simulation¶
First of all, install MORSE if you haven’t already done so.
Next step, Create your first simulation builder socket. builder
socket
Basic MORSE user interface¶
The next tutorial describes how to launch the MORSE simulation, and how to do basic interaction with it.
Beginners tutorials¶
This section shows how MORSE can interact with different middlewares.
Intermediate tutorials¶
These tutorials provide more in-depth explanations of how to setup simulations with specific requirements.
- A Journey to a New Simulation
- Cat and mouse game tutorial
builder
socket
- Flying cat and mouse game tutorial
builder
socket
pymorse
- ROS navigation tutorial
ros
- Services tutorial
service
socket
- Noise and ghost tutorial
builder
pymorse
- Basic interaction with another simulator using HLA : the Billard example
hla
- Screencast
Multi-node tutorials¶
These tutorials help setting up a multi-node simulation environment.
Blender specific instructions¶
Since MORSE is completely dependent on Blender, it is important to know some of Blender’s functionality.