1 of 21

WIRELESS VOICE-CONTROLLED WHEEL CHAIR USING STM32

Rubayet Binte Kabir

1606164

1

MD. Rohan Islam

1606189

Asmiya Hasan

1606191

Sadik Yasir Tauki

1606194

Submitted by – Group C.11

C

EEE 416 – Microprocessor and Embedded Systems Laboratory

Jan 2020 Level-4 Term-I Section A

Final Project Demonstration

Department of Electrical and Electronics Engineering

Bangladesh University of Engineering and Technology

2 of 21

Outline

  • Summary
  • Background
  • Methods
  • Experimental Demonstration
  • Photo Gallery
  • Future Outlook
  • Conclusion

Wireless voice-controlled wheel chair using STM32

2

EEE 416 (2020) – Final Project Group C.11

3 of 21

Summary

  • In this project, we have made a voice-controlled wheel chair using STM32.
  • This chair can be controlled wirelessly via voice commands from the users.
  • It can move forward, backward, left, and right and can also be stopped.
  • The voice-controlled wheel chair is interfaced with a Bluetooth module HC-05.
  • We can give specific voice commands through an Android app installed on the phone.
  • At the receiving side, a Bluetooth transceiver module receives the commands and forwards them to the STM32 and thus the wheel chair is controlled.

Wireless voice-controlled wheel chair using STM32

3

EEE 416 (2020) – Final Project Group C.11

4 of 21

Background

  • Unfortunately, the number of physically disabled people is increasing on regular basis due to reasons like accidents and the disease like paralysis.
  • "World report on disability" jointly presented by World Health Organization (WHO) and World Bank says that there are million handicapped people in the world.
  • Many patients found it difficult to use the conventional wheelchair.
  • Recent clinical survey showed that 9%-10% patient who received the power wheelchair training, found it very difficult to use it for daily living. So, these patients are dependent on others to push them.
  • Voice-controlled wheelchair has capacity to provide these people with efficient ways to alleviate the impact on their limitation.

Wireless voice-controlled wheel chair using STM32

4

EEE 416 (2020) – Final Project Group C.11

5 of 21

Components

Wireless voice-controlled wheel chair using STM32

5

EEE 416 (2020) – Final Project Group C.11

Stm32 Bluepill

HC-05 bluetooth module

l298n motor driver

St link V2

DC motor

6 of 21

Flow Chart

Wireless voice-controlled wheel chair using STM32

6

EEE 416 (2020) – Final Project Group C.11

Android App

Phone

Bluetooth

Left & Right

DC Motors

L298n Motor

Driver

STM32

Blue pill

HC-05

bluetooth

Transmitter Section:

Receiver Section:

7 of 21

Circuit Diagram

Wireless voice-controlled wheel chair using STM32

7

EEE 416 (2020) – Final Project Group C.11

8 of 21

Experimental Demonstration

Wireless voice-controlled wheel chair using STM32

8

EEE 416 (2020) – Final Project Group C.11

9 of 21

Photo Gallery

Wireless voice-controlled wheel chair using STM32

9

EEE 416 (2020) – Final Project Group C.11

10 of 21

Future Outlook

  • For not to occur disorder during recognize the user voice, this system works in a quiet environment. Furthermore, the pronunciations accuracy must be ensured and the word-related (voice). We can improvise the system for any noisy or crowded environment by noise cancellation system which needs to be installed in the receiving end.
  • By installing gear box, we can produce high speed moving wheelchair.
  • Solar Panel can be used to charge the battery for power supply to the components required to drive the wheelchair.
  • The wheelchair can include the gesture feature to operate the wheelchair.
  • Obstacle avoiding sensors can be used to avoid obstacles.

Wireless voice-controlled wheel chair using STM32

10

EEE 416 (2020) – Final Project Group C.11

11 of 21

Conclusion

Project is like a bridge between theoretical and practical working. First of all we would like to thank the supreme power of the Almighty Allah who has always guided us to work on the right path and without His grace, this project could not be performed properly in this pandemic. We are sincerely thankful to our course teachers for giving us the opportunity to work in this project. We are also thankful to all our teammates for their relentless effort to perform this project.

By this project, we think we can lessen the sufferings of the disabled people of our community. The whole system will not be difficult to use by any person.

Wireless voice-controlled wheel chair using STM32

11

EEE 416 (2020) – Final Project Group C.11

12 of 21

ADDITIONAL SLIDES

12

C

EEE 416 – Microprocessor and Embedded Systems Laboratory

Jan 2020 Level-4 Term-I Section A

Final Project Demonstration

Department of Electrical and Electronics Engineering

Bangladesh University of Engineering and Technology

13 of 21

References

Datasheets and manuals used:

Wireless voice-controlled wheel chair using STM32

13

EEE 416 (2020) – Final Project Group C.11

14 of 21

Bill of Materials

Wireless voice-controlled wheel chair using STM32

14

EEE 416 (2020) – Final Project Group C.11

Component

Quantity

Price (Tk)

1

260

ST-Link V2 Programmer

1

486

L298N Motor Driver (Red)

1

198

HC-05 Bluetooth Breakout Board

1

350

Wheel

2

126

Gear Motor

2

128

Lipo Battery

1

1700

Ball Caster

1

80

Jumper Cables

20

52

Breadboard

2

94

Total

-

3474

15 of 21

Detailed Methods

  • To program the STM32, we have used an Arduino Bootloader using the ST-Link V2 Programmer and coded using Arduino IDE.

