Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
218 views42 pages

Information Science and Engineering Virtual Hand

"Virtual hand" is an effort to simulate a robot, which converts the real time actions into digital signals which in turn is used to produce virtual actions. This project gives an idea of the working of a simple robot and to demonstrate the use, implementation and applications of the virtual reality technology.

Uploaded by

Gouty Xavierite
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
218 views42 pages

Information Science and Engineering Virtual Hand

"Virtual hand" is an effort to simulate a robot, which converts the real time actions into digital signals which in turn is used to produce virtual actions. This project gives an idea of the working of a simple robot and to demonstrate the use, implementation and applications of the virtual reality technology.

Uploaded by

Gouty Xavierite
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 42

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

CHAPTER 1

INTRODUCTION
1.1 Introduction
Technological breakthroughs have allowed automation to replace many jobs that are repetitive in nature and hazardous to human health, thus replacing human operators in many work environments. However, it has also allowed a new phenomenon to occur: the remote control of physical systems by humans through the mediation of computers. Indeed, there are still many jobs that are non-repetitive, unpredictable and hazardous to humans. Clearing up a nuclear power plant leak or exploring the extreme depths of the ocean are just some examples. Reliance on specially designed automatic machines for such jobs may prove to be inefficient, less flexible and less cost-effective than a human operator is. Therefore, a remote control system by human operators using video inspection and master-slave mechanical manipulation is used. Due to the growing popularity and also due to the research in the field of robotics, the days are very near wherein robots will replace all human activities. This project is an effort to simulate a robot, which converts the real time actions into digital signals which in turn is used to produce virtual actions. The software for this project acts as interface between the hardware devices and controller computer. Inputs to the system are taken from sensors which are fitted on the intended part or Hand. These sensors supply the real-time conditions of the hand gestures to the computer. The software processes these signals and according to received signal levels it moves the graphical picture on the monitor. That means the virtual movement is created by software part, where as real actions are captured by array of sensors. This project gives an idea of the working of a simple robot and to demonstrate the use, implementation and applications of the virtual reality technology. Here the project is designed using the VB.Net. This project is connected to the external hardware; simulator accepts the commands from the hardware and accordingly performs the desired task.

SHREE DEVI INSTITUE OF TECHNOLOGY

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Such virtual reality applications finds very important role in saving any life, doing remote works, working with hundred fold bigger than the real capacity machines etc. Virtual Hand resembles the combine use of technology like Robotics and gesture recognition. This system will recognize the hand gesture (using Data glove) and remotely control Virtual Hand (robotic arm) placed over the TCP/IP Network. Data glove can detect almost all the movements of a hand; the microcontroller based system converts some specified movements made by the gesture into data to be transmitted on the other end of the placed robotic arm. The data glove is equipped with two types of sensors: The tilt sensors and folding sensors are used to control the various functions of the robotic arm. The gesture processed data is transmitted to the robotic arm end, the arm is controlled by the microcontroller imitates the same movements performed by the user on the transmitting side. A robotic arm is a robotic manipulator, usually programmable, with similar functions to a human arm. The links of such a manipulator are connected by joints allowing either rotational motion (such as in an articulated robot) or translational (linear) displacement. The links of the manipulator can be considered to form a kinematic chain. The business end of the kinematic chain of the manipulator is called the end effectors and it is analogous to the human hand. The end effector can be designed to perform any desired task such as welding, gripping, spinning etc., depending on the application. The robot arms can be autonomous or controlled manually and can be used to perform a variety of tasks with great accuracy. The robotic arm can be fixed or mobile (i.e. wheeled) and can be designed for industrial or home applications. Gestures can originate from any bodily motion or state but commonly originate from the face or hand. Current focuses in the field include emotion recognition from the face and hand gesture recognition. Gesture recognition enables humans to interface with the machine (HMI) and interact naturally. Using the concept of gesture recognition, it is possible to control a robotic arm connected to the microcontroller. This could potentially make conventional input devices such as, keyboards and even touch-screens redundant. Controller-based gestures act as an extension of the body so that when gestures are performed, some of their motion can be conveniently captured by software.

SHREE DEVI INSTITUE OF TECHNOLOGY

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

CHAPTER 2

LITERATURE SURVEY
2.1 Existing Gesture Tracking System
WSEAS- www.wseas.us/e-library/conferences/2008/uk/ISPRA/ispra-11.pdf: An augmented reality tool for vision based hand gesture recognition in a ...Proceedings PROCESSING, of the 7th WSEAS International Conference on and AUTOMATION SIGNAL of

