- Open Access
- Total Downloads : 57
- Authors : M. Arunachalam, P .Naveenkumar
- Paper ID : IJERTCONV7IS06071
- Volume & Issue : ETEDM
- Published (First Online): 07-06-2019
- ISSN (Online) : 2278-0181
- Publisher Name : IJERT
- License: This work is licensed under a Creative Commons Attribution 4.0 International License
Gesture Controlled Robot with Wireless Communication
M. Arunachalam, P .Naveenkumar
Hindusthan Institute of Technology, Coimbatore
Abstract:- World involve in business, which almost conquer working related part. In such kind of business like industry, construction, hospitality, self-service, defense service, worker relates with the machines & mechanism. Almost the work is done by manually or automatically based on the production rate & turnover of the organization. But, in both cases, there occurs the problem of unconsciousness & lack of reacting & controlling ability to an incident while working. In order to avoid such incidents, the consciousness & reacting nature of humans have to increase, simply means, connecting the signals stimulated by nervous system with the machine system. It is done by Gesture controlled robot using the simple concept of locating the flex sensor at respective joints of human body. It involves some mechanism based on the need of work to be done. To work without any harm, the additional feature allotted with the robot is wireless communication method. This project can able to eliminate the unconsciousness & lack of sudden reacting nature of human being to a particular problem.
INTRODUCTION
Imagination develops creativity. Creativity produce inventions. Inventions establishes technology. Technology offer developments. In that way, ROBOTICS, the emerging & developing field in almost all part of the world. But, the base root of robotics is clearly understood by means of MECHATRONICS, the study of engineering deals with mechanical, electrical & electronics departments. This mechatronics contribute a vast conceptual ideas & technologies, which can be helpful in daily life. In that, particularly GCR (gesture controlled robot) concept evolves in wireless communication mechanism. As theory explains, an artificial intelligence robot is far more intelligent than human being in every part of work, but it may fail in competing with the humans at receiving ability & reacting capability to an action or working situation without any delay. This is made use in developing the concept of GCR. The analysis report for experimenting the brain reaction to sight, touch & sound is taken & provided as experimental value is given below.
The average value for,
-
Sight reaction -0.385m / 0.275s
-
Touch reaction -0.274m / 0.235s
-
Sound reaction -0.336m / 0.26s
GCR uses the signals of human beings nervous system for useful work in indirect manner.
MATERIALS AND METHODS
As this project enables the use of wireless communication & flex analysis system, it may cost high as it depends on the highly complicated technical items. To make it economical & cost efficient, I have used the simple equipment with the same function of providing the wireless communication & flex analysis system. For that, I have used,
-
ARDUINO UNO R3
-
Arduino is a single board micro- controller, with Atmel (8-bit), ARM Cortex-M0+ (32-bit), ARM Cortex-M3 (32-bit) & intel Quark (x86) (32-bit), in- built central processing unit. GCR uses Arduino Uno R3 2 nos
-
-
nrf24L01+ TRANSCEIVER
-
It is a single chip radio transceiver which transmits & receives frequency signal for communication. GCR uses nrf24L0 2 nos
-
-
nrf24L01 ADAPTER
-
A single socket board for nrf24L01 module, so as to work with 5V systems like Arduino. GCR uses nrf24L01 adapter socket 2 nos
-
-
SERVO MOTOR
-
A servo motor is a rotary or linear actuator that allows for precise control of angular or linear position, velocity & acceleration. GCR uses servo motor 2 nos
-
-
FLEX SENSOR
-
A s sensor that measures the amount of deflection or bending. Flex sensor is a variable type resistor. GCR uses flex sensor 1 no.
-
-
BREAD BOARD
-
A bread board is a solderless device for temporary prototype with electronics & test circuit designs. GCR uses bread board 2 nos
-
-
JUMPER WIRES
-
Jumper wire is an electrical wire or group of them in a cable with a connector or pin at each end, which is normally used to interconnect the components of a bread board or other equipment.
-
-
BATTERY
-
A power supply for the GCR. It is done either by externally connected battery or by means of PC.
-
-
SWITCH
-
It is used for switching ON/OFF of the GCR.
-
-
METAL FRAME
-
A well-designed meta frame for effective operation is done by proper calculation.
-
-
PC
-
Personal computer is to create & access the code & uploading it into the Arduino board.
o
SOFTWARE REQUIRED
-
ARDUINO UNO 1.0.6 windows
-
-
Arduino software is written in java, C, C++ language.
-
It uses Windows, mac OS, Linux.
-
Wireless communication Arduino-nrf24L01 code
-
-
The code enables to access the required point of communicative address enrolled in the transmitter & receiver.
-
It is available in Arduino library.
These materials are available at the market at a lower &
TRANSMITTER FLOW CHART RECEIVER FLOW
CHART
START
ARDUINO CODE COMPILE & UPLOAD
WAIT FOR FLEX DEFORMATION
FLEX SIGNAL
economic cost with all the function that we can modify as per our requirements. So that it is called as, open source programming. With these materials, how can we create a gesture controlled robot with wireless communication?
METHOD or PROCEDURE
The GCR (gesture controlled robot) can be constructed by fixing the flex sensor at any joints in the human body which is more effective on working. The human body has approximately 15 major joints excluding the finger
NO RECOGNITION
IF YES OR NO
ANALOG SIGNAL PROCESSING
ANALOG SIGNAL PROCESSING
YES
joints & 30 minor joints which is the finger joints.
ANALOG SIGNAL FREUENCY
MODULATES WITH RF
RF MODULE SEND DATA TO RECEIVER PIPE ADDRESS
RF MODULE SEND DATA TO RECEIVER PIPE ADDRESS
The user has to figure out the joints in the human body whichever will be suitable for locating the flex sensor
to do the required work. If the joints are all completely used for activation of a project, it will be effective at any kind of work as it may perform the most complex & critical work done as humans.
NO
Fig. 1
FIXING OF FLEX SENSOR AT PROPER JOINTS
START
ARDUINO CODE COMPILE & UPLOAD FOR RECEIVER
WAIT FOR RF SIGNAL FROM TRANSMITTER PIPE ADDRESS
TRANSMITTED RF SIGNAL RECOGNITION
IF YES OR NO
GCR Model:
For effective operation, the user can be able to connect the gesture motion with any of the actuators as required to do the process. The GCR model designed & created is the ROBOTIC ARM controlled using servo motor. This is a small replica & a conformance prototype of the GCR concept as it will work according to the gesture motion of a normal human created motion.
The design & circuit connection for the ROBOTIC ARM project is produced within the manual.
ANALOG SIGNAL PROCESSING
ANALOG SIGNAL PROCESSING
ARDUINO ADDRESS THE TRANSMITTED CODE TO ACTUATOR
ACTUATOR WORKS AS PER FLEX DEFORMATION
DESIGN CALCULATIONOF GCR
GCR design calculation includes, Manufacture of ROBOTIC ARM model Flex sensor voltage output calculation Servo motor turning angle calculation
MANUFACTURE OF ROBOTIC ARM MODEL
ROBOTIC ARM model is the replica of normal human arm & its function is produced as same as the humans hand function. It is given through proper fixing of flex sensor at appropriate location in human body joints & the servo motor connection given to the arm model.
Hook pinning point
joints for bending
This voltage output is taken to identify the necessary analog input required for perfect deformation
-
Flex sensor before bending
(creates 30k ohms)
-
Flex sensor after bending
(creates 90k ohms)
Range of resistance varies from different kind of flex sensor. This flex sensor is connected with the 10k ohm resistor & the calculation is given as,
CALCULATION:
Fig. 4
Some markings are denoted in the figure. They are,
+ pinning point where string is connected to pull the fingers (16 pin points)
// joints allotted for bending (10 joints)
Hook for tie the string Bending joints
Closed coil helical spring
Fig. 5
FLEX SENSOR ANALOG INPUT CALCULATION:
Flex sensor produces several voltage output signal when it gets deformed. This deformation signal is fed to the servo motor through Arduino programming, which is essential to operate the servo motor & control the rotating angle of it. Hence, the flex deformation output value has to determine with the resistor connected to it. Flex sensor will act as a resistor when it is deformed or bend & it will become an additional resistance to the voltage output. This external resistance produced by
the flex sensor & the normal 10k ohm resistor connecting with the board have to consider for the calculation.
Voltage input = 5V R1 = 10k ohms
R2 = 30k ohms (when flat) 90k ohms (when bended)
Voltage output = Vout = Vin * R2/ (R1 + R2)
Voltage output (for flat case) = Vout = (5 * 30) / (10+30) = 3.75V
Voltage output (for bended case) = Vout = (5 * 90) / (10+90) = 4.5V
Voltage output = 3.75V to 11.25V Then,
Analog input for flat position = 3.75*1023/5 = 767.25 Analog input for bended position = 4.5*1023/5 = 920.70 Here, 1023 is used, which is the maximum bending value
for a standard flex sensor.
The finger bending value for flex sensor is taken between
767.25 & 920.70, which is the required analog input for the servo motor to operate.
SERVO MOTOR TURNING ANGLE CALCULATION:
To bend the finger of robotic arm up to required limit, the servo rotating angle must be identified & calculated. For this calculation, some parameters are included. They are,
the stretch length of the finger
the radius of the servo motor blade
The stretch length of finger is given as standard length for the GCR model, which is 30mm. The radius of the servo motor blade is standard, which is 25mm & cannot able to change it. But, the horizontal rotating angle of 0 to 180 degree is altered to get the require angle of rotation. The horizontal length depends on the stretch length of the finger, which is 30mm.
For 30mm length stretching of finger, the servo blade has to rotate some x angle.
It is clear, radius of servo blade = 25mm. Therefore, at 90- degree rotation, the blade makes the stretch length of 25mm & it requires additional 5mm for complete stretch length. To achieve the remaining 5mm length, some calculation has to be done for proper turning of servo blade angle without any obstruction.
5
CALCULATION:
Servo blade radius = 25mm Required stretch length = 30mm
For 90º blade angle, length obtained = 25mm Remaining length required = 5mm
From graph, is required. We have, cos = 5/25 = 0.2 = 78.463
= 90 – = 90 78.463 Fig. 6
= 11.536 =11.54º (approx.)
Hence, already 25mm length is obtained from 90º rotation of blade angle & remaining 5mm is obtained by rotating the blade angle for 11.54º.
Total angle made by servo for complete stretch = 90+11.54
= 101.54º
Hence, the total angle of rotation of servo blade for the complete stretching of 30mm length is obtained at 101.54º of rotation.
Finally, the design part of GCR is completed. This design has to be constructed which depends on the manufacturing process & electrical process. It is discussed briefly in construction part of GCR.
CONNECTION OF GCR
GCR comprises of two sections. One is transmitter end section & other one is receiver end section. But, in both the section the connection for Arduino Uno board & nrf24L01 module is same, so that it can be used as both transmitter & receiver at the same time as required. Therefore, connection diagram is given for,
Transmitter end analog input connection Receiver end analog output connection nrf24L01 module with Arduino Uno
Transmitter End Analog Input Connection:
The pins from flex sensor to analog input is connected to the analog pins input of Arduino Uno board (A0 to A5). |
nrf24L01 pins |
RF24 pin uses |
nrf24L01 pins to Arduino pins |
|
VCC |
Power supply |
+3.3V VCC |
||
GND |
Ground |
GND |
||
CE |
Communication enable |
Digital pin 5 |
||
CSN |
Communication selection |
Digital pin 10 |
||
MOSI |
SPI serial data input |
Digital pin 11 |
||
MISO |
SPI serial data output |
Digital pin 12 |
||
SCK |
SPI clock |
Digital pin 13 |
||
The pins from flex sensor to analog input is connected to the analog pins input of Arduino Uno board (A0 to A5). |
nrf24L01 pins |
RF24 pin uses |
nrf24L01 pins to Arduino pins |
|
VCC |
Power supply |
+3.3V VCC |
||
GND |
Ground |
GND |
||
CE |
Communication enable |
Digital pin 5 |
||
CSN |
Communication selection |
Digital pin 10 |
||
MOSI |
SPI serial data input |
Digital pin 11 |
||
MISO |
SPI serial data output |
Digital pin 12 |
||
SCK |
SPI clock |
Digital pin 13 |
||
The transmitter comprises of flex sensor, Arduino Uno board, bread board & battery.
Receiver End Analog Output Connection:
The receiver comprises of servo motor or actuator, Arduino Uno board, bread board & battery.
The vcc & gnd pins of actuator are connected to the vcc & gnd pins of Arduino Uno board. The input signal pin of actuator is connected to the digital pin
nrf24L01 Module with Arduino Board:
The nrf24L01 module acts as both transmitter & receiver, which depends on the circuit connection of the module with Arduino Uno board.
Table 1:
IRQ Interrupt output Empty
ALGORITHM FOR RF24
The programming is provided for both transmitter & receiver in separate manner. The coding process is done after properly defining the algorithm for respective working of the nrf24L01 with Arduino board. The algorithm can be classified into,
-
Transmiter algorithm
-
Receiver algorithm
TRANSMITTER ALGORITHM:
#01 define communication interface with modem
#02 define the library to control radio
frequency (RF24.h)
#03 define flex sensor input pins
#04 define variables for flex sensor values
#05 define digital pin numbers for input pins for CE & CSN
#06 define address of modem, that receives data
#07 activate the modem
#07 set the address of receiver
#08 define continuous function
#09 fix range of flex sensor value
#10 write data & transmit (radio.write)
#01 define communication interface with modem
#02 define the library to control radio
frequency (RF24.h)
#03 define flex sensor input pins
#04 define variables for flex sensor values
#05 define digital pin numbers for input pins for CE & CSN
#06 define address of modem, that receives data
#07 activate the modem
#07 set the address of receiver
#08 define continuous function
#09 fix range of flex sensor value
#10 write data & transmit (radio.write)
RECEIVER ALGORITHM:
RESULTS
As per the connection & algorithm discussed, the GCR model is created & made to analyze with some parameters, to check the ability of sensing capacity & range of working distance.
NOTE: The load related analysis is not done as the GCR model is just a prototype for simple waving action of hand. The load test can be done, when the working machine is connected with the proper GCR concept.
The connection is done as given in the circuit & the coding is compiled & uploaded to the Arduino Uno board. The flex sensor is located at the human body joint, which is more suitable & comfortable for providing proper motion.
SENSITIVITY TEST:
The flex sensor is deformed while making a movement or bend the joint where the flex sensor is installed, an emf is created, which is the analog signal given to the Arduino Uno board. The sensitivity test is carried out with the visual analysis of working of an actuator connected to do a work.
Bending angle of flex sensor |
Range of flex sensor |
Rotating angle of actuator |
0 |
0 |
0 |
30 |
433.88 |
67.93 |
45 |
527.09 |
96.88 |
60 |
760.17 |
159.11 |
90 |
921.45 |
179.08 |
Table 2
WORKING DISTANT RANGE:
The nrf24L01 connected with GCR, creates 2.4GHz frequency which can approximately provide a wide range of covering 60m radius with high strength signal. This is calculated & established in the form of graph with distance in meter in the x-axis & working frequency in y-axis.
Distance Vs. Frequency
3
2
1
0
0 20 40 60 80 100
DISTANCE (m)
Distance Vs. Frequency
3
2
1
0
0 20 40 60 80 100
DISTANCE (m)
#01 define library to control servo motor
#02 define communication interface with modem (SPI.h)
#03 define library to control radio modem
#04 define servo name
#05 define digital input pins to connect CE & CSN
#06 define address of modem, that will receive data
#07 define data variable & position variable
#08 define servo input pins
#09 activate modem & determine address of modem which receives data
#10 enable receiving data via modem
#11 define continuous function
#12 set rotation angle of servo motor
#01 define library to control servo motor
#02 define communication interface with modem (SPI.h)
#03 define library to control radio modem
#04 define servo name
#05 define digital input pins to connect CE & CSN
#06 define address of modem, that will receive data
#07 define data variable & position variable
#08 define servo input pins
#09 activate modem & determine address of modem which receives data
#10 enable receiving data via modem
#11 define continuous function
#12 set rotation angle of servo motor
FREQUENCY (GHz)
FREQUENCY (GHz)
Graph 1
CONCLUSION
The design of this project will be induced in various fields & it also reduces the confusion & unconsciousness among the labors. It also avoids the confusions & inability to react to particular unfavorable situation.
The technology used in GCR concept, is simple & can be used in smaller range & for doing small work. It can be enlarged into a long range operated robotic mechanism by installing a better quality equipment with a capability of high range sensitivity & signal transferring ability.
As world creates the point, automation make humans lazy. This point can be eliminated, because, now we can work interestingly & enthusiastically, which makes the working part as an exercise part.
ACKNOWLEDGEMENT
At the outset, I express my gratitude to the almighty that has been with me during each & every step that I have taken towards the completion of this project.
I thank my parents for providing ample support in achieving the good result from my project.
I thank my institution for providing the better facility & materials with good quality for me to complete this project within the allotted time period.
I am extremely thankful to the head of the department of mechanical engineering Mr. S. R. RAJABALAYANAN, M. Tech., Ph.D. for believing me & provided freedom to accomplish this project. I am truly thankful to my guide Mr. P. NAVEENKUMAR, M. E. who has empowered me & afforded freedom & ample time period for accomplishing this project with better result.
I finally thank my department staffs & friends, who have encouraged & helped me in all situation to attain the project result.