USF Libraries
USF Digital Collections

Development of assessment tasks to measure the driving capabilities of persons with disabilities

MISSING IMAGE

Material Information

Title:
Development of assessment tasks to measure the driving capabilities of persons with disabilities
Physical Description:
Book
Language:
English
Creator:
Upadhyay, Ashwin
Publisher:
University of South Florida
Place of Publication:
Tampa, Fla.
Publication Date:

Subjects

Subjects / Keywords:
driving controls
interface
haptic
simulation
phantom
Dissertations, Academic -- Mechanical Engineering -- Masters -- USF   ( lcsh )
Genre:
government publication (state, provincial, terriorial, dependent)   ( marcgt )
bibliography   ( marcgt )
theses   ( marcgt )
non-fiction   ( marcgt )

Notes

Summary:
ABSTRACT: The need to lead an independent and fuller life is as much a right of a person with physical disability as any other human being. Driving capabilities of a person with a disability have been assessed and evaluated using qualitative techniques. However, certain inadequacies that arise using qualitative measures can be avoided if the assessment is based on quantitative techniques. The above requirement necessitates the need to devise a method and a system which is focused on the right development of the techniques used in assessing and measuring different capabilities (such as range of motion and force input) of the person with a disability in a detailed manner. This thesis focuses on developing an experimental method which can be adopted as an assessment tool to evaluate different capabilities of a person with a disability. The test bed used for this purpose consists of two independent systems combined together by an interface.They are the six-degree of freedom force reflecting hand controller known as the PHANTOM haptic device 12 and a commercially available adaptive driving control system known as the AEVIT system 15. The test bed provides compatibility between the PHANTOM and AEVIT which makes it feasible for the PHANTOM to model and control the driving input devices (steering and gas/brake) of the AEVIT system.
Thesis:
Thesis (M.S.M.E.)--University of South Florida, 2004.
Bibliography:
Includes bibliographical references.
System Details:
System requirements: World Wide Web browser and PDF reader.
System Details:
Mode of access: World Wide Web.
Statement of Responsibility:
by Ashwin Upadhyay.
General Note:
Title from PDF of title page.
General Note:
Document formatted into pages; contains 128 pages.

Record Information

Source Institution:
University of South Florida Library
Holding Location:
University of South Florida
Rights Management:
All applicable rights reserved by the source institution and holding location.
Resource Identifier:
aleph - 001498272
oclc - 57717853
notis - AJU6877
usfldc doi - E14-SFE0000549
usfldc handle - e14.549
System ID:
SFS0025240:00001


This item is only available as the following downloads:


Full Text
xml version 1.0 encoding UTF-8 standalone no
record xmlns http:www.loc.govMARC21slim xmlns:xsi http:www.w3.org2001XMLSchema-instance xsi:schemaLocation http:www.loc.govstandardsmarcxmlschemaMARC21slim.xsd
leader nam Ka
controlfield tag 001 001498272
003 fts
006 m||||e|||d||||||||
007 cr mnu|||uuuuu
008 041209s2004 flua sbm s000|0 eng d
datafield ind1 8 ind2 024
subfield code a E14-SFE0000549
035
(OCoLC)57717853
9
AJU6877
b SE
SFE0000549
040
FHM
c FHM
090
TJ145 (ONLINE)
1 100
Upadhyay, Ashwin.
0 245
Development of assessment tasks to measure the driving capabilities of persons with disabilities
h [electronic resource] /
by Ashwin Upadhyay.
260
[Tampa, Fla.] :
University of South Florida,
2004.
502
Thesis (M.S.M.E.)--University of South Florida, 2004.
504
Includes bibliographical references.
516
Text (Electronic thesis) in PDF format.
538
System requirements: World Wide Web browser and PDF reader.
Mode of access: World Wide Web.
500
Title from PDF of title page.
Document formatted into pages; contains 128 pages.
520
ABSTRACT: The need to lead an independent and fuller life is as much a right of a person with physical disability as any other human being. Driving capabilities of a person with a disability have been assessed and evaluated using qualitative techniques. However, certain inadequacies that arise using qualitative measures can be avoided if the assessment is based on quantitative techniques. The above requirement necessitates the need to devise a method and a system which is focused on the right development of the techniques used in assessing and measuring different capabilities (such as range of motion and force input) of the person with a disability in a detailed manner. This thesis focuses on developing an experimental method which can be adopted as an assessment tool to evaluate different capabilities of a person with a disability. The test bed used for this purpose consists of two independent systems combined together by an interface.They are the six-degree of freedom force reflecting hand controller known as the PHANTOM haptic device [12] and a commercially available adaptive driving control system known as the AEVIT system [15]. The test bed provides compatibility between the PHANTOM and AEVIT which makes it feasible for the PHANTOM to model and control the driving input devices (steering and gas/brake) of the AEVIT system.
590
Adviser: Dubey, Rajiv.
653
driving controls.
interface.
haptic.
simulation.
phantom.
690
Dissertations, Academic
z USF
x Mechanical Engineering
Masters.
773
t USF Electronic Theses and Dissertations.
4 856
u http://digital.lib.usf.edu/?e14.549



PAGE 1

Development of Assessment Tasks to Measure the Driving Capabilities of Persons with Disabilities by Ashwin Upadhyay A thesis submitted in partial fulfillment of the requirements for the degree of Master of Science in Mechanical Engineering Department of Mechanical Engineering College of Engineering University of South Florida Major Professor: Rajiv Dubey, Ph.D. Shuh-Jing Ying, Ph.D. Ashok Kumar, Ph.D. Date of Approval: November 1, 2004 Keywords: phantom, haptic, simulati on, interface, driving controls Copyright 2004 Ashwin Upadhyay

PAGE 2

i Table of Contents List of Tables v List of Figures vi Abstract ix Chapter 1: Introduction 1 1.1. Motivation 1 1.2. Thesis Objectives 2 1.3. Thesis Outline 2 Chapter 2: Background 3 2.1. Introduction 3 2.2. Age and Disabilities 3 2.3. Rehabilitation Engineering and Assistive Technology 8 2.4. Neuromuscular Diseases Encountered in Driving 11 2.4.1. Multiple Sclerosis 12 2.4.1.1. Driving a Van 13 2.4.1.2. Visual Changes 13 2.4.1.3. Cognitive Issues 13 2.4.2. Muscular Dystrophy 14 2.4.3. Arthritis 15 2.4.4. Spinal Cord Injury 16 Chapter 3: Adaptive Driving C ontrols for the Disabled 21

PAGE 3

ii 3.1. Introduction 21 3.2. Advanced Adaptive Driving Systems 21 3.2.1. Crea tive Controls Inco rporation (CCI) 22 3.2.2. Driving Aids Development Corporation (DADC) 23 3.2.3. Electronic Mobility Controls, LLC 24 3.3. Vehicle Modification 25 3.4. Primary Controls 29 3.4.1. Mechanical Hand Controls 29 3.4.2. Assist Devices 30 3.4.3. Steering Column and Shaft Extension 30 3.4.4. Power Steering Modifications 30 3.4.5. Power Brake Modifications 31 3.4.6. Left Foot Accelerator and Other Pedal Extensions 31 3.4.7. Powered Primary Controls 32 3.5. Secondary Controls 32 3.6. Access Device 34 3.6.1. Automatic Wheelchair Lifts 34 3.6.2. Semi Automatic Wheelchair Lifts 35 3.6.3. Exterior Access Device Control 36 3.6.4. Automatic Door Openers 37 3.6.5. Ramps 37 3.6.6. Personal Lift Devices 38 3.6.7. Steps 38 3.6.8. Assist Handles 39 Chapter 4: PHANTOM Haptic Device and the AEVIT Driving Control System 40 4.1. Introduction 40 4.2. Description of PHANTOM Device 41 4.3. The GHOST Software Development Kit 43 4.4. The AEVIT Driving System 45

PAGE 4

iii 4.4.1. Information System 47 4.4.2. Vehicle Interface Module 47 4.4.3. Drive Module 48 4.4.4. Input Devices 49 Chapter 5: Simulation and Experiments. 53 5.1. Introduction 53 5. 2. Stiffness Parameter Determination Experiment 54 5.2.1. Stiffness Parameter Formulation 55 5.3. Steering Strength Test 57 5.4. Gas and Brake Simulation 60 5.4.1. PHANTOM-AEVIT Inte rface Description 63 5.5. Gas/Brake Simulation Procedure 69 5.5.1. Gas/Brake Simulation Experiment 70 5.6. Gas/Brake Data Analysis 75 5.7. Summary of Gas/Brake Test Results 90 Chapter 6: Conclusions and Recommendations 92 6.1. Conclusions 92 6.2. Future Recommendations 93 References 94 Appendices 96 Appendix A: Source Codes 97 A.1.Code fo r Serial Interface between the PHANTOM and the Basic Stamp 97 A.1.1 COMPORT.cpp 97 A.1.2. Serial.cpp 104 A.2. Code for Gas and Brake Simulation 105

PAGE 5

iv A.2.1. Lineforce.cpp 105 A.2.2. Lineforce.h 113 Appendix B: Step-Wise Procedures 115 B.1. Procedure for Booting the AEVIT Driving System 115 B.2. Procedure to perform the Steering or Gas/Brake Simulation 115 B.3. Procedure to perform the Steering Strength Test 116 B.4. Procedure to perform the Gas/Brake Test 117

PAGE 6

v List of Tables Table 2.1. Segmental Spinal Cord Level and Function 18 Table 2.2. Effects of Spinal Cord Injury on Functional Goals 19 Table 3.1. Modified Vehicle Types and Vehicle Safety Ratings 27 Table 3.2. Types of Modifications and Vehicle Safety Ratings 28 Table 4.1. Lock-to-Lock Turns in Both the DS-2000 and Regular Steering 52 Table 5.1. Gas/Brake Voltage Values (Volts) 62 Table 5.2. Steering Voltage Values (Volts) 63 Table 5.3. Pin Description for Ba sic Stamp2 Microcontroller 64 Table 5.4. Basic Stamp 2 Microc ontroller Specifications 65 Table 5.5. AEVIT to PHANTOM Gas/Brake Device Mapping 70 Table 5.6. Summary of the Results of the Gas/Brake Simulation Experiment 90

PAGE 7

vi List of Figures Figure 2.1. Disability Status of Non-in stitutionalized Population, 15-64 years 5 Figure 2.2. Percentage with a Job or Bu siness, by Disability Status and Gender, 21-64 years 5 Figure 2.3. Percentage of the Civilian Noninstitutionalized Population with a Disa bility by Age and Type of Disability: 2000 7 Figure 2.4. Different Fields of Rehabilitation Involved with a Person with Disability 8 Figure 2.5. Elevated Seat with Armrests on a Standard Toilet Seat 10 Figure 2.6. Double Sided Bed Rail 10 Figure 2.7. Arthritic Finger Joints 15 Figure 2.8. Segmental Spinal Cord 17 Figure 3.1. LogiTouch Wireless Control 22 Figure 3.2. C-Tech Memory Shift 23 Figure 3.3. DADC Hand Control System 23 Figure 3.4. EMCs Gas/Brake Device 24 Figure 3.5. Sure Grip Mechanical Hand Control 29 Figure 3.6. Brake and Gas Pedal Extensions 31 Figure 3.7. Mini Hoist El ectric Scooter Lift 35 Figure 3.8. Gentle Giant Semi-A utomatic Platform Lift 36 Figure 3.9. Wheelchair Ramp 37 Figure 3.10. Milford Aluminum Electric Person Lift 38 Figure 3.11. Motorized Step for a Full Size Van 39 Figure 3.12. Standard Assist Ha ndle used in Vehicles 39 Figure 4.1. PHANTOM Haptic Device by SensAble Technologies Inc 41 Figure 4.2. The GHOST SDK Class Trees 44

PAGE 8

vii Figure 4.3. The AEVIT System Layout 46 Figure 4.4. AEVIT Systems Information Center 47 Figure 4.5. Rearview of Vehicle Interface Module 48 Figure 4.6. Rearview of the Drive Module 49 Figure 4.7. Digital Joystick of the AEVIT System 50 Figure 4.8. Joystick Control Steering Bands 51 Figure 4.9. The DS-2000 Steering Wheel 51 Figure 4.10. Electronic Gas and Brake Device 52 Figure 5.1. Force Density Plot at Z= 0 from the Reference Frame 58 Figure 5.2. Force Density Plot at Z= 10 cm from the Reference Frame 59 Figure 5.3. Force Density Plot at Z= 20 cm from the Reference Frame. 60 Figure 5.4. Evaluator Cable 12 Pins 61 Figure 5.5. The Basic Stamp2 (BS2) Microcontroller 64 Figure 5.6. Changing Position Values of the PHANTOM while in Operation 67 Figure 5.7. PWM Circuit with Basic Stamp 68 Figure 5.8. Specific Impedance between Pins 10, 11 or 12 68 Figure 5.9. Picture of the Experime ntal Set-up in the Robotics and Rehabilitation Lab 72 Figure 5.10. Rectangular Grid Repr esenting the x-y Test Plane for Gas/Brake Simulation 73 Figure 5.11. Schematic Representati on of the Experimental Setup for the Gas/Brake Simulation 75 Figure 5.12. Plot of Line A for Test Plane 1 76 Figure 5.13. Plot of Line B for Test Plane 1 79 Figure 5.14. Plot of Line C for Test Plane 1 80 Figure 5.15. Plot of Line D for Test Plane 1 81 Figure 5.16. Plot of Line A for Test Plane 2 82 Figure 5.17. Plot of Line B for Test Plane 2 83 Figure 5.18. Plot of Line C for Test Plane 2 84 Figure 5.19. Plot of Line D for Test Plane 2 85

PAGE 9

viii Figure 5.20. Plot of Line A for Test Plane 3 86 Figure 5.21. Plot of Line B for Test Plane 3 87 Figure 5.22. Plot of Line C for Test Plane 3 88 Figure 5.23. Plot of Line D for Test Plane 3 89

PAGE 10

ix Development of Assessment Tasks to Measure the Driving Capabilities of Persons with Disabilities Ashwin Upadhyay ABSTRACT The need to lead an independe nt and fuller life is as much a right of a person with physical disability as any other human bei ng. Driving capabilities of a person with a disability have been assessed and evalua ted using qualitative techniques. However, certain inadequacies that arise using qual itative measures can be avoided if the assessment is based on quantitative techniques. The above requirement necessitates the need to devise a method and a system which is focused on the right development of the t echniques used in assessing and measuring different capabilities (such as range of motion and force input) of the person with a disability in a detailed manner. This thes is focuses on developi ng an experimental method which can be adopted as an assessment t ool to evaluate different capabilities of a person with a disability. The test bed used for this purpose consists of two independent systems combined together by an interface. They are the six-degree of freedom force reflecting hand controller known as th e PHANTOM haptic device [12] and a commercially available adaptive driving cont rol system known as the AEVIT system [15]. The test bed provides compatibility between the PHANTOM and AEVIT which makes it feasible for the PHANTOM to mode l and control the driving input devices (steering and gas/brake) of the AEVIT system.

PAGE 11

1 Chapter 1 Introduction 1.1. Motivation Assistive technology and re habilitation engineering ha ve been contributing in various fields over the past in relation to devising and improvising various assistive techniques in domestic, commercial and work environments. In the past introduction of electrical and mechanical devices for driving have mainly focused on enhancing functions of existing vehicles with primary a lternate controls (gas/b rakes/steering) and to provide easy access and exit to a disabled pe rson. A wider use has been made possible with the addition of electronic devices su ch as LogiTouch Wireless Control from CCI [30], which controls many secondary functi ons of the vehicle or the DS-2000 steering wheel from EMC, LLC [15] whic h provides low effort steering. Safety and easy adaptability of a disabled person to any device is of prime importance. Avoidance of any dangerous situation aris ing out of complexity of a dynamically controlled vehicle is absolute ly necessary. This demands development of an assessment tool, which determines the capability of a person and his readine ss to use the device under realistic conditions. An expansive infrastr ucture has to be designed keeping in view the capability of the person using it so as to give him easy and safe accessibility thereby resulting in optimum and fuller use of the device. This will ease out and simplify the problems faced by the user because of the complex or compact nature of a device, which may, due to its integrated func tions limit or restrict its i nput/output capabilities vis--vis the person using it. In other words, the device has to be user-frien dly, easily accessible and understandable since the person using it may not be technically literate to grasp and explore the various functions which the device can perform. This motivates this thesis, emphasizing the need for quantitative assessment of a person with a disability, which measures his capabil ity to drive a vehicle using an advanced

PAGE 12

2 adaptive control system. Physical therapist groups conducting these assessments will find this method a major improvement. 1.2. Thesis Objectives This thesis focuses on the development of assessment training tools for adaptive driving control systems. The following thesis objectives aim to: Identify major driving related disabilities and the need for adaptive driving control for the disabled. Develop an interface between the six-degree of freedom PHANTOM TM haptic device and the AEVIT driving control system from the EMC, LLC. Develop an experimental method and use it as an assessment tool for the driving input device and test it using the PHANTOM haptic device. Analyze the results based on the test and demonstrate the efficacy of the method. 1.3. Thesis Outline This thesis starts with the motivation and thesis objectives in Chapter 1, which discusses the need for the development of dr iving assessment techniques for individuals with disabilities. Chapter 2 includes the background information of areas related to this work such as Assistive Technology, Rehabil itation Engineering and provides statistical data on age and disabilities and also descri bes some major disabilities, which affect normal driving. Chapter 3 discusses vehicl e modification require ments and various primary and secondary adaptive controls used in vehicles for persons with disabilities. Chapter 4 describes the complete hardware a nd software of the PHANTOM haptic device and AEVIT driving control system. Chapte r 5 includes the experiments conducted and the results of these experiments. Further, data analysis of the results obtained is provided in detail in Chapter 5. Chapter 6 provides th e conclusions based on the results and data obtained along with recomme ndations on future work.

PAGE 13