ROBOTICS

(ISPRA '08) ... University

Cambridge, UK, February 20-22,2008 ... it useful for the further use, it is required to change it ...

XMARKS- www.xmarks.com/site/www.billbuxton.com/input14.Gesture.pdf : Xmarks site page for billbuxton www.billbuxton.com/input14.Gesture.pdf with topics, reviews, ratings and comments. www.anthro.ucsd.edu/~jhaviland/Publications/HavilandGesture.pdf

Institute of Social Anthropology Publication 6. Friedrich, P. (1971). The Tara scan Suffixes of Locative Space: Meaning and Morph tactics. .. email.eva.mpg.de/~tomas/pdf/Liszkowski_AbsentEntities_09.pdf

The vocalizers themselves can always see or hear the ... were able to use the pointing gesture to make reference to absent...

SHREE DEVI INSTITUE OF TECHNOLOGY

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

2.2 Concept of Robotic Arm


The first design was for experimental use on a human-size industrial robot arm called PUMA 560 used to explore issues in versatile object handling and compliance control in grasp actions (Bejczy & Jau, 1986) Proceedings of the 7th WSEAS International Conference on SIGNAL PROCESSING, ROBOTICS and AUTOMATION (ISPRA '08) The 8051 Microcontroller and Embedded Systems Using Assembly and C, Second Edition by Muhammad Ali Mazidi, Janice Gillispie Mazidi,Rolin D. McKinlay. K. S. Fu & R.C. Gonzalez & C.S.G. Lee, Robotics: Control, Sensing, Vision, and Intelligence (CAD/CAM, robotics, and computer vision) C.S.G. Lee & R.C. Gonzalez & K.S. Fu, Tutorial on robotics SP200 With Open Control Center. Robotic Prescription Dispensing System, accessed November 22, 2008. McKesson Empowering HealthCare. Robot RX, accessed November 22, 2008. Aethon. You Deliver the Care. TUG Delivers the Rest, accessed November 22, 2008. Marco Ceccarelli, "Fundamentals of Mechanics of Robotic Manipulators"

SHREE DEVI INSTITUE OF TECHNOLOGY

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

CHAPTER 3

SOFTWARE REQUIREMENT SPECIFICATIONS


3.1 INTRODUCTION 3.1.1 Purpose
Virtual Hand is a large scale multi-microcontroller based system being designed to recognize the hand gesture (using Data glove) and remotely control Virtual Hand (robotic arm) placed over the TCP/IP Network. Virtual Hand basically a data glove and a microcontroller based system. Data glove can detect almost all the movements of a hand and microcontroller based system converts some specified movements into data to be transmitted on the other end. The data glove is equipped with two types of sensors: The bend sensors and accelerometers as tilt sensors. Virtual Hand can be remotely controlled over a network, which makes it easier to do various tasks anywhere and anytime across the globe.

3.1.2 Project Scope


The scope of this project will be to design and implement the following business processes: a) User Authentication and Authorization. b) This research describes the design and working of a system which is useful for people to to do various tasks anywhere and anytime c) An expert can use their knowledge and skill to control the system remotely and perform tasks on various objects. d) This system converts the sign language into voice which is easily understood by the normal people.

SHREE DEVI INSTITUE OF TECHNOLOGY

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

3.2 General Description


3.2.1 Overall Perspective
Gesture detection is the most important part of this module. Tilt Sensor: detects the tilting of the hand and sends some binary data against meaningful gestures, to the bend detection module. Bend Sensor: This module is based on a microcontroller-controlled circuitry. Microcontroller deals with the bend sensors one by one. First of all, the microcontroller checks the output of the first bend sensor, and calculates its pulse width. After the calculation of the pulse width of the first bend sensor the microcontroller saves its output, and then moves towards the second bend sensor. Software used is Keil uvision3: Keil combines project management, make facilities, source code editing, program debugging, and complete simulation in one powerful environment. Programming language used is vb.NET: is an object-orientedcomputer programming language that can be viewed as an evolution of the classic Visual Basic (VB) which is implemented on the .NET Framework.

3.2.2 Product Function


a) The user has to be authenticated and authorized. b) Users are authorized with user name and password. c) Users can communicate with people. d) The gestures converted to data to be transmitted to the robotic arm side. e) Robotic arm is controlled remotely by experts for a specific task. f) Admin can modify or add new gestures according to the users convenience.

