Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 34

List of Abbreviations

List of Symbols
List of Figures
List of Tables
1. INTRODUCTION
1.1 Introduction
1.2 Necessity
1.3 Objectives
1.4 Organization
2. LITRATURE SURVEY
2.1 A Study of Speech Recognition.
2.2 Tutorial on System Organization for Speech Understanding
2.3 An Overview of Speaker Recognition Technology
2.4 Component survey
3. SYSTEM DEVELOPMENT
3.1 Block Diagram
3.2 Circuit Diagram
3.3 Working
3.4 Flowchart
4. PERFORMANCE ANALYSIS
4.1 System testing
4.1.1 Testing Principles
4.1.2 Objectives of testing
4.2 Performance Evaluation
4.2.1 Hardware Design
1. Power Supply
2. Voice module for Arduino V2
3.Arduino Uno
4.Stepper Motor
5.Liquid Crystal Display
6.L293D Stepper motor driver module
5. CONCLUSION
5.1 Advantages
5.2 Applications
5.3 Conclusions
6. REFERENCES

1|Page
List of Figures
Fig. no. Illustration Page
1 Voice Recognition Module Block Diagram 5
2 Arduino Uno 7
3 Pin Diagram of Arduino Uno 8
4 LCD Module Pin Diagram 13
5 IC L293D Front View 15
6 Pin Diagram of IC L293D 15
7 Pin Diagram OF Stepper Motor (NEMA23) 18
8 Block Diagram 20
9 Circuit Diagram 21
10 Flow Chart of Program 23

List of Tables
Table Illustration Page
1 Pin Description of Arduino Uno 9
2 Specifications of Arduino Uno 10
3 Pin Configuration of LCD 13
4 LCD Command Codes 14
5 Pin Description of IC L293D 16

2|Page
1. INTRODUCTION:-

1.1 Introduction:-

Elevator is very common to us now days. The use of elevators is expanding in


different applications like those that they are used in carrying goods and carrying
people vertically in tall buildings like offices, shopping malls and other skyscrapers.
With increasing in technological advancement, the reliability is getting worse. Some
inventions are not even portable and require great efforts to handle. Therefore, we
have decided to come up with a new idea, which is fascinating as well as helpful. It is
tried to make it more automatic through our project. Speech recognition is the method
by which the elevator can be controlled using voice. Whenever it is dealt with voice
control, the first term come in our mind is Speech Recognition.
Speech recognition is a technology in which the system will understand the words
but not its meaning of the words. Speech is a best and ideal method to controlling the
elevator. Automatic speech Recognition is a technique by which a computer takes a
speech signal and Converts it into words. Microcontroller to gives appropriate
command to all attached devices uses those words.
Elevator has over the time become an important part of our day to day life. It is
used as an everyday transport device- useful to move goods as well as persons. In
modern word, city and crowded area require multi floor buildings. According to
wheelchair access laws, elevators/lifts are a must requirement in new multi-storied
buildings. The main purpose of this project is to operate elevator by voice command.
This project is operated based on voice, which could help handicap people or
dwarf people to travel from one place to another without the help of any other person.
The use of microcontroller is to control different devices and integrate each module,
namely – voice module, motor module & LCD. LCD is to display the present status of
the lift. The leading edge of our project is the “voice recognition system” which has
an accuracy of 99% which generates exceptional result while recognizing speech.

3|Page
1.2 Necessity:-

This project represents the voice operated intelligent lift. This follows the
principle of speech recognition. The lift is controlled by the user’s voice commands.
This project is useful for paralyzed, blind and physically challenged people. The lift
operates based on the input voice commands. This eliminates the use of buttons in the
lift and is user friendly. This project behaves like the human-machine interaction
system. This project will be highly beneficial for the society. The Stepper motor is
used for controlling the lift. The Arduino Uno is programmed using Embedded C
instructions.

1.3 Objectives:-

 Study about Voice Recognition Module

 Learn more about Voice Recognition

 Get familiar with Arduino UNO

 Interfacing Arduino UNO with Stepper motor.

4|Page
2. Literature Survey:

