A Joysck Controled LCD for Disabled and Paralysed People
by pateltejom in Circuits > Arduino
85 Views, 0 Favorites, 0 Comments
A Joysck Controled LCD for Disabled and Paralysed People
This is my joystick controled LCD which can be used for old, disabled and/or paralysed people, people who can't or find it hard to speak. It includes simple commands which they might ask their caretaker for in their day to day lives. This could be very halpful if you have an old paralysed person living with you or if you are a caretaker in a old age home.
Supplies
You will need:
- A piezo buzzer
- a I2C LCD
- a joystic module
- arduino microcontroller (I'm using an UNO)
- a heap of jumper wires
- a breadboard
Wiring the LCD
Heres how to wire the I2C LCD:
- Connect the SCL pin of the LCD to pin A5 of the arduino microcontroller
- Connect the SDA pin of the LCD to pin A4 of the arduino microcontroller
- Connect the VCC pin of the LCD to the 5v pin of the arduino microcontroller (I have connected it to the power pin on the breadboard which was in turn connected to the 5v pin, same with the ground)
- Connect the GND pin of the LCD to the GND pin of the arduino microcontroller
Wiring the Piezo Buzzer
Heres how to wire the Piezo buzzer:
- connect the positive to pin 12 on the arduino microcontroller
- connect the negative to GND on the microcontroller (again I just wired it to the negative rail on the breadboard)
Connecting the Joystick
Heres how to connect the joystick:
- connect the VRY (y- axis) to pin A1 on the arduino microcontroller
- connect the VRX (x-axis) to pin A0 on the arduino microcontroller
- connect the SW (switch of the joystick to pin 2 on the arduino microcontroller
- connect the 5v to the 5v pin on the arduino microcontroller
- connect the GND to the GND pin on the microcontroller
(oops, tinkercad circuits does not have a joystick)
The Code
Paste this code into your Arduino IDE (dont forget to download the I2C liquid crystal library and the wire.h library, use the library manager or GitHub to do so) :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
int x = 0;
int y = 0;
int SW = 0;
int mapX = 0;
int mapY = 0;
void setup() {
lcd.begin();
lcd.backlight();
lcd.clear();
Serial.begin(9600);
pinMode(A0 , INPUT);
pinMode(A1, INPUT);
pinMode(2, INPUT_PULLUP);
pinMode(12, OUTPUT);
}
void loop() {
lcd.setCursor(0,0);
delay(100);
x = analogRead(A0);
y = analogRead(A1);
SW = digitalRead(2);
mapX = map(x, 0, 1023, -512, 512);
mapY = map(y, 0, 1023, -512, 512);
lcd.setCursor(0,0);
if( (mapX <-200) && (mapY >200)){
lcd.clear();
lcd.print("I'm thirsty!");
tone(12, 294);
delay(100);
noTone(12);
delay(100);
tone(12, 294);
delay(100);
noTone(12);
delay(1000);
}
else if((mapX >200) && (mapY <200)){
lcd.clear();
lcd.print("I'm hungry");
tone(12, 294);
delay(100);
noTone(12);
delay(100);
tone(12, 294);
delay(100);
noTone(12);
delay(1000);
}
else if((mapX <200) && (mapY <-200)){
lcd.clear();
lcd.print("I need to use the restroom");
tone(12, 294);
delay(100);
noTone(12);
delay(100);
tone(12, 294);
delay(100);
noTone(12);
delay(1000);}
else if((mapX >-200) && (mapY >200)){
lcd.clear();
lcd.print("I want to go to bed");
tone(12, 294);
delay(100);
noTone(12);
delay(100);
tone(12, 294);
delay(100);
noTone(12);
delay(1000);
}
else {
lcd.clear();
lcd.print("Press Joystick ");
}
}
(Thanks to Teach Me Something on youtube for the joystick with lcd code)
Where to Place
You can place this on the armrests of the wheelchair of the paralysed person, or you can place it anywhere, where they can acess it without moving too much.
Thank you :)