SHREE DEVI INSTITUE OF TECHNOLOGY

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

3.2.3 User Characteristics


Client side end user: End users can be Authenticated Expert user or a normal person, who may control the robotic arm to implement various tasks. Administrator: The system user, who will authenticate the database developer. Database maintainer: Authorized user can only make changes to the database. Tester: He will keep the software bug free and errors. Developer: Might add new functionalities to existing ones.

3.2.4 Design and Implementation Constraints


The system is designed to work in windows XP operating system environment and above operating system. Visual Studio Express 2008: Used to develop VB.NET forms. SQL Server: Used to create the back end of DB. Embedded C language used to perform client side applications. The project will be developed on the .NET platform, using VB.NET and SQL Server SQL Server database will be used as the repository to store all authentication and application related information.

The back end is developed using SQL Server. The front end is developed using VB.Net. The product is accomplished with login facility so that specific function is available to specific user. Drawbacks of this project: Since the system is sensitive, there is a huge change in the digital output with the very little tilt of the hand, which is difficult to be handled. Low price multi-channel ADCs have a high error in their output, efficient low error ADCs are very costly.

The Robotic arms cannot actually sense and feel the object at the controlled end
7

SHREE DEVI INSTITUE OF TECHNOLOGY

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Not completely reliable in terms of medical field, future invention can overcome limitations.

3.2.5 Assumption and dependencies


We assume that the users have basic knowledge about this product documentation

3.3 Specific Requirements


3.3.1 Functional Requirements:
Functional requirement specify which outputs should be produced from the given inputs. They describe the relationship between the input and output of the system, for each functional requirement a detailed description of all data inputs and their source and the range of valid inputs must be specified. All the operations to be performed on the input data to obtain the outputs should be specified. Input: Inputs are gestures which are given to adc to convert analog to digital voltage . Output: Input given by user is converted to movements of the Robotic Arm. Functionality: Logon capabilities: The system provides the user with login capabilities. Alerts: The system alerts the user in case of any problems. Usability: The system provides the user to communicate through hand gestures which is converted to movements of the Robotic Arm. The system is user friendly. Reliability: The system has to be reliable due to importance of gestures since small changes in the angles made by the hand glove leads to huge difference in the output.

SHREE DEVI INSTITUE OF TECHNOLOGY

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Availability: The system is available 100% for the user which is operational 24 hours a day. Mean Time between Failures (MTBF): The system will be developed in such a way that it may fail once in a year. Mean Time To repair (MTTR): Even if the system fails, system will be recovered back within an hour. Accuracy: The accuracy of the system is limited by the accuracy of the speed at which the user uses the system. Access Reliability: The system shall provide 100% access reliability. Performance: Response time: The splash page should be able to be downloaded within a minute using 56K modem. The system shall respond to the user not less than in 5 seconds from the time of request submittal. Throughput: The throughput depends on the number of gestures made for the given interval of time. Capability: The system is capable of recognizing 8 gestures made by the hand gloves 1 at a time.

SHREE DEVI INSTITUE OF TECHNOLOGY

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

3.3.2 Other Non-functional Requirements


Performance Requirements

The Databases access has to be fast and reliable. High speed network bandwidth must be available for reliable communication to avoid unnecessary delay. Services should be cast off from redundancy. Efficient utilization of resources. Safety Requirements

The user authentication and authorization protocols should be secure. In case of network failure or crash there should be means to have a backup and quick communication. Security Requirements

The user authentication and authorization protocols have to be secure. Services must be divided according to user permissions.

3.3.3 External interface requirements


User Interfaces

The user on starting the application will get a welcome screen asking for username and password. All the services described in the use case will be provided in the GUI. Software interfaces SQL Server 2005 and MS Visual Studio 2008 will require for the system to run on.

Hardware interfaces Hardware interface is very important to the documentation. If the software is executed on existing hardware, all the characteristics of the hardware, including memory restrictions, should be specified.

Communications Interfaces Zigbee is used for communication between the server and the clients.

SHREE DEVI INSTITUE OF TECHNOLOGY

10

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

3.3.4 Hardware and software Interfaces Circuit Description and Diagram: 3.3.4.1 KA78XX/KA78XXA 3-Terminal 1A Positive Voltage Regulator
Features Output Current up to 1A Output Voltages of 5, 6, 8, 9, 10, 12, 15, 18, 24V Thermal Overload Protection Short Circuit Protection Output Transistor Safe Operating Area Protection Description The KA78XX/KA78XXA series of three-terminal positive regulator are available in the TO-220/D-PAK package and with several fixed output voltages, making them useful in a wide range of applications. Each type employs internal current limiting, thermal shut down and safe operating area protection, making it essentially indestructible. If adequate heat sinking is provided, they can deliver over 1A output current. Although designed primarily as fixed voltage regulators, these devices can be used with external components to obtain adjustable voltages and currents.

