MORSE
...in 20min

Presentation outline

The MORSE project

The MORSE community

The MORSE community

Blender Game Engine + Bullet

What if...

...we want to simulate a robot in a lively office?

$ morse create strands_sim

This example requires latest git version of MORSE

$ vim strands_sim/defaults.py



from random import uniform
from morse.builder import *

robot = BasePR2() # Bare PR2 model
robot.add_default_interface('ros') # control PR2 via ROS

for i in range(30):

    human = Human() # create human 'robot'
    human.translate(uniform(-5, 5), uniform(-5, 5))

    waypoint = Waypoint() # create actuator
    waypoint.add_interface('socket') # control via sockets
    human.append(waypoint)

env = Environment("office.blend") # load custom 3d model

$ morse run strands_sim

Remote control of humans




import pymorse  # ->  apt-get install python3-morse-simulator

with pymorse.Morse('localhost') as simu:

    simu.human_001.goto(uniform(-5, 5), uniform(-5, 5))
    # ...



Waypoint documentation

MORSE Principles: Components

Available robotic bases
A click on the image redirect to MORSE Component Library in the on-line doc.
Scroll there to quickly show the available components.

MORSE Principles: Inner loop

MORSE Principles: Interfaces

MORSE Principles: Serialization/Deserialization

Human-Robot interaction

Multi-node

Multi-node MORSE
Multi-node MORSE
Multi-node MORSE

Still missing...

Questions?