Wednesday, January 22, 2014

National Robotics Competition (NRC) 2012 - Robot Connecting People - StP...






CUTIE, THE ROBOTIC PET 3.0

Vision
To produce an Interactive Robotic Pet as the Human Companion

Mission
1. Robot Pet that has artificial intelligent and can explore the room by himself; play with people.
2. Robot Pet that behave like human that has the emotion in its action.
3. Robot Pet that obey the commands with human voice.

Objective
1. Playing Mode: Robot Pet that can explore the room by himself; trying to avoid walls with its ultrasonic “eyes”, and can get him to turn in one direction or the other direction by calling him and it will hear you with its sound sensor and come to you.
2. Emotion Mode: Robot Pet that will get into different moods when different color plates detected on its body.
3. Obedient Mode: Robot Pet that obey the human voice commands, “Run”, “Stop”, “Turn Left” and “Turn Right” with its sound sensor, make it connecting the people in real time.

Introduction about the project in detail
A Robotic Pet is an artificially intelligent machine made in the image of an animal commonly kept as a pet. So far, these animals include dogs, cats, rabbits, and birds. Some people even treat these robots as actual pets. Robotic pets may also include things not normally considered pets, like Plea, a simulation robotic dinosaur.

Perhaps the best known form of robot companion for now is robotic pets, usually in the shape of real or mythical animals. Animal robot companies like Sony’s AIBO are highly popular with the physically & mentally ill and elderly, as these pets provide them with much needed comfort and companionship, without hassles that come with taking care of live animals.

After conducting some study and research, we found that to make the robotic pets to become human companion, the robot needs to perform at least in three different modes:

A) Playing Mode – The robot can play with human.
B) Emotion Mode – The robot has the emotion like human.
C) Obedient Mode – The robot can obey commands given by human.

Therefore, our team has decided to build a Robotic Cat.

Synopsis of the project
(a) Background
We used ideas we got from many online sources such as Wikipedia, Youtube, Google, etc to get ideas for the design of the robot. We also substituted the ideas from the pictures when building our robot.
AIBO (Artificial Intelligence roBOt) was one of the several types of robotic pets designed and manufactured by Sony. AIBO is able to walk, “see” its environment via camera and recognize spoken commands in Spanish and English. AIBO robotic pets are considered to be autonomous robots since they are able to learn and mature based on external stimuli from their owner, their environment and from other AIBOs. Using AIBO, medical researchers were able to confirm the emotional and even some physical benefits of robotic pet companionship, especially for seniors and disabled groups. Some of the researchers in the university have published several findings that robotics pets are beneficial to health, and that these companion machines could even be improved to perform more specific tasks, such as reminding patients to take their medication.

(b) Robot functionality
1) Playing Mode: People can play with CUTIE in this mode. In this mode, the robot will use its ultrasonic sensor to detect the object in front. It will stop immediately when the objects come closer. He will turn in its neck to left direction first to check by using sound sensor if anyone calls him. If there is someone calls him, it will move to left direction and vice versa. When no sound is detected, CUTIE will turn to the direction of wider space. CUTIE will keep meowing until the end of the program.

2) Emotion Mode – The color sensor is used as the Emotion Sensor to detect the emotion of the human. The robot will be in different emotional mode like Happy, Joyful, Sad and Anger when the plate with different color is detected by the color sensor. When the robot is in “Sad” feeling (Blue Color plated detected), then, it will meow and move in slow movement. If Green color is detected, means it is in “Happy” feeling, then, it will meow and move in very fast movement. If Yellow color is detected, it is in “Joy” feeling, and then it will meow and move, turn in fast movement. If Red color is detected, then it is in “Anger” feeling, CUTIE will move in a very aggressive way forward and backward. No movement and just meowing when Black or White is detected. Obedient Mode – In this mode, the program uses a couple of tricks to distinguish between the four voices commands that the robot can understand. The NXT’s sound sensor is very simple and is only capable of measuring the loudness of sound that it hears, so the Robot program uses a few simple tricks based on the loudness and timing of your voice to determine what command you are saying. Here is the description of how each command should sound, along with a picture of what the graph might look like for the sound on the NXT’s display.
By using the sound sensor as the voice detector, the robot can listen to the simple commands, “Run”, Turn Left”, “Turn Right” and “Stop”. When the robot is moving forward you can only give the “Stop” command, and when the robot is stopped you can only give the “Go” or “Run”, “Turn Right” or “Turn Left” commands. You must pause or touch the robot’s touch sensor in between the voice commands, to allow the robot to know that this is the end of the command and the robot can start the action.

(c) Uniqueness and interactive behavior
1) Our robot can interact and play with human.
2) Our robot has the feeling like human.
3) Our robot can listen to the voice command; make it connecting to people in real time.
Comparison of the usages of the Sony AIBO with our robot CUTIE is in the appendix.




