NRP Glossary¶
- BIBI
Brain and Body Integrator, the configuration of transfer functions through a simple and eventually graphical syntax. See BIBI Configuration File Format for details.
- Brain comm. adapter
The adapter that is used by the TF framework to connect with the neuronal simulation, e.g. to create suitable devices to connect with the parameters of a TF
- Braitenberg Vehicle
A Braitenberg vehicle is a concept conceived in a thought experiment by the Italian-Austrian cyberneticist Valentino Braitenberg: Wikipedia
- CLC
- Closed Loop Controller
The Closed Loop Controller, for the reference see CLE architecture
- CLE
- Closed Loop Engine
The Closed Loop Engine is the middleware putting all the pieces of the Neurorobotics Platofmr together on the server. In particular, it is connecting Gazebo and NEST through our Transfer Functions mechanism. For more information on CLE, use the dedicated tutorials and developer pages. The architecture of the CLE can be found here.
- Communication Object
Communication object is the generalization of neuronal network devices and robot publishers and subscribers. Thus, it represents objects that are accessed by the TF framework to connect parameters of a TF with a simulation in either way.
- Device
In neuronal simulation, devices are little programs that are injected into a neuronal network and run with the same clock as the neuronal simulation and can be accessed from outside. A typical example is a leaky integrator that basically returns the voltage of a neuron. The brain adapters of the CLE e.g. to PyNN do inject such devices into the neuronal network. However, within the TF framework, we also refer to the adapter objects that connect these devices with the TF framework devices, so we identify these adapters with the devices that they adapt. Devices may be either spike sinks or spike sources, i.e. either consume spikes of connected neurons or create spikes (or currents) and send them to connected neurons. Examples of spike sinks are leaky integrators that are essentially neurons that do not spike (infinite threshold voltage) but whose voltage is then accessed by the robot. Examples of spike sources are either current generators (AC, NC or DC source) or Poisson based spike generators.
- Device Group
For brain simulators, it is often infeasible to work with single devices but whole groups. Consider for example an image recognition. If every pixel would be a spike generator device, the TF would need a number of parameters depending on the image resolution. A device group is a group of such devices that groups all these devices that logically belong together.
- Docker
Docker is a set of platform as a service (PaaS) products that use OS-level virtualization to deliver software in packages called containers. Containers are isolated from one another and bundle their own software, libraries and configuration files; they can communicate with each other through well-defined channels. Because all of the containers share the services of a single operating system kernel, they use fewer resources than virtual machines. Use the `Docker installation guides<https://docs.docker.com/engine/install/>`__ for your system. If you’re using Linux OS, for your convenience, we recommend to `allow the Docker to run as non-root user<https://docs.docker.com/engine/install/linux-postinstall/>`__.
- ExD
Experiment (Designer) Backend
- experiment
is a use case, combining a brain, a robot and an environment.
- Frontend
- Web Cockpit
- NRP Frontend
The browser-based user interface for interaction with the NRP. Use the section in the user manual in order to get familiar with it. Developers might look at
ExDFrontend
in NRP Repositories, which implements the main functionality of the Frontend.- Gazebo simulator
- Gazebo
Gazebo is an open-source 3D robotics simulator. NRP uses a fork of the Gazebo project of version 11. Developers may refer
Gazebo
in NRP Repositories and also also dedicated Gazebo developer page.- gzweb
Web interface for Gazebo using WebGL. Consisting of gzbridge (server) and gz3d (client), see https://bitbucket.org/osrf/gzweb
- HBP
- Human Brain Project
The Human Brain Project (HBP) is one of the three FET (Future and Emerging Technology) Flagship projects. Started in 2013, it is one of the largest research projects in the world . More than 500 scientists and engineers at over than 140 universities, teaching hospitals, and research centres across Europe come together to address one of the most challenging research targets – the human brain. Read more about HBP.
- Husky robot
Popular robot platform, i.e., you can read ROS wiki
- NEST
NEST is the neuronal simulator that we currently use by default, see http://www.nest-initiative.org/
- NRP
- Platform
- Neurorobotics Platform
The Neurorobotics Platform’s purpose is to offer neuroscientists a tool to perform in-silico cognitive or lower-level neural experiments on virtual Guinea pigs, be them biologically inspired or not. It will, on the other side, provide roboticists with the possibility to experiment on their robots with brain models instead of classical controllers.
- OIDC
OpenID Connect is an authentication layer on top of OAuth 2.0, an authorization framework. In the NRP it used to authenticate you through HBP services. About the accessing NRP read here.
- OpenSim
OpenSim is a freely available, user extensible software system that lets users develop models of musculoskeletal structures and create dynamic simulations of movement. We use a fork of the official repository (look for
opensim
in NRP Repositories). The project web-site- PyNN
An interface for neuronal simulators, see http://neuralensemble.org/PyNN/
- REST
Representational State Transfer, design principle for web interfaces
- Robot comm. adapter
The adapter that is used by the TF framework to connect with the robot simulation, e.g. to create suitable robot subscribers and robot publishers in accordance with the used input.
- Robot Publisher
A robot publisher is the equivalent of a spike source device on the robot side, but only for sending data to the robot. As we are currently using ROS, robot publishers are really ROS publishers sending data to some Gazebo topics.
- Robot Subscriber
A robot subscriber is the equivalent of a spike sink device, i.e. it is a port for the incoming data.
- rosbridge
Web interface for ROS using WebSockets, see http://wiki.ros.org/rosbridge_suite
- SDF
- Simulation Description Format
XML file format that describes environments, objects, and robots in a manner suitable for robotic applications. SDF is capable of representing and describing different physic engines, lighting properties, terrain, static or dynamic objects, and articulated robots with various sensors, and acutators. The format of SDF is also described by XML, which facilitates updates and allows conversion from previous versions. A parser is also contained within this package that reads SDF files and returns a C++ interface. NRP uses a special SDFormat parser to handle these files.
- Simbody
Simbody is useful for internal coordinate and coarse grained molecule modeling, large scale mechanical models like skeletons, and anything else that can be modeled as bodies interconnected by joints, acted upon by forces, and restricted by constraints. We use a fork of the official repository (look for
simbody
in NRP Repositories). The project web-site- simulation
is an instance of an experiment, launched by a particular user, at a certain time, with a predefined.
- SMACH
is a task-level architecture for rapidly creating complex robot behavior. At its core, SMACH is a ROS-independent Python library to build hierarchical state machines. SMACH is a new library that takes advantage of very old concepts in order to quickly create robust robot behavior with maintainable and modular code.
- TF
- Transfer Function
A function that interconnects the neuronal simulator with a (currently simulated) robot. This includes the function itself as well as annotation how to connect its parameters to the neuronal simulation or to the robot simulation. Thus, TFs are end to end and cannot be stacked together. However, their functional specification (the body) can be stacked.
- TF node
- TF manager
An organizational unit for the TFs. The terms TF node and TF manager are used interchangeably. Each TF must be connected to exactly one TF manager that manages its execution. By default, this is the currently active instance.
- urdfdom
The URDF (U-Robot Description Format) library provides core data structures and a simple XML parsers for populating the class data structures from an URDF file. Read more on project pages
- Virtual Coach
The Virtual Coach is a Python API that allows you to run and interact with experiments by scripting them instead of having to use the Web Cockpit. Find more information on the Virtual Coach in the dedicated developer pages, tutorials and code API reference.
- WSE
World Simulation Engine, the generalization of the robot simulation. We currently use Gazebo (see http://gazebosim.org/) through a ROS (see http://www.ros.org/) interface as our World Simulation Engine.