3 Chapter 2 Background 2.1. Introduction This chapter discusses statistical data on different types of disabilities and the extent to which they effect the population. Next it describes a ssistive technology and rehabilitation engineering. It further desc ribes different neurom uscular disabilities affecting the driving cap abilities of a person. 2.2. Age and Disabilities Disability is a general term that refers to any longor short-term reduction of a person's activity as a result of an acute or chronic condition. A person is considered to have a disability if he or she has difficulty perfor ming certain functions (seeing, hearing, talking, walking, climbing stairs, lifting, carrying etc ), has difficulty performing activities of daily living, or has difficulty with certain so cial roles (adults working at a job or around the house) [22]. Activities of Daily Living (ADLs) consist of ge tting in and out of a bed or chair, getting around inside a home, dressing, using the to ilet and eating. About 8 million adults had difficulty with at least one of these tasks; 3.9 million of them required the assistance of another person making the disabili ty severe. A person with a severe disability is a person who is unable to perform one or more of the previously stated activities, uses an assistive device to get around, or needs assistance from another person to perfor m basic activities. Instrumental Activities of Daily Living (I ADLs) include going outside the home to shop or making a doctors visit, doing house work su ch as washing dishes, preparing meals,

PAGE 14

4 keeping track of money and bills, and us ing the telephone. Twelve million adults had trouble with one or more of these activities and nine million needed assistance. Functional Activities include lifting and carrying a weight as heavy as 10 pounds, walking 3 city blocks, seeing the words and letters in ordinary newspr int, hearing what is said in a normal conversation with another person, having one speech understood, climbing a flight of stairs. Thirty four milli on adults aged 15 and older had a functional disabilitydifficulty performing at l east one of these tasks. Not only were adults with functional, ADL and IADL limitations considered to have a disability but also who Used a wheelchair (1.5 million). Used cane, crutches or walker for 6 months or longer (4 million). Had a mental or emotional disability such as Alzheimers disease or mental retardation (6.9 million). Had a conditions that limited the kind or am ount of work they could do at a job (19.5 million) Had a condition that made it difficult to do household work (18.1) million. According to the Survey of Income a nd Program Participation (SIPP), 32.1 million working-age people (or 18.7% of the population aged 15 to 64) have a disability. The SIPP provides an opportunity to examine disability and work using a definition of disability consistent with the Americans with Disabilities Act. Compared to information from the National Health Interview Survey or the Current Population Survey, the SIPP definition of disability is more broad-based, covering a variety of limitations that may or may not be related to work. The SIPP de finition clearly includes people who have reported being limited or unable to work as well as those who have qualified for a Social Security program based on inability to work. But the SIPP definition also includes people who use wheelchairs, report functional limitatio ns or have other specified conditions, but may be fully employed and report no limitation in the amount or kind of work. Using the SIPP definitions, 18.7% of the working-ag e populations 15-64 (32.1 million people)

PAGE 15

report a disability. Of these, severe disabilities were reported by 8.7% (14.9 million); non-severe disabilities account for the other 10% (17.2 million). Figure 2.1. Disability Status of Non-Institutionalized Population, 15-64 Years Figure 2.2. Percentage with a Job or Business, by Disability Status and Gender, 21-64 Years 5

PAGE 16

6 People with a disability are less likely to have a job or business than people with no disability. For people ages 21 to 64 with no disability, the likelihood of having a job or business is 82.1%. For people with a non-severe disability, the rate is 76.9%; the rate drops to 26.1% for those with a severe disability. The rates are lower for women than for men, regardless of disability status. Census 2000 counted 49.7 million people with some type of long lasting condition or disability [23]. They represented 19.3 percent of the 257.2 million people who were aged 5 and older in the civilian noninstitutionalized population or nearly one person in five Within this population, Census2000 found: 9.3 million (3.6 percent) with a sensory disability involving sight or hearing. 21.2 million (8.2 percent) with a condition limit ing basic physical activities, such as walking, climbing stairs, reaching, lifting, or carrying. 12.4 million (4.8 percent) with a physical, mental, or emotional condition causing difficulty in learning, re membering, or concentrating. 6.8 million (2.6 percent) with a physical, mental, or emotional condition causing difficulty in dressing, bathi ng, or getting around inside the home. 18.2 million of those aged 16 and older with a condition that made it difficult to go outside the home to s hop or visit a doctor (8.6 percent of the 212.0 million people this age). 21.3 million of those aged 16 to 64 with a conditi on that affected their ab ility to work at a job or business (11.9 percent of the 178.7 million people this age).

PAGE 17

Figure 2.3. Percentage of the Civilian Noninstitutionalized Population with a Disability by Age and Type of Disability: 2000 7

PAGE 18

2.3. Rehabilitation Engineering and Assistive Technology Person With a Disability Rehabilitation Engineering Biomechanics Mechanical Engineering Rehabilitation Counseling Physiology Neuroscience Speech Pathology Physical Therapy Rehabilitative Medicine Occupational Therapy Speech Education Electrical Engineering Biomedical Engineering Figure 2.4. Different Fields of Rehabilitation Involved with a Person with Disability Rehabilitation engineering is a people-oriented field, more than most fields of engineering [2]. Rehabilitation Engineering can be defined as the application of science 8

PAGE 19

9 and engineering to the design and developmen t of assistive (adap tive) technology and engineering to the design and development of assistive (adaptive) technology and rehabilitation techniques. The person with a disability is the focal point and the driving force behind the rehabilitation process. It is the consumers goals that are implemented and the consumers abilities that are enhanced. Rehabilitation requires knowledge of engineering fundamentals, as well as some degree of specializat ion within civil, electrical, mechanical, or chemical engineering and also to physiology, anatomy, biomechanics, neuroscience and kinesiol ogy. Improving the lives of persons with disabilities is the scope of re habilitation engineering and as sistive technology. In a more detailed definition, rehabilitation aims to re duce the impact of disabling conditions in individuals and to enable them to ach ieve social integration. Comprehensive rehabilitation includes three components: me dical, social, and vocat ional rehabilitation. The comprehensive rehabilitation methods include: remedial exercise, occupational therapy, physiotherapy, psychotherapy, reconstructive surgery, t echnical aids, and social intervention. From the ergonomic standpoint, rehabilitation is a process of recognizing functional limitations of people with disabilities a nd designing the external environment around these limitations for the benefit of a given in dividual and society as a whole. The main aim of such a process is to reduce potential losses in pr oductivity and wages due to the inability of disabled persons when subjected to inadequate ergonomic circumstances. An assistive device is a tool or implement that makes a particular function easier or possible to perform [2]. An assi stive device may be as simple as an electric toothbrush, or as elaborate as an environmental control system that persons who have lost the use of their limbs can operate with a mouth switch.

PAGE 20

Figure 2.5. Elevated Seat with Armrests on a Standard Toilet Seat Figure 2.5 is an example of a bathroom assistive device for a disabled person. It converts a standard toilet seat into an elevated seat with armrests that are optimally designed to assist a person lower to or push up from the toilet. Figure 2.6. Double Sided Bed Rail 10

PAGE 21

11 Another example of an assistive device is a double-sided bed rail as in Figure 2.6. Bedrail with roomy pocket turns an ordinary bed in to a convenient storage area while providing support for getting in and out of bed. Comfor table to grasp non-metal handle is warm to the touch and can be used for repositioning and turning in bed. The rail is easy to install and slides between the mattress and box spring. A strap at the end of the rail can be attached to the bed frame for additional stability. Assistive devices can help pe rsons with disabilities perform many activities of daily living. This is done through an in teraction between the person with disability, the device, and the environment. These assistive devices may be prescribed after assessment. Assistive devices are usually prescribed by an occupational, physical, or speech therapist, following referral by a physician. Due to the unp redictability of the symptoms associated many disabilities; the design of assistive device s is particularly difficult. Furthermore, the available assessment techniques do not provi de the proper information due to their qualitative nature. This thesis attempts to develop better assessment techniques based on a quantitative approach. The evaluation of assistive technology is crit ical to its proper application. Assistive technology must be evaluated to determine the potential co ntribution of the device of technology to the rehabilita tion process. A functional ev aluation determines the effectiveness of the device or technique in ameliorating an aspect of a persons disability. This type of evaluation usually involves test ing the device or technique with the people. The goal of functional evaluation is to de termine whether the device or technique significantly enhances the ability of a person to perform a certain task. Another goal of functional evaluation is to determine the populat ion of potential users that the device of technique will serve best. 2.4. Neuromuscular Diseases Encountered in Driving This section defines certain neuromuscular disabilities that are encountered in large numbers in the driving environment. These di sabilities do not necessarily impact the cognitive abilities of the person. Further more, these disabilities could be either acquired or inherited.

PAGE 22

12 2.4.1. Multiple Sclerosis Multiple Sclerosis (MS) is an inflammato ry disease of the Central nervous System (CNS) that's the brain and spinal cord. Pr edominantly, it is a disease of the "white matter" tissue. The white matter is made up of nerve fibres, which are responsible for transmitting communication signals both intern ally within the CNS and between the CNS and the nerves supplying rest of the body [31]. In people affected by MS, patches of dama ge called plaques or lesions appear in seemingly random areas of the CNS white matter. At the site of a lesion, a nerve insulating material, called my elin, is lost. Clin ically, MS is a hard condition to characterize because it is very unpredictabl e and variable. Depending on which areas of the CNS are affected and how badly they are damaged, the type and severity of symptoms can vary greatly. No two people get MS in exactly the same way and the expression of each individual's disease is as unique as their fingerprints. However, the diffe rent courses of the disease, both within an individual an d within the whole population, principally differ in their timing, location and severity. In general, people with MS can experience partial or complete loss of any function that is controlled by, or passes through, the brain or spinal cord MS is classified according to its clinical co urse into several categories: benign, relapsingremitting (the most common variant), progres sive-relapsing, primary progressive and secondary progressive. Effects on Driving Task: Difficulty turning steering wheel and applying pressure to brake and clutch Difficulty applying and re leasing parking brake.

PAGE 23

13 2.4.1.1. Driving a Van Options may include a mini-van with a lowered floor and a ramp or a full size van with a lift. Specialized modifications allow a person to transfer to the driver's seat or drive from a wheelchair. Technology may be able to comp ensate for the loss of strength or range of motion such as: Reduced effort steering and/or brake syst ems to compensate for reduced strength. Mechanical hand controls allow for operation of the gas and brake using upper extremities. Servo brake/ accelerator systems compensate for reduced strength/range of motion of arms. If spasticity is difficult to manage, it may lead to an inability to drive. 2.4.1.2. Visual Changes May be severe enough that driving is pr ecluded or night driving is prohibited. If double vision is intermittent and can be monitored independently, then driving may be limited to avoid driving during an exacerbation. Sunglasses may help with glare sensitivity. Compensate for loss of peripheral vision with special mirrors and head turning. Learn order of traffic signals to aid with color vision impairment. 2.4.1.3. Cognitive Issues Need to regulate emotions and avoid driving when upset, angry or overly emotional. May be limited to familiar routes if some loss of memory or problem solving but still enough judgment to drive.

PAGE 24

14 2.4.2. Muscular Dystrophy Some facts about Muscular Dystrophy [35]: Duchenne Muscular Dystrophy is the most common lethal genetic disorder of childhood. It is estimated that one of every 3,500 boys will develop or inherit Duchenne MD. Duchenne MD results from a defect (a mu tation) in the gene that encodes for the protein dystrophin. This gene is found on th e X chromosome; therefore, the disease primarily manifests in young men. In gene ral, girls with a mutation in their dystrophin gene are called car riers of Duchenne MD. Normal muscles contain structural proteins that serve to stre ngthen and protect the cell membrane. Dystrophin is one of the structural proteins found in muscle. The dystrophin gene is the largest gene id entified to date and is subject to random and frequent mutation. Without dystr ophin, muscle cells cannot survive. Becker Muscular Dystrophy is a lesser form of Duchenne Muscular Dystrophy. In Duchenne MD, dystrophin is absent; whil e in Becker MD, it is present in an abnormal molecular weight and/or in reduced amounts. Duchenne and Becker MD are disorders of muscle. Muscle tissue comprises 30% of the bodys mass. The heart is commonly belie ved to be one of the most important muscles. Duchenne MD is characterized by progressi ve muscle weakness that results in the loss of muscle function. To date, there is no cure for Duchenne or Becker MD. Duchenne and Becker MD occur in a ll populations with the same frequency, regardless of race, ethnicity, socioeconomic class or lifestyle. The typical deterioration of muscles in young men with Duchenne MD causes them to lose their ability to walk around the age of 12 and to lose the ability to move their arms in their teens. Older boys with Duchenne MD often suffer from respiratory insufficiency, pneumonia and heart failure. Effects of Muscular Dystrophy on Driving Tasks: Difficulty controlling the steering wheel and applying pressure to brake and gas pedal.

PAGE 25

Inability to drive for long periods of time without rest. 2.4.3. Arthritis Arthritis is one of the most pervasive diseases in the United States and is the leading cause of disability. According to the Centers for Disease Control and Prevention one out of every three Americans (an estimated 70 million people) is affected by one of the more than 100 types of arthritis. Figure 2.7. Arthritic Finger Joints For most people arthritis pain and inflammation cannot be avoided as the body ages. In fact, most people over the age of 50 show some signs of arthritis. Joints naturally degenerate over time. Inflammation is involved in many forms of arthritis. It is the body's natural response to injury. The warning signs that inflammation presents are redness, swelling, heat and pain. These are the same kinds of reaction the body has to a sliver in the hand, for example. When a joint becomes inflamed, it may get any or all of these symptoms. This can prevent the normal use of the joint, and therefore it can cause the loss of function of that joint. The most common symptoms of Rheumatoid Arthritis (RA) include [29]: Pain and swelling in the smaller joints of the hands and feet Aching or stiffness of the joints and muscles. Reduced range of motion in the affected joints Fatigue 15

PAGE 26

16 Low-grade fever Deformity of the joints in advanced cases Many older people do have arthritis, but it's not just a disease of th e old. Some forms of arthritis affect children, while thousands of people are stricken in the prime of their lives. The common denominator for all these condi tions is joint and musculoskeletal pain, which is why they are grouped together as 'arthritis.' Often that pain is a result of inflammation of the joint lining. The effects of Arthritis on a pers ons functional ability include: Fatigue Limited range of motion in affected joint Limited endurance Difficulty stooping, bending, grasping, wr iting, twisting, kneeling, or lifting Reduced fine motor skills in hands Sensivity to temperatures extremes Skin sensitivity to sunlight. Effects on Driving Tasks: Limited ability to turn the steering wheel Difficulty in operating dash controls, tu rn signal, shift lever, parking brake release. 2.4.4. Spinal Cord Injury Approximately 450,000 individuals in the United States have Sp inal Cord Injuries (SCI). Every year, approximately 10,000 people sustai n new SCI. Most of these people are injured in auto and sports accidents, falls, and industrial mishaps [33]. When a person receives an SCI, the communication between the brain and other parts of the body is disrupted, and messages no longer flow past the damaged area. The extent of the communication breakdown is dependent on both the severity and location of the injury. The human spinal cord is a bundle of nerve ce lls and fibers approximately 17 inches long that extends from the brain to the lower bac k. The spinal cord carries messages from the brain to all parts of your body and receives incoming messa ges from the body as well.

PAGE 27

The cord is protected by the backbone, which is made up of 33 individual vertebrae (Figure 2.8) [24]. Figure 2.8. Segmental Spinal Cord Following are the Causes for Spinal Cord Injury: 1. Tetraplegia/Quadriplegia: There is injury to the spinal cord between the spinal cord segments C1 and T1. This causes paralysis and loss of feeling involving all 4 limbs as well as the bladder, bowel and sexual organs [34]. 2. Paraplegia: Injury to the spinal cord below the neck causes paraplegia. There is injury to the spinal cord below the T1 cord segment. This causes weakness and loss of feeling in the trunk, legs and bladder, bowel and sex organs. 17

PAGE 28

But the arms and hands are normal. Table 2.1. Segmental Spinal Cord Level and Function Segmental Spinal Cord Level and Function Level Function Cl-C6 Neck flexors Cl-T1 Neck extensors C3, C4, C5 Supply diaphragm C5, C6 Shoulder movement, raise arm (deltoid); flexion of elbow (biceps); C6 externally rotates the arm (supinates) C6, C7, C8 Extends elbow and wrist (triceps and wrist extensors); pronates wrist C7, C8, Tl Flexes wrist C8, Tl Supply small muscles of the hand Tl -T6 lntercostals and trunk above the waist T7-Ll Abdominal muscles Ll, L2, L3, L4 Thigh flexion L2, L3, L4 Thigh adduction L4, L5, S1 Thigh abduction L5, S1 S2 Extension of leg at the hip (gluteus maximus) L2, L3, L4 Extension of leg at the knee (quadriceps femoris) L4, L5, S1, S2 Flexion of leg at the knee (hamstrings) L4, L5, S1 Dorsiflexion of foot (tibialis anterior) L4, L5, S1 Extension of toes L5, S1, S2 Plantar flexion of foot L5, S1, S2 Nexion of toes Effects of SCI on the body: Injury to the spinal cord may cause: Paralysis below the level of injury Loss of feeling below the level including Feel touch in skin Feel painful sensations Teel the difference between hot and cold Know what body parts are doing and what positions they are in without looking at them (called proprioception) 18

PAGE 29

19 Bladder and bowel function to be altered Sexual function to be altered (in males). Effects of SCI on daily tasks and mobility: The following table shows how the different leve ls of SCI effects the persons ability to perform some functional goals [32]. Table 2.2. Effects of Spinal Cord Injury on Functional Goals Level Abilities Functional Goal D aily tasks: Assistive technology allows for independence in tasks such as turning pages, using a telephone and operating lights and appliances C1 C3 Limited movement of head and neck Mobility: Can operate an electric wheelchair by using a head control, mouth stick, or chin control. A power tilt wheelchair also for independent pressure relief. Da adap ily tasks : With specialized equipment, some may have limited independence in feeding and independently operate an adjustable bed with an ted controller C3-C4 Usually has head and neck control. Individuals at C4 level may shrug their shoulders. Mobility: Same as above Daily tasks : Independence with eating, drinking, face washing, brushing of teeth, face shaving and hair care after assistance in setting up specialized equipment. C5 Typically has head and neck control, can shrug shoulder and has shoulder control. Can bend his/her elbows and turn palms face up. Mobility: May have strength to push a manual wheelchair for short distances over smooth surfaces. A power wheelchair with hand controls is typically used for daily activities. Driving may be possible after being evaluated by a qualified professional to determine special equipment needs. Daily tasks: With help of some specialized equipment, can perform with greater ease and daily tasks of feeding, bathing, grooming, personal hygiene and dressing. May independently perform light housekeeping duties. independence C6 Has movement in head, neck, shoulders, arms and wrists. Can shrug shoulders, bend elbows, turn palms up and down and extend wrists. Mobility: Some individuals can independently do transfers but often require a sliding board. Can use a manual wheelchair for daily activities but may use power wheelchair for greater ease of independence.