Softwares and tools used:

  • Arduino IDE
  • ST-Link V2 USB Driver
  • STM32 ST-Link Utility

Tutorials:

Wireless voice-controlled wheel chair using STM32

15

EEE 416 (2020) – Final Project Group C.11

16 of 21

Source Codes

#define left_motor_B PA0

#define left_motor_F PA1

#define right_motor_B PA2

#define right_motor_F PA3

#define speed_left PA6

#define speed_right PA7

#define greenLED PB11 //indicates motion

#define redLED PB10 //indicates acceptance of voice command

String instruction; //voice command

int k = 0; //indicates direction of robot; 0 = forward, 1 = back

int motor_speed;

void setup() {

Serial1.begin(9600); //Serial communication with bluetooth module

//defining all pins as output

pinMode(left_motor_F, OUTPUT);

pinMode(left_motor_B, OUTPUT);

pinMode(right_motor_F, OUTPUT);

pinMode(right_motor_B, OUTPUT);

pinMode(speed_left, OUTPUT);

pinMode(speed_right, OUTPUT);

pinMode(greenLED, OUTPUT);

pinMode(redLED, OUTPUT);

motor_speed = 75;

stop_motor();

blink_redLED();

}

void loop() {

//receiving data from mobile app

while (Serial1.available()) {

delay(10);

char c = Serial1.read(); //reading each character serially from app

if (c == '#') break;

instruction += c;

}

analogWrite(speed_left, motor_speed); //speed of motor

analogWrite(speed_right, motor_speed);

Wireless voice-controlled wheel chair using STM32

16

EEE 416 (2020) – Final Project Group C.11

17 of 21

Source Codes

if (instruction.length() > 0) {

//instructions

if (instruction == "*forward") forward();

else if (instruction == "*back") backward();

else if (instruction == "*left") left(k);

else if (instruction == "*right") right(k);

else if (instruction == "*stop") stop_motor();

}

instruction = "";

}

// FUNCTIONS FOR MOTION

//Move forward

void forward() {

blink_redLED();

digitalWrite(left_motor_F, HIGH);

digitalWrite(left_motor_B, LOW);

digitalWrite(right_motor_F, HIGH);

digitalWrite(right_motor_B, LOW);

digitalWrite(greenLED, HIGH);

k = 0;

}

//Move backward

void backward() {

blink_redLED();

digitalWrite(left_motor_F, LOW);

digitalWrite(left_motor_B, HIGH);

digitalWrite(right_motor_F, LOW);

digitalWrite(right_motor_B, HIGH);

digitalWrite(greenLED, HIGH);

k = 1;

}

//Stop

void stop_motor() {

blink_redLED();

digitalWrite(left_motor_F, LOW);

digitalWrite(left_motor_B, LOW);

digitalWrite(right_motor_F, LOW);

digitalWrite(right_motor_B, LOW);

digitalWrite(greenLED, LOW);

k = 0;

}

Wireless voice-controlled wheel chair using STM32

17

EEE 416 (2020) – Final Project Group C.11

18 of 21

Source Codes

void right(int k) {

blink_redLED();

//turn right while moving backwards

if (k) {

digitalWrite(left_motor_F, LOW);

digitalWrite(left_motor_B, HIGH);

digitalWrite(right_motor_F, LOW);

digitalWrite(right_motor_B, LOW);

digitalWrite(greenLED, HIGH);

delay(600); //delay needed for 90 degree turn

backward();

}

else {

//turn right while moving forward

digitalWrite(left_motor_F, HIGH);

digitalWrite(left_motor_B, LOW);

digitalWrite(right_motor_F, LOW);

digitalWrite(right_motor_B, LOW);

digitalWrite(greenLED, HIGH);

delay(600);

forward();

}

}

void left(int k) {

blink_redLED();

if (k) {

//turn left while moving backwards

digitalWrite(left_motor_F, LOW);

digitalWrite(left_motor_B, LOW);

digitalWrite(right_motor_F, LOW);

digitalWrite(right_motor_B, HIGH);

digitalWrite(greenLED, HIGH);

analogWrite(speed_left, motor_speed);

analogWrite(speed_right, motor_speed);

delay(600);

backward();

}

Wireless voice-controlled wheel chair using STM32

18

EEE 416 (2020) – Final Project Group C.11

19 of 21

Source Codes

else {

//turn left while moving forward

digitalWrite(left_motor_F, LOW);

digitalWrite(left_motor_B, LOW);

digitalWrite(right_motor_F, HIGH);

digitalWrite(right_motor_B, LOW);

digitalWrite(greenLED, HIGH);

digitalWrite(redLED, LOW);

analogWrite(speed_left, motor_speed);

analogWrite(speed_right, motor_speed);

delay(600);

forward();

}

}

void blink_redLED() {

digitalWrite(redLED, HIGH);

delay(100);

digitalWrite(redLED, LOW);

delay(200);

digitalWrite(redLED, HIGH);

delay(100);

digitalWrite(redLED, LOW);

}

Wireless voice-controlled wheel chair using STM32

19

EEE 416 (2020) – Final Project Group C.11

20 of 21

Difficulties

  • Initially used 9v battery hardly run, so we used lipo battery

  • Android app sometimes misread our voice command

  • We have to work separately due to covid situation

  • Due to lockdown, it was hard for us to collect all hardware materials

Wireless voice-controlled wheel chair using STM32

20

EEE 416 (2020) – Final Project Group C.11

21 of 21

Thank You

Wireless voice-controlled wheel chair using STM32

21

EEE 416 (2020) – Final Project Group C.11

Questions?