Versions Compared

Key

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

Introduction

Laptops/Computers are referred to as a device where a particular device is compromised of sensors and actuators. 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 SICprovide a large number of functionalities for the SIC framework. They can be used as stand-alone devices, as emulators for Pepper/Nao robots , or as Tablets/Phones/Browsers.

Sensors and Actuators

The following sensors and actuators have been provided in the following format: Sensor/Actuator - driver name where each driver is a JAR file(if applicable).

  • Microphone - computer-microphone.jar

...

  • Camera - computer-

...

  • camera.jar

    • Docker service: stream_video

  • Browser - computer-

...

Dependencies

The independent usage of sensors and actuators does not have any dependencies besides running the respective drivers themselves. However, there are two cases where you might have dependencies:

  1. Communication with robot/s: Considering that the intention is to emulate a robot’s responses on your device, and not use an actual robot, you must first launch computer-robot. Thereafter depending on the context of your usage, you might need to run the required sensors/actuators drivers. This is not required if you working with robots such as Pepper/Nao.

  2. Using a web browser: In order to do so, you must launch computer-browser as well as the webserver service. Depending on the context of your usage, you might need to run the required sensors/actuators for that particular use case.

How to Use

An example will be used to demonstrate where these drivers come in handy. Assume one wishes to use sentiment analysis strictly on a laptop/computer, in order to do so you will need to launch the following JAR files to communicate with the SIC framework: computer-microphone and computer-robot. Kindly note there are other services required to run the sentiment-analysis service, for more information please visit the service page.

...

  • browser.jar

    • Docker service: webserver

    • the driver automatically launches a Chrome window that displays the page as rendered by the webserverservice. See the Tablets/Phone/Browsers page for more information.

  • Speaker * - computer-speaker.jar

    • Docker service: stream_audio

    • can be used for generic audio playing, as well as text-to-speech with eSpeak

  • Robot - computer-robot.jar

The drivers are run from the sic-local folder and have been provided as a JAR in the format computer-*. To use these JARs, you need to have run them, Java 8 or later is required to be installed on your machine. Launch one of the local devices by either double-clicking the drivers or using the BAT (Windows) or SH (Linux/Mac) file. With a locally running SIC framework you can always just press OK in the initial dialog box that appears. The full list of available drivers is as follows:

  • computer-browser: automatically launches a Chrome window that displays the page as rendered by the webserver service. See Tablets/Phones/Browsers for more information.

  • computer-camera: can feed the video of the webcam on your machine into the framework.

  • computer-microphone: can feed the audio of the microphone on your machine into the framework.

  • computer-robot: emulates the responses (mainly events) that a Nao or Pepper robot would generate.

  • computer-speakers: uses eSpeak for local text-to-speech and plays generic audio too.

Limitations

The available drivers work as intended on Linux and Windows. Currently, the drivers do not function as intended on Macintosh

* computer speakers always use eSpeak for text-to-speech purposes unless a service uses DialogFlow or Google’s text-to-speech. Windows and Linux have eSpeak by default, however, macOS does not. Therefore install eSpeak from brew: brew install espeak for MacOs.

Dependencies

The independent usage of sensors and actuators do not have any dependencies by themselves. Instead, services are dependent on them. So, depending on the services run, the necessary sensor/actuator should be used accordingly.

How to Use

An example will be used to demonstrate how these drivers are used. Assume this example needs to be run.

  1. start Docker with the required text_to_speech service

  2. start computer-robot.jar, computer-speakers.jar

    • Important: If you are operating on a MacBook, kindly ensure you launch these drivers on a terminal.

    • the example emulates Text-to-Speech on a robot; hence we need to use both a robot emulator and the speakers as actuators.

  3. run the example

Limitations

The available drivers have been tested on Windows 10 and Ubuntu 20.04. macOS can also be used but has not been as extensively tested and compatibility and support for it are limited.