PAGE 30

Table 2.2. Effects of Spinal Cord Injury on Functional Goals (continued) Due to the unpredictability of the symptoms associated with most of these disabilities, the design of assistive devices is particularly difficult. Further more, the available assessment techniques do not provide the proper information, due to their qualitative nature. This thesis attempts to develop better assessment techniques based on quantitative approaches, which will help determine the exact capabilities of the subject in question. Daily tasks: Able to perform household duties. Need fewer adaptive aids in independent living. C7 Has similar movement as an individual with C6, with added ability to straighten his/her elbows. Mobility: Daily use of manual wheelchair. Can transfer with greater ease. Daily tasks: Can live independently without assistive devices in feeding, bathing, grooming, oral and facial hygiene, dressing, bladder management and bowel management. C8-T1 Has added strength and precision of fingers that result in limited or natural hand function Mobility: Uses manual wheelchair. Can transfer independently. Da ily tasks: Should be totally independent with all activities T2-T6 Has normal motor function in head, neck, shoulders, arms, hands and fingers. Has increased use of rib and chest muscles, or trunk control. Mobility: A few individuals are capable of limited walking with extensive bracing. This requires extremely high energy and puts stress on the upper body, offering no functional advantage. Can lead to damage of upper joints. Daily tasks: Able to perform unsupported seated activities T7-T12 Has added motor function from increased abdominal control Mobility: Same as above. L1-L5 Has additional return of motor movement in the hips and knees Mobility: Walking can be a viable function, with the help of specialized leg and ankle braces. Lower levels walk with greater ease with the help of assistive devices. S1-S5 Depending on level of injury, there are various degrees of return of voluntary bladder, bowel and sexual functions Mobility: Increased ability to walk with fewer or no supportive devices 20

PAGE 31

21 Chapter 3 Adaptive Driving Controls for the Disabled 3.1. Introduction This chapter discusses the need for adapti ve driving control for the disabled. It also describes the vehicle modification requ irements and standard procedure adopted by many specialists for vehicle modification for the disabled. Further it provides a list of primary and secondary driving controls, which are considered for modification. 3.2. Advanced Adaptive Driving Systems Adaptive driving controls are basically divided into two categories, primary and secondary controls [5]. Primary controls dire ctly affect the speed and position of the car (accelerator, brake, and steering wheel). Wh ile secondary controls consist of all other controls, which allow the car to be safely ope rated in normal traffic situations, including: gear selector, ignition/starter switch, turn indicator lever, hazard flasher, horn, wiper/washer, defroster control, mirror and headlight dimmer. Primary controls have been adapted in the U.S. since the 1940s, and mainly included mechanical extensions for the standard gas and brake pedals. The ad aptive controls ranged from good designs to extremely dangerous ones. Driving controls ha ve evolved and now include reduced effort steering, braking, and accelerating. Servomotor s have also been introduced and operate the car engine proportionally to the position of the adaptive control by a gain factor. Many times after an injury or illness, it may be necessary to relearn and adapt to driving (possibly using adaptations to the vehicle) before getting back on the road again. A wide variety of adaptive controls are avai lable for people who can no longer drive with standard gas and brake pedals. These range from hand controls or left-foot accelerators to highly sensitized low-effort steering and electronic ga s and brake hand controls.

PAGE 32

Other sets of controls have been designed for people with severe disability having limited strength and range of motion (example. C-4 or C-5 quadriplegia), allowing them to operate the automobile using a joystick [6]. Some of the existing adaptive driving systems designed and manufactured by various companies are listed below. All these systems are commercially available for installation in the vehicle and used by many people with disabilities for improved driving. 3.2.1. Creative Controls Incorporation (CCI) Creative Controls, Inc. (CCI) was founded over 30 years ago by Thomas Towers, President and CEO. CCI provides modified conventional vehicles that meet the specialized needs of physically challenged individuals, providing them with economical products and services of superior quality to meet their current and future mobility needs [30]. LogiTouch is an extraordinary new wireless control in operating a vehicle's secondary controls (switches). Logi'Touch Incorporates infrared technology to provide wireless control of many secondary functions. LTs wireless control is manufactured with two (2) systems. Starting from the basic nine (9)-function to the complete 12-function system: Figure 3.1. LogiTouch Wireless Control 9 Nine Function System (Left/Right Turn Signals, Horn, Head Light Dim, Hazard Lights, Delay and Low Wipe, Windshield Wash, and Flash-To-Pass). 22

PAGE 33

12 Twelve Function System (Add High Wipe and Rear Wipe/Wash or Cruise Set) Figure 3.2. C-Tech Memory Shift The C-Tech Memory Shift programmable power shifter delivers true, accurate shifts every time. It can be installed on just about any vehicle made. Its compact control panel allows for more choices in mounting. 3.2.2. Driving Aids Development Corporation (DADC) Driving Aids Development Corporation has invested years of research and development to create the patented DADC "500" hand control system. This type of hand control is available only from DADC, and its unique design is among the most advanced in adaptive driving technology today [9]. Figure 3.3. DADC Hand Control System 23

PAGE 34

Figure shows the DADCs push/twist "500" control. The goes from "idle" to full throttle is a mere 1/4 turn. The 500 installation is customizable. Here the throttle grip remains close to the wheel in a natural position, which reduces fatigue and increases comfort. 3.2.3. Electronic Mobility Controls, LLC EMC manufactures a variety of primary driving control options designed to operate the Gas, Brake & Steering controls of a motor vehicle [15]. They have developed a number of independent systems such as the popular EGB Electronic Gas & Brake, DS-2000 Digital Steering, and DIGIDRIVE Digital Joystick Driving Control. With the new AEVIT technology, more than ten different control input devices are available to meet your needs. Each of these different control inputs can be used in conjunction with the same control drive components and output servomotors to create a system tailored to your needs. The AEVIT primary driving control system provides a low-effort control solution for operation of the factory gas, brake, and steering controls. A variety of unique Figure 3.4. EMCs Gas/Brake Device interfaces to the control system are available and can be mounted nearly anywhere in the drivers area of the vehicle. AEVIT utilizes sophisticated microprocessor design and modern Control Area Networking to convert your mechanical input into motion by the 24

PAGE 35

25 powerful output servomotors. These servomotors are installe d to manipulate the factory gas and brake pedals, the factory steering column, or all three. 3.3. Vehicle Modification Modifications are made to subs ystems of certain vehicles for adaptation for drivers or passengers with disabilities. Subsystems in clude but are not limited to electrical, mechanical, control and display, and structural components. A Certified Driver Rehabilitation Specia lists (CDRS) performs comprehensive evaluations to identify the adaptive equipmen t most suited to the drivers needs [18]. A complete evaluation includes vision screeni ng and, in general, assesses the following: Muscle strength, flexibility, and range of motion. Coordination and reaction time. Judgment and decision making abilities. Ability to drive with adaptive equipment. The second portion of the evaluation occurs on the road in a vehicle provided by the facility. Should any adaptive equipment be required because of a clients physical deficits such as paralysis or impaired coordination, the evaluator will inst ruct the client in its use. The on-road portion of the evaluation is primarily a functional assessment. The evaluator assesses the clients vehicle operation skills such as the ability to maintain lane position, speed control, following distance etc. Cognitive issues are also assessed as they relate to safety. The evaluation may examine judgment a nd decision making in traffic situations, identification and reaction to hazardous situations, and how easily the person is distracted by conversation or by the driving environment. Once the subject has been eval uated and it is determined th at driving is an option, the Driver Rehabilitation Specialist may recomm end specific adaptive equipment enabling him/her to drive safely and efficiently. Some individuals may need no equipment at all in order to safely operate a vehicle. In most cases, persons with a brain inju ry who are able to drive will not need sophisticated adaptive equipment. In rare instances where an individual has a dual diagnosis, brain injury and spinal cord injury and is able to driv e, some sophisticated equipment may be required. According to many CDRS persons with a brain injury most

PAGE 36

26 frequently require little equipment, but ample training. This reflects the need to reacquaint with them with the driving process. In other cases, individuals may be plagued by weakness in an extremity, joint and limb fl exibility issues (tone), visual issues and overall mobility limitations. 6 Selecting a vehicle for modification re quires collaboration among the driver, the evaluator, and a qualified vehicle modificatio n dealer. U.S. based organizations such as the National Highway and Traffic Safety Ad ministration (N.H.T.S.A) and the National Mobility Equipment Dealers Association (N.M.E.D.A) are the primary regulation agencies where modifications are made to accommodate different disabilities. The 1990 National Health Interview Survey (NHIS-D) estimated 299,000 adaptive equipment users, while the 1994 and 1995 NHIS-D estimated 510,000, an increase of 211,000 users over a five-year period. In December of 1997, the National Highway Traffic Safety Administration (NHTSA) estimated the number of vehicles modified for people with disabilities to be 383,000. The number of vehicles with adaptive equipment is expected to continue to increase as the U.S. population ages and as access to employ ment, travel, and recr eation continues to improve for persons with disabilitie s, as a result of the ADA [19]. In 1997, NHTSA began soliciting information on potential safety issues for users of adaptive vehicle equipments through a webbased questionnaire. The questionnaire included some brief questions on the type of vehicle used, the specific equipment or modifications they made, and user opinions ab out the safety of the modified vehicle. A total of 398 respondents completed the quest ionnaire between May 1997 and November 2003. The results provided with insight into pot ential safety issues for adapted vehicles. The findings revealed that majority (293 or 74 percent) of respondents over the six-year period from 1997 to 2003 were drivers of adapted vehicles. Sixty respondents (15 percent) were passengers, and 41 responde nts (10 percent) were both. The most frequently adapted vehicles (see Table 3.1) we re cars (33 percent), vans (28 percent) and minivans (24percent). Respondent s were asked to rate their perceived level of safety when using their adapted vehicle. Ratings range d from 0 (Do not feel safe) to 5 (Feel Very Safe). More than eight out of ten (85 percent) drivers of adapted cars rated their

PAGE 37

perceived safe a 4 or 5 on the safety scale, compared to 60 percent of van users, and 71 percent of minivan users. Three out of four (75%) users of other types of vehicles (example. pickup trucks, sport utility vehicles (SUVs), and heavy trucks) rated their perceived safety as a 4 or 5 on the safety scale [3]. Table 3.1. Modified Vehicle Types and Vehicle Safety Ratings Vehicle Type Percent of Total Count Safety Rating of 4/5 Car 33% 130 85% Van 28% 110 60% Minivan 24% 97 71% Other Types 15 60 75% Pickup 6% 26 -------SUV 6% 23 -------Truck 2% 7 -------Other 1% 4 -------Respondents were asked to identify what types of modifications or adaptations they had made to their vehicles. They were given a list of 25 specific vehicle modification categories and could select as many as were applicable to their vehicle. The choices, listed in Table 3.2, ranged from modifications for the purposes of accommodating wheelchair users to vehicle control adaptations. 27

PAGE 38

Table 3.2. Types of Modifications and Vehicle Safety Ratings Type of Modification Percent of total Count Safety Rating Hand control 50% 200 80% Wheelchair securement 32% 127 63% Steering control device 38% 119 79% Automatic door opener 29% 114 66% Lift 27% 106 62% Dropped floor 23% 90 64% Modified safety belts 18% 73 70% Ramp 15% 59 61% Wheelchair or scooter hoist 14% 57 63% Modified switches, touch pads 13% 52 69% Drive from wheelchair 12% 46 63% Low effort steering 10% 40 75% Raised roof 10% 39 72% Low effort braking 9% 34 62% Remote ignition 8% 30 80% Zero effort steering 7% 28 71% Left foot accelerator 7% 27 85% Reduced diameter steering 6% 22 64% Joystick/other steering system 4% 16 75% Zero effort braking 4% 14 71% Horizontal steering 2% 9 56% Power assist hand control 2% 9 78% Other equipment 16% 63 75% 28

PAGE 39

3.4. Primary Controls Primary controls are controls for implementing the throttle, brake and steering inputs to the motor vehicle. Primary controls are the main controls in a vehicle. They consist of gas and brake systems along with steering systems. Devices such as mechanical hand controls, modified steering wheels, low/zero effort electronic and pneumatic steering wheels, low/zero effort electronic and pneumatic gas/brake devices, and 2 axes along with multiple axes electronic joysticks are also used as primary control modification devices [17]. Mechanical hand controls Assist devices Steering column and shaft extension Power steering modifications Power brake modifications Left foot accelerator and other pedal extensions Powered primary controls 3.4.1. Mechanical Hand Controls Mechanical hand controls are those devices that a person with a disability uses to operate the accelerator and service brakes of a vehicle. Figure 3.5. Sure Grip Mechanical Hand Control 29

PAGE 40

30 Ease back to accelerate; push forward to brak e [25]. Sure Grip fluid action and unique rocking motion allows full range braking a nd acceleration with minimal hand travel. 3.4.2. Assist Devices Assist devices are add-on devices for use with automotive steering wheels or other primary controls. They may be perman ently attached or may be designed for a quick disconnect for drivers who dont need it. Such devices are spinner knobs, C grip, U grip, tri-pin, ring type spinne rs, pin attachments, foot sti rrups and other designs. These devices are used by drivers with disabilities who require some assistance in gripping or operating a primary control. 3.4.3. Steering Column and Shaft Extension A steering column extension is any elonga tion of, addition to, or replacement of an OEM steering column. A steering shaft extension is any similar modification or replacement of the OEM shaft, including provisions for steering with the feet. 3.4.4. Power Steering Modifications Power steering modifications are any modifications, which are made to the hydraulic control mechanism of OEM power steering systems provided as original equipment to reduce the effort of steering. Ma ximum safety for driver s with disabilities, passengers, and the general public is of primary concern. These standards are limited to modifications for lowering the amount of driver effort required to operate the steering system, which retain a steering wheel and the OEM mechanical steering systems for steering control, with unchanged steering gearbox ratio, including additional equipment which is installed to provide required redundancy for back-up/emergency operation. Power Brake modifications are a special cla ss of automotive assisted equipment which consists of modifications to the vacuum actuated power booster of stock power brake systems provided as original equipment to lowe r the amount of driver effort required to operate the brakes. These standards are lim ited to modifications which retain the OEM brake pedal and associated linkage, the master cylinder and all plumbing down to and

PAGE 41

including the brake wheel cylinders or actuators, including additional equipment which is installed to provide needed redundancy for backup/emergency operation. 3.4.5. Power Brake Modifications Power Brake modifications are a special class of automotive assisted equipment which consists of modifications to the vacuum actuated power booster of stock power brake systems provided as original equipment to lower the amount of driver effort required to operate the brakes. These standards are limited to modifications which retain the OEM brake pedal and associated linkage, the master cylinder and all plumbing down to and including the brake wheel cylinders or actuators, including additional equipment which is installed to provide needed redundancy for backup/emergency operation. 3.4.6. Left Foot Accelerator and Other Pedal Extensions Left foot accelerators are devices, which are added to the accelerator pedal to enable a driver who has lost function or mobility of their right leg to operate the accelerator pedal with the left foot. Other types of pedal extensions may be blocks attached to pedal surfaces, levers with pedals designed to bring foot operation of the OEM pedals (accelerator, brake, clutch, or parking brake pedal) within the leg range of motion, or other similar devices. Figure 3.6. Brake and Gas Pedal Extensions 31

PAGE 42

32 3.4.7. Powered Primary Controls Powered primary controls are add-on or replacement controls for accelerator, brake or steering (including combinations of an y or all of these), which are designed to supplement by power, other than by the driver's own muscular efforts, the force output of the driver. Powered primary controls are requir ed when there is lack of strength, range of motion, and/or loss of functions. Powered pr imary controls should be servo controls because provision of a feedback loop rende rs the behavior of the control system substantially similar to a non-powered system. They differ only in the amount of effort required to affect a contro l input, direction, amount of motion, and limb used. Any powered control which is open loop and depend s on the driver, friction, inertia, vehicle dynamics or any other indirect means to limit or modify control system output in order to achieve the control setting desired by the driver is not a servo control. 3.5. Secondary Controls Secondary controls are any devices that accept a control input from a driver for the purpose of operating the subsystems of the motor vehicle, other than those associated with the primary control of steering, accelerator (velocity command), and brake. The classification of secondary controls is not i ndicative of a lack of importance or safety [17]. There are three classes of secondary controls. Mode A controls are co ntrols that must be accessible to the driver while mainta ining control of vehicl e steering, accelerator, and brake with the vehicle in motion. Mode B controls are those wh ich are accessible to the driver maintaining control of the brake function, while th e vehicle is not in motion. Mode C controls are any secondary controls no t classified as Mode A or Mode B. Mode C controls are those accessible to the driver wh en the vehicle is stati onary, i.e., parked or not in the traffic stream. If desired and f easible, Mode B or C controls may be upgraded to Mode B or Mode A, but these contro ls should not be downgraded from their classification. Mode A Controls CRUISE CONTROL HEADLAMP BEAM SELECTOR

PAGE 43

33 HORN TURN SIGNALS WINDSHIELD WASHER/MOMENTARY WIPE Mode B Controls TRANSMISSION HVAC EXTERIOR LAMPS WINDSHIELD WIPERS PARKING BRAKE Mode C Controls IGNITION AND ENGINE START SEAT CONTROLS POWER WINDOWS DOOR LOCKS CRUISE CONTROL "ON" HAZARD FLASHERS INTERIOR LAMPS MIRRORS REAR ACCESSORIES These standards are limited to adaptive extens ions, relocations of c ontrols to a position within reach of a driver with a disability, or to devices, which accept an input from a driver and translate that input into an actuation of one of the subsystems identified above. The input must be by means of m ovements of a member or members of the driver's body, or by voice command.

PAGE 44

34 3.6. Access Devices Access devices consist of all the necessa ry devices that help disabled persons access a vehicle. These devices include automatic wheel chairs, semi-automatic wheelchair lifts, exterior access device contro ls, automatic door openers, ramps, personal lifting devices, steps, and assist handles. Access devices are designed to accommodate the independent or aided entr y (ingress) and exit (egress) of the adapted or modified vehicle by a person w ith a disability. Automatic Wheelchair Lifts Semi Automatic Wheelchair Lifts Exterior Access Device Controls Automatic Door Openers Ramps Personal Lift Devices Steps Assist Handles 3.6.1. Automatic Wheelchair Lifts Automatic wheelchair lifts include a vari ety of electric powered mechanical and hydraulic systems used to raise or lower a person in a wheeled mobility aid from one level to another. They are classified by lo cation in the vehicle (s ide or rear), by power transfer method (example. hydraulic, electr o-mechanical, or others) and by design (platform or rotary). An automatic wheelch air lift permits a person with a disability using a wheeled mobility aid, such as a wheelchai r, to enter and exit a motor vehicle in or on their mobility aid without assistance.