Kaladharan N “A Study of Speech Recognition” laid emphasis on types of speech


recognition technology developed in recent years and working for the same. The
researcher has described types of words,types of speaker models and other approaches
for the voice recognition system which provides a basic knowledge about speech
recognition system[3].
Reddy, D.R. &Ermann, “Tutorial on System Organisation for Speech Understanding”
described large variety in the speech recognition concept and it is important to
understand the differences between the systems. According to the researcher the
classification of voice recognition system can be done according to the size of the
vocabulary, type of speech,and the speaker dependence [2].
C. H. Lee; F. K. Soong; K. Paliwal, "An Overview of Speaker Recognition
Technology" gives overview on speaker recognition technology.Speaker-dependent
systems requires the user to record some words from the vocabulary to make the
words recognizable to the system and execute the command successfully. A speaker-
independent system does not need any type of recording, word, phrases to system use.
A speaker independent system is so advanced that it is capable to operate for any
speaker of a peculiar type (e.g., American English). A speaker adaptive system is
developed to adapt its operation to the characteristics of new speakers[4].
These all systems are useful according to their application.Roger K. Moore has
proposed innovative architecture for human- machine communication system based
on recent findings in the field of neurobiology of living systems. Called PRESENCE
— “Predictive sensor motor Control and Emulation” [5].

5|Page
3. System Development
3.1 Block Diagram:-

Power Supply

Voice
Recognition Motor
Module Driver

Arduino Uno

LCD Stepper
Motor

Figure 8. Block Diagram

6|Page
3.2 Circuit Diagram:-

Stepper Motor

Figure 9. Circuit Diagram

7|Page
3.3 Working:-
This project consists of mainly two components; voice module and
microcontroller. Voice module is main part of this project. Voice module provides
communication mechanism between user and microcontroller. Microprocessor is
capable to communicate all input and output device at same time. Stepper motor is
used to move lift upward and downward according to command of programed
microprocessor. Visual information of elevator provided on the LCD display. In this
project, demonstration of the working of a lift is simulated with the help of Arduino
Board along with the usage of Voice Module. The voice module used is Voice
Module v2, which operates at 5V and communicates serially. It can store 15 pieces of
information, however considering the requirements only used 3 voice signals, for 3
different floors.
The voice module outputs the data serially to the controller. The implementation
of the previously mentioned commands using the voice signals is to be performed by
an appropriate motor. In this project, motor with capacity of 4.2 kg-cm torque
Nema23 motor in bipolar mode is used. The choice for nema23 (National Electrical
Manufacturers Association) motor was based on its standardized parameters. L293
motor driver is driving the nema23 stepper motor. This system is operated based on
voice, so that the voice of any person can be used to control the elevator, the voice
signal of any person is converted in to hex-code by Voice module V2.
The programed Arduino Uno board uses that hex code and give proper task to
stepper motor. The use of microcontroller is to control different devices and integrate
every module, namely – voice module, motor module & LCD. LCD is to display the
present status of the lift. The block diagram of voice-controlled elevator is shown in
above fig. The communication between integrated modules happen using minimal 3-
wire RS-232 protocol. In addition, a 12V supply is required to be used.

8|Page
3.4 Program Explanation
Flowchart

Figure 10. Flowchart of Program

9|Page
Chapter 4: Performance Analysis

This chapter deals with the design of circuit diagram, PCB design and development
placing of component on PCB and soldering.it also deal with test result at various test
points during the process of system development . it help to. develop system with less
errors and more accurate. This chapter deals with the design of circuit diagram,
components, interfacing and it also deals with the test results of developed system.

4.1 System Testing :

System testing of software or hardware is testing conducted on a complete, integrated


system to evaluate the system's compliance with its specified requirements. System
testing falls within the scope of black box testing. And as such, should require no
knowledge of the inner design of the code or logic. As a rule, system-testing takes, as
its input, all of the "integrated" software components that have passed integration
testing and also the software system itself integrated with any applicable hardware
system. The most important part during develop of any project is the testing.
Therefore, first we check all the components are working properly or not

4.1.1 Testing principle:

 Many applications. They are quite thin and can easily be mounted wherever
