. .13.... a “nu. 1’3-1 6...". a. .. é. . ,. . o .u.‘ i :3 :is 3.4.3, x. x... 9‘7 LIBRARY MIChI9,.... State University J This is to certify that the dissertation entitled ADAPTIVE CONTROL SUBJECT TO INPUT CONSTRAINTS: MANEUVERING WHEELED PLATFORMS USING A HOLONOMIC MOBILE ROBOT presented by Nandagopal Methil-Sudhakaran has been accepted towards fulfillment of the requirements for the Ph.D. degree in Mechanical Engineering UMajor Professor’s Signélure Aug, M, 2009 Date MSU is an Affirmative Action/Equal Opportunity Employer .-.--l-O-.-0-0-¢-O-l-a-O-I-I—o-o-O-'-i-l-0-O-l ‘ OI-.-O---O-I-I-u-oo- PLACE IN RETURN BOX to remove this checkout from your record. TO AVOID FINES return on or before date due. MAY BE RECALLED with earlier due date if requested. DATE DUE DATE DUE DATE DUE 5/08 K:IProilAcc&Pres/ClRC/DateDue.indd ADAPTIVE CONTROL SUBJECT TO INPUT CONSTRAINTS: MANEUVERIN G WHEELED PLATFORMS USING A HOLONOMIC MOBILE ROBOT By Nandagopal Methil-Sudhakaran A DISSERTATION Submitted to Michigan State University in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY Mechanical Engineering 2009 ABSTRACT ADAPTIVE CONTROL SUBJECT TO INPUT CONSTRAINTS: MANEUVERING WHEELED PLATFORMS USING A HOLONOMIC MOBILE ROBOT By N andagopal Methil-Sudhakaran The problem of adaptive control in the presence of input constraints is addressed. The new control laws are presented in the context of a holonomic mobile robot pushing and steering a wheelchair using a single manipulator. Adaptive control is employed to estimate, in real time, the inertia characteristics of the wheelchair and its occupant, and friction be- tween the wheelchair and the surface that it traverses. The input constraints considered are actuator saturation and actuator dynamics. Saturation of control input limits the maximum input that can be provided to the system and input actuator dynamics dictate the speed with which the control input can be realized. If left unaddressed, these constraints can result in estimation windup, poor tracking performance and/or instability. Additionally, in this case the problem is further exacerbated due to the fact that only a single manip- ulator is to be used for both pushing and steering due to weight and cost considerations. The control designs presented here complement the mechanical design of the manipulator such that a holonomic mobile robot employing the manipulator can maneuver a wheelchair asymptotically along a reference trajectory. The reference trajectories can be generated au- tonomously or provided by a human operator. Apart from the significant improvements in the performance of adaptive control subject to input constraints, this work has the potential to provide greater mobility to residents of Long Term Care facilities, which are currently experiencing an acute shortage of nurses and an increasing number of inmates. In general it can be used for maneuvering wheeled platforms. Experimental results employing an RP-6 mobile robot platform and a wheelchair are presented to validate the theoretical results. To my parents and my wife. iii ACKNOWLEDGMENTS I express my deepest gratitude to my major advisor and mentor, Dr. Ranjan Mukherjee, whose invaluable guidance and support made this work possible. 1 thank the members of my Ph.D. committee: Dr. Hassan Khalil, Dr. Alan Haddow and Dr. Alejandro Diaz, for their suggestions and inputs. I thank all my friends and family who have been supportive in every way. Finally, I thank my father who has been a great source of inspiration, mother, for her relentless hardwork and prayers, and my wife, for all her love and patience. N andagopal Methil-Sudhakaran iv TABLE OF CONTENTS LIST OF FIGURES .................................. vii 1 Introduction .................................... 1 1.1 Background .................................. l 1.2 Preliminary Challenge 1: Design of a Robotic Arm ............. 3 1.3 Preliminary Challenge 11: Adaptive Estimation ................ 4 1.4 Main Challenges ............................... 5 1.5 Using a Holonomic Platform ......................... 6 1.6 Progression of the Thesis ........................... 7 2 Preliminary Work ................................. 8 2.1 Conceptual Design of the Single Arm .................... 8 2.2 Dynamics of Wheelchair ........................... 10 2.3 Problem Statement .............................. 13 2.3.1 Main Result .............................. 14 2.3.2 Simulations .............................. 17 2.4 Forward and Backward Motion of Wheelchair ................ 31 2.4.1 Controller Modification ....................... 31 2.4.2 Simulations .............................. 34 3 Saturation of 'Ihrning Moment .......................... 39 3.1 Introduction .................................. 39 3.2 The Control Problem ............................. 41 3.2.1 Main Result .............................. 41 3.2.2 Simulations .............................. 44 3.3 Resetting of Estimates to Prevent Mndup .................. 49 3.4 Addressing Loss of Turning Moment ..................... 55 3.4.1 Change of Reference Trajectory ................... 55 3.4.2 Simulations .............................. 6O 4 Effect of Dynamics in the Prismatic Joint .................... 66 4.1 Background ................................. 66 4.2 Motivation ................................... 67 4.3 Preliminary Result .............................. 69 4.4 Addressing Sign Change of Control Inputs ................. 73 4.4.1 Change of Reference Trajectory ................... 73 4.4.2 Main Result ............................. 76 4.5 An Alternate Approach to Dealing with Sign Change in Control ...... 81 4.5.1 Closed-loop Control of the Prismatic Joint .............. 81 4.5.2 Main Result .............................. 83 4.6 Resetting of Estimates to Prevent Wmdup .................. 89 4.7 Dealing with Loss of Tuming Moment when F = 0 ............. 91 5 Generation of Additional Turning Moment by Varying the Angle of Push . . 101 5.1 Motivation ................................... 101 5.2 Preliminary result ............................... 102 5.3 Generation of additional turning moment ................... 106 5.4 Effect of Robot Dynamics on the Angle of Push ............... 108 5.5 Addressing Saturation in Angle of Push ................... 117 5.6 Resetting of Estimates to Prevent Wmdup .................. 126 5.7 Addressing Zero Force condition ....................... 133 6 Addressing the Limitations on the Applied Force ................ 138 6.1 Introduction .................................. 138 6.2 Saturation of Applied Force .......................... 138 6.3 Addressing dynamics of Applied Force ................... 148 6.4 Resetting of Estimates to Prevent Windup .................. 156 6.5 Addressing the situation when P} = O .................... 161 7 Experimental Verification ............................ 166 7.1 Focus of the Experimental Work ....................... 166 7.2 Arm Description ............................... 167 7.3 Experimental Results: Constraints of the Prismatic Joint .......... 168 7.4 Experimental Result: Prismatic Joint and Elbow Joint ............ 169 8 Conclusion and Future Work ........................... 173 BIBLIOGRAPHY ................................... 178 vi 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 LIST OF FIGURES Conceptual design of single arm for pushing and steering wheelchairs . . . 8 Pushing and steering achieved through elbow positioning in forearm pris- matic joint ................................... 9 Definition of coordinate system for the wheelchair and forces of interaction between robot and the wheelchair during pushing and steering ....... 11 Simulation 2.1: Plot of error variables ex and co, and control inputs, F and d, with controller parameters K1 = 15, K2 = 15, 21 = 50, 22 = 50 ..... 19 Simulation 2.1: Plot of estimates of unknown parameters with controller parameters K1 =15, K2 =15,21 = 50, L2 = 50 ............... 20 Simulation 2.1: Plot of errors with controller parameters K] = 10, K2 = 10, 2.1 =10,2/2 =10 ............................. 21 Simulation 2.1: Plot of estimates with controller parameters K1 = 10, K2 = 10, 21 = 10, A; = 10 ............................. 22 Simulation 2.1: Plot of errors with controller parameters K] = 50, K2 = 50, 21 = 50, M = 50 ............................. 23 Simulation 2.1: Plot of estimates with controller parameters K1 = 50, K2 = 50, 2.1 = 50, L2 = 50 ............................. 24 Simulation 2.2: Plot of desired trajectory ................... 25 Simulation 2.2: Plot of error variables ex and eg, and control inputs F and d 26 Simulation 2.2: Plot of parameter estimates ................. 27 Simulation 2.2: Overlapping plot of desired and actual trajectories ..... 28‘ Simulation 2.3: Plot of parameter estimates ................. 29 Simulation 2.3: Plot of error variables ex and eg ............... 30 Simulation 2.4: Plot of x with time ...................... 34 Simulation 2.4: Plot of parameter estimates ................. 35 vii 2.18 2.19 2.20 2.21 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 4.1 4.2 Simulation 2.4: Plot of error variable ex and force F ............. 35 Simulation 2.5: Plot of x with time ...................... 37 Simulation 2.5: Plot of parameter estimates ................. 37 Simulation 2.5: Plot of error variable ex and force F ............. 38 Plot of (is with respect to d .......................... 40 Simulation 3.1: Plot of error variables, ex and eg and control variables F and d as defined by Eqs.(2.12) and (2.13) in Theorem 2.1 .......... 46 Simulation 3.1: Plot of error variables ex and eg and control variables F and d with saturation in d with dm = 3.0 m ................. 47 Simulation 3.1: Plot of parameter estimates with saturation in d with dm = Simulation 3.2: Plot of error variables, ex and eg and control variables F and d3 without modification in estimates ................... 52 Simulation 3.2: Plot of error variables, ex and eg and control variables F and (IS with modification in estimates ..................... 53 Simulation 3.2: Plot of parameter estimates without modification ...... 54 Simulation 3.2: Plot of modification in parameter estimates ........ 54 Simulation 3.3: Plot of error variables ex and egi, and control inputs, F and d with E = 0.1 ................................. 61 Simulation 3.3: Plot of estimates of unknown parameters with e = 0.1 . . . 62 Simulation 3.4: Plot of error variables ex and em, and control inputs, F and d; with e = 1.0 ................................ 64 Simulation 3.4: Plot of estimates of unknown parameters with 8 = 1.0 . . . 65 Dynamics of d, with mechanical saturation ................. 66 Dynamics of d,- with software saturation ................... 67 viii 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 Simulation 4.1: Plot of error variables ex and eg, and control inputs, F and ds, and d; ................................... 72 Simulation 4.1: Plot of parameter estimates ................. 73 Simulation 4.2: Plots of ex, egi,,F, d3, dg, Bx and Bo ............ 79 Simulation 4.2: Plot of parameter estimates ................. 8O Dynamics of the Prismatic Joint ....................... 82 Standard Position Control ........................... 82 Simulation 4.3: Plot of error variables ex and eg, and control inputs, F, (13 and d; ..................................... 88 Simulation 4.3: Plot of parameter estimates ................. 89 Simulation 4.4: Plot of error variables, ex, e2 and eg and control variables F and d; without modification in estimates .................. 92 Simulation 4.4: Plot of error variables, ex, e2 and eg and control variables F and d; with modification in estimates ................... 93 Simulation 4.4: Plot of parameter estimates without modification ...... 94 Simulation 4.4: Plot of modification in parameter estimates ........ 94 Simulation 4.5: Plot of error variables ex and em, and control inputs, F, d; and d3 ..................................... 98 Simulation 4.5: Plot of parameter estimates ................. 99 Varying the angle of push, B, to achieve greater turning moment ....... 102 Simulation 5.1: Plot of error variables ex and eg ............... 104 Simulation 5.1: Plot of parameter estimates ................. 105 Simulation 5.1: Plot of F, d3, d; and B ................... 105 Simulation 5.2: Plot of error variables ex and eg .............. 109 Simulation 5.2: Plot of control inputs, F, ds, d; and B ............ 110 Standard closed loop position control of angle B .............. 110 Simulation 5.3: Plot of error variables ex and e9 ............... 116 ix 5.9 Simulation 5.3: 5.10 Simulation 5.3: 5.11 Plot ofB vs B5 . 5.12 Simulation 5.4: 5.13 Simulation 5.4: 5.14 Simulation 5.5: Plot of parameter estimates ................. 116 Plot of control inputs, F, d;, and B’ ............. 117 ................................ l 18 Plot of error variables ex and eg and parameter estimates . 127 Plots of F, d5, d;, B and B’ ................. 128 Plot of error variables, ex and co and estimates without modification in estimates ........................... 130 5.15 Simulation 5.5: Plot of error variables, ex and eg and estimates with modi- fication in estimates .............................. 131 5.16 Simulation 5.5: Plot of control variables F and d; and B; without modification 131 5.17 Simulation 5.5: Plot of control variables F and d; and B; with modification 5.18 Simulation 5.6: 5.19 Simulation 5.6: 5.20 Simulation 5.6: 6.1 Simulation 6.1: 6.2 Simulation 6.1: 6.3 Simulation 6.1: 6.4 Simulation 6.2: 6.5 Simulation 6.2: 6.6 Simulation 6.2: 6.7 Simulation 6.3: in parameter estimates ............................ 132 Plot of error variables ex and eg ............... 136 Plot of parameter estimates ................. 136 Plot of control inputs, F, B’ and actuator dynamics (1’, . . . 137 Plot of error variables ex and eg ............... 146 Plot of parameter estimates ................. 147 Plot of control inputs, dg, and B; .............. 147 Plot of error variables ex, e9, F, and F3 ........... 156 Plot of parameter estimates ................. 157 Plot of d, d;, B and B; .................... 158 Plots of ex, ea, F, Fg’, d; and B; ................ 160 Plot of estimates ....................... 161 6.8 Simulation 6.3: 6.9 Simulation 6.4: and B; ..... 6.10 Simulation 6.4: Plot of error variables ex and eg and control inputs Fs’, d; ................................ 164 Plot of parameter estimates ................. 165 7.1 7.2 7.3 7.4 7.5 7.6 7.7 8.1 8.2 8.3 8.4 Experimental setup .............................. 167 Trajectories .................................. 169 Estimates .......................... - ......... 170 Control Inputs ................................. 170 Trajectories .................................. 171 Estimates ................................... 171 Control Inputs ................................. 172 Extension to other platforms .......................... 174 Path taken in the absence of actuator constraints. .............. 176 Path taken in the presence of actuator constraints. .............. 176 Path taken when using the modifications presented in the thesis. ...... 176 CHAPTER 1 Introduction 1.1 Background Modern medicine and technology have increased the average human life expectancy. Con- sequently it is also the responsibility of technology, to aid aging humans lead a quality life as they increase in number. Facts indicate that over the next 10 years, the number of elderly aged 85 and over will grow by 38 percent [21] in the USA. The number of seniors requiring healthcare support will also double. There are already 400,000 unfilled nursing positions and this will more than double by the end of the decade. With few people to look after the elderly, the quality of life of the elderly will deteriorate. Clearly technological solutions are required to alleviate this problem. The quality of life problems is most relevant in institutions like Long Term Care (LTC) facilities. Almost 50 percent of the elderly population in LTC facilities are wheelchair bound due to cognitive and/or physical impairments [19]. These residents require complete assistance with their Activities for Daily Living (ADL’s), like eating bathing etc.. and LTC facilities are finding it increasingly difficult to provide quality care. A significant portion of nurse time is used to provide assistance in ADL’s [20], and consequently, residents have to wait to be transported to the dining room, to the activities center, to the room of another resident for a social interaction. For most of the residents, who are largely confined to the perimeters of LTC facilities, a daily recreational wheelchair ride is highly desirable and also very important for their emotional well-being. It allows them to see the world outside the confines of their room and as such can avoid clinical depression and other serious mental health problems. A wheelchair ride, however, requires a LTC nurse or staff member to completely devote his/her time to the resident; this is not only an expensive proposition but it is also deemed as a “non-value” added task. With shortage in nursing staff, it is felt that “value-added” tasks, such as feeding or supervision during an activity, would be a better usage of nurse time. Considering the situation, we feel that robots with the capability of pushing and steering wheelchairs within the bounds of LTC facilities will be a greatly helpful and responsible application of Robotics. Several LTC facilities have adopted robotic systems. For example, the RP-6 [23], de- veloped by the Intouch Health, Inc. provides telepresence capabilities to caregivers such that they can visit their patients more frequently. The HelpMate [24], developed together by Helpmate Robotics, Inc. and NASA can help patients remember daily chores. The Nursebot [25], developed together by researchers at Carnegie Mellon and University of Pittsburgh, assists the elderly suffering from chronic disorders in their every day life. Paro [26] is a robotic seal that has been documented to improve the mental health of the elderly. There are several other similar robots with the purpose of assisting the elderly and the dis- abled [36] but none of these robots have the capability to push wheelchair-bound people. It is envisioned that humanoid robots will provide assistance to residents in LTC facilities and to this end there have been efforts to enable such robots with the capability of pushing wheelchairs [31]. The main goal of this research work is to design a synergistic controller/ arm duo for a holonomic mobile robot so that it can be used for applications such as pushing wheelchairs and other wheeled platforms without human assistance. In other words, the robot should be able to push the wheelchair, using an arm, such that the wheelchair tracks a given trajectory asymptotically. The term “synergistic” irnplies that the controller and the arm will be de- signed in such a way that they optimally complement and enhance the effectiveness of each other. While mobile robots with manipulators have been studied extensively in the litera- ture with the objective of motion control of both the base and the arm, most of these robots are mainly composed of off the shelf industrial manipulators mounted on mobile bases. There have been no attempts to optimize the manipulators, their degrees of freedom and the control to suit applications such as pushing wheelchairs effectively. Some of the earlier work has focussed on dual arm robots and the challenges associated with their cooperation and control [1], [2]. While a dual arm may be anthropomorphic, it increases cost and adds unnecessary weight. A number of researchers have considered single-arm robots but their main focus has been utilization of redundancy for avoiding obstacles and joint limits [3], [4]. In addition to maneuvering wheelchairs, it would also be useful to have the ability to perform ancillary tasks such as picking up objects opening doors and pushing elevator buttons. These functionalities can be found individually in several developmental systems which can be incorporated into our design. We can additionally consider tele-operation of such a robotic system using a Haptic device. A haptic device will help the operator, realize the forces on the arm as it interacts with the environment such as pushing wheelchairs, or opening a door. Tele-presence using the RP-6 [23] is already in commercial use is several LTC facilities. This will be taken to the next level by allowing family members transport wheelchair bound loved ones in LTC facilities from a remote location. 1.2 Preliminary Challenge 1: Design of a Robotic Arm There are several challenges to developing a robotic system discussed in the previous sec- tion. For a better understanding we classify the problems faced into preliminary challenges and extended challenges. For the task of pushing and steering a wheelchair, one of the preliminary challenges is the design of an arm itself. Although simple devices can be used to push and steer wheelchairs, an arm is proposed since it can be used to perform ancillary tasks like opening and closing doors, pressing elevator buttons, picking up objects etc., for greater access and utility. From a human point of view, pushing and steering wheelchairs with a single arm is a formidable task, let alone for a robot. Nonetheless, we propose to use a single arm since 0 A dual arm system will make the robot top-heavy. This means that the center of gravity of the robot will be raised, which is unacceptable since it will be prone to toppling. o The above issue will have to be addressed by suitable increase in the base dimensions and weight, a bigger power supply to propel the increased weight, a more rugged platform, etc. This will make the robot heavier than the weight of the additional arm. 0 A second arm will increase the cost of the robot substantially and will seriously reduce commercial viability. Using a single arm has its own complications with regards to the control problem but this is a price that we will have to pay for a significant reduction in the hardware, cost and overall system complexity. In the next chapter we will present one candidate design for the purpose of illustrating the basic idea of pushing and steering a wheelchair with a single arm. 1.3 Preliminary Challenge H: Adaptive Estimation Another preliminary challenge is the lack of information in regards to the model of the wheelchair and the occupant. Since we assume that we do not have prior information on the mass of the person seated on the wheelchair, or the surface characteristics of the floor, it is not possible to obtain a model of the wheelchair and its occupant. An obvious work around this issue is to opt for an adaptive control wherein the parameters like the mass, moment of inertia and the surface friction, as the wheelchair traverses the floor, are estimated in real time. Some research has been done on pushing objects by robotic means employing real time estimation of parameters. Yoshikawa [27] developed a method for __ u -.-.__I pushing an object along a specified trajectory using a manipulator. The effects of friction were modeled but inertial effects were neglected. The inertial effects were considered by Yu, et a1. [28], where they proposed a method to identify the mass and inertia of an object being pushed with robotic fingers. Model identification while pushing a nonholonomic cart has been proposed by Xi [29]. However, in their paper, they do not consider friction or any wheel resistance. A brute force approach to pushing, without knowledge of the moment created by the difference in reactions at the right and left wheels, could generate substantial torque on the robot arm. Lynch [30] conducted elaborate experiments to identify friction of a pushed object but this approach is more suitable for offline estimation. Since there is no solution for direct application in this case, adaptive estimation can be considered a preliminary challenge. 1.4 Main Challenges A major part of this thesis will deal with what are called extended challenges. The ex- tended challenges boil down to saturation and dynamics of robotic actuators which will provide the required forces and moment to steer the wheelchair. When the actuators on the robot reach their maximum limit, the control inputs for the wheelchair will saturate. Similarly, the dynamics of the actuators will affect the motion of the wheelchair unless it is include in the control system model. Thus we will have to deal with input saturation and dynamics, while employing adaptive control. A condition wherein a complete loss of control occurs will also be addressed. These issues are in part a consequence of the single arm design choice. In the beginning, while addressing the preliminary challenges several simplifying assumptions will be made. We will ignore the saturation and the dynamics of the actuators to obtain a basic controller. To make the controller practically feasible, we will eliminate the assumptions one after the other in the consecutive chapters and show asymptotic tracking of a trajectory by the wheelchair even in the presence of these control constraints provided the trajectory is reasonable and certain conditions are satisfied. The requirement for a reasonable trajectory is justified due to the fact that even for known plants with actuator saturation, asymptotic tracking is not possible [5]. Actuator saturation is not a new phenomenon, however it is not a simple issue and numerous researchers have tried to show some kind of well behaved nature of the system under such constraints [6—12]. Most of these papers impose strict limits on the pemrissible trajectory at any given time. This is not always possible. Further all of these papers ignore actuator dynamics which has been separately considered by other researchers [13, 14]. Both actuator dynamics and saturation have been addressed [15] but this has been accomplished by manipulating the reference trajectory to prevent saturation altogether. The work here will be presented in the context of a wheelchair-pushing holonomic robot. However it can be extended to other applications with similar conditions where actuator constraints are an issue. 1.5 Using a Holonomic Platform Although the mobile robot that will be used in this work uses a holonomic platform, the entire system comprising of the wheelchair and the robot becomes a nonholonomic system. A good review of the literature on nonholonomic control systems can be found in the arti- cle by Kolmanovsky and McClamroch [16]. As indicated therein the problems of feedback stabilization and tracking for car-like systems have been successfully resolved [17], [18]. These control algorithms apply to cars with n-trailers wherein each trailer is itself a non- holonomic system. As mentioned earlier, the mobile robot that is to be used is a holonomic robot. However the wheelchair is a nonholonomic system. Thus the combined system will have a different kinematic structure. The highly efficient control algoritluns develOped for cars with trailers [17], [18] also require frequent forward and backward motion, which will be unsuitable while pushing residents on a wheelchair. Finally most of the results in the literature are based on kinematic model of the wheeled devices. We would like to design the controllers based on the dynamic model of the wheelchair and the robot since the forces of interaction between the wheelchair and the robot will have to be sensed in order to steer the wheelchair properly. Although control based on force sensing has been proposed ear- lier [29], there have been no attempts to simplify the control problem through innovative manipulator design. 1.6 Progression of the Thesis This thesis is organized as follows. The preliminary challenges of designing the arm and the basic adaptive controller will be addressed in the second chapter. First, the equations of motion for the wheelchair will be derived based on the force interactions of the wheelchair with the floor and the robot. The forces applied by the robot will be considered as the con- trol inputs for the wheelchair in the design of the adaptive controller. The third chapter deals with saturation of the moment applied based on the design of the arm. Saturation of the moment applied by the robot implies that the control input for the wheelchair is saturated. We will provide conditions for asymptotic tracking of a trajectory by the wheelchair even in the presence of such a saturation in the input. The fourth chapter deals with bandwidth limitations of the actuator. Even if the adaptive controller for the wheelchair prescribes a moment to be applied for a turn, the robot may not be able to apply this moment instanta- neously due to limited actuator bandwidth. We will investigate this problem and provide conditions for asymptotic tracking by the wheelchair in the presence of both saturation and dynamics of the control input. The fifth chapter deals with hardware and controller modification that significantly im- proves the performance of the Synergistic arm/controller duo. The sixth chapter includes saturation and dynamics of the applied force which aids in the forward motion. It should be noted that thus far only the saturation in the applied moment was considered. The sev- enth chapter will present the experimental setup, hardware discussion and experimental results. Since the thesis deals only with the pushing and steering capability of the arm, we developed a simplified version of the arm which can be used to demonstrate the control algorithm and the functioning of the arm and the synergism between them. CHAPTER 2 Preliminary Work 2.1 Conceptual Design of the Single Am Our arm design has a single degree-of-freedom at the shoulder and three joints at the elbow, of which only two will be actuated at any given time. Unlike the human arm we will have two graspers, one at the elbow and the other at the wrist. Each grasper will have two degrees-of-freedom in addition to grasping and releasing capability. Our conceptual design is shown in Fig.2.]. Figure 2.]. Conceptual design of single arm for pushing and steering wheelchairs elbow joint to the left of the forearm center of the forearm elbow joint at the center of the forearm center Elbow joint to the right fieering to the right I) l pushing straight I steering to the left Figure 2.2. Pushing and steering achieved through elbow positioning in forearm prismatic joint A novel and unique feature of the design in Fig.2.l is its under-actuated elbow joint, which will help in reducing cost and weight. It will use two actuators to drive two rotary joints and a prismatic joint. One actuator will drive one of the two rotary joints (jointl) about an axis perpendicular to the rear arm. The other actuator will drive the other rotary joint (joint2) and the prismatic joint (joint3) in two discrete modes of under-actuation. In the first mode of underactuation, power from the actuator will be transferred entirely to rotary joint (joint2), which will result in rotation of the forearm about the axis parallel to the rear arm. This mode of operation will change when the forearm becomes perfectly horizontal (as a prelude to pushing wheelchairs) and then power from the actuator will be transferred entirely to the prismatic joint (joint3). The change in the mode of operation will be facilitated by a special mechanism inside the elbow joint. In the second mode of under-actuation, the elbow joint can essentially translate with respect to the forearm. “With the forearm attached to the wheelchair by graspers, as shown in Fig.2.2, prismatic motion of the elbow joint in the forearm enables pushing as well as steering the wheelchair. By properly positioning the elbow in the prismatic joint of the forearm and simultaneously moving itself sideways (possible because of its holonomic kinematics structure), the robot will be able to push the wheelchair along a straight line or steer it. In particular, if the elbow location moves from the center of the forearm to one side, it will result in steering action; the angle of steer can be accurately controlled based on feedback of sensory signals. By using the concept of under-actuation we will reduce the number of actuators but also enable our robot to push and steer a wheelchair with a single arm. The above discussion obviates that the two actuators at the elbow would drive the two rotary joints (jointl and joint2) in the first mode of under-actuation when the robot intends to perform ancillary tasks such as opening and closing doors, pressing elevator buttons, etc. When the robot intends to transport a resident on a wheelchair, the two actuators at the elbow would drive the rotary joint and the prismatic joint (jointl and joint3) in the second mode of under-actuation. In the first mode of under-actuation, the grasper located at the wrist will be used for all ancillary tasks but the grasper at the elbow will not be used. We do not discuss this scenario any further. The manipulator joints will be driven by servo motors and will be equipped with encoders for sensing. The servo motors and sensors are not shown in Figs.2.1 and 2.2. At the prismatic joint, the manipulator will house a force- torque sensor for sensing the forces of interaction with the wheelchair. The force/torque measurements will be used to generate feedback for wheelchair steering. 2.2 Dynamics of Wheelchair In this section we present a mathematical model of the wheelchair and the assumptions made to make the model tractable for control design. Consider the wheelchair in Fig.2.3 with the robot positioned behind the wheelchair for pushing it. The wheelchair is a two degree of freedom system. These degrees of freedom are x and 9, where x and 6 denote the instantaneous forward displacement and rotation of the wheelchair center of mass, re- spectively. Before we present our mathematical model, we state our assumptions: 10 center of Figure 2.3. Definition of coordinate system for the wheelchair and forces of interaction between robot and the wheelchair during pushing and steering Al. A2. The force applied by the robot along the direction of motion is denoted by F. This force is applied perpendicular to the forearm that grasps the wheelchair. This as- sumption can be justified by the fact that the robot platform is holonomic and it can move sideways (along the y direction in Fig.2.3.) to maintain the arm perpendicular to the line joining the wheels of the wheelchair at all times. For this preliminary work, we assume F > 0 at all times and the robot has unlimited force producing capability with infinite bandwidth. The distance between the point of application of the force, F, and the center of the forearm is denoted by d. This distance, shown in Fig.2.3, equals the distance that the prismatic joint moves away from the center so that a moment can be created on the wheel chair for the purpose of steering. At present, we assume that there can be unlimited motion in this joint and as a result d can assume very large values. It is also assumed that the actuator driving the prismatic joint has infinite bandwidth and 11 A4. A5. as a result, d can be commanded to its desired value instantaneously. . The reaction forces acting on the left and right wheels of the wheelchair are denoted by R1 and R2 respectively. It is assumed that the wheelchair is always moving for- ward and the direction of R1 and R2 are positive along the direction shown in Fig.2.3. The values of R1 and R2 will depend on the weight of the wheelchair and the per- son seated on it as well as on the coefficient of friction between the wheels and the floor. In reality, R1 and R2 will be time-varying and will depend on the velocity and direction of motion but for the sake of simplicity we assume them to be constant. Similarly, M and J, the total mass and mass moment of inertia of the wheelchair about the center of mass, are assumed to be constant. We assume that the robot and the wheelchair are moving on a flat horizontal surface and the center of gravity of the wheelchair is always located symmetrically between the wheels. The desired trajectories are assumed to be obtained from a dynamic path plan- ning algorithm that takes into account the position and orientation of the robot and wheelchair. In the last chapter the path planning algorithm will be discussed at length. Under the above assumptions, the dynamics of the wheelchair can be described by the equations Mi = F—(Rl-l-Rz) (2.1) Jé = —Fd-(R2—R1)w/2 (2.2) where w is the width of the rear wheelbase shown in Fig.2.3. Let us denote the total resistance to forward motion as R. Thus R = R1+R2 (2.3) 12 Since R1 and R2 may have different magnitudes, they may generate a turning moment on the wheelchair. If we denote this turning moment as T, T = (R2 -R1)w/2 (2.4) Using Eqs.(2.3) and (2.4), Eqs.(2.1) and (2.2) can be rewritten as Mir” = F—R (2.5) 16 —Fd — T (2.6) In our control problem statement, discussed next, we treat d and F as our control variables. 2.3 Problem Statement Our goal is to design a controller for the robot such that it can push and steer a wheelchair along a desired trajectory in x and 9 coordinates, namely, xd (t) and 9d (t). For the purpose of asymptotic tracking, we first define the error variables ex = (Id-x) (2.7) 89 = (Gd—9) (2.8) and the sliding surfaces (Khalil, 1996), [34], i3}: + 11 ex (2.9) e1 82 8'9 +2.2e9 (2.10) where 21 and 12 are positive constants. The sliding surfaces have the property that all trajectories on these surfaces asymptotically converge to the origin, i.e., (ex,éx) = (0,0) 3119(39aé9)= (0:0) 13 It was stated in the assumption A3 that M, J, R and T are constants. However, these values are unknown and therefore we use estimated values of these parameters, namely, M, f, R and T, in our control design. Our goal is to correctly estimate these parameters concurrently with asymptotic tracking of the trajectories. The unknown parameters, their estimated values, and error in the estimates are defined as follows . ¢=(¢—«i) (2.11) flax: WW>SS> I We now present our control design with the help of the following theorem. 2.3.1 Main Result Theorem 2.1: Consider the dynamical system described by Eqs.(2.5) and (2.6). For this system, the error variables, el and e2, and the parameter estimation error, 6, asymptotically converge to zero for the following choice of control inputs F = an+11Méx+R+K1el (2.12) 1 .. - d = —;;(f9d+3rzfe'g+T+Kzez) (2.13) and the estimation law (fd‘I'lléxkl $=-P“Q, Qé (9"+:Qe9)e2 (2.14) l 32 where K1 and K2 are positive constants and P is any positive definite matrix. Proof: Consider the Lyapunov function candidate 1 1 1 - - v = Em? + 51% + §¢TP¢ (2.15) 14 which is positive everywhere except at the origin (e1, e2, 43) = (0,0,0), where it is zero. By differentiating V with respect to time, we get v = Me] e'1 +Je2e'2 + 671%?) (2.16) We obtain the derivatives (3'1 and e‘z from Eqs.(2.9) and (2.10) as follows e'l = e} + A] e}, (2.17) e'2 = e’b + AQe'g (2.18) By multiplying Eqs.(3.l7) and (3.18) with M and J, respectively, we get Mél = Mx"d — (F —R) +M21éx (2.19) Jéz 19;, — (—Fd — T) +12% ea (2.20) Substituting for F and d in Eqs.(2.19) and (2.20) we get Me'l = Mx}, —(1l‘4x;1+111f4e'x+R+K1e1—R)+Milléx (it'd-I’ll éx) (M-M) +(R—R)—K1 el = Axci'x—Klel (2.21) where Axé [163+21e‘x 1 ] (2.22) .. A? ¢x '3 [ R ] . (2-23) and 15 Jéz = Jég— (few/bier, +T+K2e2-T)+J/lgé9 (éd+42ée) (J-j) + (T-T) -K262 = 49479 -K292 where A9é[9';1+k2e'9 1] -A j ¢9=[7-] Substituting Eqs.(2.21) and (2.24) in Eq.(3.16), we get V = 9743 —K1e% —K2e§ + 6"?4‘5 Substitution of Eq.(2.14) yields, v = —K1e%—K2e§ g 0 (2.24) (2.25) (2.26) (2.27) (2.28) Since V is negative semi-definite, the equilibrium point (e1,e2,4~>) = (0,0,0) is stable. Moreover, since V is uniformly continuous we can use Barbalat’s lemma (Khalil, 1996), [34], to deduce e1,e2—+0 as t—roo (2.29) From Eqs.(3.l7) and (3.18) we know that 5?] and e'z are uniformly continuous. Therefore, using Barbalat’s lemma (Khalil, 1996), [34], we can claim é1,é2——>0 as t-—t°° Substituting Eqs.(2.29) and (2.30) into Eqs.(2.21) and (2.24), we get 16 (2.30) (55d + a'1‘5’x) wTifi = o, w e (94+1’laé9) (2.31) 1 By ensuring that the desired trajectories xd and 9d are sufficiently rich, W can be made Persistently Exciting (P.E.) (Astrom and \Vrttenmark, 1995), i.e. t+8 (12 I 2 t W(r)WT(r) dr 2 all (2.32) where a1, or; and 6 are positive constants. This results in 43 —> 0 as t —» 00, i.e., the param- eters defined in Eq.(2.11) will be correctly estimated. Corollary 2.1: For the dynamical system described by Eqs.(2.5) and (2.6), the wheelchair trajectories, (rcpt, 6, 9), asymptotically track the desired trajectories (xd,xd, 9d, 9d) for the choice of control inputs Eq.(2.12) and (2.13) and the estimation law Eq.(2.14). Proof: From the proof of Theorem 2.1 we have e1,e2 ——> 0 as t —> 00. This implies ex, éx, e9 , ée ——+ 0 as t —> 00, which in turn implies that the wheelchair will asymptotically track the desired trajectories. 2.3.2 Simulations We present simulation results in this section to demonstrate the efficacy of the control system. Three sets of simulation results are presented. The first set demonstrates basic trajectory tracking and accurate estimation of the parameters for sufficiently rich desired trajectories. This simulation strictly adheres to the conditions and results of Theorem 2.1. The second set of simulations illustrate a practical situation wherein the desired trajectories, xd and 9d, have been defined to replicate a scenario where a wheelchair bound person is transported along a hallway of a long term care facility. The third set of simulations show the adaptability of the algorithm to changes in the parameters, although Theorem 2.1 does not claim this ability. l7 SIMULATION 2.1 For this simulation, the desired trajectories were chosen as it'd l + sin(0.02t) (2.33) 0,, = sin(0.2t) (2.34) along with initial conditions xd = rid = 9d = 9d = 0. These trajectories are sufficiently rich such that W in Eq.(2.31) is persistently exciting. Also, the trajectories ensure that the force F will always be positive. The mass and mass moment of inertia of the combined wheelchair and occupant were chosen to be M = 60 kg, J = 2.25 1(ng (2.35) We additionally assumed R = 30 N, T = 5 Nm (2.36) The initial estimates of the parameters in Eq.(2.11) were assumed to be 43T(0) = [ 40.0 1.00 10.0 0.00 ] (2.37) in SI units. The controller gains and the sliding surface constants were chosen as K1 = 15, K2 = 15, 21 = 50 and M = 50. The simulation results are shown in Figs.2.4 and 2.5 for wheelchair initial conditions x = O and 9 = 0. It is clear from the first two plots in Fig.2.4 that the errors ex and eg converge to zero. From Fig.2.5, the estimates are also seen to converge to their original values. The actual values of the estimates are indicated with the horizontal dashed lines. The choice of the controller gains K1, K2, 2.1 and 2,2, determine the rate of convergence of the parameters and the errors. Higher values of K1, K2, 2.1 and 22 result in faster con- vergence but slower adaptation of the parameters and vice versa. This is observed from Figs.2.6, 2.7, 2.8 and 2.9. The results in Figs.2.6 and 2.7 correspond to lower values of K1, K2, it] and 22, whereas the results in Figs.2.8 and 2.9 correspond to higher values of these parameters. 18 ex ODHU OBS 60 «kg) u. 120 - 80 -0.04 W -0.08 1 1 0 10 20 30 40 50 60 time (sec) F(N) 1 1 l 1 d(m) Figure 2.4. Simulation 2.1: Plot of error variables ex and eg, and control inputs, F and d, with controller parameters K1 = 15, K2 = 15, 21 = 50, 2.2 = 50 19 (,0 _____________ ___ ___._ N r1111 I l 1111 .—————_—————-—_ ___— ? (Nm) 6 4 2 - . o 1 . 1 . 0 10 20 30 4O 50 60 time (sec) Figure 2.5. Simulation 2.1: Plot of estimates of unknown parameters with controller pa- rameters K1 =15, K2 =15, 21 = 50,11Q = 50 20 ex GURU 8 - l l I l I _‘ r 'I A 6 . q 3 _. e 4 - s 2 j 0 0 10 20 30 40 50 60 thne(mx» Figure 2.6. Simulation 2.1: Plot of errors with controller parameters K1 = 10, K2 = 10,21=10,2Q =10 21 70 w I 1 i . £060 ————————————— __ ______ _ (250' .. 40 1 1 1 l 1 ('2? ' r ' I I E3: « on ___ __________________________ 3 a2) - (HIP 1 1 L L 1 _ 230: """""""""""""""""""" . V20r - <11. . _ 10 1 J l 1 1 A6____ r I , , , E4» __________ “‘— r E <1--2F - 0O 10 20 30 40 50 60 time(sec) Figure 2.7. Simulation 2.1: Plot of estimates with controller parameters K1 = 10, K; = 10, 21 =10, )2 =10 22 15 l l I I I 10" ‘ ex (mm) 1.2 ~ 0.8 - 0.4 * e9 (deg) l 1 l 1 J l l l 1 l l l O 10 20 30 40 50 time (sec) 8 Figure 2.8. Simulation 2.1: Plot of errors with controller parameters K1 = 50, K2 = 50, A] = 50, 2,2 = 50 23 I I I I (N) 8 0 1 1 r 0 10 20 3O 4O 50 60 time (see) Figure 2.9. Simulation 2.1: Plot of estimates with controller parameters K1 = 50, K2 = 50, A] = 50, 2,2 = 50 SIMULATION 2.2 For this simulation, the initial conditions, parameter values and initial parameter estimates were chosen to be the same as in simulation 2.1. The controller parameters were chosen to be K1 = 10, K2 = 10, A] = 10 and A; = 10. The desired trajectories were chosen as 24 x. _ 1.0m/sec2 O$t_<_l secs ‘1 0.0 m/sec2 t>1 secs r (2.38) 0.0 rads/sec2 O S t < 5 secs 0.5 rads/sec2 5 S t < 6 secs 0.0 rads/se02 6 g t < 10 secs —0.5 r'ads/sec2 10 S t < 11 secs Q, = t 0.0 rads/sec2 11 _<_ t < 35 secs (2.39) —0.5 rads/sec2 35 S t < 36 secs 0.0 rads/sec2 36 S t < 40 secs 0.5 reds/sec2 40 S t < 41 secs 0.0 rads/sec2 t2 41 secs 25 I I I I 20L _ 15. - 10» 3 l l -15 -10 -5 X 0 5 10 Figure 2.10. Simulation 2.2: Plot of desired trajectory In global coordinates, the desired trajectory is defined by Eqs.(2.38) and (2.39) and is shown in Fig.2.10. The wheelchair is required to accelerate at 1.0 m/sec2 along the path for 0 S t < 1 sees and then move with constant velocity of 1.0 m / sec thereafter. Over the interval 5 S t < 6 secs, the angular acceleration is set to 0.5 rad/sec2 and this results in a 25 change of heading to approx. 1430 as shown in Fig.2.10. Over the time interval 35 S t < 36 secs, the desired angular acceleration is set to -O.5 rad/sec2 and this resets the heading of the wheelchair to 0". This is clear from the Fig.2.10. In agreement with the assumption Al, the trajectory in Fig.2.10 requires F > O for the entire duration of time. This can be explained as follows: The continual forward motion along the trajectory necessitates R1 and R2 to be always positive. With this resistance always present, F has to be positive for a constant velocity motion. A 10 1 I r I 1 3 -e 5 _ V 8 0 A VH1, _5 1 I 1 1 l 1m I I I I T 5? 60 + - E: I. _ 20 1 1 1 1 1 O I I I I I "-01 - ~ 5 . nv n - U -0.2 r U r 0 10 20 30 4O 50 60 finn26wc) Figure 2.11. Simulation 2.2: Plot of error variables ex and eg, and control inputs F and d The simulation results in Fig.2.11 show that the errors converge asymptotically to zero. For comparison, the desired and actual trajectories in global coordinates have been plotted together in Fig.2.l3 using solid and dashed lines, respectively. The error during the initial stages can be in part attributed to the fact that T is nonzero whereas T = 0. This implies that an external moment is applied on the wheelchair and it is initially not compensated. The prismatic joint location, d shown in Fig.2.1l, generates the appropriate moment on the 26 11.4.. 4L5 r r i I . @041- .. <2 405 40 1 1 1 1 1 @1-4 1 1 r r r E - $1.2 ,____/ (H1 1 1 1 1 1 _ A30_.____L____T r T r 520: i «z _ . 10 1 m 1 1 1 i? ‘1 » _ :5 — _ 110» _ 5 1 15 10 5 X 0 5 10 r— v- .— Figure 2.13. Simulation 2.2: Overlapping plot of desired and actual trajectories wheelchair. From Fig.2.ll it can be seen that force, F, becomes almost constant and is approximately equal to the value of R during the constant velocity period as expected. It is clear from Fig.2.12 that without a sufficiently rich signal in rd and ed, M and f do not converge to the actual values of M and J, as given in Eq.(2.35). The M value rises towards the actual value during the interval when there is some acceleration (0 5 t < 1 sees) and then falls back. Similarly, it can be seen that in the presence of angular acceleration (5 S t < 6, 35 g t < 36 and 40 S t < 41 secs), f approaches the value of J. R and T converge to their original values but this cannot be guaranteed to work in the absence of persistency of excitation. SIMULATION 2.3 In conformity with the assumptions made in Section 2.2 and the results in Theorem 2.1, we assumed the system pararnters to be constant in simulations 2.1 and 2.2. In this simulation, 28 we investigate the performance of the closed-loop system when the system parameters undergo step changes in their values. The control variables are chosen in accordance with Eqs.(2.12) and (2.13). The desired trajectories and initial conditions were chosen to be same as in Simulation 2.1. The controller parameters are chosen as K1 = 15, K2 = 15, A] = 50 and 2.2 = 50. The system parameter values are chosen as follows. M = 60Kg (2.40) 2.251(ng 0_60secs ( ) a60____'___:___[ _____ r r r 1 1 {4.50: I <2 - - 4O 1 l l 1 l 1 l l 1 (<1; 3P_—L—_l_—:— - __I———I—_—l—-—l——_I_A- g“ 25 ---------------------------- : 0 sgn(x) = 0.0 x = 0 (2.46) —l.O x < 0 We now present the main result which is similar to Theorem 2.1 in Section 2.3. Theorem 2.2: Consider the dynamical system described by Eqs.(2.44) and (2.45). For this system, the error variables, el and e2, and the parameter estimation error, if, asymptotically converge to zero for the following choice of control inputs F = ma + 21 Me}; +ngn(x) + K1 e1 (2.47) d = "%~'(de + Mfeg -I- ngno't) +K2 62) (2.48) and the estimation law (xd + 1] éx)el «ii = —P‘1 Q, Q 9- (9" Magi)” (2.49) e1 sgn(x) 82 WW?) where K1 and K2 are positive constants and P is any positive definite matrix. Proof: We use the Lyapunov funtion candidate V used in the proof of Theorem 2.1, given in Eq.(2.15). The derivative of V is equal to V = Me] 6] +Je2e'2 + $TP$ (2.50) Using Eqs.(2.9) and (2.10) and Eqs.(2.44) and (2.45), the first two terms on the right hand side of Eq.(2.50) can be written as follows 32 Mél = ng—[F—ngn(x)]+Mlléx (2.51) Jéz 10;, — [—Fd — ngn(x)] +JAQ ea (2.52) Substituting for F and d from Eqs.(2.47) and (2.48) in Eqs.(2.51) and (2.52) we get Me'l = Mx'g—(ng+/I.1Méx+ngn(x)+Kle1—ngn(x))+Mlléx (564+Al éx) (M—M) + (R —R) sgn(x) - K1 e1 mi—MQ on) where Ax is redefined as, Ax é [ x}, +21e'x sgn(x) ] (2.54) and, 19;, — (is, which +ngn(x) +K2e2 — T) +JAQé9 (éd+42ée)(J-j) + (T-T)Sgn(i) -K2¢’2 = 49459 — Kzez (2.55) Jéz where A9 is defined as, A9 2 [ 9;, +51er sgn(x) ] (2.56) Substituting Eqs.(2.53) and (2.55) in Eq.(2.50), we get V = Q76 — K] e? — Kzeg + 43TH; (2.57) Substitution of Eq.(2.49) yields, v = —K1e%— Kzeg g 0 (2.58) 33 Following the footsteps of the proof of Theorem 2.1 in Section 2.3, we can show that the trajectory tracking errors .9] and e2 and parameter tracking error, ()7, asymptotically converge to zero as t '—> 00. 2.4.2 Simulations In this section we present simulation results to compare performance of the closed—loop system based on the control designs in Theorem 2.1 and 2.2. The first set of simulations is based on the controller in Theorem 2.1 and the second set is based on the controller in Theorem 2.2. Both simulations use the same desired trajectory, initial conditions, system parameters, and controller gains. For simplicity, the desired trajectory involves forward and backward motion along a straight line. This ensures that the required turning moment is uniformly zero and therefore d is uniformly zero and there will be no problem if the pushing force equals zero. If the required turning moment is nonzero but the pushing force is zero, d will assume a very large value. We wish to avoid this situation here. It will be addressed in the next chapter. 60 . r l l I 50- - E40- — N3o. _ 20- - 10- . o 1 1 1 1 0 20 40 60 80 100 120 140 time(secs) Figure 2.16. Simulation 2.4: Plot of x with time SIMULATION 2.4 For this simulation, the mass and mass moment of inertia of the combined wheelchair and occupant were assumed to be 34 < < M (Kg) R.(bD ex,(nun) F(N) 48 . - 46 - - 44.. _ 42 - - 4 4O 1 1 1 1 1 g 100 120 140 tuneemcs) Figure 2.17. Simulation 2.4: Plot of parameter estimates 2m I I T I I I 0 K ‘ i- -< -200 _ _ ‘4“) 1 1 1 1 1 1 1% L I I I I I I 0 ~ _ _ [T _ -100— a _2 1 l 1 l l 1 0 20 40 60 80 100 120 140 time (sec) Figure 2.18. Simulation 2.4: Plot of error variable ex and force F 35 M = 60 kg, J = 2.25 1(ng (2.59) The reaction force and reaction moment were assumed to be R=30 N, T=5Nm (2.60) The initial estimates of the parameters in Eq.(2.11) were assumed to be 437(0) = [ 40.0 1.00 10.0 0.00 ] (2.61) in SI units. The controller gains and the sliding surface constants were chosen as K1 = 15, K2 = 15, 21 = 50 and 2,2 = 50. The desired trajectories were chosen as 1.0m/sec2 OSt<1 secs x, _ 0.0 m/sec2 1$t< 60 secs (262) d — —2.0 m/sec2 60£t<61 secs ' 0.0 m/scc2 61 St 3 120 secs 6d 0.0 rads/sec2 t Z 0 secs (2-63) with initial conditions xd = rd = 9d = 9d = 0. The desired trajectory is along a straight line, moving forward first and then moving backwards. Figure 2.16 shows the x position of the wheelchair with respect to time. Figure 2.17 shows the estimates of M and R. It is seen that R is being estimated although M is not. This is similar to the case in Simulation 2.2 where there was not enough persistency of excitation. It can be seen that the value of R changes from +30.0 N to -30.0 N as the wheelchair starts moving in the backward direction. This is because the direction of R is reversed when the wheelchair moves in the backward direction. Since the wheelchair moves with constant velocity for a majority of the time interval, the force applied on the wheelchair, F, converges to the value of R. This can be verified from Fig.2.21. 36 30’ 20“ 10' x (m) l I 1 1 1 41.8 41.4 < M (Kg) 40.6 40.2- 35 30 25 20 15 10 R (N) 20 40 60 80 100 120 time(secs) Figure 2.19. Simulation 2.5: Plot of x with time 140 l L 1 0 20 40 60 80 100 120 time (secs) Figure 2.20. Simulation 2.5: Plot of parameter estimates 37 140 ex (mm) ‘6 1 M o o r 1 1 _1m 1 1 1 1 1 1 100 r r 1 r 1 r 50 {I J g 0- J a, -50 - J -100. - -150- - _2m 1 L 1 1 1 1 0 20 40 60 80 100 120 140 time (see) Figure 2.21. Simulation 2.5: Plot of error variable ex and force F SIMULATION 2.5 The conditions and trajectories for this simulation have been chosen to be identical to Sim- ulation 2.4. The control and estimation laws from Theorem 2.2, described by Eqs.(2.47) and (2.48), were used for this simulation. Since the direction of R was explicitly taken into account in the dynamic model of the wheelchair in Eqs.(2.44) and (2.45) and the control and estimation laws in Eqs.(2.47), (2.48) and (2.49), R does not require re-estimation upon change in direction of the wheelchair. Consequently, the trajectory tracking errors are con- siderably smaller for Simulation 2.5 in comparison to Simulation 2.4. This can be observed from Figs.2.20 and 2.21. It is reasonable to claim that the controller in Theorem 2.2 results in improved performance and less errors in comparison with the controller in Theorem 2.1. 38 CHAPTER 3 Saturation of Turning Moment 3.1 Introduction Several assumptions were made in Chapter 2 and we begin this chapter by revisiting one of them, namely, assumption A2. A2 The distance between the point of application of the force, F, and the center of the forearm is denoted by d. This distance, shown in Fig.2.3, equals the distance that the prismatic joint moves away from the center so that a moment can be created on the wheel chair for the purpose of steering. At present, we assume that there can be unlimited motion in this joint and as a result d can assume any value. It is also assumed that the actuator driving the prismatic joint has infinite bandwidth and d can be commanded to its desired value instantaneously. In A2 it is assumed that the distance (I moved by the prismatic joint can be unlimited. While this can be used to handle situations where the required turning moment is large but the required pushing force is small, it is not practical. In reality, the maximum value of d will be limited by half of the length of the forearm, shown in Fig.2.]. We choose to denote the physical limit of d as ds = sat(d, dm) (3.1) where dm denotes the maximum absolute value of the moment arm. Figure 3.1 shows a plot of d,- with respect to d. A saturation in the value of d implies that the moment applied 39 by the robot on to the wheelchair will be saturated. 11 (13 am.--— -dm o. B Q]? :____ -dm Figure 3.1. Plot of d,- with respect to d We begin our investigation by considering the force and moment required by the adap- tive algorithm for asymptotic trajectory tracking, discussed in the previous chapter, and the actual force and moment that is applied by the robot. Let us denote the actual force applied by the robot as F. Then the actual moment applied by the robot, measured in the positive 2 direction, is equal to —F ds, where d, is measured positive in the y direction. From our results in Chapter 2 we denote the force and moment required for asymptotic stability, in the absence of saturation in d, as F, and M,, respectively. Then, from Eqs.(2.12) and (2.13) we have F, = ng+tlrirey +R+K1 e1 (3.2) Mr=-F,-d = féd+aqfeg+T+K2e2 (3.3) The dynamics of the wheelchair, when d can saturate, can be described as follows M)? = F—R (3.4) 10' = —Fds—T (3.5) 40 511m: ___; Note that the above equations are very similar to Eqs.(2.5) and (2.6) in Chapter 2. Now, subject to saturation in d, the control problem refers to redesign of the inputs F and d for asymptotic tracking of the desired trajectories in the x and 9 coordinates. 3.2 The Control Problem 3.2.1 Main Result Due to saturation of d, the moment applied on the wheelchair will be equal to —F d3, where F is the force applied on the wheelchair. This may not equal the desired moment, Mr, and therefore we introduce Be, the ratio of the saturated moment to the required moment —-F d3 30 = Mr (36) The negative sign in the expression for Ba accounts for the fact that a positive force F (along the x direction in Fig.2.3) and a positive displacement ds (along the y direction in the Fig.2.3) results in a moment in the negative z direction whereas M, is positive in the positive 2 direction. From Eq.(3.6), we can express the applied moment as —Fds = 39M, = 89 f0}, +13,9 Mfeb +39 T +39 Kzez (3.7) Since only a ratio of the estimated values are used in the applied moment, we redefine the estimation errors in Eqs.2.23 and 2.26 as follows: .. - M . M ¢x=(¢x_¢X)r ¢x:[R:lr ¢X=I:R] (38) Ve=(¢e-Beli39), ¢e=[;], $e=[;] (3.9) The definition of the errors el and e2 remain unchanged from that given by Eqs.(2.9) and (2.10). We are now ready to present the main result of this chapter. 41 Theorem 3.1: Consider the dynamical system described by Eqs.(3.4) and (3.5). For this system, the equilibrium point (e1, e2, 6;, $9) = (0,0, 0,0) is asymptotically stable when 39 is greater than zero for the following choice of control laws F = F, (3.10) d3 = sat(d, dm) (3.11) d = —i(Mr) ' (3.12) r and estimation laws «5x: —P“Afe1, (3.13) (is = -P"A€e2 (3.14) where F, and M, are defined by Eqs.(3.2) and (3.3), respectively and dm 6 (0, d]. Proof: Consider the Lyapunov function candidate 1 1 1.. .. 1~ - V1 = 5m? + 51.2% + 503%,, + 503134)], (3.15) which is positive everywhere except at the origin (e1,e2, 6x359) = (0,0, 0, 0), where it is zero. Although the expression of V1 is similar to that of V in Eq.(2.15), it should be noted that 439 in the expression of V1 is different from that in V. By differentiating V1 with respect to time, we get V1 = Mele'1+Je2e'2 +6IP$X+63P$9 (3.16) We obtain the derivatives e'l and e'2 from Eqs.(2.9) and (2.10) as follows e] = é}; + 2.1 e'x (3.17) e'2 = e'b + Aqeb (3.18) 42 By multiplying Eqs.(3. l7) and (3.18) with M and J, respectively, and substituting Eqs.(3.4) and (3.5), respectively, we get Mél = Mia-Mf-I-MAléx = Mia-(F-R)+Mlléx (It'd-I'll éx) (M—M) +(R—R) -K] e1 Jéz = Jag—mum, = Jé,-(—Fd,—T)+Jaqé9 = Jéd—(BgM,—T)+Jfiqe9 = (9.1+32é9) (J-Boj) + (T-Be T) -BeK282 (3.19) (3.20) We obtain Eq.(3.19) by substituting Eq.(3.10) and the expression for F, from Eq.(3.2). We obtain Eq.(3.20) by substituting the expression of 89 from Eq.(3.6) and the expression for M, from Eq.(3.3). Equations (3.19) and (3.20) can be written as Me] =14xe —K1e1 162 =Ae¢6 4% K282 Substitution of the above equations in Eq.(3.16), yields . ~ ~ .. T .:. ... T .2 V1 = erAx¢x + 8249459 - K1 8% -Be K283 + ¢x 1%: + ¢e P¢0 Using the estimation law in Eq.(3.13) and (3.14), we get V} = —K1e%— 39 [(28% 43 (3.21) (3.22) (3.23) (3.24) from Eqs.(3.3) and (3.6) we can show thath is a positive number and claim V1 is negative semi-definite. Following the footsteps of Theorem 2.1, we can show that the error variables, el and e2, and the parameter estimation errors, 43,, and 439, asymptotically converge to zero. — Remark 3.1: Theorem 3.1 claims asymptotic stability of the equilibrium point (e1, e2, Vac, $9) = (0, 0,0, 0). This implies that 69 —> 0 as t —-> co and estimated values of the parameters J and T, denoted by $9, converge to (419/89) > 1119. This can be explained as follows: The algorithm is developed on the presumption that the required moment M, can be always applied. When the applied moment is saturated and has a lesser value than the required moment due to saturation, the convergence of tracking error, e2, to zero be- comes slower. The algorithm interprets this as increased resistance to turning and increases the parameter values thus leading to higher parameter values. Remark 3.2: Theorem 3.1 is applicable when Be > 0. To investigate when Theorem 3.1 is not applicable, we analyze the expression of 39. From its definition in Eq.(3.6), we can show = _ (3.25) where the expression M, = —F,d was substituted from Eq.(3.12). As seen from Eq.(3.25) the value of Be can never be less than or equal to zero, as long as F = F, 75 0. Therefore Theorem 3.1 is applicable for situations where |F,| > 0. 3.2.2 Simulations In this section we compare the results of Theorem 3.1 with the results of Theorem 2.1 in Chapter 2, using simulations. The simulation results are presented in Figs.3.2, 3.3 and 3.4. The maximum value for d, at saturation has been chosen to be dm = 3.0m. This choice 44 of a rather large value, although not practical, has been made due to the rich nature of the trajectory with high rates of acceleration and turning. In Chapter 5, we will discuss another method for generating larger turning moment even when d gets saturated to a more practical value. SIMULATION 3.1 For this simulation, the mass and mass moment of inertia of the combined wheelchair and occupant were assumed to be M = 60 kg, J = 2.25 1(ng (3.26) The reaction force and reaction moment were assumed to be R=30 N, T=5 Nm (3.27) The initial estimates of the parameters in Eqs.(3.8) and (3.9) were assumed to be «if (0) = [ 40.0 10.0 ] (3.28) (a; (0) = [ 1.0 0.0 ] (3.29) in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 10, 2.1 = 10 and 2x) = 10. The desired trajectories were chosen as red sin(0.lt) (3.30) 0,, = sin(0.2t) (3.31) along with initial conditions xd = xd = 9d = 9d = 0. These trajectories are sufficiently rich such that W in Eq.(2.31) is persistently exciting. For the trajectories in Eqs.(3.30) and (3.31), the value of F, is computed using Eq.(3.2) and plotted in Fig.3.2. \Vrth F, changing sign, we assume that F, assumes values arbitrarily close to zero but is never exactly equal 45 ex ODHD «new E d: ll LL. 4m- - gzm— - 'U 0 i -2“) 1 1 1 1 1 1 1 n 1 0 10 20 30 40 50 60 70 80 90 100 thne(mx9 Figure 3.2. Simulation 3.1: Plot of error variables, ex and eg and control variables F and d as defined by Eqs.(2.12) and (2.13) in Theorem 2.1 46 ex (mm 60 (deg) ”2.: IL. 4 I I r r r r r r I A 2 - _ 5 0 — e -2 — r _4 1 1 1 1 1 1 4 1 1 0 10 20 30 40 50 60 70 80 90 time (see) Figure 3.3. Simulation 3.1: Plot of error variables ex and e9 and control variables F and d with saturation in d with dm = 3.0 m 47 M (Kg) U1 0 3.3.. 1 (Kg m2) MN) ’1“ (Nm) BOBSSSBBSO 4 Figure 3.4. Simulation 3.1: Plot of parameter estimates with saturation in d with dm = 3.0 m to zero. The problem where F, = 0 will be addressed in the next section. Figure 3.2 shows the simulation results in the absence of saturation in the value of d, i.e., using the control variables defined in Theorem 2.1. It can be seen that as the force becomes very small, the value of d assumes very high values. This occurs twice, at approximately I = 37 sees and t = 58 secs. Figure 3.3 shows the simulation results with the saturation in the value of d. For this simulation, F and d, are chosen according to Eqs.(3.lO) and (3.11) in Theorem 3.1. It can be seen from Fig.3.3 that d, has a maximum value of 3.0 m whereas d in Fig.3.2 assumes very large values. When ds is at its maximum value, the error variable e9 jumps because the robot is unable to produce the required turning moment. The behavior of the estimates have been presented in the Fig.3.4. It can be seen that the values of the estimated parameters associated with the 6 coordinates increase as (1 gets saturated but converge to their actual values when d is no longer saturated. 48 3.3 Resetting of Estimates to Prevent Windup It was noted in Remark 3.1 that the estimates increase during the period that the actuator is saturated. This is known as estimation Windup in the literature (Karson and Annaswamy 1994). This nature of the estimates could lead to poor or unnecessary transient behavior in the system. It also necessitates that we impose the condition that the trajectory is such that saturation will occur only for brief periods at a time. In this section we intend to address this excessive increase in the estimates and curtail their negative influence on the system. The idea is to bring back the estimates to normal values as e2 = 0 and thereby reduce overshoot due to estimate windup, if any, in e2. Such an action can ultimately result in better behavior of the physical system, such as reduction in any oscillatory nature. Consider the parameter error ‘50 = (4’0 -Be430) (3.32) During saturation, Be decreases and 43 takes large values. In order to set 43 to a smaller value we intend to multiply (I; with 39 when ever the condition e2 = 0, 89 < 1 is satisfied. In physical terms the condition, 89 < 1, implies that there is saturation in the actuator and e2 = 0 implies that the estimation law is zero and $9 is momentarily constant. Overshoot in e2 may occur depending on the difference between the required moment and the applied moment. Let us analyze the system when we perform this resetting of R- We will show that the value of (59 does not change during this process. 3 Let tj, j = 1,2,3... be the instants in time when the condition e2 = 0, 89 < l is satisfied. We assume that this condition occurs only a finite number of times. When e2 = 0 it can be seen that the required moment in Eq.(3.3) reduces to A = 4,0 (3.33) A reset in the values of the estimates at t = t j, given by the expression 49 430;) = 39 (17(0) (334) results in MAI?) = BO Mr(’j) (335) We know from Eq.(3.6) that —Fds :39 M, (3.36) The resetting of estimates in Eq.(3.34), in addition to. reducing 439, results in M,=—Fds => 39:1 (3.37) This follows from the definition of Be, namely, 39 = 216,41. From the above analysis it is clear that the product (30 439W?) = (39 439W)? (338). although the values of Be and 1139 changed discontinuously. Thus we achieved in resetting 43 to a smaller value without discontinuity in the parameter error 59 = (4’9 —Be439) The following observations can be made from the above analysis. 1. It should be noted that the condition e2 = 0, 39 < 1 is satisfied only for an instant at a time, since the switching immediately renders 39 = 1. 2. Since switching happens at e2 = 0 and when 69 is constant, there is no change in the estimation law, namely (59 = —P‘1Age2. 50 3. V1 and V1 are continuous since e2, 69 and 69 are continuous and thus the proof of Theorem 3.1 is still valid for the theorem we present next, which includes the resetting of estimates. Theorem 3.2: For the dynamical system described by Eqs.(3.4) and (3.5), the equilib- rium point (e1, e2, 6,, 69) = (0,0,0,0) is asymptotically stable for the following choice of control laws F = Fr 4 — 1 (M) _ Fr , d3 = sat(d, dm) and estimation laws (15', = —P—1A,{e1, $9 = 4044582 $0=30¢39(tj), e2=0mldl319<1 provided F, 51$ 0. Proof: The proof of Theorem 3.1 is still valid. SIMULATION 3.2 (3.39) (3.40) (3.41) (3.42) (3.43) (3.44) The conditions for this simulation are chosen to the same as in Simulation 3.1. The only change is in the choice of trajectory and the value of dm. The trajectory is chosen as follows x _ 1.0 m/sec2 03131 secs d — 0.0 m/sec2 t > 1 secs 0.0 rads/sec2 0 S t < 20 secs 0,; = 0.5 rads/sec2 20 g t < 21 secs 0.0 rads/sec2 t 2 21 secs 51 (3.45) (3.46) 1??" This trajectory is similar to the one chosen in Simulation 2.2 (which also has same condi- tions). However we have limited the 0 trajectory. Therefore such a choice implies that the wheelchair moves forward in the x coordinates at a constant velocity. After the initial 20 sees, it goes through an angular acceleration of 0.5 rn/sec2 when 20 < t g 21 sec and then starts turning with a constant angular velocity until end of simulation. The maximum value for d5, dm is chosen as 0.172 m. The reason for such a choice is as follows: It can be seen in Simulation 2.2 that the value of d required during steady state was 0.167 m. This is the minimum value of d required to counter the effect of T (5 Nm), when F is almost constant around 30.0 N. Thus 0.172 m is a tight saturation limit with 5.0 mm to spare. Further it is also seen that during the period of angular acceleration in Simulation 2.2, d reaches a max- imum of approx. 0.22 m. Since the conditions and the angular acceleration rate are similar, it can be assumed that this is the same for this simulation too if there were no saturation. cum!!!) MI—ii—l CDC=88 111 1'11 0 30 (deg) F(N) o seeeg asses -02 1 1 1 1 1 0 20 4O _ 60 80 100 120 trme (sec) Figure 3.5. Simulation 3.2: Plot of error variables, ex and eg and control variables F and ds without modification in estimates 52 l l l 1 0 20 40 60 80 100 120 time (sec) Figure 3.6. Simulation 3.2: Plot of error variables, ex and eg and control variables F and d, with modification in estimates 53 09 N M 1111 l l 1 l :5 100- . .4 A T‘ M C r 0 1 . - 1 0 20 40 . 60 80 100 120 trme (sec) Figure 3.7. Simulation 3.2: Plot of parameter estimates without modification ,N415 , . . . . §§41 _ - 6,5405 4 40 1 1 1 1 1 "150 , , , , , (E 100 go _ _ (H 50 - - 0 l 1 l l 35 I 1 I I I 30 ~ 4 33‘ ‘ «a 15 : : 10 1 1 1 1 1 E150 , . 1 1 1 25100- . <1— 50 — . 0 __L 1 1 J o 20 40 _60 80 100 120 t1me (see) Figure 3.8. Simulation 3.2: Plot of modification in parameter estimates 54 The simulation results are presented in Figs.3.5 through 3.8. Figs.3.5 and 3.7 are the results of the simulation without the new modification and Figs.3.6 and 3.8 show the results of simulation with the new modification in place. In both cases it can be seen that the errors converge to zero. However in the second case the convergence is faster around 30 < t < 40 see as against 50 < t < 60. It can also be seen that the estimates have been brought back to lower values during the resetting. 3.4 Addressing Loss of Turning Moment 3.4.1 Change of Reference Tiajectory For the preliminary work in Chapter 2, it was assumed (see assumption A.1) that F > 0. For this reason, we used trajectories that would keep F = F, > 0. This is not practically possible since the force required, F,, can be negative or even zero, depending on the trajectory. Theorem 3.1 can deal with positive and negative values of F, provided F, does not change sign. In cases when F, becomes zero, the moment applied by the robot becomes zero despite the fact that the required turning moment may be nonzero. This can be verified from Eq.(3.5) where the turning moment applied by the robot is given by the expression —F d, which assumes a zero value when F = F, = 0, irrespective of the value of (1,. This results in 89 = 0, a situation where we do not have control over the turning of the wheelchair. As a result, the errors in the 9 coordinate can increase significantly depending on the desired trajectory. This is explained next. Consider the derivative of the sliding surface for the 9 coordinate in Eq.(3.18) 6'2 = e’b+42€'0 = (9d-é)+42e'e = (éd—Jé/J)+2Qe'9 (3.47) Substituting for J 6 from Eq.(3.5) we get 55 e: = (éd—(Fds—T)/J)+Meb (3.48) Since F = 0, this becomes e'2 = éd+T/J+2Qe'9 (3.49) The desired trajectory, 0d, will be provided by a path planning algorithm (see assumption A5 in Chapter 2) that does not take into account the loss in turning moment and therefore e2 can increase or decrease. It is prudent to suspend trajectory tracking in the 0 coordinate un- til the control effort is regained. To this end, we propose tracking an intermediate reference trajectory 0d,, which follows the original desired trajectory when |F,| > s, where E is some small number, and maintains a constant error in the 9 coordinates, when |F,| g 8. Taking the liberty of slight misuse of notation (mixing time and Laplace domains), we define 9di as follows .. __ F 9.1: = gs+1’ I 'l > 8 (3.50) e-A’Zebia IFrI _<. 3 The errors and sliding surfaces are redefined based on the intermediate reference trajecto- ries as follows 89" = 9d,: — 9 (3.51) 6’21 = 5’91 +42891 (352) Indeed, for |F,| S 8, (921°: (édi_ 6) +42%: = 0 (3-53) This implies that e2,- is constant during this period and consequently égi = 0 and e9,- is constant. Based on the definition of the errors and sliding surfaces in Eqs.(3.51) and (3.52), we redefine the required turning moment, given by Eq.(3.3) as follows 56 M, = f ed,- +Mfebi +T +K2 e2, (3.54) In addition to the trajectory issue, we stated in Remark 3.1 that the estimated values of the parameters J and T, denoted by 69, converge to (69 / Be) > 69. This would mean that as 89 becomes very small, the values of the estimates will become very large and will become undefined when 39 = 0. This is another issue that needs to be addressed to deal with loss in tuming moment. The next theorem presents a method to deal with this problem. We have however chosen not to include the resetting presented in Theorem 3.2 for clarity in the results. Theorem 3.3: Consider the dynamical system described by Eqs.(3.4) and (3.5). For this system, with estimation errors defined by Eqs.(3.8) and (3.9), the equilibrium point (e1,e2,-,6x,69) = (0,0,0,0) is asymptotically stable when |F,| > e and stable otherwise, for the following choice of control inputs: F = F, (3.55) Fr (13 = sar(d,dm) (3.57) (3.58) and estimation laws: $1: = -P“AIe1 (3.59) "' _ _ —1 T , ¢01 ¢0:01 IFrISE where 8, 8 > 0 is some small number. Proof: Consider the Lyapunov function candidate 1 1 1.. .. 1.. .. v2 = -2-Me% + 51.3%,. + 593%: + 56311419 (3.61) 57 which is similar to the expression of V1 in Eq.(2.15). The only difference is that the ex- pression of V2 replaces e2 in the expression of V1 with e23. As a result we can show that V2 satisfies V2 = —K1e§ — Be Kzeg, (3.62) when |F,| > 8. Since |F,| > 8 ensures Be > 0, we have V2 3 0. Following the same logic as in Theorem 2.1 in Chapter 2, we can show that the equilibrium point (e1 $2,361, 69) = (0, 0,0, 0) is asymptotically stable. When |F,| S 8, the derivative of the Lyapunov function, through direct differentiation is given by the expression V, = Me, é, +Je2é2, + 617106, + «5'9 Trio (3.63) which then takes the form V2 = -—K1e% S 0 (364) Equation (3.64) is obtained from Eq.(3.63) by substituting 69 = 0, which follows from Eq.(3.60), and é2, = 0, which follows from Eq.(3.50) and (3.52). From Eq.(3.64) we claim that the equilibrium point (e1,e2,-, 6.69) = (0,0,0, 0) is stable. Remark 3.3: We need to stress here that we do not expect the condition |F,| g 8 to come into play often. Then the result may be useful because it shows that the system will remain well behaved in some sense. However if the condition |F,| S 8 is satisfied frequently the switched system can become unstable. The above theorem does not comment on the properties of the equilibrium for the switched system but only the sub systems subject to the conditions. It should also be noted that the switching in the estimates in this section is not the same as that presented in Theorem 3.2 From Theorem 3.2, an useful observation is made with the help of the following corollary. Corollary 3.2: Consider the dynamical subsystem described by Eq.(3.4). For this sys- tem, the equilibrium point (e1,6x) = (0, 0) is asymptotically stable for the following choice 58 of control input and estimation laws F = Fr (3.65) 6', = —P-‘Afe1 (3.66) Proof: Consider the Lyapunov function 1 2 1 T .. V, = -2-Me1 + 56, P6, (3.67) This Lyapunov function contains the terms of V2 in Eq.(3.61) that correspond to the x coordinates. The derivative is given by v, = Melél + 6&6, (3.68) Proceeding in the same manner as in Theorem 2.1 we can show that Vx S _Kle% _<_ 0 Following the footsteps of Theorem 2.1 we can show that e1 -» 0 as t —» co. By ensuring that the desired trajectory xd is sufficiently rich, Ax defined in Eq.(2.22), can be made persistently exciting. (Astrom and \Vlttenmark, 1995). This will ensure 6x -+ O as t -—> oo, which implies that the parameters defined in Eq.(3.8) will be correctly estimated. Thus, the equilibrium point (e1, 6,) = (0,0) will be asymptotically stable. Remark 3.4: Corollary 3.2 establishes that trajectory tracking in the x coordinate is achieved at all times including times when there is a loss of turning moment that cre- ates problems in tracking in the 0 coordinate. This is expected because the applied turning moment is dependent on the pushing force but the reverse is not true. The problem of track— ing of tracking in the 9 coordinate occurs when |F,| 5 8, which is warranted by trajectory tracking in the x coordinate. 59 3.4.2 Simulations We present simulation results to verify the stability property of the equilibrium, claimed in Theorem 3.3. TWO sets of simulations are presented. The desired trajectories, initial conditions, parameter values, initial parameter estimates, controller gains, sliding surface constants, and the value of dm for the two simulations are the same and equal to those used in Simulation 2.1. The difference is in the choice for the value of 8. SIMULATION 3.3 This simulation was performed with an 8 value of 0.1. The results are shown in Figs.3.9 and 3.10 where the vertical lines show the times when the condition |F,| S 8 is satisfied. The period that |F,| remains less than 8 is very small due to the choice of our trajectory and the small value of 8 (see next simulation for a more defined period of |F,| S 8). Thus the time periods have been reduced to instants of time, which are denoted by the vertical lines at approximately I = 37 secs and t = 57 secs. Corollary 3.2 can be immediately verified since the error in the x coordinates, ex, and estimation error, 6, = [M ,R]T, converge to zero asymptotically irrespective of tracking and estimation errors in the 9 coordinate. The same is true for the next simulation where we used a higher value of 8. The error in tracking the 9 coordinate, egi, eventually converges to zero but undergoes a significant deviation from zero when F, becomes very small as shown in Fig.3.9. As expected, the value of d is seen to saturate to d, = dm = 3.0m when F, becomes very small and changes sign. This can be verified from Fig.3.9. Figure 3.10 shows the plot of the estimated values. It can be seen that both f and T are set to zero for the short durations of time when |F,| g 8. After the brief period at zero, the values increase significantly but eventually converge to the actual parameter values. The significant increase can be attributed to the fact that when |F,| is a small number approaches epsilon while satisfying |F,| < 8, the value of 39 becomes small initially and consequently the estimated values approach (169/B9), assume large values consequently. 60 ex ODHD l l l l 601 (deg) F(DU c> g; g; )1 _4 1 L L 1 1 0 10 20 30 40 50 70 80 90 100 ds (m) |bds rs+l Figure 4.1. Dynamics of d, with mechanical saturation According to the above block diagram, d is a commanded signal obtained from the adaptive algorithm. The first block is the transfer function of the actuator. Thus a" is the actual location when the actuator dynamics is considered. Once (1’ reaches a physical limit, it gets saturated to d; and cannot move further. This is denoted by the second block. If the above block diagram is implemented, the saturation block has to be implemented by mechanical stops or the like. This will result in additional complexity and create impact on the ends 66 of the forearm which is not desirable. To avoid this scenario, we propose to implement the saturation block in software and control the actuator with the saturated signal d, as shown in the block diagram below: rs+1 Figure 4.2. Dynamics of d, with software saturation We discussed saturation of d in the previous chapter and in this chapter we address the effect of actuator dynamics. The above block diagram models the actuator dynamics as a first order system. 4.2 Motivation If we model saturation and actuator dynamics of the prismatic joint, the equations of motion of the wheelchair take the form M)? = F—R (4.1) 10' = —Fdf,—T (4.2) It can be seen that the actual applied moment is now given by —F d;. In Chapter 3, where saturation of the prismatic joint was only taken into account, the applied moment was given by —F d,, and 89 was defined as the ratio of the saturated moment to the required moment, M,. Since the applied moment will now include the effects of actuator dynamics, we define B’O as the new ratio of applied moment to the required moment as _ng B’:M, (4.3) Thus far we have always chosen F = F,. Therefore, 67 _ _Fdi _ ‘Frdi _ dis 9 “ M, — —F,d _ 17 (4'4) Since d; follows the commanded signal d, with a phase lag 1, the applied moment, —F d;, may have opposite sign of the required moment, M, = —F d. Typically, this will happen after d passes through zero and changes sign, or when F, passes through zero and changes sign. Due to actuator dynamics, d; will not change sign instantaneously when d (and hence (13) changes sign, and as a result B’e will be negative. In Chapter 3 it was noted thath is positive or equal to zero. In fact, a nonnegative Be is also a requirement for Theorem 3.1. With the inclusion of actuator dynamics, Bo will be replaced by 3’9 but since a non negative 3’9 cannot be guaranteed, the wheelchair may turn in the opposite direction to what is required to reduce the errors if the control laws in Theorem 3.1 are used. To address this problem we first introduce the variable B, as the ratio of the applied force to the required force i.e. F B:— x Fr (4.5) Thus far, we have used F = F, or B, = 1. After the preliminary result, which we present next with the help of Theorem 4.1, we will not constrain F = F, at all times. Manipulating F to be different from F, will be required to avoid a negative 8"). Consequently B, will not be restricted to unity. The applied force F can then be thought of to be a fraction of the required force F,, denoted by B, F,. In the previous chapter we modified the estimation errors in the 0 coordinates to take into consideration the fraction of the required moment applied - see Eq.(3.9). Here we update it to 3'9 and further redefine the estimation errors in the x coordinates in Eq.(2.11) to reflect the applied force as F = B, F,. Thus the estimation errors are redefined as follows. Vx=(¢x-Bx¢;x)t ¢x= [it], Rx: [1;] (4-6) 1There is a phase lag between the input and output of a proper transfer function 68 60 = (¢e - 9‘59), (Pa = (4-7) J . f T], ¢0=[T The definition of the errors, el and e2, remain unchanged from that given by Eqs.(2.9) and (2.10) respectively. We are now ready to present the first result of this chapter. 4.3 Preliminary Result Theorem 4.1: Consider the dynamical system described by Eqs.(4.l) and (4.2). For this system, the equilibrium point (e1,ez,6x,69) = (0,0,0,0) is asymptotically stable for the following choice of control inputs: F = F,- (4'8) 1 d = —— M 4. Fr( r) ( 9) ds = sat(d,dm) (4.10) d} = ',l;(ds‘d.’t) (4.11) and estimation laws: 6x = —P—1A£el, (4.12) «is = -P“A€e2 (4.13) provided B’e > 0. Proof: Consider the Lyapunov function candidate 12121~T~1~T~ which is positive everywhere except at the origin (81,82, 6x,69) = (0,0,0,0), where it is zero. By differentiating V3 with respect to time, we get V3 = Mele’1+Jeze'2 +433P¢Tx+6gp$9 (4.15) 69 We obtain the derivatives e'l and e‘z from Eqs.(2.9) and (2.10) as follows 8'1 = 8‘}, + 51.1 e', (4.16) e, = e}, + Me's (4.17) By multiplying Eqs.(4. l6) and (4.17) with M and J, respectively, and substituting Eqs.(4. l) and (4.2), respectively, we get 55. II = Mx'a—(F—R)+Mlléx Mxy — (13,r F, — R) + M21 8,, (4.18) = (std +2.1éx)(M—BxM) +(R—BxR) —B,,K1e1 (4.19) Jéz = 19d —Jé +JAQég = 10;, — (—F d; — T) +1328, = Jéd - (BIOMr - T) +JAI289 = (éd+}IQé9)(J—B’GJ) +(T—B’9 T)—B'9K2e2 (4.20) We obtain Eq.(4.l9) by substituting for F = B, F, from Eq.(4.5) and the expression of F, from Eq.(3.2). Similarly we obtain Eq.(4.20) by substituting the expression for B’e from Bq.(4.3) and the expression for M, from Eq.(3.3). Thus we get, Me'1=Ax6x —BxK1e1 (4.21) Je‘2 = A9 (Ii-9 — BIO K262 (4.22) Substitution of the above equations in Eq.(4.15), yields 70 . ~ ~ 1... T 1:. ~ T 1:. V3 = ele¢x + €2Ae¢e - Bx K1 9% - 3’9 K283 + 9x P¢x + lie “is (423) Using the estimation law in Eq.(4.12) and (4.13), we get V3 = -B, K112? — 3’9 Kzeg g 0 (4.24) since B’e > 0 and B, = 1. Following the footsteps of Theorem 2.1, we can show that the error variables, el and e2, and the parameter estimation errors, 6, and 69, asymptotically converge to zero. Remark 4.1: Theorem 4.1 is similar to Theorem 3.1 except that it includes the dynam- ics of the prismatic joint. However, it only considers the case where (I does not change sign, and as a result of which 32, remains positive at all times. SIMULATION 4.1 We present simulation results to validate the claims of Theorem 4.1. We assume the mass and mass moment of inertia of the combined wheelchair and occupant to be M = 60 kg, J = 2.25 kgm2 (4.25) The reaction force and reaction moment are assumed to be R = 30 N, T = 5 Nm (4.26) We assume the initial values of the parameter estimates in Eqs.(4.6) and (4.7) to be (133(0) = [ 40.0 10.0 ] (4.27) 433(0) = [ 1.0 0.0 I (4.28) in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 10, 2.1 = 10 and A; = 10. The desired trajectories were chosen as 71 691 (deg) ex (mm o '5’ ‘1 -20 1 1 l 1 1 150 , t t I 2 100 i - LL 50 1 1 1 1 1 :5: :3 E 'U .0.2 l 1 1 1 1 0 10 20 30 40 50 60 time (sec) Figure 4.3. Simulation 4.1: Plot of error variables ex and 89, and control inputs, F and ds, and d; id = sin(0.02t) (4.29) 04 = sin(0.2t) (4.30) along with initial conditions xd = 2,, = 9d = 0d = 0. These trajectories are sufficiently rich such that W in Eq.(2.31) is persistently exciting. This will ensure convergence of parameter estimates to their true values. Figures 4.3 and 4.4 show the simulation results for T = 0.25 secs. In this particular simulation, the commanded value of the prismatic joint did not exceed the saturation limit and therefore we had d3 = d. The variable d; is however different from d, = d. In the pres- ence of actuator dynamics, it can be seen that the errors converge to zero and the estimates converge to their actual values given by Eqs.(4.25) and (4.26). In this particular example, 3’9 was always positive, a requirement for Theorem 4.1. This was achieved through proper 72 M (K8) A ’1‘ (Kg m2) 1 l l 1 R(N) 8 __————_——-—— A T flqnn curses 0 10 20 30 40 50 60 choice of the 4.4 Add It is obvious intermediate was equal to time (sec) Figure 4.4. Simulation 4.1: Plot of parameter estimates desired trajectories and a non zero value of the reaction torque T. ressing Sign Change of Control Inputs 4.4.1 Change of Reference Trajectory that changes in the sign of either F, or d will make B’o < 0 for some period of time and will render the result of Theorem 4.1 inapplicable. To avoid this situation, we propose to enforce F = 0 irrespective of the value of F, for the duration of time when B’s is negative. This will keep both 3, and 3’s at zero value since F = 0 implies that the applied force and the applied moment are zero. In the previous chapter we proposed tracking an trajectory, 0,1,, which followed the original desired trajectory 6,, when 89 > 0 and maintained the errors at their current values ((12, = ég; = 0 - see Eq.(3.53)) when 3,; zero. Here we modify this to include 3’6 and further introduce an intermediate 73 trajectory for the x coordinates. This intermediate trajectory xdi will track the original desired trajectory xd when 8, > 0 2 and will maintain a constant error when Bx = 0. The intermediate trajectories are defined as follows rd: *d-fdt, Bx>0 l f-Ale'xi, Bx=0 -- {Gd-9.11, |F|>8 9dr: 9-346301, IFI .<_8 The error variables and sliding surfaces are redefined accordingly exi = xdi _x 311' = éxi+ll exi and em = 9dr- 9 621 = éei+32€91 The required force and moment expressions in Eqs.(3.2) and (3.3) are modified to F, = Midi+llMeii+R+Kle1i M, = fédi+42febi+T+K2e2i (4.31) (4.32) (4.33) (4.34) (4.35) (4.36) (4.37) (4.38) The following corollary uses Theorem 4.1 to show asymptotic stability while using the redefined trajectories. Corollary 4.1: Consider the dynamical system described by Eqs.(4.l) and (4.2). For this system, the equilibrium point (e1,,e2,-, 6x, 69) = (0,0,0,0) is asymptotically stable for the 2B,.,>0-—»B,,=1fornow 74 following choice of control inputs: F = F, (4.39) 1 d = -;(M) (4.40) , ds = sat(d, dm) (4.41) at: = ital. — dé) (4.42) where F, and M, are given by, F, = Mica-+711 Me},,+R+K1 e1,- (4.43) M, = fédi+lquebi+T+K2e2i (4.44) and estimation laws: (it = —P“A§ert. (4.45) $9 = 44115122,- (4.46) if the condition B’e > 0 is satisfied. Proof: Consider the Lyapunov function candidate 1 l 1 .. - 1 - .. V4 = 5Mefi. + 51.2%,. + 5411104», + 541510419 (4.47) The Lyapunov function candidate V4 is similar to V3 in the proof of Theorem 4.1 except that e] is replaced by 81,-. Since F, and M, are now functions of e1,- and egg, respectively, the proof is very similar to that of Theorem 4.1. We are now ready to state the final result of this chapter. Since the error in parameter estimates corresponding to the x coordinates have been redefined to include 8,, we will also be addressing the issue of the estimates becoming undefined when 8, becomes zero. This is similar to the case with the parameters estimates in the 6 coordinates in Chapter 3. We present the result next. 75 4.4.2 Main Result Theorem 4.2: Consider the dynamical system described by Eqs.(4.1) and (4.2). For this system, the following choice of F and d; Fr, sgn(d§) = sgn(ds) F = 4.48 { 0. sgn(d§) 9* 58"(ds) ( ) 1 d = ——(M,) (4.49) Fr d, = sat(d,d,,,) (4.50) . 1 d; = ;(d. — dé) (4.51) where F, and M, are given by, F, = M8,,- +1.1 Meg,- +R+K1 e1,- (4.52) M,- = fédi+AQfebi+T+K2 821' (4.53) renders the equilibrium point (81 113213620 69) = (0,0,0, 0)- asymptotically stable when |F | > 8 and stable otherwise for the following choice of estimation laws ‘" _ _ -1 T , I = 4;. — P 4, .,,, sgnrdf) sgnrd.) (4.54) ¢x = 0, Sgn(ds) 75 Sgn(ds) ($9 = —P_1AgeZir IFI > 8 69 = 0, IF I S 8, sgn(d(.) 75 sgn(ds) (4.55) 439, $9 = 0. IFI S 8, 38"(di~) = sgn(ds) Proof: There are 3 cases to be studied in this theorem. 1. |F| > 8 2- IF I S 8 and S8n(d.’t) 79 sgn(ds) 3. [F] g 8 and sgn(d’.) = sgn(ds) 76 Consider the first case where IF I > 8. We know |F| > 8 —> sgn(d_(.) = sgn(ds) (4.56) since from Eq.(4.48) it can be seen that sgn(d;) ,4 sgn(d,) .—+ |F| = o < s (4.57) In Theorem 3.2 we have shown |F| > 8 —> B9 > 0 (4.58) From Eq.(4.3), B’9 can be written as 3’9 = 72"; (4.59) _ I _ = 13:71:? (4.60) = gig? (4.61) = $3139 (4.62) > 0 (4.63) since d; and d, are of the same sign and B9 > 0. Further B, = l > 0 during this period since F = F,. Thus since 8,, and B’e are both greater than zero, using'corollary 4.1 we can say that the equilibrium points are asymptotically stable. For the case |F | g 8 there are two scenarios. The first one being sgn(d;) = sgn(ds) and the other sgn(d§) 7£ sgn(ds). Let us first consider the case when sgn(d§) 75 sgn(ds). Consider the derivative of the Lyapunov function candidate in corollary 4.1 - . ~ T =- . ~ T . V4 =Melieli+¢x P¢x+Jeztezi+¢9 P¢0 (4-64) 77 From Eq.(4.32) and (4.36), we know e2,- is constant. Similarly from Eq.(4.31) and (4.34) we know 911’ is also constant. From Eq.(4.55), we have 69 is constant. 3’0 and B, are zero during this period, since F = 0. So we can see that 69 = (69 -B"9 69) = 69 and 6x = (6,, — B, 6,) = 6,, are also constant. thus - . ~ T :- . ~ T =- V4 =Melieu+6x P¢x “Flea-8214109 P439 = O (4.65) Therefore the equilibrium points are stable for this case. Now let us consider the next case wherein sgn(d_’,) = sgn(ds). For this case it can be shown that v, = —B,K1e%,. g 0 (4.66) since 3, > 0 when F = F, and moreover e2,- is constant and 69 is also constant since 69, 69 = 0. Therefore the equilibrium point is stable. It can be noted that if sgn(d§) = sgn(d,) for a sufficiently long time and sgn(d_(.) 75 sgn(ds) only a finite number of times, then the errors in the x coordinates converge to zero asymp- totically. In addition to the above condition if |F | g 8 for a finite number of times and remains greater than 8 for a sufficiently long period then the errors in 6 coordinates also converge. SIMULATION 4.2 Consider the following scenario similar to Simulation 4.1. The mass and mass moment of inertia of the combined wheelchair and occupant is chosen to be M = 60 kg, J = 2.25 kgm2 (4.67) The reaction force R and reaction moment T are assumed to be R = 30 N, T = 5 Nm (4.68) 78 As in Simulation 4.1, we assume the initial values of the parameter estimates in Eqs.(4.6) and (4.7) to be 43,? (0) = [ 40.0 10.0 ] (4.69) a; (0) = [ 1.0 0.0 ] (4.70) in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 10, A] = 10 and 2,2 = 10. The desired trajectories were chosen so as to allow for changes in sign in ds = sat (d ,dm) and consequently d; as 200 - 100 /\ 0 -100 50 I 0 FA. -50 lm I I I I I 50 . . 0 ~ 4 -50 4 . 10 . . -10 b . . . 4: 0 [I I 1 m 5 t 1 t t 0 P‘s J“ M L L 1 l l 0 10 20 30 40 50 60 70 time (sec) 6x (mm) eei (deg) F (N) ds (m) o d's (m) o Bx 9 M I 1 I P 1 l l BO Figure 4.5. Simulation 4.2: Plots of ex, e9i,,F, d5, (1;, B, and B9 79 S M (Kg) 8 0 10 20 30 40 50 60 70 time (see) Figure 4.6. Simulation 4.2: Plot of parameter estimates it'd = sin(0. l t) (4.71) ("id = sin(0.2t) (4.72) along with initial conditions xd = id = 99 = 9d = 0. These trajectories are sufficiently rich such that W in Eq.(2.31) is persistently exciting. The simulation results are presented in Figs.4.5 and 4.6. The value of r: was kept same at 0.25 secs and the epsilon was chosen to be 0.1. Figure 4.5 shows the error in x coordinates 8,9, the error in 0 coordinates 89,-, the control input F, the saturated signal (1,, control input 11;, B, and B’9 in that order. It can be seen as in previous simulations that the errors go to zero. The vertical lines show some of the instances when they remain constant. These correspond to situations when sgn(d_(.) 74 sgn(ds) for ex,- and F S 8 for e9 i- It should be noted that sgn(d§) yé sgn(ds) will also affect e9,- indirectly, since F is affected by sgn(d_(.) 79 sgn(ds). Going on to F, which is the applied force, we can see that F is set to zero at certain 80 points. These points correspond to the period of time when d; and d, are not of the same sign. This is observable from the next two plots. The value of d, has been saturated to a maximum of 10.0 m. This is obviously an impractical value, however it has been chosen so as to make the graph more readable and observe the convergence faster. Further the fact that the trajectory is chosen to be very rich with very high rates of turning and acceleration also necessitate such a large maximum value. In the succeeding chapters we will be discussing methods to provide more torque when d gets saturated at a more practical value and in the final chapter, we will be providing more practical scenarios with experimental results. The next plot shows 8,, which can be seen to become zero each time d; and d, are not of the same sign ( when F = 0). Otherwise Bx remains at 1.0. The plot of 3:9 is more varied. However it has been prevented from going negative when d; and d, are of different sign by enforcing the F = 0 condition. Figure 4.6 shows the plots of the estimates. It can be seen, similar to the previous sim- ulation, that the always tend to go toward the original parameter values when the condition F > 8 is satisfied. It can also be seen that they are set to zero at certain points. Special note should be made however that these values are set to zero only when the conditions IF I g 8 and sgn(d§) = sgn(ds) are satisfied. Otherwise, when the conditions are IF I S 8 and sgn(d§) 96 sgn(ds), they are maintained constant. This is also seen in the graph. 4.5 An Alternate Approach to Dealing with Sign Change in Control 4.5.1 Closed-loop Control of the Prismatic Joint In the previous sections, we tried to address the problems related to the dynamics asso- ciated with the actuator of the prismatic joint, by manipulating the control inputs of the wheelchair. For example setting F = 0 when ti; and d, have opposite signs. This was done from the wheelchairs perspective, using an arbitrary first order system to represent the dy- namics of the prismatic joint. From the perspective of the robot pushing the wheelchair, the 81 control inputs for the wheelchair, namely F and d3, can be viewed as the reference inputs. The robot has a controller that works to meet the reference that is provided to it in terms of F and ds. In this chapter we are concerning ourselves with only the controller of the pris- matic joint. We intend to control the robot such that the equilibrium point of the closed loop system consisting of the wheelchair and the prismatic joint of the robot is asymptotically stable. The block diagram in Fig.4.7 is the dynamics part of the Fig.4.l that was presented earlier in the chapter. Since this is the arbitrary controller/actuator dynamics used in Theo- rem 4.1 and 4.2, the block diagram can be expanded out to look like that in Fig.4.8, where rm is the time constant of the motor’s approximated first order transfer function and u is the control input to the motor.We intend to define it at the end of the theorem presented next to achieve our objective. This theorem can be considered to be the counterpart of Theorem 4.1, which was using a standard position controller. Before we present the theorem we would like to layout some basics in the next paragraph and introduce a new variable, 89. ds 1 ———> ds' ts+l Figure 4.7. Dynamics of the Prismatic Joint + u . ds—-—>O—-I Controller TmS + 1 - ds Figure 4.8. Standard Position Control The model of the wheelchair is unchanged from Eqs.(4.1) and (4.2). The idea behind this method is to build upon the result obtained in Theorem 3.1. Hence we will be using the B9 defined as the ratio of the saturated moment to the required moment, in Chapter 82 3, Eq.(3.6) instead of B’9 from Eq.(4.3) which was introduced earlier this chapter. Corre- spondingly the estimation errors are also defined the same way as in Chapter 3, Eq.(3.8) and (3.9). Further the definition of the errors, 81 and 82, also remain unchanged from that given by Eqs.(2.9) and (2.10) respectively. We introduce the error between the commanded location of the prismatic joint, (1,, and the actual location of the prismatic joint d; given by ed = d, — d; (4.73) We also replace the saturation function with a hyperbolic tan function so that the derivative of d, is continuous and obtainable. We are now ready to present Theorem 4.3. 4.5.2 Main Result Theorem 4.3: Consider the dynamical system described by Eqs.(4.1) and (4.2). For this system, the equilibrium point (e1,ez,6x,69,ed) = (0,0,0, 0,0) is asymptotically stable for the following control law: F = F, (4.74) d = _ir(Mr) (4.75) d, = dmtanh(d) (4.76) d", = { ds+Kid[—F]ez+ed, [—F]ezed >0 (4.77) Js+ed, [—F]82ed 30 where F, and M, are given by, F, = Mid-FAIMe'x-I-R-I-Klel (4.78) M, = f0d+lgfe9+T+Kze2 (4.79) and estimation laws: «ix = -P“Afet, (4.80) 6”,, = —P-‘Age2 (4.81) 83 provided F 75 0. Proof: Consider the Lyapunov function candidate 1 1 1 - - 1 .. .. 1 V5 = 5M8)? + 518% + 5(1ng + 5930119 + 5K9 e}, (4.82) which is positive everywhere except at the origin (81 ,ez, 6,, 69,801) = (0,0,0,0,0), where it is zero and K9 is a positive constant. By differentiating V5 with respect to time, we get V5 = Mele'l + J82e°2 + 61P$x + égptlig + Kd ed éd (4.33) We obtain the derivatives e‘l and 8'2 from Eqs.(2.9) and (2.10) as follows 8'] = 83, + 2.1 e, (4.84) 8'2 = 8'9 + 2989 (4.85) By multiplying Eqs.(4.84) and (4.85) with M and J, respectively, and substituting Eqs.(4.1) and (4.2), respectively, we get Mél = Mia—Mf-I-MAIéx = Mx'g—(F—RHMAIé, = Mtg—(F,—R)+Mlléx (4.86) = (id-FA] ex) (M—M) + (R—R) —K1 1.», (4.87) 84 J82 = 10;, — 18 +ng e, = 109— (—F d; — T) wage, = 10;,— (—F d,+Fd,-Fd§—T)+JAQég = 19;,— (—F d, — T) +JAQe'9 + [—F](ds — (1;) = 1911 — (—F ds — T) +Jfiaéo + I-F] (ed) = 16,, — (Be M, — T) +171an + [-F I (ed) = (0,, +1Qe9) (J—B9J) + (T -39 T) -39 Km + l-Fl (ed) (438) We obtain Eq.(4.87) by substituting for F = F, from the expression of F, from Eq.(4.78). Similarly we obtain Eq.(4.88) by substituting the expression for B9 from Eq.(3.6) and the expression for M, from Eq.(4.79). Thus we get, Me'1=Ax6x—Klel (4.89) 1‘32 = Ae¢~o - 39 K282 + I-F I (88) (4-90) Substitution of the above equations in Eq.(4.83), yields . ~ 1.. ~ T .5 .. T 1:. . V5 = ele¢x +8240¢9 - Klei -Be K283 + ¢x 1%: + ¢9 P¢o + [4’] (ed)82 +Kdeded (4.91) Using the estimation law in Eq.(4.80) and (4.81), we get V5 = --K1 8% — B9 Kzeg + [--F] (ed) 82 + Kd 8989 (4.92) If we substitute the control law of the prismatic joint in Eq.(4.77) depending on whether [—F] e2 ed > 0 or not, the derivative will take the form 85 V __ —Klei—B9K2e2—Kde§, [—F]ezed >0 5 —Klel —Bg K2e2 - Kded + [—F] e2 89, {—F1e2ed _<_ 0 g —K1e§ —Bg K2123 —Kde§ (4.93) Since F 79 0, B9 > 0 and V5 is negative semi definite. Following the footsteps of Theorem 2.1, we can show that the error variables, 81 , e2, 89 and the parameter estimation errors, 6,, and 69, asymptotically converge to zero. Remark 4.2: The reason for using a switched controller is to contain d; within the maximum bounds. Other methods to address the issue are to provide a sufficiently high gain [(9 depending on the application. Higher values of [(9 will reduce the dependency of the control law on the value of 82 and F and add weight to the error ed and vice versa. Reducing the maximum allowed for d, is also a possible method. For situations where these are not possible we can use the hybrid controller in the above theorem. Remark 4.3: The control law for d} is obtained from the following definition of u: Tm(ds+R1;[—F]ez+ed)+d;, [—-F]ezed > 0 (4.94) Tm(cis+ed)+d§, [—F]e28d SO A quick comparison between Theorems 4.1 and 4.3, show several benefits with the new controller. It renders the equilibrium point of the closed loop system, comprising of the robots’ prismatic joint and wheelchair, asymptotically stable. The necessary condition for asymptotic stability has been relaxed by the new method. Earlier, it was required that B’e = (—F d§)/Mr has to be positive. This implies that neither F nor ds can cross over zero risking in triggering a momentarily negative B’e. This condition has been relaxed to only F 51$ 0, implying only F cannot cross zero. For several practical purposes, like for the wheelchair for example, which moves with small, near constant speeds, in one direction (either forward or backward), this controller provides an adequate solution. Thus Theorem 4.3 can be applied by itself for many situations, whereas Theorem 4.1 applied 86 by itself imposes the addition restraint of turning in only one direction which is not very practical. Simulation 4.3 shows the benefits of the new controller. Although these are significant improvements, the question of what happens when F = 0 still remains. This will be addressed in Section 4.7. In the next section we will address the winding up nature of estimates in presence of saturation and dynamics of the actuator. SIMULATION 4.3 Simulation was performed under the following scenario. The mass and mass moment of inertia of the combined wheelchair and occupant is chosen to be M = 60 kg, J = 2.25 kgm2 (4.95) The reaction force R and reaction moment T are assumed to be R = 30 N, T = 0 Nm (4.96) We assume the initial values of the parameter estimates in Eqs.(3.8) and (3.9) to be if (0) = [ 40.0 10.0 ] (4.97) 433(0) = [ 1.0 0.0 ] ' (4.98) in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 10, [(4 = 1, 21 = 10 and 22 = 10. The desired trajectories were chosen so as to allow for changes in sign in ds = dm tanh(d) and consequently d; as it'd = 1 + sin(0.02t) (4.99) ('9', = sin(0.2t) (4.100) along with initial conditions xd = xd = 99 = 09 = 0. These trajectories are sufficiently rich such that W in Eq.(2.31) is persistently exciting. The simulation criterion are very similar to that of Simulation 4.1 except that a value of zero has been chosen for T. The value of T was chosen to be zero so that d, may go 87 3m 1 r 1 I I 200 100 ex (mm -100 06 0.4 0.2 69 (deg) -02 . 150 F (N) 8' Ur O 8 d’s (m) e§§°§9 I .9 ds (m) ebb co 882°28 30 40 50 60 time (sec) O n O N 0 Figure 4.9. Simulation 4.3: Plot of error variables ex and 89, and control inputs, F, d, and 4 88 U) C 111r 1 1 1 1 . 30 t1me (sec) Figure 4.10. Simulation 4.3: Plot of parameter estimates both positive and negative depending on the trajectory. Otherwise with a non zero T, d, could more or less be restricted to one side to counter its effect. The other difference is the introduction of the gain Kd = 1. The simulation results are presented in Figs.(4.9) and (4.10). Fig.(4.9) shows the familiar plots of ex, e9, F, d; and (is, in that order. As always the errors are seen to converge to zero. The force does not cross over zero. It can be seen that d, and d; traverse on either side of zero without problems. It is also seen that d; achieves asymptotic tracking of ds. Fig.(4. 10) shows the estimates going to their actual values. 4.6 Resetting of Estimates to Prevent Windup In this section we will present the results with the resetting of estimates when the condition 82 = 0, B9 < 1 is satisfied. The analysis in Section 3.3 still holds true since none of the variables have changed. The additional term in theLyapunov equation, 89, can also be 89 shown to be continuous since there is no change in d, and dg. The next theorem provides the technique for resetting of estimates in presence of actuator saturation and dynamics. Theorem 4.4: For the dynamical system described by Eqs.(4.l) and (4.2), the equi- librium point (81,82,6,,69,ed) = (0,0,0,0,0) is asymptotically stable for the following control law: F = F, d = ‘i(Mr) Fr ds = dm tanh(d) - 1 (15+ F[—F]ez+ed, [—-F]e2ed > 0 , d ds+ed, [—F]ezed S 0 where F, and M, are given by, F, = Mfd+llfiéx+R+Kl e1 M,- = féd+AQfe9+T+K2e2 and estimation laws: (I, = -P—1.4§e1, (59 = -P_lAg€2 430=Be<50(tj), €2=Oand39<1 provided F 75 0. Proof: The proof of Theorem 4.3 is still valid. SIMULATION 4.4 (4.101) (4.102) (4.103) (4.104) (4.105) (4.106) (4. 107) (4.108) (4.109) The conditions for this simulation were chosen as follows. The mass and mass moment of inertia of the combined wheelchair and occupant is chosen to be 90 M = 60 kg, J = 2.25 ltgm2 (4.110) The reaction force R and reaction moment T are assumed to be R=30N, T=5Nm (4.111) We assume the initial values of the parameter estimates in Eqs.(3.8) and (3.9) to be 63‘ (0) = [ 40.0 10.0 I (4.112) 1133(0) = [ 1.0 0.0] (4.113) in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 3, [(9 = l, 111 = 10 and Ag = 10. The trajectory is chosen as follows (4.114) ,, { 1.0 m/sec2 ogtSl secs xd = 0.0 m/sec2 t > 1 secs 0.0 rads/sec2 0 S t < 20 secs 0,, = 0.5 rads/sec2 20 s t < 21 secs (4.115) 0.0 rads/sec2 t Z 21 sees and the maximum value for d3, (1,, is chosen as 0.175 m. The simulation results are presented in Figs.4.11 through 4.14. Figs.4.ll and 4.13 are the results of the simulation without the new modification and Figs.4.12 and 4.14 show the results of simulation with the new modification in place. In both cases it can be seen that the errors converge to zero. However in the second case the convergence is faster around 30 < t < 40 sec as against 60 < t < 70. It can also be seen that the estimates have been brought back to lower values during the resetting. 4.7 Dealing with Loss of Turning Moment when F = 0 In this section we address complete loss of turning moment due to F = F, = 0. The treat- ment of this situation is different from that in Theorem 4.2, since we will not forcibly set 91 U! 0 ex (nun) 8§T I M O O )- p—r O 32 CU! I M 1 .L. c: 88 69 (deg) I N O O F(N) '8 )6: .. age-go 88888 8 L ’\/\ ' i I SI l L 1 I L 20 30 40 50 60 70 time (sec) Figure 4.11. Simulation 4.4: Plot of error variables, ex, 82 and 89 and control variables F and d; without modification in estimates 92 Hfl M O —( -1 ex OHHD c>gggg 1 I~JI C P I T I I I I No.05 - 4 37,—0.1 — .11... .1 g _ [1 - -02 1 1 1 1 1 1 0 10 20 30 40 50 60 70 thne(mu» Figure 4.12. Simulation 4.4: Plot of error variables, ex, e2 and e9 and control variables F and d’, with modification in estimates 93 -20 I I I I 10 20 30 40 50 60 70 time (sec) Figure 4.13. Simulation 4.4: Plot of parameter estimates without modification 41.5 1 A M (Kg) g I (Kg 1112) MN) 8. T (Nm) 8 I I I I L I 1 l I T 10 20 30 40 50 60 70 time (sec) Figure 4.14. Simulation 4.4: Plot of modification in parameter estimates 94 F = 0 at any time. Hence the only situation F = 0 will be when F, is also zero. Thus this problem is more closely related to the loss of turning moment without actuator dy- namics that was discussed in Section 3.4. Please refer to Section 3.4 for more details. All information in Section 3.4 until start of Theorem 3.3 is pertinent for this case also. In this section however we will be presenting a new theorem that addresses this case along with the dynamics of the prismatic joint included. This theorem can be considered to be the counterpart of Theorem 4.2, which was presented without the closed loop Controller. As was the case in the previous chapter, we will not include the resetting presented in Theorem 4.4. Theorem 4.5: Consider the dynamical system described by Eqs.(4.l) and (4.2). For this system, with estimation errors defined by Eqs.(3.8) and (3.9), the equilibrium point (121,122,, 6,, 69,190,) = (0,0,0,0,0) is asymptotically stable when |F,| > s and stable other- wise, for the following choice of control inputs: F = F, (4.116) 1 d = ---(Mr) (4.117) F, d, = sat(d,dm) (4.118) . l . d — —F - , —F - >0 ds+ed, [—-F] e21-ed S 0 where F, and M, are given by, F, = Mid+llMe°x+R+K181 (4.120) M, = fed,+42fe9,-+T+K2e2, (4.121) and estimation laws: ('5, = —F‘1A,{el (4.122) ‘ ____ -—1 T , ‘39 . P A982" W" >8 (4.123) ¢91¢9=0r IFI'ISE where 8, 8 > 0, is some small number. 95 Proof: Consider the Lyapunov function candidate V6 = gm? + $1.3, + £61156: + £63 P69 + $423, (4.124) which is similar to the expression of V5 in Eq.(4.82). The only difference is that the ex- pression of V6 replaces e2 in the expression of V5 with 321'. As a result we can show thath satisfies V6 = —K1e% — B9 kzeg, — a}, (4.125) when |F,| > 8. Since |F,| > 8 ensures B9 > 0, we have V9 5 0. Following the same logic as in Theorem 2.1 in Chapter 2, we can show that the equilibrium point (e1 ,ez,-, 6,, 69, ed) 2 (0, 0, 0, 0, 0) is asymptotically stable. When |F,| S 8, the derivative of the Lyapunov function, through direct differentiation is given by the expression V6 = M8181 +Jezé2i + 6xTP$x + Jgrptfg +éd ed (4.126) which then takes the form v6 = —K1e3f - e}, g 0 (4.127) Equation (4.127) is obtained from Eq.(4.126) by substituting 69 = 0, which follows from Eq.(4.123), and 321' = 0, which follows from Eq.(3.50) and (3.52). From Eq.(4.127) we claim that the equilibrium point (el , 82,-, 6,, 69 , ed) = (0,0,0,0, 0) is stable. Remark 4.3: We need to stress here that we do not expect the condition |F,| S 8 to come into play often. Then the result may be useful because it shows that the system will remain well behaved in some sense. If the condition |F,| g 8 occurs a finite number of times, then the equilibrium points will asymptotically converge to zero. However if the condition |F,| g 8 is satisfied very frequently the switched system can become unstable. The above theorem does not comment on the properties of the equilibrium for the switched system 96 but only the sub systems subject to the conditions. It should also be noted that the resetting presented in Theorem 4.4 was not included for clarity and to avoid confusion with the current resetting to zero. Remark 4.4: The controller in Theorem 4.5 has some benefits over the controller presented in Theorem 4.2. Here, there is no redefinition of trajectory in the x coordinates. Thus Corollary 3.2 is still valid, which would imply that the trajectory tracking in x coordinates is still accomplished without problems. The condition for asymptotic stability has also been relaxed to only being |F,| > 8. SIMULATTON 4.5 The mass and mass moment of inertia of the combined wheelchair and occupant is chosen to be M = 60 kg, J = 2.25 kgm2 (4.128) The reaction force R and reaction moment T are assumed to be R = 30 N, T = 5 Nm (4.129) We assume the initial values of the parameter estimates in Eqs.(4.6) and (4.7) to be (133(0) = [ 40.0 10.0 ] (4.130) 133(0): [ 1.0 0.0] (4.131) in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 10, K9 = 1, 21 = 10 and 51/2 = 10. The desired trajectories were chosen so as to allow for changes in sign in ds = (1,, tanh(d) and consequently d; as it, = sin(0.1t) (4.132) 0,, = sin(0.2t) (4.133) 97 gm: : 6‘ o _ q -50 1 l 1 1 40 1 1 1 1 1 1 a -4 0 3 0 i” 4th— § " - _40 1 1 1 1 1 1 1m 1 1 1 1 1 .' 1 g 0 1— HVI —i -50 1 1 1 1 1 1 10 1 1 1 1 1 1 A 5 ” " E 0 M e1,...11......_.__ as -s— — -10 1 1 1 1 l 1 20 r 1 t t t 1 €- 10 — - v o ,- 22‘ 3 -10 - i 4 -20 m 1 _L 1 _l 1 0 2 60 time (see) Figure 4.15. Simulation 4.5: Plot of error variables 8, and 89,-, and control inputs, F, d; and ds 98 i‘ (Nm) Figure 4.16. Simulation 4.5: Plot of parameter estimates 99 along with initial conditions xd = id = 9d = 9d = 0. These trajectories are sufficiently rich such that W in Eq.(2.31) is persistently exciting. The simulation results for 8 = l are presented in Figs.4.15 and 4.16. Figure 4.15 shows the error in x coordinates ex, the error in 9 coordinates egi, the control input F, control input d; and the saturated signal ds in that order. It can be seen as in previous simulations that the errors go to zero. The region between the vertical lines show the instances when egi remains constant. These correspond to situations when F g 8 at approx. t = 37 secs and t = 57 secs. These periods are slightly larger than the ones in simulation 4.2, where we had used 8 = 0.1. It can also be seen that ds changes sign during these instances. The value of (is has been saturated to a maximum of 10.0 m. This is obviously an impractical value, however as it has been already said, it has been chosen so as to make the graph more readable and observe the convergence faster. Further the fact that the trajectory is chosen to be very rich with very high rates of turning and acceleration also necessitate such a large maximum value. In the succeeding chapters we will be discussing methods to provide more torque when d gets saturated at a more practical value. Figure 4.16 shows the plots of the estimates. It can be seen, similar to the previous sim- ulation, that the always tend to go toward the original parameter values when the condition F > 8 is satisfied. It can also be seen that they are set to zero when IF I g 8. 100 CHAPTER 5 Generation of Additional 'lhrning Moment by Varying the Angle of Push 5.1 Motivation The results obtained in chapters 3 and 4 are based on a dynamic model of the wheelchair where the force applied by the robot is perpendicular to the forearm that grasps the wheelchair - see assumption Al in Chapter 2. This assumption was justified by the fact that the robot platform is holonomic and it can move sideways to maintain the arm perpen- dicular to the line joining the wheels of the wheelchair at all times. As a direct consequence of this assumption, the turning moment applied to the wheelchair is completely dependent on the product of the control variable d and the pushing force F. If the trajectory requires a small magnitude of pushing force, the turning moment capability is significantly reduced since the control variable d has a physical limit. This will cause errors in trajectory tracking when d reaches its physical limit. In this chapter we propose to vary the angle of push to provide greater turning mo- ment when required, for the same level of pushing force. The angle of push, defined by {3 E {-72:40 g] in Fig.5.], was maintained at zero value for the results presented in chap- ters 3 and 4 to comply with assumption A1. By removing this assumption and actively controlling fl at a value other than zero, the additional moment obtained is given by the 101 relation —than ,6, where h is the horizontal component of the distance between the point of application of the force and the point of contact of the wheels with the floor, as shown in Fig.5.]. The negative sign in the term —than[3 is due to the fact that a negative angle in B results in a positive turning moment. This is similar to the notation used in Chapter 3, where a positive displacement in d was defined to generate a negative turning moment. Mth the additional moment obtained by varying the angle of push, the dynamics of the wheelchair is described by the equation M5: = F—R (5.1) 16' = —Fd§—than(B)—T (5.2) 1——‘”——-1 robot platform (a) Figure 5.1. Varying the angle of push, B, to achieve greater turning moment. 5 .2 Preliminary result Consider the following choice of [3 ' 102 d—d; B = arctan (5.3) Substitution of the above expression for B in Eq.(5.2), results in the wheelchair dynamics M56 = F—R (5.4) 16 = -—Fd—T (5.5) which are identical to Eqs.(2.5) and (2.6) in Chapter 2. If we assume IF I aé O, the results of Theorem 2.1 become applicable. The choice of B in Eq.(5.3) indicates that the angle of push is only varied when there is discrepancy between the commanded value of d and the actual value, d;. If we ignore the dynamics of the prismatic joint, for example, the angle of push will be maintained at zero value till it reaches its physical limit. In the sequel we present simulations with the additional control provided by the B. SIMULATION 5.1 The objective of this simulation is to show the effect of actively controlling the angle of push, B, to counter the effect of saturation and dynamics of the prismatic joint actuator. The results of the simulations are presented in Figs.5.2 through 5.4. The conditions for the simulations are as follows: The mass and mass moment of inertia of the wheelchair and occupant combined are assumed to be M = 60 kg, J = 2.25 11ng (5.6) The reaction force and reaction moment are assumed to be R=30 N, T=5Nm (5.7) We assume the initial values of the parameter estimates to be 43,3”(0) = [ 40.0 10.0 ] (5.3) 103 «135(0) = [ 1.0 0.0 ] (5.9) in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 10, A] = 10 and L2 = 10. The desired trajectories were chosen as 2m I I I I I I I I A 150L a Em- . K 0 50 .. O . -50 4 1 1 1 1 1 1 1 8 F I T T I I I I I .1 ’3? 6 ‘ ‘ 1: L - v 4 1- _ 3 . _ 2 . - o L! l O 10 20 3O 40 50 60 70 80 9O time(secs) Figure 5.2. Simulation 5.l: Plot of error variables ex and eg it‘d = sin(0. l t) (5.10) 6,, = sin(0.2t) (5.11) along with initial conditions xd = id = 9d = Gd = 0. These trajectories are sufficiently rich such that W in Eq.(2.31) is persistently exciting. This will ensure convergence of parameter estimates to their true values. Figure 5.2 shows that errors in the x and 9 coordinates converge to zero. Similarly, Fig.5.3 shows the convergence of the parameter estimates to their original values given in 104 M (Kg) 1(Kgm2) N I ill I I I I I I I I I I I I I I I I I I I I 1 I I I < R(N) U) o r 1 1 1 1 1 1 1 1 1 1 1 1 1 1 T (Nm) < l l l l l I l l 0 10 20 30 4O 50 60 7O 80 time (sec) Figure 5.3. Simulation 5.1: Plot of parameter estimates time (sec) Figure 5.4. Simulation 5.]: Plot of F, d5, d; and B 105 Eqs.(5.6) and (5 .7). The smooth convergence of the error variables and parameter estimates in Simulation 5.1 is similar to that of Simulation 2.1 in Chapter 2 (see Figs.2.6 and 2.7). This is not surprising since the choice of B in Eq.(5.3) cancels the effects of saturation and dynamics in the prismatic joint actuator and reverts the dynamic equations of motion to those given in Eqs.(5.4) and (5.5) which are identical to Eq.(2.5) and (2.6) in Chapter 2. Figure 5.4 shows the plots of the variables associated with pushing and turning of the wheelchair, namely, F, ds, d; and B. It can be seen that the angle of push, B, orients itself to cancel the effects of saturation and dynamics of the prismatic joint. As F becomes small and changes sign d and B reach their maximum values and change sign. It can be observed that the saturation value of d is set at a practical value of d, = dm = 0.15 m. This is different from simulations in Chapters 3 and 4, see Fig.3.2, for example, where large values were chosen to allow for the high rates of turning in the trajectory. Although there are small movements in B throughout the simulation, large changes occur only after saturation of the prismatic joint. This can be seen at approx. t = 36 sec and t = 56 sec. This implies that the additional turning moment is not generated unless the prismatic joint reaches its physical limit. In the next section we redefine B to exploit the complete potential of this degree of freedom. 5.3 Generation of additional turning moment We modify the definition of B in Eq.(5.3) to I l3 = arctan [Ed—hi] (5.12) where K4 is some positive constant. Substitution of the above equation in Eq.(S .2), results in 106 Mic' F—R (5.13) 19' = —K4Fd- T (5.14) From the above equations, that describe the dynamics of the wheelchair, it can be seen that the applied moment is —K4 F d. For values of K4 greater than unity, it can be seen that the applied moment is greater than —F d, which is the moment applied when the angle of push is maintained at zero value. To investigate the effect of variation in the angel of push, and in the new choice of beta in particular, we compute Be, which is the ratio of the saturated moment to the required moment, as follows _—K4Fd _ K4, F750 39— Mr _ {0, F=O (5.15) If F 75 0, 89 = K4 > O and the result of Theorem 3.1 becomes applicable. This implies that the additional degree of freedom associated with B can compensate for the negative effects of saturation and dynamics associated with the prismatic joint. Furthermore, for 89 > 1, a significant portion of the moment required is provided by varying the angle of push without relying solely on the prismatic joint displacement d. The case of F = 0 will be addressed later in the chapter. Before we present the simulation results, we list the advantages of the choice of B in Eq.(5.l2). 1. Since 39 = K4, the speed of convergence of the error in the 9 coordinate can be increased by choosing K4 > 1. This follows from the expression of the derivative of the Lyapunov function in Eq.(4.93). 2. As already stated above, the turning moment is produced by both the control variables B and d, even when d is not saturated. This reduces reliance on the prismatic joint alone and therefore saturation time of d can be reduced or even eliminated. 107 The simulations presented next show the effect of using a gain K4 = 10. SIMULATION 5 .2 The initial conditions and parameter values for this simulation are identical to those used in Simulation 5.1. The results of Simulation 5.2 are presented in Figs.5.5 and 5.6 and compared with the results of Simulation 5.1 in Figs.5.2 and 5.4. A comparison of Figs.5.5 and 5.2 indicates that the speed of convergence of errors in the x coordinate are similar. However the error in the 9 coordinate converges faster for Simulation 5.2 in comparison to Simulation 5.1. This can be attributed to the choice of K4 = 10 which results in a tenfold increase in the effective turning moment. Another important observation can be made by comparing Figs.5.6 and 5.4. In particular, d remains saturated for a shorter period of time for Simulation 5.2 in comparison to Simulation 5.1 (at around I = 36 and 56 sec). This is due to the fact that the turning moment produced by the control variable B augments that produced by the control variable d. Furthermore, the control variable B is active all the time, unlike in the previous simulation where it is active only when d is saturated. Thus far we have assumed that the commanded angle B can be realized instantaneously. This is clear from Simulations 5.1 and 4.2 (Figs.(5.4) and (5.6)) where B is seen to jump between +90° and —90°. This will not be feasible in hardware implementation due to finite bandwidth of actuators. In the next section we address this issue. 5.4 Effect of Robot Dynamics on the Angle of Push In the previous section it was assumed that the commanded value of B can be realized instantaneously. In reality, the actual value of B, B’, will be different from the commanded value of B due to the dynamics of the robot in the lateral direction]. The commanded value of B in Eq.(5.12) will serve as a reference signal and the controller in the robot will strive 'The angle of push, B, is measured by an encoder. In the absence of an actuator, it is a free joint but it is indirectly controlled by the lateral motion of the robot (y direction) which is possible because of the holonomic structure of the robot. 108 200 I T 1 1 r I T I 150_ . ex Onnfi § 1'4 I I I I r I T T L2- - 03_- - 015- 4 04-. a 02 - - 69 (deg) .O_2 1 1 L 1 r 1 1 1 0 10 20 30 40 50 60 70 80 90 finuaamxs) Figure 5.5. Simulation 5.2: Plot of error variables ex and eg to reduce the error e I3 , defined as 313 =fi_fi’ (5.16) to zero. A schematic of the controller is shown in Fig.5.7. A first-order transfer function is used to model the lateral dynamics of the robot and the time constant of the dynamics is assumed to be r3. The goal of this section is to design the controller in Fig.5.7 that will guarantee asymptotic tracking of the reference trajectories in the presence of saturation and dynamics of the prismatic joint actuator and lateral dynamics of the robot. If we take the dynamics of the robot in the lateral direction into account, the equations of motion of the wheelchair can be expressed in the form 109 A 0.2 l 1 1 1 1 I I I g 0.1 - =1: 0 or - -02 1 1 L r L 1 1 1 a 1m 1 f 1 1 1 l I I g 50 n 0 -50 .1w 1 1 1 1 1 1 1 1 O 10 20 30 40 50 60 7O 80 time (see) Figure 5.6. Simulation 5.2: Plot of control inputs, F, d3, d; and B Robot dynamics us 1 3' 133+] Controller Figure 5.7. Standard closed loop position control of angle B 110 M56 2 F-R (5.17) 16' = _ng —than(B’) — T (5.18) The above equations are very similar to Eqs.(5.l) and (5.2) and the difference is that B is replaced by B’. Using the next theorem we will show that the following choice of nonlinear controller I-Fhl(1+tan(l3)tan(fi’))ez KB (1 +tan2(e,3)) in Fig(S .7) will result in asymptotic tracking of the reference trajectories, provided F 99 0. uB = 15 5+ +tan(e5) +B’ (5.19) Theorem 5.1: For the system given by qu.(5.17) and (5.18), the equilibrium point (e1,e2,$x,69,ed,ep) = (0,0,0, 0,0,0) is asymptotically stable for the reference control inputs for F and d : F = F, (5.20) d = —-£,;(Mr), (5.21) the control law for d: d; = d“, + ed (5.22) the reference control input for B: B = arctan 55517131; (5.23) the control law for B: {-Fh](1+tan(fi)tan(l3'))e2 ‘3 = [3+ Kfi(l+tan2(ep)) +tan(eB) (5.24) and estimation laws: «1. = —P"A?£ e1, (5251 111 $9 = —P"A€e2 (5.26) where F,, M, and (Is are given by, F, = de+21Mex+R+K1e1 (5.27) M, = féd+AQfeb+T+K2e2 (5.28) provided F 7e 0. Proof: Consider the Lyapunov function candidate 1 1 1- - 1- .. 1 1 v7 = Em? + 512% + 54131041, + 5413mm + 5K, e3, + 5K3 m2 (ep) (5.29) which is positive everywhere except at the origin (e1,e2,<§x, $9,ed,efl) = (0,0,0, 0,0,0), where it is zero and K4, K5, are positive constants. By differentiating V7 with respect to time, we get V7 = Mele'1+Je2e'2 + 631%; + égpé'g + ed éd + KB tan(ep) secz (e5) éB (5.30) We obtain the derivatives e‘l and e'2 from Eqs.(2.9) and (2.10) as follows e'l = éjt+lléx (5.31) 8'2 = éb + 1289 (5.32) By multiplying Eqs.(5.3l) and (5.32) with M and J, respectively, and substituting Eqs.(5.l7) and (5.18), respectively, we get Mél = Mx'g —Mjc'+MAI e, = my — (F, —R) +1421 2, (5.33) = (xd+21é,)(M—M) + (R—R) -K1e1 (5.34) 112 Jé2 = 19;, —Jé +JAQé9 = 10;, — (—F d; —Fh tan(B') — T) whee = 19;, — (—F d; —than(B) +Fh tan(B) —Fh tan(B’) - T) whee = 19L: - (-K4Fd- T) +132ée + I-Fh](tan(fi) -tan(13')) = 19L: - (-K4F d - T) +1124) + {-Fh](tan(13) -tan(l3')) = 19d - (39 Mr - T) +132 89 + H” h] (tan(13) - t2111(13’» = (éd+3/zé9) (J-Boj) + (T-Be 7) —Be K282 +I—F h] (mum) —tan(B’)) (5.35) We obtain Eq.(5.34) by substituting for F = F, from the expression of F, from Eq.(5.27). Similarly we obtain Eq.(5.35) by substituting the expression for 89 from Eq.(5.15) and the expression for M, from Eq.(5.28). Thus we get, Me'1=Ax¢7x —K1e1 (5.36) 162 = A9159 — Be K282 + {-Fh] (WW) - ta1103'» (5-37) Substitution of the above equations in Eq.(5.30), yields . ~ ~ n. T .1. r. T :. . V7 = €1Ax¢x+82Ao¢e-K1ei—30K28%+¢x P¢x+¢9 P¢e+€ded +[—Fh] (tan(B) — tan(B'))e2 +Kfl tan (e3) see2 (8B)éfl (5.33) Using the estimation law in Eq.(5.25) and (5.26), we get V7 = —K1e%—Bg K263+Kd ed éd-I- [—Fh] (tan(B) —tan(B’))e2+KB tan(eB) SIBC2 (efi)éfi (5.39) Substituting for the control law for the prismatic joint ((11) we get, 113 177 = 414—39512; — 19,123+ [—Fh] (tan(B) —tan(B’))e2 +K,3 tan(e,,) sec2(e5)éfi (5.40) Using the trigonometric identity, I t2111(13)-tan(l3’) - = 5.41 ““3 B) 1+tan<13>tan<180 ‘ ’ in above equation, we get, V7 = —K,e% — Be Kzeg — K, e}, + [—Fh] tan(B — 13’) (1 + tan(B) tan(B'))e15.42) +KB tan (e3) 8602 (eB) 8B (5.43) Using the trigonometric identity, sec2(efi) = 1+tan2(efi) (5.44) we get, V7 = —K1e% —Bo K24 — Kue§+1—Fh1tan<13 —18') <1+tan<13> tan<13’)>e2 +K5 tan(eB) (1 +tan2(el3))é5 (5.45) which can be written as V7 = -K1 e? — Be [(28% — Kde5+tan)e2 (546) +193 (1 +tan2(e,3)) (B — B’) (5.47) Substituting the control law for 13', '1 _ - I-Fhl(1+tan(l3)tan(fl’))ez 5 48 fl _fi+ K3(l+tan2(e’3)) +tan(e )7 ( - ) 114 in Eq.(5.47), we get v7 = —K1e%—39K2e§—Kde§- K5 tan2(efl) (5.49) Since F 79 0, 89 = K4. So V7 is negative semi definite. Following the footsteps of Theorem 2.1, we can show that the error variables, e1, e2, ed, e 5 and the parameter estimation errors, 5x and 69, asymptotically converge to zero. Remark 5.1: The controller for the prismatic joint in the above theorem was chosen as 4=4+Q am) This is different from the switched controller used in Theorem 4.4 in Chapter 4 in that the term containing —F e2 has been excluded. With B compensating for saturation and dynamics of d, the term containing -F e2 has been included in the controller for the angle B. The reason for using a switched controller for the prismatic joint in Theorem 4.4 is to avoid d; exceeding the physical joint limit. In the present theorem, this problem has been addressed by generating additional turning moment using B and avoiding the tendency of the prismatic joint to overshoot the maximum limit. Later, we will use a switched controller for B to impose a limit on the maximum value that it can assume. SIMULATION 5.3 The initial conditions, parameter values and the controller gains were chosen to be the same as in Simulation 5.2 with the exception of the trajectory and the value of T. The trajectory is given by it'd = 1+sin(0.02t) (5.51) 6,, = sin(0.2t) (5.52) and the value of T is assumed to be zero. These changes are made to ensure that F does not cross zero but (I and B do cross zero. Figures 5.8, 5.9 and 5.10 show the results of the 115 250 T I I I I 200 150 ex (mm) 69 (deg) .O_] 1 1 1 1 1 0 10 20 30 40 50 60 time (sec) Figure 5.8. Simulation 5 .3: Plot of error variables ex and eg ___-_— __————_— ___ ——Ia—r— M(Kg) $383 (H (Kg m2) -- N . 3O t1me (sec) Figure 5.9. Simulation 5.3: Plot of parameter estimates 116 0.02 . , . . . go? 0 _ V B -002: 3 1 I I I I I <33 __ -1 3 0 _ Era. 1 - o 10 20 30 40 50 60 time (sec) Figure 5.10. Simulation 5 .3: Plot of control inputs, F, d_(., and B’ simulation. The errors in Fig.5.8 and the parameter estimates in Fig.5.9 converge to zero and the original parameter values, respectively. The plots of F, d; and B’ are shown in Fig.5.]0. The values of d and B are quite small - this can be attributed to the large positive value of F. In the succeeding sections we will deal with situations like saturation in B and loss of turning moment due to F becoming zero wherein the plots become complex than that presented in this simulation. 5.5 Addressing Saturation in Angle of Push In the previous section, the range of B was assumed to be [— 32‘ , 329] for the sake of simplicity. In this section we impose a joint limit on B such that —Bm _<_ B S B)... B". < g. The motivation for imposing the joint limit on B is that when B is close to 325, the robot may be very close to the wheelchair and may even come in contact with it, depending on the length of the rear arm. Also, in such a configuration, the forward pushing force (given by the expression F / cos B) that the robot will have to generate for producing a desired force on the wheelchair (F = F,) will be very large. Although the limit is externally induced 117 through software, it can still be modeled as saturation. Thus we introduce 13s = saw, Bm) (5.53) 11 Bs Bm»---. -Bm B to v :____ ‘Bm Figure 5.11. Plot of B vs BS Figure 5.1] shows a plot of B, with respect to B. From this point onwards, B,- will be the reference signal for the robot and B; will be the actual angle of push. The equations of motion can therefore be modified to M56 = F—R (5.54) 10' = —F(d;+htan,6,’)—r (5.55) To address the control problem in the presence of B saturation we redefine some of the variables as described below. 1. Equation (5.12) provides our earlier choice of B. It is now chosen as M (5.56) =tan Barc h In Eq.(5.12), B was a function of d and dg. In the above choice, it is a function of d and d; which implies that the angle of push only compensates for the saturation but not for the dynamics of the prismatic joint. 118 2. In Eq.(3.6) in Chapter 3, 39 was defined as the ratio of the saturated moment to the required moment. When the angle of push is not identically zero, the definition of Be is modified to the form _ —Fds — Fh tan(B_,-) _ Mr 39 (5.57) In the sequel we will establish thath > 0 provided F 75 0. Recall, a positive value of Be is required for asymptotic stability. 3. The error between the commanded and the actual angle of push is modified to the form es = 18.. — 13; (5581 Assuming F 75 O, Eq.5.57 can be written as —Fds-thanBs —Fd d, htanBs = 7 + d (5.59) The first term on the right hand side of the above equation is positive since d and d; are the same sign. Using the fact that B and B, have the same sign and Eq.(5.56), we investigate the sign of the second term as follows thanBs _ 'thanB sgnI— ] — sea F. I = sg11-————K4dd_ds] r d,- = sgn K4—g] (5-60) 1 Clearly, the second term on the right hand side of Eq.(5.59) is positive or zero provided K4 2 1. This implies thath > 0 if K4 2 ]. We now present a control design to provide 119 asymptotic tracking of wheelchair reference trajectories in the presence of saturation and dynamics of the prismatic joint and angle of push. Theorem 5.2: Consider the dynamical system described by Eqs.(5.54) and (5.55). For this system, the equilibrium point (e1 ,e2, (15x, 69,ed,el3) = (0,0,0, 0,0,0) is asymptotically stable for the reference control inputs, F and d : F = F, (5.61) l d = ——(M,), (5.62) Fr the control law for d: . 1 . d — —F , —F 0 d; = s+Kdl 162+ed [ 1828.: > (5.63) ds+ed, [—F]e2ed 50 the reference control input for B: [3 = arctan 5:425:45 (5.64) the control law for B: B; = B. + ”"1“ “memWez +tan(ep). 1411104108.) -tan<13.:»e2 > 0 KB (1 +tan2(efl)) 3s +tan(ep), [‘F 17] (tan(13s) —tan(B§)) 92 S 0 (5.65) and estimation laws: 615'. = —P“Ai e1, (5.66) $9 = -P“A£ez (5.67) 120 where F,, M,, d,- and B5 are given by, F, = Mid+llMéx+R+Kle1 (5.68) M, = f9d+hfeb+T+K2e2 (5.69) d, = dmtanh(d) (5.70) B, = Bmtanh(B) (5.71) provided F aé 0. Proof: Consider the Lyapunov function candidate 1 1 1 - .. r .. .. 1 1 V3 _—_ 5M6} + 51.3 + 5111me + 51113101119 + EK" e}, + 5K5 tan2 (eg) (5.72) which is positive everywhere except at the origin (e1,e2,$x,$9,ed,efi) = (0,0,0,0,0,0), where it is zero and Kd, K5, are positive constants. By differentiating V8 with respect to time, we get V8 = Mele'l +Je2e'2 + 4595, + 1531069 +Kd ed ed +Kp tan (eg) see2 (e5) .2, (5.73) We obtain the derivatives e'l and e'2 from Eqs.(2.9) and (2.10) as follows e'l =ég+lléx (5.74) e‘z =éb+lgeb (5.75) By multiplying Eqs.(5.74) and (5.75) with M and J, respectively, and substituting Eqs.(5.54) and (5.55), respectively, we get Mél = Mx}, —Mx'+Mll e, = Mr}, — (F -—R) +M/‘Ll e, = (xd+21é,)(M-M) + (R—R) —K1 e1 (5.77) 121 Jéz = Jag—Jéwageg = Jé,-(-Fd;—than(13,’)—T)HAM, = 10;,—(—Fd,—than(13,)+Fd,+than(13,)—Fd;—than(13,’)—T)+J)12é9 = 198-(-K4Fd-T)+chée+I-Fhl(tan(l3s)-tan(fis’))+[-F1(ds—d§) = Jéa-(-K4Fd-T)+J/‘2éo+[—Fh] (tan(18.)—tan(13;))+1—F1 (e1) ‘ = 194 - (30 M, - T) +142 80 + l—Fh] (“HUM - tan(f5§))+[-1"‘](6’d) = (éd+42é0) (J-Bej) +(T-BOT)-BeK282+[-Fh1(tan(l3s) -tan(l3§)) +[—-F] (ed) (5.78) 1 ' We obtain Eq.(5.77) by substituting for F = F, from the expression of F, from Eq.(5.]16). Similarly we obtain Eq.(5.78) by substituting the expression for 89 from Eq.(5.57) and the expression for M, from Eq.(5.117). Thus we get, Me°1=Axox -K1e1 (5.79) J 6'2 = 40156 '- 30 K282 + [‘1’ h] (tan(Bs) - ta1103.9) + [*F] (ed) (5-30) Substitution of the above equations in Eq.(5.73), yields . .. . .... .:. .. T .1. ' V8 = 81 Ax¢x + €240¢0 - Krei -Be K283 + ¢xTP¢x + 4’0 P¢0 +Kd ed ed +I-Fh] (tan(l3s) - tan(B§))e2 +KB tan (8p) 8602 (efl)éfi + [—F] (64) 82 (5.81) Using the estimation law in Eq.(5.113) and (5.114), we get V8 = -K1€i-30K2€%+Kdedéd+l—Fh](tan(fis)-tan(l3s'))82 +193 tan(e,,) see2 (eye, + {—F] (ed)e2 (5.82) 122 The rest of the proof will proceed according to the conditions whether [—F] (ed) e2 > 0 or not and whether [—F It] (tan(Bs) — tan(B§)) e2 > O or not. In order to simplify things we propose breaking down of the Lyapunov derivative, V3 into three parts, namely V3 = V30 + V31, + V3,: (5.83) V80 = —K1€%-Bg [(28% S 0 (5.84) V86 = Kd ed éd + {-17} (ed) 82 (5-85) V8c = {—Fh] (mums) - t3111031))6’2 +Kp tanks) 8602_(e)3)ép (5.86) Since F 9’: 0, 39 > O and V3,, 3 0. We next analyze 17%. Substituting the control law for the prismatic joint in ng we can get, V86 = Kd ed éd + {—F] (ed)ez (5-87) _ 2 _ = Kde , [ F]e2ed >0 (5.88) "Kd 8,; +1‘F1(ed)321 {—Flezed S 0 3 —K4 e5 (5.89) Next lets consider the case when [—F h] (tan(Bs) — tan(B§)) e2 > O in the definition of Vgc, Using the trigonometric identity, tanws — [3,!) = 3:513: 13: ; :15? 3;) (5.90) in V3,, we get, V8c = [‘F h] tan(l3s " fig) (1 +tan(Bs) tan(13s')) 32 +KB tan(e,3) 8602 (efi)éfl (5.91) Using the trigonometric identity, sec2(efl) = 1 +tan2(efi) (5.92) 123 we get, V8c = {-Fh]tan(l3s-I3§)(1+tan(13s)tan(fis'))62 “‘13 tan(e,3) (1 +tan2(ep))éB (5.93) which can be written as V... = tan(ep)(I-Fh](1+tan(fis) wanes +193 (1+ran2(es))(Bs—B;) (5.94) Substituting the control law for B for this case given by, -r_ - [—Fh](1+tan(Bs)tan(B§))e2 fis fis‘l' Kfl(1+tan2(el3) + tanep,) (5.95) in Eq.(6.93), we get v3, = —K5 tan2(e,3) (5.96) Next lets consider the case when [—F h] (tan(Bs) — tan(B§)) e2 5 O in the definition of V3,. Substituting for the corresponding control law of B we can obtain Vsc = {-Fh](tan(Bs)-tan(fi§))e2—Kp tanzte31sec21eg) (5.97) Thus Vgc can be written as V80 = Kd ed éd + {—F] (ed) 82 (5.98) { 4% ta112(88), {—Fh1(tan(l3s) -tan(l3s'))ez > 0 = -Fh (mums) - t2W 1))82 (5-99) 4% tanz(€13) 8602071): {-Fh1(tan(fis) — t3111031))9'2 S 0 g 41,, tan2(eB) (5.100) 124 Thus assembling all the parts we get V3 3 —K1e%—39K2e§— 1rd,; -Kfl tan2(efl) g o (5.101) Following the footsteps of Theorem 2.1, we can show that the error variables, e1, e2, ed, e B and the parameter estimation errors, 5, and (139, asymptotically converge to zero. SIMULATION 5.4 Simulation 5.4 is performed to verify the results of Theorem 5.2. The conditions for the simulation are as follows: The mass and mass moment of inertia of the wheelchair and occupant combined are assumed to be M = 60 kg, J = 2.25 kgrn2 (5.102) The reaction force and reaction moment are assumed to be R=30 N, T=5 Nm (5.103) We assume the initial values of the parameter estimates to be “1(0) = [ 40.0 10.0 ] (5.104) (33" (0) = [ 1.0 0.0 ] (5.105) in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 10, 3.1 = 10 and IL; = 10. The desired trajectories were chosen as 2 . < < 55d = lOm/sec2 O_t_1 secs (5.106) 0.0 m/sec t > 1 secs 6,, = sin(0.2t) (5.107) along with initial conditions xd = 1,, = 9d = 9d = 0. It was noted in Simulation 5.3 that the values of d and B were very small. This was attributed to the large values of F. Therefore, in order to be able to observe the effect of saturation, the trajectory for x has been toned 125 down to a constant velocity motion. This is observable from Eq.(5.106). According to this equation the wheelchair accelerates at the rate of 1.0 m/s2 for 1.0 sec and then follows a constant velocity forward motion. The saturation values of d and B have been set at 0.15 m and 25°, respectively, which is observable in Fig.5 .13. Further the value of K4 has been chosen to be unity. This is done so that the effect of saturation is more observable in the plots. As a result of this, in Fig.5.l3, it can be seen that B, is activated only when d is saturated and not otherwise. This follows from the discussion in Section 5.2, where it is noted that, K4 = 1, implies that there is no simultaneous application of moment by use of the additional degree of freedom, B. The angle of push is used to produce moment only when d is saturated. In this simulation, B does not directly depend on d;, which is the actual position of the prismatic joint, but rather depends on ds. This is unlike Simulation 5.] where B was used to cancel out the effects of the saturation as well as the dynamics of the prismatic joint. The saturation of B will be more pronounced when we consider the case when F = 0. Figure 5.12 shows the errors. ex and eg, converging to zero and the estimates, f, R, and T, converging to the original values. 117! does not converge to the actual value of M due to unavailability of PE. in the x trajectory. 5.6 Resetting of Estimates to Prevent Windup In this section we will present the results with the resetting of estimates when the condition e2 = 0, 39 < l is satisfied. The analysis in Sections 3.3 and 4.6 still hold true since none of the relevant variables have changed. The additional term in the Lyapunov equation, e3, can also be shown to be continuous since there is no change in B5 and 13;. The next theorem provides the technique for resetting of estimates in presence of B saturation and dynamics. Theorem 5.3: Consider the dynamical system described by Eqs.(5.54) and (5.55). For this system, the equilibrium point (e; , e2, (15,, 69,ed,ep) = (0, 0,0,0,0,0) is asymptotically stable for the reference control inputs, F and d : 126 15 1 1 I I 7 ex (mm) o ‘e’; 2 l I -50 1 1 1 1 41 20 _ 69 (deg) 411- - M (K8) (Kg m2) U) .I < I I I I l R (N) 8 < T (Nm) < 0 10 20 30 40 50 60 time (sec) Figure 5.12. Simulation 5 .4: Plot of error variables ex and eg and parameter estimates 127 F (N) 8 ds(m) . g o d's (m) E I3 (deg) 888 fl'(deg) 888 O 10 20 30 4O 50 60 time (see) Figure 5.13. Simulation 5.4: Plots of F, (is, dg, B and B’ F = F, (5.108) 1 d = 7,014,), (5.109) the control law for d: d; : 4s+fig[-F]ez+edi l-F1826d>0 ds+edi [—F]e2ed $0 the reference control input for B: (5.110) (5.111) the control law for B: B + I-Fhl(1+tan(l3s)tan(fié))e f' K, (1 +tan2(efl)) 1’3 Hanks), I—Fh](tan(18s) - tan(l3§))e2 S 0 (5.112) 2 +un(e,,), {—1721 (mass) - tan(fls’))e2 > o 128 and estimation laws: 47x = —P“Afe1. (5.113) $9 = 4445122 (5.114) $9=Be¢ie(tj), e2=0andB9 <1 (5.115) where F,, M,. d, and B3 are given by, F, = de+théx+R+Kle1 (5.116) M, = féd+hgfeb+T+K2e2 (5.117) d, = dmtanh(d) (5.118) 13, = pmtanhui) (5.119) provided F 76 0. Proof: The proof of Theorem 5.2 is still valid. SIMULATION 5.5 The conditions for this simulation were chosen as follows. The mass and mass moment of inertia of the combined wheelchair and occupant is chosen to be M = 60 kg, J = 2.25 kgnu2 (5.120) The reaction force R and reaction moment T are assumed to be R=30 N, T=5 Nm (5.121) We assume the initial values of the parameter estimates in Eqs.(3.8) and (3.9) to be (13,7 (0)=[40.0 10.0] (5.122) «173(0): [ 1.0 0.0] (5.123) 129 in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 3, K4 = 1, K4 =1, Kfl = 111 =10 and M = 10. The trajectory is chosen as follows 1.0 m/sec2 O < 1 <1 secs " = - - 5.124 xd { 0.0 m/sec2 t > 1 secs ( ) 0.0 rads/sec2 0 s t < 20 secs 0', = 0.5 runs/sec2 20 g t < 21 secs (5.125) 0.0 rads/sec2 t Z 21 secs 100» _ 0 r\ - .1m 1 1 1 1 1 1 1 1 J (Kg 11121101 (Kg) 96 (deg) Cx (mm) .5 A A 30 r- .1 E 20 , 4 (m 10 1 1 1 1 1 1 g 1 ’g 100. . \Z/ 0 /\/-\ d <[—0 .1m 1 1 1 1 1 1 r 1 0 10 20 30 40 50 60 70 80 90 time (see) Figure 5.14. Simulation 5.5: Plot of error variables, ex and eg and estimates without modification in estimates and the maximum value for ds, dm is chosen as 0.10 m. The simulation results are presented in Figs.5.14 through 5.17. Figs.5.l4 and 5.16 are the results of the simulation without the new modification and Figs.5.15 and 5.17 show the results of simulation with the new modification in place. In both cases it can be seen that the errors converge to zero. However in the second case the convergence is faster around 130 E 1m N - 0 - 3.1“) 1 1 1 1 1 1 1 4 GB 50 1 1 1 1 1 1 1 1 Q -o 0 |~ e _ ‘a’: [\l 0 -50 1 1 1 1 1 1 1 1 E0 41 _ 1 1 If 1 1 1 1 1 _ <2 40 1 1 1 1 1 1 1 1 " NE 1m _ 1 t/\1 r 1 1 1 1 — OD .. .. a O 1 1 1 1 1 L (H 2 30 __ 1 1 1 1 1 1 1 1 _ (m 10 1 4 1 1 1 1 1 1 - E 1m __ 1 1 1 1 1 1 1 1 _ E ' /1 ‘ (I— 0 . . 1 1 1 1 . 0 10 20 30 60 70 80 , 50 tune(8ec) 90 Figure 5.15. Simulation 5.5: Plot of error variables, ex and eg and estimates with modifi- cation in estimates 100 80 goo u. 40 20 (102 0 4102 4106 -OJ d%(nfl -5 -10 -15 -20 -25 3'8 (deg) J I I I I I I l I 10 20 30 40. 50 60 70 80 90 tune(mx9 Figure 5.16. Simulation 5.5: Plot of control variables F and d; and B; without modification 13] F 8 and stable otherwise for the reference control inputs, F and d: F = F, (5.126) 1 d = —E(M,), (5.127) the control law for d: - 1 ds + K—[—F]82i +ed, [—F]e2,-ed > 0 d d'; = . (5.128) ds+ed, [—F]e2,-ed $0 the reference control input for B: 5 = mun—[(41:11, (5.129) the control law for B: 13.! = 133 [3‘s + [—Fh](l +tan(Bs)tan(B£))ezi +tan 0 KB (1 +tan2(efi)) 9. wanes), I—Fh] (mums) — tan< mes.- s o (5.130) and estimation laws: (5,, = 47143,}, (5.131) " __ _ —l T , ¢0, 4’0 = 0, lFrl S 8 where 8, 8 > 0 is some small number, F,, M,, d; and B5 are given by, F, = de+21Mex+R+K1 c, (5.133) M, = 104-+18%,” +K2e2, (5.134) d3 = dm tanh(d) (5.135) B. = fimtanhw) (5136) Proof: Consider the Lyapunov function candidate V —1Me2 +-1-Jez + 167F115, + 16TH); + 1e2 + 1K tan2 (8 ) (5 137) 9—212212x 2092d213 )3 ' which is similar to the expression of V3 in Eq.(5.72). The only difference is that the ex- pression of V9 replaces e2 in the expression of V3 with egg. As a result we can show that V9 satisfies V9 = -K1e% 439 K2133, — Kde¢21_ K5 tan2(e,,) (5.138) when |F,| > 8. Since |F,| > 8 ensures 39 > 0, we have V9 3 0. Following the same logic as in Theorem 2.1 in Chapter 2, we can show that the equilibrium point (e1,e2,,o,,69,ed,efi) = (0,0,0,0, 0, 0) is asymptotically stable. When |F,| g 8, the derivative of the Lyapunov function, through direct differentiation is given by the expression 134 V9 = Melé1+Jezé2i+ Iii-xTPISx + 69TP$9 +Kd éd ed +KB tan (8B) StiC2 (efi)ép (5.139) which then takes the form V9 = —K1e§-efi—Kg tan2(eB) g 0 (5.140) Equation (5.140) is obtained from Eq.(5.139) by substituting $9 = 0, which follows from Eq.(6.139), and 852; = O, which follows from Eq.(3.50) and (3.52). From Eq.(5.140) we claim that the equilibrium point (121,122,, (5,, 661311163) = (0,0,0,0, 0,0) is stable. SIMULATION 5 .6 The initial conditions, parameter values, controller gains for this simulation are chosen similar to the previous simulation except for the following: a trajectory which requires F, to go through zero is used, namely 1', = sin(0.lt) (5.141) 0,, = sin(0.2t) (5.142) The value of T has been changed back to 5.0 Nm. The saturation values for d and B were chosen to be 0.15 m and 75° respectively. These changes are made to make the simulation more practical. The results of Simulation 5.5 are presented in Figs.5.l8, 5 .19 and 5.20. The switching between the two control laws is observable as F < 8 = 5, approx around 1‘ = 36 sees and t = 56 secs. This region is marked by the vertical lines in all the three figures. The error in 9 coordinate, 361', reacts to the condition F < 8 by staying constant, which can be seen in Fig.5.l8. The estimates, f and T, react to the condition F < 8 by going to zero and staying constant during that period, which can be seen in Fig.5.l9. Finally, the control inputs, d; and 13;, can be seen changing sign as F changes sign at around these times in Fig.5.20. 135 200 . , , . , , , , 150- _ 100- _ 50 _ ex (mm) -50 l l 1 l 1 J I I eei (deg) 8 _30 I l 1 I 0 10 20 30 4O 50 60 70 80 90 time (secs) Figure 5.18. Simulation 5.6: Plot of error variables 8, and eg -20 l l l I L 1 l l T (Nm) 5 < time (sec) Figure 5.19. Simulation 5.6: Plot of parameter estimates 136 0 10 20 30 4O 50 60 70 80 90 time (sec) Figure 5.20. Simulation 5.6: Plot of control inputs, F, B’ and actuator dynamics d; 137 41' CHAPTER 6 Addressing the Limitations on the Applied Force 6.] Introduction In previous chapters, it has assumed that the required force prescribed by the adaptive algorithm, F,, is always available for the wheelchair. This is reflective of Assumption A1, in Chapter 2. However in reality, this cannot always be true. There is a limit on the maximum force that can be conveniently exerted by the robot on the wheelchair. Furthermore, F,, which is continuously varying, is a reference command for the robot. The robot by means of its controller tries to achieve this force. Thus there could be an error between the desired force and the actual force applied. This effect of this error on the entire system also needs to be addressed. In the next section we address the issue of saturation of the applied force. We introduce a new variable, Fs, which denotes the saturation of the applied force and show asymptotic stability of the equilibrium point of the system with F} as the force input. In later sections we address the dynamics of the controller and the robot in producing this force. 6.2 Saturation of Applied Force Since we are imposing a maximum limit on the applied force, we have to bring this into account in the dynamic equations of motion of the wheelchair. Thus the equations of motion of the wheelchair are given by 138 J6 —Isd;—Fihtan(fis’) —T (6.2) Although the above equations are similar to the equations of motion defined in Eq.(5.]7) and (5.17) of Chapter 5, it can be seen from the above equations that the applied moment and the applied force are different here and use F} instead of F as the force. The represen- tation of 39, which is the ratio of saturated moment to the required moment, as given in Eq.(5.57) is no longer valid since F needs to be now replaced with F}. Thus : _‘Fs d3 - Frgh tan(fis) 36 Mr (6.3) Further since the applied force is also not equal to the required force, in order to employ a similar strategy as d and B saturation, we introduce variable Bx which is defined as the ratio of the saturated force to the required force. Thus _Fs B— xF, (6.4) and correspondingly, similar to the definition of the 6 coordinate estimation errors, f and T, in Eq.(3.9), we redefine the estimation errors in the x coordinates, M and R, given in Eq.(3.8), as follows 6.41.4.1». ¢x=l:1:] 13,432] (6.5) The definition of the errors 81 and 82 remain unchanged from that given by Eqs.(2.9) and (2.10). We are now ready to present the first result of this section. Theorem 6.1: Consider the dynamical system described by Eqs.(6.1) and (6.2). For this system, the equilibrium point (e1, 82, (5,, (13981, 813) = (0,0,0,0,0,0) is asymptotically stable for the following reference control inputs Fs and d: 139 F, = F,,,tanh(F,) (6.6) 1 the control law for d: . 1 d: = d's + E;[—Fs] 82 +ed, [—&1 828,1 > 0 (6.8) (1; + ed, {-Rg] e2 ed S 0 (6.9) the reference control input for B: B = arctan K44139- (6.10) the control law for B: 3.! = ' [—th](1+tan(Bs)tan(B;))e2 I + + tan , -F h tan — tan > O 18. K, “WW (4,) 1 .1< (13.) (mm 13s +tan(ep), {-Fsh] (tanws) - titm(l3s{))ez S 0 (6.11) and estimation laws: J5, = —P—‘AIe1, (6.12) ('59 = —F—‘Age2 (6.13) provided F} 71 0, where F,, M,, d; and B,- are given by, F, = de+21Mex+R+K1e1 (6.14) M, = féd+hqfeg+T+K2e2 (6.15) d3 = dm tanh(d) (6.16) [is = fimtanh(fi) (6.17) 140 Proof: Consider the Lyapunov function candidate 1 1 1.. .. 1~ - 1 1 vlo = Emi- + 563 + 5413106,, + 5(1); P¢9 + 519,521+ 5K1, tan2 (e5) (6.18) which is positive everywhere except at the origin (e1,e2,43x, $9,ed,efi) = (0,0,0,0,0,0), where it is zero and K4, K5’ are positive constants. By differentiating V10 with respect to time, we get V10 = Mele'1+Je2e'2 + $3P$x+ digpé'g +Kd edéd +Kp tan(e,,) secz (efi)éfl (6.19) We obtain the derivatives e'1 and e‘2 from Eqs.(2.9) and (2.10) as follows e’1 = é}, + Ale, (6.20) e'2 = e"9 + Age'g (6.21) By multiplying Eqs.(6.20) and (6.21) with M and J, respectively, and substituting Eqs.(6.1) and (6.2), respectively, we get Mél = an —M)'c'+Mll ex = Mx}, — (F, —R)+M/'L1(éJr = (id + 21 ex) (M — 3x11?) + (R —BxR) — BxK1 e1 (6.23) 141 Jéz = 10'}, —Jé +122 ég = 19;: — H} d; ‘Fsh ammo — T) +112éa = 16;: — (—Fs ds —Fsh tanws) +6 «I. +Fsh tanws) — F3 d; - m tan()3§) — T) +112 ée = 19;, — (-—K4F} d - T) +112 ée + H} h](tan()6s) - tan(fis’)) + {-Fs] (ds — dé) = J 9L1 - (-K4 Fs d - T) +132 ée + {-Fsh] (tan(l3s) - tan(B§)) + {-Fs] (ed) = 15d - (39 M, - T) +132 £9 + {-Fs h] (mums) - ta“(13.0) + {—17,} (64) = (éd +12%) (JrBej) + (T -Be T) -39 K282+ l-Fsh] (mums) 4311030) +[—Fs] (ea) (6.24) We obtain Eq.(6.23) by substituting for Bx and from the expression of F, from Eq.(6.14). Similarly we obtain Eq.(6.24) by substituting the expression for 39 from Eq.(6.3) and the expression for M, from Eq.(6.15). Thus we get, Me‘l =Ax¢3x —BxK1e1 (6.25) 162 = A959 — Bo K262 + {-Fs ’4 0311033) - tan(13s')) + {—Fs] (ed) (626) Substitution of the above equations in Eq.(6.19), yields V10 = 81 Axéx + 8214953 —BxKle% - Be [(26% + 6xTP$x + ¢~9TP$9 + Kd ed éd +[-Fs h] (tan(l3s) - ta110355)) (32 + Kp tan (313) 8602 (8(3) ép + {-Ec] (ed) e2 (6.27) Using the estimation law in Eq.(6.12) and (6.13), we get 142 V10 = -BxK1 6% -Be K263 +Kd ed éd + [—F,h] (tan(l3s) - 1311039) 62 +16,3 tan (e5) .66:2 (efi)éfl + {—12,} (ed)e2 (6.28) The rest of the proof will proceed according to the conditions whether {-17,} (ed) e2 > O or not and whether [-Fs h] (tan(Bs) — tan(fi§)) e2 > O or not. In order to simplify things we propose breaking down of the Lyapunov derivative, V10 into three parts, namely V10 = V100 + VlOb + VlOc (6.29) V100 = —Bx K16? - Be [(28% S 0 (6.30) VlOb = Kd ed éd + {—Rg] (ed) e2 (6.31) V100 = {—Fsh] (tan(fis) —tan(Bs’))e2 +Kfl tan(e’3) $662 (ep)é5 (6.32) Since E, 76 0, 39 > 0. We also know thath > 0, thus V10“ 3 0. (We next analyze V10), Substituting the control law for the prismatic joint in V106 we can get, VlOb = Kd ed éd + {—175} (ed) 62 (6.33) : _Kde21 {—EY] 82 ed > O (634) -Kded+1—61 0 in the definition of V100, Using the trigonometric identity, I _ tan(l3s)-tan(l3§) mums-135)- 1 “311083) tan(l3s’) (6.36) in V100 we get, V10c = l-Fsh] tan([3,-B§)(l+tan(fis) t2111(l3s')) 0 = -Fsh 0311031) - tan(13§))¢32 -Kp “1112038) 8602 (3)3), l-Fs h] (tan(l3s) -tan(l3s')) £2 S 0 3 —K6 maze,» (6.44) Thus assembling all the parts we get V10 S -BxK1e% —Bg Kzeg ‘Kd e3 ‘Kfl tan2(ep) S 0 (6.45) Following the footsteps of Theorem 2.1, we can show that the error variables, e1, e2, ed, 423 and the parameter estimation errors, 6,, and $9, asymptotically converge to zero. Remark 6.1: It can be noted from the theorem statement that the law for obtaining d has been changed from d = —7,1r-(M,) to d = —;1-s-(M,). This is based on the fact that the location of pushing should be based on how much force is actually being applied. SIMULATION 6.1 Simulation 6.1 is performed to show the effect of saturation in F. The results of the simulations are observable from Figs.6.1 through 6.3. The conditions for the simulations are as follows: The mass and mass moment of inertia of the wheelchair and occupant combined are assumed to be M = 60 kg, J = 2.25 1:ng (6.46) The reaction force and reaction moment are assumed to be R = 30 N, T = 5 Nm (6.47) We assume the initial values of the parameter estimates to be (3,7 (0) = [ 40.0 10.0 ] (6.48) 145 -— (33‘ (0) = [ 1.0 0.0 ] (6.49) in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 10, I'll = 10 and IQ = 10. The desired trajectories were chosen as 0.15 0.05 - - 0 -005 1 1 1 1 r L 20 I r 10 r 0 .-. r _n L r - -10 .4 -20 1 l l l l l 50 , . ex (mm 69 (deg) Fr (N) 8 ‘5’ 8 Fs (N) 338 time (see) Figure 6.1. Simulation 6.1: Plot of error variables ex and eg and reference control input F, and control input F}. x", 0.1 ”61(1) (6.50) (9}, = sin(0.2t) (6.51) along with initial conditions xd = id = 9d = 9d = 0. These trajectories have been chosen so that F remains positive always. It can be seen from Fig.6.l that the errors ex and eg tend to converge to zero. This figure also shows a comparison between the required force, F,, and the actual force applied F,. It can be observed that the applied force saturates at about 35 N. An important observation in this simulation is the repetitive saturation of the force. 146 41.5 , I 1 1 M (Kg) .2 J (Kg m2) 1 l l l fa (N) a”). l l l l T (Nm) I l I 1 l time (sec) Figure 6.2. Simulation 6.1: Plot of parameter estimates -0.05 - m - /V\__‘ d's (m) B We) '8 .40 1 1 1 1 g 1 O 10 20 30 4O 50 6O 70 time (sec) Figure 6.3. Simulation 6.1: Plot of control inputs, dg, and B; 147 .‘n “‘PL‘.' In accordance to our requirement of a reasonable trajectory, this repetition of the saturation cannot continue infinitely, thus eventually sending the errors to zero. Figure 6.2 show the parameter estimates. it can be seen that all the estimates except 1V! converge to their respective original values given in Eq.(6.46) and (6.47). The reason for M not converging to the actual value can be attributed to the non availability of RE. in the trajectory of 1:. Figure 6.3 shows the actual location of d; and the actual joint angle 6;. 6.3 Addressing dynamics of Applied Force The next issue that we will be addressing in this chapter is the effect of robot dynamics on the adaptive controller. Until this point we had assumed that the force F,- could be instantaneously realized by the robot. However like it was discussed in Chapters 4 and 5, where the robot dynamics at the prismatic joint and at the angle of push were addressed, this is not possible. The robot and its controllers have their own dynamics that affect the robots ability to realize the force F. In this section we propose a controller for the actuators responsible for the pushing force F and show asymptotic stability of the equilibrium point. Before we propose the next result we present some modifications that need to be made to address this issue. 1. The equations of motion of the wheelchair have to be modified to incorporate the effect of the force dynamics. Thus the equations of motion of the wheelchair take the form M5: = Fs’ -R (6.52) 19' —Fs’d§—E.htan(fis’) —T (6.53) 2. It can be seen from the above equations that the applied moment and the applied force are different from Eqs.(6.1) and (6.2). This implies that 39, which is the ratio of the saturated moment to the required moment, will be modified to 148 _ "Fs’ds “Erik tan(fls) Be Mr (6.54) 3. We change the law for obtaining the value for d from d = —}!;(Mr) to d = —;.1;,(Mr). This will be seen in the forthcoming theorem. This is done based on the fact that the actual location of force application should be based on the actual force being applied. With this modification it can be seen thath > O as long as F; ¢ 0 (see Section 5.4 for more details). 4. We redefine the error e f as follows ef = F,,—F; (6.55) The definition of Bx does not change since the ratio of the saturated force to the required force is still the same. We now are ready to propose the result for this section. Theorem 6.2: Consider the dynamical system described by Eqs.(6.52) and (6.53). For this system, the equilibrium point (e1,e2,6x,$9,ed,e,3,ef) = (0, 0,0,0, 0, 0, 0) is asymp- totically stable for the following control laws: F+-—1—e +e e e >0 F,’ = { ‘ Kfl f’ ‘f (6.56) P}+ef, elefSO (6.57) O 1 I I _ _ _. -F d; : (1.3+Kd[ E9]82+ed, ] s]e2ed>0 (6.58) ds‘l‘ed) [“queZed £0 (6.59) 149 — l-Fs’ h1(1 +tan(l3s)tan(l3s'))e 2 _ I _ I fis‘l' Kfl (1+[an2(efl)) +tan(e[3)) [ Fs h](tan(fl3) tan(fis))92 >0 Bs+ran 0, [—F,’h] (tan(Bs) — tan(]B§))e2 > 0 and elef > O or not. In order to simplify things we propose breaking down of the Lyapunov derivative, V11 into four parts, namely V11 = V116+V116+V116 (6-81) V, ,a = —19,r K113? — 39 [(263 g 0 (6.82) V1 lb = Kd 8d éd + l-Fs] (8d) 82 (6-83) V11c = l-Fs h] (tan()3s) - t8111(13s'))82 + K8 t8l11(8]3) 8882 (88) 83 (6-84) Vlld = Kfeféf+elef (6.85) 152 Since Fs’ 75 0, Bo > 0. We also know that B, > 0, thus V110 S 0. We next analyze V11 6- Substituting the control law for the prismatic joint in V1 1b we can get, V116 = Kd 8d 84 + PM (8.1) 82 (6-86) _ 2 _ = Kde ) [ F31e2ed > O (6.87) ‘Kd 8,; +["E$1(ed)321 [—F,] 82 8d S 0 s —Kd e3 (6.88) Next lets consider the case when [—Fs h] (tan(fis) — tan(16§)) e2 > 0 in the definition of 17116, Using the trigonometric identity, tan(5.5") - “I"(BD ”“03"” = 1+tan(13s)tan(fis’) “'89) in V110 we get, V1 IC = [“Fs ’1] WW: - 5;) (1 + tam(13s) ta“(13.0) 82 +Kfi tan(e]3) SCC2 (efl)éB (6.90) Using the trigonometric identity, secz(e,3) = l+tan2(efl) (6.91) we get, V11c = FR: ’1] “films - fii) (1 +tan(l3s) @1030) 82 +19, tan (e13) (1 +tan2(e]3)) a], (6.92) which can be written as V11c = t8111(813)([-1""sh] (1 +tan(l3s) t8110315))82 +186 (1 +tan2(ep))(Bs—B.’) (6.93) 153 Substituting the control law for B for this case given by, l-Fsh1(1+tan()3s)tan(l3§))82 Kp (1+tan2(ep)) B;=Bs+ in Eq.(6.93), we get + tanefi, (6.94) V1 IC = _KB tan2(efi) (6.95) Next lets consider the case when [—F} h] (tan(Bs) - tan(B§)) e2 S O in the definition of V116. Substituting for the corresponding control law of B we can obtain V“. = {—8121 (tan()3s)-tan(5s'))82—Kp m2(8fi)secz(8p) (6.96) Thus V1 1C can be written as Vllc = Kd8d8d+[—Fs1(8d)82 _Kfi 16620,), H} h] (tan(l3s) —tan(fl§))e2 > 0 z ‘Fsh(tan(l3s) -tan(B§))e2 _Kfi tan2 (e5) Sec2 (85), {-Fs h] (mums) __ tan(fi;))ez S O 3 —K13 tan2(efi) (6.97) Finally we analyze V] 1d Vlld = Kfeféf+(ef)e1 (6,98) _ “Kfez, e1 8 f > O _ { —Kfe§+(ef)el, elef_<_0 (6.99) _<_ —Kfe} (6.100) Thus assembling all the parts we get V <-B Kez-B Kez-K ez—K tan2(e )—K e2<0 (6.101) 11_x11922 dd B 13 ff_ 154 Following the footsteps of Theorem 2.1, we can show that the error variables, e1, e2, ed, e13 , e f and the parameter estimation errors, 6, and $9, asymptotically converge to zero. SIMULATION 6.2 Simulation 6.2 is performed to show the effect of saturation and dynamics of F. The results of the simulations are observable from Figs.6.4 through 6.6. The conditions for the simulations are as follows: The mass and mass moment of inertia of the wheelchair and occupant combined are assumed to be M = 60 kg, J = 2.25 1(ng (6.102) The reaction force and reaction moment are assumed to be R = 30 N, T = 5 Nm (6.103) We assume the initial values of the parameter estimates to be «if (0) = [ 40.0 10.0 ] (6.104) (35 (0) = [ 1.0 0.0 ] (6.105) in SI units. The controller gains and sliding surface constants were chosen as K1 = 10, K2 = 10, 11 = 10 and IQ = 10. Also, Kd = KB = Kf = K4 = l. The desired trajectories were chosen as it'd = 0.5+0.1*sin(t) (6.106) ("id = sin(0.2t) (6.107) along with initial conditions xd = id = 9d = Q, = 0. These trajectories have been chosen so that F remains positive always. It can be seen from Fig.6.4 that the errors ex and eg tend to converge to zero. This figure also shows a comparison between the required force, F,, and the actual force applied F,’ . It can be observed that the applied force saturates at 155 6x (mm) e0 (deg) C Fr (N) Fs (N) time (see) Figure 6.4. Simulation 6.2: Plot of error variables ex, 429, F, and F} about 65 N. Figure 6.2 show the parameter estimates. it can be seen that all the estimates converge to their respective original values given in Eq.(6.102) and (6.103). Figure 6.6 shows the actual location of d, d; and the joint angle commanded B and the actual B}. It is seen that d is saturated for most of the time and B is saturated intermittently. 6.4 Resetting of Estimates to Prevent Windup In this section we will present the results with the resetting of estimates when not only the condition e2 = 0, 39 < l is satisfied but also the condition el = 0, B, < 1 is satisfied. The analysis in Sections 3.3 and 4.6 still hold true and can be extrapolated to the case of force saturation. The additional term in the Lyapunov equation, e f, can also be shown to be continuous since there is no change in F5 and Fg’. The next theorem provides the technique for resetting of estimates in presence of F, d and B saturation and dynamics. 156 120 , , . 1 f4 (Kg) § N I l I I I I l | l l I I | | I l I I l | I I I I I I I I l I I l J (Kg m2) {336. KW) ‘58 [I] I < 20 - - O 1 1 1 g 1 A 6 l l l I I g 4 I’ ___________ _ <1— 2 — - 0 1 1 1 1 1 0 10 20 30 40 50 60 time (sec) Figure 6.5. Simulation 6.2: Plot of parameter estimates Theorem 6.3: Consider the dynamical system described by Eqs.(6.52) and (6.53). For this system, the equilibrium point (e1,e2,6x,69,ed,efi,ef) = (0, 0,0, 0,0,0, 0) is asymp- totically stable for the following control laws: F +ie +e e e >0 F; = S K, 1 f’ 1 f (6.108) Eg+€f, e1 efSO (6.109) ., { Js+-1—[—Fs']e2+ed, [—Fs’]e2ed>0 d, = Kd (6.110) ds+8d, I—Fs’l828d S 0 (6.111) 157 I3 (deg) d's (m) d (m) I3 's(deg) Figure 6.6. Simulation 6.2: Plot of d, d;, p and 6' 158 time (sec) S B.+ [‘FS' ’1“ “”03”“(39VZ +tan o K13 (1 +tan2(e13)) Bs+mn(ep): l-F§h1(tan(fis)-tan(fi§))82 so (6.112) the reference control inputs given by: F, = de+llMéx+R+K1e1 (6.113) F, = F,,. tanh(F,) (6.114) M, = f6}, +Agfe‘9 + T+K2 e2 (6.115) d = -l(M,) (6.116) F, d, = dm tanh(d) (6.117) B = arctan ——K4 d; d‘ (6.118) B, = Bmtanh(B) (6.119) and estimation laws: 6', = —P"‘AIe1, (6.120) (39 = -P"A5e2 (6.121) ($9 :39 439(0), e2=0and B9 <1 (6.122) (3,:B,43,(:j), e1=0ande <1 (6.123) provided F} 76 0. Proof: The proof of Theorem 6.2 is still valid. SIMULATION 6.3 The conditions for this simulation were chosen to be the same as in Simulation 6.2. The trajectory is chosen as follows 159 LO 2 1 secs 0.0 rads/sec2 0 s t < 20 secs 0d = 0.5 rads/sec2 20 S t < 21 secs (6.125) 0.0 rads/sec2 t 2 21 secs 0.1 fi 1 I I 7 I A 0.05 b - 5:, 0- . "U -0.05 . _0. 1 1 1 L 1 1 1 4O 17 I I I I I ”6‘6 20 - _ 1‘3, 0 I _ 65”. -20 1 1 .40 l 1 I I l I . 0 20 40 60 80 100 120 140 time (sec) Figure 6.7. Simulation 6.3: Plots of ex, ea, F, F}, d; and B55. The simulation results are presented in Figs.6.7 and 6.8. The errors in x and 9 coordi- nates are seen to converge to zero. It can also be seen that the estimates have been brought 160 M (Kg) .§ 13 M 8 r _1 A J §§§ (N é a 8 '1‘(Nm egg; 1 l 0 2O 40 60 80 100 . 120 140 time (sec) Figure 6.8. Simulation 6.3: Plot of estimates back to lower values during the resetting. The results are in concurrence with the similar situations in the previous chapters. 6.5 Addressing the situation when F,’ = 0 In this section we will deal with the situation of F,’ = 0 as was done in the previous chapters. Please refer to Sections 3.3 and 4.7 for more information. The following theorem presents the results inclusive of the situation when F,, = 0. Theorem 6.4: Consider the dynamical system described by Eqs.(6.52) and (6.53). For this system, the equilibrium point (e1,e2,-,6x,69,ed,efi,ef) = (0,0,0,0,0,0,0) is asymp- totically stable when IFS’ | > 8 and stable otherwise for the control laws: 161 . F +ie +e e e >0 F; = { ‘ Kf' f’ ‘f (6.126) Fs+ef, elefSO (6.127) .1; ___ { 465—81666. l—Fs’lezzepo (6.128) J, +ed, {—Fs']e2,-ed S 0 (6.129) - I-Fs' h1(1 +tan(13s)tan(f3§)) 82: 13:: ‘8” K13 (1 +6620,» BS +tan(e13), + tan(8p), l—F§h1(tan(l3s) - t81103.0) 821 > 0 {—671 (mass) —tan()3..’))e2. s o the reference control inputs given by: d5: 93 = and estimation laws: de+théx+R+K1 e1 Fmtanh(Fr) féd+h2feg +T+K2e2,- l —— M Fs( r) dm tanh (d) K4d—d, h BmtanhLB) arctan ‘I’x = —-P“A£ e1 (if, = 44.45.22,, |F,| > a $0, 4’0 = 0, IN S 8 162 (6.130) (6.131) (6.132) (6.133) (6.134) (6.135) (6.136) (6.137) (6.138) (6.139) $9 = 89 (139(9), e2 = 0 and B9 < 1 (6.140) $,=B,43,(1j), e1=0ande <1 (6.141) where 8, 8 > 0 is some small number. Proof: Proof can be arrived following the footsteps of the proof of Theorem 5.3. SIMULATION 6.4 Simulation 6.4 is performed to show the effect of the switched controller employed due to the condition F,’ = 0. The results of the simulations are observable from Figs.6.9 and 6.10. The conditions for the simulations are the same as that of Simulation 6.3. The desired trajectories were chosen as id = sin(0.1t) (6.142) 6,, = sin(0.2t) (6.143) along with initial conditions xd = id = 9d = Gd = 0. It can be seen from Fig.6.9 that the errors ex and eg tend to converge to zero. This figure also shows a comparison between the required force, F,, and the actual force applied FS’. It can be observed that the applied force saturates at about 65 N. Figure 6.10 show the parameter estimates. Although the parameter estimates of M and R have not yet converged, they are well behaved. Based on previous simulations they will converge given unsaturated conditions or enough time. The switching between the two control laws is observable as F,’ < e = 5, approx around I = 36 sees and t = 56 secs. The error in 0 coordinate, e95, reacts to the condition Fs’ < e by staying constant, which can be seen in Fig.6.9. The estimates, f and T, react to the condition F < 8 by going to zero and staying constant during that period, which can be seen in Fig.6.10. Finally, the control inputs, d; and B}, can be seen changing sign as FS’ changes sign at around these times in Fig.6.9. 163 6x (mm) 601 (deg) F's (N) d's (m) ’63 D '3 66”. .1“) 1 1 1 1 1 1 L 1 1 O 10 20 30 40 50 60 70 80 90 100 time (sec) Figure 6.9. Simulation 6.4: Plot of error variables ex and eg and control inputs 1'}, d; and fis’ 164 M (K8) (K8 m2) (H R(N) c: to 4x as cagggggg < T Gflnfl < I I 1' I I 1 l 1 1 4L I l l I l l O 10 20 30 40 50 60 70 80 thne(&u9 Figure 6.10. Simulation 6.4: Plot of parameter estimates 165 CHAPTER 7 Experimental Verification 7.1 Focus of the Experimental Work In this Chapter we provide a discussion on the experimental setup we used, to verify the viability of our theoretical results. Before we begin let us go through a brief review of the developments made in the previous chapters. After the introduction in Chapter 1, in Chapter 2, we developed a basic controller based on certain assumptions for pushing and steering wheelchairs along a trajectory. We had also proposed an arm design which can be used for pushing wheelchairs and also various other purposes like, opening doors, picking up objects etc. In Chapter 3 and Chapter 4, while dedicating ourselves to the problem of pushing and steering wheelchairs, we have removed some of the impractical assumptions by addressing the saturation in the moment arm, the finite nature of the bandwidth of the actuator driving the prismatic joint and the possibility of the force F being positive, negative and zero. The first part of this chapter is dedicated to observing the efficacy of the results presented until chapter 4. Later we show the experimental results obtained using the complete results in the thesis. In order to conduct the experiments, we built a simple arm that can be attached to a robot and provide the basic capabilities to maneuver a wheelchair, discussed in the next section. The robot we used for this purpose was the CompanionTM robot developed by Intouch Health Inc. The arm that was used in these experiments is discussed next. 166 7 .2 Arm Description For the purpose of verifying the results we developed a simplified version of the arm pro- posed in Chapter 2. This arm is shown in the inset of Fig.7.l. The arm has 2 DOF, the first DOF being the prismatic joint and the second DOF, the elbow joint, corresponds to the joint 1 of the Arm described in Chapter 2. The arm is positioned on the robot such that it is at wheelchair height. See Fig.7.1. This is done so as to reduce the number of joints and hence, complexity. The prismatic joint which is driven by the motor, shown in Fig.7.], lo- cates itself on the forearm as commanded by d, and provides the moment arm. The second DOF shown as Elbow Joint in the Fig.7.] is controlled by the robot itself and is used for maintaining the angle that the rear arm makes with the elbow. This is possible due to the holonomic nature of the robot. For the first part of the experiments this was maintained at 90° to the forearm. There are a total of four sensors used on the arm detector (4) /ermtter (4 Figure 7.1. Experimental setup 167 1. A force sensor which measures the force applied by the robot on the wheelchair. 2. An encoder to measure the angle at the 2nd DOF at the junction of the rear arm and the elbow (Elbow Joint). 3. An encoder to obtain the actual location of the prismatic joint on the elbow (dg). 4. An emitter/detector triangulation sensor to track the trajectory of the arm and hence the wheelchair. 7 .3 Experimental Results: Constraints of the Prismatic Joint Figure 7.2 shows the desired reference trajectory provided by the joystick (in solid lines) and the actual trajectory taken by the wheelchair (in dotted lines) in x and 9 coordinates. It can be seen that both x and 9 track xd and 9,], respectively, although slowly. The reason for the slow convergence is discussed later. Figure 7.3 shows the estimates of M, R, J and T, namely M, R, f and T. The value of M was approximate 25 Kg. The first plot shows that the estimate M increases when the error in x coordinate is large but it finally converges towards its true value as the error goes to zero. Although it was assumed that F = F,, this was not the case during experiments and the robot fell short of applying the required force. This is one reason for the slow convergence of the trajectories and therefore rise in the estimates. The plot of R shows convergence to approx. 45 N. However, it cannot be ascertained if this is the true value of R. The estimate of f starts at 1.0 Kg.m2 and settles to approx. 1.5 Kg.m2 which seems to be a reasonable number for the true value of J. Beyond 1 = 17 sees, the value of f starts rising. This can be attributed to the transients in error in the 9 coordinate. The transients correspond to the saturation and dynamics of the actuator of the prismatic joint. This can be independently verified from Fig.7.4 from the plots of d, (in dotted lines) and d; (in solid lines). The plot of I", shows signs of settling to the value of 8.0 Nm. It exhibits a transient for a brief interval of time during 17 < t < 20 sec and this can also be attributed to saturation and dynamics of 168 the prismatic joint actuator. The positive value for the T could be due to the difference in performance between the wheels. I I I I 9 6 X.xd (m) IIIITTIII l 1 1 1 l l I 1 1 I ...... 9,0,1 (rad) 0.4 0.8 1 1 1 I 1 l l l I I I I I O U! _- O 31—.)- M N O N M Figure 7.2. Trajectories From the above results an important observation to be noted is that, trying to turn using only the location d; on the prismatic joint is not enough. Only small rates of changes in orientation are possible with the prismatic joint. Therefore tracking in 0 coordinates show room for improvement. It was noted during these experiments that the wheelchair seemed to have an added advantage for faster turning the angle in the 2nd DOF was still catching up to 90". In the succeeding sections this additional advantage is further exploited as the B angle to produce extra moment. 7 .4 Experimental Result: Prismatic Joint and Elbow Joint For this part of the experiments the elbow joint was no longer commanded at 90”. Rather it was commanded by B,. The results are presented in figures 7.5, 7.6, 7.7. 169 25 25 q q — d — — _ u _ — 100- A OD 1 T .4... 1m own-.111“: nnnnnnnn L ............. .. 5 m u .. . - -1 a - - ) p .m 6 .m .. A .. m... E f mo .6 _ . c 0 v . - - . .1 7 . 1 - 4. m. 1 m m A. m. V 1 1 -5 I 1 1 _ ___. ___h _— 0 _P _. mmommo mso wmmo mom :6 .6. @669; gaze 6 2: 8:6 .6 170 time(secs) __ddq_——_ dud—qqqqdb 5 ____ «q: _4q dj 2 S I 1 e l 1 I l I 1 .n 0 t .6. m T O 7 m. m 1 1 1 1 1 1 1 1 15 A ___»-_.. b.._er_k.lo L.. .p ___ __ 0 6.284. 0 11000 186420 43210.... wmsoéwm mommmo 3sz page... gm 3:: < €65 8 .m 95 E .x 171 Figure 7.6. Estimates P a e I l 13' (deg) I 1 l 1 l 1 time(secs) Figure 7.7. Control Inputs From the Fig. 7.5, it can be seen that a significant improvement has been made in the tracking of 0 coordinates. This is due to the additional moment provided by the pushing angle B, which has been plotted in Fig.7.7. The robot is capable of making faster and larger turns when compared to the previous set of experiments with only the prismatic joint. The prismatic joint movement has also been plotted in Fig.7.7. It can be seen that although B assists d, the full potential is realized only when d saturates. A small improvement is also seen in the tracking of the x trajectory which can be partly attributed to improved pushing force in the forward direction due to the holonomic robots effort being efficiently used in the sidewise motion. It has to be mentioned that the resetting has not been implemented in these algorithms due to shortage of expensive hardware (sensor 4) and therefore space to run the robot. 172 CHAPTER 8 Conclusion and Future Work Robots have been used to replace or augment the performance of human work force in the past. Increasingly complex control systems had to be developed to keep up with increasing requirements. In this dissertation we built upon an adaptive control strategy to address constraints in the control input while maneuvering wheeled platforms using a holonomic mobile robot. The constraints considered were actuator saturation and actuator dynamics. These constraints, when ignored, degraded the performance of the system due to excessive adaptation which leads to estimation Windup. In the chapters so far these adverse effects were demonstrated and consequent modifications in the algorithm were made and also shown to be beneficial. The results obtained were verified with simulations and later with experiments in the context of a robot pushing a wheelchair. These results can also be easily extended to other wheeled platforms with non holo- nomic constraints whose equations of motion can be simplified as follows: (8.2) where u is the input and r is the reaction force. For example, in the case of a stretcher, the equations of motion are quite similar to the wheelchair. The major difference being that the non-holonomic constraint is in the front wheels and the casters are the rear wheels. This is 173 shown in Fig.8.1. If we look at the corresponding equations of motion, Stretcher Figure 8.1. Extension to other platforms. M)? F — R (8.3) 10 = —than(B)—T (8.4) we can deduce that the movement of the prismatic joint does not produce any moment, however, the results in Chapter 6 are still valid albeit this fact. Further the prismatic joint can also be commanded to zero and the turning can be entirely done by the pushing angle B. One of the important assumptions in the beginning while developing the thesis was that the trajectory was to be provided by a path planning algorithm. However it can also be provided with a human in the loop using Haptic devices. A Haptic device is a joystick like device that will enable the operator to send commands to a remote robot or similar device and also receive force feedback. Thus it will enable him or her to experience the forces that the remote device experiences. A typical application in our case would be doctors 174 doing their rounds, nurses moving wheelchairs from remote locations, relatives taking an inmate in an LTC facility for a wheelchair ride, personnel moving hazardous materials in hazardous environments using teleoperated robots, etc. Finally we would like to conclude by reemphasizing the performance improvement ob— tained with our algorithm, which we demonstrate in this section by looking at the overall path/trajectory taken by a wheelchair. This provides a fresh perspective, different from the state variable plots presented throughout the chapters. The figures presented below repre- sent the top view in global (X,Y) coordinates, of a wheelchair being transported from point A (2,2) to point B (14,14) and back to A. These are performed under different conditions using a simple path planning algorithm that generates the trajectory based on the current position of the wheelchair. The first condition shown in Fig.8.2 corresponds to the basic adaptive algorithm we started off with. This assumes that the saturation and dynamic con- straints are not present. This provides a comparison bench mark for the other plots. An important observation to be made here are the tight turns taken by the trajectory curve in both the directions. Next, Fig.8.3 shows the situation when saturation and dynamics in the prismatic joint are included in the simulation. It is very obvious that the wheelchair takes wide and excessive turns in both the directions. This is attributed to the actuator constraints and estimation Windup. The final scenario shown in Fig.8.4 shows the same simulation us- ing estimation reset and other modifications presented in this thesis. Although the turns are not as tight as in the first case, the excessive turns have been eliminated. Thus the degrading effect of the estimation windup, due to excessive adaptation, resulting in bad performance or even instability, is avoided. We contend that the work presents a significant contribution obtained in a novel and practical manner. 175 14 . __3 I- / // r / // 8. // g / >-- / 2, ('f/ 2 ‘ ' X(m)‘ L 14 Figure 8.2. Path taken in the absence of actuator constraints. Y(m) Figure 8.3. Path taken in the presence of actuator constraints. T fi 14 . / // '1 ,1 )- ,/ ’1’ I/ It 1' 1’ .I ..§ ’ ,4?“ E . /’ v )- t >‘ /’:I I f (I b “/11," 4’ Fix" 2 ta" 4 l L l 18 4 i4 2 X(m) Figure 8.4. Path taken when using the modifications presented in the thesis. 176 BIBLIOGRAPHY 177 BIBLIOGRAPHY [1] Murphy, SH, Wen, IT, and Saridis, G.N., 1991, Simulation of Cooperating Robot Manipulators on a Mobile Platform, IEEE Trans. on Robo. and Auto., 7 (4), pp.468- 78. [2] Yun, X and Kumar V.R., 1991, An Approach to Simultaneous Control of Trajectory and Interaction Forces in Dual-Arm Configuration, IEEE Trans. on Robo. and Auto., 7 (5), pp.618-25. [3] Lirn, D., and Seraji, H. 1997, Configuration Control of a Mobile Dexterous Robot: Real Time Implementation and Experimentation, International Journal of Robotics Research, 16(5), pp.601—618. [4] Tan, J ., and Xi, N., 2001, Unified Model Approach for Planning and Control ofMobile Manipulators, IEEE International Conference on Robo. and Auto., Vol 3, pp.3145-52. [5] SP. Karson and A.M. Annaswamy, Adaptive Control in the Presence of Input Con- straints, IEEE Trans. Automat. Cont., Vol. 39, No. 11, pp. 2325-2330, 1994. [6] Natsuki Takagi, Takeshi Nishida and Toshihiro Kobayashi, A design of Adaptive Con- trol Systems With Input Saturation, SICE-ICASE International Joint Conference, pp. 984-987, 2006. [7] A.M. Annaswamy and Jo-Ey Wong, Adaptive Control in the Presence of Saturation Nonlinearity, International Journal of Adaptive Control and Signal Processing, Vol. 11, pp. 3-19, 1997. [8] Y.S. Zhong, Globally Stable Adaptive System Design for Minimum phase SIS 0 Plants with Input Saturation, Automatica 41 pp. 1539-1547 2005. [9] Hui Wang and Jing Sun, Modified Model Reference Adaptive Control with Saturated Inputs, Proc. 3lst Conf. on Decision and Control. pp. 3255-3256, 1992. [10] Cishen Zhang and Robin J. Evans, Continuous Direct Adaptive Control with Satura- tion Input Constraint, IEEE Trans. Automat. Cont, Vol. 39, No. 11, pp.1718-l722, 1994. 178 [11] Eugene Lavretsky and Naira Hovakimyan, Stable Adaptation in Presence of Input Constraints, System and Control Letters 56 pp.722-729, 2007. [12] Mitsuru Kanamori and Masayoshi Tomizuka, Model Reference Adaptive Control of Linear Systems with Input Saturation, Proc. IEEE International Conference on Con- trol Applications. pp 1318 - 1323, 2004. [13] Chun-Yr Su, Yury Stepanenko, Backstepping-Based Hybrid Adaptive Control of Robot Manipulators Incorporating Actuator Dynamics, International Journal of Adaptive Control and Signal Processing, Vol. 11, pp.14l-153, 1997. [14] Tarnoghna Das, I.N. Kar, S. Choudhury Simple Neuron-Based Adaptive Controller for a Nonholonomic Mobile Robot Including Actuator Dynamics, Neurocomputing 69 pp. 2140-2151, 2006. [15] Fjellstad Ola-Erik, Fossen Thor I and Egeland Olav Adaptive Control of ROVS with Actuator Dynamics and Saturation, Proc. of Second International Offshore and Polar Engineering Conference, pp. 513-522, 1992. [16] Kolomanovsky, 1., and McClamroch, NH, 1995, Developments in Nonholonomic Control Problems, IEEE Control Systems Magazine 15(6) pp.20-36. [17] Sordalen 0.1., and Wichlund, K.Y., 1993, Exponential Stabilization of a Car with N Trailers, IEEE Int Conf. on Decision and Control, Vol.4,pp3400-3405. [18] Sordalen 0]., and Egeland, O., 1995, Exponential Stabilization of Nonholonomic Chained Systems, IEEE Trans. on Auto. Control, 40(1) pp.35-49. [19] http://cms.hhs.gov/medicaid/reports/rp700-14.pdf (71 pages) [20] http:llexn.ca/l‘emplates/Story.asp?ID=1999100754 (success story of ZEUS surgical robot) [21] Bourdon, T. W., and Coleianne, C. J ., 2006, Long Term Care General Liabil- ity and Professional Liability Actuarial Analysis, AON Risk Consultants, Inc., www.ahca.org/brief/ltcanalysis.pdf [22] www.ahca.org/brieflaothcanalysisZOOS.pdf [23] www.1ntouch-health.com [24] www.cardinal.com/content/news/ 123099-66867.asp [25] www.cs.cmu.edul nursebot [26] http://www.paro.jp/english/ 179 [27] Masamitsu Kurisu and Tsuneo Yoshikawa, Tracking Control for an Object in Pushing Operation , Journal of Robotic Systems 1997, P. 729-739 [28] Yong Yu, Tetsu Arima and Showzow Tsujio, Estimation of Object Inertia Parameters on Robot Pushing Operation , Proc. Int. Conf. on Robotics and Automation (ICRA) IEEE 2005 P. 1669-1674 [29]. Yu Sun, Ning Xi, Jindong Tan and Yuechao Wang, Interactive Model Identification for Nonholonomic Cart Pushed by a Mobile Manipulator; Proc. Int. Conf. on Robotics and Automation (ICRA) IEEE 2002 v 4, 1997, P. 3966-3971 [30] Kevin M.Lynch, Estimating the friction parameters of pushed objects, Proc. Interna- tional Conference on Intelligent Robots and Systems, 1993, P. 186-193 [31] Kotaro Sakata, Kenji Inoue, Tomohito Takubo, Tatsuo Arai, Yasushi Mae, Wheelchair user support system using humanoid robots - System concept and ex- periments on pushing wheelchair , Proc. of the SICE Annual Conference 2004, P. 1955-1960 [32] Methil, Nandagopal and Mukherjee, R., ”Pushing and Steering Wheelchairs Using a Holonomic Robot with a Single Arm”, IEEE/RSI International Conference on Intel- ligent Robots and Systems, Beijing, China, 2006. [33] Liberzon and A. Stephen Morse, Basic problems in stability and design of switched systems, IEEE Control Systems Magazine, v 19, n 5, Oct, 1999, p 59-70. [34] Khalil, H. 1996, Nonlinear Systems , 2nd Ed. Prentice Hall, upper Saddle River, NJ. [35] Karl Johan Astrom, Bjorn Mttenmark. 1995, Adaptive Control, Addison-Wesley. [36] Oliver Severin. E, 2003, Robot Companions: MentorBots and Beyond, McGraw Hill. 180 "711111111111111131111111111111111“