PAGE 45

Figure 3.7. Mini Hoist Electric Scooter Lift The Mini Hoist 30 is extremely versatile and can be used for lifting into any boot, hatchback or estate car [26]. It is simple to fit and when not in use can be folded down or the lifting arm removed. It has been designed to exactly fit any vehicle, since the lifting arm is cut to length when fitted. The Mini Hoist runs from the car battery and can also lift manual wheelchairs into cars. 3.6.2. Semi Automatic Wheelchair Lifts Semi-automatic wheelchair lifts include a variety of electric powered, mechanical, and hydraulic systems used to raise or lower a person in a wheeled mobility aid from one level to another. They are classified by location in the vehicle (side or rear), by power transfer method (example, hydraulic, electro-mechanical, or others), and design (platform or rotary). A semi-automatic lift is designed to be operated by a person who is not being raised or lowered by the lift, example, an attendant, and is not suitable for independent drivers who have a disability. 35

PAGE 46

Figure 3.8. Gentle Giant Semi-Automatic Platform Lift The platform is bi-folding which allows the unit to remain very compact giving ease of handling and good vision through the rear window of the van [27]. This unit also features a world first safety barrier. The unique barrier prevents a wheelchair leaving the vehicle when the lift platform has been lowered below the vehicle floor level. 3.6.3. Exterior Access Device Controls An exterior access device control is any control device mounted on the exterior of a vehicle, which is designed to operate doors, lifts, or power ramps by an independent driver while he or she is outside the vehicle. They control such operations as: lift door open/close deploying/stowing of lift platform or ramp up/down operation of lift platform, ramp, or other adaptive devices that may be necessary for the particular operation. 36

PAGE 47

3.6.4. Automatic Door Openers Automatic door openers are any powered device, which opens and closes vehicle doors to enable independent drivers access to the vehicle. Automatic door openers have a provision to prevent physical damage and door closure when lift or ramp is unfolded or extended. On sliding doors, if a chain or cable is used, the chain or cables have a guard installed to prevent slap, wear, vehicle damage, or hazard to vehicle occupants. Automatic lighting is installed in conjunction with automatic power doors to illuminate the lowest lift platform position when the automatic doors are opened. Automatic interior lights go on when door is opened and shut off when door is closed. Mechanisms are enclosed to the extent feasible to prevent dirt and moisture contamination of working parts and subsequent premature failure. Mechanisms are enclosed or guarded if they present a hazard to vehicle occupants while vehicle is in motion. Automatic door openers have interior emergency quick-release mechanisms in case of power failure or malfunction. The quick release mechanism permits opening and closing of doors by another person. 3.6.5. Ramps Ramps are inclined planes that are for the primary purpose of permitting an occupant in a wheeled mobility aid to enter or exit a motor vehicle. Ramps may be Figure 3.9. Wheelchair Ramp 37

PAGE 48

permanently installed in or on the sill of a vehicle door and stowed in a retracted position when not in use, or they may be detachable and stored at some location in or on the vehicle when not in use. Ramps may be deployed by mechanical and/or electrical means or may be placed in position by an attendant. 3.6.6. Personal Lift Devices Personal lift devices are powered units that transport a person who has a disability from street level into the interior of a motor vehicle and return to the surface, but are not wheelchair lifts Figure 3.10. Milford Aluminum Electric Person Lift The Milford person lift figure has been specially designed for lifting people from their wheelchair into a vehicle and out again [26]. 3.6.7. Steps Steps are provided with a nonskid surface. They are affixed to the vehicle to withstand 220 lbs. of downward load without permanent deformation or separation from the vehicle structure. The addition of steps to a vehicle should not increase the maximum width of that vehicle (including side mirrors) [21]. 38

PAGE 49

Figure 3.11. Motorized Step for a Full Size Van 3.6.8. Assist Handles Figure 3.12. Standard Assist Handle used in Vehicles Assist handles are handgrips provided for the purpose of aiding a person with a disability in transferring from one location to another. 39

PAGE 50

40 Chapter 4 PHANTOM Haptic Device and the AEVIT Driving Control System 4.1. Introduction In the last chapter we discussed the need for advanced adaptive driving controls. We also described some existing adaptive driv ing controls for the disabled and how they are incorporated into the driving envi ronment through vehicle modifications. This chapter describes one such adaptive driving system, which is currently in use for modified driving by persons with disabili ties. It is known as the AEVIT (Advanced Electronic Vehicle Interface Technology) driv ing control system manufactured by EMC (Electronic Mobility Controls), LLC [15]. Al so this chapter provide s a description of a six-degree of freedom force feedback P HANTOM haptic device [12]. The AEVIT driving system and the PHANTOM haptic device are connected through an interface. This interface makes it possible for the PHAN TOM to simulate and control the input devices (DS-2000 steering input device, Electr onic Gas and Brake device) of the AEVIT system. Further quantitative tests can be de veloped using the PHANTOM haptic device for the AEVIT driving system. The purpose for this test is to be able to quantitatively assess the adaptive driving control system using the PHANTOM haptic device. By quantitative assessment it means that certain parameters of the subject such as force input, range of motion, optimum positioning of the device etc can be measured. These parameters cannot be measured or known with qualitative da ta gathered during on road evaluation of the disabled subject. The qua ntitative data provides better assessment of the subjects ability to operate the input devices of the ad aptive driving control system. The intention of this thesis is to obtai n quantitative data (force input, optimum positioning) using the PHANTOM haptic device for the Gas/Brake input device of the AEVIT driving control system. An experiment al method is developed which is used to assess and obtain quantitativ e data of the subject, which helps in determining his

PAGE 51

capability to operate the input devices of the AEVIT driving control system. Chapter 5 includes the description of the interface established between the PHANTOM and AEVIT system. Also it comprises of the description of the experiments used to collect quantitative data of the subject. Further, Chapter 5 provides data analysis and the conclusions based on the data obtained. 4.2. Description of PHANTOM Device The PHANTOM is a haptic device developed by MIT in 1993 and produced at SensAble Technologies [1]. This device has a compact design that requires a small workspace. The PHANTOM or Personalized Haptic Interface Mechanism is small enough to be operated comfortably on a desktop. The manipulandum utilized by this device is either the stylus or a thimble. There are currently 5 different models for this device. Figure 4.1. PHANTOM Haptic Device by Sensable Technologies Inc The interface of PHANTOM with C++ allows for the generation of force feedback effects such as collisions, effects, force fields, torque, and inertia. PHANTOM handles graphics through OpenGL (Open Graphics Library). A graphical scene is represented by a number of transformations that are accumulated vertically, starting with a root, or parent, and moving down to branches, or children [36]. The PHANTOM is an 41

PAGE 52

42 electromechanical device that was originally developed to handle both force and motion. Not only does this device handle force and mo tion, but it also interprets the geometry of objects as well as the layout of objects in virtual space. Curr ently, more research is being done to add other elements of touch to the device. The PHANTOM is a full duplex device, because it allows the user to manipulat e virtual objects as they get feedback from the virtual environment. In addition this haptic device works in real-time providing precise timing of user-environment feedback. The PHANTOM is said to have 6 degrees of freedom (DOF) which include x, y, z, roll, pitch, and yaw. However, force feedback from the device is limited to the 3 motors it utilizes causing force only in the x, y, and z dimensions. When the PHANTOM was first designed there were several design criteria. First the device was made to feel like it was fr ee floating in virtual space. To create this attribute the device was made for users to f eel a minimal amount of inertia and friction. Another design criterion was th e users were to have the perception of stiffness when manipulating objects. A virtual object can be seen more realistically if the user can feel the surface of the object. The third criterion wa s that there had to be the perception of solid and immovable walls. To creat e this perception the PHANTOM would have to apply the user the normal for ce of the wall. The normal for ce is equal and opposite to the user's force. Despite the many successes and applications of the PHANTOM the device also has some problems and limitations. Currently, there are no standard s for control, and configuration of haptic devices. This means that there is very little software available for the device; hence the use of a haptic interf ace usually requires the development of new software. The PHANTOM is fairly expensive which limits those who can take advantage of the device. The degrees of fr eedom are limited because of the stylus and thimble manipulandum that is used. Also th e processing power required to perform the functions required by a particular user action may cause the system to lag if the user tries to work too quickly.

PAGE 53

43 4.3. The GHOST Software Development Kit The GHOST SDK (General Haptics Open Software Development Toolkit) is product of the SensAble Technologies Inc. (STI) [12]. Th e GHOST SDK guide introduces application devel opers to the GHOST SDK, an object oriented 3D haptic toolkit used with SensAble Technologies PHANTOM haptic in terfaces [36]. The GHOST SDK is a C++ library of objects and methods used for developing interactive, three-dimensional, touch-enabled environments The haptic environment is represented as a hierarchical collection of these ge ometric objects and spatial effects. The GHOST SDK toolkit provides the application develo pers to generate haptic scenes, manipulation of the properties of the scene and objects within the scene, and control of the resulting effects on or by one or more haptic interaction devices. It supports the entire family of STI PHANTOM haptic interface devices. Key features of the GHOST SDK include the ability to Model haptic environments using a hierarchical haptic scene graph. Haptically render disparate geometric models within the same scene graph. Specify the surface properties (for example, compliance and friction) of the geometric models. Use behavioral nodes that can encapsulate either stereoty pical behaviors or full free body dynamics.

PAGE 54

gstnode gstTransform gstBoundedHapticObject g stSha p e g stBoundar y g stForceField g stConstantForceField gstCone gstCube gstCylinder gstPHANTOM_SCP gstSphere gstTorus gstTriPolyMeshHaptic g stBoundar y Cube g stSe p arato r g stD y namic gstDial gstButton gstSlider gstPHANTOM gstRigidBody gstDynamic gstPHANTOMTranslation gstInertiaEffect gstBuzzEfffect gstConstraint g stTriPol y MeshBase g stEffec t g stMani p ulato r g stPlane g stTriPlo y Base g stTriPol y g stS p atialPartition g stBinTree g stTriPol y Mesh gstSpatialObject gstTranslateManip gstScaleManip gstRotateManip Figure 4.2. The GHOST SDK Class Trees The GHOST Application Programming Interface (API) [37] enables application developers to interact with haptic interaction devices and create haptic environments at the object or effects level. Using the GHOST SDK, developers can specify object geometry and properties, or global haptic effects, using a haptic scene graph. A scene graph is a hierarchical collection (tree) of nodes. The internal nodes of the tree provide a 44

PAGE 55

45 means for grouping objects, orienting and scali ng the subtree relative to the parent node, and adding dynamic properties to their subtrees [36]. The terminal nodes (leaves) of the tree represent actual geometri es or interfaces. Leaves also contain an orientation and scale relative to their parent nodes. The terminus of the haptic interaction device is represented as a point within the scene graph. The GHOST SDK automatically computes the interaction forces between this point and objects or effect s within the scene, and sends forces to the haptic intera ction device for display. Appli cations can treat the haptic interaction point using the GHOST SDK as either 1) the physical location of the haptic interaction device terminus within its physical workspace, or 2) the computed location of the interaction point constrai ned to the surface of geomet ric objects. The latter point position is known as the Surface Contact Point (SCP). The SCP is used to generate all GHOST SDK surface interaction forces. The GHOST SDK classes are organized into nine major class groupings including data t ypes. Figure 4.2 shows the class trees of the GHOST SDK. 4.4. The AEVIT Driving System The AEVIT System (Advanced Electronic Interface Technology) is a product of Electronic Mobility Controls, LLC (EMC) [15]. EMC manufact ures a variety of primary driving control options designed to operate th e Gas, Brake & Steering controls of a motor vehicle. It basically combines the primary driving control devices, the DS-2000 (steering wheel), the EGB (Gas/Brake), and the DIGI DRIVE (joystick) into one single control system, AEVIT. The AEVIT system has more than ten input devices available to meet different user-needs and capabilities, thus maki ng it an easier alternative for operating the factory installed steering, brake and gas controls [11]. The AEVIT primary driving control system provides a low-effort control solution for operation of the factory gas, brake, and steeri ng control. Each of the different control inputs can be used in conjunction with the same control drive and output servomotor The two servomotors, one for the gas and brake device and the other for the steering device, require one dedicated drive module for control. Th ese servomotors convert the

PAGE 56

mechanical input into motion using a microprocessor design and modern control area networking. Steering Servomotor Gas/Brake Servomotor INPUT INPUT CAN BUS Information Center Vehicle Interface EMC AEVIT VEHICLE INTERFACE VEHICLE S IMULAT O Vehicle Signals Drive Module POWE R POWER TRANSFER Drive Module MOTO R ENCODER MOTOR ENCODER In p ut Devices CAN BUS CAN BUS POWE R Figure 4.3. The AEVIT System Layout 46

PAGE 57

4.4.1. Information Center The information center is a small touchpad that provides constant information to the driver regarding the systems current status [11]. It also provides calibration and diagnostic information. The information center, or Info-Center for short, has a four-line crystal liquid display that exhibits high intensity characters that are easy to read. One feature of the Info-Center is that the display reduces the intensity when the lights are turned ON for night driving to make it easier to read in the dark. There are four lighted, low-effort switched on the info-center. Each tactile switch illuminates when the vehicle lights are turned ON to provide easy to see targets during night driving. The connections to the Info-Center are simple. The CAN Bus port is the only port that will be connected to the AEVIT touchpad. The other port is used to download diagnostic information and upload software if needed. Figure 4.4. AEVITs Information Center 4.4.2. Vehicle Interface Module The Vehicle Interface Module is the component that connects AEVIT electronically to the vehicle. There are many ports on the interface module. The two CAN BUS ports provide an input and an output for data [11]. 47

PAGE 58

Accelerator Release Vehicle Parking Serial Port Figure 4.5. Rearview of Vehicle Interface Module The system activation switch (SA) is used to disable AEVIT for able-body use. The vehicle port contains the wires for the coil and speed signals, the remote off switch, the steering servomotor engage switch, and the park light input for the dimmer circuit of the touchpad. The CL port accepts the accelerator clutch (ACC/CL) harness that is exiting the Gas/Brake Servomotor. AEVIT supplies and removes power to the Accelerator Release Mechanism when certain conditions are met. A unique feature of the Accelerator Release Mechanism is that if AEVIT detects that the drive arm of the gas/brake servomotors is not in the center position, the clutch automatically engages in an instant. The Parking Brake output port is to be connected to the input port of the EMC Park Brake interface. The final connection is the POWER input. The Power transfer cable coming from the drive module will connect to this port giving the 12V dc power it needs to operate. 4.4.3. Drive Module Each AEVIT Drive Module provides the power and information to the servomotors to produce the mechanical outputs for the gas/brake and steering [11]. All the drive modules have the capability to operate the gas/brake system or the steering system. For instance if you plug in the steering input device into the drive module, it detects for the steering input device and is ready to output the steering information. If you unplug the steering device and plug in the gas/brake input device instead into the drive 48

PAGE 59

module, it will reconfigure itself to output the gas/brake information. It should be noted that when connecting the drive modules the steering motor power cable and the steering encoder must be connected to the same drive module as the steering input device and the same goes for the gas/brake input device. Each drive module has one motor port, which sends power to the servomotor, one encoder port that sends and receives servomotor positioning information, one input device port that receives the user input data, and two power ports that help create the system Power Bus. Motor Power Encode r Input Device Figure 4.6. Rearview of the Drive Module The backside of the drive module has two CAN BUS connectors. These ports will bring the CAN BUS signals into each unit and send it on down the line to the next device. These ports are to match up to the cables coming from the Info-Center, Vehicle Interface Module, and the other Drive Module. The AEVIT System drive modules are packed with multiple microprocessors, integrated circuits, surge suppression devices, power transfer connections and many more electronic components. This generates a lot of heat when the system is in operation. There are two sets of large heat sink fins on each of the drive modules. The cool air sucked from the front of the vehicle passes through these fins and keeps the system cool. 4.4.4. Input Devices Input devices include a multi-axes joystick, a modified steering wheel, and a gas/brake lever. They are connected to two driving modules that transform the incoming analog signal, ranging from 0.5 to 4.5 volts (determined using an oscilloscope), into a digital one [10]. The information is then sent to the interface module that processes the 49

PAGE 60

signal using the CAN Bus. The multi-axis joystick is designed to control both steering and gas/brake. It has a maximum deflection of 30 degrees in each direction [15]. Figure 4.7. Digital Joystick of the AEVIT System Moving the joystick left and right controls steering. Figure 4.8 shows different areas used as control bands to provide better steering control. A dead-band exists within 15 degrees from either side of the center. The wheels do not move when the joystick is within this region. The dead-band is constituted of a centering band and a holding band. The centering band is a region of about 5 degrees on either side of the center. The joystick can move within the centering band without any motion translated to the wheels. This provides an added control when going straight down the road, which constitutes the majority of driving. Furthermore, if the stick is displaced and then released, it will automatically return to the centering band. When a turn is required, the joystick needs to be held in a region of about 10 degrees outside the dead-band, which is called the motion band. Once the wheels begin to turn, the rate of reaction can be varied by moving the joystick further away from the center. Holding the wheels in a particular direction requires the user to bring the joystick from the motion band back to the holding band. The DS-2000 Digital Steering System is an electro-mechanical steering device designed for differentially abled drivers with either a limited range of motion or limited strength 50

PAGE 61

[15]. The system translates an input to a remotely located, low effort steering module into motion of a servomotor attached to the factory steering column. Figure 4.8. Joystick Control Steering Bands Figure 4.9. The DS-2000 Steering Wheel Two mirror image microprocessors located inside of the CPU portion of the system constantly monitor all output in relation to input. The steering module consists of a miniature steering wheel of six inches diameter to ensure safe and reliable operation. The force required to rotate the steering wheel is preset by the EMC to be 8 to 10 oz [11]. The number of lock-to-lock turns on the DS-2000 is larger than the one existing on the original steering wheel. The reason for this is to produce the same level of control on both steering systems. Table 4.1 shows the lock-to-lock turns existing in the DS-2000 and in regular car steering [10]. 51

PAGE 62