they are needed Check those components agree with the parts List (value and
power of resistors, values and voltage rating of capacitors, rectifiers etc.).
 If there is a significant time elapse between circuit ,take the trouble to read the
article; the information is often given in a very condensed from Try to get
most important point out of the description of the operation of the circuit ,even
know Don't understand exactly what is supposed to happen.
 If there is any doubt that some component may not be exact equivalent, check
that they are compatible.
 Only use good quality IC sockets.
 Check the continuity of the tracks on the PCB (and through plated holes with
double-sided boards) with a resistance meter or continuity tester.

10 | P a g e
 Make sure that all drilling, filling and other 'heavy' work is done before
mounting any components.
 If possible keep any heat sinks well isolated from other components.
 Make a writing diagram of the layout involves lots of wises spread out in all
direction.
 Check the connectors used are compatible and that they are mounted the right
way round.

4.1.2 Objective of Testing:

Inspect all soldered joints by eye or using magnifying glass and check them with a
continuity tester . make sure there are no tracks are short circuited by poor soldering8
Ensure that the position of entire component agree with mounting diagram .Check
that any links needed are present and they are in right position to desire configuration
Check all polarized components (diodes, capacitors etc) are correctly. Check the
wiring (wateh for off cuts of components lead ) at the same time . Ensure that the
supply is located as closely as possible to the circuits Check that connections to the
earth are and they are good contact Make sure the circuit is working correctly before
spending any time putting it into a case

4.2 Performance Evaluation:

Any project is always needs to be evaluated in terms of its performance means in


terms Of efficiency, power consumption, speed required to do particular operation.
Particularly in this speed of data, transfer is matter of great concern as far as technical
inclinations are concerned. 1) Hardware design 2) Software design

4.3 Hardware Performance Analysis

I. Power Supply
Almost all basic household electronic circuits need an unregulated AC to be converted
to constant DC, in order to operate the electronic device. All devices will have a
certain power supply limit and the electronic circuits inside these devices must be able
to supply a constant DC voltage within this limit. This DC supply is regulated and
limited in terms of voltage and current. But the supply provided from mains may be

11 | P a g e
fluctuating and could easily break down the electronic equipment, if not properly
limited. This work of converting an unregulated alternating current (AC) or voltage to
a limited Direct current (DC) or voltage to make the output constant regardless of the
fluctuations in input, is done by a regulated power supply circuit.
All the active and passive electronic devices will have a certain DC operating
point (Q-point or Quiescent point), and this point must be achieved by the source of
DC power.
The DC power supply is practically converted to each and every stage in an
electronic system. Thus a common requirement for all these phases will be the DC
power supply. All low power system can be run with a battery. But, for a long time
operating devices, batteries could prove to be costly and complicated. The best
method used is in the form of an unregulated power supply –a combination of a
transformer, rectifier and a filter. The diagram is shown below.

As shown in the figure above, a small step down transformer is used to reduce
the voltage level to the devices needs. In India, a 1 Ø supply is available at 230 volts.
The output of the transformer is a pulsating sinusoidal AC voltage, which is converted
to pulsating DC with the help of a rectifier. This output is given to a filter circuit
which reduces the AC ripples, and passes the DC components. But here are certain
disadvantages in using an unregulated power supply.

12 | P a g e
II. Voice Module

Figure 1. Voice Recognition


Module

The Voice module (RKI-1199) performs speech recognition independently in a


stand-alone mode. The module could recognize the voice of the speaker. It receives
commands and acknowledge through serial port interface. It takes voice as input and
generates hex-code as output. The V2module can store up to 15 samples of voice
information. Those 15 samples are separated into three groups, with five in each
group. Those voice commands will be recorded in memory. It will not lose even with
power off. It works 5V-TTL interface. The serial data format: 8 data bits, no parity, 1
stop bit. The default

Baud rate is 9600 and it can be changed by software. Recognition accuracy of module
is 99% (under ideal environment)
Parameters
 Voltage: 4.5-5.5V
 Current: <40mA
 Digital Interface: 5V TTL level for UART interface and GPIO.
 Analog Interface: 3.5mm mono-channel microphone connector + microphone
