Files
teleoperation/README.md

2.0 KiB

Teleoperation NAO

Project description

This ROS package allows you to remotely control a NAO robot by standing in front of a webcam and having two ArUco markers on the hands and one ArUco marker on the chest.

You can move a NAO around using a "Human Joystick" approach and make NAO imitate your arm motions. For more details, read our report or watch our video .

Our package relies on the NAO being reachable from the computer and the environment variable NAO_IP being set to the IP address of the NAO.

Our main code is written in Python and located in script/ with the ArUco detection and rviz GUI logic in C++ in src/.

Requirements

We installed the dependencies by cloning them to our workspace and running catkin_make, but sudo apt install ros-indigo-package-name should work even better.

Usage

Hang an ArUco #0 marker on the chest, take the #1 in the left hand and #2 in the right hand. The markers should be 15cm high/wide. Then you can run

$ roslaunch teleoperation calibration.launch

The NAO will tell you what to do.

After that you can launch the teleoperation routine by running.

$ roslaunch teleoperation fulltest.launch

If you want our awesome GUI, run

$ roslaunch nao_bringup nao_full.launch
$ roslaunch teleoperation with_gui.launch

If any problems arise with the GUI, such as the NAO not getting properly displayed, try pointing the rviz to the correct NAO .urdf, which should be somewhere in the nao_description package.

This diagram depicts what you should expect from the teleoperation routine.

State Machine

Since this package relies on the NAO voice recognition, you must be in the same room with NAO, and the room must be quiet.