The project aims to control a wheelchair using the human voice . It allows a person with a disability to move independently using a voice recognition application that interfaces with motors. The wheelchair prototype is built using a microcontroller, chosen for its low cost, as well as its versatility and performance in mathematical operations and communication with other electronic devices. The system has been designed and implemented in a cost-effective manner so that if our project is commercialized, users in need in developing countries will benefit from it.
Fig. 1: Voice-controlled wheelchair prototype for people with physical disabilities
Here we are using voice reorganization technology. So we are using HM 2007 Module to recognize the speech signal. This module is used to convert the voice signal into corresponding binary code which is provided to the microcontroller, and the microcontroller provides the output according to the voice input.
Generally, the microcontroller generates codes at its output according to the input. So using this module we can control the dc motor corresponding to the voice command.
Here there are five voice commands used to control the motor direction.
1. Next
2. Back
3. Stop
4. Right
5 left
Working
Working with block diagram, circuit and PCB
Fig. 2: Block diagram of voice-controlled wheelchair for people with physical disabilities
· Microphone:
It is used to convert the voice signal into electrical signal. The MIC output is provided to the Speech Recognition Module.
· Microcontroller:
The microcontroller is a semiconductor chip. It is programmable, multifunctional and multifunctional. The AT89C51 is a low-power, high-performance 8-bit CMOS microcomputer with 8 Kbytes of programmable and erasable read-only Flash memory (PEROM).
The devices are manufactured using Atmel's high-density non-volatile memory technology and are compatible with the industry standard 80C51 and 80C52 instruction set and pinout. On-chip Flash allows program memory to be reprogrammed in the system or by a conventional non-volatile memory programmer.
· Speed and direction:
The motor we use is purchased from AGNI MOTOR, BANGLORE and has the following specifications: 120W, 9.8 Nm, 60 rpm no load. Two 12 V, 32 Ah AMARON lead-acid batteries were purchased.
· Battery:
Here 12V battery is used for the motors to provide enough power to the motors and here we also use mechenisam charging of the battery. So here we use a battery charger to charge the battery.
· Voice recognition module:
The speech recognition system is a programmable, fully assembled and easy-to-use speech recognition circuit. Programmable, in the sense that you train the words (or vocal expressions) you want the circuit to recognize. This board allows you to experience many facets of speech recognition technology. It has an 8-bit data output that can be interfaced with any microcontroller for further development. Some of the interface applications that can be made are controlling home appliances, robotic movements, speech-assisted technologies, speech-to-text translation and much more.
Integer Working with block diagramHere we use a speech recognition module to control the performance of the microcontroller and microphone. The speech recognition module is trained by giving 5 commands. The five commands are converted into hexadecimal file. This hexadecimal file points to 5 address locations of the AT89c52 microcontroller. When the command is given, the corresponding program controls the movement or rotation of the motor. This is the basic working principle of the 'voice controlled wheelchair'. The voice is given to the speech recognition module by performing address localization and the chair moves accordingly. The battery and battery charger unit serve to supply power.
Circuit Description
Circuit Description:
A. The complete circuit diagram of our project is shown above in fig. The 9V battery is connected at 100µF. Here 7805 IC is used, this IC is used to provide constant DC 5V. The output of this Ic is connected to pin no.40 of AT89C52 microcontroller. The output of the voice module is connected to port 1 of the At89c52. Then the output of port 2 is supplied to the input of the motor driver circuit. which drive the engine clockwise and counterclockwise. The 12v 40A battery is connected to the motor driver circuit.
B. The microcontroller IC receives 4-bit digital output from the voice module. its P1 port reads P1.0 – P1.3. And the interrupt signal is given to pin P3.3 (external interrupt 1). It drives two DC motors through port P2, pins P2.0 – P2.3. A 12 MHz crystal with twoaock signal for microcontroller. A push button switch (RST) in parallel with the 100nF capacitor forms a reset circuit to restart the microcontroller.
C. It will control the movement of the Land Rover depending on the code it receives given below in the table:
PROHIBITED |
ENTRY AT DOOR1 |
EXIT AT DOOR2 |
WHEELCHAIR MOVEMENT |
|
02 |
0010 |
0A |
1010 |
PREFACE |
08 |
1000 |
05 |
0101 |
VERSION |
04 |
0100 |
02 |
0010 |
LEFT |
06 |
0110 |
08 |
1000 |
RIGHT |
05 |
0101 |
03 |
0011 |
TO STOP |
Fig. 3: Wheelchair Voice Sensitive Circuit PCB Layout
Wheelchair track layout with voice control
Fig. 4: Wheelchair voice-sensitive circuit track layout
Component list
Component list
Component name |
Value |
|
|
|
RESISTOR |
10E |
|
|
|
CAPACITOR |
33pF |
|
|
|
IC |
AT89C52 |
|
|
|
WHEELCHAIR |
– |
|
|
|
SOCKETS |
40 PINS AT89C52 |
|
|
|
VOICE RECOGNITION MODULE |
HM 2007 |
|
|
|
SEVERAL |
CRYSTAL |
|
|
|
ENGINES |
DC GEAR MOTOR |
|
|
|
DRIVING CIRCUIT |
|
|
|
|
|
|
|
|
|
Fig. 5: Image of the Motor Driver Module
· The table below shows the parameters and their range for the driver.
Parameters |
Range |
Vcc (supply voltage) |
6 to 16 VDC |
supply current |
20A continuous at 25c; 30A pulsed |
PWM Frequency |
0 to 20 KHz |
VIL (low level logic input) |
>0.8V |
VIH (high-level logic input) |
3.5V to 5V |
Output in diagnosis 1 (ENA) and diagnosis 2 (ENB) |
Open collector, internally pulled to 5V |
· The table below shows control bits for motors.
A |
B |
EXIT |
0 |
0 |
TO STOP |
0 |
1 |
TO REVERSE |
1 |
0 |
ADVANCE |
1 |
1 |
TO STOP |
200rpm DC motor
Fig. 6: Image of the 200 RPM DC motor
A. 200 RPM side shaft super heavy duty DC gear motor is suitable for larger robots and small automation systems. It has a robust construction with large gears. The gearbox is built to handle the stalling torque produced by the engine. The drive shaft is supported on both sides by metal bushings. The motor runs smoothly from 4V to 12V and provides 200 RPM at 12V. The motor has an 8mm diameter and 19mm long D-shaped drive shaft for excellent coupling.
Voice recognition module:
B. The speech recognition system is a programmable, fully assembled and easy-to-use speech recognition circuit. Programmable, in the sense that you train the words (or vocal expressions) you want the circuit to recognize. This board allows you to experience many facets of speech recognition technology. It has an 8-bit data output that can be interfaced with any microcontroller for further development. Some of the interface applications that can be done are home appliance control, robotic movements, speech-assisted technologies, speech-to-text translation and much more.
Fig. 7: Image of the Speech Recognition Module
Fig. 8: HM2007 Speech Recognition System Circuit Diagram
Specifications:
PARAMETERS |
VALUE |
OBSERVATION |
Prohibited |
9 to 15 volts DC |
Use a commonly available DC 12V 500ma adapter |
Output data voltage |
8 bits at 5v logic level |
Any microcontroller such as 8051, PIC or AVR can be connected to the data port to interpret and implement specialized applications |
Working
Training words for recognition:
A. Press “1” (the display will show “01” and the LED will turn off) on the keyboard, and then press the TRAIN key (the LED will turn on) to put the circuit into training mode, for example, word one. Say the target word into the built-in microphone (near the LED) clearly. The circuit signals acceptance of voice input by flashing and lighting the LED. The word (or statement) is now identified as the word “01”. If the LED does not flash, start again by pressing “1” and then the “TRAIN” key. You can continue practicing new words in the circuit.
B. Press “2” and then TRN to train the second word and so on. The circuit will accept and recognize up to 20 words (numbers 1 to 20). It is not necessary to train all word spaces. If you only need 10 target words, that's all you need to train.
Test recognition:
C. Repeat a practiced word into the microphone. The word number must be displayed on the digital display. For example, if the word “directory” was trained as word number 20, saying the word “directory” into the microphone will cause the number 20 to be displayed.
Error codes:
D. The chip provides the following error codes:
55 = long word, 66 = short word, 77 = no match
Learning Memory:
E. To erase all words from memory press “99” and then “CLR”. The numbers will scroll quickly on the digital display as the memory is cleared.
Changing and deleting words:
F. The trained words can be easily changed by replacing the original word. For example, suppose the word six is the word “Capital” and you want to change it to the word “State”. Simply retrain the word space by pressing “6”, then the TRAIN key and saying the word “State” into the microphone. If you want to delete the word without replacing it with another word, press the word number (in this case six) and then press the CLR key. The word six has been deleted.
Simulated Independent Recognition:
G. The speech recognition system is speaker dependent, which means that the voice that trained the system has the highest recognition accuracy. But you can simulate independent speech recognition. To make the recognition system simulate speaker independence, more than one word space is used for each target word. Word spaces 01, 02, 03 and 04 are assigned to the first programmed target word.
Schedule
Project programming
A. We use KEIL programming software to control our wheelchair.
Fig. 9: Screenshot of C code in Keil IDE used for voice controlled wheelchair
Fig. 10: Screenshot of testing C code in Keil IDE used for voice controlled wheelchair
Charging unit for 12V and 40A battery
B. We use 12V and 40A battery to power both drivers. The charging unit required for this battery is shown in the figure.
C. 230V AC is supplied to the transformer (reduction type) 12-0-12V and 3A through a 2A fuse. This is used to provide protection to the transformer against any large variation in the input supply. The output of the transformer is given to diodes which are used as a rectifier and convert AC to DC. Current up to 3A is limited for these diodes. An LED is used to indicate that the power is ON. This LED required a maximum of 5V to operate, so we used 1m? resistor to decrease the voltage. The switch is used to turn the power ON/OFF.
Fig. 11: Voice Controlled Wheelchair Charger Circuit Diagram
How to execute the project
1. Turn on the voice module power supply to provide sufficient voltage for proper operation.
2. Turn on the kill switch and give your voice command as needed to move the wheelchair to the voice module.
3. After receiving the voice command, turn off the kill switch to avoid any other noise interference to the voice module due to error.
4. The voice module generates hexadecimal code that corresponds to the input speech. For example, if we talk ahead, the output of the voice module will be 02h.
5. This code is applied to input port 1 of the AT89C52 microcontroller.
6. The microcontroller generates the corresponding code ex02h (0010) which is provided to both motor drivers to drive the motor in the forward direction.
7. These steps are repeated for all commands.
Project source code
### Program for voice control wheelchair #includeunsigned char data byt=0xFF; void keydly { int a, b; for(a=0;a<50;a++) for(b=0;b<1000;b++); } void int1 interrupt 2 { byt=P1; EA=0; keydly; } void main { P2=0x00; P1=0xFF; back:IE=0x84; byt=0xFF; while(byt==0xFF); switch(byte) { case 0xF2: P2=0x0A; break; case 0xF4: P2=0x08; break; case 0xF5: P2=0x03; break; case 0xF6: P2=0x02; break; case 0xF8: P2=0x05; break; } goto back; } ###
Circuit diagrams
Circuit Diagram-HM2007-Based Voice Controlled Wheelchair |