Table 4.1. Lock-to-Lock Turns in Both the DS-2000 and Regular Steering Regular lock-to-lock steering DS-2000 lock-to-lock steering 2 6 1/2 The DS-2000, however, does not operate through the last half turn on each side. This implies that a ratio of 2:1 exists between the modified steering wheel and the car steering column. It is also important to notice that a 90 degree turn taken between and 1 turns of the regular steering wheel depending on the curvature, which means that lock-to-lock maneuvers are hardly used on the road. As a matter of fact, most of the lock-to-lock maneuvers happen during parking. The DS-2000 is combined with a 1-axis joystick called the Electronic Gas and Brake device (EGB), which controls Gas/Brake through a single servomotor [10]. Figure 4.10. Electronic Gas and Brake Device Figure 4.10 shows the Electronic gas/brake of the AEVIT system The Gas/Brake lever has a maximum deflection of 30 degrees in each direction. This requires the driver to use both hands, which limits the number of disabilities this combination could accommodate. Furthermore, the EGB could only be used in motor vehicles equipped with an automatic transmission and power brakes. 52

PAGE 63

53 Chapter 5 Simulation and Experiments 5.1. Introduction This chapter begins with the stiffness parameter determination experiment. As mentioned earlier the experiment for gas/brak e simulation gathers data in terms of force input of the subject using th e PHANTOM. The stiffness para meter induces a resistance in the PHANTOM. This resistance in the PHANTOM results in a force felt or applied by the user and also measures the amount of force exerted. Hence it is necessary to determine a safe range of the stiffness parameter for the PHANTOM device so that the forces measured are appropriate and valid and do not damage the PHANTOM motors. The next section describes the stiffness para meter determination experiment and how the stiffness parameter is used to measure th e force input of the user by the PHANTOM device using a force equation In the last chapter we discussed the purpose and objective to integrate the PHANTOM haptic device and the AEVIT driv ing system. This chapter provides the description of how the interface is estab lished between the two and the parameters involved in achieving the same. Further it provides the methodology of the experiment used to obtain the quantitative data for th e simulated gas/brake device of the AEVIT system using the PHANTOM haptic device. As mentioned earlier the quantitative data obtained is used for determining the capability of the subject to opera te the input devices of the AEVIT driving system. This provides better assessment of the subject for the specific adaptive input device und er consideration in addition to the qualitative analysis during on road evaluation, which lacks in obt aining quantitative data. The approach to quantitative assessment starts with the simula tion of the gas/brake device of the AEVIT system using the PHANTOM. Then the gas/ brake experiment is conducted using the PHANTOM to gather quantitative data fo r the gas/brake device. The experiment

PAGE 64

54 performed takes into consideration the range of motion of the gas/brake operation. It also considers different positions of the gas/br ake device within the range of motion. These positions provide a wider set of data over a fixed amount of space. The data gathered is the force input (newtons) of the subject under consideration. Further this chapter explains the results obtained from the experiment in terms of plots generated in the data analysis section of the chapter. The last section of the chapter includes the summary of the complete results obtained. Conclusions derive d from the results state the optimum force measured for the subject and thus the op timum position of th e gas/brake device. 5.2. Stiffness Parameter Determination Experiment The GHOST Software Development Toolkit (SDK), available with the PHANTOM is used to determine the subjects strength at different data points in a limited space. The PHANTOM device doesnt meas ures the force directly from the user unless it is programmed using the GHOST software in such a way that the program gives a direct output of the for ce value exerted by the user. In order to measure the strength or the for ce in newtons exerted by the user of the PHANTOM device it is requir ed that a force equation be used. This force equation measures the force in newtons and the displace ment in mm. The force is modeled using a spring model F = -k.x where, F is the force in Newtons k is stiffness parameter in ( N/mm) x is the deflection of th e PHANTOM stylus in mm In the above equation the values of the stiffness parameter plays a very important role. After setting the stylus of the PHANTOM at a desired position, the subject or the user is instructed to apply a force in a particul ar direction, say positive x direction. This displacement in the x direction times the value of the stiffness parameter k measures the force exerted. All the forces measured in this way are stored in a separate text file, which is called in the same program.

PAGE 65

55 In the experiments done in the past to measur e the strength of the subject the value of k was arbitrarily set in the range of 5 and 15 mm/N. This results in a wide range of forces measured for the same strength input of th e user. For example if the user achieves a displacement of 10 mm of the PHANTOM stylus, the force out put will change drastically if the value of k is changed between 5 and 15 mm/N. This m eans that the force output of the user is not accurately know n for the same displacement. Therefore it was essential to determine an approximate safe value of the stiffness parameter k, so that the forces measured will lie in a safe range and will be more accurate. The same value of the experimentally measured k can be used for any other experiment involving strength measurement tasks. 5.2.1. Stiffness Parameter Formulation The experiment to measure the stiffne ss parameter k for the PHANTOM device was done using a spring scale. The PHANTOM was restricted to a poin t in space so that it cannot move in any of the six directions (x, -x, y, -y, z, -z). For this an initial value of the stiffness parameter was set at 5.5 mm/N. The PHANTOM stylus was fixed at the end of the hook of the spring scale. The stylus was moved along the x-axis and the line of the scale to the maximum. The corresponding read ing on the spring scale was noted as x (cm). The stiffness parameter k is calculate d using equation 1. Now using this value of the stiffness parameter as the initial value fo r the next iteration the same procedure was repeated. The experiment was performed until the initial value of k matched with the calculated value. The following iterations represent the manner in which the experiment was performed. Iteration 1: Initially, the value of k o was set to 5.5 mm/N. k.x = k.x o + F (1) where, x is the distance (cm) moved along the scale by the stylus. x o is the initial distance (cm) at equilibrium position.

PAGE 66

56 F is the force exerted in N. k i is inverse of stiffness parameter (mm/N) Using equation 1, k. (2.8 cm) = k. (0.3 cm) + 9.8 N k = 3.92 N/cm or 0.392 N/mm k i = 2.55 mm/N Iteration 2: Now with k o = k i = 2.55 mm/N x = 2.5 cm k.(2.5) = k. (0.3) + 9.8 we get, k = 4.45 N/cm or 0.445 N/mm k i = 2.25 mm/N Iteration 3: Now with k o = k i = 2.25 mm/N x = 2.4 cm k.(2.4) = k. (0.3) + 9.8 we get, k = 4.66 N/cm or 0.466 N/mm k i = 2.15 mm/N Iteration 4: Now with k o = k i = 2.15 mm/N x = 2.3 cm k.(2.3) = k. (0.3) + 9.8

PAGE 67

57 we get, k = 4.90 N/cm or 0.490 N/mm k i = 2.05 mm/N Now with k o = k i = 2.05 mm/N, the next iteration results in the same value of the stiffness parameter k as 0.490 N/mm. Therefore the final value of k based on the four iterations is 0.490 N/mm. This value of k is experimentally determined and hence represents the safe value for the operation of PHANTOM device. 5.3. Steering Strength Test In the past, experiments have been performed on the steering device of the AEVIT system using the PHANTOM haptic devi ce [10].The Steering St rength test is an experiment used to determine the strength applied by the subject s upper limbs. This experiment comprises of a wooden board, whic h is used as a reference x-y plane. The wooden board is marked with a gr id of data points. Each data point is represented by its own co-ordinates x, y and z. The experime nt was conducted in such a way that the strength input of the subject is measured at each of these points at three different levels on the z-axis i.e. z = 0, z = 10cm, and z = 20 cm. The following diagrams provide a graphical representation of the experiment. In the above article the inverse stiffness parameter was determined experimentally and the final value was found to be 2.05 mm/N. Th e experiments performed in the past have used an arbitrary value of stiffness parame ter. The force density plots shown in the following figures are obtained using the experi mental value of the stiffness parameter as opposed to the force density plots obtained in the past using the arbitrary value. This provides with a more accurate range of force values. A description of each figure is provided further and compared with previous results of the forces.

PAGE 68

58 0 10 20 30 0 10 20 30 0 5 10 15 20 25 30 cm Figure 5.1. Force Density Plot at Z= 0 from the Reference Frame In the above figure 5.1 the dark spheres represent the force ranges. At each data point the forces are measured in six different directions (x, -x, y, -y, z, -z). Each sphere represents the average force of the six different forces measured at each data point. As seen from the above figure all the forces measured fall in the range of 3 newtons to 9 newtons. The low effort steering is the force interval between 9 newtons to 3 newtons and the zero effort steering lies between 3 newtons to 1 newtons force interval. Figure 5.1 shows that all the forces uniformly fall in a range that is suitable for the subject to operate a low effort steering. The previous results showed some data points good for low effort steering and some points good for zero effort steering. This makes it indecisive for the subject and the experimenter to determine which type of steering wheel would be best suited for the subject. If the subject is prescribed to use a low effort steering considering the majority of data points at z = 0 plane, there were still few data points which fall below the low effort range thus rendering the subject incapable of steering within a certain range of motion. cm Force range (9N-3N) Force range ( 3N-1N) Force range (<1N) cm X cm Y cm Z cm Force density spheres

PAGE 69

Therefore with the more precise value of the stiffness parameter it proves that the force range measured for the subject are more accurate and valid and a low effort steering would be most suitable within his complete range of motion. The following figure 5.2 shows the new set of force data at z = 10 cm. 59 0 10 20 30 0 10 20 30 0 5 10 15 20 25 30 In figure 5.2, again the average forces measured at majority of the data point fall in the range good for low effort steering. Therefore it can be concluded that between planes Z = 0 and Z = 10 cm, the subject would be able to comfortably operate a low effort steering wheel. cm cm cm Force range (9N-3N) Force range ( 3N-1N) Force range (<1N) Z cm Y cm X c m Figure 5.2. Force Density Plot at Z= 10 cm from the Reference Frame

PAGE 70

60 0 10 20 30 0 10 20 30 0 5 10 15 20 25 30 cm Force range Figure 5.3. Force Density Plot at Z= 20 cm from the Reference Frame Figure 5.3 shows that majority of the data points fall in the force range of 3 to 1 N at Z = 20 cm plane. This means that the subject will be able to drive a zero effort steering at plane Z = 20 cm and not a low effort steering. It can be concluded that as we go higher the ability of the subject to apply force decreases and beyond Z = 10 cm the subject cannot produce sufficient force to operate a low effort steering wheel. 5.4. Gas and Brake Simulation The gas and brake device of the AEVIT driving control system is simulated with the PHANTOM haptic device. Every input device of the AEVIT driving system is connected to the drive module with a 12 pin cable connector. The EMCs vehicle interface component is connected to the 12-volt battery, which supplies the power to the system. All the input devices can be turned on through the switches on the vehicle interface. Once this is done, the system needs to be booted. This procedure is simple; the display of the information center shows the instructions to be followed to boot the cm (3N-1N) Force range (<1N) Z c m cm Y c m X c m

PAGE 71

steering and the gas/brake. For the steering device the wheel has to be rotated a number of turns both clockwise and counter-clockwise until the message on the display shows Steering Ok. This is followed by the booting of the gas and brake device. The lever of the gas and brake has to be extended to the maximum gas then back to the center and then to maximum brake position. After this procedure is completed the display shows Gas/Brake Ok message. The booting process ensures that the devices are sending the right signals and voltages between them and the drive module and eventually to their respective servomotors. The voltage at each of the 12 pins (Figure 5.4) at the end of the input device cable, which connects in the slot on the drive module, is measured with respect to the ground (pin 1). 4 8 12 3 7 11 2 6 10 1 5 9 Figure 5.4. Evaluator Cable 12 Pins For the gas and brake device the voltages measured are at the extreme gas, neutral and extreme brake positions (Table 5.1). For the steering device the positions are the extreme left position, center and extreme right position of the steering wheel (Table 5.2). The voltages at the 12 pins of the cable of each device are measured at each of these positions. From tables 5.1 and 5.2 it is seen that the voltages at all the pins but 2, 5 and 8 remains constant for any of the three positions. In both the cases the three pins 2, 5 and 8 output a voltage ranging approximately from 0 to 5V for both the devices. This means that these 61

PAGE 72

three pins are responsible to control the motion of the servomotors of the gas/brake and steering device. Therefore pins 2, 5 and 8 of the evaluator cable are connected to the output of the PWM circuit of the PHANTOM-AEVIT interface, which converts the 5VDC voltage incoming from the PHANTOM to 0.5V to 4.5V analog output. Pins 2, 5 and 8 called the wiper pins are blue, purple and red respectively. Table 5.1. Gas/Brake Voltage Values (Volts) Pins Neutral Position Full Gas Full Brake 1-2 -2.463 -0.463 -4.4 1-3 -4.97 -4.97 -4.97 1-4 0.016 0.016 0.016 1-5 -2.439 -0.407 -4.46 1-6 -4.97 -4.97 -4.97 1-7 -0.017 -0.017 -0.017 1-8 -2.537 -0.38 -4.53 1-9 -4.98 -4.98 -4.98 1-10 -4.01 -4.01 -4.01 1-11 -4.98 -4.98 -4.98 1-12 -4.98 -4.98 -4.98 62

PAGE 73

Table 5.2. Steering Voltage Values (Volts) Pins Neutral Position Right Left 1-2 -2.56 -0.303 -4.55 1-3 -5.00 -5.00 -5.00 1-4 -0.027 -0.027 -0.027 1-5 -2.566 -0.341 -4.56 1-6 -5.00 -5.00 -5.00 1-7 -0.020 -0.003 -0.02 1-8 -2.583 -0.331 -4.56 1-9 -5.00 -5.00 -5.00 1-10 -1.107 -1.107 -1.107 1-11 -5.00 -5.00 -5.00 1-12 -5.00 -5.00 -5.00 5.4.1. PHANTOM-AEVIT Interface Description Figure 5.5 shows the Basic Stamp II (BS2) microcontroller used in combination with the Pulse Width modulator (PWM) circuit. The BS2 is a 16-pin microcontroller and has an on-board 5-volt regulator, which converts an input of 5 to 15 volts down to 5 volts DC [16]. The following figure 5.5 shows the layout of the BS2 microcontroller chip. 63

PAGE 74