SHREE DEVI INSTITUE OF TECHNOLOGY

11

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Internal Block Diagram

3.3.4.2 AT89C52 8-bit Microcontroller with 8K Bytes Flash

Description The AT89C52 is a low-power, high-performance CMOS 8-bit microcomputer with 8Kbytes of Flash programmable and erasable read only memory (PEROM). The device is manufactured using Atmels high-density non-volatile memory technology and is compatible with the industry-standard 80C51 and 80C52 instruction set and pin out. The on-chip Flash allows the program memory to be reprogrammed in-system or by a conventional non-volatile memory programmer. By combining a versatile 8-bit CPU with Flash on a monolithic chip, the Atmel AT89C52 is a powerful microcomputer which provides a highly-flexible and cost-effective solution to many embedded control applications.

SHREE DEVI INSTITUE OF TECHNOLOGY

12

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

The AT89C52 provides the following standard features: 8K bytes of Flash, 256 bytes of RAM, 32 I/O lines, three 16-bit timer/counters, a six-vector two-level interrupt architecture, a full-duplex serial port, on-chip oscillator, and clock circuitry. In addition, the AT89C52 is designed with static logic for operation down to zero frequency and supports two software selectable power saving modes. The Idle Mode stops the CPU while allowing the RAM, timer/counters, serial port, and interrupt system to continue functioning. The Power-down mode saves the RAM contents but freezes the oscillator, disabling all other chip functions until the next hardware reset.

Pin Configuration

SHREE DEVI INSTITUE OF TECHNOLOGY

13

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Block Diagram

SHREE DEVI INSTITUE OF TECHNOLOGY

14

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Features Compatible with MCS-51 Products 8K Bytes of In-System Reprogrammable Flash Memory Endurance: 1,000 Write/Erase Cycles Fully Static Operation: 0 Hz to 24 MHz Three-level Program Memory Lock 256 x 8-bit Internal RAM 32 Programmable I/O Lines Three 16-bit Timer/Counters Eight Interrupt Sources Programmable Serial Channel Low-power Idle and Power-down Modes

3.3.4.3 RS232 Board Interface Section


Fig shows the RS232 board interface section, which uses a MAX232 5V to RS232 converter chip, this converts the 0-5V TTL levels at the ATMEL 89C51 pins to the +12V/-12V levels used in RS232 links. As is common with these devices it inverts the data during the conversion, the ATMEL 89C51 USART hardware is designed to take account of this but for software serial communications you need to make sure that you invert both the incoming and outgoing data bits. The two closed links on the RC7 and RC6 lines are for connection to the Atmel 89C51 board, and are the two top wire links shown on the top view of the board below. The two open links on the RC1 and RC2 lines are for the 16F628 board (the 16F628 uses RB1 and RB2 for its USART connection), and are the two top track breaks shown on the bottom view of the board below.

SHREE DEVI INSTITUE OF TECHNOLOGY

15

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

RS232 Interfacing Circuit Diagram

So, for use with the Atmel 89C51 board fit the top two wire links, and cut the top two tracks shown, for the 16F628 leave the top two links out, and don't cut the two top track breaks. This only applies if you are using the hardware USART, for software serial communications you can use any pins you like. Although it's labelled as connecting to port 1 for the Atmel 89C51 processor board, it can also be connected to other ports if required, and if not using the hardware USART.

SHREE DEVI INSTITUE OF TECHNOLOGY

16

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

3.3.4.4 Power supply


Circuit description:
As shown in fig, a DC. Power supply which maintains the output voltage constant irrespective of AC. mains fluctuations or load variations is known as regulated DC. power supply. It is also referred as full-wave regulated power supply as it uses four diodes in bridge fashion with the transformer. This laboratory power supply offers excellent line and load regulation and output voltages of +5V & +12V at output currents up to one amp. The components used are listed in table

Circuit diagram of +5V & +12V full wave regulated power supply

