Skip to content

An Arduino based exploratory project - Lock system using Hand signs

Notifications You must be signed in to change notification settings

Harsh62004/Arduino-Exploratory-Project

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Arduino-Exploratory-Project

Lock system using Hand signs

This project is inspired by the TV show/anime called “Naruto” . In the anime, hand seals are designed to aid people by properly summoning and molding chakra (life force) necessary to perform a technique. There are different sequences of hand seals for every technique. Tried to implement the idea in real life; in short if the sequence of the hand signs is correct, it will unlock the solenoid lock.

1. Wiring The Transmitter (Glove) :

It consists of Arduino NANO, 9V battery, MPU6050, Flex sensor and NRF24L01 +2.4GHz Wireless RF transceiver module. The microcontroller i.e., NANO collects all the information from the sensing unit (Flex Value & IMU) and send signal to the receiving circuit via NRF24L01. The MPU6050 consists of 3-axis accelerometer and 3-axis gyroscope, which helps us to measure acceleration, velocity, orientation and other motion related parameters.

2. Wiring The Receiver (The Safe) :

It consists of Arduino UNO, 9V battery, Relay module, Solenoid door lock and NRF24L01 +2.4GHz Wireless RF transceiver module. The microcontroller i.e., UNO is used to control the solenoid lock, the solenoid lock requires higher current than the arduino UNO can provide and to drive the solenoid lock we would need an external power source that can give 12V 500mA and for that we need a relay module which is an electromagnetic switch operated by a relatively small current that can control much larger current like solenoid door lock.

Kalman Filter : https://github.com/TKJElectronics/KalmanFilter

RF24 library : https://github.com/nRF24/RF24

Testings :

#1 Issue: Range for the flex sensor (Flex Value)

Had to set a flexible potentiometer range which is nothing but the resistance directly proportional to the amount of bending. 
Thereby, tested the flex sensor individually and noted down the flex values multiple times for every hand sign required.

#2 Issue: Filtering IMU noise from MPU6050


MPU6050 is basically the combination of gyroscopes and accelerometers referred to as an Inertial Measurement Unit or IMU. This sensor can detect angle changes. 
The angle readings from an IMU carry much noise. An IMU occasionally presents values that are 
incoherent and vary unreasonably to one another. To get proper and clear values, a filter is needed. 

So had to install a filter i.e Kalman filter library, an algorithm which uses a series of measurements observed over time, 
in this context an accelerometer and a gyroscope. The Kalman filter will then try to estimate the state of the system, based on the current and previous states, 
that tend to be more precise than the measurements alone.

#3 Issue: Communication between the transmitter and receiver (ARDUINO NANO AND UNO)

 Had to figure out the addresses(memory map) of the NANO and UNO ports in order for communication to happen i.e, 
 for the transmitter and receiver arduino codesto communicate through the NRF24 radio.

Schematics:

Trasmitter Wiring Diagram

image

Receiver Wiring Diagram

image

Contributers

Harsh Mungara
Charith Kutikuppala
Priyank Hudka

About

An Arduino based exploratory project - Lock system using Hand signs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 100.0%