Microprocessor Based Voice Controlled Robot

A robot is an electro-mechanical machine, guided by a computer program, made to help humans. Robots can be autonomous or semi-autonomous and range from humanoids, made for in-house assistance and entertainment, to industry robots and robots that replace men for performing dirty, dangerous, dull or inaccessible tasks.
There are also military, healthcare and research robots.

Robots can be controlled in many ways, and one of them is by voice. When we say voice control, the first term to be considered is speech recognition. Speech recognition is a technology used by the system in order to recognize the words given through speech. Voice recognition module can be programmed to recognize the unique words one wants to be recognized. This way of robot control, allows user to perform other tasks simultaneously.


Speech recognition types

Speech recognition is the process of electronically converting a speech waveform into words. This involves several essential steps:
  • A microphone picks up the signal of the speech to be recognized and converts it into an electrical signal. A modern speech recognition system also requires that the electrical signal be represented digitally by means of an analog-to-digital (A/D) conversion process, so that it can be processed with a digital computer or a microprocessor. 
  • This speech signal is then analyzed (in the analysis block). The most prevalent feature of speech is derived from its short-time spectrum, measured successively over short-time windows of length 20–30 milliseconds, overlapping at intervals of 10–20 milliseconds. Each short-time spectrum is transformed into a feature vector, and the temporal sequence of such feature vectors thus forms a speech pattern. 
  • The speech pattern is then compared to a store of phoneme patterns or models through a dynamic programming process in order to generate an assumption of the phonemic unit sequence. A phoneme is a basic unit of speech and a phoneme model is a succinct representation of the signal that corresponds to a phoneme, usually embedded in a statement.
There are two types of speech recognition:

1.Speaker dependent systems are set by the individual who will be using the system. These systems are capable of achieving a high command count and better than 95% accuracy for word recognition. The drawback to this approach is that the system responds accurately only to the individual who has set the system.

2.Speaker independent is a system set to respond to a word regardless of who speaks. Therefore the system must respond to a large variety of speech patterns, inflections and enunciation's of the target word. The command word count is usually lower than the speaker dependent. However high accuracy can still be maintain within processing limits. Industrial requirements more often need speaker independent voice systems, such as the AT&T system used in the telephone systems.

Speech recognition styles

Speech recognition systems have another constraint concerning the style of speech they can recognize. They are three styles of speech: isolated, connected and continuous.
  • Isolated speech recognition systems can just handle words that are spoken separately. This is the most common speech recognition systems available today. The user must pause between each word or command spoken.
  • Connected is a half way point between isolated word and continuous speech recognition. Allows users to speak multiple words.
  • Continuous is the natural conversational speech we are used to in everyday life. It is extremely difficult for a recognizer to shift through the text as the words tend to merge together.
Why is this important?

Introducing speech recognition is a natural goal in robotics as it is one of the most common forms of communication for humans. In human language, this is referred to as natural language. This is very advanced as it depends on the context, the person, the moment, etc.

Robots are indispensable in many manufacturing industries. The reason is that the cost per hour to operate a robot is a fraction of the cost of the human labor needed to perform the same function. More than this, once programmed, robots repeatedly perform functions with a high accuracy that surpasses that of the most experienced human operator. Humans can switch job tasks easily. Robots are built and programmed to be job specific. As robots evolve, they will become more versatile, emulating the human capacity and ability to switch job tasks easily. Robots require a combination of elements to be effective: sophistication of intelligence, mobility, navigation, and purpose. Without risking human life, robots can replace humans in some hazardous duty service. Robots can work in all types of polluted environments, chemical as well as nuclear.

How it was before

Mobile robots have the capability to move around in their environment and are not fixed to one physical location. Mobile robots can be "autonomous" (AMR - autonomous mobile robot) which means they are capable of navigating an uncontrolled environment without the need for physical or electro-mechanical guidance devices. Alternatively, mobile robots can rely on guidance devices that allow them to travel a pre-defined navigation route in relatively controlled space (AGV - autonomous guided vehicle).

The components of a mobile robot are a controller, control software, sensors and actuators. The controller is generally a microprocessor, embedded microcontroller or a personal computer (PC). Mobile control software can be either assembly level language or high-level languages such as C, C++, Pascal, Fortran or special real-time software. The sensors used are dependent upon the requirements of the robot. The requirements could be dead reckoning, tactile and proximity sensing, triangulation ranging, collision avoidance, position location and other specific applications.

Mobile robot control
  • Manual remote or tele-op
    • A manually teleoperated robot is totally under control of a driver with a joystick or other control device. The device may be plugged directly into the robot, may be a wireless joystick, or may be an accessory to a wireless computer or other controller. A tele-op'd robot is typically used to keep the operator out of harm's way.
  • Guarded tele-op
    • A guarded tele-op robot has the ability to sense and avoid obstacles but will otherwise navigate as driven, like a robot under manual tele-op.
  • Line-following Car
    • Some of the earliest Automated Guided Vehicles (AGVs) were line following mobile robots. They might follow a visual line painted or embedded in the floor or ceiling or an electrical wire in the floor.
  • Autonomously randomized robot
    • Autonomous robots with random motion basically bounce off walls, whether those walls are sensed
  • Autonomously guided robot
    • An autonomously guided robot knows at least some information about where it is and how to reach various goals and or waypoints along the way. "Localization" or knowledge of its current location is calculated by one or more means, using sensors such motor encoders, vision, lasers and global positioning systems. Positioning systems often use triangulation, relative position and/or Monte-Carlo/Markov localization to determine the location and orientation of the platform, from which it can plan a path to its next waypoint or goal.
Advantages of using this technology

Speech recognition technology has endless applications. Commonly, such software is used for automatic translations, dictation, hands-free computing, robotics, automated customer service, and much more.

Voice controlled robots can be used to help disabled persons. Robots used in home automation have developed over time from simple basic robotic assistants, through to semi-autonomous robots, which can assist the elderly and disabled with common tasks.

The population is aging in many countries, especially Japan, meaning that there are increasing numbers of elderly people to care for, but relatively fewer young people to care for them. Humans make the best care, but where they are unavailable, robots are gradually being introduced, and the easiest way for the elderly and disabled to control the robots, is by voice.

How can you build it?

Here is shown how to assemble the robot mechanically, how to program microcontroller and how to configure voice recognition.

1. Microphone
2. On/Off switch
3. 6 V battery
4. Servo No.1
5. Servo No.2
6. VRbot Voice Recognition Module
7. Microcontroller

Robot parts list:
  • 1 VRbot Voice Recognition Module
  • 2 servos - HS-311

  • 2 servo mounts

  • 2 wheels
  • 1  6V NiMH battery
  • 1 small piece of plastic (scrap)
  • 16  4/40 screws
  • 1 Axon II microcontroller

    • 1. B7 for right servo
    • 2. B6 for left servo
    • 3. Battery connection
    • 4. U2 for VRbot module
    • 5. Regulated voltage for VRbot module


Installing Software:

Getting started tutorial can be found here: http://societyofrobots.com/axon2/axon2_setup1.shtml

Full video tutorial for programming the robot can be found here:


Configure VRbot:

The last step is to program in voice commands using VRbot. The easiest way to do this is with a TTL serial to USB adapter. Make sure VRbot is powered using the 5V USB output.

Full video tutorial for configuring VRbot can be found here:
Blog Widget by LinkWithin

No comments:

Post a Comment