You are on page 1of 66

CHAPTER 1 INTRODUCTION

Human gestures have long been an important way of communication, adding emphasis to voice messages or even being a complete message by itself. Such human gestures could be used to improve human machine interface. These may be used to control a wide variety of devices remotely. Vision-based framework can be developed to allow the users to interact with computers through human gestures. This study focuses in understanding such human gesture recognition, typically hand gesture. Gesture recognition is an important area for novel human computer interaction (HCI) systems and a lot of research has been focused on it. These systems differ in basic approaches depending on the area in which it is used. Basically, the field of gestures can be separated into dynamic gestures (e.g. writing letters or numbers) and static postures (e.g. sign language). The goal of gesture analysis and interpretation is to push the advanced human-machine communication in order to bring the performance of human-machine interaction closer to human-human interaction. There are Smart Assisted Living (SAIL) System [4], [5], which consists of a body sensor network (BSN), a companion robot, a Smartphone (or PC), and a remote health provider. The inertial sensors on the human subject collect three-dimensional angular velocity and three-dimensional acceleration of different body parts, such as the foot, hand, and chest. The data are transferred and stored on a mobile device such as a Smartphone/PDA carried by the human
1

subject. The PDA sends the data to a PC through Wi-Fi. We currently process the data on the PC to recognize gestures that the human subject made and send corresponding commands to control the robot . With the development of ubiquitous computing, current user interaction approaches with keyboard, mouse and pen are not sufficient. Due to the limitation of these devices the usable command set is also limited. Direct use of hands can be used as an input device for providing natural interaction.

CHAPTER 2 LITERATURE SURVEY


Data Gathering for Gesture Recognition Systems Based on Single Color-, Stereo Color- and Thermal Cameras - International Journal of Signal Processing, Image Processing and Pattern Recognition Vol. 3, No. 1, March, 2010 In this paper, we present our results of automatic gesture recognition systems using different types of cameras in order to compare them in reference to their performances in segmentation. The acquired image segments provide the data for further analysis. The images of a single camera system are mostly used as input data in the research area of gesture recognition. In comparison to that, the analysis results of a stereo color camera and a thermal camera system are used to determine the advantages and disadvantages of these camera systems. On this basis, a real-time gesture recognition system is proposed to classify alphabets (AZ) and numbers (0-9) with an average recognition rate of 98% using Hidden Markov Models (HMM). Activity Recognition from On-Body Sensors: Accuracy-Power Trade-Off by Dynamic Sensor Selection Switzerland Activity recognition from an on-body sensor network enables contextaware applications in wearable computing. A guaranteed classification accuracy is desirable while optimizing power consumption to ensure the systems wearability. In this paper, we investigate the benefits of dynamic sensor selection in order to use efficiently available energy while achieving a desired activity recognition
3

Wearable Computing Lab., ETH Zurich,

accuracy. For this purpose we introduce and characterize an activity recognition method with an underlying run-time sensor selection scheme. The system relies on a meta-classifier that fuses the information of classifiers operating on individual sensors. Sensors are selected according to their contribution to classification accuracy as assessed during system training. We test this system by recognizing manipulative activities of assembly-line workers in a car production environment. Results show that the systems lifetime can be significantly extended while keeping high recognition accuracies. We discuss how this approach can be implemented in a dynamic sensor network by using the context-recognition framework Titan that we are developing for dynamic and heterogeneous sensor networks. Hand Gesture Recognition: A Comparative Study - Proceedings of the International MultiConference of Engineers and Computer Scientists 2008 Vol I IMECS 2008, 19-21 March, 2008, Hong Kong. This paper presents four very simple but efficient methods to implement hand gesture recognition namely Subtraction, Gradient, Principal Components Analysis and Rotation Invariant. We first created an Image Database consisting of four different hand gesture images. Before populating the database for an images of various gesture categories in Hand Gesture Recognition system, each image was first processed i.e., the images were converted to 8-bit grayscale images and filtering was performed to minimize any noise present in the images. The method mentioned above were applied on the input test images captured form the sensor device of the system to find the suitable match form the data base. The methods used were successful to retrieve the correct matches. The results based on speed and accuracy was analyzed.
4

Hand Gesture Recognition for Human-Computer Interaction - Journal of Computer Science 6 (9): 1002-1007, 2010 ISSN 1549-3636 2010 Science Publications. With the development of ubiquitous computing, current user interaction approaches with keyboard, mouse and pen are not sufficient. Due to the limitation of these devices the useable command set is also limited. Direct use of hands can be used as an input device for providing natural interaction. Approach: In this study, Gaussian Mixture Model (GMM) was used to extract hand from the video sequence. Extreme points were extracted from the segmented hand using star skeletonization and recognition was performed by distance signature. Results: The proposed method was tested on the dataset captured in the closed environment with the assumption that the user should be in the Field Of View (FOV). This study was performed for 5 different datasets in varying lighting conditions. Conclusion: This study specifically proposed a real time vision system for hand gesture based computer interaction to control an event like navigation of slides in Power Point Presentation. Online Hand Gesture Recognition Using Neural Network Based

Segmentation - The 2009 IEEE/RSJ International Conference on Intelligent Robots and Systems October 11-15, 2009 St. Louis, USA. In this paper, we propose an online hand gesture recognition algorithm for a robot assisted living system. A neural network-based gesture spotting method is combined with the hierarchical hidden Markov model (HHMM) to recognize hand
5

gestures. In the segmentation module, the neural network is used to determine whether the HHMM-based recognition module should be applied. In the recognition module, Bayesian filtering is applied to update the results considering the context constraints. We implemented the algorithm using an inertial sensor worn on a finger of the human subject. The obtained results prove the accuracy and effectiveness of our algorithm. A Method for Extracting Temporal Parameters Based on Hidden Markov Models in Body Sensor Networks With Inertial Sensors - IEEE TRANSACTIONS ON INFORMATION TECHNOLOGY IN BIOMEDICINE, VOL. 13, NO. 6, NOVEMBER 2009 1019. Human movement models often divide movements into parts. In walking, the stride can be segmented into four different parts, and in golf and other sports, the swing is divided into sections based on the primary direction of motion. These parts are often divided based on key events, also called temporal parameters. When analyzing a movement, it is important to correctly locate these key events, and so automated techniques are needed. There exist many methods for dividing specific actions using data from specific sensors, but for new sensors or sensing positions, new techniques must be developed. We introduce a generic method for temporal parameter extraction called the hidden Markov event model based on hidden Markov models. Our method constrains the state structure to facilitate precise location of key events. This method can be quickly adapted to new movements and new sensors/ sensor placements. Furthermore, it generalizes well to subjects not used for training. A multi objective optimization technique using genetic algorithms is applied to decrease error and increase cross-subject generalizability. Further, collaborative techniques are explored. We validate this
6

method on a walking dataset by using inertial sensors placed on various locations on a human body. Our technique is designed to be computationally complex for training, but computationally simple at runtime to allow deployment on resourceconstrained sensor nodes. Development of a Human Airbag System for Fall Protection Using MEMS Motion Sensing Technology This paper describes the development of a human airbag system which is designed to reduce the impact force from falls. A Micro Inertial Measurement Unit (IMU), based on MEMS accelerometers and gyro sensors is developed as the motion sensing part of the system. A recognition algorithm is used for realtime fall determination. With the algorithm, a microcontroller integrated with the IMU can discriminate falling-down motion from normal human motions and trigger an airbag system when a fall occurs. Our airbag system is designed to have fast response with moderate input pressure, i.e., the experimental response time is less than 0.3 second under 0.4MPa. In addition, we present our progress on using Support Vector Machine (SVM) training together with the IMU to better distinguish falling and normal motions. Experimental results show that selected eigenvector sets generated from 200 experimental data sets can be accurately separated into falling and other motions.

CHAPTER 3 PROJECT DESCRIPTION 3.1. INTRODUCTION OF THE PROJECT


This demonstrates that accelerometers can be used to effectively translate finger and hand gestures into computer interpreted signals. To this end we developed the Acceleration Sensing Glove (ASG) that helps deaf and dumb to communicate with others through voice commands.

3.2. PRESENT SYSTEM


