softbankrobotics-labs / pepper-solitaries-loop

A library to give developers the option to run animations when the robot is solitary. The animations are designed specifically for when the robot is not interacting with humans, and they will run at random to give the robot more life like behaviour.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Pepper Solitaries Loop Library

This Android Library allows you to create a solitaries animations loop. A solitary animation is an animation that the robot runs when it's alone to attract people.

With this library, you can also define at which frequency you want the animations to run. By default, this value is set to 60 seconds. We advise you to not set this value below 30 seconds or it may result in complains about robot being noisy and impossible to reach.

The solitaries animations loop can then be started and stopped whenever you want.

Getting Started

Prerequisites

A robotified project for Pepper with QiSDK. Read the documentation if needed.

Running the Sample Application

The project comes complete with a sample project. You can clone the repository, open it in Android Studio, and run this directly onto a robot.

The sample demonstrate how to use the library in a project and what to do to avoid solitaries animations interacting with your animations.

Full implementation details are available to see in the project.

Installing

Follow these instructions

Make sure to replace 'Tag' by the number of the version of the library you want to use.

Usage

This README assumes some standard setup can be done by the user, such as initialising variables or implementing code in the correct functions. Refer to the Sample Project for full usage code.

Initialise the QiSDK in the onCreate. If you are unsure how to do this, refer to the QiSDK tutorials

QiSDK.register(this, this)

In the onRobotFocusGained, instantiate a SolitariesLoop object by passing it the QiContext and start the loop:

solitariesLoop = SolitariesLoop(qiContext)

You can also define the frequency at which you want the animations to run (time in seconds):

solitariesLoop = SolitariesLoop(qiContext, 40)

Start the solitaries loop whenever you want (for instance if no human has been detected around the robot for X minutes):

solitariesLoop.start()

Stop the solitaries loop whenever you want (for instance if a human is engaged or if you loose the robot focus):

solitariesLoop.stop()

License

This project is licensed under the BSD 3-Clause "New" or "Revised" License. See the LICENSE file for details.

About

A library to give developers the option to run animations when the robot is solitary. The animations are designed specifically for when the robot is not interacting with humans, and they will run at random to give the robot more life like behaviour.

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Kotlin 100.0%