pin interface.
 Size: 31mm x 50mm.
 Recognition accuracy: 99% (under ideal environment)
Features
 Support maximum 80 voice commands, with each voice 1500ms (one or two
words speaking).
 Maximum 7 voice commands effective at same time.
 Arduino library is supplied.
 Easy Control: UART/GPIO.
 User-control General Pin Output
13 | P a g e
III. Arduino Uno

Figure 2. Front View of Arduino Uno

The Arduino UNO is an open-source microcontroller board based on


the Microchip ATmega328P microcontroller and developed by Arduino.cc. The board
is equipped with sets of digital and analog input/output (I/O) pins that may be
interfaced to various expansion boards (shields) and other circuits. The board has 14
Digital pins, 6 Analog pins, and programmable with the Arduino IDE (Integrated
Development Environment) via a type B USB cable. It can be powered by a USB
cable or by an external 9-volt battery, though it accepts voltages between 7 and 20
volts. It is also similar to the Arduino Nano and Leonardo.
The hardware reference design is distributed under a Creative
Commons Attribution Share-Alike 2.5 license and is available on the Arduino
website. Layout and production files for some versions of the hardware are also
available. "Uno" means one in Italian and was chosen to mark the release of Arduino
Software (IDE) 1.0. The Uno board and version 1.0 of Arduino Software (IDE) were
the reference versions of Arduino, now evolved to newer releases. The Uno board is
the first in a series of USB Arduino boards, and the reference model for the Arduino
platform.
The ATmega328 on the Arduino Uno comes preprogrammed with a
bootloader that allows uploading new code to it without the use of an external
hardware programmer. It communicates using the original STK500 protocol. The Uno
also differs from all preceding boards in that it does not use the FTDI USB-to-serial
driver chip. Instead, it uses the Atmega16U2 (Atmega8U2 up to version R2)
programmed as a USB-to-serial converter.
Arduino Uno is a microcontroller board based on 8-bit ATmega328P
microcontroller. Along with ATmega328P, it consists other components such as
crystal oscillator, serial communication, voltage regulator, etc. to support the
microcontroller. Arduino Uno has 14 digital input/output pins (out of which 6 can be
used as PWM outputs), 6 analog input pins, a USB connection, A Power barrel jack,
an ICSP header and a reset button.

14 | P a g e
Arduino Uno Pin Diagram: -

Figure 3. Pin Diagram of Arduino Uno

15 | P a g e
Pin Description: -

Pin Name Details

Power Vin, 3.3V, 5V, GND Vin: Input voltage to Arduino when using an
external power source.
5V: Regulated power supply used to power
microcontroller and other components on the
board.
3.3V: 3.3V supply generated by on-board voltage
regulator. Maximum current draw is 50mA.
GND: ground pins.

Reset Reset Resets the microcontroller.

Analog Pins A0 – A5 Used to provide analog input in the range of 0-5V

Input/output Pins Digital Pins 0 - 13 Can be used as input or output pins.

Serial 0(Rx), 1(Tx) Used to receive and transmit TTL serial data.

External Interrupts 2, 3 To trigger an interrupt.

PWM 3, 5, 6, 9, 11 Provides 8-bit PWM output.

SPI 10 (SS), 11 (MOSI), Used for SPI communication.


12 (MISO) and 13
(SCK)

Inbuilt LED 13 To turn on the inbuilt LED.

16 | P a g e
Arduino Uno Technical Specifications

Microcontroller ATmega328P – 8-bit AVR family


microcontroller

Operating Voltage 5V

Recommended Input Voltage 7-12V

Input Voltage Limits 6-20V

Analog Input Pins 6 (A0 – A5)

Digital I/O Pins 14 (Out of which 6 provide PWM output)

DC Current on I/O Pins 40 mA

DC Current on 3.3V Pin 50 mA

Flash Memory 32 KB (0.5 KB is used for Bootloader)

SRAM 2 KB

EEPROM 1 KB

Frequency (Clock Speed) 16 MHz