Vision-based framework can be developed to allow the users to interact with computers through human gestures. This study focuses in understanding such human gesture recognition, typically hand gesture. Hand gesture recognition generally involves various stages like video acquisition, background subtraction, feature extraction and gesture recognition. The rationale in background subtraction is detecting the moving objects from the difference between the current frame and a reference frame, often called the background image or background model. Most researchers use single color cameras for data acquisition. A big advantage of these cameras is that they are fast and simple to control, so it is possible to realize a suitable gesture recognition system also in real-time applications. Additionally, the color map of the image can be used for skin color recognition in order to improve the segmentation results. However the robustness of such a system can suffer from a complicated real background. And

the separation of region of interest will still be a challenging problem if only one camera system is used. Vision-based analysis of hand gestures is probably the most natural way of constructing a human-computer gesture interface. Yet it is also the most difficult one to implement in a satisfactory manner because of the limitations in machine vision today. The vision-based analysis is performed by using one or more cameras. The visual information about a person in some visual environment is acquired and the necessary gesture is extracted. However, there are some difficult problems: the segmentation of the moving hand from a sometimes complex environment, the analysis of hand motions, the tracking of hand positions relative to the environment, and finally the recognition of hand postures. To facilitate these operations, some use markers, marked gloves, or restrictive setups: uniform background, very limited gesture vocabulary, or just a simple posture analysis. Many solutions for gesture spotting or data segmentation have been developed over the years. There are two main methods: rule-based and HMM-based. Rulebased methods are widely used in recognition through computer vision. Some researchers use a special position to mark the start or end point of a gesture, while others have rules to define the behavior before or after a gesture such as staying still for several seconds.

3.3. PROPOSED SYSTEM


We developed the Acceleration Sensing Glove (ASG) that communicated using a wireless link to a desktop computer. The glove uses three-axis accelerometers on the back of the hand. Using gravity-induced acceleration offsets, a program was developed to translate gestures to commands. The accelerometer outputs an analog value corresponding to the acceleration in the plane of acceleration through the corresponding channel. We developed a
9

procedure to spot and classify input gestures from continuous acceleration data acquired by the hand held system. The recognition procedure is based on hidden Markov models (HMM) and was fully implemented on a system on a chip. The algorithm achieved an average recall of 79% at 93% precision in recognizing the relevant gestures. We present 3 axis accelerometer for measuring low speed changes in inclination in the presence of gravity, detecting the change in the gravity vector, and determining whether the direction is clockwise or counter clockwise. Here in our project we develop the system that is wearable as well as inbuilt processing capability. Our project involves a high accurate and low noise accelerometer and on-chip analog signal processing capability enables less power and high performance. Our method uses a wearable device, that can be used any where. Our system is a standalone system and not affected by illumination variations. The system here uses a MEMS accelerometer Based Gesture Recognition. This is a Simple and economical System compared to the existing system because here is no need for camera and computer analysis. This system is more Portable since it simply can be placed over the hand, as Nothing external is required for analysis .this system is Highly accurate and Faster system since the sensor used are sophisticated and highly accurate. This system is Easy to handle and less skill is required to operate. 3.4 PROJECT TASK The hardware consists of a wrist controller and six accelerometers, five on the fingertips and one on the back of the hand . Each accelerometer (1.3x1.4cm), an Analog Devices ADXL355, contains 3axes of measurement and had a range of
10

with +/- 3g . Wires send signals from the accelerometers to the forearm controller. An PIC microcontroller on the forearm controller (4.4x6.6cm) converts the analog signal from the accelerometer to a 10 bit digital signal. In this work a MEMS 3axes accelerometer with a sampling rate of 20Hz was used to record acceleration of the wearers arm. For static gesture recognition the accelerometer data is calibrated and filtered. The accelerometers can measure the magnitude and direction of gravity in addition to movement induced acceleration. In order to calibrate the accelerometers, we rotate the devices sensitive axis with respect to gravity and use the resultant signal as an absolute measurement. To reduce high frequency noise from the sensors, we took a running average. The recognition procedure using the recorded acceleration data. Firstly, an informative feature was extracted from the recorded 3D-acceleration data. Figure 5 shows the acceleration of the z-axis and the corresponding derivative exemplary. The dominant acceleration axis was determined as axis with the largest amplitude variation within the last five sampling points. We used this derivative as feature to characterize every sampling point. Subsequently, a sliding window of fixed size (30 samples) was shifted over the feature data with a step size of 5 samples. In a second stage, the Viterbi algorithm was applied to detect begin and end samples of potential gestures. For this purpose, each gesture type was modeled by an individual left-right discrete HMM. Six states were used for scroll gestures, nine states for the Select gesture. A code-book of 13 symbols was used to represent the derivative amplitude in strong/low increase/decrease for all acceleration axes and calm, for small amplitudes. An initial analysis showed that a period without movement preceded and followed each gesture. This period occurred naturally,
11

when the user read the next question from the screen or confirmed the completion of the current one. Thus, the first and last states of all models were designed to represent small acceleration variations.

3.5. FLOW DIAGRAM

LCD MEMS-Accelerometer (PIC 16F877A) MICRO CONTROLLER VOICE CHIP (APR 9600) AMPLIFIER

(ADXL335)

FILTER

SPEAKER

Figure 3.5.1 Flow Diagram of mems hand gesture recognition

12

3.6. CIRCUIT DIAGRAM

Figure 3.6.1.: Circuit Diagram of hand gesture regonition

13

CHAPTER 4
HARDWARE SYSTEM SPECIFICATION: 4.1.Accelerometer - ADXL335: Small, Low Power, 3-Axis 3 g i MEMS Accelerometer ADXL335 Features: 1. 3-axis sensing 2. Small, low-profile package 3. 4 mm 4 mm 1.45 mm LFCSP 4. Low power 5. 180 A at VS = 1.8 V (typical) 6. Single-supply operation 7. 1.8 V to 3.6 V 8. 10,000 g shock survival 9. Excellent temperature stability 10.BW adjustment with a single capacitor per axis 4.1.1.Application :
1. Cost sensitive, low power, motion- and tilt-sensing applications

2. Mobile devices 3. Gaming systems 4. Disk drive protection 5. Image stabilization 6. Sports and health devices

14

4.1.2.Pin Configuration And Function Descriptions

Figure 4.1.2.a: Pin Diagram

4.1.3.Pin Description:
Pin.no 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 EP Mnemonics NC ST COM NC COM COM COM ZOUT NC YOUT NC XOUT NC VS VS NC Exposed Pad Description No Connect. Self-Test. Common. No Connect. Common. Common. Common. Z Channel Output. No Connect. Y Channel Output. No Connect. X Channel Output. No Connect. Supply Voltage (1.8 V to 3.6 V). Supply Voltage (1.8 V to 3.6 V). No Connect. Not internally connected. Solder for mechanical integrity. Table 4..4.a: Pin Description 15

4.1.4.General Description The ADXL335 is a small, thin, low power, complete 3-axis accelerometer with signal conditioned voltage outputs, all on a single monolithic IC. The product measures acceleration with a minimum full-scale range of 3 g. It can measure the static acceleration of gravity in tilt-sensing applications, as well as dynamic acceleration resulting from motion, shock, or vibration. The sensor is a polysilicon surface micro machined structure built on top of a silicon wafer. Polysilicon springs suspend the structure over the surface of the wafer and provide a resistance against acceleration forces. Deflection of the structure is measured using a differential capacitor that consists of independent fixed plates and plates attached to the moving mass. The fixed plates are driven by 180 out-of-phase square waves. Acceleration deflects the moving mass and unbalances the differential capacitor resulting in a sensor output whose amplitude is proportional to acceleration. Phase-sensitive demodulation techniques are then used to determine the magnitude and direction of the acceleration. The demodulator output is amplified and brought off-chip through a 32 k resistor. The user then sets the signal band-width of the device by adding a capacitor. This filtering improves measurement resolution and helps prevent aliasing.

16

4.1.5.Functional Block Diagram

Figure 4.1.5.a: Funtional Block diagram

Specification:
Parameter SENSOR INPUT Measurement Range Nonlinearity Package Alignment Error Interaxis Alignment Error Cross-Axis Sensitivity ZERO g BIAS LEVEL Condition Each axis % of full scale min 3 typ 3.6 0.3 1 0.1 1 max unit g % Degrees Degrees %

(RATIOMETRIC) 0 g Voltage at XOUT, YOUT 0 g Voltage at ZOUT 0 g Offset vs. Temperature FREQUENCY RESPONSE Bandwidth XOUT, YOUT 5 No external 17 1600 Hz VS = 3 V VS = 3 V 1.35 1.2 1.5 1.5 1 1.65 1.8 V V mg/C

