Operando gadgets da vida diária usando sistema de reconhecimento de voz e controladores incorporados

Operating daily life gadgets using voice recognition system and embedded controllers

((wysiwyg_imageupload:1726:))Mr. Arul Nathan is an electronics and communications engineer from Chennai. Currently working as “ASSOCIATE TECH SUPPORT” at “ACCEL FRONTLINE”

Introduction
1.1 GENERAL

This chapter addresses the purpose and unique features of the report project and organization.

1.2 GOAL

The aim of the project work is to build an aid for people with physical disabilities, enabling them to operate normal daily life devices easily and conveniently, using a voice recognition system and embedded controllers. The chosen application is the GSM MODEM, in which basic mobile phone operations are carried out.

1.3 EXISTING TECHNOLOGY

In the current generation, cell phones have become essential equipment for communication. In mobile phones, we have a special feature called voice tag which helps the user to store voice notes for a corresponding contact. Whenever the user repeats that voice note, the corresponding number of that contact will be dialed. This makes the user call the numbers using voice easily.

1.4 DISADVANTAGES OF THE EXISTING SYSTEM

In currently existing technology we cannot call or store a new number in the database using voice input. The reason is that when you give it some voice input, it simply samples it and stores it in the form of digital data. It does not have the ability to identify the characters present in that voice input. This has been the main disadvantage because every programming language requires a sequence of characters, which helps to perform necessary operations like storing a name or number.

1.5 HOW TO OVERCOME THIS DISCOUNT

We solved this problem by simply allocating separate voice tags for all alphabets, numbers, and some special commands. So, whenever a person wants to perform any operation, he will simply say the required command followed by spelling out the required characters one after the other.

During the time interval between each character being written, the character tag will be identified and corresponding characters will be generated in the microcontroller. After recognizing the required command (a set of characters) to accept voice input, the recognized characters will be converted to string. This character sequence will then be used to perform the required operation such as store, recall, retrieve, etc.

1.6 UNIQUE PROJECT FEATURES

· Single-chip speech recognition circuit capable of recognizing characters to generate the character sequence with the help of a microcontroller.

· It can be operated in any language as per the user's preference.

· Highly secure, as only the user knows which language is used to operate the kit.

· Unique voice-operated phonebook feature.

· Caller information.

· Basic mobile phone operations such as storing, retrieving, deleting and calling can be performed.

CHAPTER 2

Block diagram description

2.1 GENERAL:

This chapter deals with the general block diagram and overview of each module that must be interfaced to make a call to a required number and also to retrieve the phone number of the person calling the user.

Voice recognition project1 Fig 2.2 General block diagram

General Circuit Diagram: Check Circuit Diagram Tab 1.

2.4 OVERVIEW OF MODULES

The task is divided into the following modules.

1. Speech recognition circuit.

2. Dial circuit

2.4.1 Speech recognition circuit:

This kit is used to store and recognize voice. This kit contains IC HM2007, DTMF keyboard, RAM, latches, 7-segment decoder and 7-segment display. Using these components the voice is stored and recognized.

2.4.2 Dialing circuit:

It consists of a decoded GSM modem. Here each button is decoded and its inputs are given to the relays which helps in enabling the corresponding button by energizing the corresponding enable coil activating the corresponding relay and a call is made to that number.

2.5 POWER SUPPLY

2.5.1. Power supply – an introduction

Power supply is a very important section of all electronic devices as all electronic devices work on DC only. An important aspect of the design is that the power supply must be compact. Most electronic devices need a DC power source.

The power supply unit consists of the following units:

1. Step-down transformer

2. Rectifier unit

3. Input Filter

4. Regulatory unit

5. Output filter

The circuit is powered by a 12 VDC adapter, which is supplied to the LM7805 voltage regulator via a forward voltage protection diode and is decoupled via a 0.1 uf capacitor. The voltage regulator provides an output of exactly 5 Vdc. 5V DC power is supplied to all components, including the microcontroller, serial port, and IR transmitters and sensors.

AC power which, when fed to the step-down transformer, levels to 12 volts AC. This is then fed to a full wave rectifier which converts it to 12 volts DC. This is then passed through a filter to remove the ripples. It is then fed to a voltage regulator that converts stable 12V voltages and currents to 5V.

2.5.2. Step-down transformer

