COMP4461 Lab3

This repo is the Lab 3 material for UG course COMP4461 Human-Computer Interaction.

View the Project on GitHub

Robot Programming

Lab materials for how to program Pepper with Choregraphe.
Venue: Room 4221, Teaching Lab 1, Academic Building.
Date: Nov. 3, 2017

Choregraphe License PRs Welcome

In this lab, we will introduce how to program with Pepper robot by Choregraphe. In this repository, there is a demo created by Choregraphe for you to get started.

Table of Contents

Overview

What is Pepper?

Pepper is a humanoid robot by Aldebaran Robotics and SoftBank designed with the ability to read emotions. The official website provides a technical overview of the Pepper robot, and you can find out its structure as well as the other technical details from the instruction. You can also refer to an official brochure to obtain more general information. During the development, you can interact with Pepper through contact and tactile sensors.

Hardware

The Pepper robot is 120 cm tall, and weights in 28 kg. It can move around freely through 360 degrees. The Pepper also features 20 degrees of freedom, which means it can move in 20 different ways. It has six motors in each arm, two in the neck, two in the hips, one for the knee, and another three for the wheels (as it has 20 motors in total). Pepper robot can move in any direction while rotating at the same time.

Pepper can express itself through speech, visual display, and colorful LEDs. It perceives the world through two cameras, four microphones and a 3D sensor on his head, as well as several touch sensors on his body. To navigate safely, the Pepper robot leverages laser sensors and sonars around the base. Pepper robot uses an embedded PC with an Intel Atom card.

Software

Pepper robot can detect sound, people, obstacles based on its perception algorithms. The OS is a modified Gentoo distribution called OpenNAO with NAOqi OS on top of it. The robotics OS runs all the software from hardware control to AI decision making.

N.B.: You can also find out more about Pepper.

What is Choregraphe?

Choregraphe is a multi-platform development application with graphical user interface. It allows you to create animations and behaviors on Pepper, test them on a simulated robot or directly on a real one, monitor and control Pepper, etc.

Configuration

How to install Choregraphe 2.5.5?

By clicking on the link of Choregraphe download page, you will get a license key as:

654e-4564-153c-6518-2f44-7562-206e-4c60-5f47-5f45

Keep it, and later we will use this key to activate our application. Download the install package that suits your operating system, and then follow the images below to install the application on your machine.

N.B.: You can also refer to the official installation guide.

How to use Choregraphe?

Before starting the application, we need to connect to the ‘NaoRobotNet’ (the password will be announced during the class). Then the initial interface of the application looks like below:

interface

For each part of the interface, i.e., toolbar and other panels, please refer to the detailed explanation from the official website. There is also a chart which describes each button in details.

Implementation

After you get the Demo folder, please open the .pml file with Choregraphe, and you will see a project created by the same application previously. This project is created for the demonstration of Engineering School on Information Day, 2017. We will explain this demo in details:

Flowchart

We design the workflow as below:

Detailed explanation for each component

For each component, the detailed design is as below:

No. Speech Screen Gesture Sound Remarks
1 Hi! Welcome to the Engineering Commons. Embrace_change      
2.1 Do you want to see me dance? Embrace_change      
2.2   Embrace_change Lift forearm to 90 degrees   If yes, go to 2.3, otherwise go to 3.1
2.3   Embrace_change Disco dance Saxophone music  
3.1 Do you want to know more about today’s Engineering admission events? Embrace_change      
3.2   Embrace_change Lift forearm to 90 degrees   If yes, go to 3.3, otherwise go to 4.1
3.3 Scan me to download the app! Engineering related talks will be held in Lecture Theatre J… K… and H. Besides, Consultation sessions will be provided for both DSE and non-DSE applicants. Info Day app QR code Related gestures    
4.1 Do you want to see something cool? Info Day app QR code      
4.2   Info Day app QR code Lift forearm to 90 degrees   If yes, go to 4.3, otherwise go to 5.1
4.3 On campus today, you can watch robots battle against each other. You can even sign up to play! Robomaster_image      
4.4   Robomaster_image Gorilla action Machine gun sound  
4.5 You can see an electric vehicle built by our students EVcar_image      
4.6   EVcar_image Driving action Car sound  
4.7 You can visit the labs to see experiments. Lab_image      
4.8 You can take pictures with the 3D trick art and explore the world of tomorrow through Augmented Reality. HKUST.SENG_AR_LiPHY_app      
4.9   HKUST.SENG_AR_LiPHY_app Camera action Shutter sound  
4.10 You can scan special lights for information. HKUST.SENG_AR_LiPHY_app      
4.11   HKUST.SENG_AR_LiPHY_app Eyes light up    
4.12 For the 3D trick art, scan the HKUST.SENG AR app QR code shown on the left. For special lights, scan the Lie Fly app QR code on the right. HKUST.SENG_AR_LiPHY_app Speaking gestures    
5.1 If you need help finding information today, feel free to reach out to our Engineering Student Ambassadors. ESA_image      
5.2 Enjoy your day at the most beautiful campus in Hong Kong. See you around! HKUST_image Related gestures    

Based on the scheme, we can add and change related gestures, screen image or speech text accordingly.

Live demo

After we finished editing the program, we can upload the program to the Pepper robot while it is in the rest mode. Then we can click the play button to test the program on Pepper.

In the Demo folder, the additional sound and image files are stored in the html subfolder, while the main program is in the show.pml file. You can start your program based on that.

Tips

Contribute

We would love you for the contribution to Lab3, check the LICENSE file for more information.

Meta

Zhida Sun. Distributed under the MIT license. See LICENSE for more information.