filter Bandwidth ZOUT5 No filter 32 RFILT Tolerance 15% 5.5 Sensor Resonant Frequency NOISE PERFORMANCE Noise Density XOUT, YOUT Noise Density ZOUT 150 300 g/Hz rms g/Hz rms SELF-TEST 6 Logic Input Low Logic Input High ST Actuation Current Output Change at XOUT Self-Test 0 to 150 Self-Test 1 Output Change at YOUT Self-Test 0 to +150 Self-Test 1 Output Change at ZOUT Self-Test 0 to +150 Self-Test 1 OUTPUT AMPLIFIER Output Swing Low No load 18 0.1 V +550 +1000 mV +325 +600 mV +0.6 +2.4 +60 325 600 V V A mV kHz k external 550 Hz

Output Swing High

No load

2.8

POWER SUPPLY Operating Voltage Range Supply Current Turn-On Time TEMPERATURE Operating Temperature Range 40 +85 C VS = 3 V No filter external 1.8 350 1 3.6 V A ms

Table 4.1.5.a: Specification of ADXL 335

4.1.6.Absolute Maximum Ratings


Parameter Acceleration (Any Axis, Unpowered) Acceleration (Any Axis, Powered) VS All Other Pins Output Short-Circuit Duration (Any Pin to Common) Temperature Range (Powered) Temperature Range (Storage) 55C to +125C 65C to +150C Parameter 10,000 g 10,000 g 0.3 V to +3.6 V (COM 0.3 V) to (VS + 0.3 V) Indefinite

Table 4.1.6.a: Absolute maximum Ratings

4.1.7.Theory Of Operation

The ADXL335 is a complete 3-axis acceleration measurement system. The


19

ADXL335 has a measurement range of 3 g mini-mum. It contains a polysilicon surface-micro machined sensor and signal conditioning circuitry to implement an open-loop acceleration measurement architecture. The output signals are analog voltages that are proportional to acceleration. The Accelerometer can measure the static acceleration of gravity in tilt-sensing applications as well as dynamic acceleration resulting from motion, shock, or vibration. The sensor is a polysilicon surface-micro machined structure built on top of a silicon wafer. Polysilicon springs suspend the structure over the surface of the wafer and provide a resistance against acceleration forces. Deflection of the structure is measured using a differential capacitor that consists of independent fixed plates and plates attached to the moving mass. The fixed plates are driven by 180 out-of-phase square waves. Acceleration deflects the moving mass and unbalances the differential capacitor resulting in a sensor output whose amplitude is proportional to acceleration. Phase-sensitive demodulation techniques are then used to determine the magnitude and direction of the acceleration. The demodulator output is amplified and brought off-chip through a 32 k resistor. The user then sets the signal bandwidth of the device by adding a capacitor. This filtering improves measurement resolution and helps prevent aliasing. Mechanical Sensor The ADXL335 uses a single structure for sensing the X, Y, and Z axes. As a result, the three axes sense directions are highly orthogonal with little cross axis sensitivity. Mechanical mis-alignment of the sensor die to the package is the chief source of cross axis sensitivity. Mechanical misalignment can, of course, be calibrated out at the system level. Performance :
20

Rather than using additional temperature compensation circuitry, innovative design techniques ensure that high performance is built in to the ADXL335. As a result, there is no quantization error or non -monotonic behavior, and temperature hysteresis is very low (typically less than 3 mg over the 25C to +70C temperature range). 4.1.8.Applications Information Power Supply Decoupling For most applications, a single 0.1 F capacitor, CDC, placed close to the ADXL335 supply pins adequately decouples the accelerometer from noise on the power supply. However, in applications where noise is present at the 50 kHz internal clock frequency (or any harmonic thereof), additional care in power supply bypassing is required because this noise can cause errors in acceleration measurement. If additional decoupling is needed, a 100 (or smaller) resistor or ferrite bead can be inserted in the supply line. Additionally, a larger bulk bypass capacitor (1 F or greater) can be added in parallel to CDC. Ensure that the connection from the ADXL335 ground to the power supply ground is low impedance because noise transmitted through ground has a similar effect to noise transmitted through VS. Setting The Bandwidth Using Cx, Cy, And Cz The ADXL335 has provisions for band limiting the XOUT, YOUT, and ZOUT pins. Capacitors must be added at these pins to implement low-pass filtering for anti-aliasing and noise reduction. The equation for the 3 dB bandwidth is F3 dB = 1/(2(32 k) C(X, Y, Z)) F3 dB = 5 F/C(X, Y, Z) The tolerance of the internal resistor (RFILT) typically varies as much as 15% of
21

its nominal value (32 k), and the bandwidth varies accordingly. A minimum capacitance of 0.0047 F for CX, CY, and CZ is recommended in all cases. Bandwidth 1 10 50 100 200 500 Capacitor (Micro farad) 4.7 0.47 0.10 0.05 0.027 0.01

Table 4.1.8.a : Filter capacitance selection Cx,Cy,Cz Self Test The ST pin controls the self-test feature. When this pin is set to VS, an electrostatic force is exerted on the accelerometer beam. The resulting movement of the beam allows the user to test if the accelerometer is functional. The typical change in output is 1.08 g (corresponding to 325 mV) in the X-axis, +1.08 g (or +325 mV) on the Y-axis, and +1.83 g (or +550 mV) on the Z-axis. This ST pin can be left open-circuit or connected to common (COM) in normal use. Never expose the ST pin to voltages greater than VS + 0.3 V. If this cannot be guaranteed due to the system design (for instance, if there are multiple supply voltages), then a low VF clamping diode between ST and VS is recommended.

Design Trade-Offs For Selecting Filter Characteristics: The Noise/Bw TradeOff


22

The

selected

accelerometer

bandwidth

ultimately

determines

the

measurement resolution (smallest detectable acceleration). Filtering can be used to lower the noise floor to improve the resolution of the accelerometer. Resolution is dependent on the analog filter bandwidth at XOUT, YOUT, and ZOUT. The output of the ADXL335 has a typical bandwidth of greater than 500 Hz. The user must filter the signal at this point to limit aliasing errors. The analog bandwidth must be no more than half the analog-to-digital sampling frequency to minimize aliasing. The analog bandwidth can be further decreased to reduce noise and improve resolution. The ADXL335 noise has the characteristics of white Gaussian noise, which contributes equally at all frequencies and is described in terms of g/Hz (the noise is proportional to the square root of the accelerometer bandwidth). The user should limit bandwidth to the lowest frequency needed by the application to maximize the resolution and dynamic range of the accelerometer. ADXL335 is determined by rms Noise = Noise Density ( BW 1.6 ) It is often useful to know the peak value of the noise. Peak-to- peak noise can only be estimated by statistical methods. Table 5 is useful for estimating the probabilities of exceeding various peak values, given the rms value.

Peak-to-Peak Value 2 rms 4 rms 6 rms 8 rms

% of Time That Noise Exceeds Nominal Peak-to-Peak Value 32 4.6 0.27 0.006 23

Table 4.1.8.b: Estimation of Peak-to-Peak Noise

Use With Operating Voltages Other Than 3 V The ADXL335 is tested and specified at VS = 3 V; however, it can be powered with VS as low as 1.8 V or as high as 3.6 V. Note that some performance parameters change as the supply voltage is varied. The DXL335 output is ratio metric , therefore, the output sensitivity (or scale factor) varies proportionally to the supply voltage. At VS = 3.6 V, the output sensitivity is typically 360 mV/g. At VS = 2 V, the output sensitivity is typically 195 mV/g. The zero g bias output is also ratio metric, thus the zero g output is nominally equal to VS/2 at all supply voltages. The output noise is not ratio metric but is absolute in volts; therefore, the noise density decreases as the supply voltage increases. This is because the scale factor (mV/g) increases while the noise voltage remains constant. At VS = 3.6 V, the X-axis and Y-axis noise density is typically 120 g/Hz, whereas at VS = 2 V, the X-axis and Y-axis noise density is typically 270 g/Hz. Self-test response in g is roughly proportional to the square of the supply voltage. However, when ratiometricity of sensitivity is factored in with supply voltage, the self-test response in volts is roughly proportional to the cube of the supply voltage. For example, at VS = 3.6 V, the self-test response for the ADXL335 is approximately 560 mV for the X-axis, +560 mV for the Y-axis, and +950 mV for the Z-axis.At VS = 2 V, the self-test response is approximately 96 mV for the X-axis, +96 mV for the Y-axis, and 163 mV for the Z-axis. The supply current decreases as the supply voltage decreases. Typical current consumption at VS = 3.6 V is 375 A, and typical current consumption at VS = 2
24