Sensors
from SONY AIBO
(Dog)

Usage

Sensor
from CUTIE
(Cat)

Usage

Touch Sensor

For
recognizing tactile simulation like being pet or hit.

Touch Sensor

For
recognizing the tactile simulation (skin) for the robot to move the next
action.

Range Finder

For
detecting the distance to objects.

Ultrasonic Sensor

For
detecting the distance to objects to avoid them.

Color CCD Camera

For
detecting the shapes and colors of objects when approaching or avoiding them.

Color Sensor

For
detecting the color of the plate to express the mood/emotion (Happy, Joy,
Sad, Anger) of the robot.

Miniature Speaker

Allows
“AIBO” to make sounds

NXT Speaker

Allows
“CUTIE” to make the “meow” sound.

Mini Stereo Microphone

For
detecting the direction of a sound source and hearing sound from the remote
control.

Sound Sensor

To detect
the sound level and hearing the voice commands from the human.


Designing and Building Process
(a) Concept and Implementation

(b) Brainstorming and solution to the problem
1) Due to the sensitivity of the sound sensor, in Obedient mode, we have added one touch sensor in order to let our robot know and go ahead with next action when the touch sensor is bumped. This is to replace the sound sensor sensitivity of Quiet level.
2) The front castor wheels on this robot work OK on smooth hard floors because this robot has less than half of the total robot weight over the drive wheels. To turn easily on carpet, you need most of the weight of the robot on the wheels are driven by the motors and less weight on any other wheels.

(c) Engineering and stability of the structures
1) Two NXT Motors connected to port B and C is use for the movement action.
2) Touch Sensor - For recognizing the tactile simulation (skin) for the robot to move to the next action.
3) Color Sensor - For detecting the color of the plate to express the mood/emotion.
4) NXT Speaker -Allows “CUTIE” to make the “meow” sound.
5) NXT Motors connected to the port A for Neck Moving.
6) Sound Sensor - To detect the sound level and hearing the voice commands from the human.
7) Ultrasonic Sensor - For detecting the distance to objects to avoid them.

Programming
(a) Concept
After brainstorming with the group, we have gathered some programming techniques from the sample program we found from the Internet to program our robot.
1) Playing Mode – The robot will go straight for 1 second or it founds something in front less 12 inches, the robot will stop. The neck of the robot will turn left. If there is someone calls the robot, the robot will turn to left direction. If no one calls him, it will turn its neck to right. If someone calls at this position, it will turn to right direction. If no one calls him, it will check if distance from the left direction if greater than right direction. Bigger distance value means more space. The robot will turn to that direction.
2) Emotion Mode – The robot will do the action when the color sensor senses the color of the plate given. If Black or White plate is given, no action and only the dog “Barking” sound. If the robot senses the Blue color, assuming the dog is in sad feeling, the robot will move in slow movement with meowing sound. If Green and Yellow are sensed, assuming the dog is in Happy and Joy feeling respectively, the robot will move faster with meowing sound. If Red color is sensed, assuming the robot is in angry feeling, the robot will move in a very fast motion.
3) Obedient Mode – The key to getting the "Go", "Turn Right", and "Turn Left" commands right is the timing of the loudest part of the command. Note that the graph displayed on the NXT is divided into three parts by the two vertical lines, and the program will draw a tick mark along the horizontal line at the top of graph where the loudest part of the command was heard:

a. If the tick mark ends up in the left part of the graph, it will be "Go".
b. If the tick mark ends up in the middle part of the graph, it will be "Turn Right".
c. If the tick mark ends up in the right part of the graph, it will be "Turn Left".

The Wiring, functionality and used in which mode of the input / output of the NXTs are listed in the table below.




Port

Input /
Output

Functionality

Playing
Mode

Emotion
Mode

Obedient
Mode

B

NXT Motor

Motion
Movement.



x

x

x

A

NXT Motor

Neck
Movement.

x

x

x

C

NXT Motor

Motion
Movement.

x

x

x

1

Color
Sensor

Detect the
color of the plate.



x



2

Sound
Sensor

Detect the
sound level of the voice.

x



x

3

Touch
Sensor

Move to
next action when bumped.





x

4

Ultrasonic
Sensor

Detect the
object in range.

x







 (b) Brainstorming and solution to the problem

1) The initial program of this robot is that there is no meowing sound. To make it like a real peg, we have found the dog meowing sound on the internet. But the sound is in wav format. So, we are using a program call wav2rso.exe to convert the wav file into rso sound file which is recognized by the NXT.

2) Programming also a big challenge for us as we want to make an artificial intelligent robot. Luckily we get lot of guidance from our Mentor and slowing by slowing we are able to master and complete our programming.

No comments:

Post a Comment