ROS Module to run a NAO application which interacts with Akinator and performs an interactive speaking guess who game.
Some resources are needed to use this packages:
- Main NAO ROS packages from ros-naoqi. With the naoqi_bridge and nao_robot repositories should be enough.
- Selenium python library and Firefox web browser installed.
- nao_smach_utils package from the NAO-UPC repository. This packages includes some utils to be used in SMACH state machines, and NAOkinator uses them intensively. The launch file in nao_utils may be handy as it launches every node that we need to run the NAOkinator on the NAO.
- All the behaviours from the folder NAOMIgestures should be installed previously on the NAO.
We have used and tested the package only in ROS Indigo. Our NAO is a 3.2 NAO, so we don't know how this packages perform in newer versions of the robot.
To play the game we have assumed a setting in which the NAO is sitting on a table in front of the player (and in a quite silent room). The program begins making the NAO sit down, so place the robot in a safe position to prevent any possible fall or any other danger or damage to it. To run the NAOkinator, one should run:
- Start ROS master node running
roscore
- The nao_basic launch from nao_utils package
roslaunch nao_utils nao_basic.launch
- The akinator_rossrv node which runs a service that connects to Akinator
rosrun naokinator_ros akinator_rossrv.py
- The game node
rosrun naokinator_ros start_naokinator.py