V is 200 A. Axes Of Acceleration Sensitivity

Figure 4.1.8.a: Axis of acceleration sensitivity, corresponding output voltage

Figure 4.1.8.b: output response verses orientation to gravity

4.2. Voice chip APR9600:


Single-Chip Voice Recording & Playback Device 60-Second Duration 4.2.1.Features 1. Single-chip, high-quality voice recording & playback solution a. No external ICs required
25

b. Minimum external components 2. Non-volatile Flash memory technology a. No battery backup required 3. User-Selectable messaging options a. Random access of multiple fixed-duration messages b. Sequential access of multiple variable-duration messages 4. User-friendly, easy-to-use operation a. Programming & development systems not required b. Level-activated recording & edge-activated play back switches 5. Low power consumption a. Operating current: 25 mA typical b. Standby current: 1 uA typical c. Automatic power-down 6. Chip Enable pin for simple message expansion 4.2.2.General Description: The APR9600 device offers true single-chip voice recording, nonvolatile storage, and playback capability for 40 to 60 seconds. The device supports both random and sequential access of multiple messages. Sample rates are userselectable, allowing designers to customize their design for unique quality and storage time needs. Integrated output amplifier, microphone amplifier, and AGC circuits greatly simplify system design. the device is ideal for use in portable voice recorders, toys, and many other consumer and industrial applications. APLUS integrated achieves these high levels of storage capability by using its proprietary analog/multilevel storage technology implemented in an advanced Flash non-volatile memory process, where each memory cell can store 256 voltage levels. This technology enables the APR9600 device to reproduce voice

26

signals in their natural form. It eliminates the need for encoding and compression, which often introduce distortion. 4.2.3.Functional Description The APR9600 block diagram is included in order to give understanding of the APR9600 internal architecture. At the left hand side of the diagram are the analog inputs. A differential microphone amplifier, including integrated AGC, is included on-chip for applications requiring its use. The amplified microphone signal is fed into the device by connecting the Ana_Out pin to the Ana_In pin levels through an external DC blocking capacitor. Recording can be fed directly into the Ana_In pin through a DC blocking capacitor, however, the connection between Ana_In and Ana_Out is still required for playback. The next block encountered by the input signal is the internal anti-aliasing filter. The filter automatically adjusts its response according to the sampling frequency selected so Shannons Sampling Theorem is satisfied. After anti-aliasing filtering is accomplished the signal is ready to be clocked into the memory array. This storage is accomplished through a combination of the Sample and Hold circuit and the Analog Write/Read circuit. These circuits are clocked by either the Internal Oscillator or an external clock source. When playback is desired the previously stored recording is retrieved from memory, low pass filtered, and amplified as shown on the right hand side of the diagram. The signal can be heard by connecting a speaker to the SP+ and SP- pins. Chip-wide management is accomplished through the device control block shown in the upper right hand corner. Message management is controlled through the message control block represented in the lower center of the block diagram. 4.2.4.Block Diagram:

27

Figure 4.2.4.a: Block Diagram of the APR 9600

4.2.5.Pin out Diagram:

Figure 4.2.5.a : Pin diagram of APR 9600

4.2.6.Pin Descrpition
Pin Name Pin No . Functionality in Random Access Mode Functionality in Tape Mode Normal Option Auto Rewind

28

/M1_Messsage 1

Message 1: This pin forces a jump to Message: A low edge message 1 for either recording or on this pin plays or playback. records the next message. Message 2: This pin forces a jump to Next Message: This message 2 for either recording or active low input pin playback. force a skip to next message for either playback or recording Message 3: This pin forces a jump to This pin should be left message 3 for either recording or unconnected when the playback. device is used in this mode.

/M2_Next

Option Message: A low edge on this pin plays or records the current message. This pin should be left unconnected when the device is used in this mode. This pin should be left unconnected when the device is used in this mode.

/M3

/M4

Message 4: This pin forces a jump to This pin should be left This pin should be message 4 for either recording or unconnected when the left unconnected playback device is used in this when the device is mode. used in this mode. Message 5: This pin forces a jump to This pin should be left message 5 for either recording or unconnected when the playback. device is used in this mode. Message 6: This pin forces a jump to This pin should be left message 6 for either recording or unconnected playback. when the device is used in this mode. Oscillator Resistor: this input allows Same as Mode 1. an external resistor to be connected to the tank circuit of the internal oscillator. Refer to table X for a list of resistors and their resultant sampling rates. This pin should be left unconnected when the device is used in this mode. This pin should be left unconnected when the device is used in this mode. Same as Mode 1.

/M5

/M6

OscR

Pin Name

Pin No . 8

Functionality in Random Access Mode

Functionality in Tape Mode Normal Option Auto Rewind Option During playback a low level on this pin indicates that all recorded mes-

/M7_END

Message 7: This pin forces a jump to During playback a low message 7 for either recording or level on this pin playback. indicates that all recorded messages have

29

been played. During recording a low level on this pin indicates that the end of the memory array was reached. /M8_Option 9 Message 8: This pin forces a jump to Option: This pin in message 8 for either recording or conjunction with playback. MSEL1 and MSEL2 sets record and playback operating mode. Consult table 1 for decoding information. This pin indicates that the Same as Mode 1. device is currently busy performing internal functions and can neither record nor playback at the current time. If this pin is pulled high Beep is Same as Mode 1. enabled. If this pin is pulled low beep is disabled Digital GND Connection: Connect to Same as Mode 1. system ground. Analog GND Connection: Connect Same as Mode 1. system ground. Positive Output for Speaker Same as Mode 1. Connection: Should be connected to the positive terminal of the output speaker. Total output power is.1 W into 16 ohms. Do not use speaker loads lower than 8 ohms or device damage may result. Negative Output for Speaker Same as Mode 1. Connection: Should be connected to the negative terminal of the output speaker.

/Busy

10

sages have been played. During recording a low level on this pin indicates that the end of the memory array was reached. MSEL1 and MSEL2 sets record and playback operating mode. Consult table 1 for decoding information. Same as Mode 1.

BE VSSD VSSA SP+

11 12 13 14

Same as Mode 1. Same as Mode 1. Same as Mode 1. Same as Mode 1.

SP-

15

Same as Mode 1.

Pin Name

Pin No . 16

Functionality in Random Access Mode

Functionality in Tape Mode Normal Option Auto Rewind Option Same as Mode 1.

VCCA

Analog Positive Power Supply: Same as Mode 1. This connection supplies power for on-chip analog circuitry. Should be connected to the positive supply rail as outlined in the reference

30

MicIn

17 18

MicRef AGC 19

Ana_In Ana_Out /Strobe

20 21 22

/CE

23

MSEL1

24

schematics. Microphone Input: Should be connected to the microphone input as outlined in the reference schematics. Microphone GND Reference: Should be connected to the microphone input as outlined in the reference schematics. Automatic Gain Control Attack Time: The time constant of the RC network connected to this input determines the AGC attack time. The attack time is defined as the delay present before the AGC circuit begins to adjust gain. The values shown in the reference schematics have been optimized for voice applications. Analog In: This pin must be connected to Ana_Out through a 0.1F Capacitor. Analog Out: This pin must be connected to Ana_In through a 0.1F Capacitor. Strobe: This pin indicates programming of each individual recording segment. The falling edge represents the beginning of the sector. The rising edge indicates that the sector is half full. Chip Select: A low level on this pin enables the device for operation. Toggling this pin also resets several message management features. Mode Select1: This pin in conjunction with MSEL2 and /M8_Option sets record and Playback operating mode. Consult table 1 for decoding information. Functionality in Random Access Mode

Same as Mode 1. Same as Mode 1.

Same as Mode 1. Same as Mode 1.

Same as Mode 1.

Same as Mode 1.

Same as Mode 1. Same as Mode 1. Same as Mode 1.

Same as Mode 1. Same as Mode 1. Same as Mode 1.

Same as Mode 1.

Same as Mode 1.

Same as Mode 1.

Same as Mode 1.

Pin Name

Pin No . 25

Functionality in Tape Mode Normal Option Auto Rewind Option Same as Mode 1.

MSEL2

ExtClk

26

Mode Select2: This pin in conjunction Same as Mode 1. with MSEL1 and /M8_Option sets record and playback operating mode. Consult table 1 for decoding information. External Clock: This clock can Same as Mode 1.