1. Step-down Transformer:
The transformer rating is 230V AC at Primary and 12-0-12V, 1A across secondary winding. This transformer has a capability to deliver a current of 1A, which is more than enough to drive an electronic circuit or varying load. The 12V AC appearing across the secondary is the RMS value of the waveform and the peak value would be 12 x 1.414 = 16.8 volts. This value limits our choice of rectifier diode as 1N4007, which is having PIV rating more than 16Volts.

SHREE DEVI INSTITUE OF TECHNOLOGY

17

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

2. Rectifier Stage:
The two diodes D1 & D2 are connected across the secondary winding of the transformer as a full-wave rectifier. During the positive half-cycle of secondary voltage, the end A of the secondary winding becomes positive and end B negative. This makes the diode D1 forward biased and diode D2 reverse biased. Therefore diode D1 conducts while diode D2 does not. During the negative half-cycle, end A of the secondary winding becomes negative and end B positive. Therefore diode D2 conducts while diode D1 does not. Note that current across the centre tap terminal is in the same direction for both half-cycles of input AC. voltage. Therefore, pulsating DC. is obtained at point C with respect to ground.

3. Filter Stage:
Here capacitor C1 is used for filtering purpose and connected across the rectifier output. It filters the AC. components present in the rectified DC and gives steady DC. voltage. As the rectifier voltage increases, it charges the capacitor and also supplies current to the load. When capacitor is charged to the peak value of the rectifier voltage, rectifier voltage starts to decrease. As the next voltage peak immediately recharges the capacitor, the discharge period is of very small duration. Due to this continuous charge-discharge-recharge cycle very little ripple is observed in the filtered output. Moreover, output voltage is higher as it remains substantially near the peak value of rectifier output voltage. This phenomenon is also explained in other form as: the shunt capacitor offers a low reactance path to the AC. components of current and open circuit to DC. component. During positive half cycle the capacitor stores energy in the form of electrostatic field. During negative half cycle, the filter capacitor releases stored energy to the load.

4. Voltage Regulation Stage: Across the point D and Ground there is rectified and filtered DC. In the present circuit KIA 7812 three terminal voltage regulator IC is used to get +12V and KIA 7805 voltage regulator IC is used to get +5V regulated DC. output. In the three terminals, pin 1 is input i.e., rectified & filtered DC. is connected to this pin. Pin 2 is common pin and is grounded. The pin 3 gives the stabilized DC. output to the load. The circuit shows two more decoupling capacitors C2 & C3, which provides ground path to the high frequency noise signals. Across the point E and F with respect to ground +5V & +12V stabilized or regulated DC output is measured, which can be connected to the required circuit.

SHREE DEVI INSTITUE OF TECHNOLOGY

18

INFORMATION SCIENCE AND ENGINEERING Table of Components List SEMICONDUCTORS IC1 IC2 D1& D2 CAPACITORS C1 C2 MISCELLANEOUS X1 230V AC Pri,14-0-14 1Amp Sec Transformer 1000 f/25V Electrolytic 0.1F Ceramic Disc type 7812 Regulator IC 7805 Regulator IC 1N4007 Rectifier Diodes

VIRTUAL HAND

1 1 2

1 1

Software Specification:
System Requirements

OS: Windows XP and above RAM: 512 MB Both End Hard Disk Space: 20 GB CPU: Intel Pentium 4 or Above MS Sql Server 2005

SHREE DEVI INSTITUE OF TECHNOLOGY

19

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Hardware Requirements

1. CPU: Intel Pentium IV and above 2. RAM: 1 GB 3. Hard Disk Space: 10 GB of free space 4. Monitor 5. Key Board 6. Mouse Controlling side 7. Tilt sensor 8. Bend sensor 9. AT89C52 microcontroller 10.ADC 0808 11. MAX 2332 12. RS232 13. Data Glove

SHREE DEVI INSTITUE OF TECHNOLOGY

20

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

1. CPU: Intel Pentium IV and above 2. RAM: 1 GB 3. Hard Disk Space: 10 GB of free space 4. Monitor 5. AT89C52 microcontroller Controlled End 6.ADC 0808 7. MAX 2332 8. RS232 9. Robotic Arm 10. Camera

SHREE DEVI INSTITUE OF TECHNOLOGY

21

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

CHAPTER 4

SYSTEM DESIGN
4.1 Abstract Design
4.1.1 Context flow diagram
A context flow diagram is a data flow diagram, with only one massive central process that assumes everything inside the scope of the system. It shows how the system will receive and send data flows to the external entities involved. Here the system used is gesture tracker it receives the data from the user (the one who logins to the system).On addition to that a data store is present by using which storing/retrieving and deleting of data is done.

