This repository contains a Streamlit-based application designed for controlling Pepper, a humanoid robot, using predefined animations and behaviors. The app connects to Pepper and provides an interactive interface to play, stop, and manage animations.
- Behavior Control: Start and stop a variety of animations on Pepper.
- Interactive UI: Easy-to-use buttons for triggering different animation categories.
- Dialog Animations: Space & Time, Self & Others, Affirmation, etc.
- Moods: Positive, Neutral, and Negative emotional states.
-
Open Choregraphe:
- Launch Choregraphe on your computer.
- Connect to Pepper by entering the robot’s IP address.
-
Load the Questacon Project:
- Click File > Open project and navigate to the
questacon
folder. - Open the Questacon project file (
questacon.pml
).
- Click File > Open project and navigate to the
-
Access the Robot Applications Panel:
- In Choregraphe, navigate to the Robot Applications panel (located on the left side of the screen).
-
Install the Questacon Application:
- In the Robot Applications panel, click the Package and install button.
-
Verify Installation:
- After installation, you should see the Questacon application listed in the Robot Applications panel.
Once the Questacon robot application is installed on Pepper, you will be able to use the Streamlit app to control and trigger the installed behaviors and animations on the robot.
-
Clone the repository:
git clone https://github.com/BuddhiGamage/questacon.git cd questacon
-
Create virtual environment
python3 -m venv venv source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
-
Run the app:
streamlit run app.py
-
Connection Setup:
-
The app uses the Connection class to establish a connection with the Pepper robot.
-
Update the IP and port if necessary:
ip = 'localhost' # or the robot's IP port = 42535 # or the appropriate port
-
-
Interactive Actions:
- Use the provided buttons to start animations. Stop all animations using the "Stop Animation" button.
-
UI Structure:
- Dialog Animations: Includes buttons for various communication styles.
- Moods: Trigger animations for different emotional states.