Step-down transformer is used to reduce the main supply voltage from 230AC to a lower value. This 230AC voltage cannot be used directly, so it is reduced. The transformer consists of primary and secondary coils. To reduce or lower the voltage, the transformer is designed to contain fewer turns in its secondary core. Thus, conversion from AC to DC is essential. This conversion is achieved using the rectifier circuit.

2.5.3. Rectifier Unit

The rectifier circuit is used to convert the AC voltage into its corresponding DC voltage. There are half-wave and full-wave rectifiers available for this specific function. The most important and simple device used in the rectifier circuit is the diode. The simple function of the diode is to conduct when forward biased and not to conduct when reverse biased. Forward bias is achieved by connecting the positive of the diode to the positive of the battery and the negative to the negative of the battery. The efficient circuit used is full wave bridge rectifier circuit. The output voltage of the rectifier is in wavy form, the ripples from the DC voltage obtained are removed using other available circuits. The circuit used to remove the ripples is called a filter circuit.

2.5.4. Input filter

Capacitors are used as filters. The dc voltage ripples are removed and pure dc voltage is obtained. The main action performed by the capacitor is charging and discharging. It charges on the positive half cycle of AC voltage and discharges on the negative half cycle, so it only allows ACC voltage and does not allow DC voltage. This filter is fixed before the regulator. Thus, the output is free from ripples.

2.5.5. Regulatory Unit

The regulator regulates the output voltage to always be constant. The output voltage is maintained regardless of fluctuations in the input AC voltage. As the AC voltage changes, the DC voltage also changes. To avoid this, regulators are used. Furthermore, when the internal resistance of the power supply is greater than 30 ohms, the pull up is affected. So this can be successfully reduced here. Regulators are mainly classified for low voltage and high voltage.

2.5.6. IC Voltage Regulators

Voltage regulators comprise a class of widely used ICs. Regulator IC units contain the circuitry for reference source, comparator amplifier, control device and overload protection all in a single IC. Although the internal construction of the IC is somewhat different from that described for discrete voltage regulator circuits, the external operation is practically the same. IC units provide regulation of a fixed positive voltage, a fixed negative voltage, or an adjustable voltage.

A power supply can be built using a transformer connected to the AC power line to increase the AC voltage to the desired amplitude and then rectify this AC voltage using the IC regulator. Regulators can be selected for operation with load currents from hundreds of milliamps to tens of amps, corresponding to power ratings from milliwatts to tens of watts.

The purpose of the regulator is to keep the output voltage constant regardless of fluctuations in the input voltage. The Microcontroller and PC operate with a constant supply voltage of +5V, -5V and +12V and -12V respectively. Regulators are primarily rated for positive and negative voltage.

2.5.7. LM 7805 voltage regulator

Characteristics

1. Output current up to 1A

2. Output voltages of 5, 6, 8, 9, 10, 11, 12, 15, 18, 24V

3. Thermal overload protection

4. Short circuit protection

5. Protection of the safe operating area of ​​​​the output transistor

Description

The MC78XX/LM78XX series of three-terminal positive regulators are available in the TO-220/D-PAK package and with a variety of fixed output voltages, making them useful in a wide range of applications.

Each type employs internal current limiting, thermal shutdown, and secure protection of the operating area, making it essentially indestructible. If suitable heat sink is provided, they can provide output current greater than 1A.

2.5.8 Output Filter

The filter circuit is usually fixed after the regulator circuit. The capacitor is most often used as a filter. The principle of the capacitor is to charge and discharge. It charges during the positive half cycle of AC voltage and discharges during the negative half cycle. Therefore, it allows AC voltage and not DC voltage. This filter is fixed after the regulator circuit to filter out any of the ripples possibly found in the finally received output. The output at this stage is 5V and is supplied to the 89S52 Microcontroller.

CHAPTER 3

Atmel Microcontroller

Chapter three deals with microcontrollers. Refer to the links below for microcontroller details:

Chapters 4

Speech Recognition Kit and Dialing Circuit Descriptions

4.1 GENERAL:

This chapter deals with brief descriptions of various modules required to call a desired number with the help of voice input. The modules are voice recognition circuit and dialer circuit.

4.2 VOICE RECOGNITION CIRCUIT:

4.2.1 IN GENERAL:

This kit is used to store and recognize voice. HM2007 is a 48-pin single-chip CMOS speech recognition LSI circuit with on-chip analog front end, speech analysis, recognition process and system control function

During the training period, the input voices are stored in a specified location in RAM with the help of HM2007 and the keyboard. Similarly, when characters are written, the corresponding location of the character is displayed on the seven-segment display and is also sent to the ATMEL controller.

4.2.2 OPERATION OF THE VOICE RECOGNITION CIRCUIT:

The figure on the Circuit Diagram 2 tab describes the circuit diagram of the speech recognition kit. The IC HM2007 has the capacity to recognize 40 isolated characters. There are two modes: Training and reconnaissance. During the training period (mode), the input voices are stored in the specified locations of RAM with the help of HM2007 and keyboard. During recognition mode, when voice input is provided through the microphone, the corresponding location of that voice input in RAM is displayed on the seven-segment display and is also sent to the PIC controller for further processing.

4.2.3 REQUIRED COMPONENTS

• KEYBOARD

• CI HM2007

• HY6264A RAM

• LOCK SN74LS373N

• SN74LS47N 7-SEGMENT DECODER – 2NOs

• 7-SEGMENT DISPLAY – 2NOs

4.2.3.1 KEYBOARD

The keyboard consists of 0 to 9 keys, clear key at the bottom left and training key at the bottom right.

4.2.3.2 IC HM2007

It has two basic modes of operation training and recognition mode. During training mode, the input voice is stored in a specified location in RAM with the help of HM2007 and keyboard. When characters are written, the corresponding location of the character is displayed on the seven-segment display and is also sent to the ATMEL controller.

4.2.3.3 RAM HY6264A

It is an 8K RAM used to store the HM2007IC data. Memory locations will be allocated automatically by the HM2007IC.
4.2.3.4. LOCK SN74LS373N:

It is used to get the output for the microcontroller and 7-segment decoder. When the DE signal is enabled, the output is obtained at the latch.

4.2.3.5 7-SEGMENT DECODER:

A decoder is a device that does the opposite of an encoder , undoing the coding so that the original information can be recovered. The same method used to encode is often just reversed to decode.

A decoder can take the form of a multiple-input, multiple-output decoder. logic circuit that converts coded inputs into coded outputs, where the input and output codes are different. for example, n to 2n , decimal encoded in binary decoders. The enable inputs must be on for the decoder to work, otherwise their outputs assume a single “off” output codeword. Decoding is required in applications such as data multiplexing , 7-segment display and memory address decoding.

It is used to decode the hexadecimal inputs to corresponding 7-segment display of the latch.

4.2.3.6 7-SEGMENT DISPLAY:

A seven-segment display, as the name suggests, is made up of seven elements.

In most applications, the seven segments are nearly uniform in shape and size (usually elongated). Hexagons however trapezoids and rectangles can also be used), although in the case of adding machines the vertical segments are longer and have more odd shapes at the ends in an effort to further improve readability.

Each of the numbers 0 , 6 , 7 , and 9 can be represented by two or more different glyphs on seven-segment displays.

IN design the seven segments are arranged as a rectangle of two vertical segments on each side with a horizontal segment at the top, center and bottom. Furthermore, the seventh segment divides the rectangle horizontally. There are also fourteen-segment monitors and sixteen-segment monitors (for full alphanumeric ); however, these have mostly been replaced by dot matrix displays.

Seven-segment displays may use a liquid crystal display (LCD), arrays of light-emitting diodes (LEDs), or other light generation or control techniques such as cold cathode gas discharge, vacuum fluorescent , incandescent filaments , and others.

There are two 7-segment displays available used to display the two-digit numbers entered via the keypad and the HM2007IC.

Numbers for 7 segment code

A single byte can encode the entire state of a 7-segment display. The most popular bit encodings are gfedcba and ABCDEFG – both generally assume that 0 is off and 1 is on .

This table provides the hexadecimal encodings for displaying the digits 0 through F:

Digit

gfedcba

A B C D E F G

The

B

W

d

It is

f

g

0

0x3F

0x7E

about

about

about

about

about

about

off

1

0x06

0x30

off

about

about

off

off

off

off

two

0x5B

0x6D

about

about

off

about

about

off

about

3

0x4F

0x79

