UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Control system development for a powered upper-limb orthosis Brown, Dale 1996

Your browser doesn't seem to have a PDF viewer, please download the PDF to view this item.

Item Metadata


831-ubc_1996-0561.pdf [ 6.49MB ]
JSON: 831-1.0081036.json
JSON-LD: 831-1.0081036-ld.json
RDF/XML (Pretty): 831-1.0081036-rdf.xml
RDF/JSON: 831-1.0081036-rdf.json
Turtle: 831-1.0081036-turtle.txt
N-Triples: 831-1.0081036-rdf-ntriples.txt
Original Record: 831-1.0081036-source.json
Full Text

Full Text

CONTROL SYSTEM DEVELOPMENT FOR A POWERED UPPER-LIMB ORTHOSIS by D A L E BROWN B.A.Sc, The University of British Columbia, 1986 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF T H E REQUIREMENTS FOR T H E D E G R E E OF MASTER OF APPLIED SCIENCE in T H E F A C U L T Y OF G R A D U A T E STUDIES Department of Mechanical Engmeering We accept this thesis as conforming jp thejrequired s t a n d a r d , THE UNIVERSITY OF BRITISH COLUMBIA April 1996 © Dale Brown, 1996 In presenting this thesis in partial fulfilment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholariy purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission. Department of M g ^ & W l < ^ A l £rJc^-ifJg^r2| fiJtS-The University of British Columbia Vancouver, Canada Date DE-6 (2/88) ABSTRACT The objective of this research project work is to develop an efficient and simple control strategy and design associated signal input devices for a powered upper-limb orthosis. The criteria are to miniiriize the complexity of the control operations required by the user and to improve reliability of a powered orthosis while maintaining the capability to perform daily living tasks. This goal has been achieved through three stages of research. In the first stage, the U B C orthosis design was optimized for modularity, manufacturability, and assembly. In the second stage, potential control technologies were reviewed, adapted, and modified to suit the U B C orthosis. In the final stage, a control strategy and signal input hardware were developed. The unique contribution of this research is the adaptation of end-point control strategies to efficiently control the orthosis as opposed to the complex task of sequentially moving each joint separately. Also, the development of intuitive and easy to operate proportional and logical control signal input devices reduces the demands placed on the user. In addition, the transfer of control system complexities from the user to a microcontroller results in a more user-friendly set of devices. Upon implementation of the control software, testing for mechanical range of motion, speed of response, mode switching, safety mechanisms, and visual status feedback was performed. Rigorous laboratory testing of the orthosis and control devices with U B C researchers is recommended, followed by clinical testing of the device with several potential users. ii TABLE OF CONTENTS Abstract ii Table of Contents < iii List of Tables vi List of Figures vii Acknowledgments viii 1. INTRODUCTION 1 2. LITERATURE REVIEW, BACKGROUND, AND TERMINOLOGY 5 2.1 LITERATURE REVIEW 5 2.2 PREVIOUS ORTHOSIS DEVELOPMENTS BY RESEARCH T E A M 7 2.2.1 Target User Group 7 2.2.2 Identification of Desired Tasks 8 2.2.3 Determination of Required Motion for Daily Living Tasks 9 2.2.4 Kinematic Evaluation 10 2.3 TERMINOLOGY 11 2.3.1 Degrees of Freedom 11 2.3.2 Orthosis Components 12 3 OPTIMIZATION OF ORTHOSIS FOR DESIGN, MANUFACTURING, AND ASSEMBLY 14 3.1 OVERVIEW 14 3.2 ORTHOSIS MODIFICATIONS 16 3.2.1 Structural 16 3.2.2 Mechanical 16 3.2.3 Assembly 17 3.2.4 Adjustability 17 3.3 INTERFACE MODIFICATIONS 18 3.3.1 TLSO 18 3.3.2 Arm Cups 19 3.4 POTENTIOMETER MODIFICATIONS 20 4. REVIEW OF POTENTIAL CONTROL METHODS 24 4.1 OVERVIEW 24 4.2 REVIEW BACKGROUND 25 4.3 REVIEW PROCEDURE 26 4.3.1 Design Inputs 27 4.3.2 Minimum Functional Requirements of the Control System 29 4.3.3 Design Outputs 30 4.3.4 Criteria for Evaluation 31 4.4 POTENTIAL CONTROL SYSTEM METHODS 32 iii 4.4.1 Shoulder Movement Transducers 32 Overview 32 Shoulder Transducers and Mounting 34 Anatomy 35 Applications 35 Advantages 36 4.4.2 Myoelectric Control 37 The Electromyographic (EMG) Signal 37 Applications 37 Myoelectric Control Sites 38 Recording Electrodes 39 Signal Processing 40 4.4.3 Eye Movement 40 Eye Movement Recording Techniques 41 Applications 42 Disadvantages 42 4.4.4 Head Movement 43 Contacting Head Controls 44 Non-contact Systems 45 4.4.5 Other Control Sources 49 4.5 COMPARISON OF CONTROL TECHNIQUES 50 4.6 CONCLUSIONS 51 5. END-POINT CONTROL STRATEGY 52 5.1 CONCEPT 52 5.2 OPERATIONAL SUMMARY 54 5.3 DENAVTT-HARTENBERG METHOD , 55 5.3.1 D - H Coordinate Systems 55 5.3.2 D - H Coordinate Transformations 57 5.3 DIFFERENTIAL KINEMATICS 59 6. CONTROL SYSTEM DEVELOPMENT 65 6.1 rNTRODUCnON 65 6.2 CONTROL SYSTEM DESIGN SUMMARY 65 6.3 DETAILED CONTROL STRATEGY 68 6.3.1 Position Mode 69 6.3.2 Orientation Mode 69 6.3.3 Operational Planes 70 6.4 HEAD CONTROLLER 72 6.4.1 Functional Aspects 72 6.4.2 Principle Of Operation 74 6.4.3 Safety Aspects 76 6.4.4 Mounting Requirements 76 6.5 SHOULDER CONTROLLER 81 6.5.1 Shoulder Movement 81 6.5.2 Functional Requirements 81 6.5.3 Principle of Operation 82 6.5.4 Available Signal Types 83 Function of Position 83 Function of Time 84 6.5.5 Control Functions 85 6.5.6 Investigation of Different Design Configurations 86 6.5.7 Final Hardware Design 89 6.5.8 Attachment of Shoulder Controller Harness 92 iv 6.5.9 Attachment of Shoulder Controller 93 6.6 SUMMARY 93 7. C O M P U T E R C O N T R O L 95 7.1 OVERVIEW 95 7.2 CURRENT DESIGN 95 7.2.1 System Input Processor 96 Head and Shoulder Algoritiims 97 Differential Kinematics Algorithm 97 7.2.2 Position Processor 98 7.3 HISTORICAL DEVELOPMENT 98 7.3.1 Prototype One 99 7.3.2 Prototype Two 100 7.4 USER FEEDBACK 102 8. DISCUSSION 105 8.1 INTRODUCTION 105 8.2 PRELIMINARY EVALUATION : 105 8.2.1 Range of Motion 105 8.2.2 Potentiometer Angular Position Feedback 105 8.2.3 Head Controller Function 106 8.2.4 Shoulder Controller Function 106 8.3 OPERATION OF ORTHOSIS 106 8.3.1 Power 106 8.3.2 Initial Power-up 106 8.3.3 Mode Selection 107 8.3.4 Motion Control 108 8.3.5 Operation 110 9. C O N C L U S I O N S I l l 9.1 INTRODUCTION I l l 9.2 CONCLUSION SUMMARIES I l l 9.2.1 Orthosis Design 112 9.2.2 Control Methods 114 9.2.3 Control Strategies 115 9.2.4 Control System Device Development 116 9.3 RECOMMENDATIONS FOR FUTURE WORK 118 9.3.1 Clinical Trials 118 9.3.2 Structural Components 118 9.3.3 Mechanical Components 118 9.3.4 Head Controller 120 9.3.5 Shoulder Controller 120 9.3.6 Potentiometers 120 9.3.7 Motion Analysis 121 9.3.8 Microcontroller 121 9.3.9 User Feedback 121 9.4 SUMMARY 122 R E F E R E N C E S 123 Appendix A : End-point Control: Denavit-Hartenberg Variables 128 Appendix B: MathCAD Printout: Kinematic Equations 131 v LIST OF TABLES Table 2-1. Desired tasks Table 2-2. Powered orthosis components 1 Table 4-1. Design inputs 2 Table 4-2. List of minimum functional requirements of the control system 1 Table 4-3. List of desirable and undesirable system outputs 2 Table 4-4. Evaluation criteria ~ Table 4-5. Previous shoulder motion results 2 Table 4-6. Motion produced by the unparalyzed shoulder muscles 2 Table 4-7. Shoulder control commands and examples of use 2 Table 4-8. Advantages of the shoulder as a control site and associated controllers 2 Table 4-9. E M G control commands and examples of use 3 Table 4-10. E M G control sites 3 Table 4-11. Other control sources A Table 4-12. Evaluation of alternative control techniques -Table 5-1. Denavit-Hartenberg parameters 5 Table 6-1. Position Mode DOF's t Table 6-2. Orientation Mode DOF's 1 Table 6-3. Summary of head controller actions "t Table 6-4. Head controller mounting considerations 1 Table 6-5. Functional requirements of the shoulder controller £ Table 6-6. Command signals of Option 1 and 2 shoulder controller configurations i Table 6-7. Benefits of head and shoulder controllers 5 Table 7-1. L E D feedback status IC Table 8-1. Mode selection and L E D status IC Table 8-2. Mode reset to N E U T R A L IC Table 8-3. Head controller scaling factors IC Table 8-4. Shoulder controller scaling factors IC Table 8-5. Orientation Mode inputs IC vi LIST OF FIGURES Figure 2-1. User group characteristics 8 Figure 2-2. Motion analysis 10 Figure 2-3. Degrees of freedom of the human arm 11 Figure 2-4. Final orthosis DOF 12 Figure 2-5. Orthosis naming conventions 13 Figure 3-1. Main components of powered upper-limb orthosis 15 Figure 3-2. TLSO reinforced mounting flats 19 Figure 3-3. Potentiometer gearing method 20 Figure 3-4. Upper-arm potentiometer mounting 21 Figure 3-5. Potentiometer modifications 22 Figure 4-1. Control system review schematic 27 Figure 5-1. Controlled degrees of freedom 53 Figure 5-2. General operational schematic 54 Figure 5-3. Orthosis axes layout and D - H coordinate systems 56 Figure 6-1. General arrangement of the head and shoulder controllers 66 Figure 6-2. Schematic of control components 67 Figure 6-3. Control logic flowchart 68 Figure 6-4. Coupled DOF 69 Figure 6-5. Individually controlled DOF 70 Figure 6-6. Operational planes 71 Figure 6-7. General operation of head controller 72 Figure 6-8. Head controller directions 73 Figure 6-9. Diagram of inclinometers used on head controller 74 Figure 6-10. Joystick analogy for head controller 75 Figure 6-11. Diagram of operating and neutral zone 76 Figure 6-12. Headphone-style mounting of encoders 78 Figure 6-13. Final design of the head controller attachment 79 Figure 6-14. Basic principle of operation of shoulder controller 82 Figure 6-15. Shoulder controller: position function 84 Figure 6-16. Shoulder controller: time function 85 Figure 6-17. Shoulder controller switching configurations 86 Figure 6-18. Modified shoulder controller option 88 Figure 6-19. Shoulder commands summary 89 Figure 6-20. Shoulder controller assembly 90 Figure 6-21. Attachment of shoulder harness 93 Figure 7-1. Control system schematic 96 Figure 7-2. Prototype one: three control boards linked in series 99 Figure 7-3. Prototype two: three independent control boards 100 Figure 7-4. L E D display 103 Figure 8-1. Shoulder controller mode selection 107 vii ACKNOWLEDGMENTS I would like to thank the British Columbia Health Care Research Foundation (BCHCRF) and the Natural Science and Engineering Research Council (NSERC) for providing the funding for this project. In addition, I would like to thank Dr. Douglas P. Romilly and Dr. Cecil Herschler for their continuing efforts, perseverance, and guidance throughout the duration of the project. Thanks also to Alan Heaver and Mark Baumgartner of Pentlands for their involvement in the body casting and plastic molding procedures, and Joanne Smith for sharing her practical knowledge of hand orthoses. Finally, the tangle of wires was inherited and sorted out and thousands of lines of code debugged by a dedicated Constantine Somow. A well deserved thanks to my wife, Val, for her helpful ideas, proof-reading, making the Kraft Dinner, and paying the bills so that I could complete this thesis. viii 1. INTRODUCTION In general terms, an orthosis is an external device attached to the body in order to correct a deformity and, if possible, restore function, through static or dynamic control of the affected body segments. The specific application of the University df British Columbia (UBC) orthosis is to support one entire arm of a person with severely weakened or paralyzed arms. This is in contrast to a prosthesis, which replaces an amputated or missing limb, or to a robotic assistive device, Which operates separately from the user. By activating appropriate control inputs, a user directs the orthosis-assisted arm to perform basic daily living tasks such as eating, drinking, and reaching for objects. For support purposes, it is rigidly attached to a portable, plastic body cast which is custom-fit to the user, as opposed to being permanently mounted to a wheelchair. By regaining some function in the assisted limb, the user has the potential to achieve a higher degree of independence. Typical potential users are those which suffer from either a debilitating neuromuscular disease or an injury which results in a complete loss of function in the arms. Diseases include pohomyelitis, muscular dystrophy, multiple sclerosis, and amyotrophic lateral sclerosis (ALS or Lou Gehrig's disease). Irrjuries include those to the brachial plexus or spinal cord. The potential users, however, are assumed to retain full range of head motion, approximately half the range of shoulder motion, full cognitive abilities, and intact sensation in the hands. The overall objective of the project is, therefore, to develop an improved powered upper-limb orthosis capable of restoring function and mobility to people with weak or paralyzed arms. 1 The human arm has seven degrees of freedom, excluding the complex actions available at the shoulder and hand. As a compromise, the U B C upper limb orthosis integrates and controls the five most commonly used degrees of freedom of the arm plus the palmar grasp. The benefits of mimmizing the number of degrees of freedom are reduced structural, mechanical, and control complexities of the device. The simplified device, however, retains sufficient functionaUty and has the potential of performing high priority daily living tasks. The result is a device that is less bulky, more reliable, less expensive, and ultimately, more acceptable to potential users. Previous powered orthoses often suffered due to the implementation of control strategies that required sequential joint-by-joint switching to individually activate each degree of freedom [7,13-15,17,18,33,35-37,40,41,45]. The technical limitations inherent in such a strategy are poor functionaUty, slow speed of operation, and lack of proportional control. Similarly, control input devices have often involved unreliable myoelectric control signals, mounted to functioning muscles, or awkward mechanisms, such as tongue switches, that interfered with daily living tasks [15,17,18,42]. The implications for the user are frustration and fatigue from using the control system [23,44,50]. From the research and development to date regarding orthosis control systems, as referenced above, there currently appears to be very few systems which combine ease of use, speed of operation, and feedback to the user in a simple, practical, and reliable manner. To remedy these problems and improve the user-friendly aspects of the control system, the concept of end-point control [20,54] was reviewed as a possible control manner for the orthosis. End-point control involves the issuing of simple commands, such as forwards/backwards, or left/right, to produce movement of several joints and links concurrently, in order to move a 2 specified end-point (e.g. the user's hand) to a desired destination. Controlling the end-point is considerably more intuitive and a much simpler strategy than the complex task of sequentially moving each joint. While the overall objective of the project was the development of an improved powered upper-limb orthosis capable of restoring function and mobility to people with flaccid or paralyzed arms, the specific purpose of the project described in this thesis was to develop an end point control strategy and to design associated input devices for the U B C orthosis while n_nirnizing the complexity of the control operations required. Compromises were made regarding the degrees of freedom to be incorporated and powered, and thus to the achievable workspace in order to simplify the demands placed on the user to operate the device. A partial initial prototype orthosis was built by machinists at the University of British Columbia machine shop and Outside machine shops, based on the recommendations resulting from previous work by the project research team at U B C [1-6,23,48,49,52]. Although the designs for a complete orthosis were fully developed, many components required modifications, ranging from complete redesign to minor revisions, prior to functionality testing of the device. Additional concerns addressed were the adjustability aspects of the orthosis, the mounting of the drive motors and electronics, and the positioning of the joint potentiometers. Also, many components were subject to optimization for weight or bulk reduction, ease of assembly, and simplified manufacturing. An integral part of this thesis work, therefore, was to revise the designs of numerous linkages and mechanisms, resulting in a complete second prototype. The manufacturing was contracted to outside machine service companies [8,26]. 3 Based on the overall project goals and a review of the previous project work, the following objectives were set out for the current research: 1) To revise and optimize the design, manufacture, and assembly of the orthosis. 2) To investigate potential control technologies available in the literature or in use. 3) To develop the overall control strategy for the orthosis. 4) To design the control system input mechanisms. 5) To perform clinical evaluation (rraining, testing) of the resulting orthosis system. Through these objectives, it was desired to provide unique contributions to the fields of biomedical and rehabilitation engineering in the development of assistive devices. The acceptability of technology to users and the ability to operate the powered orthosis with reasonable levels of skill and endurance remained as a common focus throughout the research, design, manufacturing, and testing phases of this thesis. 4 2. LITERATURE REVIEW, BACKGROUND, AND TERMINOLOGY 2.1 LITERATURE REVIEW A structured literature search (1966- Sept. 1994) using MEDLINE, CTNAHL (Nursing and Allied Health database), H E A L T H , U B C LIB (databases included life sciences, engineering, and sciences) and CURRENT CONTENTS (Institute for Scientific Information) was undertaken to ascertain whether or not the concept of end-point control had ever been applied to a powered upper-limb orthosis. Keywords used for the search were: • 'end-point control' (text word) • 'upper-limb orthosis' (text word) • 'orthotic devices' • 'arm' The search identified a single article by Guittet et al (1979) [20] that described the use of end-point control in the development of the "Spartacus Telethesis", a manipulator for high level tefraplegic persons. Their work was driven by the lack of satisfactory earlier attempts to match powered mechanical structures to the human body in an acceptable way, therefore abandoning the mobilization of the paralyzed upper-limb. In contrast to the present work, the telethesis is a robotic mechanical arm mounted to the user's workspace in an arrangement that permits manipulation of objects and the performance of basic daily living tasks within the workspace. It is comprised of six degrees of freedom, which are powered by electrical motors, and a powered gripper at the end. Although not described in detail, the control system utilizes a two or three degree of freedom head movement transducer and various mode switching devices, based on myoelectric signals from muscle contraction or sound signal signals captured by a microphone mounted near the larynx. 5 An additional search was made using the co-author names of the Guittet paper. A follow-up article by colleagues Kwee et al (1983) [34] was found which describes initial experimentation with the Spartacus Telethesis. Limited mention is made of the end-point control approach, but the authors do stress the importance of the operator generating a limited number of input signals in order to control many motors and motions in a coordinated way to achieve complete movement within a certain workspace. In the Kwee et al paper, a reference was made to an earlier paper by Whitney (1969) [54] wherein the mathematics of end-point control were presented and discussed. The paper addresses the desire to provide the user with natural control input commands while the underlying mathematics are absorbed by the control system. In presentation of the motion control concepts, the paper emphasizes the need to simplify and coordinate the motion of several joints simultaneously, without undo burden on the operator, in order to produce efficient and relatively intuitive positioning of the hand. Based on the structure and keyword combinations selected, no additional papers describing a powered upper-limb orthosis with end-point control were found. This does not, however, necessarily imply that there are no other articles specific to the present application; the authors may have neglected to include the above keywords. 6 2.2 PREVIOUS ORTHOSIS DEVELOPMENT BY RESEARCH TEAM The development of the U B C powered upper-limb orthosis occurred over approximately a four year period. The overall goal for the project involved the development of a new, powered upper-limb orthosis which would provide function to people with severe weakness or paralysis in their arms. The main objectives of this thesis work, representing the final stages of the project, was previously described in Section 1. The conclusions and recommendations of the prior project work have a direct tearing on the focus of the current research, therefore a discussion of various aspects of this previous work with respect to the control system development is provided in the following sections. 2.2.1 Target User Group In order to define the scope of the project, it was necessary to consider a concise set of user characteristics on which to base the orthosis and control system designs. This involved determining the target user group, understanding their disabilities, and recognizing their remaining functional capabilities. Although additional users with differing capabilities may also benefit from the device, the U B C powered upper limb orthosis is targeted for those individuals who have lost upper limb function as a result of paralysis or disease. Typical diseases and injuries include those described in Chapter 1. Based on the recognized dysfunction expected from these conditions, the orthosis control system design assumes the user characteristics as defined in Figure 2-1. 7 w i i i JJ no capability of movement from the shoulders down 2 completely paralyzed arms intact sensation -temperature -pressure —texture no spasticity -adul t -s ized —male/female users —varying torso sizes varying head sizes R O M s—s f - b full range of motion of all joints full range of head motion s ide- to-s ide full range of head motion front—to—back approximately 1/2 range of vertical shoulder motion full cognitive abilities Figure 2-1. User group characteristics [4]. 2.2.2 Identification of Desired Tasks The value of the orthosis lies in its ability to perform tasks that are important to the user. In order to identify these tasks, surveys and interviews with potential users were conducted in earlier research [4]. The top five task priorities involving the use of arm movement, in order of importance, are summarized in Table 2-1. 8 Table 2-1. Desired tasks [4]. Priority Task description 1 reaching/picking up objects 2 basic personal hygiene 3 hobbies/crafts 4 eating/drinking 5 housework The ability to carry out such everyday tasks is important to gaining or maintaining independence. Reaching for objects has the highest priority because it is integral to many activities. The successful performance of these tasks is ultimately dependent on the ease by which the equipment can be manipulated using the control system. 2.2.3 Determination of Required Motion for Daily Living Tasks The required motions for daily-Uving tasks were evaluated with two main goals in mind. Firstly, the evaluation provided a fuller understanding of the biomechanics and limitations of limb range of motion associated with the desired tasks. Secondly, it provided useful 3-D data regarding joint rotations, positions, and orientations that are required to perform certain tasks. This data aided the team in ascertaining whether or not the orthosis could perform the desired tasks with limited degrees of freedom (DOF). The natural motions of able-bodied people performing specific functional tasks were recorded with two video cameras [4]. Reflective markers were attached to the dominant arm in order to 9 follow the joint locations and rotations (Figure 2-2). A computer and custom software was used to analyze the video frames and calculate the workspace usage. camera & videotape #1 task performance table camera & videotape #2 TV monitor image monitor i i VCR computer Figure 2-2. Motion analysis [4]. 2.2.4 Kinematic Evaluation Using the data from the motion analysis, the human arm was modeled mathematically to evaluate whether a powered orthosis with less than seven DOF could perform the same functional tasks in order to simplify the mechanical design and control system. Upon systematic fixing of individual DOF, the algorithm determined whether the remaining DOF were able to compensate to achieve the task. The analysis resulted in the recommendation of two orthosis configurations, the most feasible of which was designed and manufactured. This selected design is described in more detail in the following sections. 10 2.3 TERMINOLOGY 2.3.1 Degrees of Freedom Six degrees of freedom (DOF), comprised of three positions and three rotations, are required to specify completely the location and orientation of an object in space [54]. A typical manipulator, therefore, has six DOF, while others may contain additional DOF and are termed redundant. Additional DOF, however, allows the manipulator to reach more locations and reach them with smaller joint angle excursions than can non-redundant manipulators. The human arm, from the shoulder to the' Wrist, can be approximated and modeled as having seven distinct DOF [19] (Figure 2-3). This excludes, however, the motion of the individual fingers and complex motion within the shoulder joint. The natural, fully functional human arm, therefore, is highly redundant in terms of DOF. © SHOULDER azimuth Figure 2-3. Degrees of freedom of the human arm [4,19]. 11 The convention used to describe each DOF of the U B C orthosis indicates the specific anatomical location, followed by the type of motion available [4]. Some joints have multiple DOF's, such as the shoulder which has three and the wrist which has two. The U B C prototype orthosis, however, has five D O F plus the action of grasping. The motion study and mathematical simulation found that fixing two DOF would reduce the mechanical and control complexities, while still maintaining the ability to perform high priority daily-living tasks. The two fixed DOF are shoulder elevation and wrist yaw. Figure 2-4 summarizes the final model that the control system must be capable of manipulating. 2.3.2 Orthosis Components The U B C powered upper-limb orthosis is comprised of several key components which will be referred to in the following chapters, and are summarized in Table 2-2. 12 Table 2-2. Powered orthosis components. Element Action/Responsibility Component Examples sensors/input devices provide input to the control system encoders, potentiometers interface connect control system to the hardware wiring, connections control system process information (input, output, feedback) micro-computer power transmission convert electrical power to mechanical motion motors, gears, cables power supply provide power to the system battery packs structural frame support, house, and align the electrical and mechanical components aluminum /stainless steel assemblies In particular, for consistency and to simplify the terrninology, the structural frame components are designated according to the DOF supported or controlled. These are illustrated in Figure 2-5. azimuth (rotation) Figure 2-5. Orthosis naming conventions [4]. The design, manufacturing, and assembly of the orthosis structure are reviewed in the next chapter. 13 3. OPTIMIZATION OF ORTHOSIS FOR DESIGN, MANUFACTURING, AND ASSEMBLY 3.1 OVERVIEW Although the design of the initial prototype, developed by earlier team members [1-6,23,48,49,52], was fully documented and AutoCAD drawings existed for most of the components, only a partial prototype had been built when the present work (i.e. this thesis) was initiated. This partial prototype had been built by staff machinists at the U B C machine shop and outside machine services. The present work resulted in significant changes to the prototype. While some of the remaining components were manufactured as designed, many were modified or not manufactured at all. The decision to not manufacture certain parts was based on designs and drawings that were not suitable for machiriing, were poorly designed, were inadequately sized structurally and mechanically, or would have failed to produce the desired function. Subsequent investigation into these components revealed problems which warranted substantial redesign work. Due to the extensive nature of the parts affected by redesign and the potential time necessary to interface revised components with old ones, it was decided to abort further manufacture of the original Orthosis and proceed with second prototype. The timeline, budget, and overall conimirments to BCHCRF to produce working deliverables did not permit a full redesign to the general conceptual layout of the orthosis. For example, the structural routing of the orthosis beneath the arm, the remote and local locations of the various drive motors and gearheads, and the use of flexible drive cables were maintained but optimized or improved. Similarly, the use of a worm and gear combination for producing rotary motion at the elbow, wrist, and hand, as opposed to exploring the use of linear actuators or alternate 14 mechanisms to produce the motion, was preserved but optimized Or improved. Additional comments regarding potential improvements are summarized in Chapter 9. Numerous modifications, therefore, to address joint alignment, adjustability, assembly, and manufacturabihty of the structural and mechanical linkages were required prior to functionality testing of the device. These changes were made within the bounds of mamtaining a streamlined appearance and a structurally sound support, while not sacrificing functionality. The result was the production of a second complete prototype. The final design is shown in Figure 3-1, which highlights the main components. Figure 3-1. Main components of powered upper-limb orthosis. The components subjected to modifications are summarized in the following sections and drawings. Manufacturing services were provided by Horizon Engineering International and Aviation Engineering, both of Vancouver, B.C. [8,26]. 15 3.2 ORTHOSIS MODIFICATIONS 3.2.1 Structural Parts originally intended to be manufactured from mild steel and stainless steel were converted to aluminum wherever strength, Wear, and tolerances permitted. This helped to reduce the weight and bulk of the orthosis structure. Also, where #304 stainless steel was specified, #303 was substituted to improve the ability to machine parts. Other components involving aluminum and stainless steel were reduced in size or modified in geometry where possible. For example, redundant, non-load-bearing blocks of material were milled away from the elbow and wrist gearboxes. Tubing wall thicknesses were also decreased to match the potential loading, and increased where a minimum number of threads were required for set screws or adjustment screws. 3.2.2 Mechanical The precision machining of the majority of the orthosis components was performed by Horizon Engineering International and Aviation Engineering, both of Vancouver, B.C. In addition to the attention to detail and the ability to hold tight tolerances, the machinists were extremely capable of assembling the various components and appreciated the relationship of one component to another. In particular, their expertise was essential in machining and assembling the worm gear/gear drive units (located at the elbow, wrist, and grasp joints). In order to reduce backlash in these gear boxes, extremely tight tolerances on the order of 0.013 mm (0.0005") had to be held. Furthermore, since each assembly is based on the meshing of two gear and shaft sub-assemblies, the tolerances had to maintained within each sub-assembly. Final fitting and alignment was facilitated by oilite bushing material to provide proper gear meshing. In addition, the spiral engagement of the gear and worm required the sub-assemblies to be "turned in" to one another to properly mesh and to avoid damage to the teeth. The previous gear and worm assemblies were 16 press-fit together, resulting in damage to the brass gear teeth. Also, the elbow gear boxes had only a single bearing on the driven pinion shaft, resulting in an unstable gear mesh when under load. This was replaced with single row, deep groove ball bearings on each end of the shaft. The typical small shafts located throughout the orthosis utilized relatively small bearing sizes (5 mm to 19 mm). Such small sizes required snap rings and grooves in the aluminum housings instead of interference press fitting as originally designed. The delicate clearance between the inner and outer races of the bearings would not permit press fitting without damaging the contact surfaces and therefore decreasing their performance. Thrust bearings were also added to worm gear drive shaft ends to prevent the worms from turning the shafts out of the casings. 3.2.3 Assembly General design changes focused on producing consistent, interchangeable parts that could be used from one orthosis to another. Component design standardized on readily available hex key fasteners for ease of assembly, adjustment, and to minimize the type and number of tools required. The original design specified Phillips, Robertson, flat, and hex socket fasteners, many of which were undersized for their application or were non-stock, special-order sizes. Also, since all bearings were slip fit into housings, they require only snap ring pliers for removal and replacement, instead of custom insert and removal blocks to forcibly remove those installed by interference fit. 3.2.4 Adjustability Adjustable structural lengths account for anatomical differences between users and are located on the shoulder, upperarm, forearm, and grasp sections. Adjustable positioning of the arm cups was also included to provide comfort and fit. Previous vertical adjustments underneath the shoulder 17 (azimuth), for example, were made by screwing a tapped sleeve about the central threaded azimuth shaft (fixed to the azimuth drive motor), followed by a lock nut to retain the adjusted position. This required, however, that the entire orthosis be rotated about the central azimuth post, which meant the user had to be out of the TLSO (see Section 3.3.1). A similar threaded arrangement was designed to accommodate varying lengths of the forearm, which required all the apparatus distal to the wrist be rotated without the hand in place. Although the threaded joints provide the capacity for very fine adjustment, the mechanism and technique was unsuitable. A system utilizing a series of holes in a sleeve and one or two tapped holes in a rod was determined capable of achieving sufficient discrete increments of adjustments in a manner that is functional, inexpensive to manufacture, and simple to adjust. 3.3 INTERFACE MODIFICATIONS 3.3.1 T L S O The "thoracic-lumbar-sacral-orthosis" (TLSO) is the custom plastic body fixture that encircles the lower back and arxlorninal region of the user. Raised flats, complete with embedded aluminum skins and riveted blind nuts, are incorporated in the TLSO for smooth and secure mounting of the various components (Figure 3-2). These are provided for mounting of the drive motor bracket, azimuth bearing housing, microcontroller, and battery pack. Since the orthosis is cantilevered away from the TLSO, the shoulder upright main support tube required firm anchoring to the TLSO and the embedded aluminum skin. The original design specified no mounting flats, no embedded aluminum plates, and relied solely on the strength of the plastic to prevent the fasteners from pulling through. Also, the plastic holes tended to become oval, causing a loose fit over a short period of usage. 18 Figure 3-2. TLSO reinforced mounting flats. For fitting the TLSO to the user, the front TLSO opening was altered to a side opening. This modification also made the front surface available for mounting of the microcontroller and battery packs. 3.3.2 Arm Cups The original design specified custom molding of arm cups, matching each individual user's upper arm, forearm, and wrist, to hold the arm along the orthosis structure. Upon molding these to the author's arm, however, it became apparent that this method restricted the positioning of the arm to the exact molded position. In any other position, bony prominences of the elbow or the wrist failed to seat properly and became uncomfortable. Also, since the molding was done on the bare arm, there was no provision for clothing or muscle atrophy. In addition, it was felt that since the positioning of the arm along the orthosis could likely vary slightly from day to day, some level of adjustability for comfort or user preferences should be incorporated. 19 A simple and less costly solution was the molding of flexible plastic cups for positioning and holding the arm in place, while allowing freedom to reposition throughout the day. The cups were molded in an open, partial cylindrical shape in approximate sizes to suit the author's upperarm, forearm, and wrist. The flexibility and opening gap were capable of accommoclating varying clothing thicknesses as well as different arm sizes. They are also complete with an embedded aluminum skin for mounting to the orthosis structure. Velcro bands are provided for easy fitting. 3.4 POTENTIOMETER MODIFICATIONS The attachment of the potentiometers to the individual joints to provide angular rotation information proved to be the most difficult challenge. This was due almost entirely to the lack of availability of potentiometers designed for over-the-shaft mounting on motors and shaft assemblies. Typical rotary potentiometers consist of a sealed housing containing the wiper mechanism and resistive elements, with a shaft protruding from the housing. In order to work with the joints and shafts on the orthosis, this design of potentiometer would require driving through a gear and pinion arrangement, mounted external to the joint (Figure 3-3). Figure 3-3. Potentiometer gearing method. 20 The gearing shown in Figure 3-3 would add to the bulk, detract from the aesthetics, and be a prime location for getting clothing or other objects caught in the meshing teeth, unless a further housing was provided around the gearing. An ideal potentiometer would be one with a hole through the center through which a shaft could pass and drive the wipers direcdy axially. Inexpensive plastic Bourns Slimline potentiometers which could readily be modified were selected for the orthosis. The potentiometers located at the azimuth drive motor and forearm gearhead, labeled PI and P4 respectively in Figure 3-1, required a circular through-hole in the potentiometer to allow each shaft to pass through. The body of the potentiometer was restricted from moving and the shaft contact was friction fit. The potentiometer located at the upperarm roll tube (labeled P2 in Figure 3-1) was fixed to the tube support bracket, while a small aluminum drive arm extended from the roll tube to the shaft of the potentiometer (Figure 3-4). AZIMUTH upright support tube (looking down) = fixed = rotates Figure 3-4. Upper-arm potentiometer mounting. 21 Chiginally, the upper-arm potentiometer was mounted parallel to the roll tube. A rubber roller attached to the potentiometer shaft was driven from the external surface of the roll tube but experienced slippage and was rejected. A gearing arrangement was also tried at this location but was abandoned for the reasons previously described. The remaining potentiometers, located on the end of the elbow (P3), wrist (P5), and grasp gearshafts, required a square through-hole to be made in the shaft region of the potentiometer (Figure 3-5). The stainless steel gear shafts were squared along a set length in order to act as a key to drive the potentiometers. The body of each potentiometer was anchored to the body of the gear boxes to prevent rotation. POTENTIOMETER: modifications Figure 3-5. Potentiometer modifications. 22 Potentiometer modification entailed that the shaft first be cut off, then an undersized pilot hole be drilled, followed by hand filing with a square file until the hole was a slight interference fit with the shaft. In addition, the backing plate of the potentiometer had to be milled to a hole size slightly larger than the edge-to-edge distance of the shaft so as not to interfere with the turning action of the shaft. As shown in Figure 3-5, care had to be taken with this backing plate because the resistance plate and contact wipers of the potentiometer were very close to the outside diameter of the clearance hole. The potentiometers are currently the only source of feedback to the control system. Additional possible sensors which detect contact forces with surrounding objects or sensors which provide indication of proximity to objects within the workspace were contemplated but not implemented on the current prototype. The responsibility for such feedback of force application and obstacle avoidance information rests with the user and their own cognitive ability and remaining tactile sensation. Similarly, the provision for structural compliance members for force absorption, distributed at key locations throughout the orthosis frame, was reviewed but not implemented at this stage. Once a suitable orthosis structure was complete and the necessary range of motion at the joints, strength of support members, and adjustability of components were addressed and incorporated, the next step was to provide a control system to send signals to the orthosis to produce the user-desired motion. The next chapter reviews suitable potential control methods which use the remaining available body motion to generate input commands. 23 4. REVIEW OF POTENTIAL CONTROL METHODS 4.1 OVERVIEW The problem of researching, selecting, and developing a suitable control system for the U B C powered upper-limb orthosis involved consideration of several parameters, including the needs and priorities of the patient, the patient's functional capabilities, the patients' goals and desires for orthosis-aided tasks, and the requirements of the technology which will perform the desired functions. To operate any form of a powered rehabilitative assistance device, user-controlled input devices must be designed to work within these parameters. The results and recommendations generated by the previous research team were significant in identifying the design inputs and the minimum functional requirements of the control system to be designed in order to be compatible with the U B C orthosis. The characteristics of the target user group, combined with knowledge of the U B C orthosis structure, environmental and economic concerns, and social or aesthetic implications for the user constitute the design inputs. The functional requirements, determined from the design inputs, address the ability of the control system to work within these specified parameters and indicate the desired operational and safety aspects. Undesirable aspects of the orthosis motion were also identified in order to judge the most appropriate design solution. Several unique control methods have been described in the literature, including shoulder positioning, head movement, muscle activity, and eye movement. Due to the lack of available literature on joystick-type control systems for powered upper-limb orthoses, several references are made to similar control systems for wheelchairs. Since these technologies have •successfully 24 demonstrated their ability for logical and proportional motion control of a wheelchair, it was determined that their apphcability was worthy of mention. These methods were considered, reviewed, and compared to one another according to evaluation criteria to determine the system best suited for integration with the U B C orthotic device. This chapter summarizes the design inputs and functional requirements, and the criteria for evaluation of possible control system methods is also presented. 4.2 REVIEW BACKGROUND Iii the application of a powered upper-limb orthosis, a control system encompasses a strategy, a method, and one or more signal input devices. The strategy involves the general governing cognitive processes, flow of information, and control inputs necessary to communicate with the hardware and drive the orthosis. The method involves utilizing remaining available body activity to generate a suitable control signal. Finally, the signal input device involves the interface with the user and the technology required to produce a usable signal. In this chapter, the underlying methods of control are examined, which will form the basis for development of strategies and devices. The design of a control system involves biomedical and anatomical parameters which may be considerably different from nonmedical parameters found in most industries. For example, displacements may be very small, voltages are in the microvolt range, and pressures are very low, all of which are unique to the human body and present challenges to properly utilize. An input device should interface with the person in a way that minimizes the energy required to operate while being muiimally invasive and not interfering with daily living activities. In addition, an integral part of the development of a control system is the ability of the control signal to be 25 generated, captured, and processed in order to yield useful information. The inherent properties of such biomedical parameters tend to limit the practical choices available to control system design. Past development has often suffered from technologies and strategies that are either too simple or too complex and fail to achieve functionality for the user [7,13-15,17,18,33,35-37,40,41,45]. A successful orthotic control system, which may include structural, mechanical, and electrical components, should therefore address the above mentioned considerations throughout the development process. 4.3 REVIEW PROCEDURE Technologies successfully employed in rehabilitation engineering applications (i.e. assistive devices) Were reviewed. These were analyzed with respect to results obtained in the first phases of the project, wherein essentially four major goals were established (Chapter 2). 1) identify user functional characteristics 2) identify desired tasks 3) perform video motion analysis 4) perform kinematic simulation and mathematical analysis The previous research highlighted that the amount of motion required of the human body to generate the input signals varies depending on the underlying source, while some motions may be unattractive to perform or may interfere with daily living tasks. For example, a noticeable activity would be tipping the head from side to side to activate a switch. A less conspicuous motion may involve a very subtle activity such as flexing a muscle or moving the eyes. Also, certain 26 techniques involving tongue or mouth switches would not be reasonable due to interference with eating, drinking, and talking. The results of these phases helped in developing a list of design inputs and formed the basis of the evaluation criteria used to select a suitable control technique. The progression of the analyses is summarized in the following flow diagram (Figure 4-1). First phases of project: User Functional Capabilties Desired Tasks Motion Analysis Kinematic Simulation Minimum Functional Requirements Design Inputs I Control methods reviewed: EMG Vision Head Shoulder Evaluation Criteria Viable Control System(s) Figure 4-1. Control system review schematic. Before presenting the control methods reviewed, the design inputs, minimum functional requirements, and undesirable outputs will be summarized in the following sections. 4.3.1 Design Inputs Design inputs describe the pertinent factors that impact the decision making process from the standpoint of the bounds within which the team is required to work. They include the physical 27 aspects of the orthosis, the available equipment, and the capabilities of the user. Table 4-1 summarizes the relevant conditions considered. Table 4-1. Design inputs. EQUIPMENT The battery packs for the orthosis have a voltage supply of 7.2 V. The computer has two types of input ports: 1. Digital quadrature waveform 2. Variable voltage (0-5 V) The UBC upper limb orthosis has FIVE degrees of freedom, plus GRASP: 1. Shoulder azimuth 2. Shoulder roll 3. Elbow flexion/extension 4. Forearm rotation 5. Wrist flexion/extension 6. Palmar grasp ECONOMIC Financing for development of the control system relies on research grants, therefore fimcling is limited. HUMAN The UBC orthosis is designed for users having the following characteristics: 1. Two completely paralyzed arms 2. intact sensation (temperature, pressure, texture) 3. No spasticity (increased tone) and no involuntary movement 4. A full range of motion of the joints 5. Full cognitive abilities 6. Adult sized 7. Different head and torso sizes An attendant is required to put on and remove the orthosis from the user. Range of head movement is the same as in normal individuals. Range of shoulder motion is approximately half that of normal individuals. Users may have decreased muscular strength, resulting in higher muscle fatigue rates. ENVIRONMENTAL Outdoors: Temperatures: range -30°C to+35°C. Conditions: high humidity, rain, snow, dust Indoors: Temperatures: range 10°C to 25°C. Conditions: humidity, dust, static electricity 28 4.3.2 Minimum Functional Requirements of the Control System The minimum functional requirements were determined from the design inputs. They cover the ability of the control system to work within design specifications, such as voltage supply and signal types. They act as guidelines which relate to the final operating characteristics of the device in the performance of desired tasks and the acceptability of potential control methods to the user, and are listed in Table 4-2. Table 4-2. List of mmirrium functional requirements of the control system. Category Requirement General Require minimum levels of skill and endurance to operate Utilize logical, simple, and repeatable forms of motion to input the signals Provide adequate safety features Offer reliable, simple, and rugged construction User Should have sufficient adjustability to fit a wide range of torso and head sizes Account for the varying abilities of the users Power/signals Must operate with the 7.2 V power supply available to the orthosis Must generate output signals which are compatible with the computer's input ports Must produce sufficient output signals to control the 6 DOF orthosis Tasks Capable of performing desired daily living tasks Should not interfere with tasks Produce a timely response of the orthosis to input commands Safety Activation/deactivation of the orthosis should be available to the user at all times Should deactivate in response to intentional or unintentional rapid movements Incorporate a neutral zone within which all movements are ignored Social Devices should de-emphasize user disabilities and provide good general aesthetics The general and specific considerations outlined in Tables 4-1 and 4-2 emphasize the overall complexity of the control system design. Although some of the requirements may be difficult to 29 achieve at the prototype stage, they provide suitable direction and focus throughout the research and development phases. 4.3.3 Design Outputs Design outputs reflect the final operating characteristics of the control system and are classified as either desirable or undesirable features (Table 4-3). Although they appear to overlap, the desirable features are intended to be above and beyond the minimum functional requirements specified in Table 4-2. Desirable outputs, therefore, may include both functional aspects as well as generally useful or beneficial features. Table 4-3. List of desirable and undesirable system outputs. DESIRABLE OUTPUTS Able to efficiently perform desired tasks Aesthetically pleasing and as inconspicuous as possible Comfortable Easy for the attendant to put on and take off Require as little physical exertion as possible Provide excellent safety features UNDESIRABLE OUTPUTS Awkward/dangerous motion of joints User discomfort in wearing the control system Frequent breakdown and need for repair Slow speed of operation High power consumption The main desirable system output is the overall functionality of the device, or the ability for it to perform certain tasks in an efficient, user-friendly manner. Likewise, the main undesirable output would be the inability of the device to perform even the most basic of tasks. 30 4.3.4 Criteria for Evaluation Prior to considering alternative control system designs, a list of evaluation criteria was established on which to base future decisions for the best design alternative. The following criteria (Table 4-4) have been used to evaluate previous devices [1,31]. The number in parentheses following each criterion is a weighting factor. The total score (up to 100) can be used to evaluate potential control system alternatives. Table 4-4. Evaluation criteria. Ease of Use (20) • minimized control movements • user feedback • short training time • minimized physical exertion Safety (20) • easy for user to activate/deactivate • able to discriminate between intentional and unintentional movements Reliability (15) • signal detection and repeatability • signal-to-noise ratio and resolution • power consumption and standby power • structural integrity and repairability Performance (15) • speed of Operation • proportionality of signals and movements • cognitive requirements and training time • feedback required (proprioceptive, auditory, visual) User Comfort (10) • hghtweight • minimized bulk and appurtenances • adjustability for good fit Convenience (10) • interference with other activities • put on/take off time • modularity and adjustability • versatility of utilization Desirability (5) • discrete and unobtrusive • overall aesthetics Affordabitity (5) • rninimized cost to manufacture and assemble 31 The evaluation was used as a basis for screening and selecting potential control methods, summarized in the next section. 4.4 POTENTIAL CONTROL SYSTEM METHODS The following is a brief summary of the control method review and the basic reasons for rejecting, accepting, or adapting the specific technology to work with the powered upper-limb orthosis. The four most suitable control methods for the current application involve the shoulder, muscle activity, vision, and the head as control sites or sources. 4.4.1 Shoulder Movement Transducers Overview Most patients who have lost arm function through either paralysis or disease still retain some shoulder motion. This motion, however, may be considerably weaker than a person with normal function. They may also lack fine control of normal shoulder motion such that pure movement in a horizontal or vertical plane may be difficult. Although the ability of patients to move the shoulder varies significantly with diseases or injuries, most patients retain sufficient motion to activate a shoulder-mounted controller [1]. Several studies have been performed to determine the viability of the shoulder as a command control source for assistive devices, and determined that shoulder movement in two independent directions is possible for the production of control signals [29,31,38]. The signals can be generated by movements of the shoulder along a vertical axis, which involves elevation and depression, or by movements along a horizontal axis involving protraction and retraction of the shoulder joint. Other common terms have been adopted when refening to shoulder motion. For example, range of motion refers to the maximum achievable angle of elevation, depression, 32 protraction or retraction, and magnitude of motion indicates the overall extent of the action. Finally, an identifiable discrete step of movement was termed a command level [29] The following conclusions are summarized from these studies (Table 4-5). Table 4-5. Previous shoulder motion results. Category / test Observation / result range of motion • C5 level quadriplegic: approximately half of normal • strongest in elevation, but was coupled with a significant component of retraction vertical command resolution • quadriplegic subjects: 8 to 13 command levels (Normal subjects: 26 to 79) horizontal command resolution • quadriplegic subjects: < 4 command levels (Normal subjects: 18 to 85) maintain a given command level • trials lasting 10 seconds to 30 seconds: drift rates 7-17%/min. multi-axes motion • move first along one axis and then to move along a second orthogonal axis: quadriplegic subjects had difficulty interference from opposite extremity • vertical axis error: 25-86% • horizontal axis error: 38-105% velocity • does not work well as a parameter for detecting different types of shoulder movements rise time and normalized velocity • suitable parameters for dstmguishing different types of shoulder movements independent of the size of the movement Range of motion appears to be a useful clinical tool for determining a patient's ability to use the shoulder as a command control source as it relates both to the ability to control two axes and to the number of command levels available. Although the quadriplegics in these studies have a larger average step size and a smaller range, leading to a significantly reduced number of identifiable command levels, there appears to be many advantages to using a shoulder position transducer. As a minor disadvantage, however, elevation may be unavoidably linked with retraction, thereby 33 making it difficult to produce pure vertical motion. These results suggest that a method involving shoulder motion might be useful in the orthosis application to produce both proportional and logical signals. Shoulder motion may also be combined with other techniques for greater control. Shoulder Transducers and Mounting Several different methods of measuring the relative shoulder displacement were reviewed. The first, developed at Case Western in the early 1970s, uses strain gauges mounted on vertical and horizontal faces of a 3 mm brass bar to sense the deflection of the bar [9,38]. The bar was connected to stiff piano wire which in turn was connected to a metal disk placed on the clavicle. Unfortunately, this design was susceptible to mechanical wear and was housed in a relatively large package. Another application, for recording the three-chmensional motion of the shoulder, uses an electromagnetic source to generate a field which can be detected by a sensor. The associated electronics package calculates the relative position and orientation of the shoulder [30]. Another type of transducer, developed in the mid 1980s, uses a ball and socket arrangement with a driver coil surrounding the ball [11,29]. The ball contains a ferrite core while two pairs of sensing coils measure the angular displacement of the ball in each of the two directions. A telescoping sensing arm is threaded into the ball with a telescoping portion attached to a disk taped half-way along the clavicle. Although the relative shoulder movement is produced vertically and horizontally, it is the angular displacement that is measured by the transducer. To improve rehability and ease of manufacturing the transducer, a permanent magnet was employed instead of the ferrite core with Hall effect sensors detecting the magnetic field. Problems, however, can include entanglement of the electrode cables, skin irritation around the connectors, and the potential failure at the cable-connector interface due to repeated flexion [10]. 34 Anatomy An understanding of these results and the mechanisms required to generate shoulder motion can be gained by examining the underlying anatomy. The four motions are primarily produced by muscles in the unparalyzed shoulder [38], and are listed in Table 4-6. Table 4-6. Motion produced by the unparalyzed shoulder muscles. MOTION MUSCLE GROUP INNERVATION Elevation Trapezius - superior fibres Levator Scapulae 11th cranial + C3, C4 C3, C4, C5 Depression Pectoralis Minor Latissimus Dorsi (Trapezius - inferior fibres) C8, T l C6, C7, C8 11th cranial+ C3.C4 Protraction Serratus Anterior Pectoralis Minor C5, C6, C7 C8, T l Retraction Trapezius - middle fibres Rhomboid, major and minor 11th cranial + C3, C4 C5 Only the trapezius and partially the levator scapulae are innervated above the C4 level and remain unparalyzed in the high level quadriplegic. For available shoulder motion, therefore, elevation remains strongly intact along with a reasonable degree of retraction. Applications Shoulder motion signals have been used successfully in many rehabilitation engineering applications. Typical control commands and resulting actions are summarized in Table 4-7. 35 Table 4-7. Shoulder control commands and examples of use. Signal type Action Examples of functions logical signals switching • ON / OFF control • lock / unlock a mechanism • mode selection • open/close proportional signals proportional control • open/close rate of hand • grasping force of hand • forward / reverse speed of wheelchair • Uirning rate of wheelchair A frequently used logical signal is the hand grasp lock and unlock, accomplished by a quick shrug of the shoulder, thus allowing the shoulder to relax while miuntaining the grip for long periods and reducing user fatigue [10]. The shoulder has also been used as a joystick to drive a wheelchair. Elevation and depression of the shoulder proportionally control the forward and reverse speed respectively, while protraction and retraction control the turning rate [9,38]. Users found shoulder-controlled transducers to be effective signal input devices, learning to use them within minutes and appreciating both the aesthetics and the lack of interference with head movements. Since many quadriplegics need to control both a wheelchair and an orthosis, a logic switch driven by the shoulder could alternate between the two. Advantages Based on previous studies [29,38], some advantages of using the shoulder as a control site and of the controller itself are listed in Table 4-8. 36 Table 4-8. Advantages of the shoulder as a control site and associated controllers. shoulder as a control site shoulder controller devices • the motion is simple, logical, and repeatable • is a relatively normal motion to perform • provides a good range of vertical motion • shoulder action attracts little attention • non-interference with other activities • not fatiguing • small increments of movement are possible • driven by a relatively large muscle group • motion does not have to be precise • are non-invasive • can use standard components • consume little power • can be cosmetically acceptable/bidden • require short training time • easily mounted by an attendant • are reliable and rugged • have fast response times • reasonable cost to produce A device based on shoulder motion, therefore, would be satisfactory according to the evaluation criteria. 4.4.2 Myoelectric Control The Electromyographic (EMG) Signal The method of myoelectric control utilizes the electromyographic (EMG) signal. When a muscle is contracted, a measurable electrical pulse (EMG signal) is generated. The amplitude of the E M G signal, in the microvolt range, is proportional to the level of contraction of the muscle. Electrodes on the surface of the skin or within the muscle detect the level of muscle activity. The following sections review the suitability of the E M G signal to engineering applications and the problems associated with finding adequate control sites. Applications A common use of the E M G signal is to provide simple ON/ OFF commands. When the voltage exceeds a given threshold, an output signal (ON) is produced. Similarly, when the voltage drops below the threshold, the signal is removed (OFF). A motor operating under E M G control, for example, can be made to move at a constant velocity at maximum power until it is switched off 37 when the voltage falls below the threshold. E M G signals have been used successfully in many rehabilitation engineering applications [1]. Typical control commands and resulting actions are summarized in Table 4-9. Table 4-9. E M G control commands and examples of use. Signal type Action Examples of functions logical signals switching • ON / OFF control • open/close • mode selection proportional signals proportional control (not reviewed) increasing the level of muscle contraction can produce a higher level of electrical output. When a wider range of contractions is available, two different thresholds can be defined, thus allowing two different actions to be controlled. For example, a small contraction will be sufficient to exceed the low threshold, while a strong contraction will cause the high threshold to be exceeded. Furmerrriore, by using two muscle sites, four actions can be controlled. The maximum number of distinguishable levels is about four or five, using visual feedback to indicate when a specified level is reached [55]. Even simple contractions and maintaining the signal, however, can be very fatiguing. For these reasons, myoelectric controllers are usually limited to producing simple ON/OFF commands. Proportional signals have been generated but require sophisticated processing techniques. Myoelectric Control Sites Finding suitable sites in the case of high level quadriplegic patients for the control of multi-functional orthoses has been investigated [43]. The feasible sites are limited and were found to be 38 the upper and middle trapezius, the middle and lateral portions of the frontalis (above the eyebrows), and the temporalis (jaw) muscles. The reasons for accepting or rejecting them for the current application are summarized in Table 4-10. Table 4-10. E M G control sites. Feasible control Portion Accept/ Reason site Reject trapezius upper accept strong signal, not tiring middle accept adequate signal, not tiring frontalis median reject weak signal middle accept good reproducible signal lateral reject interfering signals from jaw muscles temporalis - reject jaw fatigue Other unaffected potential muscles were considered but rejected due to interfering myoelectric activity from neighboring muscles, inadequate myoelectric output, or electrical noise, even when the muscle is at rest. Training time, however, may be unpredictable, since raising and lowering the eyebrows appears to be a much less controllable and intuitive motion. Also, it is tiring for the user to make extended use of the eyebrow muscles. The upper trapezius, therefore, remains the sole muscle that should be considered for a myoelectric controller. Recording Electrodes Surface electrodes are considerably more common and convenient to use than surgically implanted electrodes. A disadvantage of recording an E M G signal using surface electrodes, however, is that they are only in contact with superficial muscles, and are therefore sensitive to electrical activity from neighboring muscles. In addition, the electrodes are sensitive to 39 surrounding noise from electrical sources such as other medical equipment or Ughting. The invasive implantation of electrodes within the muscle require considerably more care, attention, and handling procedures such that their use appears to be limited to more permanent or clinical applications. Surface electrodes, however, experience problems due to skin movement during activity and changes in the skin impedance from sweating. The quality of the signal is highly location dependent therefore proper site selection is critical, making a controller based on an E M G signal very restrictive. Signal Processing To provide useful engineering information, E M G signals require processing. This consists of amplifying , rectifying, and low-pass filtering the signals to derive a D C level proportional to the strength of muscle contraction. Typical amplification is on the order of 20,000 times. The high input impedance and large gains of the E M G amplifier make it very susceptible to 60 Hz noise. Although proportional control from an E M G signal is possible, the greatest barrier to its widespread use has been the presence of a large-amplitude, low-frequency noise component superimposed on the desired signal [25]. 4.4.3 Eye Movement The objective of eye movement recording is to determine the eye position or velocity relative to the head or to determine the point of gaze in space [24,46,47,55]. Simple eye position monitoring can be used for scanning of a matrix of symbols or sensors which correspond to desired functions to be performed by equipment. More complex eye positioning techniques can generate logical or 40 proportional signals. Eye-scanning techniques are commonly used by the non-vocal severely physically disabled in order to interface with communication aids. Eye Movement Recording Techniques In terms of orthotic control, eye movement techniques can supply logical or proportional signals. There are three conventional techniques for recording eye movement: infrared limbus reflection, electro-oculography, and corneal reflection. Other methods were found to be unsuitable for orthotic control for reasons which include excessive subject discomfort, interference with normal vision, or the need to fix the head position with a chinrest or biteboard [55]. Infrared limbus reflection The infrared limbus reflection technique involves detecting and tracking either the boundary between the colored iris and the white sclera (limbus) or the boundary between the iris and the pupil. The eye is ihurninated with infrared light from an L E D and the differing reflections are picked up by a photodetector during a scan across the eye. Tracking of horizontal rotation is accomplished by detecting the sudden change in reflectance at the limbus or the pupil edge. Vertical movement is determined by tracking the change in reflected infrared ihumination as the eyelid moves up or down or by detecting the iris-pupil interface. Eye movement is measured relative to the head by mounting the source and sensor on eyeglasses, for example. Electro-oculography Electro-oculography involves detecting movement of the eye by recording subtle voltage changes. This is possible due to the electric potential that exists between the cornea and the retina [55]. As the eye rotates, the electrostatic potential rotates as well. Electrode pairs placed on either side or above and below the eyes define planes that are perpendicular to this potential when the eye is centered. The change in potential difference between the electrodes corresponds to eye motion. 41 Corneal reflection Corneal reflection techniques record the virtual image created behind the corneal bulge. When infrared radiation is projected from an L E D source towards the central portion of the cornea a virtual image is reflected. Knowing this the eye position and velocity can be determined from an image taken of the reflection [46]. If the source is fixed to the head (such as on eyeglasses) the movement is measured relative to the head. Specially-coated flat or prescription lenses are used to reflect the infrared radiation. The range is generally limited to +/- 12-15 degrees in both the horizontal and vertical directions in order to stay on the spherical portion of the cornea. Applications An ocular transducer based on the corneal reflection approach was used to replace the joystick of a powered wheelchair such that above and below the central gaze corresponded to forward and reverse speed while right and left gaze corresponded to right and left turning speeds [46]. A separate logical switch (e.g. a head switch or eye blinks) controlled the on/off signal. Normal vision was unobscured by the setup. An identical setup has also been used as the control interface to a communication device with which users have achieved four to six words per minute [46]. The user looks at one of three sensors mounted on the eyeglasses to produce a Morse Code signal. Corneal reflection has also been used to actuate a typewriter and an eye-gaze-controlled keyboard [24]. The character array is mounted in front of the user with a fibre-optic-directed L E D positioned in the center. When the beam reflects off the cornea it is captured by a photodetector from which the point of gaze can be determined. Disadvantages Several problems inherent in the preceding techniques have been noted [46,55]. In general, the adjustment of the sensors and sources was found to be very time-consuming and sensitive to facial or postural adjustments by the user. Eyelid interference and external electrical interference have 42 also presented problems. Electrodes are also cosmetically undesirable. Finally, any apparatus that unduly restricts the user's gaze is unacceptable for the U B C orthosis application. 4.4.4 Head Movement The use of head motion to activate a control system is a commonly employed technique in rehabilitation engineering applications [21,22,27,28,53]. Since the head motion in all directions remains relatively normal for patients inflicted by most diseases or injuries, controllers based on the head motion represent a solution that may be suitable to a wide range of patients. Furthermore, using a body motion unrestricted by a disease or injury is often a more natural and less tiring action. For such reasons, a large number of controllers utilizing the head motion have been designed. Head movement transducers can generally be classified into two categories according to their proximity to the user's head. A contacting system involves a physical contact between the user's head and a transducer. A non-contacting system involves mounting the apparatus near the head, and may also involve a lightweight reflector or sensor attached to the user's head. Contacting techniques typically employ switches to produce simple commands, and therefore the information available to a computer is limited. Also, the motion of the head is typically constrained within the confines of the switches. Non-contacting techniques offer a wider range of control, allow more freedom of head movement, and are normally more cosmetically satisfactory. Both categories were reviewed with respect to existing devices and technology, benefits, and limitations, and the results are summarized below. 43 Contacting Head Controls Pointers Pointer techniques involve the use of a physical pointing device, attached to the head, which selects a desired action from an input interface such as a keyboard or coded touch pad. A headstick and a mouthstick are both examples of mechanical head pointers. They provide visual and tactile feedback to the user from the movement and force applied at the pointer tip. Pointing systems are relatively versatile and inexpensive. Such techniques, however, are cosmetically unattractive and obtrusive. Also, the number of steps and physical effort required to accomplish simple tasks are excessive. A headstick requires firm mounting to the head and the action of contacting a stationary surface can be tiring and aggravating to the head and neck muscles. A mouthstick can tend to be unsanitary and can irritate the gums and mouth [53]. To increase the effectiveness of the headpointing systems, arrays of contact plates or buttons can be positioned around the side and back of the head [53]. This arrangement, however, is essentially a coded switching system and lacks the benefits of an intuitive joystick-type control system and it is difficult to achieve proportional control. A similar technique involves placing the back of the head in contact with a cradle which is capable of moving side-to-side and backwards. Such input motion has been reported to be sufficient to control a wheelchair [53]. To account for the loss of contact with the cradle when the head is tipped forward, a reversal switch is required to toggle between intended forward and reverse motion of the wheelchair. The lack of an intuitive connection, however, between backwards motion of the head to produce forward motion of the wheelchair adds some degree of difficulty to 44 using such a technique. Such limitations, therefore, would likely be applicable to an orthosis device and control system. Chin switches A joystick utilizing chin movements is a common means of providing simple proportional input signals. There are similar limitations, however, inherent in such systems. Mounting near the facial region is cosmetically unacceptable and draws unwanted attention to the user. Also, chin devices create unnecessary obstacles and inconvenience when getting in and out of a wheelchair. As a minor remedy to these problems, the transducer can be moved to a position behind the head, where chin movements become transferred by a small connecting arm. As an additional problem, regardless of the final location of the input mechanism, the user often does not have sufficient chin extension to activate the wheelchair controls using a chin-rest device [21]. As mentioned above, such limitations would likely also be applicable to an upper-limb orthosis device and control system. Non-contact Systems Optical head pointing The general principle of Operation involves the use of a light beam to detect the position of the user's head. The light beam can either be mounted on the user's head and directed towards the work area, or be generated from a stationary light source which is aimed towards the user's head. The first technique involves directing a head-worn, collimated light source towards hght-sensitive activation targets, while providing visual feedback regarding the positioning of the head [53]. The second technique, involving infrared light, uses a reflector mounted to the user's head to redirect the light back to the work area [21,53]. A sensor, mounted to a wheelchair or as part of their 45 workstation, determines the relative change in orientation of the head. Movements of the head are received and translated by additional devices linked to the sensor. In a simple application, the user reflects or directs the light beam to a limited number of symbols on a tight sensitive screen or pad. The symbols correspond to various functions that are then performed by a computer or mechanical hardware. A more complex system involves the display of a standard or custom keyboard on the user's computer screen. Control of the cursor corresponds to motion of the head. In a further development, the light sensitive target is divided into four quadrants. Proportional control can be achieved by determining the percentage of the infrared beam falling within each quadrant. This technique was successfully applied to the control of a wheelchair by means of direct and logical X - Y head movements [53]. The infrared source Was mounted to the wheelchair armrest, while the reflector was worn behind the ear or on eyeglass frames. There are several notable benefits of such techniques. The light reflectors are cordless, lightweight, and occupy a small spot on the head. The pointing devices typically can be adjusted to suit individual head movement capabilities. Also, optical systems can usually be integrated with a sip and puff switch for additional control. The main limitation appears to be, however, the nature of the source/sensor relationship, i.e. the relative positions of the reflector with respect to the infrared source and receiver. Firstly, such a setup may lack the intuitiveness and control required to operate a powered upper-limb orthosis. Secondly, inadvertent obstruction of the infrared beam halts the command signal for as long as the 46 obstruction remains, which may interfere with daily living tasks. Also, the setup requires either an optical sensor or an infrared receiver mounted to a fixed location and may lack the desired portability. Ultrasonic Several techniques involving the use of an ultrasonic signal have been reported in the literature [27,52]. The ultrasonic transducers operate by generating inaudible high frequency sound waves that propagate through the air toward the user's head. A portion of the waves are reflected by the head and are detected by a receiver incorporated witltin the transducer. The elapsed time provides an indication of the 2-D position of the head. One technique utilizes two Polaroid ultrasonic range-finding devices, one mounted on each side of the wheelchair headrest, which detect tilting of the head [27,28]. By tilting the head left, right, forward, or back, the user can control electrical and mechanical equipment, such as a wheelchair or robotic arm, using their head as a joystick. Another technique involves a single remote ultrasonic source and several head-worn sensors. Changes in path lengths can be measured and related to head motion. The ability to calculate triangulation between the head sensors, however, is sensitive to their spatial separation and is improved the farther the sensors can be placed apart, thus affecting the size and aesthetics of the head mounted device. There are several other problems associated with the use of ultrasonic equipment. The technique is dependent on the quality of the reflected surface geometry, such that the cheeks, nose, forehead, and eyeglasses may give different responses to the ultrasonic signal. Due to the fixed 47 mounting to the wheelchair or workstation, the devices are not fully portable. Also, rain may interfere with the distance ranging operation [27] The intuitive use of the head as a joystick is typically less tiring and easier to use than chin or sip and puff systems. Readily available components make an ultrasonic system relatively inexpensive to manufacture. Also, the non-contacting nature of such a technique, in most cases, is a more unobtrusive and aesthetically acceptable interface. Magnetic fields The general principle of operation involves measurement of changes in a magnetic field as corresponding to the relative positioning of the head. A device employing this technique has been reported in the literature [22]. A magnetic source unit, mounted to a fixed location in the user's workspace, generates a magnetic field. A sensor, worn by the user on a head band, measures the received magnetic field at any point in space. Finally, the control electronics convert this information into spatial measurements of the head's position and orientation. The limitations of this technique are that it is currently restricted to cursor positioning on a computer screen in order to activate a keyboard, mouse, or graphic drawing package. Also, the sensor must be physically cabled to the control electronics. In addition, metal objects within the workspace, such as the computer, video monitor, or other assistive devices, have been reported to affect the measurement accuracy. 48 4.4.5 Other Control Sources Several other methods have been devised to translate body motion into a usable signal and are listed in Table 4-11. Table 4-11. Other control sources. SOURCES OF MOTOON Vocal Pitch • produce several command levels based on the frequency component Voice • simple commands to voice recognition devices Breath • suck and puff commands Tongue • micro-switches built into a mouth plate Teeth • acceleration detection of clicking teeth Jaw • strap operated by tension when jaw is moved Chest • expansion and contraction of chest or abdomen Based on an initial pass through the literature and the direct appticability to the orthosis project, these methods were not reviewed in further detail but are listed for the reader's interest. 49 4.5 COMPARISON OF CONTROL TECHNIQUES Typically, the methods reviewed are limited to one extent or another in their ability to translate the user's desired intentions into an appropriate motion or response of an assistive device. Table 4-12 summarizes specific aspects of the various technologies with respect to the control system evaluation criteria. Table 4-12. Evaluation of alternative control techniques. C A T E G O R Y DESCRIPTION Shoulder EMG Vision Head Ease of Use (20) - rrummized control movements - user feedback - short training time - minimized physical exertion 15 10 8 18 Safety (20) - easy for user to activate/deactivate - able to discriminate between intentional and imintentional movements 16 8 6 17 Reliability (15) - signal detection and repeatability - signal-to-noise ratio and resolution - power consumption and standby power - stmctural integrity and repairability 12 8 9 13 Performance (15) - speed of operation - proportionality of signals and motion - cognitive requirements and training time - feedback required 13 9 10 12 User Comfort (10) - lightweight - rmrurnized bulk - adjustability for good fit 9 6 6 8 Convenience (10) - interference with other activities - put on/take off time - modularity and adjustability - versatility of utilization 9 6 7 9 Desirability (5) - discrete and unobtrusive - overall aesthetics 5 4 4 5 Affordability (5) - rmriimized cost to produce 4 4 3 4 Totals (/UK)): 83 55 53 86 50 4.6 CONCLUSIONS Of the many control techniques investigated, it has been deterrriined that a combination of head and shoulder movements is the most appropriate for adapting the remaining available body motion and for producing a suitable quantity and quality of input control signals. The challenge, then, is to develop a control system that requires a limited quantity of signals from the operator in order to control the motors of the upper-limb orthosis in a coordinated manner. The actual design of the control devices is presented in Chapter 6. Chapter 5 presents an intuitive and potentially efficient strategy for controlhng the joints of the orthosis, which complements the control methods selected, while avoiding the sequential joint-by-joint switching used in previous devices. 51 5. END-POINT CONTROL STRATEGY Previous powered Orthoses often suffered from control strategies that required sequential joint-by-joint switching to accomplish selection and activation of each degree of freedom (DOF) individually in order to produce the desired motion [4,7,13-15,17,18,33,35-37,40,41,45]. The technical limitations inherent in such a strategy include poor functionahty related to the DOF controlled. Too few DOF result in a reduced available task workspace, while too many DOF become tedious to sequentially manipulate. These previous powered orthoses also often exhibited a slow speed of operation due to the complex, non-intuitive nature of issuing commands, resulting in the inability to efficiently perform simple tasks. In addition, the lack of proportional control can contribute to the slow speed of response of the joints. The implications for the final user reflect the underlying strategy. Typical complaints relate to the complex, tiring, and often unreliable methods of controlling the orthosis. From the research and development to date regarding orthosis control systems, there currently appears to be very few systems which combine ease of use, speed of operation, and feedback to the user in a simple, practical, and reliable manner [7,15,17,18,23,35,42,44,45,50]. To address and hopefully remedy these problems and improve the user-friendly aspects of the control system, the concept of end-point control was investigated for its applicability to the powered orthosis. 5.1 CONCEPT The concept of end-point control involves the issuing of simple commands, such as forwards/backwards, left/right, or gesturing directly towards a target, which produce the movement of several joints and links concurrently in order to move a specified end-point to a desired destination. The endpoint in this case is the user's hand, corresponding to the end of all 52 the links of the orthosis. Of the six joints or body segments that are manipulated by the U B C orthosis, three are controlled simultaneously, Or coupled, while three are moved individually by specific commands (Figure 5-1). In Figure 5-1, the hand is not assigned an anatomical DOF, by definition, although it is considered a distinct system operation to open and close the hand. C O U P L E D : SHOULDER UPPER-ARM ELBOW INDIVIDUAL: FOREARM WRIST GRASP Figure 5-1. Controlled degrees of freedom. The selection and operation of shoulder azimuth, upper arm roll, and elbow flexion, and the definition of the end-point of the arm, is accomplished by the Denavit-Hartenberg coordinate transformations and the kinematic equations [12,16]. Information regarding the spatial position of each joint and link is constantly updated by the local feedback potentiometers. This will be covered in detail in the remainder of this chapter. Controlling the actual end-point of the hand is more intuitive and a much simpler strategy than the complex task of moving each degree of freedom separately. The end-point movement of the 53 hand, however, is intended to efficiently position the hand near the desired location only. Subsequent finer adjustments of the local hand position are still necessary, and available to the user by individually controlling forearm rotation, wrist flexion, and grasp. Therefore, by activating the controllers, the user directs the orthosis-supported arm to perform a range of typical living tasks related to self-feeding, personal hygiene, and reaching for objects. 5.2 OPERATIONAL SUMMARY The overall control system, encompassing a strategy, a method, and input devices, are responsible for the generation of input signals, which ultimately becomes input to the microcontroller. This sequence is schematically summarized in Figure 5-2. POWER SUPPLY joint position information Figure 5-2. General operational schematic. The end point control concept must be implemented into and coordinated with the input hardware devices in order to achieve the desired control of the hand. A microcontroller unit receives input information, as required by a developed end-point user control strategy, in the form of input signals from the associated input devices. Chapter 6 will present the development of the input devices and Chapter 7 will discuss the computer control. The remainder of this chapter presents 54 the robotic analysis of the orthosis structure and the resulting matrix manipulations necessary to produce appropriate equations for the microcontroller. 5.3 DENAVIT-HARTENBERG METHOD The U B C orthosis is modeled as a system comprised of several rigid links connected in series by rotary joints. One end of this series is attached to the plastic body TLSO while the other end, the hand, is free to move. The combined motion of the five DOF orthosis described previously results in a final position of the hand in a desired location. The objective of the robotic description of the joints is to know the spatial orientation of the hand at all times with respect to the fixed base coordinate system. The end-point formulation uses the Denavit-Hartenberg (D-H) method [12,16], commonly used in the robotics field, to systematically locate a coordinate system at each link of the orthosis [4]. The following sections detail the location of coordinate systems at each joint and the resulting equations that identify the location of the hand. 5.3.1 D-H Coordinate Systems A fixed base coordinate system is located on the shoulder joint of the orthosis, and subsequent additional coordinate systems are located wherever there is a change in geometry at the next joint. Figure 5-3 shows the location of each successive coordinate system. As a result, the D - H technique produces a 4 x 4 homogeneous transformation matrix representing each link's coordinate system with respect to the previous link's coordinate system. Each coordinate frame is established according to a set of three rules: 1. The zi-i axis lies along the axis of rotation of the I t h joint. 2. The Xi axis is normal to the zi-i axis, and pointing away from it. 3. The yt axis completes the right-handed coordinate system as required. Details of the individual transformations between coordinate systems is presented in Appendix A. 55 The D - H representation also involves four geometric parameters, G,-, a,-, a,- , and di , which are specific to each link. They are based on the geometrical relationship of the underlying orthosis structure and are necessary to describe each link (Table 5-1). For a rotary joint, ot,, a, , and dK are the joint parameters and are fixed, while 6, is the joint variable that changes when link i rotates with respect to link Table 5-1. Denavit-Hartenberg parameters [16]. Name Joint i Joints spanned e, a , di di Ho-i 1 Shoulder Azimuth Shoulder Elevation Gi -110° 0 0 Hi-2 2 Shoulder Elevation Upper Arm Roll G2 90° 10 mm 270 mm H2-3 3 Upper Arm Roll Elbow Flexion G3 -90° 0 10 mm 4 Elbow Flexion Forearm Rotation G4 90° -50 mm 330 mm H4.5 5 Forearm Rotation Grasp G5 -90° 150 mm 0 where: (using the Right-Hand rule) G, = the joint angle from the JC , J axis to the axis, about the zt-i axis a, = the offset angle from the zui axis to the z,- axis, about the xt axis di = the offset distance from the intersection of the zui axis with the x, axis to the origin of the i * frame along the xt axis (or the shortest distance between the zui and zi axes) di = the distance from the origin of the (i-1)111 coordinate frame to the intersection of the Zi-i axis with the Xi axis, along the Zi-i axis 5.3.2 D - H Coordinate Transformations After establishing the D - H coordinate system for each link, it is possible to determine the final position of the coordinate frame at the end-point in terms of the base coordinate system. The base coordinate system for this application is located at the intersection of the shoulder azimuth 57 axis and the upper arm roll axis (Figure 5-3). The D - H technique provides the basis for relating the location of each coordinate frame with respect to the one previous via a transformation matrix [16]. The general D - H homogeneous transformation matrix for adjacent coordinate frames (i) and (i-1) is given by: ~Pu~ "cos 8,. —cb'soC; sin 6, sin a - sin0(. a-cosG," ~Px pv sin6- cos a, cosG- -s in a - cos 9, ai sin 6. Py pw 0 sina ; cos a, di P* 1 0 0 0 1 1 (5-1) where: {px, py, pz) is an arbitrary point in the i * frame, and {pu, Pv, Pw} is the corresponding point in the (i-l)"1 coordinate frame. In reduced form, Equation (5-1) becomes: Puvw = [# ( i-u)]&* (5-2) The transformation matrices for each joint, with c = cos and s = sin, are as follows: Shoulder Azimuth -to- Upper Arm Roll: H, 01 c9j -sQ1ca1 sQ1da1 0 sQx cQ1-ca1 -cQ1sal 0 sar cc*! 0 0 0 0 1 (5-3) Upper Arm Roll -to- Elbow Flexion: H12 ~ c0 2 0 sQ2 a2sQ2 sQ2 0 - c 0 2 a2sQ2 0 0 1 0 0 0 a\ (5-4) 58 Elbow Flexion -to- Forearm Rotation H. 23 c0 3 0 563 0 0 -1 0 0 -sQ, c0 3 0 0 0 0 Forearm Rotation -to- Wrist Flexion: c6 4 0 s0 4 a 4 sQ4 sQ4 0 - c 0 4 a 450 4 ^ 3 4 -4 w i-w 4 0 1 0 0 0 0 Wrist Flexion -to- Grasp: # 4 5 = c0, 0 -50 5 oc 5 c0 5 sQ5 0 c0 5 a 5 s 0 5 0 -1 0 0 0 0 0 1 (5-5) (5-6) (5-7) The transformation matrices are used to generate the differential kinematics relationships, which describe the final position and orientation of the hand. This procedure is oudined in Section 5.4. 5.4 DIFFERENTIAL KINEMATICS In order to control the position and orientation of the hand in the workspace, it is necessary to know the spatial information of the hand at all times. The feedback potentiometers provide such information to the microcontroller. By way of software based on the D - H transformations, the corresponding joint angles of each joint can be calculated in order to move the hand to the desired location. The solution procedure relies upon manipulating a coupled 3 DOF orthosis to rapidly position the hand near a desired location. This assumes that the relationship of the joints from the 59 forearm to the hand remain constant until the positioning is complete. Separate fine orientation of the hand can then proceed under specific control of the forearm, wrist, and hand. The software used was MathCAD which has the capability to symbohcally manipulate matrices. The procedure used is summarized below, and a complete hsting is included in Appendix B. S O L U T I O N P R O C E D U R E : Objective: To find the angular change of position of each orthosis joint. r , d \ P ( Q j ) } Governing equation: [y(9.)]= ^ (5-8) Rewrite to get: d [P(Q .)} = [/(8.)] • 36 . (5-9) and finally: 38 } = [/(6,. • d [P(Q y )} (5-10) where subscripts " i " and " j " refer to the angles, 8 , being used: i = 1 to 5: representing each angle, or rotation, at the 5 orthosis DOF (excluding grasp) j = 1 to 3: representing the 3 coupled DOF: shoulder azimuth, upper arm roll, and elbow flexion/extension Note that subscript j ranges from 1 to 3 (as opposed to 1 to 5) because the endpoint control algorithm is limited to governing only the coarse positioning of the hand, via coordinated control of the three coupled DOF, with the three remaining distal DOF are fixed. That is, given a starting position of the arm, an input command will treat the forearm, wrist, and hand as a single rigid link until the command is complete. 60 Procedure: There is a requirement to convert the mathematical matrices and differential equations into simplified, symbolic formats that MathCAD is capable of understanding and processing. The resulting equations must subsequently be converted into even simpler terms in order to be translated into Assembler language software for the final computer control. 1. Define the D - H matrices. 2. Symbolically multiply the matrices: [ ^ 0 5 ] = K ] K ] [ ^ 2 3 ] [ ^ 3 4 ] [ ^ 4 5 ] (5-11) Note that the final matrix, H0s, will be in terms of Qi, 92, 9j, 94, and 95, and the lengths a„ di. 3. The last column of H0s is what will be used throughout the remainder of the calculations. This is the position or displacement vector ("P-vector") and represents the spatial location of the hand in coordinates relative to the base coordinate system, located at the shoulder. Specifically: Px Py PZ - - - 1 (5-12) where the "P-vector" is a function of the joint angles: {P}= [^(9i'92,93,94,9s)] ^y(91,92,93,94,95) Pz(Pi>Q2>®3>®4>®5) (5-13) 4. SymboUcally differentiate Px, Py, Pz, each with respect to 9j, 92, and 9^ . Each partial derivative is assigned a letter from a to i: 61 ' 39, *(e 1 ,e ! ,e J)=^^M C(9,,9 2 ,8 3)=?M^M 90 3 80, « C , . e , . e , ) = ; > f c ( M ' - e ' » 80 2 / ( e „ e 2 , e 3 ) = ^ ! l M 30 3 30, *g> 1 ,e„e , ) , . 8 f r^" e " 8 ' » 30 2 i ( e „ 9 2 , e 3 ) = M ^ M 30 3 5. The Jacobian is defined as a (3x3) matrix of these derivatives: a b c d e f 8 h i (5-15) 62 6. Calculate the numerical determmant of the Jacobian: det[7]. This will be a number based on the current orthosis position, and will be used in Step 7. 7. Symbolically calculate the inverse Jacobian: A B C D E F G H I where: A_(e-i)-(f-h) det[/] g.Cf •*)-(«*•»•) det[/] c_(dh)-(e.g) det[/] B H {ch)-(bi) c (Pf)-(ce) det[/] det[/] (ai)-(c-g) r_(cd)-(a.f) det[/] det[/] (b-g)-(ah) j i a e y i b d ) det[/] det[/] (5-16) (5-17) The terms of equation (5-10), 30 ; =[/(0-)] 1 • 3 -[^ (6 y)j- , are now known and suitable for coding. The partial derivatives, 3Jp(0y-)J, are completely symbolic, in terms of the sin and cos of the joint angles based on potentiometer information, and the lengths a,- and di based on orthosis geometry. Knowing the angular position information of the hand at all times, communication devices must be developed which convey the user's intentions to the microcontroller. Upon receipt of a signal to change from the current location to a different location, the microcontroller implements the differential kinematics equations of motion to determine the incremental changes of 0/, 02, and 0^  63 required to ultimately move to the desired location. The next chapter describes the development of the head and shoulder control input devices which will communicate with the microcontroller to direct the orthosis to perform the coarse positioning and fine orientation moves, as described in this chapter. 64 6. CONTROL SYSTEM DEVELOPMENT 6.1 INTRODUCTION The design objective of this phase was the development of a control system which would allow a person capable of tittle or no arm movement below the shoulders to efficiently Operate a powered upper-limb orthosis. In order to achieve this, it was necessary to use distinct available body movements to generate input signals to control the motors of the orthosis to produce a desired arm action. Chapter 4 presented a review of possible control system methods and recommended the use of head and shoulder motion to generate input signals. Although the methods have been successfully applied to control different devices such as wheelchairs and communication systems, none have been directly related to the specific application of the upper-limb orthosis. The development of a reliable, user-friendly, and non-obtrusive control system was of paramount importance for user-acceptance of such an assistive device. The current chapter addresses various design challenges associated with the development of control devices and interfaces with the user. Details on working prototype mechanisms, types of signals produced, and implementation of the end-point control strategy are also presented. 6.2 CONTROL SYSTEM DESIGN SUMMARY Of the numerous control techniques investigated, it was determined that a system employing a combination of head and shoulder movements was the most appropriate. A head controller and a shoulder controller were developed to adapt the remaining available motion of the head and shoulder in order to generate a series of input command signals which drive the powered orthosis. 65 The head controller consists of two optical encoders, one mounted to the side of the head and the other mounted to the back of the head, via a series of elastic straps and buckles (Figure 6-1). The head controller functions similar to a joystick, dehvering proportional control signals in two directions. When positioning the endpoint of the arm, the head points to the X - Y position to which the user wants to move the arm. The degree of head motion determines the resulting velocity of the motors and therefore the response time of the arm. The shoulder controller is mounted on the arm opposite to the orthosis (Figure 6-1). It utilizes an up and down shrugging movement of the shoulder to produce several distinct input control signals. The controller consists of a slim housing which contains two optical switches and a slotted rod that slides between them. When positioning the end-point of the arm, the shoulder controller directs movement in the Z, or perpendicular, direction. The shoulder controller is also used to open and close the hand, to switch between various modes, and provides an emergency shut-down signal. SHOULDER CONTROLLER Figure 6-1. General arrangement of the head and shoulder controllers. 66 In addition, an integral part of the control system are the potentiometers mounted on the joints of the orthosis. The potentiometers provide variable voltage angular position feedback signals to the computer (i.e. microcontroller) which correspond to the current joint rotations of the orthosis. The computer interprets the signals from the head and shoulder controllers, calculates the current position of the arm based on the information received from the potentiometers, and then controls the motor units located on the orthosis in order to move the hand to the desired destination. Figure 6-2 below is a simplified schematic showing the relationships of the different components of the control system. HEAD -« ••—• •• joint position information Figure 6-2. Schematic of control components. The general principles of operation, the governing control strategies, and the safety features of the head and shoulder controllers are presented in the remaining sections of this chapter. 67 6.3 DETAILED CONTROL STRATEGY The detailed control strategy is summarized in the flow chart in Figure 6-3. As can be seen in this flow chart, two operational modes are defined: position and orientation. Position mode involves the coupling of three of the joints, i.e. azimuth, upper arm, and elbow, to provide coarse end-point positioning. Orientation mode is joint specific and involves providing fine adjustments of the endpoint by controlling three joints individually, i.e. forearm, wrist, and grasp. In addition to defining two operational modes, two operational planes are defined. One is a horizontal (table top) plane, and one is an inclined (functional) plane. These can be seen in the flowchart below, and are explained in the following sections. P O S I T I O N shoulder controller to switch MODES TABLE TOP FUNCTIONAL shoulder controller to switch PLANES X - Y - Z COORDS X - Y - Z COORDS HEAD J I SHOULDER HEAD SHOULDER O R I E N T A T I O N <1> (0 o o \ c oo. o \ HEAD SHOULDER Figure 6-3. Control logic flowchart. 68 6.3.1 Position Mode The Position Mode involves coarse X - Y - Z end-point positioning of the arm. Three DOF's (i.e. orthosis joints or sections) are coupled together to control the end-point positioning of the arm as identified in Table 6-1 and Figure 6-4. Table 6-1. Position Mode DOF's. Joint or Section (DOP) Action shoulder upper arm elbow azimuth roll flexion/extension S H O U L D E R | azimuth C j J - ^ U P P E R - A R M roll / / E L B O W v O ' ' flex/ext ( j y s Figure 6-4. Coupled DOF. The X - Y positioning of the arm is controlled by the head controller and the Z positioning of the arm is controlled by the shoulder controller. 6.3.2 Orientation Mode In order to allow the user to have some direct control of the joints for "fine tuning" of the end-point position and grasp, three joints (or sections) were left to have individual control. These three control sections are listed in Table 6-2 and are shown in Figure 6-5. 69 Table 6-2. Orientation Mode DOF's. Joint or Section Action (DOF) forearm rotation wrist flexion/extension grasp open/close Figure 6-5. Individually controlled DOF. Forearm rotation and wrist flexion/extension are controlled by the head controller, while grasp is controlled by the shoulder controller. A signal from the shoulder controller toggles between the position and orientation modes. 6.3.3 Operational Planes As mentioned previously, before the U B C orthosis was designed, many studies were conducted to determine the activities that potential users stated as important for the device to perform [4]. The top five activities listed were: 1. reaching for and picking up objects 2. personal hygiene 3. performing hobbies and crafts 4. eating and drinking 5. doing light housework Generally, all of the tasks described above are performed in two principal planes. Therefore, in Order to simplify the positioning of the arm even further, two different, user-selectable operational planes were defined. These are a horizontal (table-top) plane and an inclined (functional) plane, 70 where the inclined plane is the plane between a table surface and the user's head. The inclined plane is generally oriented at approximately a 45° angle, but may vary shghtly from user to user. Tasks such as eating, drinking, and personal hygiene frequently utilize this plane (Figure 6-6). Figure 6-6. Operational planes. When in the position mode, the user has the ability to choose between the table top or functional plane. Planar movements in either plane are considered X - Y movements, and movements perpendicular to either plane are considered Z movements. The definition of the angle of these planes occurs in the software of the control system and can be uniquely defined for any specific user. A signal from the shoulder controller toggles between the two planes. Movements within either operating plane are controlled by the head while movements perpendicular to the plane are controlled by the shoulder. The implementation of two user-selectable operating planes are designed to reduce the complexity of controlhng the device by elimmating the need for additional commands which would be required to position the orthosis while performing daily-hving tasks. Details of the head and shoulder controllers, their respective commands, and resulting orthosis motion are presented next. 71 6.4 HEAD CONTROLLER Since many potential users afflicted with diseases or injuries typically retain almost all of their abilities to move their heads, head motion is suitable to generate some of the required control inputs [1]. Movement of the head either forward or backward, to the right or left, or at an angle, is measured by two encoders which then generate an input control signal (Figure 6-7). forward—backward side—side SIDE VIEW REAR VIEW Figure 6-7. General operation of head controller. 6.4.1 Functional Aspects The head controller controls the planar movement (in both table top and functional planes) of the orthosis endpoint in the X and Y directions. The inclinometer located on the back of the head measures the left/right inclination of the head and denotes X-axis motion. Similarly, the inclinometer attached to the side measures the forward and backward tilt of the head and denotes Y-axis motion (Figure 6-8). 72 Figure 6-8. Head controller directions. Fine-tuning of the endpoint location (forearm rotation and wrist flexion/extension) is also done by the head controller in orientation mode. As indicated in Table 6-3, head movement is capable of providing two distinct inputs which result in four possible actions, depending which mode is selected. In addition, the head controller deactivates the orthosis and incorporates safety precautions in the control system, which will be discussed later. Table 6-3. Summary of head controller actions. INCLINOMETER i o c \ n o \ MOTION / ACTION PRODUCED while in: POSITION MODE ORIENTATION MODE Rear Side X direction motion Y direction motion Grasp Wrist Flexion A gradual tipping of the head forward will activate the grasp motor and slowly close the hand; tipping the head backward will slowly open the hand. Similarly, tipping the head to the left will produce wrist flexion in the pronation direction, while tipping to the right will produce supination. Increasing the degree of tipping in any direction will increase the speed of activation. 73 6.4.2 Principle Of Operation Acting as an electronic pendulum, the incremental inclinometer, or encoder, reports an object's angle with respect to gravity. Internally, a weighted optical encoder disk is suspended between two micro-ball bearings and maintains a vertical orientation, while small magnetic dampers prevent oscillation (Figure 6-9). A lensed L E D projects the codewheel image onto an array of photodiode detectors and, as the disk's housing rotates, the moving image of alternating opaque and translucent radial lines is converted to real-time T T L (transistor-transistor logic) outputs: i.e. a 2 channel quadrature output (ch. A & ch. B). The alternating lead and lag between A and B determines whether the rotation is clockwise or anti-clockwise, thereby mcrementing the true angle relative to vertical or to an initialized datum. The optical shaft encoder technology provides 360° rotation, eliminates linearity problems, and is accurate to within 0.05°. The encoders are by U.S. Digital, Model #T2-7200. encoder weight: ~50 g Figure 6-9. Diagram of inclinometers used on head controller. 74 The zero angles of both inchnometers with respect to the head are re-calibrated every time the device is turned on: i.e. to the current angles of head inclination. This makes the controller universal for all potential users regardless of head orientation, accommodating those with heads tilted naturally to one side. Inclination of the head in either the X (left to right), Y (front and back) directions, or at an angle, translates into the corresponding directional motion of the orthosis end-point. The motion of the head therefore becomes analogous to the action of a joystick (Figure 6-10). Also, the corresponding speed of the end-point movement is directly proportional to the actual degree of inclination. The further the head is tipped in any direction, the faster the response and movement of the arm, up to a maximum as limited by the motors and microcontroller. Response to this action may be further controlled by adjusting gains within the microcontroller. The adaptation of a proportional joystick analogy for the head controller, combined with efficient end-point positioning algorithms, are designed for intuitive operation of the orthosis. head tipping operating zone Figure 6-10. Joystick analogy for head controller. 75 6.4.3 Safety Aspects A "neutral zone" was established about the head axis in order to ensure that minor, unintentional head movements of < 4 0 (e.g. during eating, yawning, twitching) do not translate into actual arm motion (Figure 6-11). In addition, an intentional rapid head movement deactivates the system. Similarly, in response to unintentional rapid or jerky head movement, the head controller serves as an emergency stop to prevent unintended dangerous movement of the orthosis. Furthermore, the neutral zone and the limits on motor speed can be reduced as the user becomes more confident with the device by altering variables in the computer software. PROPORTIONAL CONTROL: • direction ) /—"neu t ra l " • velocity 5 ^ N < / ^ ' zone \ ( (adjustable) operating zone \ . Figure 6-11. Diagram of operating and neutral zone. 6.4.4 Mounting Requirements The two inchnometers used to measure head motion must be suitably mounted onto the side and back of the head of the user. For example, the mounting design should permit the location of the transducers to be varied to accommodate natural head positions or underlying bony prominences. Any apparatus, therefore, that supports the transducers should consider several important general design requirements as listed in Table 6-4. 76 Table 6-4. Head controller mounting considerations. Item Design Consideration 1 be reliable 2 fit comfortably 3 be lightweight yet robust 4 easily adjustable to varying head sizes 5 maintain position on the head without slippage 6 not interfere with the users own glasses, hat, or small earphones 7 be aesthetically satisfactory 8 avoid the facial region The following design alternatives were explored and various mechanisms accepted or rejected, depending on their accomplishment of the design considerations. Technical considerations, however, regarding the weight of the encoders, the anticipated head motion, and the associated support structure have limited the interfacing and mounting possibilities. The final design, therefore, reflects the challenges of working with hardware and the human body. The initial design used a pair of glasses as a support for the transducers with an elastic securing strap raaning around the back of the head. One transducer was fixed to the elastic band and the other to one of the arms of the glasses. This device, however, could not hold the inclinometers with enough stability. The use of glasses also drew unwanted attention to the facial region and would interfere with a users own glasses. Furthermore, the user would likely experience pain due to the glasses' ear loops and nose-bridge supports after a long period of time, leading to a rejection of this device. 77 The second design consisted of a headband worn just above the ears. The two inchnometers were supported by two tabs fixed on the headband. The entire device was made of flexible plastic. This design met most of the requirements, except for user comfort. Even with the flexible plastic, the band did not fit perfectly around the head. Also, the device was susceptible to shding and migrating up towards the top of the head. Therefore, this second design was also deemed inappropriate. A third design involving the use of portable stereo headphones was also considered which better addressed the aesthetics problems O f utilizing a headband (Figure 6-12). Tension in the thin spring steel bands held the inchnometers to the head with a minimum of weight and bulk of material. The shding mechanism allowed for simple and quick adjustment of the device to conform to the head and to position the side inchnometer behind the ear. An additional shding section from another pair of headphones was attached midspan of the side-to-side section in order to mount the rear inclinometer. possible extra thin, flexible spring steel additional mounting pad front strap to balance & secure the controller foam SIDE VIEW TOP VIEW Figure 6-12. Headphone-style mounting of encoders. 78 The attractive features were the minimized material added to the facial region and the head, as well as the use of an acceptable form of technology by adapting the concept of headphones. Due to the weight of the rear inchnometer and the lack of resistance provided by the forehead region, however, the unit tended to slide off the back of the head. Considerable modifications of this device would be required to improve its feasibility. An acceptable design compromise fulfilling the majority of the requirements combined ideas gained in the previous designs with those of a cycling headband [32]. The headband is a commercially available product that supports a headlamp for cycling at night. The flexible structure is made from two elastic fabric straps 30 mm wide. One encircles the head and the other passes over it from ear to ear. The two bands are fixed together with plastic buckles (similar to those used on backpacks and outdoor gear). Both elastic straps are adjustable in length to fit any head size.. The material used and the two adjustments provide a good fit on any head shape and size. Figure 6-13 shows the final design for the attachment of the head controller. SIDE VIEW TOP VIEW Figure 6-13. Final design of the head controller attachment. 79 Modifications included two tabs made of polyethylene which were inserted into the perimeter band [32]. The tabs are held by passing the band through a series of slots. The two tabs are located on the back and side of the head but they can be moved horizontally by shding them along the perimeter of the band. Each tab is covered with a velcro band which provides the means of affixing the inclinometer. The tabs were designed to maximize the comfort against the head. All the edges and corners of the tabs were rounded to avoid discomfort and injuries. Furthermore, the angled arms on the tab make the tabs sit back more firmly on the head. 80 6.5 SHOULDER CONTROLLER 6.5.1 Shoulder Movement The review presented in Chapter 4 on the possible magnitude and quality of shoulder movement indicated that this is a potential site for producing control signals [1]. Most patients who have lost arm function through paralysis or disease still retain some ability to generate shoulder motion [1,4]. Although the range, force, and duration of available motion may be substantially less than that typical of a person with normal function, the research indicated that the motion should be sufficient to produce signals if properly utilized. Due to limitations indicated by the previous research, it was decided that the development of the shoulder controller would only require movements along a vertical axis, involving elevation and depression, or shrugging, of the shoulder. A controller would be mounted to the shoulder opposite to the orthosis-assisted limb. The following sections describe the development of the shoulder controller and illustrate the final design in detail. Also presented are the types of control signals and the relationship of these signals to the overall control strategy. 6.5.2 Functional Requirements In principle, the best configuration of the shoulder control module would combine reliability, simplicity, and ease of use for the user. Several requirements in particular are listed in Table 6-5. As users of the U B C orthosis may have only half the range of shoulder movement of normal individuals, it was determined that the shoulder would be used as a logic switch to produce simple on/off signals (mode switching) and as input to produce perpendicular motion to the selected operational plane. 81 Table 6-5. Functional requirements of the shoulder controller. Item Functional requirement 1 2 3 4 5 6 7 require the least number of required shoulder movements require the smallest range of shoulder movement provide positive confirmation of each command position provide good signal reliability utilize simple control commands. minimize interference with other tasks involve standard components and simple construction 6.5.3 Principle of Operation When the user shrugs their shoulder up or down, the motion is translated to a slotted bar which is constrained to pass through the two ports of an optical sensor (Figure 6-14). If the slot in the bar is positioned between the ports of the optical sensor, an infrared beam is able to travel between the two ports, generating a +5V or HIGH state a ET slotted bar-optical switch infra—red beam passing thru slot Figure 6-14. Basic principle of operation of shoulder controller. 82 When the slot is above or below the optical sensor ports, the sensor is blocked, causing a OV or L O W state (Figure 6-15). In addition, depending on the duration of time that the slot is in an active (+5V) position, the signal may be of short or long duration (Figure 6-16). This system therefore provides a switching signal to the orthosis controller. The dependence of the slot position with respect to position and time will be discussed in more detail in Section 6.5.4. Electronic switching mechanisms which were cost effective and reliable were reviewed for this application. Specifically, the photodiode optical switch, a type of electronic switch, has very fast and reliable switching characteristics making it a suitable device. A nominal 5V power supply is required to generate the infrared beam. An oscilloscope display has shown a nominal 10 millisecond transition time between states. 6.5.4 Available Signal Types Function of Position As shown in Figure 6-15, the generation of a voltage signal depends upon the positioning of the slot between the ports of the optical sensor. Studies have demonstrated that between five to eight distinct increments in vertical movement are possible by patients [1]. In the current controller design, however, to reduce the demands on the patient and to ensure that all users have the capability of operating the device, only two distinct movement increments are being utilized. The output of the shoulder controller, is, therefore, a function of the shoulder position. 83 (a) | "HIGH" SIGNAL: slotted bar optical switch infra-red beam: unblocked voltage "HIGH" time (b) | "LOW" SIGNAL: infra-red beam: blocked voltage LOW time Figure 6-15. Shoulder controller: position function. The number of levels is also hardware dependent, being limited somewhat by the size of the optical switch and the length of the slot. This will be addressed further in Section 6.5.7. Function of Time In order to increase the number of discrete signals generated by the shoulder controller, without increasing the number of vertical levels, the element of time was added to the system. The shoulder has the capacity to hold a certain position for a brief period of time and then release. By incorporating time, a distinction could be made between pulse and steady signals, pulse being a quick shrug and steady being a longer duration shrug, as illustrated in Figure 6-16. The number of discrete signals generated by the shoulder controller was therefore doubled. Hence, the output of the shoulder controller becomes a function of both shoulder position and time. 84 voltage slotted bar • optical switch -infra—red beam: • unblocked (a) "PULSE" time yoltage (b) "STEADY' time Figure 6-16. Shoulder controller: time function The "pulse" and "steady" duration times must be sufficiently distinct in order for both the user and the processor to distinguish between each command, yet short enough not to cause user fatigue The shoulder controller senses a pulse signal when the slot is positioned within the optical sensor and released in less than 650 msec. Similarly, holding the slot for greater than 650 msec produces a steady signal. These times are adjustable in the control software. 6.5.5 Control Functions Four distinct signals are required from the shoulder controller, as was shown in the flowchart of Figure 6-3. These signals are used for the following tasks: 1. Toggle between position and orientation modes 2. Toggle between functional and table top planes 3. Produce Positive Z-direction motion (while in Position Mode) Produce Open grasp action (while in Orientation Mode) 4. Produce Negative Z-direction motion (while in Position Mode) Produce Close grasp action (while in Orientation Mode) 85 It can be seen in the above list that items three and four each have two functions for one signal. It was possible to combine these functions together, however, since Z-direction control only occurs in the Position Mode, and grasp control only occurs in the Orientation Mode. In addition to the signal requirements mentioned above, it was decided that the shoulder controller should be used to reactivate the device when it is in the deactivated state. (Recall that deactivation occurs through a rapid motion of the head controller for operational or safety shutdown). This, however, does not have to be a reserved unique signal, as the orthosis will scan for a reactivation signal only when in the deactivated state. Therefore, the number of discrete signals required from the shoulder controller remains at four. 6.5.6 Investigation of Different Design Configurations The variable parameters of the shoulder controller design are the number of optical switches and the number of slots on the bar. As described above, four unique signals are required from the shoulder controller. Two plausible configurations were devised to generate these signals and are illustrated in Figure 6-17. ( a ) OPTION 1: 1 switch 3 slots (1) optical sensor ( b ) OPTION 2: 2 switches 1 slot slider bar -with (3) slots -X2 -X1 "neutral" - Y A she _1J rai! 1 oulder r ise shoulder lower (2) optical sensors "neutral" ' v " shoulder raise shoulder lower slider bar with (1) slot Figure 6-17. Shoulder controller switching configurations. 86 Position alone is insufficient to describe the four unique control signals required since only a maximum of two control signals can be generated by using the positions of "XI,X2" and " Y " or the optical switches at " A " and "B" . Additional signals are generated by making the control signals a function of both position and time, termed pulse and steady, as previously described. The control commands of Option 1 and 2 are summarized in Table 6-6. Note that the shoulder controller functions both as a switch, having the capability to toggle between various states, as well as a driver when held in a steady (+5V) position, for the production of z-direction motion or grasp. Option 1 requires three slots in the bar in order to distinguish between a desired upward shoulder movement (positive Z-direction) and a desired downward shoulder movement (negative Z-direction) and the opening and closing of the grasp. The two slots together are labeled "XI,X2" and the lower single slot is labeled "Y" . When "X1,X2" passes by the optical switch, there will be two pulses close together, and when " Y " passes the switch, there will be a single pulse. Table 6-6. Command signals of Option 1 and 2 shoulder controller configurations. Orthosis Condition Desired Function Shoulder Action Required Command: Option I Command: Option 2 Position/Orientation Mode switch modes lift and release 2 pulses of[Y] pulse of [A] Function/Table Top plane switch planes lower and release 4 pulses of[X] pulse of[B] Z-direction action (in Position Mode) move arm UP or DOWN UP -lift and hold DOWN-lower and hold 1 steady of[Y] 1 pulse [XI], 1 steady [X2] steady of [A] steady of[B] Grasp action (in Orientation Mode) CLOSE or OPEN hand CLOSE-liftand hold OPEN -lower and hold 1 steady of[Y] 1 pulse [XI], 1 steady [X2] steady of [A] steady of[B] 87 Option 2 uses two optical switches, with one located above the neutral position of the bar slot and one below the neutral position, to distinguish if the shoulder is being moved up or down. The sensor above the neutral position is labeled " A " and the sensor below the neutral position is labeled "B" . The control commands of Option 2 provide the same orthosis switching functions as in Option 1 and are listed in Table 6-6. Upon evaluation of the two design alternatives, Option 2 was found to be the more favorable control configuration, with the greatest advantage being that it requires a smaller range of shoulder movement than Option 1. After preliminary testing, however, the design was modified so that the shoulder was only required to move up, while the relaxed or neutral state was in a fully lowered position. The geometry for Option 2 (modified), is illustrated in Figure 6-18. The command procedure is similar to that listed in Table 6-6, but is presented in more detail in Chapter 7 and Chapter 8. A summary of the final layout and the command sequence is shown in Figure 6-19. OPTION 2. modified: bottom neutral position 2 switches 1 slot : B A shoulder ,~ O raise | 1 "neutral" U only Figure 6-18. Modified shoulder controller option. 88 GENERAL UYOUT: slider bar • § « "B" l-R beam ififtcR' "A*-L A slot-• • SIDE VIEW FRONT VIEW upwards "shrug"—"""T 'Of shoulder • l-R beam i—i_i (blocked) Lfl I—R beam r-U (blocked) Lfl switch A = ON • switch 'B' = 0 N D 0 « NEUTRAL UP 1 CLICK UP 2 CLICKS Figure 6-19. Shoulder commands summary. With Option 1, there is less flexibility with the range of the neutral position of the shoulder since three slots on the bar must be spaced sufficiently far apart to be distinct within the ports of the optical switch. Furthermore, some commands require consecutive pulse and steady signals together, which is more likely to cause error in comparison to the individual signals associated with Option 2. If an error does occur on the part of the user in a sequential command, a reset time would be required to ensure that upon repeating, an incorrect sequence was not misinterpreted by the microcontroller. 6.5.7 Final Hardware Design The final shoulder controller design (Figure 6-20) utilizes a range of approximately 30-40 mm of vertical shrugging travel in order to generate two distinct increments or command levels. A 89 mirrimum of 30 mm of travel is set for two reasons. Firstly, since 30 mm sets the increments 15 mm apart, any lesser travel would bring the discernible increments of movement too close together for the user to control. Secondly, a shorter travel would present hardware limitations due to the physical spacing needed for the optical sensors. A minimum of 30 mm travel also allows the sensors to be spaced apart enough such that the slot will be positioned within one or the other sensor only, but not overlap them. A rriaximum travel of 40 mm is set for two reasons. Firstly, keeping the maximum travel to a minimum reduces the overall size of the unit, thus allowing it to fit under the shoulder. Secondly, any travel greater than this would place more demands on the user and increase muscle fatigue. Figure 6-20. Shoulder controller assembly. 90 As shrugging is actually a motion occurring as a partial rotation about the shoulder joint, horizontal motion will generally accompany the desired vertical motion [1]. A swivel or universal joint was therefore built into the linkage to accommodate all styles of shrugging, which may include a horizontal component. When the user shrugs, the vertical component of the motion is translated to a slotted bar through the swivel joint. The slotted bar is finally constrained to vertical travel only in the housing unit and passes between the two optical sensors. In an initial prototype design, the slotted bar was allowed to travel freely between the optical sensors and was returned to its lowest point by gravity. This was found to present two main problems. Firstly, the user was required to "seek" the vertical displacement required to position the slot in the path of the optical sensors. Secondly, the return of the slotted bar was proportional to its weight and friction in the housing, and was susceptible to getting caught in clothing. A modification used in the final design incorporates two features to address each of these problems (Figure 6-20). First, notches in the bar were added which engage via a leaf spring and dowel pin. This combination provides a positive indication of position to the user. Secondly, a return spring was attached to the bottom of the shding bar and fixed to the housing unit. The spring ensures that the slider bar is returned to the bottom or neutral position. Also, since the default or relaxed state of the shoulder tends to be nearer the bottom range of travel, it was felt that the downwards motion should not be cognitively controlled, but rather a function of the device. The notches are filed such that the spring constant is greater than the pin engagement force in order to return the slider. Provided that the shoulder is physically holding the clicked 91 position, the slider will stay in that position. When the shoulder has completed its task, relaxing the shrug will return the slider to the lowest position. The two optical switches of the final design are contained in an aluminum housing as shown in Figure 6-20. Both end faces of the housing have slots which guide the bar between the two switches. A lid gives allowance for the protruding pins of the optical switches and also clamps the switches to the housing. The distance between the two switches is dependent upon the range of shrug motion producible by the individual user and is adjusted accordingly before the lid is fixed to the housing. Each optical switch is powered with a 5V power supply provided by the 7.2V orthosis battery packs. The optical switch outputs and the power inputs are interfaced with a bi-directional 10-pin connector. This connector is compatible with the microcontroller ports located in the frontal region of the orthosis body cast. 6.5.8 Attachment of Shoulder Controller Harness Several simple, adjustable harnesses were investigated to attach the slotted bar to the user's shoulder so that the shrugging motion results in vertical displacement of the bar [32]. The final design uses a piece of soft leather that conforms to the top of the shoulder (Figure 6-21). To stabilize the leather, a series of 20 mm wide nylon straps and plastic quick connects were used. One of the straps is wrapped diagonally across the user's torso, and the shorter one wraps over the shoulder and under the armpit. The plastic quick connects were chosen for two reasons: (1) they are easy for an attendant to do and undo, and (2) they allow for easy length adjustment of the straps. 92 Figure 6-21. Attachment of shoulder harness. 6.5.9 Attachment of Shoulder Controller The controller, consisting of the stiding rod, optical switches, and the housing unit, is mounted on the TLSO itself above the hip and below the armpit. When the body cast is made, a small flat section is added in the region beneath the left side armpit. 6.6 SUMMARY A unique set of devices have been developed to adapt the remaining available body motion of the user and provide an appropriate number of simple control commands to the orthosis controller. The major benefits of the head and shoulder controller designs are summarized in Table 6-7. Table 6-7. Benefits of head and shoulder controllers. Item ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 1 generic input signals 2 reliable and repeatable proportional signal 3 logical and simple motion to operate 4 short training time 5 minimal power consumption 6 non-interference with primary activities such as eating and talking 7 does not require a wide range of motion 8 mmimizes the physical exertion required 93 With the control input devices now defined, the inputs must be integrated into software and electronic circuitry which will control the drive motors and orthosis movement. This integration is outlined in Chapter 7, while the startup and operation procedures are presented in Chapter 8. 94 7. COMPUTER CONTROL 7.1 OVERVIEW In order to link the signals generated by the head and shoulder controllers, and to incorporate the concept of end-point control, two microcontrollers with custom software were required. Writing the control algorithms that coordinates the input and output signals of the components of the control system was one of the major tasks of this project, performed and documented with the help of an additional team member [51]. The software initially receives directional input signals from the head and shoulder controller, and angular position information from the joint potentiometers. The interpretation of these input signals is used to determine the location of the desired end-point, based on the current end-point position of the arm. The end-point control equations calculate which joints must be moved in order to achieve the desired positioning. Finally, corresponding output signals are sent to the motor units, which in turn move the arm to the desired end-point. The following sections summarize the current design of the electronics and flow of processing information. A brief historical overview is also included to trace the development of the computer control system. 7.2 CURRENT DESIGN The hardware implementation consists of two microcontrollers (MC's) , mounted on a single circuit board, connected by cables to a second circuit board which convert signals from the MC's to operate the D C motors (Figure 7-1). The first M C , termed the "system input processor", contains the two main orthosis control algorithms: 1) head/shoulder controllers and, 2) 95 differential kinematics. The second M C , termed the "position processor", contains the PJJD (proportional-integral-derivative) error control algorithm. The algorithms contained within the two processors are described in more detail following Figure 7-1. head controller shoulder controller potentiometers shoulder upper-arm elbow forearm wrist grasp System Input Processor ; position control data Position Processor motor speed data Motor Speed Controller Algorithms: 1) head & shoulder 2) differential kinematics - (circuit board #1) • Algorithm: 1)PID control I— (circuit board #2) Figure 7-1. Control system schematic. 7.2.1 System Input Processor The two algorithms embedded within this processor are responsible for receiving, translating, and coordinating information pertaining to the input signals generated by the user. After reading inputs from the head and shoulder controller, the system input processor calculates the desired 96 change in position or orientation using the end-point control equations within the differential kinematics algorithm. The result is position control data which contains the angular information to be evaluated by the position processor. The two algorithms are outlined below. Head and Shoulder Algorithms In the head and shoulder algorithms, the user-input signals are interpreted to perform any of the following tasks: • calculate the desired change in x-y-z coarse positioning: dx, dy, dz (when in Position Mode) • control the joint-specific fine movement (when in Orientation Mode) • toggle between Modes (Position or Orientation) • toggle between Planes (Table Top or Functional) • deactivate the orthosis (when intentional/unintentional rapid head movements are detected) • reactivate the orthosis • ignore head movements within the neutral zone In particular, the x-y-z positioning output from this algorithm is used as the input to the differential kinematics algorithm described next. Differential Kinematics Algorithm The end-point control equations developed in Chapter 5, manipulated in MathCAD (Appendix B), and translated into software are contained within the differential kinematics algorithm. The differential kinematics algorithm calculates the target position of the end-point by adding an incremental change to the current end-point position. The current end-point position is calculated using angular position information provided by the potentiometers located at each degree of freedom of the orthosis. The differential kinematics code is extensive and is written in Intel Assembly Language to minimize the run time of the code. 97 In the calculations, it is necessary to compute the sine and cosine of many different angles. Since the calculations of sine and cosine are a time-consuming process, a "look-up table" was utilized within the code to reduce computation time. The code finds the sine or cosine of the desired angle directly from an indexed table which is included directly in the microcontroller R A M . Once the new target angles have been calculated, the code checks that these target angles are within the designated anatomical joint limits, which are specified in the code. The limits are checked by adding the requested change in joint rotation to the current joint positions . If they are outside of the limits, the target angles are set to the maximum allowable angle. The target angles are then sent as numbers (from 0-1023) to the second microcontroller, the position processor. 7.2.2 Position Processor The position processor implements the angle control algorithm, which utilizes PID error control. The feedback for the PID control comes from the potentiometers mounted on the orthosis. This algorithm calculates the error between the actual joint angle and the target joint angle and controls the motor units accordingly. If the orthosis is bumped or somehow moved from the specified position by a means other than the control system, the position processor will move the orthosis back into the original specified location. 7.3 HISTORICAL DEVELOPMENT During the history of the control system development, work on the electronics and circuit boards by the U B C team members experienced various substantial modifications and spanned several years. Notable lessons were learned, for example, regarding the power and associated amplifiers required to drive the orthosis, and the processing time necessary to approach real-time manipulation of the orthosis. The documentation of the endeavors is included here for reference and to provide relevant background for the current design. 98 7.3.1 Prototype One In the original prototype, three control boards were linked in series, as shown in Figure 7-2. The serial processing inherent in this method, however, proved to be too slow for position calculations and general execution of the overall control strategy, as only one board would be functioning at a time. > > Control Algorithm Board > Differential Kinematics Board > Angle Controller Board <= I Figure 7-2. Prototype one: three control boards linked in series. For example, activation of the head or shoulder controllers could result in limited or no mechanical orthosis response due to computations still occurring in the second or third control boards. The first board, therefore, would fail to receive the input signals at the appropriate times. This could also jeopardize the safety of the users, as an intentional or unintentional rapid movement, intended to deactivate the orthosis, may be ignored. 99 7.3.2 Prototype Two In a revised prototype, it was decided to link the three boards in an alternative arrangement as shown in Figure 7-3. In this configuration, all three boards were riuining concurrently, having the capability for simplified parallel processing. I scan time \ ~65 msec I run time \ ~300 msec [ run time \ ~1 msec Control Algorithm Board Inverse Kinematics Board Angle Controller Board Computes: dx,dy,dz Computes: angle changes Computes: voltages (5)(5>®(5>(&> potentiometers Motor Units Figure 7-3. Prototype two: three independent control boards. The first board, which contained the control algorithm, ran at 65 ms intervals and was controlled by a simple software interrupt routine. Signals from the head and shoulder controller, therefore, were scanned in every 65 ms. The second board contained the differential kinematics and had a run-time dependent upon the number of calculations currently being performed. The maximum run time of the differential kinematics board was approximately 300 ms. Upon completion of the calculations by the differential kinematics board, resulting information was passed to the third board, the angle controller. The angle controller board computed the appropriate voltages to transmit to the individual motors, corresponding to the desired angular joint changes. After an 100 approximate run time of 1 ms, the angle controller was clear to receive the next information from the differential kinematics board. This configuration was later adapted to the current system, which consists of the single circuit board and two microcontrollers, as previously shown in Figure 7-1. The major change in the current system consists of the integration of the head and shoulder controller codes with the differential kinematics. Its chief advantage is reduction in size and increased efficiency of code as the number of communication channels between MC's is reduced to the single bi-directional asynchronous serial communication link. This main link passes the position information from the differential kinematics in the system input processor to the position processor. To account for varying physical size between users, affecting the end-point calculations, several parameters in the computer code are adjustable to suit the user. These parameters include the lengths of various portions of the arm and the angle between the operational planes. In addition to size parameters, several defined constants in the main control algorithm are adjustable. For example, the size of the head controller neutral zone can be easily modified according to the learning progress of the user. When users are first learning the system, the neutral zone can be large, and as they become more familiar with the control system, the neutral zone can be decreased for faster control actuation. Users may also simply prefer to have a larger neutral zone to permit more freedom of head motion without response from the orthosis. Similarly, motor gains can be modified to increase or decrease the response to commands. 101 7.4 USER FEEDBACK One of the key factors in making a control system both user friendly and safe is providing feedback to the user. This is especially important, since the control system utilizes different operating modes and functional planes. It was therefore decided that incorporating user feedback in the control system design was essential. Audible, tactile, and visual forms of feedback were briefly investigated, with visual being accepted for simplicity and rehabihty. An array of tight emitting diode (LED) lights was developed as described below. There were several minimum functional requirements related to the design of the feedback system It was determined that the user should not have to move their head in order to look at the display, as this could result in undesired movement of the orthosis. Also, the user should be able maintain continuous eye contact with the hand in order to control it and be aware of its movements. This required niinimizing the level of eye motion required to acknowledge a visual status indication. In addition, the feedback should be visible throughout the performance of any task without vanishing from sight due to obstruction from objects or the orthosis, therefore detenrrining the physical location to place the feedback display proved to be a difficult task. In an initial prototype, a coded L E D display was fixed to one of the tabs located on the straps of the head controller. The lights were mounted inside a short length of hollow aluminum tubing, which the user can see with peripheral vision. By having the display located on the side of the head, the user's vision was not obstructed. Although functionally suitable, the additional apparatus and wiring required near the facial region detracted from the desired aesthetics of the head controller. 102 It was therefore decided to mount a similar feedback display to the hand assembly. The hand assembly is comprised of a plastic mold of the user's hand and the linkages from the wrist gearbox. Two small strips of plastic were made, each containing three LED's (Figure 7-4). The first strip was mounted near the inside of the thumb, and the second was mounted in line with the index finger on the back of the hand. Two units were used to account for rotation of the hand during task performance, such that one unit should be visible at all times. Their close mounting proximity avoids the potential distraction caused by the LED's turning on and off, while ehminating the need for the eyes to search for the feedback status. one of two small plastic strips mounted to hand o red o yellow o green Figure 7-4. L E D display. The red light is always on when the device is in neutral or deactivated, and off when it is activated. The status indication of the remainder of the lights is summarized in Table 7-1. Table 7-1. L E D feedback status LED status MODE DESCRIPTION RED (small) YELLOW GREEN 0 neutral on off off 1 position: table-top off on on 2 position: inclined plane off off on 3 orientation off off off 103 T-he yellow light is on, in conjunction with the green light, when the orthosis is in Position Mode and utilizing the table top plane and off when the orthosis is using the inclined plane or in Orientation Mode. The green light is on when the orthosis is using the inclined plane. All of the lights are off when in Orientation Mode. The following chapter discusses the initial testing of the head and shoulder controllers and presents the guidelines for startup and operation of the orthosis. The preliminary evaluations were performed in the laboratory to confirm fully functional devices and to ensure that safety features responded as designed prior to mounting the orthosis to a user. 104 8. DISCUSSION 8.1 INTRODUCTION In order to confirm that the orthosis was operating correctly, a preliminary evaluation of the structural, mechanical, and electrical components was conducted to satisfy various conditions. Following this, a more thorough check of operations was performed to confirm that mode switching, L E D feedback, and end-point control were functional. This chapter describes the results of the evaluations and summarizes the instructions contained in the Operating and Technical Manual necessary to power and test the orthosis [51]. 8.2 PRELIMINARY EVALUATION 8.2.1 Range of Motion The joints were tested for smoothness of operation throughout the desired range of motion. Although no hardware stops exist yet, the software stops, set at appropriate anatomical end ranges, were functioning correctly. The meshing and operation of the steel worms and brass gears in the elbow, wrist, and hand joints are not as smooth as Would be desired due to the limitations of precision machining and the lack of suitable lubricants. Recommendations are made in Chapter 9 regarding these gearboxes and the need to explore alternative mechanisms. 8.2.2 Potentiometer Angular Position Feedback Potentiometer feedback at the joints has been tested and provides correct positional information to the computer controller. No slippage or loosening of the potentiometers has been observed. The potentiometers, however, are relatively inexpensive and the resistive contacts and wiper mechanisms may have deteriorated or have a reduced reliability and operational lifetime due to the customization procedures and addition of the square slots. 105 8.2.3 Head Controller Function Each inchnometer has been tested for both side to side and front to back input of control signals. The proportionality function was tested and motor speeds increase as the unit is inclined farther. 8.2.4 Shoulder Controller Function The shoulder controller clicks and returns to the desired neutral position under the control of the return spring. The L E D confirmation of shoulder input signals and modes is operational. 8.3 OPERATION OF THE ORTHOSIS 8.3.1 Power The orthosis operates from a package of eight nickel-cadmium batteries. Each battery is rated at 1.25 V D C at 5000 mAH, for a total package supply of 10 V D C . The battery pack is mounted to the TLSO and connected to the orthosis with a two-wire connector located near the battery. The ON/OFF power switch is located on the left side of the microcontroller housing. Prior to Operation of the orthosis, the batteries should be charged for several hours by connecting the 13 V D C , 650 mA adapter to the A C adapter jack. Finally, the DB-25 hardware key must be installed on the DB-25 connector on the right side of the microcontroller housing. 8.3.2 Initial Power-up When first powered-up, the orthosis moves to an initial starting position previously set by constants in the software and will be in the ZERO or N E U T R A L mode. The initial starting position is currently defined as the arm straight out in front of the body, elbow fully extended, wrist pronated, and hand face down. A calibration jig may be a useful addition in the future to confirm that the initial starting position is maintained over time, to monitor potential wear of the mechanical components and backlash in the gearing, and to serve as a maintenance tool for the orthosis. 106 The large red L E D on the hand display unit is ON, indicating the A C T I V A T E D status of the orthosis. While in N E U T R A L mode, the head controller inclinometer values are maintained at zero, regardless of the current head position when the unit was activated. 8.3.3 Mode Selection The orthosis will not move until one of the active modes is selected by the shoulder controller. The four modes and the corresponding L E D feedback are summarized in Table 8-1. Table 8-1. Mode selection and L E D status. LED status M O D E DESCRIPTION RED (small) Y E L L O W G R E E N 0 neutral on off off 1 position: table-top off on on 2 position: inclined plane off off on 3 orientation off off off In order to select the desired modes of operation, the user must raise the shoulder controller slider UP to either the MID or HIGH position and then release it in less than 650 msec. In the MID position, the three potential active modes are switched cyclically, as shown in Figure 8-1. mode 3 ^ v mode 2 mode 0 Figure 8-1. Shoulder controller mode selection. 107 The HIGH position invokes N E U T R A L mode, stopping all motion and resetting the inclinometer values to zero. This procedure is summarized in Table 8-2. Table 8-2. Mode reset to NEUTRAL. M O D E DESCRIPTION FINAL M O D E "mid" "high" 0 neutral 1 0 1 position: table-top 2 0 2 position: inclined plane 3 0 3 orientation 1 0 Switching to N E U T R A L mode can also be achieved under emergency conditions by any rapid motion of the head. At the current stage of development, however, the use of the shoulder controller chcking to the "high" position is recommended, since large tilt angles of the head may result in erratic arm movement if the head is not moved quickly enough to be recognized as an intended switch to N E U T R A L mode. 8.3.4 Motion Control The inclinometers respond to tilting of the head by slowly providing incremental values for "dx" and "dy", which are inputs for X-axis and Y-axis control of the orthosis in POSITION modes and forearm rotation and wrist flexion in ORIENTATION mode. The "dx" and "dy" values are inputs to the differential kinematics routine in both POSITION modes. During testing and evaluation, it was recognized that it was easier to tilt the head forward and backward than it was side-to-side. The scaling factors for the two motions can be modified in the software to customize the response, and are summarized in Table 8-3. 108 Table 8-3. Head controller scaling factors. INCLINOMETER STATUS centered H E A D POSITION: < 4 degrees tilt > 4 degrees tilt X inclinometer value 0 20*angle 20*angle change "dx" 0 0 20*angle/750 Y inclinometer value 0 20*angle 20*angle change "dy" 0 0 20*angle/1000 Vertical or Z-direction motion is activated from the shoulder controller. An input of "dz" is produced when the shoulder controller is held in either the "mid" or "high" positions for more than 650 msec, as summarized in Table 8-4. Table 8-4. Shoulder controller scaling factors. VERTICAL INPUT SHOULDER POSITION down "mid" "high" dz 0 -2000/3000 +2000/3000 Finally, when the orthosis is used in ORIENTATION control mode, the dx, dy, and dz inputs are multiplied by a constant coefficient, then added to the current values of the orientation angles on each 65 msec program loop cycle as shown in Table 8-5. Table 8-5. Orientation Mode inputs. JOINT A N G L E ORTHOSIS ACTION A N G L E STATUS: initial value final value e3 forearm rotation 03 03 + dx e4 wrist flexion 04 04 + dy 05 grasp 05 05 + dz 109 8.3.5 Operation The user is initially fitted to the orthosis and controllers with the power OFF. Upon powering up the orthosis, the arm will be positioned automatically into its neutral position. Once the user has found a comfortable "normal" head position, the shoulder controller is operated up to the "mid" position to select the desired operating mode. The LED's on the hand will confirm the mode status. If at any time the initially selected head position becomes uncomfortable, it can be readjusted by the user, simply by switching to N E U T R A L mode with the shoulder controller in the "high" position. The following final chapter summarizes the conclusions established from the research work presented, highlights the unique contributions, and makes recommendations for future work. Having completed the majority of the objectives, there remains the task of perfonriing clinical trials on actual users to deterrriine the ultimate benefits of the powered upper-limb orthosis. 110 9. CONCLUSIONS 9.1 INTRODUCTION The overall objective of the project was the development of an improved powered upper-limb orthosis capable of restoring function and mobility to people with paralyzed arms. The specific goals of this research were to modify and optimize the design of the U B C orthosis, develop an efficient control strategy, and design the associated input devices, while minimizing the complexity of the control operations required by the user to perform task functions. It was determined that a control system be employed that involved the use of the head and shoulder to generate the input signals. This project has provided significant contributions to the areas of rehabilitation engineering, biomedical research, and upper limb assistive device development. This work has developed a powered upper-limb orthosis that has the potential to be deemed acceptable to users, may be capable of performing orthosis-aided daily living tasks, and may be operated with reasonable levels of skill and endurance. The unique contribution of this research is the development of a novel control strategy that not only efficiently positions the orthosis but also uses intuitive and simple control signal input devices. In addition, the transfer of control system complexities from the user to a microcontroller results in a more user-friendly set of devices. 9.2 CONCLUSION SUMMARIES The conclusions made on the following pages were arrived at through four stages. The first stage involved optimizing the design of the U B C orthosis for functionality, manufacturabihty, assembly, safety, and cost. In stage two, potential control methods were reviewed for their applicability 111 with the U B C orthosis. Stage three involved the adaptation of end-point control strategies for efficient actuation and positioning of the orthosis joints. Finally, stage four involved the development of simple yet intuitive control signal input devices that utilize the user's remaining available head and shoulder motion in a relatively aesthetic and non-fatiguing manner. The following points summarize some of the specific contributions. 9.2.1 Orthosis Design The partial initial prototype orthosis built at the University of British Columbia was based on the recommendations and data resulting from the previous work of the research team at U B C [1-6,23,48,49,52]. Components were then redesigned to improve functionality and modified as required to optimize for strength, weight, and appearance. In addition, efforts were made to sttearnline mechanical linkages, refine component alignment, and simplify adjustability, resulting in a second complete orthosis. A database of over sixty AutoCAD drawings was generated from which the components were manufactured. The timeline, budget, and overall commitments to BCHCRF, however, to produce working deliverables did not permit a full redesign to the general conceptual layout of the orthosis. For example, the structural routing of the orthosis beneath the arm, the remote and local locations of the various drive motors and gearheads, the use of flexible drive cables, and the use of a worm and gear combination for producing rotary motion at the joints, as opposed to using alternate mechanisms or techniques, was preserved but optimized or improved. The major modifications are summarized below: Structural To reduce the weight and bulk of the orthosis, steel parts were converted to aluminum where strength, wear, and tolerances permitted, while redundant material was milled from areas where possible. 112 Mechanical In order to properly mesh the gear and worm in the custom gear boxes at the elbow, wrist, and hand, high tolerance precision sub-assemblies had to be designed. This was essential to guarantee pitch diameter matching and minimize the backlash. To further improve the function of moving parts, oilite bushings and additional bearings were utilized. Also, the small bearing sizes being used required a size-on-size fit, as opposed to an interference fit, therefore requiring snap rings and thrust bearings to retain the shafts and bearings. These changes resulted in a significant improvement in the mechanical function and manufacturability of the orthosis joints. Assembly Ease of assembly was of predominant importance in the design process. In particular, all components were standardized to use black and stainless steel hex key fasteners, using flush mounted countersunk screws where possible and cap screws elsewhere. Set screw sizes were increased (#8,#10) to improve load transfer from motor or gearbox shafts, while reducing slippage and wear experienced by smaller sizes (#4). Also, all components were designed with a view to facilitate future manufacturing of simplified, interchangeable, and inexpensive parts. Adjustability Significant thought was given to the needs and varying physical attributes of the orthosis users. As such, efforts were made to achieve structural members that were easily adjustable by the home care attendant or the user to allow for comfortable and effective wearing of the orthosis. Thoracic Lumbar Sacral Orthosis (TLSO) The orthosis was designed to accommodate a 5 kg pay load in the user's grasp, thereby creating a considerable cantilevered load extending away from the TLSO plastic body cast. Rat, reinforced 113 mounting surfaces were therefore incorporated into the TLSO to ensure adequate fastening of the orthosis structure, microcontroller, and power supply. Potentiometers Accurate functioning of the potentiometers was considered imperative for the successful operation of the orthosis. Although the suitable sites for mounting the potentiometers were limited, the specific locations were adapted to facilitate fastening of the potentiometers. Extensive precision modifications to the potentiometers themselves were required to convert from the standard, cumbersome shaft-driven types to unique, streamlined axially-driven units. These custom modifications included the reaming of square keyed holes through the center of the potentiometer drive mechanism. These changes provided the necessary precise angular joint information to the control system that was pivotal to the successful functioning of the orthosis. 9.2.2 Control Methods To develop a method for controlling the U B C orthosis that facilitated the performance of orthosis-aided daily-hving tasks required a full understanding of the abilities of future users. Research done previously by the project team explored and identified the capabilities and needs of potential users of a powered upper-limb orthosis. Potential control methods were then reviewed with particular attention to strengths and weaknesses of past developments and their implications for integration with the U B C orthosis and its users. The conclusions and contributions of this portion of the research are outlined below: • Myoelectric sensors were considered as a possible control method. It was determined, however, that the use of these sensors would not provide the ease of use and rehabihty necessary to control the orthosis. In particular, it became apparent that lack of suitable 114 muscle control sites, electrode contact problems, and interference with daily living tasks often resulted in a complex and tiring control system and therefore was deemed unsuitable for this project. • In contrast, a system utilizing a combination of head and shoulder movements was determined to be the most appropriate method of harnessing the remaining available body motion of the user. Both motions were found to be relatively logical, non-fatiguing, reliable, and aesthetically acceptable forms of producing input control and shutdown signals. 9.2.3 Control Strategies Previous powered orthoses often suffered from control strategies that required sequential joint-by-joint switching to individually activate each degree of freedom. The technical limitations inherent in such techniques included poor functionality, slow speed of operation, and lack of proportional control of joint motion. The objectives for this phase were to develop and implement an efficient user-friendly control strategy that would address the problems associated with previous sequential joint-by-joint switching techniques. After reviewing alternative methods, it was determined that the successful use of end-point control in industrial applications could be adapted for use with the orthosis. This novel approach to orthosis control was important to the development of the control system. The concept of end-point control was attractive due to the intuitive and efficient nature of commands and performance of tasks. Rather than having to laboriously select each joint for movement, the user is now able to coordinate joint movement similarly to that in a normal arm. To accomplish this, kinematic equations of motion and extensive software routines were written and implemented. 115 Furthermore, two user-selectable modes were defined to produce initial rapid, coarse positioning, followed by fine, detailed orientation of the hand. Similarly, these motions are available in two distinct and user-selectable operational planes. This accommodates the motion of common activities and tasks more effectively, allowing 3-D motion in each plane using the same set of commands and greatly improving the functionality of the orthosis. It is believed that the implementation of two such operating planes will reduce the control complexity of the device and improve the performance efficiency of the desired high-priority daily-living tasks. 9.2.4 Control System Device Development The objectives for the last phase of the research were to develop input devices that utilized the remaining available body motions to generate input control signals while being miriimally invasive and reducing the cognitive and energy demands on the user. The conclusions and contributions from this phase of the research are summarized below. A head controller has been developed which operates with the "joystick" analogy of 360° X - Y motion to produce coarse positioning and fine orientation of the hand. The user directs their hand by tipping or inclining the head in the direction of the desired hand location. The head motion is detected by two optical encoders worn on the head and transmitted to the microcontrollers. This was combined with the end-point control algorithms that were designed to position the hand. Electronic gains within the software provided proportional speed control of the orthosis according to the degree of head inclination. Thus, hand positioning and the velocity of limb movement are both precisely controlled with this novel head "joystick". 116 Similarly, the shoulder represents a useful control site, capable of naturally and reliably operating a signal input device. The shoulder control device was designed and built utilizing standard components which produce three types of input commands to the microcontroller. The first type is a logical ON/OFF signal to activate or deactivate the control system, switch modes, or select operational planes. Secondly, the shoulder produces motion perpendicular to the plane in use. Thirdly, opening and closing the hand is activated by the shoulder controller. The movements of the head and shoulder, therefore, are capable of producing fairly complicated orthosis motion with relatively simple and straightforward user input motions. In addition, both the head and shoulder controller motions and the devices themselves were developed to minimize the interference with daily-hving tasks, such as eating and drinking. The devices are also easy to put on and take off, are robust in construction, and well protected from any potential environmental concerns such as moisture or extremes of temperature. Finally, safety was of particular importance in designing the head and shoulder controllers because of the potential for inadvertent activation of the orthosis and the need for emergency shutdown. An adjustable neutral zone has been incorporated in the head controller software to allow for some imprecise head motion. These head motions could occur while learning how to operate the orthosis, or with normal speech, facial expression, or perhaps a sneeze, cough, or laughter. The neutral zone offers a buffer for relaxation so that small head movements do not become translated into orthosis activation. Further safety measures included the addition of the capability to deactivate the control system in response to unintentional or intentional rapid head movement. 117 9.3 RECOMMENDATIONS FOR FUTURE WORK The following recommendations are made for future work to the orthosis structure, mechanical components, and the controllers as described in this thesis, with the ultimate objective to initiate clinical trials and gather performance data from users. 9.3.1 Clinical Trials The prototype orthosis should be evaluated clinically against the defined high-priority tasks. A procedure for testing and documenting the functional performance and problems should be developed. A literature review may offer techniques that have been used successfully elsewhere. The University of Victoria has developed a comprehensive set of procedures that may also be suitable [39]. An ethics review procedure must be developed and submitted. 9.3.2 Structural Components There is a need to further improve the aesthetics and streamlining of linkages, edges, and corners by adding coverings or moa^fying individual components. Efforts could be made to reduce the overall weight further by replacing components with high-strength plastics or composite materials where possible. Also, compliance members may be required throughout the structure. 9.3.3 Mechanical Components The meshing of the gear and worm units is intended to be lubricated, therefore efforts to provide dry or wet lubrication to the gear boxes, while refining sealing for leakage, would improve the smooth function of the elbow, wrist, and grasp joints. The manufacturing of these gearboxes, however, required such fine tolerances, precision macliining, and exact fitting that their cost became prohibitively high compared to other components. Similar commercially available speed reduction gearboxes were investigated that were well made and very reasonably priced, but were several times larger and weighed roughly ten times that of the custom gearboxes manufactured for 118 the orthosis. Efforts should be made, therefore, to source gearboxes that are suitable for the orthosis. Alternatively, the use of different mechanisms which convert rotary motion from the drive cables to rotary motion at the joints should be reviewed. Similarly, devices such as linear actuators, cables and spools, or bell-cranks, should be analyzed for their apphcabihty in replacing or interfacing with the flexible drive cable concept. Also, companies specializing in sophisticated robotics mechanisms should be sourced and consulted for their expertise and experience with small devices for the U B C orthosis. As the orthosis moves, the distances from the drive motors to the joints increase and decrease. The flexible drive cables, therefore, must absorb or compensate for the various positions of the orthosis by following the orthosis structure as it moves. Several different lengths of cables for each joint were investigated to determine the optimum operating length to cover all potential ranges of motion. Typically, a slightly longer cable was preferred for a fully extended position, but the excess cable became a problem when the orthosis was in other positions. The cables were also attached at several points along the orthosis structure to maintain a streamhned appearance and improve power transmission to the joints. When the cables were driven under load, however, they tended to twist away from the orthosis where they were not constrained to follow their designated routing. Improved routing of the flexible drive cables, combined with possible sleeving or ducting, is therefore needed to reduce twisting and kinking of the cables when under load. 119 9.3.4 Head Controller Further design modifications directed towards a lightweight and cosmetically acceptable design based on the style of portable headphones would improve the appearance of the current controller device. Ideas could also be combined with the soft, adjustable straps of the current design. In addition, recent communication with U.S. Digital indicated that a smaller and tighter version of the Model #T2-7200 incremental inclinometer Was currently in production, which would greatly improve the overall bulk and aesthetics of the head controller. 9.3.5 Shoulder Controller Operation of the shoulder controller by actual users is required for comments regarding the spring return force and the range of motion necessary to operate. The current plastic and aluminum housing should be modified to reduce the potential for clothing catching and possible under-arm irritation. 9.3.6 Potentiometers Due to the critical role that the potentiometers play in the accurate response and operation of the orthosis, continued efforts should be made to improving the positive contact between the potentiometers and the various gear shafts. The current Bourns potentiometers were suitable for research and development purposes because they were very inexpensive and readily modifiable. Ideally, however, a more robust and precise potentiometer would be preferred. Recently, a series of optical incremental encoders were located that may solve many of the problems previously encountered with measuring shaft rotation in a compact, non-obtrusive fashion (Dynapar Corporation, Series M20). They are designed with an axial hole for mounting to the end of shafts, with the capability for through-shaft mounting. These units should be further investigated for compatibility with the microcontroller and shaft sizing. 120 9.3.7 Motion Analysis Further motion analyses or kinematic simulations should be conducted to examine the compensatory movements used by people with upper-limb disabihties in performing tasks and to improve their workspace design or home environment. Motion analysis would be useful to compare orthosis-assisted task performance with the original data acquired from the able-bodied task studies, and to confirm that the reduced degrees of freedom are adequately achieving the desired functionality. 9.3.8 Microcontroller The memory capacity of the two controller boards should be increased for added code modifications and to improve speed of calculations. The existing design has space limitations due to the board stack-up height and is considerably bigger than desired. Efforts should be made to improve the electronic component design to reduce the overall housing size required. 9.3.9 User Feedback The current location of the feedback LED's on the wrist and hand may prove to be difficult to see or distracting when performing tasks in the clinical trials. A heads-up display should be investigated for training and to remedy problems associated with potential wrist rotations out of the visual field. The head mounted, telescoping design suggested in Chapter 6 may be revisited and evaluated by the U B C design team and the individual users. An additional situation regarding user feedback involves limits in range of motion at the joints. If a certain desired motion is expressed, but the next calculation by the software would force a joint rotation out-of-bounds, the software will limit the motion to the current position. Although this is a useful safety feature, it may not be apparent to the user why there is no motion occurring in 121 response to their input signal. Use of audible tones or additional lights may be investigated if this becomes a common problem. 9.4 SUMMARY The U B C powered upper limb orthosis is now a functional product of engineering science and design that has the potential to assist patients with particular neuromuscular diseases or injuries to regain independence through the performance of daily-living tasks. This thesis has presented the successful developments and incorporation of a novel and unique end point control system, modified potentiometers, innovative software and microcontrollers, and safe, user-friendly head and shoulder controllers with a foundation of solid appreciation for the needs, goals, and abilities of the user. The future of the U B C orthosis should include clinical trials with the devices and ongoing revisions to ensure state of the art designs and equipment to promote the restoration of function to the user. 122 REFERENCES 1. ANGLIN C. Control Techniques Originating From The Shoulder Up. Report, Department of Mechanical Engineering, University of British Columbia. 1-34, July 1991. 2. ANGLIN C , ROMTLLY D.P., GOSINE R.G., HERSHLER C. Kinematic Analysis of Powered Upper-Extremity Orthoses. Proceedings of Rehabilitation Engineering Society of North America (RESNA) International Conference, Toronto, Ontario. 105-107, June 6-11, 1992. 3. ANGLIN C , ROMTLLY D.P., GOSINE R.G., HERSHLER C. Powered Upper Limb Orthosis Analysis and Development. To be published in the Proceedings of the Seventh World Congress of ISPO, Chicago, 111. p.74, June 28 - July 3, 1992. 4. ANGLIN C. A Functional Task Analysis and Motion Simulation for the Development of a Powered Upper-Limb Orthosis. Masters Thesis, Department of Mechanical Engineering, University of British Columbia. 1-162, Sept. 1993. 5. ANGLIN C , ROMTLLY D.P., GOSINE R.G., HERSHLER C , RASCHKE S.U. A Functional Task Analysis and Motion Simulation for Orthosis Development. Paper presented at Canadian Medical and Biological Engineering Conference (CMBEC). May 1-5, 1994. 6. ANGLIN C , ROMTLLY D.P., GOSINE R.G., HERSHLER C , RASCHKE S.U. Motion Simulation for an Improved Orthosis. Paper presented at Rehabilitation Engineering Society of North America (RESNA). June 17-22, 1994. 7. APPLE H.P. Engineering Design Studies of Cybernetic Orthotic/Prosthetic Systems, Report No. EDC 4-69-26. Case Western Reserve University. 1969. 8. AVIATION ENGINEERING, TRICKETT C. Vancouver, B.C. Machine and assembly services, Mar.-Sept. 1995. 9. BUCKETT J.R., PECKHAM P.H., STROTHER R.B. Shoulder Position Control, an Alternative Control Technique for Motion Impaired Individuals. Proceedings of the International Conference on Rehabilitation Engineering, Toronto, 1980. 10. BUCKETT J.R., PECKHAM P.H., THROPE G.B., BRASWELL S.D., KEITH M.W. A Flexible, Portable System for Neuromuscular Stimulation in the Paralyzed Upper Extremity. IEEE Transactions on Biomedical Engineering. 35(11), Nov. 1988. 11. CRAGO P.E., CHIZECK H.J., NEUMAN M.R., HAMBRECHT F.T. Sensors for Use with Functional Neuromuscular Stimulation. IEEE Transactions on Biomedical Engineering, Vol. BME-33: 256-268, Jan. 1986. 123 12. DENAVIT J., HARTENBERG R.S. Kinematic Synthesis of Linkages. McGraw-Hill, New York, pp. 435, 1964. 13. ENGEN T J . Development of Externally Powered Upper Extremity Orthotic Systems. J. Bone and Joint Surgery, 47B(3): 465-468, Aug. 1965. 14. ENGEN T.J., SPENCER W.A. Development of Externally Powered Upper Extremity Orthotics, Final Report. Texas Institute for Rehabilitation and Research, Houston, 1969. 15. FROM W.D. The Design and Development of a Multi-Axis Powered Orthosis for the Upper Extremity. MASc. Thesis, Department of Mechanical Engineering, University of Toronto, 1992. 16. Fu K.S., GONZALEZ R.C., LEE C.S.G. Robotics: Control Sensing. Vision, and Intelligence , McGraw-Hill Book Co., New York, 1987. 17. GALWAY R., NAUMANN S., SAUTER B., SOMERVTLLE J., KURTZ I. Evaluation of a Powered Orthotic Device for the Enhancement of Upper-Limb Movement (PODEUM). Rehabilitation Engineering Department Annual Report, Hugh MacMillan Research Centre, Toronto, 71-72, 1989. 18. GALWAY R., NAUMANN S., SAUTER B., SOMERVTLLE J., KURTZ I. Evaluation of a Powered Orthotic Device for the Enhancement of Upper-Limb Movement (PODEUM), Final Report. Rehabilitation Engineering Department, Hugh MacMillan Research Centre, Toronto, 1991. 19. GOWITZKEB.A., MILNERM . Understanding the Scientific Bases of Human Movement, 2nd Ed., Williams and Wilkins, Baltimore, Md., 1980. 20. GuiTTET J., KWEE H.H. , QUETIN N. , YCLON J. The Spartacus Telethesis: Manipulator Control Studies. Bull. Prosth. Res. 16(2): 69-105 , Fall 1979. 21. HANSEN P.K., DOBSON D., WANNER J. Freewheel - The Cordless New Headpointing Device. Proc. Int'l Conf. for the Assoc. of Advancement of Rehabilitation Technology (ICAART). 372-373, 1988. 22. HARWIN W.S., JACKSON R.D. Analysis of intentional head gestures to assist computer access by physically disabled people. J. Biomed. Eng. 12: 193-197, May 1990. 23. HERSHLER C , ANGLTN C , ROMTLLY D.P. Evaluation of the HMRC Prototype PODEUM. Final Report to the Rehabilitation Engineering Department, Hugh MacMillan Research Centre. University of British Columbia, Vancouver, 1-12, Aug. 1992. 24. HEYNEN J., KAHN D.A., LUKAS H. An Eye Transducer for Actuating a Typewriter. Proc. of the 2nd International Conference on Rehabilitation Engineering, Ottawa. 448-449,1984. 124 25. HOGAN N. AND MANN R.W. Myoelectric Signal Processing: Optimal Estimation Applied to Electromyography - Part II: Experimental Demonstration of Optimal Myoprocessor Performance. IEEE Transactions on Biomedical Engineering. Vol. BME-27(7): 396-410, July 1980. 26. HORIZON ENGINEERING INTERNATIONAL, SIMUNEK M . Vancouver, B.C. Machine and assembly services, Mar.-Sept. 1995. 27. JAFFE D. Polaroid Ultrasonic Ranging Sensors in Robotic Applications. Robotics Age, 7(3): 23-30, Mar. 1985. 28. JAFFE D. Ultrasonic Head Controlled Wheelchair and Interface. Rehabilitation Research and Development Center: 1991 Progress Report (Mobility: Human-Machine Integration). Veterans Administration Medical Center, Palo Alto, Calif. 105-106, 1991. 29. JOHNSON M.W. Evaluation of the Use of Shoulder Movement as a Command Control Source. Masters Thesis, Case Western Reserve University, Dept. of Biomedical Engineering. Aug. 1987. 30. JOHNSON G.R., ANDERSON J.M. Measurement of Three-Dimensional Shoulder Movement by an Electromagnetic Sensor. Clinical Biomechanics. 5:131-136, 1990. 31. JOHNSON M.W., PECKHAM P.H. Evaluation of Shoulder Movement as a Command Control Source. IEEE Transactions on Biomedical Engineering. 37(9), Sept. 1990. 32. JULIEN G., KING S., LOKE A. , RUSSELL S. Control System for UBC Upper-Limb Orthosis. Mech 457 Final Report, Department of Mechanical Engineering, University of British Columbia. 1-50, Apr. 1995. 33. KARCHAK JR. A. , ALLEN J.R. Investigation of Externally Powered Orthotic Devices, Final Project Report. Rancho Los Amigos Hospital, 1968. 34. KWEE H.H., TRAMBLAY M . , BARBIER R., DUPEYROUX M . , VINCENEUX M.F., SEMOULIN P., PANNIER S. First Experimentation of the Spartacus Telethesis in a Clinical Environment. Paraplegia, 21(5): 275-86, Oct. 1983. 35. LAKE R.B. Evaluation and Coordination of Movement in Orthotic/Prosthetic Systems. PhD Thesis, Case Western Reserve University, 1969. 36. LEHNEIS H.R. Application of External Power in Orthotics. Orthotics and Prosthetics, 22(5): 34-45, Sept. 1968. 37. LEHNEIS H.R. An Electric Arm Orthosis. Bulletin of Prosthetics Research. 17: 4-20, Spring, 1972. 125 38. LORD R.H. Position Transduction as a Proportional Signal Source in Quadriplegics. Masters Thesis, Case Western Reserve University, Dept. of Biomedical Engineering. June 1972. 39. MATTEE J. Evaluation Procedure. Queen Alexandra Centre For Children's Health, Victoria, B.C. Personal communication, Fall 1995. 40. NICKEL V.L. , KARCHAK JR. A. , ALLEN J.R. Investigation of Externally Powered Orthotic Devices, Final Project Report, VRA Grant RD-518. Rancho Los Amigos Medical Centre, Feb. 1964. 41. NICKEL V.L. , SAVILL D.L., KARCHAK JR. A. , ALLEN J.R. Synthetically Powered Orthotic Systems. J. Bone and Joint Surgery, 47B(3), Aug. 1965. 42. PERRY J. Selection of Patients for Externally Powered Braces. The Control of External Power in Upper-Extremity Rehabilitation , National Academy of Sciences Publication 1352, Washington D.C., 1966. 43. POLLOCK D., SELL H . Myoelectric Control Sites in the High-Level Quadriplegic Patient, Arch. Physical Medicine and Rehabilitation. 59: 217-220, May 1978. 44. RASCHKE S.U., ROMTLLY D.P., ANGLIN C , GOSINE R.G., HERSHLER C. A Modified Powered Upper-Limb Orthosis. The Canadian Yearbook of Prosthetics and Orthotics. 34-35, July 1993. 45. RESWICK J.B. Biomedical Research Program on Cybernetic Systems for the Disabled, Final Report, EDC Report No. 4-70-29. Case Western Reserve University, 1970. 46. RINARD G. The Ocucom - An Eye Position Communications/Control Device. Proc. of the 2nd International Conference on Rehabilitation Engineering, Ottawa. 457-458, 1984. 47. RINARD G., RUGG D. An Ocular Control Device for Use by the Severely Handicapped. 3rd Conf. on Systems and Devices for the Disabled. 76-79,1976. 48. ROMTLLY D.P., ANGLIN C , GOSINE R.G., HERSHLER C , RASCHKE S.U. Analysis and Development of a Powered Upper-Limb Orthosis. Paper presented at International . Conference on Rehabilitation Robotics (ICORR). June 14-16, 1994. 49. ROMTLLY D.P., ANGLIN C , GOSINE R.G., RASCHKE S.U., HERSHLER C. A Functional Task Analysis and Motion Simulation for the Development of a Powered Upper-Limb Orthosis. IEEE Transactions on Rehabilitation Engineering, Special Issue: Rehabilitation Ergonomics and Human Factors (TEEREN). 2(4): 256:265, Dec. 1994. 50. SAUTER W.F., BUSH G., SOMERVTLLE J. A single Case Study: Myoelectrically Controlled Exoskeletal Mobilzer for Amyotrophic Lateral Sclerosis (ALS) Patients. Prosth. and Orth. Intl. 13: 145-148, 1989. 126 51. SOMOW C. Powered Upper-Limb Orthosis: Operating and Technical Reference Manual. Department of Mechanical Engineering, University of British Columbia. Feb. 1996. 52. STANGER C.A., ANGLIN C , HARWTN W.S., ROMTLLY D.P. Devices for Assisting Manipulation: A Summary of User Task Priorities. IEEE Transactions on Rehabilitation Engineering, Special Issue: Rehabilitation Ergonomics and Human Factors (IEEREN). 2(3): 119-129, Sept. 1994. 53. TEW A.I. The Oxford Optical Pointer: a direction sensing device with proportional electrical output. Med. & Biol. Eng. & Comput. 26: 68-74, Jan. 1988. 54. WHITNEY D.E. Resolved Motion Rate Control of Manipulators and Human Prostheses, IEEE Trans, on Man-Machine Systems. Vol. MMS-10(2): 47-53, June 1969. 55. YOUNG L .R., SHEENA D. Survey of Eye Movement Recording Methods. Behaviour Research Methods and Instrumentation. 7(5): 397-429, 1975. 56. VODOVNTK L., REBERSEK S. Information Content of Myo-Control Signals for Orthotic and Prosthetic Systems. Archives of Physical Medicine and Rehabilitation. 55: 52-56, Feb. 1974. 127 APPENDIX A. END-POINT CONTROL: DENAVIT-HARTENBERG VARIABLES JOINT: i=1 | | SPANS FRAMES: 0-»»1 AZIMUTH - » ELEVATION JOINT: i=2 SPANS FRAMES: 1 -»-2 '2 ELEVATION UPPERARM ©i rotate about z 0 e, ©z never causes x^  to meet x 2 a i = -110* «2 V \ rron \ from Zgto z, a z = +90* z , z , rotate about X 0 1 rotate ziabout Xf a,= 0 a 2 dist. along xiaxis=0 a 2 =1cm r v \ f i frame. "1* x l ^ ' T \ f r a m e *0" -intersection point d, = 0 ongm i d 2 =27cm x o ^ / s I d ' s t ' a l o n 3 z o a x ' s = 0 poii intersection nt 128 JOINT: i=3 SPANS FRAMES: 2-*3 C j 3 e 3 UPPERARM ELBOW JOINT: i=4 SPANS FRAMES: 3 - * 4 ELBOW -> WRIST ef= o x 2 l l x 3 > e , <13 rotate about z 2 rotate about X* a 3 = - 9 0 -origin of Ith frame a 3 = 0 ~ II dist.=0 ntersection of Z 2 <5c X 5 axes intersection, of Z , & X d 3 =1cm © 4 rotate about Z , „ 3 X-er=+90' a 4 a 4 = +90* rotate about x. origin of \ Q Ith frame \ a 4 = -5cm X 4 f -intersection of d 4 =33cm s d 4 -intersection of z 2 & x 3 axes 129 JOINT: i=5 SPANS FRAMES: 4 ^ - 5 «5 e5 .v UP y 8 LEFT FORWARD WRIST —»• GRASP er=+9o* a 5 = -90' a 6 =15cm intersection of Z4and x 5 ^ a 6 . f origin of Ith frame d 6 = 0 Intersection of z+and x 6 i-1 origin dist=0 ' SUMMARY: D E N A V I T - H A R T E N B E R G I N P U T S H 0 - 1 1-2 2 - 3 H H H 3 - 4 H 4 - 5 e d a <h e, 0 0 -110* (user Input) e2 27cm (user input) 1cm (fixed) +90-e3 1cm (fixed) 0 -9cr e4 33cm (user Input) - 5 c m (fixed) +90-e5 0 15cm (user input) -9cr I N I T I A L P O S I T I O N : arm straight out, palm down er ef er o o 0 +90' 0 130 APPENDIX B: MathCAD Listing DIFFERENTIAL KINEMATICS Endpoint control from Azimuth (1) to Hand (5) Current rev: Mar. 1996 INITIALIZE: note: angles are measured in RADIANS pi = 3.141592654 D-H Parameters: DISTANCED": TRANSLATION "a": ANGLE ALPHA "al": d1 = 0 a1 := 0 ah = _ 1 1 0 - - P L note: "alpha" angles designate d2 = 27 a2 := 1.0 180 changes in geometry that are d3 := 1.0 a3 := 0 al2 = 90 typically 90 degrees ... "ah "=-110 d4 := 33 a4 = -5 al3 = -90 is "user input", so it appears as d5 := 0 a5 = 15 al4 = 90 "ah" throughout the equations. al5 = -90 INITIAL POSITION: arm straight out, palm down Angle (t=theta) definitions: (in RADIANS) t1 := 0.0 t2 := 0.0 t3 := 0.0 t4 := 9 0 - ^ - t5 := 90— 180 180 NOTE: 1. these initial angles are based on the D-H representation when setting up the coordinate systems. 2. They therefore designate the starting position from which all other angular changes must be measured, according to the D-H convention for identifying the 4 parameters at each coordinate system. i.e. if the wrist flexes 15 degrees (t5), by the right-hand rule and D-H, the angle to be used is actually 90+15=105 . NOTE: 1. The above values are used for initializing & testing the matrices only. 2. The actual final J inverse matrix will be all symbolic, i.e. t1 to t5 will be variable. 3. The equations will be input to the control software in this form. 4. When testing, the following information gets provided to the control system: user input: all = -110 deg. = elevation (ratchet) d2 = 27 cm = upper arm d4 = 33 cm = forearm fixed inputs: a2 = 1 cm (measured) d3 = 1 cm a4 = -5 cm feedback (auto): t1 = azimuth feedback (update): t4 = wrist flex/ext t2 = upper arm roll t5 = grasp open/close t3 = el bow flex/ext 131 OVERALL SOLUTION PROCEDURE: TO FIND ANGULAR CHANGE OF POSITION „ r- .• "dth", i.e. delta theta vector Governing Equation: J(th) = dp(th) where: J(th) = J-matrix = derivative of P-vector w.r.t. theta: (but only t1, t2, t3) dth Re-write equation to get "d-theta": -1 dp = J(th)dth > dth = J (th)dp Therefore: -1 need: a ) J ^ __j3)__dp(th) 1. Define the D-H transformation matrices 2. Multiply matrices: H05 = H01 *H12*H23*H34*H45 Final H matrix will be in terms of: T1 ,T2,T3,T4,T5 as well as a's and d's Last column of H05 is the "P-vector", or displacement vector: px, py, pz 3. P-vector = fen. of the angles theta: p = f(th) p = (px, py, pz) where: px = px(t1 ,t2,t3,t4,t5) py = py(t1 ,t2,t3,t4,t5) pz = pz(t1 ,t2,t3,t4,t5) 4. Differentiate px, py, pz: each w.r.t. t1, t2, t3 e.g. a = dpx_t1 where each derivative is assigned a letter b - d x t2 from a to i (see 5. below) - P _ a b c 5. The Jacobian, or "J-matrix", is 3x3 of these derivatives: Notation of matrix J = d e f g h i J-matrix = derivative of P-vector w.r.t. theta: J(th) = dp(th) (butonlyt1,t2,t3) dth 6. Calculate the Determinant of J: "det J" (this will just be a # based on the current orthosis position 7. Calculate the "Inverse Jacobian": . . _ _ -1 A B C Notation of inverse J = j = D E F where: A = (e*i -f*h)/det J G H I etc. -1 8. Re-write equation in 5. to get "d-theta": dp = J(th)dth > dth = J (th)dp -1 we have: J NOTE: these are both totally SYMBOLIC, in terms of we have: dp sin, cos of angles, and the lengths a and d 132 D-H TRANSFORMATION MATRICES: Shoulder Azimuth -to- H01 Upperarm Roll Upperarm Roll -to- H12 Elbow Flexion Elbow Flexion -to- H23 Forearm Rotation Forearm Rotation -to- H34 Wrist Flexion Wrist Flexion -to- H45 Grasp cos(t1) -sin(M )cos(al1) sin(t1 )sin(al1) 0 sin(t1) cos(t1 )cos(al1) -cos(M )sin(al1) 0 0 sin(all) cos(aM) 0 0 0 0 1 cos(t2) 0 sin(t2) a2cos(t2) sin(t2) 0 -cos(t2) a2sin(t2) 0 1 0 d2 0 0 0 1 cos(t3) 0 -sin(t3) 0 sin(t3) 0 cos(t3) 0 0 1 0 d3 0 0 0 1 cos(t4) 0 sin(t4) a4cos(t4) sin(t4) 0 -cos(t4) a4sin(t4) 0 1 0 d4 0 0 0 1 cos(t5) 0 -sin(t5) a5cos(t5) sin(t5) 0 cos(t5) a5sin(t5) 0 - 1 0 0 0 0 0 1 Procedure: AZIMUTH -to- HAND: multiply H01 thru H45 Note: due to space limitations, the multiplication of (5) matrices is subdivided into several steps: Note: MathCAD will SYMBOLICALLY multiply these matrices but the solution is so large that it is written to the CLIPBOARD, where it must be edited in WORD, then pasted back into MathCAD. Evaluate Numerically: for test position #1 (arm straight out, at preset shoulder angle) H05 = H01H12H23H34H45 H05 = I 0 - 1 0 1 0.94 0 0.342 72.529 -0.342 0 0.94 -20.013 0 0 0 1 Px Py Pz -^P" vector (the last column is of interest) Py~72.5cm Pz~-20cm arm 133 Re-write "px" here so it fits on the page: px(t1 ,t2,t3) •:= a5cos(t5)cos(t4)cos(t3)cos(t1 )cos(t2) ... + -a5cos(t5)cos(t4)cos(t3)sin(t1 )cos(al1 )sin(t2) ... + a5cos(t5)cos(t4)sin(t1 )sin(al1 )sin(t3) ... + -a5-cos(t5)-sin(t4)-cos(t1 )sin(t2) ... + -a5cos(t5)sin(t4)sin(t1 )cos(al1 )cos(t2) ... + -a5sin(t5)sin(t3)cos(t1 )cos(t2) ... + a5sin(t5)sin(t3)sin(t1 )cos(al1 )sin(t2) ... + a5sin(t5)sin(t1 )sin(al1 )cos(t3) ... + a4cos(t4)cos(f3)cos(t1 )cos(t2) ... + -a4cos(t4)cos(t3)sin(t1 )cos(al1 )sin(t2) ... + a4cos(t4)sin(t1 )sin(al1 )sin(t3) ... +-a4sin(t4)cos(t1 )sin(t2) ... + -a4sin(t4)sin(t1 )cos(al1 )cos(t2) ... + -d4-sin(t3)-cos(t1 )-cos(t2) ... + d4sin(t3)sin(t1 )cos(al1 )-sin(t2) ... + d4-sin(t1 )sin(al1 )cos(t3) ... + d3-cos(t1 )sin(t2) ... + d3-sin(t1 )cos(al1 )cos(t2) ... + cos(t1 )a2cos(t2) ... + ~sin(t1 )cos(al1 )a2sin(t2) ... + sin(t1 )sin(a!1 )d2 px(t1 ,t2,t3) = 1 Differentiate "px"w.r.t. "t1": short version (to print): dpx_t1(t1 ,t2,t3) := -a5cos(t5)cos(t4)cos(t3)sin(t1 )cos(t2) ... + -a5-cos(t5)-cos(t4)-cos(t3)-cos(t1 )cos(al1 )sin(t2) ... + a5cos(t5)cos(t4)-cos(t1 )sin(al1 )sin(t3) ... + a5cos(t5)sin(t4)sin(t1 )sin(t2) ... + -a5cos(t5)sin(t4)cos(t1 )cos(ah )cos(t2) ... + a5sin(t5)sin(t3)sin(t1 )cos(t2) ... + a5sin(t5)sin(t3)cos(t1 )cos(al1 )sin(t2) ... + a5sin(t5)cos(t1 )sin(al1 )cos(t3) ... + a4cos(t4)cos(t3)sin(t1 )cos(t2) ... + -a4cos(t4)cos(t3)cos(t1 )cos(al1 )sin(t2) ... + a4cos(t4)cos(t1 )sin(al1 )sin(t3) ... + a4sin(t4)sin(t1 )sin(t2) ... + -a4sin(t4)cos(t1 )cos(al1 )cos(t2) ... + d4sin(t3)sin(t1 )cos(t2) ... + d4sin(t3)cos(t1 )cos(al1 )sin(t2) ... + d4cos(t1 )sin(al1 )cos(t3) ... + -d3sin(t1 )sin(t2) ... + d3cos(t1 )cos(al1 )cos(t2) ... + -sin(t1 )a2cos(t2) ... + cos(t1 )cos(al1 )a2sin(t2) ... + cos(t1 )sin(a!1 )d2 a = dpx_t1(t1 ,t2,t3) a = -72.529 134 Differentiate "px" w.r.t. "t2": short version (to print): dpx_t2(t1 ,t2,t3) = -a5cos(t5)cos(t4)cos(t3)cos(t1 )sin(t2) ... + -a5cos(t5)cos(t4)cos(t3)sin(t1 )cos(al1 )cos(t2) . + -a5cos(t5)sin(t4)cos(t1 )cos(t2) ... + a5cos(t5)sin(t4)sin(t1 )cos(al1 )-sin(t2) ... + a5sin(t5)sin(t3)cos(t1 )sin(t2) ... + a5sin(t5)sin(t3)sin(t1 )cos(al1 )cos(t2) ... + -a4cos(t4)cos(t3)cos(t1 )sin(t2) ... +-a4cos(t4)cos(t3)sin(t1 )cos(al1 )-cos(t2) ... +-a4sin(t4)cos(t1 )cos(t2) ... + a4sin(t4)sin(t1 )cos(al1 )sin(t2) ... + d4sin(t3)cos(t1 )sin(t2) ... + d4sin(t3)sin(t1 )cos(al1 )cos(t2) ... + d3cos(t1 )cos(t2) ... + -d3sin(t1 )cos(al1 )sin(t2) ... + -cos(t1 )a2sin(t2) ... + -sin( t1 )• cos( all )• a2-cos( t2) b := dpx_t2(t1 ,t2,t3) b = 6 Differentiate "px" w.r.t. "t3": short version (to print): dpx_t3(t1 ,t2,t3) = -a5cos(t5)cos(t4)sin(t3)cos(t1 )cos(t2) ... + a5cos(t5)cos(t4)sin(t3)-sin(t1 )cos(al1 )sin(t2) ... + a5cos(t5)cos(t4)sin(t1 )sin(al1 )cos(t3) ... +-a5sin(t5)cos(t3)cos(t1 )cos(t2) ... + a5sin(t5)cos(t3)sin(t1 )cos(al1 )sin(t2) ... + -a5sin(t5)sin(t1 )sin(al1 )sin(t3) ... + -a4cos(t4)sin(t3)cos(t1 )cos(t2) ... + a4cos(t4)sin(t3)sin(t1 )cos(al1 )sin(t2) ... + a4cos(t4)sin(t1 )sin(al1 )cos(t3) ... +-d4cos(t3)cos(t1 )cos(t2) ... + d4cos(t3)sin(t1 )cos(al1 )sin(t2) ... +-d4sin(t1 )sin(al1 )sin(t3) c = dpx_t3(t1 ,t2,t3) c = 4 8 135 Re-write "py" here so it fits on the page: py(t1,t2,t3) := a5cos(t5)cos(t4)cos(t3)sin(t1 )cos(t2) ... + a5cos(t5)cos(t4)cos(t3)cos(t1 )cos(al1 )sin(t2) ... + -a5cos(t5)cos(t4)cos(t1 )sin(al1 )sin(t3) ... + -a5cos(t5)sin(t4)sin(t1 )sin(t2) ... + a5cos(t5)sin(t4)cos(t1 )cos(al1 )cos(t2) ... + -a5sin(t5)sin(t3)sin(t1 )cos(t2) ... + -a5sin(t5)sin(t3)cos(t1 )-cos(al1 )sin(t2) ... + -a5sin(t5)cos(t1 )sin(al1 )cos(t3) ... + a4cos(t4)cos(t3)sin(t1 )cos(t2) ... + a4cos(t4)cos(t3)cos(t1 )cos(al1 )sin(t2) ... + -a4cos(t4)cos(t1 )sin(al1 )sin(t3) ... + -a4sin(t4)sin(t1 )sin(t2) ... + a4sin(t4)cos(t1 )cos(al1 )cos(t2) ... + -d4sin(t3)sin(t1 )cos(t2) ... + -d4sin(t3)cos(t1 )cos(al1 )-sin(t2) ... + -d4cos(t1 )sin(al1 )cos(t3) ... + d3sin(t1 )sin(t2) ... +-d3cos(t1 )cos(al1 )cos(t2) ... + sin(t1 )a2cos(t2) ... + cos(t1 )cos(al1 )a2sin(t2) ... + -cos(t1 )sin(a!1 )d2 py(t1 ,t2,t3) = 72.529 Differentiate "py"w.r.t. "t1": short version (to print): dpy_t1(t1 ,t2,t3) = a5cos(t5)cos(t4)cos(t3)cos(t1 )cos(t2) ... + -a5cos(t5)cos(t4)cos(t3)sin(t1 )cos(al1 )sin(t2) . + a5cos(t5)cos(t4)sin(t1 )sin(al1 )sin(t3) ... + -a5cos(t5)sin(t4)cos(t1 )sin(t2) ... + -a5cos(t5)sin(t4)sin(t1 )cos(al1 )cos(t2) ... + -a5sin(t5)sin(t3)cos(t1 )cos(t2) ... + a5sin(t5)sin(t3)sin(t1 )cos(al1 )sin(t2) ... + a5sin(t5)sin(t1 )sin(al1 )cos(t3) ... + a4cos(t4)cos(t3)cos(t1 )cos(t2) ... + -a4cos(t4)cos(t3)sin(t1 )cos(al1 )sin(t2) ... + a4cos(t4)sin(t1 )sin(al1 )sin(t3) ... +-a4sin(t4)cos(t1 )sin(t2) ... + -a4sin(t4)sin(t1 )cos(al1 )cos(t2) ... +-d4sin(t3)cos(t1 )cos(t2) ... + d4sin(t3)sin(t1 )cos(al1 )sin(t2) ... + d4sin(t1 )sin(al1 )cos(t3) ... + d3cos(t1 )sin(t2) ... + d3sin(t1 )cos(al1 )cos(t2) ... + cos(t1 )a2cos(t2) ... + -sin(t1 )cos(al1 )a2sin(t2) ... + sin(t1 )sin(a!1 )d2 d := dpy_t1(t1 ,t2,t3) d = 1 136 Differentiate "py" w.r.t. "t2" short version (to print): dpy_t2(t1 ,t2,t3) = -a5cos(t5)cos(t4)cos(t3)sin(t1 )sin(t2) ... + a5cos(t5)cos(t4)cos(t3)cos(t1 )cos(al1 )cos(t2) + -a5cos(t5)sin(t4)sin(t1 )cos(t2) ... + -a5cos(t5)sin(t4)cos(t1 )cos(al1 )sin(t2) ... + a5sin(t5)sin(t3)sin(t1 )sin(t2) ... + -a5sin(t5)sin(t3)-cos(t1 )cos(al1 )cos(t2) ... + -a4cos(t4)cos(t3)sin(t1 )sin(t2) ... + a4cos(t4)cos(t3)cos(t1 )cos(al1 )cos(t2) ... +-a4sin(t4)sin(t1 )cos(t2) ... + -a4sin(t4)cos(t1 )cos(al1 )sin(t2) ... + d4sin(t3)sin(t1 )sin(t2) ... + -d4sin(t3)cos(t1 )cos(al1 )cos(t2) ... + d3sin(t1 )cos(t2) ... + d3cos(t1 )cos(al1 )sin(t2) ... + -sin(t1 )a2sin(t2) ... + cos(t1 )cos(a!1 )a2cos(t2) e := dpy_t2(t1 ,t2,t3) e = -0.342 Differentiate "py" w.r.t. "t3": short version (to print): dpy_t3(t1 ,t2,t3) := -a5cos(t5)cos(t4)sin(t3)sin(t1 )cos(t2) ... + -a5cos(t5)cos(t4)sin(t3)cos(t1 )cos(al1 )sin(t2) + -a5cos(t5)cos(t4)cos(t1 )sin(al1 )cos(t3) ... + -a5sin(t5)cos(t3)sin(t1 )cos(t2) ... + -a5sin(t5)cos(t3)cos(t1 )cos(al1 )sin(t2) ... + a5sin(t5)cos(t1 )sin(al1 )sin(t3) ... + -a4cos(t4)sin(t3)-sin(t1 )cos(t2) ... + -a4cos(t4)sin(t3)cos(t1 )cos(al1 )sin(t2) ... + -a4cos(t4)cos(t1 )sin(al1 )-cos(t3) ... + -d4cos(t3)sin(t1)cos(t2) ... + -d4cos(t3)cos(t1 )cos(al1 )sin(t2) ... + d4cos(t1 )sin(al1 )sin(t3) f = dpyJ3(t1 ,t2,t3) 137 Re-write "pz" here so it fits on the page: pz(t1,t2,t3) := a5cos(t5)cos(t4)sin(al1 )sin(t2)cos(t3) ... + a5cos(t5)cos(t4)cos(al1 )sin(t3) ... + a5cos(t5)sin(al1 )cos(t2)sin(t4) ... + -a5sin(t5)sin(al1 )sin(t2)sin(t3) ... + a5sin(t5)cos( all )cos(t3) ... + a4cos(t4)sin(al1 )sin(t2)cos(t3) ... + a4cos(t4)cos(al1 )sin(t3) ... + sin(al1 )cos(t2)a4sin(t4) ... + -d4sin(al1 )sin(t2)sin(t3) ... + d4cos(al1 )cos(t3) ... + -sin(ah )cos(t2)d3 ... + sin(al1 )a2sin(t2) ... + cos(al1 )d2 pz(t1 ,t2,t3) =-20.013 Differentiate "pz" w.r.t. "t1": dpz_t1(t1 ,t2,t3) = 0 g := dpz_t1(t1 ,t2,t3) g=o Differentiate "pz" w.r.t. "t2": dpz_t2(t1 ,t2,t3) = a5cos(t5)cos(t4)sin(al1 )cos(t2)cos(t3) ... + -a5cos(t5)sin(al1 )sin(t2)sin(t4) ... + a5sin(t5)sin(al1 )cos(t2)sin(t3) ... + a4cos(t4)sin(al1 )cos(t2)cos(t3) ... +-sin(al1 )sin(t2)a4sin(t4) ... + d4sin(al1 )cos(t2)sin(t3) ... + sin(al1 )sin(t2)d3 ... + sin(al1 )a2cos(t2) h = dpz_t2(t1 ,t2,t3) h = -0.94 Differentiate "pz" w.r.t. "t3": dpz_t3(t1 ,t2,t3) := -a5cos(t5)cos(t4)sin(al1 )sin(t2)sin(t3) ... + a5cos(t5)cos(t4)cos(al1 )cos(t3) ... + -a5sin(t5)sin(al1 )sin(t2)cos(t3) ... + -a5sin(t5)cos(al1 )sin(t3) ... + -a4cos(t4)sin(al1 )sin(t2)sin(t3) ... + a4cos(t4)cos(al1 )-cos(t3) ... + -d4sin(al1 )sin(t2)cos(t3) ... + -d4cos(al1 )sin(t3) i := dpz_t3(t1 ,t2,t3) 138 Algebraic definition of the "J" matrix: J(t1 ,t2,t3) — px(t1 ,t2,t3) —px(t1 ,t2,t3) — px(t1 ,t2,t3) dt1 dt2 dt3 — py(t1 ,t2,t3) —py(t1 ,t2,t3) ^—py(t1 ,t2 ,t3) dt1 dt2 dt3 — pz(t1 ,t2,t3) — pz(t1 ,t2,t3) ^ p z ( t 1 ,t2,t3) dt1 dt2 dt3 Evaluate "J" for the given angle (t1 ,t2,t3): -72.529 6 -48 J(t1 ,t2,t3) = | 1 -0.342 0 , 0 -0.94 0 Calculate the inverse of " J " : dpx=1 (i.e expected to be ~1) • dthet vector J(t1 ,t2,t3)~' = 0 1 -0.364 \ 0 0 -1.064 -0.021 -1.511 0.417/ dthet 0.0 0.0 0.021 J(t1 ,t2,t3)dthet = 1.008 0 \0 / dp ~= (1,0,0) as expected CHECK: insert values calculated from differentiation (a,b,c,etc.) into J and detJ to confirm figures were correctly transcribed from the Clipboard and that the differentiation was correct (+/- terms were preserved) /a b c matrixJ : = d e f \9 h i /-72.529 6 matrixJ -48 \ -0.342 0 -0.94 0 agrees with matrix calculated above detJ := a(e-i - fh) + b ( f g - di) -t- c ( d h - eg) detJ = 45.105 139 FINALLY: need to define the "inverseJ" components in terms of (t1 ,t2,t3,t4,t5) for input to the control software ... i.e. ALL SYMBOLIC !! However, since the expressions will be large & cumbersome, it is simpler to do the following: 1. calc. "a,b,c,...", since they are fully symbolic 2. calc. "A,B,C,...", also fully symbolic 3. define the (9) inverseJ components for use in the code: i.e. jinv[0,0] = A jinv[0,1] = B etc... WHERE: A ._ (e-i - f-h) D (f-g di ) Q ,_ (d -h - eg) detJ detJ detJ B . ( c h - bi) E ._ (a-i - eg) H _ (bg - ah) detJ detJ detJ c . (bf - c e ) ( c d - af ) ( ,_ ( a e - bd) detJ detJ detJ CHECK: calculate "inverseJ" based on values for "a,b,c,...", and therefore, "A,B,C,...": inverseJ / A B C D. E F G H I inverseJ = 0 1 -0.364 \ 0 0 -1.064 \-0.021 -1.511 0.417, J(t1 ,t2,t3)"1 = 0 -0.021 1 -0.364 0 -1.064 -1.511 0.417 Note: this "inverseJ" agrees with the inverse calculated earlier, i.e. J A -1 140 COMMON TERMS: simplification of equations to speed-up calculation time in the microprocessor j := a5cos(t5)cos(t4)cos(t3) jj := a5cos(t5)cos(t4)sin(t3) k = sin(t1 )cos(t2) I := cos(t1 )cos(al1 )sin(t2) m := cos(t1 )sin(al1 )-sin(t3) n := a5cos(t5)sin(t4) o = sin(t1 )sin(t2) oo := sin(al1 )sin(t2) p := cos(t1 )cos(al1 )cos(t2) q := a5sin(t5)sin(t3) qq := a5sin(t5)cos(t3) r := cos(t1 )sin(al1 )cos(t3) s := a4cos(t4)cos(t3) ss := a4cos(t4)sin(t3) t := d4sin(t3)cos(t1 )cos(al1 ) u := cos(t1 )cos(t2) uu := sin( ah )cos(t2) v := a2cos(t1 )sin(t2) w = a5cos(t5)-cos(t4) x := sin(t1 )cos(al1 )cos(t2) y = sin(t1 )cos(al1 )-sin(t2) z := sin(t1 )sin(al1 )cos(t3) zz := sin(t1 )sin(al1 )sin(t3) aa := cos(al1 )-sin(t3) bb = sin(al1 )sin(t2)sin(t3) cc = cos(al1 )cos(t3) dd := d2sin(t1 )sin(al1) ee = d2cos(t1 )sin(al1) ff := a5sin(t5) gg := a4cos(t4) hh := a4sin(t4) ii = d4sin(t3) ab - d3cos( all) ac .- a2cos(al1) ad := d4cos(t3) a := (_j.k) - (jl) +- (wm) + (no) - (np) + (q-k) +• (ql) 4- (a5-sin(t5)-r) - (s-k) - (s i ) ... + (ggm) •+- (hho) - (hhp) •+- (ii-k) + (iii) + (d4r) - (d3o) + (abu) - (a2k) - (acv) + ee a = 72.529 (-j-v) - (j-x) - (n-u) + (n-y) 4- (q-v) + (q-x) - (s-v) - (s-x) - (hh-u) 4- (hh-y) + (iiv) + (iix) + (d3u) - (abo) - (a2v) - (a2x) b = 6 (-jj-u) +- (jjy) + (wz) - (qqu) •+- (qq-y) + (ggz) - (adu) +- (ady) - (d4zz) (ffzz) - (ssu) +- (ss-y) c = 4 8 d := (j-u) - (j-y) + (w-zz) - (n-v) - (nx) - (qu) + (qy) + (ffz) + (s-u) - (sy) ... + (gg-zz) - (hhv) - (hh-x) - (ii-u) + (iiy) •+• (d4z) •+- (d3v) + (d3x) + (a2-u) (a2y) + dd d = 1 e := (-jo) -t-(j-p) - (nk) - (n-l) + (q-o) - (qp) - (so) -t-(sp) - (hhk) - (hh I) + (ii-o) - (iip) + (d3k) + (d3l) - (a2o) 1- (a2p) e = -0.342 f := (-jj-k) - - (w-r) + (-adl) +- (d4m) f = 0 (qqk) - (qq I) + (ff-m) - (ssk) - (ss-l) - (gg-r) - (ad-k) g := 0 h = (wuucos(t3)) - (noosin(t4)) - (q-uu) + (s-uu) - (oo-hh) - (ii-uu) +- (d3-oo) + (a2uu; h = -0.94 j := (-wbb) +• (wcc) - (qq-oo) - (qcos(al1)) - (ss-oo) +- (scos(al1)) - (oo-ad) - (d4aa) j = o 1 4 1 R E - C H E C K : ensure no errors in the above simplification process (e-i - f-h) detJ ( f -g- d-i) detJ (d-h _ eg) detJ ( c h - bi) detJ (bf - c e ) detJ E : = (ai - eg) detJ F ._ ( c d _ af) detJ H (b-g - ah) detJ ! _ ( a e - bd) detJ inverseJ /A B C \ D E F \G H I inverseJ = 0 0 -0.021 1 -0.364 \ 0 -1.064 -1.511 0.417, ... which once again agrees with the J(t1 ,t2,t3)A-1 as originally defined: J(t1 ,t2,t3)"1 = 0 0.021 1 -0.364 \ 0 -1.064 -1.511 0.417/ 142 


Citation Scheme:


Citations by CSL (citeproc-js)

Usage Statistics



Customize your widget with the following options, then copy and paste the code below into the HTML of your page to embed this item in your website.
                            <div id="ubcOpenCollectionsWidgetDisplay">
                            <script id="ubcOpenCollectionsWidget"
                            async >
IIIF logo Our image viewer uses the IIIF 2.0 standard. To load this item in other compatible viewers, use this url:


Related Items