Arm Controlled

Gesture Tracker User Login Store/Retrieve/remove data

Data Store

SHREE DEVI INSTITUE OF TECHNOLOGY

22

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

4.1.2 Flowchart

Start

Yes Login

Valid

No

Yes
Menu

Modify Password

Control Arm

Logout

Insert/Delete
Data Store A

SHREE DEVI INSTITUE OF TECHNOLOGY

23

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

ConnectDataGlove ( ) ConnectSerialPort ( )

Connect (comport) IsMoving ()

GetSensorValue ( ) Stop ConvertSensorValuesToBoolean ( ) Control Arm

Recognize (sensorobj)

GetSymbols (sensorvalues)

StartRecognition

ArmMovement ( )

SHREE DEVI INSTITUE OF TECHNOLOGY

24

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

4.2 Detailed Design


4.2.1 Data Flow Diagram
The data flow diagram is a simple graphical notation that can be used to represent a system in terms of the input data to the system various processing carried out on these data, and the output data generated by the system. A data flow diagram model uses a very limited number of primitive symbols to represent the function performed by a system and the data flow among these functions. There are essentially five different types of symbols used to construct DFDs; they are functional symbol, external entity, dataflow symbol, data store symbol, output. Level 0 Input Output

System or Process

Here input is the internal data and output is the external data. Data flows from input to output via internal process.

Level 1

General user

Valid

Login

Control Arm Movement

Logout Invalid

DB

SHREE DEVI INSTITUE OF TECHNOLOGY

25

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

The input given to the login is username and password .If its invalid username and password then it asks for entering the valid username and password else data is retrieved from database and the main form gets displayed. Main form contains arm control, space to display video and logout. Level 2 Modify Password

Insert

Delete

DB

In Modify password part, we can insert values into or delete values from database and reset/change the system password. Level 3 Gesture to Arm Movement

Gesture Done

Get Sensor Value

Convert To Boolean

Control Arm

SHREE DEVI INSTITUE OF TECHNOLOGY

26

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

In Gesture to Arm Movement, we convert the value that has been received into various arm movements.

4.2.2 Data Dictionary


MYSQL: - describe login; Name Username Password Null Not Null Not Null Type Varchar(50) Varchar(50)

4.2.3 Sequence Diagram


A sequence diagram represents the sequence and the interactions of given case or scenario. A sequence diagram shows an interaction arranged in a time sequence. It shows the objects participating in the interaction by their lifetimes and messages they exchange, arranged in a time sequence. A sequence diagram has two dimensions: vertical dimension represents time; the horizontal dimension represents different objects. The vertical line is called the objects lifetime. The lifeline represents the objects existence during the interaction. An object is shown as box at the top of a dashed vertical line. A role is a slot for an object within a collaboration that describes the type of object that may play the role and relationships to other roles. Each message is represented by an arrow between lifetimes of two subjects. The order in which these message is occur is shown top to bottom on the page. Each message is labelled with message name.

SHREE DEVI INSTITUE OF TECHNOLOGY

27

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

User

Gesture Tracking System

Arm Movement

Insert user id and password

Authenticate User and allow access Connection Established Menu is displayed to user Waiting for hand gesture User can select various options

Gestures are sensed and processed Microcontroller controls the hand movements Arm movements are captured by video camera and sent to the user

User can interact with various objects, by viewing the video Logout

Disconnect Connection closed Logout Successful

Login sequence diagram

SHREE DEVI INSTITUE OF TECHNOLOGY

28

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

4.2.4 Architectural Design

ADC0808 Zigbee RX/TX

Tilt Sensor

AT89C51 Bend sensor

MAX232

RS232

Zigbee RX/TX

Personal Computer

Microcontroller

Robotic Arm

SHREE DEVI INSTITUE OF TECHNOLOGY

29

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Chapter 5