Same as Mode 1.

31

/RE VCCD

27 28

be used instead of the internal clock for greater programming control and or accuracy. When using the internal clock this pin should be tied to system GND. Record Enable: this pin controls Same as Mode 1. whether the device is in write or read mode. Logic level high is read. Digital Positive Power Supply: Same as Mode 1. This connection supplies power for on-chip digital circuitry. Should be connected to the positive supply rail as outlined in the reference

Same as Mode 1. Same as Mode 1.

Table 4.2.6.a: Pin Description of APR 9600

4.2.7.Message Management Message Management General Description Playback and record operations are managed by on chip circuitry. There are several available messaging modes depending upon desired operation. These message modes determine message management style, message length, and External parts count. Therefore, the designer must select the appropriate operating mode before beginning the design. Operating modes do not affect voice quality; for information on factors affecting quality refer to the Sampling Rate & Voice Quality section. The device supports three message management modes (defined by the MSEL1, MSEL2 and /M8_Option pins shown in Figures 1 and 2): Random access mode with 2, 4, or 8 fixed-duration messages Tape mode, with multiple variable-duration messages, provides two options: - Auto rewind - Normal Modes cannot be mixed. Switching of modes after the device has recorded an initial message is not recommended. If modes are switched after an initial recording has been made some unpredictable message fragments from the previous mode may remain present, and be audible on playback, in the new mode.
32

These fragments will disappear after a record operation in the newly selected mode. Table 1 defines the decoding necessary to choose the desired mode. An important feature of the APR9600 message management capabilities is the ability to audibly prompt the user to changes in the devices status through the use of beeps superimposed on the devices output. This feature is enabled by asserting a logic high level on the BE pin.

Table 4.1.2.7.a: Modes of APR 9600

4.2.7.1.RANDOM ACCESS MODE Random access mode supports 2, 4, or 8 messages segments of fixed duration. As suggested recording or playback can be made randomly in any of the selected messages. The length of each message segment is the total recording length available (as defined by the selected sampling rate) divided by the total number of segments enabled . Random access mode provides easy indexing to message segments. Functional Description of Recording in Random Access Mode On power up, the device is ready to record or play back, in any of the enabled message segments. To record, /CE must be set low to enable the device and /RE must be set low to enable recording. You initiate recording by applying a low level on the message trigger pin that represents the message segment you intend to use. The message trigger pins are labeled /M1_Message - /M8_Option
33

on pins 1-9 (excluding pin 7) for message segments 1-8 respectively. Assume in the other modes. In random access mode these pins should be considered purely message trigger pins with the same functionality as /M3, /M4, /M5, and /M6. For a more thorough explanation of the functionality of device pins in different modes please refer to the pin description table that appears later in this document. When actual recording begins the device responds with a single beep (if the BE pin is high to enable the beep tone) at the speaker outputs to indicate that it has started recording. Recording continues as long as the message pin stays low. The rising edge of the same message trigger pin during record stops the recording operation (indicated with a single beep). If the message trigger pin is held low beyond the end of the maximum allocated duration, recording stops automatically (indicated with two beeps), regardless of the state of the message trigger pin. The chip then enters low-power mode until the message trigger pin returns high. After the message trigger pin returns to high, the chip enters standby mode. Any subsequent high to low transition on the same message trigger pin will initiate recording from the beginning of the same message segment. The entire previous message is then overwritten by the new message, regardless of the duration of the new message. Transitions on any other message trigger pin or the /RE pin during the record operation are ignored until after the device enters standby mode. Functional Description of Playback in Random Access Mode On power up, the device is ready to record or playback, in any of the enabled message segments. To playback, /CE must be set low to enable the device and /RE must be set high to disable recording & enable playback. You initiate play back by applying a high to low edge on the message trigger pin that representing the message segment you intend to playback. Playback will continue
34

until the end of the message is reached. If a high to low edge occurs on the same message trigger pin during playback, playback of the current message stops immediately. If a different message trigger pin pulses during playback, playback of the current message stops immediately (indicated by one beep) and playback of the new message segment begins. A delay equal to 8,400 cycles of the sample clock will be encountered before the device starts playing the new message. If a message trigger pin is held low, the selected message is played back repeatedly as long as the trigger pin stays low. A period of silence, of a duration equal to 8,400 cycles of the sampling clock, will be inserted during looping as an indicator to the user of the transition between the end and the beginning of the message. 4.2.7.2.TAPE MODE Tape mode manages messages sequentially much like traditional cassette tape recorders. Within tape mode two options exist, auto rewind and normal. Auto rewind mode configures the device to automatically rewind to the beginning of the message immediately following recording or playback of the message. In tape mode, using either option, messages must be recorded or played back sequentially, much like a traditional cassette tape recorder. Function Description Recording in Tape Mode using the Normal Option On power up, the device is ready to record or play back, starting at the first address in the memory array. To record, /CE must be set low to enable the device and /RE must be set low to enable recording. A falling edge of the /M1_Message pin initiates voice recording (indicated by one beep). A subsequent rising edge of the /M1_Message pin during recording stops the recording (also indicated by one beep). If the /M1_Message pin is held low beyond the end of the available memory, recording will stop automatically (indicated by two beeps). The device will then assert a logic low on the /M7_END pin for a duration equal to 1600
35

cycles of the sample clock, regardless of the state of the /M1_Message pin The device returns to standby mode when the /M1_Message pin goes high again. After recording is finished the device will automatically rewind to the beginning of the most recently recorded message and wait for the next user input. The auto rewind function is convenient because it allows the user to immediately playback and review the message without the need to rewind. How ever, caution must be practiced because a subsequent record operation will overwrite the last recorded message unless the user remembers to pulse the /M2_Next pin in order to increment the device past the current message. A subsequent falling edge on the /M1_Message pin starts a new record operation, overwriting the previously existing message. You can preserve the previously recorded message by using the /M2_Next input to initiate recording in the next available message segment. To perform this function, the /M2_Next pin must be pulled low for at least 400 cycles of the sample clock. The auto rewind mode allows the user to record over the previous message simply by initiating a record sequence without first toggling the /M2_Next pin. To record over any other message however requires a different Sequence. You must pulse the /CE pin low once to rewind the device to the beginning of the voice memory. The /M2_Next pin must then be pulsed low for the specified number of times to move to the start of the message you wish to overwrite. Upon arriving at the desired message a record sequence can be initiated to overwrite the previously recorded material. After you overwrite the message it becomes the last available message and all previously recorded messages following this message become inaccessible. If during a record operation all the available memory is used the device will stop recording automatically,(double beep) and set the /M7_END pin low for a duration equal to 1600 cycles of the sample clock. Playback can be
36

initiated on this last message, but pulsing the /M2_Next pin will put the device into an overflow state. Once the device enters an overflow state any subsequent pulsing of /M1_Message or /M2_Next will only result in a double beep and setting of the /M7_END pin low for a duration equal to 400 cycles of the sample clock. To proceed from this state the user must rewind the device to the beginning of the memory array. This can be accomplished by toggling the /CE pin low or cycling power. All inputs, except the /CE pin, are ignored during recording. Function Description of Playback in Tape Mode using the Normal Option On power-up, the device is ready to record or play back, starting at the first address in the memory array. Before you can begin playback, the /CE input must be set to low to enable the device and /RE must be set to high to disable recording and enable playback. The first high to low going pulse of the /M1_Message pin initiates playback from the beginning of the current message; on power up the first message is the current message. When the /M1_Message pin pulses low the second time, playback of the current message stops immediately. When the /M1_Message pin pulses low a third time, playback of the current message starts again from its beginning. If you hold the /M1_Message pin low continuously the same message will play continuously in a looping fashion. A 1,530 ms period of silence is inserted during looping as an indicator to the user of the transition between the beginning and end of the message. Note that in auto rewind mode the device always rewinds to the beginning of the current message. To listen to a subsequent message the device must be fast forwarded past the current message to the next message. This function is accomplished by toggling the /M2_Next pin from high to low. The pulse must be low for least 400 cycles of the sampling clock. After the device is incremented to the desired message the user can initiate playback of the
37

