Professional Documents
Culture Documents
Chapter 1
INTRODUCTION
BASE DESIGN
A simple cotton glove is fitted with an accelerometer. This glove is then worn by the
user and the desired actions are performed as shown in . The accelerometer senses the
orientation of the hand in space through an inbuilt capacitive system and feeds out electrical
signals as unique voltages for each unique orientation. These voltages are converted to digital
values by the Microcontroller and then sent to the wireless XBEe transmitter-receiver pair,
which passes on this data to the computer where it is manipulated by our program running in
the background
ACCELEROMETER
The accelerometer is the device which will generate corresponding electrical signals
to control the on-screen elements. The accelerometer used here is the 3-Axis Accelerometer
with an easy analog interface and running at a supply voltage of 3.3V, which makes it ideal
for handheld battery powered Electronics. The accelerometer will experience acceleration in
the range of +1g to -1g as the device is tilted from -90 degrees to +90 degrees. In order to
determine the angle of tilt, θ, the A/D values from the Accelerometer are sampled by the
ADC channel on the microcontroller. The acceleration is compared to the zero-g offset to
determine if it is a positive or negative acceleration. This value is then passed to the tilt
algorithm. When applied to all three axis, we are able to calculate the orientation of hand in
three dimensional space.
Dept of CS & E, SIT, Mangalore Page 1
USB GESTURE DEVICE
The serial data sent by the microcontroller via the UART is read by the software
written in Visual Basic using the MSCOMM32.OCX module which interacts with the
System Kernel However one may use any system programming language that can provide
access to the core kernel libraries to interact with the mouse parameters. The following
settings are required for initialization:
1. Defining the Port no.
2. Setting up the baud rate (9600 bps is the default), setting up parity bits and other
error correction parameters
The following are the essential functions that would be needed to be reused as modules:
1. Constructor for the Mouse Pointer Initialization.
2. State functions for defining the mouse clicks and the associated events
3. Function for sending real time processed of the X, Y positional parameters to the
kernel libraries
Chapter 2
SYSTEM ANALYSIS
2.1 IDENTIFICATION OF THE NEED
Communicating with computer involves use of touch screens, wireless/wired mouse along
with keyboards.“Human Computer Interfacing Device” mapping Hand Gestures, most
intuitive communication gesture, to communicate with computers, Developments in field of
communication have enabled computer commands being executed using hand gestures. This
proposed novel solution achieves effective interaction with Internet giving quality feedback,
intuitive control with complete mobility. Simple inertial navigation sensor like an
accelerometer is utilized to get dynamic/static profile of movement to navigate the mouse or
gyroscope to rotate 3-D virtual objects. Accelerometer profiles are converted into wireless
interactivity. The device involves non-tactile interaction with computer screen where mouse
pointer reacts to and manipulates screen content in accordance with hand gestures. The
applications envisioned: interaction using gesture technology for effective communication
empowering physically challenged to interact with computers including 3-D graphic
interactions
Our gesture input system can be conveniently used by anyone who wishes not to be tied
down to a desk when using a computer, making it perfect for giving presentations or web
surfing from the couch. The intuitive hand motion controls also allow it to serve as an
alternative video game controller. Additionally, since our input system does not exert
pressure on the median nerve at the wrist while in use, it may prevent the development of
carpal tunnel syndrome and other repetitive stress injuries.
Human hand gestures are a means of nonverbal interaction among people. They range
from simple actions of pointing at objects and moving them around to the more complex
ones that express our feelings or allow us to communicate with others. To exploit gestures in
Human Computer Interfacing, it is necessary to provide the means by which they can be
interpreted by computers. Though various efforts are being made in this direction they face
issues of variable reliability, cost and convenience and often need to provide samples to train
the device. There was an effort in this direction which eventually lead to filing a patent a
careful study reveals that this device is inadequate for 3-D interactions. The inertial sensor,
the accelerometer along with a microcontroller, maps the orientation and position of the hand
in 3-D space. This data is then transmitted to the end application where it can be interpreted
and acted on, thereby simulating wireless interactivity.[1]
[ Acceleglove by Anthrotronix http://www.acceleglove.com/] istead u put [1 say]this you do it at
the end
The inspiration to develop such a device is manifold. Firstly, it aims at venturing into
the field of physiological computing and permitting convenient interaction with the
surrounding appliances through minimal hardware, as compared to complicated magnetic
flux sensors or ultrasonic. Also, the use of hand gestures for interaction avoids the most
prevalent injury due to continuous use of the keyboard and the mouse, the Carpal Tunnel
Syndrome which occurs when the median nerve that runs from the forearm into the Hand
gets pressed at the wrist. For the users suffering from Rheumatoid Arthritis causing loss of
function at the finger joints it would be easier to use simple hand gestures which don’t
require the use of fingers but only hand.[2]
[Microsoft Surface http://www.microsoft.com/SURFACE/Default.aspx]
Movements to perform tasks on a computer. This technology is also of prime
importance in dealing with 3-dimensional objects, effective teaching aid and for providing an
alternative to the traditional joysticks in the gaming industry.
seamless. For example, the right hand can quickly traverse from controlling the mouse cursor
to controlling mouse scrolling.
Chapter 3
SOFTWARE REQUIREMENT SPECIFICATION
3.1 INTRODUCTION
3.1.1 Purpose
The main objective of this document is to illustrate the requirements of the project.
USB Gesture Device The document gives the detailed description of the both functional and
non functional requirements.
3.1.2 Scope
This proposed multi-functional portable device for better human – computer interaction using
hand gestures can be applied in the following applications:
• Replace the mouse as a more convenient and natural interaction peripheral.
• Interacting with 3D objects on computer screen
• Easy control of Robots, Robotic Arms and Human Controlled Automation
• Easy Home Automation
• Effective Teaching / Animation / Design Aid
• Control of Machines for High-Precision Jobs
• Easy accessibility tool for people with disabilities
• When used with other inertial sensors the glove can be used to manipulate objects in 3
dimensions.
• Control over distant actuators connected via a PC interface.
• It can be used extensively in the gaming industry for remote location manipulation
Microsoft Visual Basic 2008 is an evolution of the Visual Basic language that is
engineered for productively building type-safe and object-oriented applications. This
generation of Visual Basic continues the tradition of giving you a fast and easy way to
3.3.2.2 HTML
Hyper Text Markup Language is the predominant markup language for web pages.
It provides a means to describe the structure of text-based information in a document — by
denoting certain text as links, headings, paragraphs, lists, and so on — and to supplement that
text with interactive forms, embedded images, and other objects. HTML is written in the
form of tags, surrounded by angle brackets. HTML can also describe, to some degree, the
appearance and semantics of a document, and can include embedded scripting language code
(such as JavaScript) which can affect the behavior of Web browsers and other HTML
processors.
B. Calibrating
Since the values of acceleration may vary with altitude as well as with various people
using it. The displacement of the positional parameters due to unintentional motions is to be
neutralized. For this, we take the first 50 set of packets as sampling packets – to these packets
we separate out the individual values and take an average, the person wearing the glove is
expected to rest his hands in the rest position. The normal value hence obtained is used for
subsequent mapping of co-ordinates into proportionate displacement.
C. Error Detection
The reasons for errors can be –
• Signal noise
• Intermittent connection at the hardware
• Packet loss
D. Processing Gestures
The raw coordinates obtained after the error correction are used in identifying
gestures which are pre-defined. A button press on the glove puts it into the Gesture Mode;
when in this mode, the co-ordinates are passed onto the Gesture Functions which constantly
monitor and store previous co-ordinate data to recognize a pattern. These patterns can be
customized and are to be pre-defined as required.