17 | P a g e
The 14 digital input/output pins can be used as input or output pins by using
pinMode(), digitalRead() and digitalWrite() functions in arduino programming. Each
pin operates at 5V and can provide or receive a maximum of 40mA current, and has
an internal pull-up resistor of 20-50 KOhms which are disconnected by default. Out
of these 14 pins, some pins have specific functions as listed below:

 Serial Pins 0 (Rx) and 1 (Tx): Rx and Tx pins are used to receive and transmit
TTL serial data. They are connected with the corresponding ATmega328P
USB to TTL serial chip.
 External Interrupt Pins 2 and 3: These pins can be configured to trigger an
interrupt on a low value, a rising or falling edge, or a change in value.
 PWM Pins 3, 5, 6, 9 and 11: These pins provide an 8-bit PWM output by
using analogWrite() function.
 SPI Pins 10 (SS), 11 (MOSI), 12 (MISO) and 13 (SCK): These pins are used
for SPI communication.
 In-built LED Pin 13: This pin is connected with a built-in LED, when pin 13 is
HIGH – LED is on and when pin 13 is LOW, its off.

 Along with 14 Digital pins, there are 6 analog input pins, each of which
provide 10 bits of resolution, i.e. 1024 different values. They measure from 0
to 5 volts but this limit can be increased by using AREF pin with analog
Reference() function.

 Analog pin 4 (SDA) and pin 5 (SCA) also used for TWI communication using
Wire library.

 Arduino Uno has a couple of other pins as explained below:

 AREF: Used to provide reference voltage for analog inputs with


analogReference() function.
 Reset Pin: Making this pin LOW, resets the microcontroller.

18 | P a g e
Liquid Crystal Display (LCD): -
A liquid-crystal display (LCD) is a flat-panel display or other electronically
modulated optical device that uses the light-modulating properties of liquid crystals.
Liquid crystals do not emit light directly, instead using a backlight or reflector to
produce images in color or monochrome. LCDs are available to display arbitrary
images (as in a general-purpose computer display) or fixed images with low
information content, which can be displayed or hidden, such as preset words, digits,
and seven-segment displays, as in a digital clock. They use the same basic technology,
except that arbitrary images are made up of a large number of small pixels, while
other displays have larger elements. LCDs can either be normally on (positive) or off
(negative), depending on the polarizer arrangement. For example, a character positive
LCD with a backlight will have black lettering on a background that is the color of the
backlight, and a character negative LCD will have a black background with the letters
being of the same color as the backlight. Optical filters are added to white on blue
LCDs to give them their characteristic appearance.

Liquid Crystal Display (LCD) screen is an electronic display module. An LCD has
a wide range of applications in electronics. The most basic and commonly used LCD
in circuits is the 16x2 display. LCDs are commonly preferred in display because they
are cheap, easy to programme and can display a wide range of characters and
animations. A 16x2 LCD have two display lines each capable of displaying 16
characters. This LCD has Command and Data registers. The command registers stores
command instructions given to the LCD while the Data register stores the data to be
displayed by the LCD.

19 | P a g e
Figure 4. LCD Module Pin Diagram
LCD Pin Configuration

20 | P a g e
LCD Command Codes: -
There are some preset commands instructions in LCD, which we need to send to
LCD through some microcontroller. Some important command instructions are given
below:

Hex Code Command to LCD Instruction Register


0F LCD ON, cursor ON
01 Clear display screen
02 Return home
04 Decrement cursor (shift cursor to left)
06 Increment cursor (shift cursor to right)
05 Shift display right
07 Shift display left
0E Display ON, cursor blinking
80 Force cursor to beginning of first line
C0 Force cursor to beginning of second line
38 2 lines and 5×7 matrix
83 Cursor line 1 position 3
3C Activate second line
08 Display OFF, cursor OFF
C1 Jump to second line, position 1
OC Display ON, cursor OFF
C2 Jump to second line, position 2

Features of 16×2 LCD module:

 Operating Voltage is 4.7V to 5.3V


 Current consumption is 1mA without backlight
 Alphanumeric LCD display module, meaning can display alphabets and
numbers
 Consists of two rows and each row can print 16 characters.
 Each character is built by a 5×8-pixel box
 Can work on both 8-bit and 4-bit mode