message with the play-back sequence described above. A special case exists when the /M2_Next pin goes low during playback. Playback of the current message will stop, the device will beep, advance to the next message and initiate playback of the next message.(Note that if /M2_Next goes low when not in playback mode, the device will prepare to play the next message, but will not actually initiate playback). If the /CE pin goes low during playback, playback of the cur-rent message will stop, the device will beep, reset to the beginning of the first message, and wait for a subsequent playback command. When you reach the end of the memory array, any subsequent pulsing of /M1_Message or /M2_Next will only result in double beep. To proceed from this state the user must rewind the device to the beginning of the memory array. This can be accomplished by toggling the /CE pin low or cycling power. Functional Description of Recording in Tape Mode using Auto Rewind Option On power-up, the device is ready to record or play back starting at the first address in the memory array. Before you can begin recording, the /CE input must be set to low to enable the device and /RE must be set to low to enable recording. On a falling edge of the /M1_Message pin the device will beep once and initiate recording. A subsequent rising edge on the /M1_Message pin will stop recording and insert a single beep. If the /M1_Message pin is held low beyond the end of the available memory, recording tops automatically, and two beeps are inserted; regardless of the state of the /M1_Message pin. The device returns to the standby mode when the /M1_Message pin is returned high. A subsequent falling edge on the /M1_Message pin starts a new record operation in the memory array immediately following the last recorded message, thus preserving the last recorded message.
38

To record over all previous messages you must pulse the /CE pin low once to reset the device to the beginning of the first message. You can then initiate a record sequence, as described above, to record a new message. The most recently recorded message will become the last recorded message and all previously recorded messages following this message will become inaccessible. If you wish to preserve any current messages it is recommend that Auto Rewind option be used instead of Normal option. If Normal option is necessary the following sequence can be used. To preserve current messages you must fast forward past the messages you want to keep before you can record a new message. To fast forward when using the Nor mal option you must switch to play mode and listen to messages sequentially until you arrive at the beginning of the message you wish to overwrite. At this stage you should switch back to record mode and overwrite the desired message. The most recently recorded message will become the last recorded message and all previously recorded messages following this message will become inaccessible. All inputs, except /CE are ignored during recording. Functional Description of Playback in Tape Mode using Auto Rewind Option On power-up, or after a low to high transition on /RE the device is ready to record or play back starting at the first address in the memory array. Before you can begin playback of messages, the /CE input must be set to low to enable the device and /RE must be set to high to enable playback. The first high to low going pulse of the /M1_Message pin initiates playback from the beginning of the current message. When the /M1_Message pin pulses from high to low a second time, playback of the current message stops immediately. When the /M1_Message pin pulses from high to low a third time, playback of the next message starts again from the beginning. If you hold the /M1_Message pin low continuously, the current message and subsequent messages play until the one of the following
39

conditions is met: the end of the memory array is reached, the last message is reached, the /M1_message pin is released. If the last recorded message has already played, any further transitions on the /M1_Message pin will initiate a double beep for warning and the /M7_END pin will go low. To exit this state you must pulse the /CE pin low once during standby to reset the pointer to the beginning of the first message. 4.2.8.MICROPROCESSOR CONTROLLED MESSAGE MANAGEMENT The APR9600 device incorporates several features designed to help simplify microprocessor controlled message management. When controlling messages the microprocessor essentially toggles pins as described in the message management sections describe previously. The /Busy, /Strobe, and /M7_END pins are included to simplify handshaking between the microprocessor and the APR 9600 The /Busy pin when low indicates to the host processor that the device is busy and that no commands can be currently accepted. When this pin is high the device is ready to accept and execute commands from the host. The /Strobe pin pulses low each time a memory segments is used. Counting pulses on this pin enables the host processor to accurately determine how much recording time has been used, and how much recording time remains .The /M7_END pin is used as an indicator that the device has stopped its current record or playback operation. During recording a low going pulse indicates that all memory has been used. During playback a low pulse indicates that the last message has played. Microprocessor control can also be used to link several APR9600 devices together in order to increase total available recording time. In this application both the speaker and microphone signals can be connected in parallel. The micro processor will then control which device currently drives the speaker by enabling or disabling each device using the irrespective /CE pins. A continuous message can not be recorded in multiple devices however because the transition from one
40

device to the next will incur a delay that is notice-able upon playback. For this reason it is recommended that message boundaries and device boundaries always coincide. Signal Storage The APR9600 samples incoming voice signals and stores the instantaneous voltage samples in non-volatile FLASH memory cells. Each memory cell can support voltage ranges from0 to 256 levels. These 256 discrete voltage levels are the equivalent of 8-bit (28=256) binary encoded values. During playback the stored signals are retrieved from memory, smoothed to form a continuous signal, and then amplified before being fed to an external speaker. Sampling Rate & Voice Quality According to the Shannons sampling theorem, the highest possible frequency component introduced to the input of a sampling system must be equal to or less than half the sampling frequency if aliasing errors are to be eliminated. TheAPR9600 automatically filters its input, based on the selected sampling frequency, to meet this requirement. Higher sampling rates increase the bandwidth and hence the voice quality, but they also use more memory cells for the same length of recording time. Lower sampling rates use fewer memory cells and effectively increase the duration capabilities of the device, but they also reduce incoming signal bandwidth. The APR9600 accommodates sampling rates as high as 8 kHz and as low a 4 kHz. You can control the quality/duration trade off by controlling the sampling frequency. An internal oscillator provides the APR9600 sampling clock. Oscillator frequency can be changed by changing the resistance from the OscR pin to GND. summarizes resistance values and the corresponding sampling frequencies, as well as the resulting input bandwidth and duration.
41

Ref Rosc 84 K 38 K 24 K

Sampling Frequency 4.2 kHz 6.4 kHz 8.0 kHz

Input Bandwidth 2.1 kHz 3.2 kHz 4.0 kHz

Duration 60 sec 40 sec 32 sec

Table 4.2.8.a :Reference Rosc Value & Sampling Frequency Sampling Application

The following reference schematics are included as examples on how a recording system might be designed. Each reference schematic shows the device incorporated in one of its three main modes, Random Access, Tape mode Normal option, and Tape mode - Auto Rewind option. Note that in several of the applications either one or all of the /Busy, /Strobe, or /M7_END pins are connected to LEDs as indicators of device status. This is possible because all of these pins and signals were designed to have timing compatible with both microprocessor interface and manual LED indication. Figure 4.1.2.8.a shows the device configured in tape mode, nor-mal operation. This mode is the minimal part count application of the APR9600 Sampling rate is determined by the resistor value on pin 7 (OscR). The RC network on pin 19sets the AGC attack time. A bias must be applied to the electrets microphone in order to power its built in circuitry. The ground return of this bias net-work is connected to the normally open side of the record push button. This configuration gates power to microphones that it is biased only during recording. This configuration saves power when not recording by shutting off power to the electrets microphone. Both pins 18 and 19, MicIn and MicRef, must be AC couple to the microphone network in order to block the DC biasing voltage.
Figure 4.2.8.a: Tape Mode, Normal Option 42

Figure 4.2.8.b shows the device configured in tape mode, using the auto rewind option. Auto rewind is convenient for systems designed to store multiple messages. Auto rewind option does slightly increase parts count above that required for normal option The Busy pin, /Strobe, and /M7_END are again connected to LEDs to offer indication to the user of device status.
Figure 4.2.8.b : Tape Modes, Auto Rewind Option

43

Figure 4.2.8.c shows the device configured in random access mode. The device is using eight message segments, the maximum available, in this mode. Note that message trigger pins that are not used, for modes with less than eight segments, can be left unconnected with the exception of pin /M8_Option which should be pulled to VCC through a 100k resistor.

44

Figure 4.2.8.c : Random Access Mode

4.2.9.Electrical Characteristics The following tables list Absolute Maximum Ratings, DC Characteristics, and Analog Characteristics for the APR9600 device.

Absolute Maximum Ratings


45

Item Power Supply voltage Input Voltage Storage Temperature Temperature Under Bias Lead Temperature

Symbol VCC VIN2 TSTG TBS TLD

Condition TA = 25C IIN<20mA <10s

Min -0.3 -1.0 -65 -65 -0.3

Max 6.5 VCC + 1.0 150 125 300

Unit V V C C C

Table 4.2.9.a: Absolute Maximum Ratings

DC Characteristics
Item Power Supply voltage Input High Voltage Input Low Voltage Output High Voltage Output Low Voltage Input Leakage Current Input Leakage Current Output Tristate Current Operating Consumption Standby Consumption Symbol VCC VIH VIL VOH VOL IIL IIL Condition TA = 25C IOH=-1.6mA IOL=-4.0mA VIH =VCC VIL=VSS Min 4.5 2.0 2.4 -1.0 Typ 6.0 25 1.0 Max 6.5 0.8 0.45 1.0 1.0 Unit v V V V V mA

