Arduino Based Lift
Arduino Based Lift
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:-
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:-
4|Page
2. Literature Survey:
5|Page
3. System Development
3.1 Block Diagram:-
Power Supply
Voice
Recognition Motor
Module Driver
Arduino Uno
LCD Stepper
Motor
6|Page
3.2 Circuit Diagram:-
Stepper Motor
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
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.
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.
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
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
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
14 | P a g e
Arduino Uno Pin Diagram: -
15 | P a g e
Pin Description: -
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.
Serial 0(Rx), 1(Tx) Used to receive and transmit TTL serial data.
16 | P a g e
Arduino Uno Technical Specifications
Operating Voltage 5V
SRAM 2 KB
EEPROM 1 KB
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.
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:
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.
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)
9 Enable 3,4 This pin enables the input pin Input 3(10) and Input
4(15)
23 | P a g e
Features of IC L293D Motor Driver:
Applications:
24 | P a g e
V. Stepper Motor
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
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);
/**
@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);
//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);
}
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.
31 | P a g e
4.3 Application:-
32 | P a g e
REFRENCES
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