about

about

about

about

off

off

about

4

0x66

0x33

off

about

about

off

off

about

about

5

0x6D

0x5B

about

off

about

about

off

about

about

6

0x7D

0x5F

about

off

about

about

about

about

about

7

0x07

0x70

about

about

about

off

off

off

off

8

0x7F

0x7F

about

about

about

about

about

about

about

9

0x6F

0x7B

about

about

about

about

off

about

about

A

0x77

0x77

about

about

about

off

about

about

about

B

0x7C

0x1F

off

off

about

about

about

about

about

W

0x39

0x4E

about

off

off

about

about

about

off

D

0x5E

0x3D

off

about

about

about

about

off

about

AND

0x79

0x4F

about

off

off

about

about

about

about

F

0x71

0x47

about

off

off

off

about

about

about

CHAPTER 5

GSM MODEM OPERATION

5.1 GENERAL

GSM (Global System for Mobile Communications: originally from Groupe Special Mobile) is the most popular cell phone standard in the world. Its promoter, the GSM Association, estimates that 80% of the global mobile market uses the standard. GSM is used by more than 3 billion people in more than 212 countries and territories.

Its ubiquity makes international roaming very common among mobile phone operators, allowing subscribers to use their phones in many parts of the world. GSM differs from its predecessors in that both signaling and voice channels are digital, and it is therefore considered a second generation (2G) mobile telephone system.

This also meant that data communication was easy to incorporate into the system. GSM EDGE is a 3G version of the protocol.

The ubiquity of the GSM standard has been an advantage both for consumers (who benefit from the ability to roam and change carriers without changing phones) and also for network operators (who can choose equipment from any of the many providers that implement the GSM).

GSM also pioneered a low-cost (for the network operator) alternative to voice calling, short message service (SMS, also called “text messaging”), which is now also supported on other mobile standards . Another advantage is that the standard includes a worldwide emergency telephone number, 112.

This makes it easier for international travelers to connect to emergency services without knowing the local emergency number. 22

5.2 SIM300 GSM

Designed for the global market, the SIM300 is a Tri-band GSM/GPRS engine that operates on the EGSM 900 MHz, DCS 1800 MHz and PCS1900 MHz frequencies. The SIM300 provides class 10 multi-slot GPRS capabilities and supports GPRS CS coding schemes -1, CS- 2, CS-3 and CS-4.

With a tiny configuration of 40mm x 33mm x 2.85mm, the SIM300 can accommodate almost all space requirements in your application, such as smartphones, PDA phones and other mobile devices. SIM300 is designed with energy saving technique, with current consumption as low as 2.5 mA in SLEEP mode. 23

5.3. MAX 232

IC MAX 232 is used for communication between microcontroller and PC. The capacitors around the IC max232 are mainly used to pump voltage from the microcontroller to the PC. The MAX232 line driver/receiver is intended for all EIA/TIA-232E and V.28/V.24 communication interfaces and in particular for those applications where ±12V is not available. Contains 2 RS-232 drivers and 2 receivers. The MAX232 operates on a single +5V power supply. This part is especially useful in battery-powered systems, as its low-power shutdown mode reduces power dissipation to less than 5mW.

The microcontroller can only work at logic levels of minimum 0v and maximum 5v and the PC works at minimum voltage levels of -12v to +12v. For serial port communication to occur between the microcontroller and the PC, the voltage levels must be converted. The MAX232 converter is responsible for making this conversion. The PC works with the RS232 standard while the microcontroller works with TTL logic. MAX232 IC level converter is used for converting TTL logic to RS232 logic.

The MAX232 line driver/receiver is intended for all EIA/TIA-232E and V.28/V.24 communication interfaces and in particular for those applications where ±12V is not available. Contains 2 RS-232 drivers and 2 receivers.

The MAX232 operates on a single +5V power supply. This part is especially useful in battery-powered systems, as its low-power shutdown mode reduces power dissipation to less than 5mW.

5.4. WORKING

The microcontroller can only work at logic levels of minimum 0v and maximum 5v and the PC works at minimum voltage levels of -12v to +12v. For serial port communication to occur between the microcontroller and the PC, the voltage levels must be converted. The MAX232 converter is responsible for making this conversion.