SYSTEM IMPLEMENTATION
5.1 Tools Used:
5.1.1 .NET Framework 3.5
The Microsoft .NET Framework is a software framework that can be installed on the computers running Microsoft Windows operating systems. It includes a large library of coded solutions to common programming problems and a virtual machine that manages the execution of programs written specifically for the framework. The .NET Framework is a Microsoft offering and is intended to be used by most new applications created for the Windows platform. The frameworks Base Class Library provides a large range of features including user interface, data access, database connectivity, cryptography, web application development, numeric algorithms and network communications. The class library is used by programmers, who combine it with their own code to applications. Programs written for the .NET Framework execute in a software environment that manages the programs runtime requirements. Also part of the .NET Framework, this runtime environment is known as the Common Language Runtime (CLR). The CLR provides the appearance of an application virtual machine so that programmers need not consider the capabilities of the specific CPU that will execute the program. The CLR also provides other important services such as security, memory management and exception handling. The class library and the CLR together constitute the >NET Framework. The .NET Framework is designed to fulfil the following objectives: To provide a consistent object-oriented programming environment whether object code is stored and executed locally but Internet -distribution, or executed remotely. To provide a code-execution environment that minimizes software deployment and versioning conflicts. To provide a code-execution environment that promotes safe execution of code, including code created by an unknown or semi trusted third party.

SHREE DEVI INSTITUE OF TECHNOLOGY

30

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

To provide a code-execution environment that eliminates the performance problems of scripted or interpreted environments. To make developer experience consistent across widely varying types of applications, such as Windows-based applications and Web-based applications. To build all communication on industry standards to ensure that code based on the .NET Framework can integrate with any other code.

5.1.2

5.2 Pseudo code


Login: Step1: Start Step2: Read username and password Step 3: If username and password is valid then go to step 4 else step 5. Step4: Display error message redirect to login page, go to step 2 Step5: If valid go to Control form Step6: Stop

Gesture recognition: Step1: Start Start2: If gesture is recognized then process data and transmit using serial port Step3: System will wait until next gesture is done. Step5: Stop

Arm Movement: Step1: Start Step2: If data is received from Pc to Controller go to step 3 Step3: Perform Movement as made by the Gesture.
SHREE DEVI INSTITUE OF TECHNOLOGY 31

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Step4: System will wait until next data is received, if received go to step 2 Step5: Stop

Chapter 6 SCREEN SHOTS


6.1 User Authentication:

An expert user is provided with a user name and password. A valid user is only authenticated to use the system. This process of authentication provides security of the system from unauthorised access.

6.2 Change Password:

SHREE DEVI INSTITUE OF TECHNOLOGY

32

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

The password can be changed only when the user logs into the system and by verifying the default password again for security reasons.

6.3 Control Form:

SHREE DEVI INSTITUE OF TECHNOLOGY

33

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

The main Control form provides various features like connect video communication, control the robotic arm and change of password. Connect Video: To Visualize the Arm Movements on the controlled end. Control: Gesture control as well as Manual control. Change Password: A user may need to change password for security reasons and can modify easily though the change password method.

6.4 Host Address:

SHREE DEVI INSTITUE OF TECHNOLOGY

34

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

The User has to input the host IP address in the Dotted Decimal Format in order to connect the system over the TCP/IP network. E.g.: 192.168.1.125

6.5 Control Type:

User is provided with two different modes of communication, mainly the manual and the gesture mode .The user can select either of the control type.

SHREE DEVI INSTITUE OF TECHNOLOGY

35

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

6.6 Gesture Controlled:

When connected in gesture Mode, the following form appears and video is displayed in another form .The user can control the arm, by viewing the live video being broadcasted.

6.7 Window:

The following window shows the data being received by the system connected to the robotic arm.
SHREE DEVI INSTITUE OF TECHNOLOGY 36

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

6.8 Manual Control:

The manual control mode contains various buttons to control the robotic arm. Each button is associated with the arm movement. Open Close: To control the open close movement of the fingers Up - Down: To move the arm up and down. Left Right: Rotates the hand in either of the direction. Reset: Reset the Arm to still position. All the movements are stopped.

SHREE DEVI INSTITUE OF TECHNOLOGY

37

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

6.9 Robotic Arm Controlled:

The System connected to robotic arm displays the following form on successful connection.

SHREE DEVI INSTITUE OF TECHNOLOGY

38

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Chapter 7

TESTING
7.1 Introduction
Testing a systems capabilities is a very important task. Users are interested in getting job done and test cases should be chosen to indentify aspects of the system that will stop them from doing their job. Although errors such as seen corruption are irritating they are less disruptive than errors. Its important that system works under normal usage conditions than under occasional conditions that only arise with extreme data values. Software testing is the critical element of software quality assurance and represents the ultimate review of specifications, design and coding. The main objective of testing is 1. Executing program with the intent of finding error. 2. Design a good test case, one that has high probability of finding an as yet undiscovered error. In computer programming, unit testing is a software verification and validation method in which a programmer tests if individual units of source code are fit 4 uses. A unit is the smallest part of the application. In procedural programming a unit may be an individual function or procedure. Ideally, each test case is independent from the others: substitutes like method stubs, mock objects, fakes and test harnesses can be used to assist testing a module in isolation. Unit tests are typically written and run by software developers to ensure that code meets its design and behaves as intended, Its implementation can vary from being very manual ( pencil and paper) to being formalized as party of build automation. Integration testing sometimes called integration and testing, abbreviated I&T is the phase in software testing in which individual software modules are combined and tested as a group. It occurs after testing and before system testing. Integration testing takes as its input modules that have been unit tested, groups them in larger aggregates, applies tests defined in an intergration test plan to those aggregates, and delivers as its output the integrated system ready for system testing.