Leakage IOZ Current ICC Current ICCS

VOUT=VCC -1.0 Or VOUT=Vss Internal Clock, No Load No Load -

Table 4.2.9.b : DC Characteristics of APR 9600

Analog Characteristics
Item MicIn Input Voltage MicIn Input Resistance MicIn Amp Gain (1) MicIn Amp Gain (2) AnaIn Input Voltage AnaIn Input Resistance AnaIn Amp Gain AGC Output Resistance Sp+/- Output Power Voltage Amplitude across SP+/Symbol VMI RMI GMI1 GMI2 VANI RANI GANI RAGC PSP VSP Condition AGC=2.25v AGC=3.8V AnaIn to SP+/RSP+/-=16W RSP+/->16W Min Typ 15 30 -2 500 10 225 12.2 1.4 Max 30 140 Unit mVP-P kW dB dB mVP-P kW dB kW mW VP-P

Table 4.2.9.c : Analog Characteristics of APR 9600

46

OLD APR9600 SOP RECORDING VOICE 40" ~ 60"


MODE 2 FIXED MESSAGES 4 FIXED MESSAGES 8 FIXED MESSAGES 1 FIXED MESSAGES TAPE MODE NEXT TAPE MODE AUTO MSEL-1( PIN-24 ) 0 1 1 0 0 MSEL-2 ( PIN-25 ) 1 0 1 0 0 0 /M8 ( PIN-9 ) Pull-high 100KOhm Pull-high 100KOhm /M8 trigger pin 0 0 1

0
Sampling Frequency 4.2 KHz 6.4 KHz 8.0 KHz

Ref. ROSC 84 K Ohm 38 K Ohm 24 K Ohm

Input bandwidth 2.1 KHz 3.2 KHz 4.0 KHz

Voice duration 60 sec. 40 sec. 32 sec.

Table 4.2.9.d : Various modes and parameter Range of Old APR 9600

Figure 4.2.9.a: Old APR9600

47

NEW APR9600 SOP RECORDING VOICE 40" ~ 60"


MODE 2 FIXED MESSAGES 4 FIXED MESSAGES 8 FIXED MESSAGES 1 FIXED MESSAGES TAPE MODE NEXT TAPE MODE AUTO Ref. ROSC 84 K Ohm 38 K Ohm 24 K Ohm MSEL-1 ( PIN-3 ) 0 1 1 0 0 0 Sampling Frequency 4.2 KHz 6.4 KHz 8.0 KHz MSEL-2 ( PIN-25 ) 1 0 1 0 0 0 Input bandwidth 2.1 KHz 3.2 KHz 4.0 KHz /M8 ( PIN-9 ) Pull-high 100KOhm Pull-high 100KOhm /M8 trigger pin 0 0 1 Voice duration 60 sec. 40 sec. 32 sec.

Table 4.2.9.e : Various modes and parameter Range of Old APR 9600

Figure 4.2.9.b: New APR 9600 Pin Diagram

APR9600 line-In Type Recording Circuit:


48

Figure 4.2.9.c: APR9600 line-In Type Recording Circuit

49

APR9600 AMP Approcation Circuit:

Figure 4.2.9. d: APR9600 AMP Approcation Circuit

50

4.3. PIC16F87XA: 4.3.1.Features: High-Performance RISC CPU Only 35 single-word instructions to learn. All single-cycle instructions except for program branches, which are two-cycle. Operating speed: DC 20 MHz clock input DC 200 ns instruction cycle Up to 8K x 14 words of Flash Program Memory, Up to 368 x 8 bytes of Data Memory (RAM), Up to 256 x 8 bytes of EEPROM Data Memory. Pinout compatible to other 28-pin or 40/44-pin PIC16CXXX and PIC16FXXX microcontrollers . Peripheral Features Timer0: 8-bit timer/counter with 8-bit prescaler. Timer1: 16-bit timer/counter with prescaler, can be incremented during Sleep via external crystal/clock. Timer2: 8-bit timer/counter with 8-bit period register, prescaler and postscaler. Two Capture, Compare, PWM modules - Capture is 16-bit, max. resolution is 12.5 ns - Compare is 16-bit, max. resolution is 200 ns Synchronous Serial Port (SSP) with SPI (Master mode) and I2C (Master/Slave) Analog Features 10-bit, up to 8-channel Analog-to-Digital Converter (A/D) Brown-out Reset (BOR) Analog Comparator module with: - Two analog comparators
51

- Programmable on-chip voltage reference (VREF) module - Programmable input multiplexing from device inputs and internal voltage reference Comparator outputs are externally accessible Special Microcontroller Features: 100,000 erase/write cycle Enhanced Flash program memory typical 1,000,000 erase/write cycle Data EEPROM memory typical Data EEPROM Retention > 40 years Self-reprogrammable under software control In-Circuit Serial Programming (ICSP) via two pins Single-supply 5V In-Circuit Serial Programming Watchdog Timer (WDT) with its own on-chip RC oscillator for reliable operation Special Features: All PIC16F87XA devices have a host of features intended to maximize system reliability, minimize cost through elimination of external components, provide power saving operating modes and offer code protection. These are: Oscillator Selection Reset - Power-on Reset (POR) - Power-up Timer (PWRT) - Oscillator Start-up Timer (OST) - Brown-out Reset (BOR) Interrupts Watchdog Timer (WDT) Sleep
52

Code Protection PIC16F87XA devices have a Watchdog Timer, which can be shut-off only through configuration bits. It runs off its own RC oscillator for added reliability. There are two timers that offer necessary delays on power-up. One is the Oscillator Start-up Timer (OST),Power-up Timer (PWRT), which provides a fixed delay of 72 ms (nominal) on power-up only. It is designed to keep the part in Reset while the power supply stabilizes. With these two timers on-chip, most applications need no external Reset circuitry. Sleep mode is designed to offer a very low current power-down mode. The user can wake-up from Sleep through external Reset, Watchdog Timer wake-up or through an interrupt. Several oscillator options are also made available to allow the part to fit the application. The RC oscillator option saves system cost while the LP crystal option saves power. A set of configuration bits is used to select various options. 4.3.2.Pindiagram:

Figure 4.3.2.a.: Pin Diagram of PIC 16F877A

53

4.3.3.Architectural Overview:

Figure:4.3.3.a Block Diagram of PIC 16F877A

4.4. 16*2 LCD Display: An LCD is low cost display. It is easy to interface with microcontroller based of embedded controller.

54

4.4.1. Features
16 character *2lines

5*7 Dots with cursor Built in controller +5v power supply 1/16 duty circle

\ Figure 4.4.1.a: LCD Diagram

4.4.2.General Description: A liquid crystal display (LCD) is a thin, flat electronic visual display that uses the light modulating properties of liquid crystals (LCs). LCs do not emit light directly. Each pixel of an LCD typically consists of a layer of molecules aligned between two transparent electrodes, and two polarizing filters, the axes of transmission of which are (in most of the cases) perpendicular to each other. With no actual liquid crystal between the polarizing filters, light passing through the first filter would be blocked by the second (crossed) polarizer. In most of the cases the liquid crystal has double refraction The surface of the electrodes that are in contact with the liquid crystal material are treated so as to align the liquid crystal molecules in a particular direction. This treatment typically consists of a thin polymer layer that is
55

unidirectionally rubbed using, for example, a cloth. The direction of the liquid crystal alignment is then defined by the direction of rubbing. Electrodes are made of a transparent conductor called Indium Tin Oxide (ITO). Before applying an electric field, the orientation of the liquid crystal molecules is determined by the alignment at the surfaces of electrodes. In a twisted nematic device (still the most common liquid crystal device), the surface alignment directions at the two electrodes are perpendicular to each other, and so the molecules arrange themselves in a helical structure, or twist. This reduces the rotation of the polarization of the incident light, and the device appears grey. If the applied voltage is large enough, the liquid crystal molecules in the center of the layer are almost completely untwisted and the polarization of the incident light is not rotated as it passes through the liquid crystal layer. This light will then be mainly polarized perpendicular to the second filter, and thus be blocked and the pixel will appear black. By controlling the voltage applied across the liquid crystal layer in each pixel, light can be allowed to pass through in varying amounts thus constituting different levels of gray. This electric field also controls (reduces) the double refraction properties of the liquid crystal