64 Figure 5.5. The Basic Stamp2 (BS2) Microcontroller Table 5.3. Pin Description for Basic Stamp2 Microcontroller Pin Name Description 1 SOUT Serial Out: connects to PC serial port RX pin (DB9 pin 2 / DB25 pin 3) for programming. 2 SIN Serial In: connects to PC serial port TX pin (DB9 pin 3 / DB25 pin 2) for programming. 3 ATN Attention: connects to PC serial port DTR pin (DB9 pin 4 / DB25 pin 20) for programming. 4 VSS System ground: (same as pin 23) connects to PC serial port GND pin (DB9 pin 5 / DB25 pin 7) for programming 5-20 P0-P15 General-purpose I/O pins: each can sink 25 mA and source 20mA. However, the total of all pins should not exceed 50 mA (sink) and 40 mA (source) if using the internal 5-volt regulator. The total per 8-pin groups (P0

PAGE 75

Table 5.3. Pin Description for Basic Stamp2 Microcontroller (continued) Table 5.4. Basic Stamp 2 Microcontroller Specifications 21 VDD 5-volt DC input/output: if an unregulated voltage is applied to the VIN pin, then this pin will output 5 volts. If no voltage is applied to the VIN pin, then a regulated voltage between 4.5V and 5.5V should be applied to this 22 RES Reset input/output: goes low when power supply is less than approximately 4.2 volts, causing the BASIC Stamp to reset. Can be driven low to force a reset. This pin is internally pulled high 23 VSS System ground: (same as pin 4) connects to power supplys ground (GND) terminal. 24 VIN System ground: (same as pin 4) connects to power supplys ground (GND) terminal. Package 24-pin DIP Package Size (L x W x H) 1.2"x0.6"x0.4" Environment 0 o 70 o C (32 o 158 o F) Microcontroller Microchip PIC16C56c Processor Speed 20 MHz Program Execution Speed ~4,000 instructions/sec. RAM Size 32 Bytes (6 I/O, 26 Scratch Pad RAM N/A EEPROM (Program) Size 2K Bytes, ~500 Number of I/O pins 16 +2 Dedicated Serial Voltage Requirements 5 15 vdc Current Draw @ 5V 8 mA Run / 100A Sleep Source / Sink Current per 20 mA / 25 mA Source / Sink Current per 40 mA / 50 mA per 8 I/O PBASIC Commands 36 PC Programming Interface Serial Port (9600 baud) DOS Text Editor STAMP2.EXE 65

PAGE 76

66 The PWM circuit acts as a D/A converter. As shown in figure 5.7, the RS-232 serial cable receives the data in terms of voltage coming through the PHANTOM. The incoming voltages from the PHANTOM vary from 0 to 5 volts DC. A particular value of the voltage, say 2.5VDC means that the PHANTOM is exactly at the ce nter or the neutral position corresponding to center position of th e actual input device The voltages vary according to what position value the PHANTOM assumes during its operation. The center position value of the PHANTOM corre sponds to 127, which means that it will deliver 2.5 volts. The basic stamp program (shown below), which is used to control the PWM circuit, explains the conversion from position value to volts. The program uses a command: PWM D2Aout, Position, 30. The general syntax is: PWM Pin, Duty, Cycles. Pin is a variable/constant/expression (0-15) that specifies the I/O pin to use. The pin will set to output mode initial ly the set to input mode when the command finishes. Duty is a variable/constant/exp ression (0-255) that specifies the analog output level (0 to 5V). Cycles is a variable/constan t/expression (0-255) that specifies the duration of the PWM signal. In the command the variable D2Aout is set to a value of zero, wh ich corresponds to pin zero of the BS2 microcontroller. The reason fo r this is because pin zero receives the voltage input coming from th e PHANTOM and sends it furthe r to PWM circuit as shown in the figure 5.7. Next is the variable position in the command, which is set at value 127. This position value corresponds to 2.5 volts. The conversio n from duty to voltage is done by the following equation: Average voltage = (Duty/255).5 volts. The value of duty ranges between 0 and 255 co rresponding to a range of 0 to 5 volts respectively. Therefore it is required that the operation of the PHANTOM for any of the two devices, whether it is st eering or gas/brake device of the AEVIT system lies between values 0 and 255. This is taken care by th e serial port program [Appendix], which is created for the PHANTOM to ensure data tr ansmission between itself and the computer.

PAGE 77

These values can be seen changing in a separate output window as the PHANTOM stylus is moved to different positions while the program is running (figure 5.5). Figure 5.6. Changing Position Values of the PHANTOM while in Operation The moment the PHANTOM exceeds the range it stops functioning and goes into off mode. Another reason why the PHANTOM operation is fixed between 0 and 255 is because the basic stamp program is required to output voltage between 0 and 5 volts only. The AEVIT system servomotors operate only between 0 to 5V analog voltage. Now whatever position the PHANTOM assumes during its operation, that position value is sent to the basic stamp program. The conversion from position to voltage is done by the basic stamp program. The PWM circuit then converts these digital voltage values from the PHANTOM to analog values and transmits to the three pins 2, 5 and 8 as seen in figure 5.7. The output received by the three wiper pins is transferred to the drive module, from where it is received by the servomotors of the gas/brake or steering device. 67

PAGE 78

68 In this way the input devices are controlled by the PHANTOM. The servomotor movements of the AEVIT system can physically be seen with the PHANTOM operation, which is made possible by this interface. This provides a direct means of testing disabled subjects for various tasks using the PHANTOM haptic input device without actually having them operate the AEVIT driving system. Figure 5.8. Specific Impedance between Pins 10, 11 or 12 Figure 5.8 shows the impedance circuit, this is used to identify which device is being used based on the value of the impedance existing between pins 10, 11 or 12 of the evaluator cable. The following is the PBASIC program, which is used to control the circuit Position VAR BYTE commanded position D2Aout CON 0 analog out pin Position = 127 GetData: Serial cable connector Basic Stamp P0 10K Red, Purple Blu e 1K 4 0.1F V ss 1 Fi g ure 5.7.PWM Circuit with Basic Stam p V ss 0.1F 200 220 2 +12V 3 1K Red 11 Gray, 10 Trans 12

PAGE 79

69 SERIN 16, 16780, 30, NoData, [Position] 2400 8N1 Inv GOTO UpdateOutput GOTO GetData NoData: GOTO UpdateOutput UpdateOutput: PWM D2Aout, Position, 30 DEBUG ? Position GOTO Get Data 5.5. Gas/Brake Simulation Procedure The above article describes the PH ANTOM-AEVIT interface and how the gas/brake simulation of the AEVIT driving syst em is achieved through the data transfer between the PHANTOM device and the AEVIT syst em. We also determined that pins 2, 5 and 8 showed varying voltages in case of both the steering device and the gas/brake device. The varying voltage at these pins is what is responsible for the control of the servomotors. As seen from the past results the steering input device of the AEVIT system has been simulated using the PHANTOM [10]. As the movement of the steering is in a circular motion, the PHANTOM is mapped in exactly the same number of revolutions as that of the AEVIT system steering wheel. The gas/brake simulation of the PHANTOM a pplies the same concept to control the servomotor of the gas/brake device of the AEVIT system. The gas/ brake input device has full range length of 2.7 inches i.e. the total distance traversed by the joystick of the gas/brake device from its full gas position to full brake position. The motion of the gas/brake is along a single ax is. The PHANTOM is simulated in a similar way to operate along a vertical axis or the y-axis. When th e program for the simulation of the gas/brake is executed the PHANTOM moves only along the y-axis (Appendix A2). The movement of the PHANTOM is restricted in the x and z direction. The initial position or the zero position of the PHANTOM corresponds to the neutral position of the gas/brake device. As the P HANTOM stylus is moved upwards starting from the zero position, the ga s action of the simulation begi ns. The position values start increasing from 127, which corresponds to the center position to higher values. The

PAGE 80

values keep increasing indicating an increase of the voltage at the output of the PWM circuit. The moment the PHANTOM reaches a point where it attains the position value of 255, the voltage reaches the maximum limit of 4.5V. Now the servomotor can be seen to reach its extreme gas position. If the PHANTOM is extended beyond the maximum range of its position value it breaks its operation and does not function any further. Similarly the PHANTOM performs the brake simulation part of the experiment. As the PHANTOM is moved downwards from the zero position the brake action triggers and the voltage value starts decreasing from 2.5V to lower values. The moment the PHANTOM attains the zero position the servomotor reaches its extreme brake position. Again, if the PHANTOM is moved down any further it breaks its operation. The complete vertical distance that the PHANTOM travels along its entire gas/brake simulation is approximately 8.0 inches. This is almost three times the distance measured for the actual gas/brake input device. Table 5.5. AEVIT to PHANTOM Gas/Brake Device Mapping Gas/Brake Input Device PHANTOM Gas/Brake Length Length (inches) 2.7 8.0 5.5.1. Gas/Brake Simulation Experiment The above article describes the gas/brake simulation procedure. This simulation of the gas/brake device can be further used as a tool for testing individuals for their strength measurement and determining the optimum position of the device based on the force values obtained from the experiment. It should be however noted that the results produced by the experiment would be unique for every individual and are confided only to the subject under test. The experiment can be used to test multiple disabled subjects and hence determine their capability to operate the gas/brake device. We already know that the gas/brake simulation of the PHANTOM is only along the vertical axis or the y-axis, performing the gas/brake action. The PHANTOM is 70

PAGE 81

71 programmed to produce a resistance along the x and the z direction. The extent of the resistance can be set in the program by the value of the stiffness parameter specified viz. the variable m_k2 (Appendix A2). The following statement in the program obtains the current position of the PHANTOM. gstPoint pos = fromWorld( PHANTOM->getPosition_WC()); The attraction to the center is achieved by the following statement. boxVector = center pos; This means that every time the PHANTOM is displaced from the center, it tends to pull back to its original position. That is how the force is measured depending on the displacement produced by the user. As seen in article 5.2.1 the stiffness parameter is determined experime ntally and found to be approximately in the range of 0.40 N/ mm to 0.50 N/mm. The following experiment is performed using the average value of 0.45 N/ mm. The stiffness parameter determination experiment was performed again using the same procedure, as is 5.2.1. The same equation applies. k.x = k.x o + 9.8 N k(2.38) = k(0.3) + 9.8 k = 4.70 N/cm or 0.470 N/mm The value of the stiffness parameter came out to be 0.470 N/mm. Therefore the approximate error is 4%.

PAGE 82

Figure 5.9. Picture of the Experimental Set-up in the Robotics and Rehabilitation Laboratory 72 Figure 5.10 shows a rectangular grid and the corresponding axes. This grid is the representation of the vertical test plane (Figure 5.9), which is used as a reference plane to measure the force input of the subject at different data points. The intersection of the lines represents the data points indicated by the black dots. The grid in the figure 5.10 is drawn on a wooden board. The dimensions of the grid are 6x 8.0. These dimensions are according to mapping of the gas/brake device with the PHANTOM (Table 5.5). The wooden board provides as a good support to maintain the motion of the PHANTOM in the x-y plane. As seen from figure 5.10 the dotted lines are the centerlines of the test plane. The dotted horizontal centerline represents the neutral position of the PHANTOM. Any position above the centerline represents the gas simulation of the PHANTOM. The top most line in the grid is the extreme gas position. Similarly, any point below the centerline is the brake simulation of the PHANTOM and the bottom most line is the extreme brake position. These position lines on the grid are marked corresponding to the

PAGE 83

extreme position values of the PHANTOM obtained from the program for the gas/brake device. Hence the test plane under consideration lies well within the range of motion of the gas/brake simulation. Taking into account the nature of the program the PHANTOM can be adjusted to a new position every time the program is executed. This gives an advantage of conducting the strength test at different points and planes within the range of motion. 73 Figure 5.10. Rectangular Grid Representing the x-y Test Plane for Gas/Brake Simulation D C B A D C B A Center Position Location L1 Location L2 y Z Location L3 x Data points

PAGE 84

74 he results obtained from the subject are on the basis of three different equally spaced ositions of the test planes. The initial position of the plan e is closest to the PHANTOM evice. The vertical centerline of the test plane corresponds to the center of the HANTOM device. This provides a symmetrical structure to the complete testing setup. fter the initial position of the plane is set, the program is run to execute the gas/brake mulation. The program first asks to set the zero position of th e PHANTOM. At this oint the PHANTOM stylus is se t at the data point on line A, at the intersection of the orizontal center line an d line A as shown on the grid. The force input of the subject is ken at this point. The PHANTOM is then moved to the other data points on the same ference line A and the force measurement ta sk is conducted. After collecting the data r all the data points on line A, the program n eeds to be run again to set the new position f the PHANTOM. This time the PHANTOM is se t at reference line B and the force is easured on all data points on line B. Si milarly the force data is obtained for the ference lines C and D. The second position of th e test plane is two inches in front of the itial position. The same procedure is repeated to obtain the force data at this plane for ll the four references lines. The position of the third plane is two inches in front of the cond plane and the same procedure is repe ated. Thus the force measurement task is onducted for the subject and force values for 36 distinct data points at three different test lanes is collected. are has been taken to maintain enough spaci ng between the data points. The reason for is is because the subject could still have some force input while traveling from one point to the spaced it T p d P A si p h ta re fo o m re in a se c p C th other due to inst abil da ta points are closely ity of the hand. If the would not be clear if the force values obtaine d are only for those particular data points. This is because the program has a large freque ncy of output, so every input of force gives numerous closely related values of forces at the same data point.

PAGE 85

75f the data point on the y xis (Py plot) and the plot below that shows the varying positive and negative force alues for every data point (Fz plot). These plots are generated for every reference line on e test plane at three different positions as seen from figure. Therefore there are 12 istinct set of plots, four for every test plane, each showing the relation between the osition y and the force in z direction. The first set of plots is for the test plane 1 which is situated closest to the PHANTOM device. Figure 5.12 shows two plots show, the position Y (first graph) and the corresponding force exerted in the Z direction (second graph). The x axis in both the plots is the time in seconds. The y axis in the position Y plot or Py is in mm and the y axis in the force plot or Fz plot shows force values in newton. We already know that the position of the PHANTOM can be adjusted by the user every time the program is executed. As seen in the Py plot the initial position of the PHANTOM is kept at the neutral position or the center line position on the test plane. Figure 5.11. Schematic Representation of the Experimental Setup for the Gas/Brake Simulation 5.6. Gas/Brake Data Analysis The following graphs are the result plots obtained for the experiment conducted. There are two plots for every data point, one shows the position o 2 2 PHANTOM Stylus Wooden board test plane Plane 1 Plane 2 Plane 3 Flat Surface a v th d p

PAGE 86

0 1 2 3 4 5 6 7x 104 -100 -50 0 50 100 0 1 2 3 4 5 6 7x 104 -10 0 5 -5 10 76 Figure 5.12. Plot of Line A for Test Plane 1 When this is done the program assumes that position of the PHANTOM stylus to be the origin of its coordinate system. There fore all the initial positions of the PHANTOM will start from zero in all the Py plots. This method is adopted is because it provides a better understanding as it clearly defines the force and the position values that if they fall in the gas region of the simulation or the brake region. The user can still conduct the experiment starting at the extreme gas position or extreme brake position and move upward or down ward accordingly. But in that case all the values obtained would fall either above or below the zero line in the plot. Hence it would not be clear at what point the values change from gas to brake operation. In the Py plot in figure 5.12 it can be seen that zero position is maintained until 2 x 104 milliseconds or 20 seconds. As the frequency of operation is 1000 Hz, the program will Data point at L1 Data point at L2 Data point at L3 Gas operation Brake ope ration Force (N) Time ( seconds ) Y mm Time ( seconds )

PAGE 87

77records numerous positions and force values of the user. Hence the plots clearly show the minor or major variations in the values of the positions and the force input. Figure 5.10 shows all the data points at which the force input is measured. Each data point can be consider be a new posgas/brake device. The initial position of the PHANTOM indicated by L1 on the plot is where the data point on the reference line is located. The force input of the subject is measured at this point. The force measured is along a horizontal +z and z direction. This resembles the gas/brake action of the actual device. In other words if the gas/brake device is positioned at any particular data point within the range as defined by the lane, the force measured in the +z direction implies the ability to perform the gas operation and the force measured in the z direction implies the abilt to perform the brake operation. Thus the ability of the subject tote the gas/brake device is measured at different data points in terms of force exerted. The optimum position of the gas/brake device is decided based on the forces obtained at each data point. As seen from the Fz plot in the figure 5.12, for location L1 of theas/orce measured in the positive z direction or along the gas operation is 5 N and the force measured in the negative z direction or along the brake operation is 4.8 N. Since the PHAes the set position as the center of its origin, all the forces applied forward from the center will be positive indicating thae force is applied in the positive backward from the center point will be negative indicating that the force is applied along the negative z on or +z axis and 7 N in the brake direction or z ed to ition of the test p ity of the subjec opera brake device the f g NTOM assum t th z direction and all the forces applied axis. The next position L2 of the gas/brake device is the top most line on the grid. As see in the Py plot the line increases from zero to approximately 90 mm in the graph. The horizontal line at this point in the Py plot indicates that the position is maintained by the subject for that much time. The force input of the subject is recorded again at this data point. The Fz plot shows the force varying from about + 6 N to 7 N. The next position of the PHANTOM is the data point at the bottom most line of the grid on reference line A. The force input of the user is taken at this data point. The Py plot shows the line decreasing from + 95 mm to 95 mm on the y axis. The force measured at this point is approximately 8 N in the gas directi axis. Once the force data is recorded at the final data point the PHANTOM is brought

PAGE 88

78 oted that top back to its neutral position and the program is terminated. This can be seen in the Py plot where the line increases to the zero point and then terminates. It should be n and bottom extreme positions of the PHANTOM are fixed on the test plane, beyond which the PHANTOM goes out of range. Therefor e all the plots of Py for every reference line on all the three test planes will show the same extreme positive and negative coordinates i.e. + 95 mm to 95 mm. A general interpretation of the plots can be made on the basis of the results obtained. All the major horizontal lines on the Py plots indicate the data points or the position of the gas/brake de vice. Therefore there wi ll be three distinct lines (L1, L2, and L3) in the Py plot indicating the three distinct data points at which the force input is measured. All the force pl ots will show a change in force values corresponding to the horizontal lines in Py in dicating that the force is exerted at those data points. All the increasing or decreasing lines in Py plot indicate that the PHANTOM is traveling in between two data points. The corresponding line in th e Fz plot will be horizontal indicating that no fo rce is exerted during that part. The irregularities in the lines are due to instab ility of the subjects hand while in motion. The plot shown in the last figure is for line A of the first test plane. The maximum force exerted by the subject is 8.1 N for the gas ope ration of the device and approximately 7.5 N for the brake operation at location L3. Th e average maximum force for gas operation is 6.7 N and for brake operation is 6.4 N approximately for reference line A. The following figure shows the plots for lines B, C and D respectively for test plane 1. It should be noted that all the plots that follow next are of the same nature as described above.

PAGE 89

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5x 104 -100 -50 0 50 100 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5x 104 -10 79 -5 0 5 10 15 20 oximately 7.0 N for the brake operation at location L2. The average maximum rce for gas operation is 9.6 N and for brake operation is 7.0 N approximately for ference line B. Y mm Force (N) Time ( seconds ) Time ( seconds ) The maximum force exerted by the subject is 18.1 N for the gas operation at location L3 and appr Figure 5.13. Plot of Line B for Test Plane 1 fo re

PAGE 90

80 0 0.5 1 1.5 2 2.5 3 3.5 4x 104 -100 -50 0 50 100 0 0.5 1 1.5 2 2.5 3 3.5 4x 104 -10 -5 0 5 10 15 8.0 N for the brake operation at location L2 of the device. The average aximum force for gas operation is 8.0 N and for brake operation is 6.75 N pproximately for reference line C. The maximum force exerted by the subject is10.0 N for the gas operation at location L3 and approximately Figure 5.14. Plot of Line C for Test Plane 1 Y mm Force (N) Time ( seconds ) Time ( seconds ) m a

PAGE 91

0 0.5 1 1.5 2 2.5 3 3.5 4x 104 -100 -50 0 50 100 150 0 0.5 1 1.5 2 2.5 3 3.5 4x 104 -10 -5 0 5 10 Y mm Force (N ) Time ( seconds ) Time ( seconds ) he next four plots shown are for test plane 2 which is located 2 inches in front of the test lane 1 and is exactly coincident and parallel to it. Fig ure 5.15. Plot of Line D for Test Plane 1 The maximum force exerted by the subject is 8.0 N for the gas operation at location L3 and approximately 5.5 N for the brake operation at location L2 of the device. The average maximum force for gas operation is 7.5 N and for brake operation is 5.0 N approximately for reference line D. T p 81

PAGE 92

0 1 2 3 4 5 6 7x 104 -100 -50 0 50 100 0 1 2 3 4 5 6 7x 104 -10 -5 0 5 10 he above plot is for line A fohe maximum force exerted by the subject is 9.0 N for the gas operation at location L2 an be seen that at location L3 there are three sets of force data while value of the force exerted falls in the me range of 7.5 N to 8 N. T r test plane 2. Figure 5.16. Plot of Line A for Test Plane 2 Y mm Force (N) Time ( seconds ) Time ( seconds ) T and approximately 7.5 N for the brake operation at location L2 of the device. The average maximum force for gas operation is 7.2 N and for brake operation is 6.5 N approximately for reference line A. From figure 5.16 it c keeping the position of the data point same. This means that the subject has applied forces three times at the same point. Each time the sa 82

PAGE 93

83 0 1 2 3 4 5 6x 104 -100 -50 0 50 100 0 1 2 3 4 5 6x 104 -10 -5 0 5 10 15 as operation is 8.0 N and for brake operation is 6.5 N approximately Figure 5.17. Plot of Line B for Test Plane 2 Y mm Force (N) Time ( seconds ) Time ( seconds ) The above plot is for line B for test plane 2. The maximum force exerted by the subject is 10.0 N for the gas operation at location L1 and approximately 9.0 N for the brake operation at location L1 of the device. The average maximum force for g for reference line B. In the plot 5.17 it can be seen that the experiment is conducted for two cycles of force measurement.

PAGE 94

0 0.5 1 1.5 2 2.5 3 3.5x 104 -100 -50 0 50 100 0 0.5 1 1.5 2 2.5 3 3.5x 104 -10 -5 0 5 10 he above plot is for line C for t 10.0 N for the gas operation at location L3 Figure 5.18. Plot of Line C for Test Plane 2 Y mm Force (N) Time ( seconds ) Time ( seconds ) T est plane 2. The maximum force exerted by the subject is and approximately 7.5 N for the brake operation at location L2 of the device. The average maximum force for gas operation is 7.3 N and for brake operation is 5.7 N approximately for reference line C. 84

PAGE 95

0 0.5 1 1.5 2 2.5 3 3.5x 104 -100 -50 0 50 100 0 0.5 1 1.5 2 2.5 3 3.5x 104 -10 -5 0 5 10 15 Y mm Time ( seconds ) Force (N) s ) Time ( second The above plot is for line D on test plane 2. The maximum force exerted by the subject is 10.5 N for the gas operation at location L3 and approximately 7.5 N for the brake operation at location L2 of the device. The average maximum force for gas operation is 8.1 N and for brake operation is 6.75 N approximately for ref erence line D. Figure 5.19. Plot of Line D for Test Plane 2 85

PAGE 96

0 0.5 1 1.5 2 2.5 3 3.5x 104 -10 -5 0 5 10 No. of samples 0 0.5 1 1.5 2 2.5 3 3.5x 104 -100 -50 0 50 100 Ymm F orce in Z direction Force (N) Postion Y No.of samples Figure 5.20. Plot of Line A for Test Plane 3 The above plot is for line A on test plane 3. The maximum force exerted by the subject is 7.5N for the gas operation at location L2 and approximately 7.5 N for the brake operation at location L2 of the device. The average maximum force for gas operation is 6.3 N and for brake operation is 6.0 N approximately for reference line A. 86

PAGE 97

0 0.5 1 1.5 2 2.5x 104 -100 -50 0 50 100 0 0.5 1 1.5 2 2.5x 104 -10 -5 0 5 10 87 Figure 5.21. Plot of Line B for Test Plane 3 Y mm Force (N) Time ( seconds ) Time ( seconds ) The above plot is for line B on test plane 3. The maximum force exerted by the subject is 9.0N for the gas operation at location L2 and approximately 7.5 N for the brake operation at location L2 of the device. The average maximum force for gas operation is 8.25 N and for brake operation is 6.25 N pproximately for reference line B a

PAGE 98

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5x 104 -100 -50 0 50 100 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5x 104 -10 -5 0 5 10 Y mm Force (N) Time ( sec onds ) Time ( sec onds ) 88 The above plot is for line C on test plane 3. The maximum force exerted by the subject is 7.5N for the gas operation at location L3 and approximately 7.5 N for the brake operation at location L2 of the device. The average maximum force for gas operation is 7.0 N and for brake operation is 6.0 N approximately for reference line C. Figur e 5.22. Plot of Line C for Test Plane 3

PAGE 99

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5x 104 -100 -50 0 50 100 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5x 104 -10 -5 0 5 10 89 Figure 5.23. Plot of Line D for Test Plane 3 T ime ( seconds ) Time ( seconds ) Force (N) Y mm T he above plot is for line D on test plane 3. is 7.5N for the gas operation at location L3 The maximum force exerted by the subject and approximately 7.5 N for the brake operation at location L2 of the device. The average maximum force for gas operation is 6.0 N and for brake operation is 6.25 N approximately for reference line D.

PAGE 100

905.7. Summary of Gas/Brake Test Results Table 5.6. Summary of the Results of the Gas/Brake Simulation Experiment Reference Line A B C D Gas operation8.1 at L3 18.0 at L310.0 at L3 8.0 at L3 Maximum Force in Newton Brake operation7.5 at L3 7.0 at L2 8.0 at L2 5.5 at L2 Gas operation6.7 9.6 8 7.5 Test Plane 1 Maximum Average Force in Newton Brake operation6.4 7.0 6.75 5.0 Gas operation9.0 at L2 10.0 at L1 10.0 at L3 10.5 at L3 Maximum Force in Newton Brake operation7.5 at L2 9.0 at L1 7.5 at L2 7.5 at L2 Gas 7.2 8.0 7.3 8.1 operation Test Plane 2 Maximum Average Force in Brake 6.5 6.5 5.7 6.75 Newton operation Gas operation7.5 at L2 9.0 at L2 7.5 at L3 7.5 at L3 Maximum Force in Newton Brake opera7.5 at L2 7.5 at L2 7.5 at L2 7.5 at L2 tion Gas operation6.3 8.25 7.0 6.0 Test Plane 3 Maximum Average Force in Newton Brake operation6.0 6.25 6.0 6.25

PAGE 101

91n the topmost line, L3: location on the Table 5.6 lists the maximum force and maximum average force in newtons for the four ference lines on all the three test planes force listed is for the gas operation and brake operation and their respectionthe test plane. For example on reference lit plathe fraoperation lies at location L3 of the device. The maximum average force for the gas and brake operation rage orcetio pe. As seen from the table 5.7 the mm forc the gastion is 10 N at lon L3 on reference line B and mace for brake operation is 9.0 N at location L1 for reference line B on the test planmam average force for the gas and brake operation is on ltest plane 1. Therefore this position is the optimum position of the device. L1: location on the center line, L2: location o bottom most line on the test plane. re The maximum tive loca on ne A on tesis the ave ne 1 maximum orce measu ed for gas nd brake of the f es at all th three loca ns for any articular reference lin aximuximum for e for opera 8. catio e. But the ximu ine B on

PAGE 102

92 IT primary driving control system and the six-degree of freedom hand l between the PHANTOM and in put devices of the AEVIT driving system rough their interface provides a tool for testing and assessing individuals with certain isabilities. The first of the set of experiments involves the determination of the stiffness arameter for the six degree of freedom PHANTOM haptic device. The stiffness arameter produces a resistance in the PHANTOM haptic device during its operation. It especially used in cases where experi ments involving strength measurement of the bject in terms of force exerted are c onducted. This experiment determines an pproximate safe value of the stiffness pa rameter for the operation of the PHANTOM aptic device. The same value of the stiffness parameter can be used for any experiment volving strength measurement task for an indi vidual. The force data collected using the xperimental value of the stiffness parameter is more accurate and valid. The steering strength test conducted in the past used an arbitrary value of the iffness parameter. This means to say th at the subject was capable of operating a low ffort steering wheel at certain data points within his range of mo tion. The results were produced using the new experimental value of the stiffness parameter determined. The ew set of results revealed that the subject was capable of operating a low effort steering Chapter 6 Conclusions and Recommendations 6.1. Conclusions The AEV controller PHANTOM haptic de vice are integrated togeth er by an interface. This interface enables the PHANTOM to control the primary control devices of the AEVIT system (steering, gas/brake). The PHANTOM is interfaced to simula te the gas and brake input device of the AEVIT system in addition to the steering input device. This kind of direct contro th d p p is su a h in e st e re n

PAGE 103

93 till z = 10 cm. Beyond this point his ability decreases and he is no longer capable of operating a low effort steering. The next of the set of experiments is testing the gas and brake of the AEVIT driving system using the PHANTOM e. The gas and brake input device of the AEVIT driving contr sing the PHANTOM for sting purposes. The testing involves cert ain parameters of the subject under the ra nge of motion, the strength applie d in terms of force exerted by the subjects upper limbs. The results of the te sting procedure are in terms of force data collecte existing input devices haptic devic ol system is inte rfaced and simulated u te consideration like d of the subject. The forces reveal the capability of the subjec t to operate the input device at different positions. The optimum position is determined based on the maximum average forces exerted at any particular position. The maximum forces are taken into consideration because they enable to operate the device most effectively. The PHANTOM-AEVIT gas/brake interface o ffers a more objective and practical approach to testing individuals. The nature of the experiment involved in testing provides reliability, repeatability and flexibility fo r testing and assessing any subject. 6.2. Future Recommendations The steering and the gas/brake input devi ce of the AEVIT driving system have been successfully interfaced and tested w ith the six degree of freedom PHANTOM hand controller. Further improvements to the interf ace would be to create a visual environment for the gas/brake simulation. Further, to e xpand the interface and testing options would be incorporate the joystick controller of the AEVIT system. This would provide a means of testing for a combination of both the st eering and gas/brake ope ration. In order to provide a more sophisticated interface would be to combine all the three by integrating them using a single in terface. Combining thes e possibilities will provide a complete interface setup and si mulation environment between the entire AEVIT driving control system and the PHANTOM haptic device.

PAGE 104

94 References 1. http://userpages.umbc.edu/~roconn2/403/haptic/devices.html 2. Rehabilitation Engineering Applied to Mobility and Manipulation, R Cooper. 3. US Department of Transportation, Research Note, Update on Safety Issues on Vehicles Adapted fo r Use by People with Disability, March 2004. 4. http://www.accessiblesociety.org/topics/demographics-ide ntity/census2000.html 5. R.J.Koppa, State of the Art in Automo tive Adaptive Equipment, Human Factors, Vol.32, pp. 439, 1990. 6. Jan C. Galvin, Marcia J.Scherer. Evaluating, Selecting, and Using Appro priate Assi 9. Driving Aids Development Corporation, http://www.drivingaids.com/products.html. ing of Persons with Disabilities using an Advanced stive Technology, Aspen Publisher, Maryland, 1996. 7. Stamp Works Version 1.1, Parallax Inc, Williams. 8 Robotics Version 1.4, Parallax Inc. 10. Driving Assessment and Train Vehicle Interface System, Souheil Zekri, 2002. 11. Electronic Mobility Contro l, Installation Manual, 2000. 12. SensAble Technologies Inc. http://www.sensable.com/phantom.html 13. Texas Rehabilitation Commission, St andards for vehicle adaptations, 1999. 14. Stephen Sundarrao, Florida Department of Education Security Division for Vocational Rehabilitation. 15. http://www.emc-digi.com/PDF_Forms/ 16. http://www.parallax.com/dl/docs/prod/stamps/BasicStampMan.pdf 17. http://www.rehab.state.tx.us/providermanual/sm04/sm04a.htm 18. Brain Injury Resource Foundation http://www.birf.info/artman /publish/article_17.shtml 9. NHTSA Research Note, Estimating the Nu mber of Vehicles Adapted for use by Persons with Disabilities, December 1997. 1

PAGE 105

95 20. http://www.wwrc.net/menuroot/AT-adaptive-driving.htm 21. http://www.handicapvehicle.com/Steps.h tml 22. US Department of Commerce, Bureau of 23. US Census 2000 Brief, Issued Mar the Census, Statistical Brief, January 1994. ch 2003. 24. http://www.makoa.org/sci.htm. 25. http://www.sidewinder-conversions.com/Mobility. 26. http://www.autochair.co.uk/ 27. http://gentlegiant.co.nz/wheelchair_lifts.html 28. http://www.creativecontrolsinc.com/pedal-extenders/ 29. Handbook of Disabilities, Arthritis, Copyright 2001, Curators of the University of com Missouri&RCEP7. 30. Creative Controls Handicap Driving Equipment, http://www.creativecontrolsinc. iver Rehabilitation plete Sp inal Cord Injury, SCI Info Pages.htm. 31. Driving with Multiple Sclerosis The Association for Dr Specialists.htm. 32. Functional Goals per Level of Com 33. The Spinal Cord Injury Resource Center, http://www.spinalinjury.net/html/_spinal_cord_101.html 34. InformationHandbook on Spinal Cord Injuries http://www.health.qld.gov.au/qscis/info_handbook.asp 35. PPMD_annualreport.pdf, The Parent Proj ect Muscular Dystrophy 2000 -2001 Annual c. e, Version 3.0, SensAble Technologies, Inc. Report. 36. GHOST SDK Programmers Guide Vers ion 4.0, SensAble Technologies, In 37. GHOST SDK API Referenc

PAGE 106

96 ices Append

PAGE 107

97 Appendix A: Source Codes A.1. Code for Serial Interface betw een the Phantom and the Basic Stamp A.1.1. COMPORT.CPP //========================== ==================================== =============== // General component library for WIN32 // Copyright (C) 2000, UAB BBDSof t ( http://www.bbdsoft.com/ ) // // This material is provided "as is", with absolutely no warranty expressed // or implied. Any use is at your own risk. // // Permission to use or copy this software for any purpose is hereby granted // without fee, provided the above notices are retained on all copies. // Permission to modify the code and to distribute modified code is granted, // provided the above notices are reta ined, and a notice that the code was // modified is included with the above copyright notice. // // The author of this program may be contacted at developers@bbdsoft.com ========================== ==================================== ifndef _COMPORT_ Port.hpp" endif ifndef _WINDOWS_ EAN #include endif #include endif espace std; ---------------------------------------------------------------------------OMPort::COMPort ( const char const portName ) : theDCB (NULL) le = (unsigned ) CreateFile ( portName GE NERIC_READ | GENERIC_WRITE // =============== # #include "Com # # #define WIN32_LEAN_AND_M # #ifndef _STDEXCEPT_ # using nam // C { thePortHand

PAGE 108

98 Appendix A: Continued 0 NULL NULL E_ERROR) (" COMPort: failed to open."); DCB = new char [sizeof(DCB)]; Handshaking(); lose serial port device ("COMPort: failed to close."); // endif -----------------------------MPort::getState () const{ andle DCB )) COMPort: could not retrieve serial po rt state."); if State () const (HANDLE) thePortHandle (LPDCB) theDCB OPEN_EXISTING FILE_FLAG_NO_BUFFERING ); if (thePortHandle == HFIL { throw runtime_error } // endif the getState(); setBlockingMode(); set } // end constructor //---------------------------------------------------------------------------COMPort::~COMPort() { delete [] theDCB; // c if (CloseHandle ((HANDLE)theP ortHandle) == FALSE ) { throw runtime_error } } // end destructor //---------------------------------------------void CO if (!GetCommState ( (HANDLE) thePortH (LPDCB) the { throw runtime_error (" } // end } // end COMPort::get //---------------------------------------------------------------------------COMPort& COMPort::setState () { if (!SetCommState ( ) )

