Service Robotics Research Center
at Ulm University of Applied Sciences

User Tools

Site Tools


Getting Started with the Virtual Machine and the SmartMDSD Toolchain

This is the introductory tutorial for lesson one. It shows how to download the virtual machine, how set it into operation, and where to look around in the SmartMDSD Toolchain. It includes basic usage hints to work with virtual machines.

Basic Information

Level Beginner
Role System builder, but also other roles while browsing through the system's building blocks
Assumptions Basic understanding of Virtual Machines is a plus, but not required
System Requirements None. Instructions to install virtual box and download the virtual machine are provided.
You will learn Basic usage functionalities of the SmartMDSD Toolchain

Introduction of Lesson 1 and this Tutorial

In this lesson one, we guide you through first examples running a Pioneer 3DX robot in simulation. Later tutorials will show how to run it in real-world. You will get an immediate impression of the power of the SmartMDSD Toolchain and its development tools. We provide all the hints of where to find more information, documentation, reusable components etc. We will accomplish all the tasks of this and next tutorials in Virtual Machine.

This lesson features two systems/applications:

  • Simple Laser Obstacle Avoid:
    • A simple reactive and collision-free motion of a robot with a laser ranger
    • A simple example to get hands-on experience with the toolchain
  • A full Navigation Stack (Mapping, Path Planning, Colission Avoidance, etc.)
    • Complex set of off-the-shelf software components for navigation as it is used in real service robots
    • Example to illustrate how a complex system is composed from previously developed software components

What is SmartSoft?

SmartSoft is an umbrella term for structures, tooling, infrastructure, and software components to build robotics systems: a systematic software development methodology, best practices, implementations, and software components.

The SmartMDSD Toolchain is based on the Eclipse Modeling Project. It assists the component developer in building software software components that adhere to a software component model for robotics. It assists the application builder in composing complex robotics applications out of off-the-shelf robotics software components.

Read more

Why are we using a virtual machine image?

  • Virutal Machine is easy to download and setup the system
  • There is no need to modify the current settings of your computer
  • There is no danger to mess up something and to get stuck with a broken configuration
  • You can always go back to our original state or saved snapshot
  • You can use the virtual machine on your preferred operating system (use on operating system of your choice)
  • If you are new to virtual machines, read Welcome to the Virtual Machine

Download the Virtual Machine

Download the virtual machine appliance to a directory in your home folder.

Virtual Machine image System Information:

  • Virtual Machine image based on Ubuntu LTS 64bit
  • user name / password: smartsoft / smartsoft
  • sudo password if needed: smartsoft

See additional information for working with the virtual machine: Welcome to the Virtual Machine.

How to start and stop the Virtual Machine

You have two ways to Start the Virtual Machine:

  1. Start “VirtualBox”, import the just downloaded ova-File, and then start this Virtual Machine.
  2. Double-click the just downloaded ova-File and all gets started within “VirtualBox”. As “VirtualBox” starts the prepared Virtual Machine appears as a virtual computer inside your computer. In our case, this virtual computer is run by Ubuntu LTS.

We provide a “ready-to-use” installation of the SmartMDSD Toolchain in this virtual computer. It comes with all necessary examples to follow the tutorials. If you are new to virtual machines: Please always shutdown your virtual machine as you do with regular computers. We recommend to learn more about advanced methods to save the machine state and snapshots, see Welcome to the Virtual Machine.

You can shut down the VM from the guest operating system as illustrated below:

You can also shut down the VM from the virtual box management GUI. This will issue an ACPI command. It simulates pressing the “power button”.

How to update the Virtual Machine Image

It is recommended to update your svn repository and the installed SmartMDSD toolchain. Double-click the “Update Virtual Machine” icon on the Ubuntu Linux desktop in the Virtual Machine.

Updating the VM will update all repositories and re-compile the development environment. Depending on your host and guest configuration, it may take about 20-30 minutes.

The SmartSoft MDSD Toolchain

To start the SmartMDSD Toolchain, click on the icon “SmartMDSD Toolchain”.

Importing import existing projects

By default, the toolchain in the virtual machine will have all necessary projects imported and set up. To import additional projects, follow these steps:

  • (if not all are already visible within the toolchain)
  • in the SmartMDSD toolchain menu, please click the following:
    • File → Import → Existing Project into Workspace
  • and then import the projects by selecting the following directories (one by one):
    • /home/smartsoft/SOFTWARE/smartsoft_dev_ace_v3/repos/DomainModelsRepositories/
    • /home/smartsoft/SOFTWARE/smartsoft_dev_ace_v3/repos/ComponentRepository/
    • /home/smartsoft/SOFTWARE/smartsoft_dev_ace_v3/repos/DomainModelsRepositories/

Please do not modify settings in the import-dialog: keep the defaults. It is recommended to “link projects” and not to copy them to the current workspace.

  • You might need to wait some time until the Virtual Machine has processed everything and is again idle.
  • This can take some time when you import a bunch of components.
  • Please proceed only after the Virtual Machine is idle again.

The following screenshots shows the dialog settings for components:

Look Around: An Example System Project

We now briefly look around in the SmartMDSD Toolchain. The next tutorial will more deeply address all aspects of the SmartMDSD Toolchain.

Let's look at one easy example of a system project SystemLaserObstacleAvoidTiagoGazeboSimulator. To open the project, locate it in the project explorer and double click it. There are multiple views which include component architecture, target platform and deployment. The system component architecture composes software components to systems. Double click System Architecture Viewpoint and explore it:

It contains two software components which implement a simple reactive obstacle avoidance scenario. To see more, continue with the next tutorials.

Further Information

Additional information for working with the virtual machine: Welcome to the Virtual Machine

What do do next?


tutorials/launching-vm-and-toolchain/start.txt · Last modified: 2018/12/17 09:52 by Dennis Stampfer