21 | P a g e
IV. L293D Motor Driver IC:

Figure 5. IC L293D

The L293D is a popular 16-Pin Motor Driver IC. As the name suggests it is
mainly used to drive motors. A single L293D IC is capable of running two DC
motors at the same time; also, the direction of these two motors can be controlled
independently. So, if you have motors which has operating voltage less than 36V and
operating current less than 600mA, which are to be controlled by digital circuits like
Op-Amp, 555 timers, digital gates or even Micron rollers like Arduino, PIC, ARM
etc... This IC will be the right choice for you.

Pin Diagram and Description:

Figure 6. Pin Diagram of IC L293D

22 | P a g e
Pin Pin Name Description
Number

1 Enable 1,2 This pin enables the input pin Input 1(2) and Input 2(7)

2 Input 1 Directly controls the Output 1 pin. Controlled by digital


circuits

3 Output 1 Connected to one end of Motor 1

4 Ground Ground pins are connected to ground of circuit (0V)

5 Ground Ground pins are connected to ground of circuit (0V)

6 Output 2 Connected to another end of Motor 1

7 Input 2 Directly controls the Output 2 pin. Controlled by digital


circuits

8 Vcc2 (Vs) Connected to Voltage pin for running motors (4.5V to


36V)

9 Enable 3,4 This pin enables the input pin Input 3(10) and Input
4(15)

10 Input 3 Directly controls the Output 3 pin. Controlled by digital


circuits

11 Output 3 Connected to one end of Motor 2

12 Ground Ground pins are connected to ground of circuit (0V)

13 Ground Ground pins are connected to ground of circuit (0V)

14 Output 4 Connected to another end of Motor 2

15 Input 4 Directly controls the Output 4 pin. Controlled by digital


circuits

16 Vcc2 (Vss) Connected to +5V to enable IC function


Pin Description of IC L293D

23 | P a g e
Features of IC L293D Motor Driver:

 Can be used to run Two DC motors with the same IC.

 Speed and Direction control is possible

 Motor voltage Vcc2 (Vs): 4.5V to 36V

 Maximum Peak motor current: 1.2A

 Maximum Continuous Motor Current: 600mA

 Supply Voltage to Vcc1(Vss): 4.5V to 7V

 Transition time: 300ns (at 5Vand 24V)

 Automatic Thermal shutdown is available

 Available in 16-pin DIP, TSSOP, SOIC packages

Applications:

 Used to drive high current Motors using Digital Circuits

 Can be used to drive Stepper motors

 High current LED’s can be driven

 Relay Driver module (Latching Relay is possible)

24 | P a g e
V. Stepper Motor

Stepper motors are designed to work on the principle of electromagnetism. The


full rotation of a stepper motor is divided into number of expansive steps. There is a
shaft made up of soft iron, which is enclosed by the electromagnetic stators. So by
giving the supply to stator the rotor will move the one by one step angle. The
advantage of stepper motor is it can be controlled accurately without any feedback
mechanism, as long as the motor works in an ideal environment. It has an advantage
in the step size, it is 1.8 o/cycle. This defined standard helps us in defining the floors in
the model.
A stepper motor is an electromechanical device it converts electrical power into
mechanical power. In addition, a brushless, synchronous electric motor can divide a
full rotation into an expansive number of steps. The motor’s position can be
controlled accurately without any feedback mechanism, as long as the motor is
carefully sized to the application. Stepper motors are similar to switched reluctance
motors.

The stepper motor uses the theory of operation for magnets to make the motor
shaft turn a precise distance when a pulse of electricity is provided. The stator has
eight poles, and the rotor has six poles. The rotor will require 24 pulses of electricity
to move the 24 steps to make one complete revolution. Another way to say this is that
the rotor will move precisely 15° for each pulse of electricity that the motor receives.

25 | P a g e
Figure 7. Pin Diagram OF Stepper Motor (NEMA23)
NEMA 23 Stepper Motor Specifications

 Voltage Rating: 3.2V


 Current Rating: 2.8A
 Holding Torque: 270 oz. in
 Step Angle: 1.8 deg.
 Steps Per Revolution: 200
 No. of Phases: 4
 Motor Length: 3.1 inches
 No. of Leads: 4
 Inductance Per Phase: 3.6mH