PAGE 109

99 t: could not modify serial port state."); --------------------------------------------gned long Param ) dRate = Param; turn setState(); --------------------------------------------------------------ort::bitRate() const PDCB)theDCB); e () const --------------------------------------------------------------------------ort::setLineCharacteristics( char inConfig ) ( !BuildCommDCBAndTimeouts ( inConfig &aTimeout throw runtime_error ("COMPort: could not set line characteristics."); Timeouts ( (HANDLE(thePortHandle)) &aTimeout cs."); urn setState(); --------------------------------------rt::read () Appendix A: Continued { throw runtime_error ("COMPor } // endif return *this; } // end COMPort::setState () //------------------------------COMPort& COMPort::setBitRate ( unsi { DCB & aDCB = *((LPDCB)theDCB); aDCB.Bau re } // end COMPort::setBitRate (..) //------------unsigned long COMP { DCB & aDCB = *((L return aDCB.BaudRate; } // end COMPort::bitRat //COMPort& COMP { COMMTIMEOUTS aTimeout; if (LPDCB)theDCB ) ) { } // endif if ( SetComm ) ) { throw runtime_error ("COMPort: could not set line characteristi } // endif ret } //------------------------------------char COMPo

PAGE 110

100 ar buffer; ePortHandle)) &charsRead hile ( !charsRead ); ---------------------------------) le)) q &charsRead NULL ; end COMPort::read (..) --------------------------------------------------------------------------ar; ORD charsWritten = 0; sizeof(char) Appendix A: Continued { ch DWORD charsRead = 0; do { if (! ReadFile ( (HANDLE(th &buffer sizeof(char) NULL ) ) { throw runtime_error ("CO MPort: read failed."); } // endif } w return buffer; } // end COMPort::read() //-----------------------------------------unsigned long COMPort::read ( void *inBuffer const unsigned long inCharsReq { DWORD charsRead = 0; if ( !ReadFile ( (HANDLE(thePortHand inBuffer inCharsRe ) ) { throw runtime_error ("CO MPort: read failed."); } // endif return charsRead } // //COMPort & COMPort::write ( const char inChar ) { char buffer = inCh DW if ( !WriteFile ( (HANDLE(thePortHandle)) &buffer

PAGE 111

101 harsWritten ) ("COMPort: write failed."); rite (..) -------------------------------------------------------------ed long COMPort::write ( const void *inBuffer const unsigned long inBufSize 0; (thePortHandle)) ) or ("COMPort: write failed."); :write() ---------------------------------------------------------------Port& COMPort::setxONxOFF ( bool Param ) tX = Param ? 1 : 0; m ? 1 : 0; --------------ol COMPort::isxONxOFF () const theDCB); xONxOFF () const -----------------------------------------------Appendix A: Continued &c NULL ) { throw runtime_error } // endif return *this; } // end COMPort::w //-------------unsign ) { DWORD charsWritten = if ( !WriteFile ( (HANDLE inBuffer inBufSize &charsWritten NULL ) { throw runtime_err } // endif return charsWritten; } // end COMPort: //-----------COM { DCB & aDCB = *((LPDCB)theDCB); aDCB.fOu aDCB.fInX = Para return setState(); } // end COMPort::setxONxOFF (..) //------------------------------------------------------------bo { DCB & aDCB = *((LPDCB) return (aDCB.fOutX && aDCB.fInX); } // end COMPort::is //----------------------------

PAGE 112

102 BlockingMode ( unsigned long inReadInterval unsigned long inReadMultiplyer unsigned long inReadConstant ) mmTimeouts ( (HANDLE(thePortHandle)) &commTimeout eouts."); mmTimeout.ReadIntervalTimeout = inReadInterval; WORD ) r = 0; dTotalTimeoutConstant = 0; eout.ReadTotalTimeoutMultiplier = inReadMultiplyer; mmTimeout.ReadTotalTimeoutConstant = inReadConstant; // endifelse &commTimeout imeouts."); / endif Mode (..) -----------------------------------------Port::setHandsha king ( bool inHandshaking ) _HANDSHAKE; Appendix A: Continued COMPort& COMPort::set { COMMTIMEOUTS commTimeout; if ( !GetCo ) ) { throw runtime_error ("COMPort: failed to retrieve tim } // endif co if ( inReadInterval==MAXD { commTimeout.ReadTotalTimeoutMultiplie commTimeout.Rea } else { commTim co } if ( !SetCommTimeouts ( (HANDLE(thePortHandle)) ) ) { throw runtime_error ("COMPort: failed to modify t } / return *this; } // end COMPort::setBlocking //---------------------------------COMPort & COM { DCB & aDCB = *((LPDCB)theDCB); if (inHandshaking) { aDCB.fOutxCtsFlow = TRUE; aDCB.fOutxDsrFlow = FALSE; aDCB.fRtsControl = RTS_CONTROL }

PAGE 113

