Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

What Is a Device?

A device is a collection of sensors and actuators. Sensors are used for collecting input, and actuators are used for output.

In order to collect and send data to and from the SIC framework, drivers have been provided to emulate the various sensors and actuators used in SIC. Please refer to the specific device that you need to use for drivers details.

How to Use a Device?

Our framework abstracts away the device itself by making use of its sensors and actuators. That is, our services are device-independent, but instead depend only on sensors and actuators. Thus, any device can be used as long as its sensors and actuators are supported by the service needed to run.

  1. Connect the device to the same network as the machine running the service for the device

  2. (Optional) Start the device’s driver on the machine running the service

  3. Start the docker services to be run on the device

    • if the device is correctly connected to the machine running the service, then it will be automatically detected when docker is started

  4. Run the desired script

Example

For examples for running specific scripts, check out Services - Restructured .

Adding new devices

The code for all current devices can be found at https://bitbucket.org/socialroboticshub/input and https://bitbucket.org/socialroboticshub/output/src/master/. There are two shared libraries that handle a lot of the common logic that is needed to interact with our framework: one for Python-based integrations (our robot-installer installs this on Nao/Pepper robots for example) and one for Java-based integrations (using Maven, used in all non-NAOqi devices currently). There are 9 different types of devices supported within the framework at this time:

...