The optical effect of a twisted semantic device in the voltage-on state is far less dependent on variations in the device thickness than that in the voltage-off state. Because of this, these devices are usually operated between crossed polarizes such that they appear bright with no voltage (the eye is much more sensitive to variations in the dark state than the bright state). These devices can also be operated between parallel polarizes, in which case the bright and dark states are reversed. The voltage-off dark state in this configuration appears blotchy, however, because of small variations of thickness across the device.
56

Both the liquid crystal material and the alignment layer material contain ionic compounds. If an electric field of one particular polarity is applied for a long period of time, this ionic material is attracted to the surfaces and degrades the device performance. This is avoided either by applying an alternating current or by reversing the polarity of the electric field as the device is addressed (the response of the liquid crystal layer is identical, regardless of the polarity of the applied field). When a large number of pixels are needed in a display, it is not technically possible to drive each directly since then each pixel would require independent electrodes. Instead, the display is multiplexed. In a multiplexed display, electrodes on one side of the display are grouped and wired together (typically in columns), and each group gets its own voltage source. On the other side, the electrodes are also grouped (typically in rows), with each group getting a voltage sink. The groups are designed so each pixel has a unique, unshared combination of source and sink. The electronics or the software driving the electronics then turns on sinks in sequence, and drives sources for the pixels of each sink.

57

CHAPTER 5 SOFTWARE SPECIFICATION:


5.1. CCS Compiler: The CCS C Compiler for PIC10, PIC12, PIC14, PIC16, and PIC18 microcontrollers has 307 Built-in Functions to access PIC MCU hardware is easy and produces efficient and highly optimized code. Functions such as timers, A/D, EEPROM, SSP, PSP, USB, I2C and more:

Built-in libraries that work with all chips for RS-232 serial I/O, I2C, discrete I/O and precision delays. Serial I/O functions allow standard functions such as GETC() and PRINTF() to be used for RS-232 like I/O. Formatted print allows easy formatting and display in HEX or decimal. Multiple I2C and RS232 ports may be easily defined. #use rs232() offers options to specify a maximum wait time for getc. Hardware transceiver used when possible, but for all other occasions the compiler generates a software serial transceiver. Microcontroller clock speed may be specified in a PRAGMA to permit built-in functions to delay for a given number of microseconds or milliseconds. Functions such as INPUT() and OUTPUT_HIGH() properly maintain the tri-state registers.

5.2.Software Data should be Calibrated: Orienting the glove in particular position


58

Normalized: gravity Low pass filtered: Signal are averaged to reduce white noise Coordinate transformation (x,y)->(Racc, ) 5.3.Static Data Analysis In static situation only force acting is gravity G Orientation of accelerometer relative to gravity is The angle the acceleration plane is offset from horizontal plane is Accelerometer at the back of the hand acts as Tilt motion detector Accelerometer at thumb, index finger and middle finger operates as mouse click

Figure 5.3.a Acceleration Plane Relative To Gravity Vector . Acceleration Normal To Acceleration Plane Cannot Be Detected By Acceleration

59

CHAPTER 6 SYSTEM IMPLEMENTATION PROCESS


The hardware consists of a wrist controller and six accelerometers, five on the fingertips and one on the back of the hand. The power of 1.8v to 3v is given to the AdXL335. The ADXL335 has a measurement range of 3 g minimum. It contains a polysilicon surface-micro machined sensor and signal conditioning circuitry to implement anopen-loop acceleration measurement architecture. The output signals are analog voltages that are proportional to acceleration.

A single 0.1 F capacitor, Cdc, placed close to the ADXL335 supply pins adequately decouples the accelerometer from noise on the power supply.

If additional decoupling is needed, a 100 (or smaller) resistor or ferrite bead can be inserted in the supply line. Additionally, a larger bulk bypass capacitor (1 F or greater) can be added in parallel to CDC.

A minimum capacitance of 0.0047 F for CX, CY, and CZ is recommended in all cases.

Filtering can be used to lower the noise floor to improve the resolution of the accelerometer. Resolution is dependent on the analog filter bandwidth at XOUT, YOUT, and ZOUT.

The output of the ADXL335 has a typical bandwidth of greater than 500 Hz. The user must filter the signal at this point to limit aliasing errors.

The demodulator output is amplified and brought off-chip through a


60

32 k resistor. The user then sets the signal bandwidth of the device by adding a capacitor. This filtering improves measurement resolution and helps prevent aliasing.

The user selects the bandwidth of the accelerometer using the CX, CY, and CZ capacitors at the XOUT, YOUT, and ZOUT pins. Bandwidths can be selected to suit the application, with a range of 0.5 Hz to 1600 Hz for the X and Y axes, and a range of 0.5 Hz to 550 Hz for the Z axis.

The Accelerometer sense the acceleration with respect to 3-axis . The Then its output is Amplified across 32kohm

output from the ADXL 335 is Analog data which is amplified and demodulated. resistance..Thus we obtain analog output by selecting the bandwidth across the 3 axis by means of Capacitance (CX, CY, and CZ) which act as low pass filtering. Thus the Analog data from ADXL 335 is fed to the PIC 16F877A Controller. The PIC consist of ADC which convert the Analog to Digital Data and it is Compared with the Look up table which is stored in the Flash memory. All the programming with in PIC controller has done using Embedded C Programming.

Thus the Output corresponding to the Hand gesture is Display on the

LCD. In the APR 9600 voice Recording is previously done using sample and hold circuit and Analog write and read Circuit which is externally or internally clock and the incoming message is stored in 26K Flash memory.
61

Similarly the Digital output from PIC controller is fed to the APR stored in the Flash memory is Playback by low pass filtering

9600 Voice chip as Message Signal. According to the Message signal the message and then it is Amplified and then and playback via Speaker.

CHAPTER 7 ADVANTAGES AND APPLICATION 7.1.ADVANTAGES


MEMS Based Gesture Recognition.

Simple and economical System. Portable. Highly accurate and Faster system. Easy to handle and Less skill is required to Operate.

7.2. APPILICATION
Gesture recognition system are used in
1. Inertial Sensing. 2. Defined gestures , such as taps, double taps or shakes. 3. More usable where physical buttons and switches would be difficult. 4. Button Free design which reduce overall cost and improve durability. 62

5. Mobile devices 6. Gaming systems

7.3.PROTOTYPE

63

Fig. 7.3.a. Acceleration Sensing Glove Hardware . Accelerometers are attached to the fingertips and back of the hand. A wrist controller sends the accelerometer data wirelessly to a computer.

CHAPTER 8 8.1 CONCLUSION


For the gesture learning stage, multiple samples were taken
64

for each gesture.

On average about 28samples for each

gesture were taken to ensure a high chance of matching. Further samples were taken on gestures if recognition was unreliable. In the recognition stage, the text editor recognized the gesture . Thus in this project the hand gesture are recognized and the corresponding message is outlet to speaker. Thus this project provides useful in various communication systems. Thus the demonstration of accelerometers has been and it can be used to effectively translate finger and hand gestures into computer interpreted signals. To this end we developed the Acceleration Sensing Glove (ASG) that helps deaf and dumb to communicate with others through voice commands. human to machine interaction directly without any physical contact. Thus it is

REFERENCE

65

[1] http://robotics.eecs.berkeley.edu/ ~pister/SmartDust, September 1999. [2] Hand Job, Wired Magazine, pp 57 January 2000. [3] George Johnson, Only connect from swarms of Smart Dust to secure collaborative zones, the omninet comes to you, Wired Magazine, pp150 - 164, January 2000. [4] Peter Weiss, Smart Outfit, Science News, pp 330-332, Vol. 156, November 20, 1999. [5] Analog Devices, Norwood, MA, http://www.analog.com, September 1999. [6] Bruce Thomas, Susan Tyerman, Karen Grimmer, Evaluation of Three Input Mechanisms for Wearable Computers, IEEE 1997 pp 2-9. [7] Flavia Caroppo, Massimo Chieruzzi, Bit di futuro a portata di mano, Newton, pp 113-118. April 2000. [8] Fukumoto, M and Tonomura, Y Body Coupled FingeRing: Wireless Wearable Keyboard, CHI97 Conference Proceedings, pp147-154, Atlanta, March 1997. [9] J. Perng, B. Fisher, S. Hollar, K.S.J. Pister, Acceleration Sensing Glove, ISWC International Symposium on Wearable Computers, San Francisco, October 18-19th, 1999.

66