103 = FALSE; DCB.fRtsControl = RTS_CONTROL_ENABLE; ng (..) --------------------------------------------------------------------------OMMPROP aProp; e port properties."); / endif aProp.dwMaxBaud; / end COMPort::getMaximumBitRate () const (output signals) bit DSR, 6 bit RI, 7 bit DCD (input signals) GetCommModemStatus ( (HANDLE)thePortHandle (LPDWORD)&aPack ) e_error ("COMPort: failed to retrieve modem signals."); --------------------------------------------------------------------------Param ) B & aDCB = *((LPDCB)theDCB); --------------------------------------------------------------------------Appendix A: Continued else { aDCB.fOutxCtsFlow = FALSE; aDCB.fOutxDsrFlow a } // endifelse return setState(); } // end COMPort::setHandshaki //unsigned long COMPort::getMaximumBitRate() const { C if ( !GetCommProperties ( (HANDLE)thePortHandle &aProp ) ) { throw runtime_error ("COMPort: fa iled to retriev } / return } / //---------------------------------------------------------------------------COMPort::MSPack COMPort::getModemSignals() const { MSPack aPack; // 1 bit DTR, 2 bit RTS // 4 bit CTS, 5 if ( ) { throw runtim } // endif return aPack; } // end COMPort::getModemSignals () const //COMPort& COMPort::setParity ( Parity { DC aDCB.Parity = Param; return setState(); } // end COMPort::setParity (..) //-

PAGE 114

104 Port& COMPort::setDataBits ( DataBits Param ) B); ---------------------------------------------------------------------------DCB)theDCB); end COMPort::setStopBits (..) :Parity COMPort::parity () const --------------------------------------------------------------------------its COMPort::dataBits () const ------------------------------------------------------------------------MPort::StopBits COMPort::stopBits () const CB = *((LPDCB)theDCB); ort::StopBits)aDCB.StopBits; Appendix A: Continued COM { DCB & aDCB = *((LPDCB)theDC aDCB.ByteSize = Param; return setState(); } // end COMPort::setDataBits (..) // COMPort& COMPort::setStopB its ( StopBits Param ) { DCB & aDCB = *((LP aDCB.StopBits = Param; return setState(); } // //---------------------------------------------------------------------------COMPort: { DCB & aDCB = *((LPDCB)theDCB); return (COMPort::Parity)aDCB.Parity; } // end COMPort::parity () const //COMPort::DataB { DCB & aDCB = *((LPDCB)theDCB); return (COMPort::DataBits)aDCB.ByteSize; } // end COMPort::dataBits () const //--CO { DCB & aD return (COMP } // end COMPort::stopBits () cosnt A.1.2. Serial.cpp #include "compor t.hpp" #include

PAGE 115

105 ifdef STANDALONE is not used, the included comport.hpp file will still generate an ob ject to link against int bytesRead; port.setBitRate(CO MPort::br9600); MPort::db7); pBits(COMPort::sb1); while(1) 5); buffer[bytesRead-1] = '\0'; esRead << bytes. Message was:" << endl; lation ILE: LineForce.cpp HANToM along a vertical line include define USE_AEVIT // comment out if the Aevit is not being used. 6.5 // Revolutions on PHANToM to Aevit VAL 25 // milliseconds between updates ELOCITY_PER_UPDATE 0.15 AND 0.1 // radians (epsilon) xtern int velocity; Appendix A: Continued #define BUF_SIZE 80 # // even if the main function // int main() { COMPort port("COM1"); char buffer[BUF_SIZE]; port.setParity(COMPort::Even); port.setDataBits(CO port.setSto //while(port.read() != '+'); { bytesRead = port.read(buffer, //cout << "Read << byt cout << buffer << endl; } return 0;} #endif A.2. Code for Gas and Brake Simu A.2.1. Lineforce.cpp // F // Purpose: Constrain the motion of the P #include "LineForce.h" #include # # #define NUM_REVOLUTIONS match full range of #define UPDATE_INTER #define ANGLE_PER_V #define REAL_DEADB e

PAGE 116

106 tor, steer70factor; Default constructor mal.init(0, 0, 1); center.init(0, 0, 0); 10); this data file. riting" << endl; false; IT at new_xlen,flo at new_ylen, float new_zlen, gstPoint ter, gstVector newNormal) normal = newNormal; en; ter, x_len,y_len,z_len); false; Appendix A: Continued extern double steer10f ac double exportAngle; // LineForce::LineForce() { nor boundBySphere(gstPoint(0, 0, 0) // Regular updates will be dumped to output = fopen("output.txt", "w"); if(!output) cerr << "Could not open file for w connectedFlag = #ifdef USE_AEV setupNetwork(); #endif } // Constructor LineForce::LineForce(flo newCen { center = newCenter; x_len = new_xl y_len = new_ylen; z_len = new_zlen; boundByBox(cen connectedFlag = #ifdef USE_AEVIT setupNetwork(); #endif } LineForce::~LineForce() { if(output) fclose(output); }

PAGE 117

107 l) ol.x(); (); boundByBox(center, x_len,y_len,z_len); There are a few global variables like this to share data between objects. orks well enough. ouble exportVelocity; ork for this class. It is called ately every 1 ms) and generates a force that ot of information available as it performs this constraint, it also sets global variables for :calculateFo rceFieldForce(gstPHANToM *phantom) gstVector returnVector, planeVector boxVector,boxVector_f orce,sphereVector, gentVector, zeroVector, headingVector, perpVector, rightVector; gas_range,length, heading, t_vel, perpLength; ctor lastReadings[5]; whether the PHANToM has been zeroed yet static int i = 0; 4]; // used for smoothing tTime = 0; 0, 0, 0}; // for smoothing xport_pos=0.0,totalAngle = 0, lastHeading = 0; // commands from double deltaAngle; static double realAngle = 0; // where is the wheel really? // initialize our lastvel array if this is the first time through. for(index = 0; index < 4; index++) Appendix A: Continued void LineForce::setVolume(gstPoint newVo { x_len = newV y_len = newVol.y(); z_len = newVol.z } // // This is not the cleanest way to do this, but it w d // This function performs the bulk of the w // at regular intervals (approxim // will keep the PHANToM constrained to a ci rcle. Since it has a l // // other classes to use. gstVector LineForce: { tan double static int last = -1; gstVe extern gstPoint zeroPoint; // wher e the PHANToM was zeroed on the circle extern int isZeroed; // static double lastvels[ int index = -1; static DWORD star char buffer[80]; double error; static double lastThetas[10] = {0, 0, 0, 0, 0, 0, 0, static double e PHANToM if(index == -1)

PAGE 118

108 // To implement the viscosity effect. // To implement the resistance force along X,and Z motion // Get the current po sition of the PHANToM. gstPoint pos = fromWorld(phantom->getPosition_WC()); n/2; tVector(boxVector.x()*m_k2,boxV ector.y()*m_k1,boxVector.z()*m_k2); ; side of the plane we are on 0) omal; gnitude to avoid buzzing 5) returnVector = planeV ector + boxVector_force; // Adding this line will cause significant buzzing tangent to the circle, so that forces will grab data about the PHANToM every Appendix A: Continued lastvels[index] = 0; double m_k1 = 0.01; double m_k2 = 0.2; returnVector = gstVector(0, 0, 0); boxVector = center pos; // attraction towards center gas_range = y_le if(fabs(boxVector.y()) > (gas_range*2/5) ) { m_k2 *= ((fabs(boxVector.y()) (g as_range*2/5))*5/gas_range +1); } boxVector_force = gs // Now add planar constraint gstPlane myPlane((gstVector )normal, (gstPoint)center) // Now check which if((length = myPlane.error(pos)) < planeVector = normal; else planeVector = -nr // Adjust the ma planeVector.normalize(); if(fabs(length) < { planeVector *= (fabs(length)/5.0); } planeVector *=1; gstVector v = phantom ->getVelocity(); // Add viscosity //returnVector += -m_k*v; // This vector should be // For data collection pur poses, we can only

PAGE 119

109 the servo l oop will timeout and it will stop. This // particular block determines wher e the PHANToM is along the circle and ompu if(isZeroed && (GetTickCount() startTime > UPDATE_INTERVAL)) timer int tempInt; ER_UPDATE; export_pos = boxVector.y(); // Shift the values in our window down by one < 9; zna++) lastThetas[9] = totalAngle; ghted average. s[zna]*0.08; endif ng to write out to the serial port cau ses the PHANToM servo ad. )+127; endif ifdef VELOCITY_MODE directly in position mode commands, but rather, n't work. Appendix A: Continued // once in a while, or ctes // angular commands for the Aevit from there. { startTime = GetTickCount(); // update unsigned char outport = 0; // data to send out double steerfactor = ANGLE_PE R_VELOCITY_P // For tremor suppression: #define TREMOR #ifdef TREMOR for(int zna = 0; zna lastThetas[zna] = lastThetas[zna + 1]; // Compute a new wei totalAngle = lastThetas[9] 0.28; for(zna = 0; zna < 9; zna++) totalAngle += lastTheta exportAngle = totalAngle; # // For some reason, attempti loop // to stop. Solution was to dump it over the network inste #ifndef VELOCITY_MODE tempInt = (int)(export _pos*(128/y_len/2) # # // For some input devices, the // Aevit doesn't deal // in velocity mode. Therefore, the calculations above do // Instead, the angles have to be used to determine where the wheel

PAGE 120

110 // Note that this code is not needed for the normal case where the ror = totalAngle realAngle; 2; if(realAngle > NUM_REVOLUTIONS*M_PI) force the ends of the steering, and to do so in // such a way that it doesn't deadlock. realAngle -= steerfactor; tempInt = 128; if(e tempInt = 64; OLUTIONS*M_PI) ering, and to do so in doesn't deadlock. realAngle += steerfactor; tempInt = 128; } else tempInt = 128; endif te. if(tempInt > 255) tempInt = 255; else if(tempInt < 0) tempInt = 0; pInt; ifdef USE_AE Appendix A: Continued // is expected to be, and to dete rmine in which direction the wheel // should turn in order to bring it there in velocity mode. // evaluator board is being used. er if(error > REAL_DEADBAND) { tempInt = 19 realAngle += steerfactor; { // Need to en } } else rror < -REAL_DEADBAND) { realAngle -= steerfactor; if(realAngle < -NUM_REV { // Need to enforce the ends of the ste // such a way that it } # // Whatever the output is, bound it to fit in an unsigned by outport = tem # VIT // Send that byte out into the network.

PAGE 121

111 endif } tor; his was necessary because the PHANToM t Linorce:etupNwork( s; at we couldn't find a useable */ k.dll. */ } Confirm that the Windows Sockets DLL supports 1.1.*/ */ requested. */ if ( LOBYTE( wsaData.wVersion ) != 1 || ata.wVersion ) != 1 ) { /* Tel the u Appendix A: Continued sprintf(buffer, "%d\n", outport); if(send(sock, buffer, strlen(buffer), 0) <= 0) printf("error sending stuff\n"); # return returnVec } // Shallow wrapper around Windows socket calls. Needed to send data // out over the network. All of t // stops if a serial port call is made in the same program. Don't ask. ineF:set) { struct sockaddr_in address; struct in_addr in_addres char host[80]; int port; int flag; WORD wVersionRequested; WSAData wsaData; int err; wVersionRequested = MAKEWORD( 1, 1 ); err = WSAStartup( wVersionRequested, &wsaData ); if ( err != 0 ) { /* Tell the user th /* winsoc return -1; /* /* Note that if the DLL suppor ts versions gr eater */ /* than 1.1 in addition to 1.1, it will still return */ /* 1.1 in wVersion since that is the version we /* HIBYTE( wsaD lser that we couldn't find a useable */

PAGE 122

112 */ } //strcpy(host, "192.168.1.2"); strcpy(host, "127.0.0.1"); port = 4550; port); SOCK_STREAM, 0); if(sock == INVALID_SOCKET) d not open socket: error %d\n\r", host); = in_address; rt = htons(port); address.sin_family = AF_INET; ess, sizeof(struct sockaddr_in)); if(flag) tderr, "Could not connect: error %d\n\r", WSAGetLastError()); n su ccessful.\n\r"); fflush(stderr); Flag = true; return 0; closesocket(sock); Flag = false; Appendix A: Continued /* winsock.dll. WSACleanup( ); return -1; fprintf(stderr, "Attempting to connect to %s, port %d...\n\r", host fflush(stderr); sock = socket(AF_INET { fprintf(stderr, "Coul WSAGetLastError()); return 1; } in_address.S_un.S_addr = inet_addr( address.sin_addr address.sin_po flag = connect(sock, (struct sockaddr *) &addr { fprintf(s return 2; } fprintf(stderr, "Connectio connected } void LineForce::dis connectNetwork() { if(sock != INVALID_SOCKET) { sock = INVALID_SOCKET; } connected }

PAGE 123

113 IRCLE_FORCE_H define AMG_CIRCLE_FORCE_H include > include lass L ublic: e(float new_xlen,float new_ylen, float new_zlen,gstPoint newCenter, ineForce(); // destructor No instance needed. TypeId() { ForceClassTypeId); return LineForceClassTypeId; etwork(); e of this instance. Appendix A: Continued A.2.2. Lineforce.h #ifndef AMG_C # #include # #include //#include "COMport.hpp" #define MAX_SAMPLES 1000 struct DataSample { int no; double fx,fz; }; cineForce : public gstForceField { p //Constructor LineForce(); LineForc gstVector newNormal); virtual ~L // Get type of this class gstType getClass gstAssignUniqueId(Line } int setupN void disconnectNetwork(); // Get typ

PAGE 124

114 irtual gstType getTypeId() { return getClassTypeId(); } UE if this class is same or derived class of type stType type) { return stat icIsOfType(type);} // Returns TRUE if subclass is of type n staticIsOfType(gstType type) = getClassT ypeId()) return TRUE; tForceField::staticIsOfType(type)); culateForceF ieldForce(gstPHANToM *phantom); void setVolume(gstPoint newVol); ewNormal) { normal = newNormal; } ter(gstPoint newCenter) { center = newCenter; boundByB ox(center, x_len,y_len,z_len); } LineForceClassTypeId; float x_len,y_len,z_len; gstVector normal; FILE *output,*forceData; /COMPort* port; les[MAX_SAMPLES]; ; Appendix A: Continued v // Returns TR virtual gstBoolean isOfType(g virtual gstBoolea { if(type = else return (gs } virtual gstVector cal void setNormal(gstPoint n void setCen private: gstType gstPoint center; / bool connectedFlag; SOCKET sock; int samplecount; DataSample samp } #endif // AMG_CIRCLE_FORCE_H

PAGE 125

115 Appendix B: Step-Wise Procedures 1. Make sure the battery is fully charged, if not charge the battery using the charger 2. /brake e modules. nect the two probes of the vehicle simulator to the battery, be careful necting the vehicle simulator put the three switches ON (simulator booting. 5. he steering input on the shows Steering Device OK. Next push the gas and brake lever forward as/Brake Device OK. on the messa ge the system is booted and ready for f the sa me three switches and also the remote tem completely. Simulation 1. Follow all the steps in B1 to boot the AEVIT system. Note that the booting of the with s hort open on the circuit board. After the booting is complete close the short. 2. Next open the AEVIT.bs2 basic stamp program from the computer. Make sure that the serial cable is connected to com port 2 all the time. Also note that the power supply for the basic stamp is connect ed and the switch is put on. The green light on the board indicate s the power supply is good. 3. Run the basic stamp program. The program window will show the position values running continuously. After running for a few seconds close the execution. B.1. Procedure for Booting the AEVIT Driving System accompanied with the system. Check all the connections for the system ; the steering device and the gas device should be connected to their respective driv 3. Now con regarding the polarity to pr event any short circuit. 4. After con power, ignition and engaged buttons a ).Th is mkes the system ready for At this point the information center disp lay is on. Now rotate t device in clockwise and counter-clockwise direction until the message display and backward until the message shows G 6. After both the devices show ok further operation. 7. To put the system off, switch of switch. This will shut the sys B.2. Procedure to perform the Steering or Gas/Brake system should be carried out

PAGE 126

116 unn ing all throughout the Phantom operation. o steering ci rcuit interface. The B.3 1. Run sure tha 2. Next e data will be t 3. Next open the Strengthtest.cpp program from the Strengthtest.dsw workspace. 4. E 5. The rdinates of the data point. 6. After the coordinates are spec ified the PHANTOM will restrict itself to that particular 7. T six dire with th 8. T planes. Appendix B: Continued 4. Next open the serial2net.exe program. This is required for serial port connection. This program is required to be r 5. Next open the drivetest.dsw workspace from the gas/brake folder and execute the lineforce.cpp program to perf orm the gas/brake simulation. 6. To perform the steering device simulation, repeat all the steps in B1 until step 4 in B2. Note that the serial cable has to be connected t run the circleforce.cpp program from the drivetest.dsw folder. Procedure to perform the Steering Strength Test the basic stamp program (Aevit.bs2) to download it to the microcontroller. Make t the impedance circuit for the steering is short. run the serail2.net program to identify the port through which th ransferred from the PHANTOM. xecute the program to conduct the strength test experiment. program asks the user to enter the x, y and z coo data point. he user then performs the strength measurement test. The user applies forces in the ctions (x, -x, y, -y, z, -z). The forces are output in a separate text data file along e coordinates of that point. heexperiment is repeated for rest of th e data points on three different horizontal The forces are measured for each data point and stored in the text file.

PAGE 127

117 B.4 1. Run ake sur 2. Nex h the data will be t 3. Nex is requ orce data from the ser. rogram as determined in the NTOM can be set to any desired ta point for location L1 on reference line A on test e with any name. easure a new name or else the forces for every subsequent da ta point will overlap he position of the PHANTOM to reference line B on epeated for e rest of the reference lines. Appendix B: Continued Procedure to perform the Gas/Brake Test the basic stamp program (Aevit.bs2) to download it to the microcontroller. M e that the impedance circu it for the gas/brake is short. t run the serail2.net program to identify the port through whic ransferred from the PHANTOM. t open the lineforce.cpp program from the drivetest.dsw workspace. This program ired to perform the gas/brake simulati on and also to collect f u 4. Set the value of the stiffness parameter in the p experiment. This will provide with an accurate set of force data. 5. Once the lineforce.cpp program is executed the PHA position by the user. 6. Set the PHANTOM at the first da plane 1. Measure the force input of the subject in the +z and z direction. 7. This force data in stored in a separate te xt data file. Save th e fil 8. Next move to the next data point on the same reference line on location L2. M the force input at this point and store it in a ne w text file. Note that each data file has to be saved with the previous data and the old data will be lost. 9. After all the three data points have been covered terminate the program. 10. Run the program again to fix t test plane 1. Note that for every new refe rence line the program needs to be rerun. 11. Get the force data for this lin e at all three data point. This procedur e is r th

PAGE 128

118