Stepper Motor Applications

 CNC machines
 Precise control machines
 3D printer/prototyping machines (e.g. RepRap)
 Laser cutters
 Pick and place machines

26 | P a g e
4.4 Software Performance Analysis:-

#include <SoftwareSerial.h>
#include "VoiceRecognitionV3.h"
#include <Stepper.h>
const int stepsPerRevolution = 2048;
VR myVR(2,3); // 2:RX 3:TX, you can choose your favourite
pins.
uint8_t records[7]; // save record
uint8_t buf[64];
Stepper myStepper = Stepper(stepsPerRevolution, 8, 10, 9, 11);

#define groundfloo (0)


#define floor1 (1)
#define floor2 (2)
#define floor3 (3)
int pos;
/**
@brief Print signature, if the character is invisible,
print hexible value instead.
@param buf --> command length
len --> number of parameters
*/
void printSignature(uint8_t *buf, int len)
{
int i;
for(i=0; i<len; i++){
if(buf[i]>0x19 && buf[i]<0x7F){
Serial.write(buf[i]);
}
else{
Serial.print("[");
Serial.print(buf[i], HEX);
Serial.print("]");
}
}
}

/**
@brief Print signature, if the character is invisible,
print hexible value instead.
@param buf --> VR module return value when voice is
recognized.
buf[0] --> Group mode(FF: None Group, 0x8n:
User, 0x0n:System
buf[1] --> number of record which is
recognized.
buf[2] --> Recognizer index(position) value of
the recognized record.
buf[3] --> Signature length

27 | P a g e
buf[4]~buf[n] --> Signature
*/
void printVR(uint8_t *buf)
{
Serial.println("VR Index\tGroup\tRecordNum\tSignature");

Serial.print(buf[2], DEC);
Serial.print("\t\t");

if(buf[0] == 0xFF){
Serial.print("NONE");
}
else if(buf[0]&0x80){
Serial.print("UG ");
Serial.print(buf[0]&(~0x80), DEC);
}
else{
Serial.print("SG ");
Serial.print(buf[0], DEC);
}
Serial.print("\t");

Serial.print(buf[1], DEC);
Serial.print("\t\t");
if(buf[3]>0){
printSignature(buf+4, buf[3]);
}
else{
Serial.print("NONE");
}
Serial.println("\r\n");
}
void upste(int z)
{ int a=0;
a=z*2;
for(int y=0;y<a;y++){
Serial.println("clockwise");
myStepper.step(stepsPerRevolution);
delay(500);
}
}
void downste(int v)
{int b=0;
b=v*2;
for(int w=0;w<b;w++){
Serial.println("anticlockwise");
myStepper.step(-stepsPerRevolution);
delay(500);
}
}
void setup()
{
/** initialize */
pos =0;
myVR.begin(9600);
28 | P a g e
// Set the speed to 5 rpm:
myStepper.setSpeed(5);

// Begin Serial communication at a baud rate of 9600:


Serial.begin(115200);
Serial.println("Elechouse Voice Recognition V3 Module\r\
nControl LED sample");

//pinMode(led, OUTPUT);

if(myVR.clear() == 0){
Serial.println("Recognizer cleared.");
}else{
Serial.println("Not find VoiceRecognitionModule.");
Serial.println("Please check connection and restart
Arduino.");
while(1);
}

if(myVR.load((uint8_t)groundfloo) >= 0){


Serial.println("groundfloor loaded");
}

if(myVR.load((uint8_t)floor1) >= 0){


Serial.println("floor1 loaded");
}
if(myVR.load((uint8_t)floor2) >= 0){
Serial.println("floor2 loaded");
}

if(myVR.load((uint8_t)floor3) >= 0){


Serial.println("floor3 loaded");
}
}

void loop()
{
int ret;
ret = myVR.recognize(buf, 50);
if(ret>0){
switch(buf[1]){
case groundfloo:
if(pos==1)
{
downste(1);
}
if(pos==2)
{
downste(2);
}
if(pos==3)
{
downste(3);
}
delay(500);

29 | P a g e
pos=0;
break;
case floor1:
if(pos==0)
{
upste(1);
}
if(pos==2)
{
downste(1);
}
if(pos==3)
{
downste(2);
}
delay(500);
pos=1;
break;
case floor2:
if(pos==0)
{
upste(2);
}
if(pos==1)
{
upste(1);
}
if(pos==3)
{
downste(1);
}
delay(500);
pos=2;
break;
case floor3:
if(pos==0)
{
upste(3);
}
if(pos==1)
{
upste(2);
}
if(pos==2)
{
upste(1);
}
delay(500);
pos=3;
break;
default:
Serial.println("Record function undefined");
break;
}
/** voice recognized */
30 | P a g e
printVR(buf);
}
}

4. CONCLUSIONS
4.1 Conclusion:-
The voice-controlled elevator is of a great use as it works effortlessly. This
project tries to throw a light on voice recognition system, which can be used to
modify the conventional elevator and make it more efficient and usable for physically
challenged people. The prototype of elevator is useful instrument for research in
specialization of voice signal acknowledgment, computerization and control advances
as well useful in finding potential applications in this field. This project acts as a
human-machine communication system.

4.2 Future scope:-

The performance parameters can be sufficiently improved if it is planned to be a real


world solution.
The suggested improvements that can be performed are,
 Usage of Servo Motor instead of Stepper Motor, so that all parameters are
within our control and so we can modify them easily.
 Usage of a high-end Controller, so that high speeds and dedicated technologies
could be delivered.
 Usage of multiple command based systems, using speech plus button and
inclusion of a few sensors to improve result.

31 | P a g e
4.3 Application:-

 It is used as an everyday transport device- useful to move goods as well as


persons.
 In modern word, city and crowded area require multi floor buildings.
 According to wheelchair access laws, elevators/lifts are a must requirement in
new multi-storied buildings.
 For Paralyzed people: It can use for paralyzed people to move from one place
to other place. It can use for those people who handicapped their hand, eye etc.
 For Home Automation: It can be used in-home automation to control Fans,
light other home appliances.
 For military: It is used in army when the soldiers can’t enter into some
restricted area.
 For Industry: It can be used in industry to move the object from one place to
another.

32 | P a g e
REFRENCES

[1]Anne Johnstone-“AUTOMATED SPEECH RECOGNITION: A FRAMEWORK


FOR RESEARCH” EACL ’85 Proceedings of the second conference on European
chapter of the Association for Computational Linguistics, Page 239-243, Geneva,
Switzerland — March 27 - 29, 1985

[2]Reddy, D.R. &Ermann,-“Tutorial on System Organization for Speech


Understanding. “Speech Recognition: Invited Papers Presented at the 1974 IEEE
Symposium, Academic Press, Page 457-479, and 1 January 1975

[3]Kaladharan N, Assistant Professor, Dept. of .Electrical Engineering, Annamalai


University, IJIRCCE, “A Study of Speech Recognition” Vol. 3, Issue 9,Page 8030-
8034, September 2015

[4]C. H. Lee; F. K. Soong; K. Paliwal "An Overview of Speaker Recognition


Technology", Automatic Speech and Speaker Recognition: Advanced Topics. Kluwer
Academic Publishers 1996, Norwell, MA.

[5]Roger K. Moore, Member, IEEE, PRESENCE: A Human Inspired Architecture for


Speech-Based Human-Machine Interaction IEEE Transactions of computer, VOL. 56,
NO. 9, SEPTEMBER 2007.

[6]Voice Reorganization module V2 data sheet,


https://www.elechouse.com/elechouse/images/product/Voice%20Recognition
%20Module/Manual.pdf

[7]Arduino Uno data sheet, http://digital.csic.es/bitstream/10261/127788/7/D-c-


%20Arduino%20uno.pdf

33 | P a g e
[8] Arduino technical details – Arduino: A Technical Reference (book) a technical
ref. by J.M Hughes.

34 | P a g e

You might also like