Skip to content
/ i-spy Public
forked from soroush-msd/i-spy

Play the I Spy game with the Kinova Gen3 Robot!

Notifications You must be signed in to change notification settings

CHRI-Lab/i-spy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

i-spy

Play the I Spy game with the Kinova Gen3 Robot!

Main Software Requirements:

Build

$ cd ~/catkin_ws/src
$ git clone https://github.com/soroush-msd/i-spy.git
$ cd ~/catkin_ws/
$ catkin_make

Run

In one terminal:

$ roscore

And in another terminal:

$ cd ~/catkin_ws/
$ source devel/setup.bash
$ rosrun i-spy stateMachine.py [f]emale/[m]ale [h]uman/[r]obot/[g]reeting

How To Play?

This is a voice-based interaction. You need to have three components connected to your system:

  • A microphone through which you will speak to the robot.
  • A speaker through which the robot will speak to you.
  • The Kinova Gen3 Robotic Arm with a working camera to enable the robot to see and detect objects in the environment.

There are two/three-ish different scenarios you can play the game:

  1. The robot looks around, chooses one random object, picks its first letter and then you will need to guess the matching object.
  2. You look around, choose one random object within the robot's FOV and pick its first letter. The robot then asks you for the letter and tries to guess the matching object.
  3. The robot greets you, introduces itself, and then starts scenario 1.

So, for example, if you run:

$ rosrun i-spy stateMachine.py f r

The robot will play scenario 1 with the female voice.

Note: f stands for female, and r stands for robot in the command line arguments. This means the robot will have a female voice and will be providing a letter for the user to guess.

Or, if you run:

$ rosrun i-spy stateMachine.py m h

The robot will play scenario 2 with the male voice.

Note: m stands for male, and h stands for human in the command line arguments. This means the robot will have a female voice, and you will be providing a letter for the robot to guess.

Similarly, if you run:

$ rosrun i-spy stateMachine.py m g

The robot will play scenario 3 with the male voice.

Note: g stands for greeting in the command line arguments. Refer to scenario 3 for the explanation.

Important Notes:

⚠️ Your microphone needs to remain mute except when you are required to speak to the robot. When ready to speak:

  1. Unmute the microphone,
  2. Provide input,
  3. Mute back the microphone.

This might be due to the sensitivity of different microphones and the variety of energy level thresholds needed to adjust to ambient noise.


⚠️ When the robot asks you about the first letter of the object, you need to provide input by speaking in the following format:

  • letter x, for example, if the object starts with x. Or
  • letter y, for example, if the object starts with y.

State Machine Interactions

About

Play the I Spy game with the Kinova Gen3 Robot!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 75.6%
  • CMake 24.4%