SHREE DEVI INSTITUE OF TECHNOLOGY

39

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

System testing of software or hardware is testing conducted on a complete, integrated system to evaluate the systems compliance with its specified requirements. System testing falls within the scope of the black box testing, and as such, should require no knowledge of the inner design of the code or logic. As a rule, system testing takes, as its input, all of the integrated software system itself integrated with any applicable hardware system(s). The purpose of integration testing is to detect any inconsistencies between the software units that are integrated together or between any of the assemblages and the hardware. System testing is a more limiting type of testing; it seeks to detect defects both within the inter assemblages and also within the system as a whole.

SHREE DEVI INSTITUE OF TECHNOLOGY

40

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Chapter 8

CONCLUSION
8.1 Conclusion
Developing a system like Virtual Hand will help in reducing various complexities and provide solutions to many problems. The design and working of a system is useful in field of Medical Surgery, Satellite Servicing, Industries, and Defusing Bombs etc. It will be a helping hand for various situations where there is a threat to human life.

8.2 Future Enhancements


There can be a lot of future enhancements associated to this research work, which includes: Virtual hand leads to other important inventions like Virtual Man, where the person can be virtually present at various location in specific time. This concept is not yet implemented and remains in thoughts, but growth in technologies in future mite come up with such innovations. Designing of wireless transceiver system for Microcontroller and Sensors Based Gesture. Perfection in monitoring and sensing of the dynamic movements involved in Microcontroller and Sensors Based Gestures. Virtual reality application e.g., replacing the conventional input devices like joy sticks in videogames with the data glove. The Robot control system to regulate machine activity at remote sensitive sites.

Remote operation:

Today, a remote operated TV-set is nothing spectacular. VR

technology allows enhancing basic idea of Tele-operation. It can include really complex tasks that require the dexterity of human hands. Tele-operated robots can in near future replace people at workplaces that might be hazardous to their life of health. This includes or example maintaining of nuclear power stations, works on height, works with chemicals or viruses etc.
SHREE DEVI INSTITUE OF TECHNOLOGY 41

INFORMATION SCIENCE AND ENGINEERING

VIRTUAL HAND

Chapter 9

REFERENCES
[1]. Kazunori Umeda Isao Furusawa and Shinya Tanaka, Recognition of Hand Gestures Using Range Images, Proceedings of the 1998 IEEW/RSJ International Conference on intelligent Robots and Systems Victoria, B.C., Canada October 1998, pp. 1727-1732 [2]. Srinivas Gutta, Jeffrey Huang, Ibrahim F. Imam, and Harry Wechsler, Face and Hand Gesture Recognition Using Hybrid Classifiers, ISBN: 0- 8186-7713-9/96, pp.164169 [3]. Jean-Christophe Lementec and Peter Bajcsy, Recognition of Am Gestures Using Multiple Orientation Sensors: Gesture Classification, 2004 IEEE Intelligent

Transportation Systems Conference Washington, D.C., USA, October 34, 2004, pp.965970 [4]. Sushmita Mitra and Tinku Acharya,Gesture Recognition: A Survey, IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART C:

APPLICATIONS AND REVIEWS, VOL. 37, NO. 3, MAY 2007, pp. 311-324 [5]. Seong-Whan Lee, Automatic Gesture Recognitionfor Intelligent Human-Robot Interaction Proceedings of the 7th International Conference on Automatic Face and Gesture Recognition (FGR06) ISBN # 0-7695-2503-2/06 [6]. Md. Al-Amin Bhuiyan, On Gesture Recognition for Human-Robot Symbiosis, The 15th IEEE International Symposium on Robot and Human Interactive Communication (RO-MAN06), Hatfield, UK, September 6-8, 2006, pp.541-545

SHREE DEVI INSTITUE OF TECHNOLOGY

42

You might also like