The MAX232 line driver/receiver is intended for all EIA/TIA-232E and V.28/V.24 communication interfaces, especially applications where ±12V is not available. These parts are especially useful in battery-powered systems, as their low-power shutdown mode reduces power dissipation to less than 5 µW. The MAX232 does not use external components and is recommended for applications where printed circuit board space is critical.

5.5. Forms

• Laptops

• Low consumption modems

• Interface Translation

• Battery-powered RS-232 systems

• Multipoint RS-232 networks

The MAX232 contains four sections: dual charge pump DC-DC voltage converters, RS-232 drivers, RS-232 receivers, and receiver and transmitter enable control inputs.

5.6. Dual Charge Pump Voltage Converter

The MAX232 has two internal charge pumps that convert +5V to ±10V (no load) for RS-232 driver operation. The first converter uses capacitor C1 to double the +5V input to +10V at C3 at the V+ output. The second converter uses capacitor C2 to invert +10V into -10V at C4 at the V- output. A small amount of power can be drawn from the +10V(V+) and -10V (V-) outputs to power external circuits.

V+ and V- are not regulated, so the output voltage drops with increasing load current. Do not load V+ and V- to a point that violates the EIA/TIA-232E driver's minimum output voltage of ±5V when supplying V+ and V- current to external circuits.

5.7. RS-232 Controllers

Typical driver output voltage swing is ±8V when loaded with 5k. RS-232 receiver and VCC =+5V. Output swing is guaranteed to meet EIA/TIA-232E and V.28 specifications, which require minimum driver output levels of ±5V under worst-case conditions. Input limits are compatible with TTL and CMOS.

Unused driver inputs can be disconnected since 400k. input pull-up resistors for VCC are integrated (except for the MAX220). Pull-up resistors force the outputs of unused drivers low because all drivers invert. Internal input pull-up resistors typically provide 12 µA, except in shutdown mode where pull-ups are disabled. The driver outputs are turned off and enter a high impedance state – where the leakage current is typically microamps (maximum 25 µA) – when the turn off is removed. The outputs can be driven to ±15V. Power supply current typically drops to 8 µA in shutdown mode. The MAX220 does not have pull-up resistors to force the outputs of unused drivers low. Connect unused inputs to GND or VCC.

Chapter 6

SOFTWARE DESCRIPTION

6.1 TYPES OF TOOLS:

KEIL C

ORCAD

· Capture

· Disposition

6.1.1 KEIL C:

Keil Software is the leading provider of 8/16-bit development tools (ranked #1 in the 2004 Embedded System Market Study and EE Times Magazine).

Keil software is represented worldwide in more than 40 countries since its introduction to the market in 1988; The Keil C51 compiler is the de facto industry standard and supports over 500 current variants of 8051 devices. Keil Software now offers development tools for ARM.

Keil Software manufactures C compilers, macro assemblers, real-time kernels, debuggers, simulators, integrated environments, and evaluation boards for the 8051, 251, ARM, and XC16x/C16x/ST10 families of microcontrollers.

The Keil C51 C compiler for the 8051 microcontroller is the most popular 8051 C compiler in the world. It provides more features than any other 8051 C compiler currently available.

The C51 Compiler allows you to write 8051 microcontroller applications in C that, once compiled, have the efficiency and speed of assembly language. Language extensions in the C51 compiler give you full access to all 8051 features.

The C51 compiler translates C source files into modules of relocatable objects that contain complete symbolic information for debugging with the µVision Debugger or an in-circuit emulator. In addition to the object file, the compiler generates a listing file that can optionally include a symbol table and cross-reference.

· Nine basic data types, including 32-bit IEEE floating point,

· Flexible allocation of variables with memory types bit, data, bdata, idata, xdata and pdata,

· Interrupt functions can be written in C,

· Full use of 8051 registration banks,

· Complete information about symbols and types for source-level debugging,

· Use of AJMP and ACALL instructions,

· Bit-addressable data objects,

Integrated interface for RTX51 real-time kernels,

· Support for Philips 8 x C750, 8 x C751 and 8 x C752 Limited Instruction Sets,

· Support for Infineon 80C517 arithmetic unit.

6.2 GENERAL

This chapter deals with algorithms.

6.3 CHARACTER RECOGNITION AND EXTRACTION ON THE MICROCONTROLLER

Step 1: Turn on the device.

Step 2: Train the characters at the specified location during the speech recognition kit training period.

Step 3: During the recognition period, when characters are written, their corresponding location number will be provided to the ATMEL microcontroller as input.

Step 4: When the input matches the predefined BCD numbers, their corresponding alphabets will be generated and stored in a stack.

Step 5: All written characters are recognized in this way and their corresponding characters are popped and stored on the stack and finally deployed as a string and stored in memory.

Step 6: These stored strings are then used for various operations like calling, playing the character, matching the numbers, etc.

Step 7: Shut down once the corresponding operations are completed.

6.4 DIALING A NUMBER

6.4.1 DIALING A STORED NUMBER

Step 1: Start the program.

Step 2: Check the input.

Step 3: If the input is equal to call, get the person's name.

Step 4: If the name is present in the database, call the corresponding number using the dialing circuit, enabling the corresponding relays for each number.

Step 5: If the input does not match the call, go to step 2.

Step 6: End the program.

6.4.2 DIALING A NEW NUMBER

Step 1: Start the program.

Step 2: Check voice input.

Step 3: If the input equals new, get the number to dial.

Step 4: Then call the corresponding number using the dialing circuit, enabling the corresponding relays for each number.

Step 5: Finish the program.

Chapter 8

CONCLUSION AND FUTURE WORK

8.1 CONCLUSION

A mobile aid has been developed for people with physical disabilities to operate their regular landline telephone. The kit uses a voice recognition system and embedded controllers to perform the necessary operations satisfactorily.

8.2 FUTURE WORK K

On cell phones we have a feature called voice tag, in which we can only record our voice in the contacts that are available in memory. We cannot store a number with our voice that is not present in the contact. Similarly, we cannot delete a number using voice.

In the future, all this can be implemented using the user's voice with the help of the built-in voice recognition controller, which can be embedded in the mobile phone. Thus, cell phones can function completely without the help of a person's hand. With this, people with physical disabilities, in addition to people who cannot speak and hear, can use cell phones without the help of other people.

Project source code

###

 


#include

main void

{

unsigned character i;

SCON=0x50;

TMOD=0x20;

TH1=0xfd;

TR1=1;

P1=0xff;

P3=0x0F;

del1;

delay1;

while(1)

{

if(P1==0x01)

{

txs('A');txs('T');txs(13); txs(10);

delay1;

}

if(P1==0x02)

{

txs('A');txs('T');txs('H');txs(13); txs(10); //To switch off

delay1;

}

if(P1==0x03)

{

txs('A');txs('T');txs('A');txs(13); txs(10); //To participate

delay1;

}

if(P1==0x04)

{

}

if(P1==0x05)

{

}

if(P1==0x06)

{

txs('A');txs('T');txs('D');

txs('8');txs('8');txs('2');txs('5');

txs('5');txs('7');txs('1');txs('5');txs('5');txs('9');txs(';');

txs(13); txs(10);

delay1;

}

if(P1==0x07)

{

txs('A');txs('T'); txs('D');

txs('9');txs('4');txs('4');txs('4');

txs('3');txs('4');txs('2');txs('3');txs('2');txs('5');txs(';');

txs(13); txs(10);

delay1;

}

if(P1==0x08)

{

txs('A');txs('T'); txs('D');

txs('9');txs('0');txs('0');txs('3');

txs('1');txs('2');txs('9');txs('8');txs('7');txs('6');txs(';');

txs(13); txs(10);

delay1;

}

if(P1==0x09)

{

txs('A');txs('T'); txs('D');

}

if(P1==0x10)

{

txs('0');

}

if(P1==0x11)

{

txs('1');

}

if(P1==0x12)

{

txs('2');

}

if(P1==0x13)

{

txs('3');

}

if(P1==0x14)

{

txs('4');

}

if(P1==0x15)

{

txs('5');

}

if(P1==0x16)

{

txs('6');

}

if(P1==0x17)

{

txs('7');

}

if(P1==0x18)

{

txs('8');

}

if(P1==0x19)

{

txs('9');

}

if(P1==0x20)

{

txs(';');txs(13); txs(10);

delay1;

}

###

Circuit diagrams

Voice recognition project
Voice recognition project3

Related Content

Back to blog

Leave a comment

Please note, comments need to be approved before they are published.