Open Collections

UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Design and control of a bilateral motion-scaling system using magnetic levitation Yan, Joseph 1994

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

Item Metadata

Download

Media
831-ubc_1994-0169.pdf [ 3.58MB ]
Metadata
JSON: 831-1.0087367.json
JSON-LD: 831-1.0087367-ld.json
RDF/XML (Pretty): 831-1.0087367-rdf.xml
RDF/JSON: 831-1.0087367-rdf.json
Turtle: 831-1.0087367-turtle.txt
N-Triples: 831-1.0087367-rdf-ntriples.txt
Original Record: 831-1.0087367-source.json
Full Text
831-1.0087367-fulltext.txt
Citation
831-1.0087367.ris

Full Text

DESIGN AND CONTROL OF A BILATERAL MOTION-SCALINGSYSTEM USING MAGNETIC LEVITATIONByJoseph YanB.A.Sc. (Engineering Physics) University of British Columbia, 1991A THESIS SUBMITTED IN PARTIAL FULFILLMENT OFTHE REQUIREMENTS FOR THE DEGREE OFMASTER OF APPLIED SCIENCEinTHE FACULTY OF GRADUATE STUDIESELECTRICAL ENGINEERINGWe accept this thesis as conformingto e required standardTHE UNIVERSITY OF BRITISH COLUMBIAMarch 1994© Joseph Yan, 1994In presenting this thesis in partial fulfilment of the requirements for an advanced degree atthe University of British Columbia, I agree that the Library shall make it freely availablefor reference and study. I further agree that permission for extensive copying of thisthesis for scholarly purposes may be granted by the head of my department or by hisor her representatives. It is understood that copying or publication of this thesis forfinancial gain shall not be allowed without my written permission.Electrical EngineeringThe University of British Columbia2075 Wesbrook PlaceVancouver, CanadaV6T 1Z1Date:zc. )TAbstractMicrosurgery is an ideal field to utilize the advantages of robotic technology because thetasks involve tool positioning and force sensing capabilities beyond the normal range ofhuman abilities. A robotic manipulator that can reliably extend the surgeon’s manipulationability by scaling down hand motions and scaling up tool forces would be extremely usefulin facilitating microsurgery and alleviating the physical and psychological stress manymicrosurgeons face in their work.The work described involves the development of a prototype bilateral teleoperationsystem for experiments in microsurgery. A dual-stage approach is proposed in which twomagnetically levitated wrists (a macro-master and a micro-slave) would share a commonbase positioned at the surgical site by a coarse-motion transport robot. The system hardware is described in the first part of the thesis including a discussion on the proposedfeatures and the issues in the slave wrist design. In the second part, aspects of coordination and control both at the coarse-positioning stage and the fine-motion scaling levelare presented. More specifically, an H-based approach to controller design permitting aconvenient means to find a compromise between performance and robustness is presentedand then experimentally demonstrated.11Table of ContentsAbstract iiList of Tables viList of Figures viiAcknowledgement x112345689102 System Hardware2.1 Overview2.1.1 System Requirements2.1.2 Proposed Configuration2.2 Safety1 Introduction1.1 Medical Robots1.2 Microsurgery1.3 Teleoperation1.3.1 Teleoperated Microsurgery1.3.2 Ideal Teleoperation1.3.3 Actuation Technologies1.3.4 Magnetic Levitation Technology1.3.5 Bilateral Control1.4 Thesis Overview11111113151112.3 Maglev Wrists 162.3.1 Actuation 162.3.2 Sensing 172.3.3 Operation 183 Micro-wrist Design 223.1 General Scaling Characteristics 223.2 Mechanical Design 243.3 Operational Specifications 294 Controller Design 334.1 Teleoperation Control History 334.1.1 Preliminaries 334.1.2 Measuring Performance 364.1.3 Approaches to Controller Design 404.2 Dual-Stage Teleoperation 494.2.1 Decoupled Coarse-Fine Control 504.2.2 Wrist Level Fine-Motion Control 514.3 H Control for Fine-Motion Control 544.3.1 Standard Problem 554.3.2 Robust Performance 564.3.3 Synthesis in Matlab 584.3.4 Modelling & Synthesis 605 Simulations and Experiments 705.1 Design Example 705.1.1 Nominal Free Motion Tracking 75iv5.1.2 Trading Off Different Performance Criteria 805.1.3 Trading Off Performance and Robustness 805.1.4 Hard Contact 865.1.5 PID Control 896 Conclusions 966.1 Contributions 966.2 Future Work 97Bibliography 101Appendices 107A Isometric Views of Individual Microwrist Parts 107B Machining and Tolerances 110C Matlab Source Code for H Controller Synthesis 112C.1 Main File: synsy.m 112C.2 Plant: G.205m.m 112C.3 Miscellaneous Functions: conrowss.m, concolss.m, hinfprep.m 114C.4 The State-Space Result 116VList of Tables2.1 Force/Torque Sensors Characteristics 203.2 Maglev Wrists Characteristics 32viList of Figures1.1 Basic Teleoperation . . . 42.2 142.3 152.4 172.5 182.6 192.7 213.8 233.9 253.10 263.11 283.12 293.13 303.14 314.15. . . 344.16 514.17 524.18 . . .. 554.19 594.20 61Proposed System ConfigurationExperimental System ConfigurationBasic Maglev ActuatorOptical Position/Orientation Sensing System6-DOF Force/Torque SensorsControl of Single Maglev WristB-field Scaling from a Magnetized Body . .Microwrist in OperationSlave Maglev Wrist AssemblyMicrowrist PartsActuator Force vs. Energy ProductActuator ConfigurationDetermination of Transformation Matrix . .General Teleoperation ModelDecoupled Coarse-Fine ControlSingle Degree-of-Freedom Teleoperation.H Block DiagramsAugmented Plant for Robust PerformanceFramework for Controller Synthesis . . .vii4.21 Modelling Disturbance at the Manipulator Output5.225235.245.255.265.275.285.295.305.315.325.335.345.355.365.375.385.395.4064A.41 Flotor Coil Top Support FlA.42 Flotor Coil Strip F2A.43 Flotor Coil Bottom Support F3A.44 Flotor Axial Support F4A.45 Stator Support Rods SiFramework for Design Example 71Bode Plots for Output Weighting Functions 73Bode Plots for ,c Controller Gains 76Closed-Loop Responses to Exogenous Forces for Controller ic 77Simulation for i: Free Motion Tracking 78Experiment for icr: Free Motion Tracking 79Tracking Responses for Controller k2 . . 81Tracking Responses for Controller I3 . . 82Responses to Slave Disturbances 83Simulation for ic3: Free Motion Tracking 84Experiment for I3: Free Motion Tracking 85Tracking Responses for Controller i 86Simulation for ic4: Free Motion Tracking 87Experiment for ic4: Free Motion Tracking 88Simulation for Ii: Hard Contact 90Simulation for I5: Hard Contact 91Experiments in Hard Contact 92Experiment for PID Controller: Free Motion 94Experiment for PID Controller: Hard Contact 95107107108108108viiiA.46 Stator hon Core S2.108A.47 Stator PSD Mounting Block S3 109A.48 Stator Ring Support S4 109A.49 Stator Peripheral Magnets S5 109B.50 Recommended Order of Fabrication 110ixAcknowledgementI owe gratitude to many individuals for helping me along in my work. First I wish to thankDr. Nancy Van Laeken and Betty Pearson for helping me to understand microsurgery bypermitting observation of their work, providing useful resource materials and discussingvarious issues with me. I would also like to thank Leiff Kjolby, Don Dawson and DaveFletcher for machining work, Mark Milligan for some electronics work, and Chris Sheffieldfor help in the acquisition of parts. I am grateful to many of my colleagues, especiallyChia-Tung Chen, John Hu, Tim Vlaar, Alison Taylor, Niall Parker, Kam Fung, andGrace Cheng, for help in a multitude of areas ranging from proofreads, photography, anddiscussions of a technical nature to friendship, encouragement, and discussions of a morephilosophical nature. I am indebted to Dr. Tim Salcudean for help far above and beyondhis duty in his capacity as my supervisor. Despite a busy schedule, he always made timeto discuss the project, review my work, and provide valuable insights (indeed, most ofthe ideas presented in this work were initiated by Tim) but, in addition to these dutiesone might expect of a supervisor, he has also given encouragement and guidance for mein vocation, academia, and extracurricular activities. Finally, I dedicate this work to myparents to whom I owe the most. They have supported and encouraged me at every stepand, although I often take them for granted, I love them very much.Support of this work by IRIS project C-9, by the Science Council of British Columbia(project 38, 1993), and an NSERC Graduate Scholarship is gratefully acknowledged.xChapter 1Introduction1.1 Medical RobotsThe increasing number of robotic applications in the medical field demonstrates thatthe medical community is receptive to new devices. Rehabilitation for the disabled isthe health care area which has benefitted most from robotic technology. Rehabilitativesystems include prosthetic and orthotic devices (and their associated tactile sensors),assistive vision sensing systems for the blind, and “rehab-manipulators” which aid inperforming a variety of everyday tasks in a minimally-structured environment [1, 2].Robots are becoming more prominent in operating rooms, either in an assistive oran enabling capacity. Assistive devices perform tasks which would otherwise require asurgical assistant and are aimed towards making low-cost “solo” surgery possible withincreased safety and a consistently high level of quality. An instance of this is an apparatus capable of holding and manipulating a patient’s limb, a task requiring muchphysical endurance when carried out by humans [3]. By comparison, enabling devicesaugment the surgeon’s skill and permit the execution of difficult or impossible tasks. Thesurgical robot for the custom milling of bone for cementless implants [4] and the bilateralmicrosurgery teleoperator proposed in this thesis are examples of such systems.1Chapter 1. Introduction 21.2 MicrosurgeryMicrosurgical procedures involve tool positioning and force sensing capabilities borderingon the normal range of human abilities. The motions required are typically as small asa few microns and the forces encountered may be as delicate as a few grams. Whenrequired, microsurgery commonly constitutes a few hours of an operation and is usuallyperformed after several hours of routine procedure so fatigue, which accentuates physiological tremor, is a significant problem for the microsurgeon. Despite the increasingdemand for microsurgery operations, fewer physicians are opting for this specialty because of the excessive physical and psychological stress involved. Microsurgeons requirean advanced level of training and employ highly specialized equipment. Thus, microsurgery is an ideal field to utilize the advantages robotic technology has to offer.An estimate of the quantitative requirements in microsurgery was obtained fromvideotaped microsurgery and the limited literature on the subject. The videotape hasfootage of a right facial nerve palsy operation, involving suturing of nerves roughly 1 mmin diameter [5]. The microforceps instrument used was observed to have translationalmotion primarily along the tool axis, less than +2.5 mm, while rotational motion wasmostly about an axis perpendicular to the tool, less than +2.5°. Controlled motions assmall as a few microns were typical. Data in [6] shows the tissue/tool force encounteredin opthalmic surgery averaged 30 grams and did not exceed 43 grams. There is no dataon the required tool force resolution but humans have a hand force sensing resolutionroughly 0.5% of the full scale (from 0.07 to 20 N) [7] so if this level of precision is extendedto microsurgery, assuming a force range of about 50 grams, the resolution would need tobe at least 0.25 grams.Manipulation for microsurgery tasks is guided solely by vision without any of thekinesthetic feedback which surgeons are accustomed to in routine surgery. The fineChapter 1. Introduction 3forces experienced during microsurgery tasks are further attenuated by the nature of thetools which often employ a pair of lever arms to scale down displacements. Vision allowscontinuous and accurate tool positioning but augmenting it with force feedback wouldprovide a faster and more natural response for manipulation. The kinesthetic sensationsabsent in conventional microsurgery can be provided by teleoperation.1.3 TeleoperationTeleoperation may be viewed as that branch of robotics which concerns the manipulation of environments or spaces which are generally inaccessible to man. The basicteleoperation system’, consists of a slave device tracking a master device which is directly manipulated by a human operator (see Figure 1.1). When the master is alsoactuated based on the sensor signals from the slave, such a system is described as beingbilateral (also as being force-reflecting, or as possessing force-feedback). The kinestheticsensations provided in force-reflecting teleoperators can substantially enhance operatorperformance both in speed and safety [8, 9].The usual applications cited for teleoperation are in space exploration, nuclear wastehandling and subsea exploration where the environments are hazardous and it is preferable to have the operator remotely located at a safer and more comfortable site. Anotherdomain which is increasingly being exploited is magnitude scaling of forces and motions.At the microscopic level, this concept is used to improve resolution as demonstrated bysystems which allow the manipulation of individual biological cells [10] or give the perception of feeling atomic surfaces [11]. At the other end of the spectrum, human capacitycan be increased, for example, through the use of man-amplifiers or exoskeletal extenderswhich magnify the operator’s strength and motions [12].‘The terms “teleoperation system”, “telerobotic system”, “telemanipulator” and “teleoperator” willbe used synonymouslyChapter 1. Introduction 4Operator Site I Remote SiteFigure 1.1: Basic Teleoperation1.3.1 Teleoperated MicrosurgeryThere have been numerous attempts to define a robotic microsurgery application. Charleshas looked at developing a system in his own field of opthamology and has produced quantitative specifications by measuring surgeon hand motions and tool-tissue forces duringvitreoretinal surgery [13, 6]. A robot developed in Japan for use in corneal transplantation [14, 15] is primarily an automated device but suffers from poor positioning accuracy.Several robots have been developed for stereotactic neurosurgery [16, 17]. In both examples cited, the manipulator must be programmed by the surgeon with an appropriatetrajectory and this can be a tedious task. Other research in robotic microsurgery systemscan be found in [18, 19, 20, 21] but the author has no knowledge of any systems in actualuse.This project entails the development of the prototype for a telerobotic system thatcan be used in a microsurgical environment. By scaling down the movements from thesurgeon’s hand to the surgical tool while, simultaneously, sensing forces exerted on thetool and magnifying them to the hand, the surgeon would possess a significantly increased(\—NITazk Environment()Chapter 1. Introduction 5level of dexterity. Such a system would be extremely useful in facilitating microsurgeryand in alleviating the physical and psychological stress many microsurgeons suffer in theirwork.1.3.2 Ideal TeleoperationAt this point, it would be instructive to consider what the “ideal” telemanipulator is.Intuitively, ideal telemanipulation provides complete transparency of the man-machineinterface (i.e., the operator feels as if he/she is working directly on the environment). In[7], Handlykken suggests that the ideal bilateral manipulator “behaves like two weightless arms connected by an infinitely stiff massless mechanical linkage”. Yokokohji andYoshikawa describe the ideal teleoperator as one in which, when an operating force isapplied to the system, the position and force responses of the master and slave armsare absolutely equal, respectively [22]. These notions differ in that the latter includesthe manipulators’ dynamics while the former is really the special case when the armsare massless. The final definition considered arises from a human factors standpoint.Here, the hand controller impedance characteristics would be adjusted to fit the operator’s preferences and then continuously varied to reduce fatigue and improve precision[23, 24].In the first two definitions, one-to-one correspondence between the master and slave isassumed although the second definition can easily be modified for a system with positionand/or force scaling. It would seem that the ideal telemanipulator for microsurgery isone in which the position and force responses for the slave are scalar multiples of themaster’s responses. By appropriate choice of the independent position and force scalingratios, the operator would have the perception of working directly on larger, less delicatevessels and tissues so this would be comparable to routine surgery. Although the humanfactors definition described is not as objective as the others, it may be preferred forChapter 1. Introduction 6our application because individual surgeons have different degrees of dexterity and skilland possess a wide range of physical attributes. Fatigue is also a significant problemin microsurgery and compensation for it would be helpful. Adjustable compliance is adesirable feature for controlling the interaction of the tool with the environment and canbe used to improve stability.The system’s performance might be assessed by how close it comes to ideal teleoperation. [25, p.81-83] and [1, p.88-104] also outline a ilumber of “secondary figures ofmerit” used to evaluate the overall system. Some of the more important figures ill thisproject are force application (capacity, accuracy, resolution and bandwidth), positioningcapability (workspace, accuracy, resolution aild bandwidth), stiffness, inertia, stabilityand robustness, sensitivity, cross-coupling, drift, compliance, reliability and safety, costof collstruction and maintenance, and skill required to operate. The last three itemsdeal more with functional evaluation rather than performance evaluation. Some of thesefigures are limited by the hardware (actuation mechanisms) and some are limited by thesoftware (controller design).1.3.3 Actuation TechnologiesThe engineer of a bilateral teleoperator is faced with a variety of options for actuation,both for the master and the slave. The common classes considered are pneumatic, electricand hydraulic. Under each of these categories, there is a choice in the device constructionand in the type of motion (i.e., linear or rotary). Furthermore, the action may be directlydrivell or transmitted using mechanisms such as gears, belts, cables, linkages, or shafts.Each actuator category has its own virtues and shortcomings. Pneumatic actuatorstend to be compact and lightweight but have poor capabilities 111 power output, bandwidth, and stiffness. Under the category of electric actuators are conventional electromagnetic motors, piezoelectrics and shape memory alloys (SMA). Electromagnetic motors areChapter 1. Introduction 7the mechanisms of choice for most applications because they can provide good stiffnessand high bandwidth at relatively low cost and maintenance. The drawbacks are thatthey exhibit some level of torque ripple and tend to be heavy; transmission mechanismsare often used to overcome the weight problem but they always introduce some frictionand backlash which degrades performance. Piezoelectrics and SMAs generally providesilent, compact and lightweight actuation but have a limited range of motion and possesshysteresis to some degree. Piezoelectrics have a bandwidth in excess of a few hundredHz but have low stiffness and a motion range roughly 0.01 % of their size [26]. SMAshave a good power output/weight ratio and a motion range two orders of magnitudehigher than piezoelectrics but also a much lower bandwidth (because they rely on Jouleheating), low power efficiency (limited in theory by the second law of thermodynamics),and problems in fatigue failure [27]. Hydraulic actuators are suitable for applicationsrequiring high force and power output. Their disadvantages, compared to conventionalmotors, are that they have lower bandwidth, lower efficiency and greater complexity.This is only a brief survey on actuators but is not, by any means, an exhaustive list ofthe available technologies.The choice of actuators largely depends on the application. For bilateral telemanipulators, limitations on the master often restrict the system transparency [9, 28]. For goodkinesthetic feel, the master should be capable of smooth, articulate and backdriveablemotion with an adequate response bandwidth over a comfortable range of forces andmotions [9, 25]. The smooth motion requirement eliminates the use of most transmission mechanisms because of friction and backlash. Without gears, pulleys, etc., motorsare not suitable for motions in multiple degrees-of-freedom (DOF) because they are tooheavy to transport with sufficient speed. The necessity for high bandwidth makes theuse of pneumatics and hydraulics objectionable while the comfortable range of motionsrequired rules out the use of piezoelectrics and SMAs.Chapter 1. Introduction 8For the microsurgery application, the slave must be capable of executing accurateand delicate motions and, hence, must possess similar properties described for the masterexcept for the comfortable motion and force ranges. In the first targetted application ofmicrovascular work, the required tool motion range as described previously in Section 1.2indicates that piezoelectrics and SMAs may also be inadequate for the slave.1.3.4 Magnetic Levitation TechnologyLorentz magnetic actuation technology, which can be classified as an electric type actuator, has long been used in devices such as audio speakers and computer hard disk drivesto provide precise, high speed motion along a single DOF. More recently, a magneticallylevitated (maglev) wrist based on the same technology and offering high performance 6DOF motion was presented in [29, 30]. Maglev wrists do not have any problems concerning backlash, friction, backdriveability, or articulateness and they rate well with many ofthe secondary figures of merit previously mentioned in Section 1.3.2. The maglev wristswere chosen for this project because of their superior positioning and force applicationcapabilities which are more than adequate for microsurgery tasks. A coarse-fine slave,fine master teleoperation system using maglev wrists was described in [31], while experimental results showing exceptional performance were presented in [32]. The proposedmicrosurgery teleoperator is adapted from [31] to be a coarse-stage robot transporting afine-stage dual-maglev assembly.In fairness to other actuation technologies, it should be noted that maglev wrists arenot without their problems. The two primary shortcomings are the limited motion rangeand the power consumption. The motioll range is limited by the size of the magneticgaps and there is an inherent tradeoff between the available motion range and the forcesachievable (i.e., larger gaps permit greater motion but less force and vice-versa). Forcesare generated by passing currents through magnetic gaps so simply levitating the deviceChapter 1. Introduction 9requires power even though no useful work is done. In this sense, this technology is notvery efficient and the power consumed manifests itself in the form of heat. The ability todissipate this heat directly limits the currents that can be used, effectively limiting theachievable forces.1.3.5 Bilateral ControlA telemanipulator without a well-designed controller will provide inferior performanceregardless of the quality of actuation. In general, the goal in the bilateral controllerdesign problem is to realize a stable system with “optimal” performance. The problem isa difficult one because there is no universally accepted way to quantify this performance.This is primarily because the desired dynamics largely depend on the application. Forexample, in some situations, position control is more important than force control but inother situations, the reverse is true. Furthermore, these can be viewed as the two extremesof the impedance control spectrum. A performance measure is used for system evaluationand comparison; to define it, the designer needs to consider what ideal teleoperation is.The presence of time delays, uncertainties and/or measurement noise have the effectof destabilizing the system and the controller’s robustness to these problems may beincluded in the performance measure or be specified in a separate stability measure.A crucial design step is to make a reasonable model of the system. Inclusion ofthe operator and environment in this model is necessary because it is widely recognizedthat when they interact with the teleoperator, the system dynamics may be significantlyaltered. This complicates the analysis and many authors choose to simply assume thatthe interaction at both sites is with a passive physical system (see Section 4.1.1).The design of the bilateral controller is a nontrivial one. In this thesis, a general designstrategy based on H theory has been developed and is described in Section 4.3.4. Thisapproach allows a convenient means to tradeoff the optimization of performance againstChapter 1. Introduction 10robustness. Simulations and experiments with controllers designed using this frameworkshow encouraging results.1.4 Thesis OverviewThe thesis project work is twofold. At the mechanical design level, work has encompassedthe proposal of a dual-stage teleoperation system and the design and fabrication of theminiature slave maglev wrist (an existing UBC maglev wrist will be employed as the master), including an analysis of the relation between maglev actuator performance and size.At the controller design level, work has involved the design, simulation, implemeiltation,and experimentation of an H-based bilateral controller.The targetted applications of the system described in this report are in microsurgeryfor enhancing a surgeoll’s ability in tool positioning and kinesthetic force sensing. Morespecifically, the operations in which this should prove useful occur in, but are not limitedto, reconstructive surgery, opthalmic surgery, ear surgery and neurosurgery.The remainder of the thesis is organized as follows: Features of the overall systemare described in Chapter 2, followed by a detailed description of the maglev slave designin Chapter 3. Chapter 4 provides some history in the theory of bilateral controllers, describes the dual-stage control scheme, and then presents the H-optimization frameworkfor synthesizing the fine-motion scaling controller. Simulations and experimental resultscan be found in Chapter 5. Finally, conclusions and ideas for future work are presentedin Chapter 6.Chapter 2System Hardware2.1 Overview2.1.1 System RequirementsSome qualitative features desirable in a practical microsurgery teleoperation system wereidentified through consultations with surgeons [33] and observations of several microsurgical procedures [5].1. Downward motion scaling from master to slave. Human tool positioning is barelyadequate for microsurgery because the required resolution is on the order of microns[5]. Downward motion scaling would increase the resolution of the surgical tooland allow the microsurgeon to use larger, more comfortable motions requiring lessdexterity and effort. This increased comfort would also help to reduce fatigue, andhence physiological tremor which is a significant problem at such a critical scale.Tremor would be further attenuated by the motion scaling or it may even be filteredthrough software.2. Upward force scaling from slave to master. Currently, surgeons rely on vision, experience, and a great deal of patience when performing microsurgery but delicatetissues and vessels can easily be damaged even by highly-skilled surgeons. Traumatized vessels require longer recovery times or may result in unsuccessful operationsthat need to be repeated [34]. Although vision allows continuous and accurate11Chapter 2. System Hardware 12tool positioning, force feedback would provide a faster and more natural responsefor manipulation (the approximate feedback loop times for vision and force are,respectively, 190-260 ms and 125 ms [34)). Aided with kinesthetic sensing, themicrosurgeon could execute tool motions with increased speed and safety.3. Programmable motion/force scaling ratios and compliance. The scaling ratios shouldbe selectable by the surgeon for the particular operation and for his/her comfort.A reasonable choice of motion-scaling ratio would be the visual magnification ofthe microscope to provide better correlation between what is seen and what is felt.The master compliance would affect how the command tool feels to the surgeonand the slave compliance would affect how the operating tool interacts with the environment. The slave should have a low compliance so that it can be actuated withlow forces and its motion response will be more sensitive to environment forces.4. Programmable force and motion limits. Implementation of motion and force limitswould be valuable to restrict the slave workspace, avoid application of excessiveforces, and/or guide the tool for controlled motions (e.g., to maintain a cut nodeeper than 30 tm or to prevent exerting detrimental forces greater than 50 grams).5. Convenient manual over-ride of motion scaling. The hands of the surgeon shouldalways be in close proximity to the operating site so the teleoperation can easily beover-ridden. This feature increases safety and surgeon confidence in employing thesystem.6. Backdriveability over a large motion range. The surgeon should be able to quicklyremove the system and resume routine operations when the microsurgery is concluded or in the event of complications.Chapter 2. System Hardware 137. Conventional command tool. The overall system should be commanded by a toolsimilar to commonly used medical instruments. A comfortable handle should havea handle diameter of 5-10 mm [34]. The tools for surgery have evolved over decadesof experience and a familiar and ergonomic design would be necessary in promotingits acceptance among surgeons. In addition to this, use of the command tool tocontrol the slave should not be mentally demanding. The easiest interface wouldhave the master and slave devices kinematically similar and always in the sameorientation.2.1.2 Proposed ConfigurationTo satisfy these requirements, a dual-stage structure consisting of a fine-motion scalingsystem transported by a coarse-positioning mechanism is proposed. A schematic of theconfiguration is illustrated in Figure 2.2 and a photo of the prototype system to beused for experiments is shown in Figure 2.3 (compare these to the more traditionalteleoperator of Figure 1.1). A macro-motion master and micro-motion slave’ wouldshare a common stator mounted at the gripper end of a redundant transport stage. Byimplementing coarse-fine control concepts, the system would support the large workspaceof the transport robot while retaining the performance characteristics of the fine-motiondevices [35, 30]. This proposed configuration is adapted from the one in [31] which hasexhibited exceptional performance.The minimum requirements on the transport stage are that it provide enough forceto compensate for the weight of the fine-motion stage and that its motion range be largeenough to allow the tool to easily be situated at the operating site(s) and removed whennecessary. Although passive mechanisms, which are often perceived to be safer, can1The terms “macro-motion master”, “macrowrist”, and “master wrist” will be used interchangeablyto refer to the master maglev device; similarly, the slave maglev device will be called the “micro-motionslave”, “microwrist”, or “slave wrist”.Chapter 2. System Hardware 14satisfy these criteria, a robot which tracks the motion of the command tool in some way(backdriveability is implicit here) would allow a more convenient means to position thesurgical tool. For safety, a counterbalanced design might be used so that active forcesare not necessary to compensate for gravity. Visual endpoint sensing by the operatoreliminates the need for high positioning accuracy in the robot control although highposition resolution is still necessary to achieve smooth motion and prevent endpointvibrations; these vibrations would be transmitted to the common stator and adverselyaffect the motion of the slave.The motion of the fine-motion devices with respect to the common stator is coordinated by a scaling force-reflecting controller. The macrowrist and microwrist are mountedon the shared stator in the same orientation so that using the master to control the slavecan be done with relative ease; this is in contrast to the system in [31] in which controlof the coarse-fine slave endpoint using a remote fine master was found to be mentallydemanding whether the tracking was done with respect to the world frame or the gripperCoarse—MotionRobotFigure 2.2: Proposed System ConfigurationChapter 2. System Hardware 15frame. The coarse-motion stage will be stationary for small motions of the maglev master fiotor and will track it when its motions are large (i.e., about to exceed its motionrange), allowing the operator to accurately position the slave tool over a large range ofpositions and orientations; this dual-stage control approach is discussed in greater detailin Section 4.2.2.2 SafetyDue to the delicate nature of microsurgery, safety considerations have been significantin the system design. The importance of safety is difficult to overstate and this sectiongives a relatively brief list of the pertinent details in this area.Firstly, the system has attributes which make it safer to use than conventional toolsand these are the primary features which make it desirable. These include the reducedtool motions, magnified kinesthetic sensing, and the limits on motion and force rangesthat can be implemented.Figure 2.3: Experimental System ConfigurationChapter 2. System Hardware 16Secondly, the system would possess safety features which help prevent or minimizeany damage resulting from system malfunctions. With regard to the transport stage,it would allow quick removal of the tool and might have a disable switch to keep itstationary when necessary. The medical community may feel more comfortable witha counterbalanced and passive structure to eliminate the need for active forces. Withregard to the slave, it is lightweight and mechanically constrained so that without power,it can apply a force no greater than its own weight and cannot move far. With poweron, the current in each coil, and hence the amount of force exerted, is limited throughsoftware and hardware (fuses). As well, the surgeon’s hands would always be close to theoperating site and the slave has a handle to allow an over-ride if necessary.Finally, there are other pragmatic details such as sterilization and de-magnetizationof the tool tips which would need to be fully addressed before the system can actuallybe used but they are beyond the scope of this thesis.2.3 Maglev Wrists2.3.1 ActuationEach fine-motion maglev wrist consists of two rigid elements— a magnetic-field-generatingstator and a lightweight, rigid flotor with conducting coils located in the magnetic gaps.Levitation of the flotor arises from Lorentz forces generated between the two elementswhen current is passed through the coils. Flotor levitation eliminates common mechanicalproblems such as friction and backlash, resulting in exceptional capabilities in positioning(in bandwidth, resolution, and accuracy) and force application (in bandwidth, resolution,and accuracy). The only physical connections between the flotor and stator are flexibleconnectors for energizing the coil currents, powering the infra-red LEDs, and acquiringthe F/T sensor signals [30].Chapter 2. System Hardware 17Figure 2.4 depicts a typical Lorentz actuator which consists of a flat coil situated between a pair of magnet assemblies producing a strong magnetic field. A Lorentz magneticforce F is generated when current I is passed through the coil:F = Ij(dl x B) (2.1)where B is the gap magnetic field, dl is a differential wire element pointing in the currentdirection, and the integration is performed over the coil wire length L. The more approximate calculation usually employed for a coil of N turns is derived from consideringthe force on 2N straight wires (force is applied on both sides of each coil):F = 2N11 x B (2.2)where 1 is the length of wire in the effective field, and I is the current in each wire.FCoilSoft Fe PermanentPlates Magnets‘1’Figure 2.4: Basic Maglev Actuator2.3.2 SensingAccurate optical position/orientation sensing is realized by measuring the projections ofnarrow LED beams from the flotor striking three dual-axis position sensing detectorsChapter 2. System Hardware 18(PSDs) mounted on the stator. The three coplanar beams are 120° apart as shownin Figure 2.5. Details on the hardware, signal conditioning, and calibration for theoptical sensing can be found in [36] while the algorithm and necessary calculations fordetermining position are given in [37].LED BeamsFigure 2.5: Optical Position/Orientation Sensing SystemEach wrist can be equipped with commercial 6-axis F/T sensors (see Figure 2.6).Although these sensors are optional, they are expected to significantly improve the teleoperation performance during contact tasks. The manufacturer specifications for eachdevice are given in Table 2.1. The JR3 F/T sensor has previously been used for themacrowrist but not in this project. The ATI 9105 Nano-F/T sensor purchased for themicrowrist has not yet been tested; the values specified in the table are for the originalspecial calibration arranged with the manufacturer. The dimensions and mass of the ATIsensor include the mounting plates which constitute most of the volume and mass.2.3.3 OperationWhen operating a single maglev wrist, the basic operation is shown in Figure 2.7. Thecontroller takes in the reference setpoint (in the form of desired position and/or force)and sensed position and then outputs a set of commanded forces and torques. TheseStator —Frarne — — —FlotorFrame Dual—Axis— Position SensingDetectorsChapter 2. System Hardware 19commands are represented by the wrench vector w = [fT TTJT which can be applied viathe transformation w = MI (where I is the vector of coil currents and M is a roughlyconstant matrix; e.g., see equation (3.6)). The wrench vector can be controlled to allowforces and motions in a limited range, 6 DOF workspace. The achievable resolutionin force application and positioning is limited by the resolution of the digital-to-analog(D/A) and analog-to-digital (A/D) conversions, respectively. The 12-bit D/A outputchannels being used allow force resolution 0.02% of the full range assuming negligiblenoise in the coil current drivers; for example, with the microwrist, current drivers witha range of ±3A are being built so the best resolution in force application possible wouldthen be (0.02%)(6A)(0.8N/A) 0.OO1N 0.1g. The 16-bit A/D input channels allow atheoretical position sensing resolution of 0.00 15 % of the range of motion of the light beamacross the PSD surface; referring again to the microwrist example, the signal conditioningwas calibrated for a motion range of roughly 6 mm so the best resolution in positioningpossible would then be (0.0015%)(6mrn) 0.1im (noise in the electronics and fromFigure 2.6: 6-DOF Force/Torque SensorsChapter 2. System Hardware 20Characteristic jR3 ATIMass 320 g 6.7 gCylindrical Dimensions:Diameter 7.5 cm 1.6 cmHeight 3.2 cm 1.2 cmRange:F and F 11 kg 300 g22kg 600gTorque 86 kg.cm 360 gcmResolution:FandF 3g 0.16g6g 0.32gTorque 0.02 kg•cm 0.18 gcmt Manufacturer specificationsSpecial calibrationTable 2.1: Force/Torque Sensors Characteristicsother light sources currently limits the position sensing to roughly him). More generally,the controller might also utilize F/T sensor signals from the flotor and, in teleoperation,sensed information from the other wrist.The original maglev wrists have successfully been employed in teleoperation experiments, in unilateral mode [11], and force-reflecting mode [31, 38], including a systemhaving identical master and slave maglev wrists [31, 32]. Experience with these finemotion devices indicated that the motion range and performance they provided (seeTable 3.2 of Section 3.2) were adequate for the project master in providing fast motiontracking and excellent kinesthetic feedback.Chapter 2. System Hardware 21Inverse Dynamic Coil Current -Transformation DataActuationForce/TorqueDataMaglev Wrist SystemF -ID/A I - Current I PowerDriver_j SupplyCoils LEDsControllerSet—PointFlotorLocation(wrt Stator)Lorentz IForcesFlotorKinematic PSD DataTransformation -LEDI BeamsStatorPermanentMagnets ra S___I IA/D I SignalI ConditioningLFigure 2.7: Control of Single Maglev WristChapter 3Micro-wrist Design3.1 General Scaling CharacteristicsIn designing the microwrist with the desired characteristics, the simple scaling of previousmaglev wrists should be examined. In the remainder of this section, a scaling factor n isassumed.Magnetic Field. Recall from (2.1) that the force achievable in each actuator isdirectly proportional to the magnitude of B. A general analysis of the effect of n on thisfield can be performed by comparing the vector potentials, A1 and A2, for a magnetizedbody V1 at a point F1, and the scaled body V2 at the scaled location F2 (see Figure 3.8).For V1,Ai(p)= fviMr( rdVl (3.3)where M is the magnetization, r = and is the permeability of free space [39, p.362-3]. For V2 (using the same magnetic material so that M remains unchanged),to ç MxnrA2(np) = I dV247r Jv2 (nr)3= 3dV1= nAi(p) (3.4)Using (3.4) and the relationship B = V x A, it can be shown that B2(np) = Bi(p).Thus, for any shape and configuration of magnetized bodies, B is invariant to dimensionscaling.Power. The continuous power that can be delivered to the actuator is equivalent to22Chapter 3. Micro-wrist Design 23V2\ Jrpp nr1ThpFigure 3.8: B-field Scaling from a Magnetized Bodythe maximum rate of thermal dissipation, P = A/IT. The area A for thermal dissipationis proportional to n2, while the allowed temperature gradient ZT does not change. Theaverage heat transfer coefficient ii for free convection from horizontal plates is roughlyconstant [40], while formulae for vertical and inclined plates indicate an expected increasein Ii for n < 1, which has favourable implications for the microwrist design. Thus P scalesapproximately as n2. While forced convection is a possible way to cool the coils, it isunlikely because the lightweight fiotor would be affected by the air flow.Force. Using the coil resistance equation, R = pL/A (for a wire with resistivity p,total length L, and cross-sectional area As), we get R oc n1. The relation j2 = P/R andthe previous result for power shows the maximum current scales according to I ccFinally, from (2.1), F ccChapter 3. Micro-wrist Design 24Acceleration. The acceleration capability is the actuator force-to-mass ratio. Themass rn is proportional to n3 and so the ratio scales according to F/rn cx n112. Thisrelationship demonstrates that the actuator acceleration capability is expected to improvefor n < 1.These scaling aspects apply to maglev actuation in general and is not unique to ourdesign. Discussions on how the performance of other actuators scale with size can befound in [41, 42].3.2 Mechanical DesignIn the slave wrist mechanical design, some of the important issues considered are thefollowing:1. The fiotor should be lightweight to reduce the power required to actuate it and makeits motion more sensitive to environment forces. The inadequacy of the existingmacrowrists with respect to this need for low mechanical impedance is the primaryreason for the design of the microwrist.2. The translational and rotational motion range should be large enough for the tasksdesired.3. The coils and magnets should be chosen in conjunction so that the forces requiredcan be achieved with reasonable voltages and currents.4. The system should possess a high degree of symmetry to reduce the complexity inmodeling and in fabrication.5. For maintenance purposes, the parts should be easy to manufacture within reasonable tolerances and easy to assemble/disassemble.Chapter 3. Micro-wrist Design 256. The system should be inherently safe and simple so surgeons will feel comfortableusing it.A drawing of the resulting microwrist and a photograph of it during operation (without the tool and F/T sensor) are shown in Figure 3.9. The assembly of the device isdepicted in Figure 3.10.The flotor parts are photographed in Figure 3.11(b) (the pencil is included only for sizecomparison). Most of the pieces are made from aluminum. The coils were painstakinglywound on a lathe using copper roundwire (AWG 35), each with approximately 125 turns.The resulting coils were not very uniform (e.g., the length of the smallest coil was justover 11% smaller than that of the largest coil) but this can be compensated for in thecalibration for the wrench vector transformation matrix. Better uniformity and higherpacking efficiency could be expected with flat wire. The average resistance, inductance,thickness, and width (measured between the inner and outer perimeters) of the coilsare, respectively, 7.4, 0.23 mH, 0.85 mm, and 6.8 mm. The coils are mounted usingFigure 3.9: Microwrist in OperationChapter 3. Micro-wrist Design 266 DOFForce/TorqueSensorStatorPeripheralMagnetsFlotor LEDAssemblyStator RingSupportStator PSDAssemblyInterchangeableToolStatorFe CoreFlotor TopStatorSupportRodsFlotor CoilsFigure 3.10: Slave Maglev Wrist AssemblyChapter 3. Micro-wrist Design 27thermally conductive epoxy for better heat dissipation and protected with an aluminumsheet on both sides. Standard copper wire is rated to 100° C [43] but a test coil washeated beyond 140° C before the cyanoacrylate adhesive holding it together began tobreak down; although the core temperature would be slightly higher, a conservativespecification on the maximum surface temperature would be 90°C. A test coil, preparedwith the epoxy and aluminum sheets, was run continously at 0.4 A of current resultingin a surface temperature rise of 17 Celsius degrees (from 23°C to 40°C). Since the powerthat can be dissipated is directly proportional to the temperature gradient, one couldexpect to safely dissipate four times as much power, or pass twice as much current (fora maximum continuous current of 0.8 A). Another reason this estimate is conservativeis that the power can be dissipated over the entire surface of the flotor rather than justthe aluminum sheets. After addition of the tool and force/torque sensor, the fiotor isexpected to weigh 41 g.The stator parts are photographed in Figure 3.11(c). An inexpensive means of increasing the field is through the use of soft iron for the back plates and stator core(the resulting field in the gap centers of the microwrist was measured to be 0.4 T). Themagnets being used have the highest energy product commercially available (NdFeB 45MG.Oe). Each magnet has dimensions 4.5 mm (height) x 4.5 mm (width) x 13 mm(length) with magnetization parallel to the width. Some conservative assumptions forcalculation are that the average length of wire in the field is 10 mm (use a value onlyslightly larger than the average primary axis of the coil inner perimeter) and that only 4.5mm/6.8 mm = 66% of the wires are useful for actuation. Using (2.2), the force constantfor a single actuator in the microwrist can be calculated as follows:Kf = F/I = 2NIB = (2)(125 66%)(0.Olm)(0.4T) = 0.66N/A (3.5)Chapter 3. Micro-wrist Design 28Figure 3.11: Microwrist PartsExperimentally, an average current of 0.15 A in each of the three axial actuators wererequired to levitate the 35 gram fiotor indicating an actual force constant of Kf =0.76N/A. Recent advances in ceramic magnets have increased the fields available, making maglev actuation even more attractive. Figure 3.12 was derived showing how the maximumcontinous force for a single actuator in the microwrist varies with the energy product ofNdFeB magnets (using the experimental Kf, assuming a maximum continous current of0.8 A, and taking data for the magnets from [44]).The configuration of several actuators is shown in Figure 3.13. Having the actuatorson the periphery maximizes the torque for a given size. The basic actuator differs fromthe ones in the macrowrist in that the magnet is only on one side of the coil. Althoughthis makes the fabrication simpler, a problem with this design is nonlinearity in the fieldwhich weakens away from each magnet, closer to the stator core. A gaussmeter was(a) Stator and Flotor (c) Stator PartsChapter 3. Micro-wrist Design 29used to measure the gap field between a pair of magnets and a piece of soft iron andthen repeated for a configuration in which the iron was replaced by a single magnet;these experiments demonstrated that it is likely magnets embedded in the stator corewill reduce the nonlinearity and increase the field by over 15% in some regions.The UDT DL1O PSDs can potentially provide submicron resolution [45]. An oscilloscope trace of a PSD signal showed ambient light injects roughly 10 tm of noise in eachsignal but since position is determined by the difference in a pair of signals and the noiseis mostly in phase, the actual noise observed is about 1 1um. The use of optical filters isbeing pursued to reduce this.Figure 3.12: Actuator Force vs. Energy Product3.3 Operational SpecificationsThe determination of the matrix transforming currents to forces on the flotor can bemade from examination of Figure 3.14. Adopting the coordinate system in the diagramMicrowrist Single Actuator Force vs. Maximum Energy ProductaaL100C00EEChapter 3. Micro-wrist Design 300Figure 3.13: Actuator Configurationwith the coil centers on the x-y plane, the wrench vector w is related to the coil currentsI by the relation:— 0 1 0 — 0 I0 0 0 0 12F 0 1 0 1 0 1 13= Kf (3.6)0 d 0 d 0 —d 140 —d 0 —d 0 0 15—d 0 —d 0 —d 0 16where the distance d from each coil to the center is 11.5 mm and the force constant Kfis 0.76 N/A.The fiotor has a translational motion range from its center position of +2.25 mmalong z and up to +1.7 mm in the x-y plane. The rotational motion range is ±10° aboutz, and ±4° about an axis in the x-y plane. These motion ranges are not independent ofeach other so if the fiotor is actuated to one of its translational motion limits, then there isno rotational freedom. The expected maximum continuous force is 1.8 N axially and 0.9N laterally (ignoring the fiotor mass) while the maximum continuous torque is 30 Nmmabout z and 15 N•mm about an axis in the x-y plane. As previously noted in Section 2.3.3,Chapter 3. Micro-wrist Design 31the force resolution expected is 1 mN. The force bandwidth for the microwrist can beestimated to be 32 kllz from the coil resistance and inductance (R/L); however, sincethe force depends on current, the quality of the current amplifier electronics can extendthis bandwidth. This far exceeds the speed of the current computational hardware whichonly operates at 250 Hz when operating both wrists. The slave designed is expected tomeet the tool requirements outlined in Section 1.2 although experiments in microsurgerywill be used to confirm this.A summary of the measured and estimated characteristics of the system’s maglevwrists is presented in Table 3.2.Figure 3.14: Determination of Transformation MatrixChapter 3. Micro-wrist Design 32Characteristic Mastert SlaveFlotor mass 600 g 35 gCylindrical Dimensions:Diameter 13 cm 7 cmHeight 11 cm 6 cmSingle Actuator:Maximum continuous current 3 A 0.8 AForce/Amp 2 N/A 0.76 N/AMaximum continuous axial force 18 N 1.8 NNominal Motion range:z translation +4.5 mm +2.25 mmx-y translation +4.5 mm +1.7 mmz rotation +7° +10°x-y rotation +7° +4°Force Bandwidths 3.7 kHz 32 kllzPosition Resolution 5 um 1.0 gumForce Resolution 0.1 N 0.001 Nt UBC maglev wrist presented in [31, 32]j Force bandwidth assumed limited by coil inductanceTable 3.2: Maglev Wrists CharacteristicsChapter 4Controller DesignAs previously discussed, the goal in designing controllers is to realize a stable system withoptimal performance. The challenges are to develop a reasonable system model, determine the desired behaviour depending on the application and plant limitations, and thendesign the controller to optimize the performance in the face of possible uncertainties,disturbances, measurement noise, and time delays. This chapter presents a brief historyof ideas in bilateral control, followed by a discussion on the motion coordination andcontrol for the dual-stage structure proposed, and concludes with an H-based approachto designing controllers.4.1 Teleoperation Control HistoryBilateral teleoperation is still a relatively recent field with much of the analysis anddevelopment of controller architectures occurring in the past decade. This section isconcerned with some measures of performance in the literature and several interestingapproaches to the nontrivial bilateral control problem.4.1.1 PreliminariesAn important step in the synthesis and analysis of controllers is to develop an accuratemodel. A commonly used approach is to consider 5 separate subsystems as shown inFigure 4.15, e.g., [46, 47, 48].The operator and task environment each interact with a single subsystem (i.e., their33Chapter 4. Controller Design 34respective manipulators). The master and slave manipulators each interact with their respective environments (the operator can be considered to be the “master’s environment”)and the controller. The arrows indicate that the flow can be in either direction. However, it should be recognized that a signal “entering” the controller is a measured quantitywhereas one “exiting” is a desired setpoint (these will be denoted by the subscript d).Usually, continuous contact is assumed between the manipulator and its environment soUh Vm and Ve v. Sometimes, the master, controller, and slave will be grouped into asingle block representing the teleoperator as shown by the dashed line in Figure 4.15, e.g.,[23, 22, 49]. A possible problem with doing this is that, if the designer is not careful, theindividual dynamics and limitations of each manipulator may be concealed so unrealisticcontrollers may be synthesized.For simplicity, the blocks are usually modeled as linear, time-invariant (LTI) systemsin which the dynamics of the force transmission and position responses can be mathematically characterized by a set of network functions. One can then draw upon the vastamount of network theory for synthesis and analysis of the controller. A further simplification often made is assuming passive environments. Physically, a device is passive if itcannot increase the total energy of a system in which it is an element (assuming it hasno initial energy). Mathematically, an n-port is passive if for any set of injected flowsL TeeoJ2ercLtorJFigure 4.15: General Teleoperation ModelChapter 4. Controller Design 35(v) and applied efforts (f) satisfying its network function, thenf T(t)v(t)dt> 0 (4.7)Colgate and Hogan showed that when a 2-port A(s) (such as the communication block)is connected to a passive 1-port B(s) (perhaps the environment, or environment andslave together) then passivity of A(s) is sufficient for demonstrating overall stabilityand is also necessary when dealing with any passive B(s) [50]. If the limited range ofenvironment impedances encountered is known, then requiring passivity of the 2-port tomaintain stability is overly conservative; alternatively, if the environment possesses anactive state-dependent term, then there is no guarantee of absolute stability.The mathematical network functions most commonly used for the LTI blocks are theimpedance Z(s), admittance Y(s), and hybrid H(s) matrices. For example, in [46], thecommunication is represented by the hybrid matrix H(s) satisfyingfrnd(s)H(s) Vm(5) (4.8)Vd(S) fe(5)A less intuitive representation that is sometimes useful is the scattering matrix S(s)which maps efforts plus flows into efforts minus flows [51]. For example, (4.8) can bechanged tof(s)— v(s) = S(s)[f(s) + v(s)] (4.9)where f(s) = [fmd(S) fe(5)]T and v(s) = [Vm() — vsd(s)]T. One advantage of usingS(s) is that it readily allows determination of whether the system is passive; a system ispassive if the co-norm of its scattering matrix is no greater than unity (i.e., SIIOO 1)[51].Chapter 4. Controller Design 364.1.2 Measuring PerformanceWe now take a brief look at how some researchers have addressed the need to defineperformance in bilateral teleoperation.Time-Based MeasuresIn experimental work with teleoperation, a frequently used performance measure is thetime required to complete a task [52, 9]. This “task completion time” is desired to be assmall as possible.Another example of a time-based measure is the one used by Ananiev and Nakhapetjan [1, p. 14],1 ret2 1Q=AX(t) I + AYT(t) dtj (4.10)t2—il tIwhere t1 and t2 are the initial and final times, respectively, of the trajectory tracking,/XT and AYT are the 2-D cartesian coordinate deviations (additional coordinates caneasily be defined), and 9 is desired to be as small as possible. A problem with this quantity is that it is very frame dependent. Another observation is that perfect performance(i.e., Q = 0) does not require any transparency as long as the slave tracks the masterexactly.These time-based measures are easy to quantify experimentally but they cannot beexpressed in terms of engineering variables so it is difficult, if not impossible, to designfor them. Other obvious problems include the dependence on the human subject and onthe task at hand. The remaining performance measures described are frequency-based.Chapter 4. Controller Design 37Transmitted Impedance MeasureIn [49], Lawrence models the teleoperator as the 2-port characterized by the hybrid matrixsatisfyingfh(s) = Hii(s) H12(s) Ve(S) (4.11)Vh(S) H21(s) H22(s) fe(3)Setting fe(S) = Ze(S) Ve(), where Ze is the environment impedance, yields the transmitted impedance, Z(s).fh = (H11 —H12Z)(H21 —H22Z)’Vh = ZtVh (4.12)Perfect transparency here is described as having the transmitted impedance the sameas the environment impedance (i.e., Z Ze); this is equivalent to the ideal responserequirement of [22] and is satisfied when H11 = H22 = 0 and H21Ze = ZeH12. Lawrencetherefore suggests that Z be used as the transparency measure. Unfortunately, no formula is provided to actually quantify this transparency. Z by itself certainly providesno useful gauge but must be compared to Ze. However, even closeness of Z and Ze at agiven frequency isn’t a good measure because the “feel” may not be good if their shapesare different at that frequency (e.g., ZT might be sloping up at 20 dB/decade so it will feellike a mass while Ze might intersect it as a horizontal line and feel like a damper). Thissuggests that the performance should somehow be quantified over a weighted frequencyrange of the impedance difference (or its slope). For evaluating stability, Lawrence usesthe standard Nyquist plot.Chapter 4. Controller Design 38Performance Index of ManeuverabilityIn [22], Yokokohji and Yoshikawa define a “performance index of maneuverability” basedon the following formulation. LetXm(8) = Gmp(s)rop(s); fm(s) = Gmf(5)rop(.5) (4 13)x3(s) =G3(s)r0; f3(s) =where Top 15 the operator’s force input, the subscripts m and s refer to the master andslave, respectively, and p and f indicate whether the transfer function G(.,.)(s) is forposition or for force, respectively. Now define some performance indices.Position Index: = J°”t F(Gmp(jw), G(jw))W(w)dw 4 14Force Index: Jf = jmam F(Gmf(jw) ,8f(jw))W(w)dwwhere F(.,.) is a “suitable difference function” for transfer functions, W() is a weightingfunction of frequency, and Wmax is the manipulation bandwidth of humans. If J,, and Jfare small, then the performance index is high.This measure is more clear than the one given in [49] but also has its problems. Thetransfer functions G(.,.) (s) are dependent on the environment impedance so Ze shouldappear explicitly in the performance index. Again, there are no examples of the indexcalculation nor suggestions for suitable differenee or weighting functions to use. Theweighting and difference functions for the separate indices should probably be different.The evaluation of stability is based on passivity. Although not explicitly stated, itappears that the stability measure is the norm of the system scattering matrix which mustbe less than unity and is generally smaller for systems with greater stability margins.H, PerformanceWith regard to H-based controllers, a reasonable measure is the x-norm of the resultingclosed-loop transfer function, denoted by this norm is desired to be as smallChapter 4. Controller Design 39as possible for a given plant. This approach allows specification for performance androbustness in a single measure (see Section 4.3.2). Because H control is well adaptedfor multi-input, multi-output (MIMO) systems, active environments which can applyexogenous forces can easily be included. These issues of a single measure and includingactive environments can be compared to the previous two examples in which performanceand stability are evaluated separately, and a passive environment is always assumed.For example, in [53], Kazerooni et. al. propose an H design framework for teleoperators. Assuming a set of desired dynamics for the system (X8 = AxXm, f = Affm, fm =ZmXm, fs ZsX8, where AfZm = Z3A), then the deviation of the actual response canbe quantified by an error vector z defined byW(X3 — Axm)z Wf(fsAffm) (4.15)Wzm(Xm— Z’fm)where W(.) are frequency weighting function matrices (W8x3— Z’f8) could have beensubstituted for any element of z). Then for the vector of exogenous signals represented byw, the controller should be designed to minimize TZWWOO. The measure of performanceis which is chosen as the upper bound on this norm (i.e., y > It is statedthat -y is the designer’s choice; however, -y cannot be chosen arbitrarily small and it seemsintuitive that its minimization is the design objective. For a specified plant G, the smallercan be made, the better the performance of the controller.In some ways, this formulation is similar to the performance index of maneuverabilitydescribed in [22] because it is a measure of a weighted difference between the desired andactual transfer functions. Although some experimental results are discussed, there areno calculations to show what weighting functions should be used and what performancevalues were achieved. It seems reasonable to set the desired dynamics to be the idealdynamics of direct manipulation as chosen in the control approach discussed in [31].Chapter 4. Controller Design 40Before closing this discussion on the performance of H controllers, it should benoticed that a properly specified plant will allow the designer to quickly assess how wellthe controller meets the specifications. The reference value for the cc-norm then is unityso if < 1, the controller can meet the design goals and if y > 1, it cannot. It mightalso be loosely argued that if -y is not close to unity, then the plant may have beenpoorly specified because if the designer had carefully considered the system dynamicsand limitations then a reasonable choice of weightings could have been made; however, ifthe designer had this much insight, then H theory might not really have been necessaryfor the optimization!4.1.3 Approaches to Controller DesignNetwork ModelsRaju et. al. developed the use of 2-port network models to design bilateral controllers[23]. In this paper and the next two examples described, the telemanipulator is modeledas a single block so that only three subsystems need to be considered (see Figure 4.15).Raju models both the human operator and the environment by second order impedances.By modeling these as passive immitances, the overall design is simplified because the oniyrequirement for stability is passivity of the teleoperator. Although in reality, the operatoris not passive, the authors feel that such a model is sufficient for their work.The teleoperator 2-port model is represented by the impedance matrix satisfyingfh(s) Vm(S)= Z(s) (4.16)fe(S) vs(s)The control laws are then chosen to obtain impedance characteristics at each portthat satisfy the performance requirements which are specified in the form of a maximumChapter 4. Controller Design 41position error, a minimum response bandwidth and a maximum overshoot. In this paper,a simple example that used position and velocity errors in the control law is given byXm(S)fm(s) —k11 —k12 k13 k14 Vm() (4.17)f5(s) k21 k22 —Ic23 —k24 x3(s)vs(s)with the sign convention adopted to suggest that the response effort should oppose theflow at the ports. It is interesting to note that the gains are constants instead of transferfunctions and no force measurements are used. It is also possible to view this as a firstorder controller if only position measurements are available.In [22], Yokokohji and Yoshikawa adopt the same impedance network as in (4.16).The controller design objective is to realize the ideal response: when the operator appliesan operating force to the system, the position and force responses of the master and slavearms, are absolutely equal, respectively, regardless of the task dynamics. The authorsderive a controller scheme utilizing all measured values (i.e., forces and positions ofmaster and slave) that achieves this performance! Of course, this derivation assumes noparameter uncertainties, disturbances, sensor noise, nor time delays. The form of thecontroller used isXmfm K(s) K12 K13(s) K14 fh (4.18)f8 K21(s) K22 K23(s) K24fewhere the position gains have the form K3(s) = k + ks + kaS2, = 1, 2 and1, 3, and the force gains are constants. This is more general than the one in (4.17)because it utilizes sensed force information and second order gains on the position. ItChapter 4. Controller Design 42is shown that for a controller realizing the less stringent requirement of identical masterand slave position responses, the scattering matrix norm is subunity and, hence, systemstability is guaranteed by assuming the environment and operator are passive except fora state-independent operating force. However, this also assumes availability of exact andinstantaneous measurement signals so robustness to time delays and plant uncertaintiesis not dealt with.In [49], Lawrence characterizes the teleoperator via a 2-port hybrid matrix as previously described by (4.11). Recall that his approach is to design the controller so that Zis close to Ze. It is shown that the mechanical dynamics of the manipulators makes itimpossible to satisfy the perfect transparency condition and that a general teleoperatorarchitecture utilizing all four measurements (e.g., as in (4.18)) is necessary to obtain“good” transparency. No controller is actually suggested although different features oftwo control architectures are compared.Impedance ControlHogan describes a control strategy for a manipulator in contact with the environment[54]. The argument is that a manipulator in contact with the environment may not betreated as an isolated system and when the amount of dynamic interaction at the manipulator/environment interface is not negligible, the inability to control the mechancialwork exchanged makes strategies to control only position, velocity, or force inadequate.The proposed solution is to control the impedance, and hence, the dynamic behaviour ofthe manipulator.Along any degree of freedom with dynamic interaction between two physical systems,one may be viewed as an impedance and the other as an admittance. For LTI systems,either immitance characterizes the other but for general manipulation which is nonlinear,this is not true and real physical systems exist which can be described in one form but notChapter 4. Controller Design 43the other. In most other papers, the teleoperator is often represented by a 2-port with thechoice of immitances being made on the basis of convenience so this nonlinearity is nottruly addressed. Hogan argues that for almost all manipulatory tasks, the environmentis essentially an admittance because it accepts force inputs and the motion responseis the output. Consequently, the manipulator should be viewed as an impedance andthe controller should be capable of modulating this impedance as required for the task.The assumption that the environment is an admittance directly leads to the validityof manipulator impedance superposition, even when uncoupled from the environment oreach behaviour being superimposed is nonlinear. This allows the controller to be designedto simultaneoulsy satisfy different requirements by superimposing different actions.Although teleoperation is not specifically discussed by Hogan in [54], it is an area inwhich the impedance controller described can be used. Indeed, impedance controllersfor telemanipulators are described in a number of papers. Hannaford proposed bilateral impedance control employing estimators to identify the operator and environmentimpedances which are then used to modulate the manipulator impedances [55]. In [56],Colgate provides an insightful discussion on designing a bilateral manipulator to “shape”the perceived environment impedance, with special attention given to systems in whichthe dynamics of the master and slave are not desired to be the same. An impedancecontroller is used with impedance matching in [47] by Slotine and Niemeyer for preventing reflections in a passive controller. The success of impedance control dependson the availability and accuracy of the environment model and this can be a drawback. An interesting approach to overcoming this difficulty proposed in [56] is to use thestructured-singular-value j to provide robust impedance shaping.Chapter 4. Controller Design 44Passive ControlIn [461, Anderson and Spong address the problem that time delays have a destabilizingeffect on bilateral teleoperators. The overall system is represented by the five subsystemspreviously shown in Figure 4.15.The communication block can be expressed by the hybrid equation as in (4.8) whichis restated here.frnd(s)= H(s) Vm(3) (4.19)—vd(s) fe(5)The standard control law,0 eTH(s) = , (4.20)_esT 0makes the measured master velocity the slave velocity setpoirit and the measured environment force the master force setpoint. If there is any time delay (i.e., T > 0), it isnon-passive (this is easily verified by looking at IISW), and this may lead to instability.The communication is redefined to mimic the dynamics of a lossless transmission line toexploit its passive nature. The resulting symmetrical communication block can easily beshown to be passive for all time delays by examining its scattering matrix.tanh(sT) sech(sT) 0 e_8TH(s) = 5(s) =—= 1. (4.21)—sech(sT) tanh(sT) e_ST 0The implementation of this in the time-domain isfrnd(t) = f8(t — T) + Vm(t) — V8d(t — T) (4.22)Vsd(t) Vm(t — T) — f8(t) + fmci(t — T)It is interesting to note that the hybrid matrix representation of this control is somewhatcounterintuitive because the presence of hyperbolic functions would seem to indicatethat future measurements are required. This demonstrates the importance of choosing amathematical model which can provide an insightful solution.Chapter 4. Controller Design 45Niemeyer and Slotine provide an extension to this passivity-based approach by including a wave impedance term b and looking at the use of impedance control [47]. They usean energy-based derivation in which wave variables representing power are transmitted.(4.22) becomesfmd(t) = f8(t — T) + b[Vm(t) — v8d(t — T)] (4.23)Vsd(t) Vm(t T) — [f3(t)— fmd(t — T)]By using a symmetric configuration with an impedance controller on either side of thecommunication block, impedances can be matched at both sides to prevent wave reflections which corrupt the flow of useful information.In view of how the passive control law helps to maintain stability in the presenceof time delays, we felt it would be instructive to see how this applies to signals beingtransformed by a more general transfer function F(s). For perfect time delays, F(s)e2’ but now consider a first order transformation function defined by F(s) = (1 —s)/(l+s). Notice a few of the similarities:• Both are in J?HO (i.e., the Hardy space of rational functions with real coefficientsand finite co-norm) but not their inverses.• Both are all-pass with F(jü)I = 1 Vwe.• Both introduce a phase lag of increasing magnitude as .‘ increases; however, fore_8T, the lag increases without bound (0 = —wT) while for (1 — s)/(1 + s) itincreases only up to 1800 (0 = tan1(2w/(w — 1))).• Both do not affect DC signals (i.e., P(0) = 1).In light of these similarities, a control law with a similar S(s) using the first order transferChapter 4. Controller Design 46function F(s) was attempted.0 F(s)S(s) =F(s) 01/2 ( 0 P*(j) 0 P(j)= supA IF’(j.ü) 0 P(jw) 0P(jw)2 0= sup = sup A’!2(I) = 10 IF(i”)2This shows that indeed, the system is passive. It is not difficult to see that this can easilybe extended to a communication block with the frequency-domain implementation,frnd(s) = Vm(5)+Fl(8)[fs(5)Vsd(S)] (4.24)f3(s)—vd(s) +P2(S)[fmd(5) —where Pi(s),F2(s)RH, and Pi(jw)I,(P2( < 1VweJ?.Proof: The scattering matrix for (4.24) is0 Pi(s)S(s) =P2(s) 01 2 0 P(j) 0 Pi(jw)ISWoo = supJ IP(jw) 0 P2(j) 0P2(jw) 0= sup2 =sup(P1(J,P2(Jw)) 10 Pi(j)2Thus, the system is passive.DThe conclusion is that as long as the communication block affects measurements fromone site to another with a transfer function that belongs to and norm no greaterthan unity, then the control law (4.24) is passive. This is true even if the transfer functionsChapter 4. Controller Design 47for each direction are different from each other. This suggests a more general approachto passive controller design than the one proposed in [46].It should be added that Lawn and Hannaford experimentally test the passivity concept of [46] and conclude that the stability guarantee comes at the expense of reducedstiffness, resulting in poor teleoperator transparency [52]; the experimental task completion times were found to be 50% higher for the passive control approach compared tomore conventional approaches.Hoo ControlIn [31], Salcudean et. al. attempt to mimic Handlykken’s ideal massless, rigid linkbetween an identical master and slave, as suggested in [7]. First, local controllers at themaster and slave sites are used to provide proper and stable transfer functions Pm(s) andP3(s) relating the forces and positions for each manipulator. The measured hand andenvironment forces are fed to the slave and master actuators, respectively along with a“coordinating force” based on the positional error e. The control law then is given by= feCef8 = fh + Ce (4.25)A parameterization of all coordinating force transfer functions which stabilize the systemis given by C = [I— Q(Pm +P3)]’Q where QeJtHm. Some analysis shows that thesystem dynamics can be represented by an admittance matrix.Xm = Pm(1Q(PmP8))(fhfe) (4.26)Ps(I+Q(PmP6))The admittance matrix has the advantage of being strictly proper whereas the hybrid andimpedance matrices are improper. The approach is to use Hm-optimization to find theChapter 4. Controller Design 48Q which best shapes the closed-loop response (minimize the tracking error and maximizetransparency) and then find the corresponding C to implement.The primary advantage of this parameterization of all stabilizing compensators is theability to choose a desired Q and then finding the required compensator. Another usefulaspect is it allows one to easily check if a particular compensator is stabilizing or not.The problem may be posed as any standard H problem for which numerous algorithmsare available to optimize performance [57, 58, 59]. Some issues that need to be addresssedare the assumption of stable local transfer functions (e.g., the environment impedancesmay change this) and the robustness to measurement noise.Kazerooni et. al. attempt to use H control theory to shape the relationships between forces and positions at both ends of the teleoperator [531. A Norton equivalentrepresentation of the operator is chosen to model the source of force interacting with themaster manipulator. A fair bit of experimental work is shown in getting the transferfunction matrices for the human arm dynamics and environment dynamics for a specific task performed in a certain manner. The approach is to minimize a weighted errorbetween the actual and desired transfer functions for positions and forces as describedpreviously. The control signals are based only on the measured contact forces at bothsites; the authors confess that this controller may suffer from positional error buildupbut dismiss it as partially correctable by periodic initialization of both manipulators.In [48], Leung et. al. combine H control and n-synthesis’ into a single frameworkto design a teleoperator which is stable for a pre-specified time delay while optimizingperformance characteristics. The design is done in two stages: (a) design for free motionso an operator force results in motion of the master and corresponding motion of the slavewithout any slave dynamics being fed back to the master; and (b) design for constrained‘it-synthesis will not be described here but can be found in any book with a good discussion onmultivariable control such as [60, 61]. Essentially, it permits the designer to decouple uncertainties sothat a less conservative controller can be found.Chapter 4. Controller Design 49motion where the measured environment contact force results in master actuation forcesto reflect this interaction.For the first stage, standard H techniques are used on both the master and slave tominimize the error vector; this amounts to getting good velocity tracking of both manipulators, ensuring actuator inputs do not exceed specified saturation limits, and providinggood disturbance rejection properties. This optimization determines the controller gainson measured positions. The master is unaffected by the slave dynamics so time delaysdo not affect the overall system stability.The second stage is a bit more difficult. In addition to the previous design specifications, the master force feedback tracking of the sensed environment force must beminimized, and the system must be stabilized for a specified time delay in the communication channel. For this stage, the time delay and performance specifications aretransformed into uncertainty blocks, which the controller design must be made robustto. This problem is then ideally suited for n-synthesis techniques.The touted advantages of this approach are that the design for delay and performanceare executed in a single step and the resulting controller is not overly conservative in thesense that slightly larger time delays actually do destabilize the system. A case study isprovided but it does not provide much insight into the effectiveness of the approach.4.2 Dual-Stage TeleoperationNow the discussion is turned to the motion coordination and control for the proposedmicrosurgery teleoperator structure. This section describes the dual-stage teleoperationapproach. The focus will be on a single DOF but the results can be extended to all sixDOF.Chapter 4. Controller Design 504.2.1 Decoupled Coarse-Fine ControlA decoupled coarse-fine, hybrid rate/position control strategy is proposed for the robottool positioning. In the basic scheme, illustrated in Figure 4.16, the slave local motionx3 is always controlled in position mode to track the master local motion Xm (this fine-motion stage is elaborated on in Sections 4.2.2 and 4.3.4), while the transport robot’sendpoint location XR is controlled in rate mode to track the master only when it is nearits local workspace edge. The small centering motion, barely noticeable to the operator,is necessary to allow the slave manipulator to be positioned against a stiff obstacle withthe master fiotor in its center [62]; except for this term, the control of x. and XR areessentially decoupled. The time delay is shown because a significant delay is inherent inthe controller for the existing transport robot. The control would then be implementedasXsd— xm/npf(xm) Xml>TXRd=( kx8 otherwiseXm = XR+XmX = XR + x (4.27)where ri is the desired motion scaling ratio, r defines the deadband range, f(.) is ascaling function2,k is a small constant, and Xm and X are the absolute master andslave positions, respectively.Thus, the slave can be operated in scaling (as will usually be the case) or non-scalingmode (e.g., when relatively large but accurate motions are required). When using ratecontrol, the quality of smooth motion is dependent upon the robot’s positioning resolution2Several possible scaling functions are described in [62] but the one that likely will be implementedfirst is f(am) = K(IXmI — r)sgn(xm).Chapter 4. Controller Design 51Figure 4.16: Decoupled Coarse-Fine Controlbut this is not perceived to be a problem. High positioning accuracy is achieved throughvisual endpoint sensing. A safety feature can be added to avoid unintentional use of thecoarse-stage rate control; two possible solutions are to include an option to disable therobot motion or to provide sensory (e.g., audible, kinesthetic, or visual) warnings whenthe master is near the rate control region.4.2.2 Wrist Level Fine-Motion ControlThe motion of the two maglev wrists with respect to the common base is coordinatedby a scaling force-reflecting controller and here the discussion is for the ideal case. Afterlinearization and gravity feedforward, the maglev wrist flotors can be modeled as singlerigid bodies with the motions along orthogonal axes being decoupled. This justifies theuse of a single DOF model of teleoperation. The bodies obey the following equations ofmotion:mms2x = fh + fm = fha — HXm + fmMaster Local WorkspaceRate ControlActive RegionFine —motion Coctrse —motionControl Controlm8s2x3 = fe + fs = fea — Ex8 + f8 (4.28)Chapter 4. Controller Design 52Figure 4.17: Single Degree-of-Freedom Teleoperationwhere mm, m3,Xm, Xs, fm, and f3 are, respectively, the master and slave masses, positionsand actuator forces. For the stability analysis, the operator hand force fh and environment force f are each considered to possess active exogenous components fha and fea,respectively, and passive feedback components fhp = HXm and f, = —Ex dependenton the hand and environment impedances, respectively.Ideal teleoperation implies complete system transparency. For identical master/slavesystems and unity scaling ratios, the concept of ideal teleoperation can be realized bysetting fm = fe and f8 = fh, where hand and environment force measurements areassumed to be available and exact.For a bilateral motion-scaling and force-scaling system, transparency is slightly morecomplicated. Consider that the upward force-scaling ratio flf and the downward motion-scaling ratio n, are independently chosen constants (i.e., the goals are fm = flffe andXm = rtx3). Then, for a mass ratio Tim = mm/rns, these desired scalings are achievedForce Sccthing: n1fhMasterPosition Scaling: i/npSlaveChapter 4. Controller Design 53with the control lawfrn = flffefh + (nj — flrnTi’p)fe (4.29)mpThis results in the following equations relating exogenous forces to positions:fha + flffea = (mms2 + H + Xmnp J+ fea =( pm 2+ H + x3 (4.30)flf \ flf flf JBy examining (4.29), when flf = the force scaling from master to slave is l/nf, asone might expect. However, when flf there is a local feedback term at the slavemaking its “apparent” mass a scaling of the actual mass by flpm/flf, as seen in (4.30).At the master end, the environment impedance will feel like E scaled by the ratio flf/flp,while the slave feels H by the inverse ratio. It was shown that a local feedback could occurin the slave to change its apparent mass but a similar feedback could just as easily beused to make the master’s apparent mass different. These equations demonstrate that ourideal teleoperation can be achieved for n7, and flf chosen independently by applying (4.29);however, for transparency in which the apparent master and slave device properties donot differ from their actual ones, we require flfOf course, ideal teleoperation is impossible due to time delays, modeling errors, measurement noise, etc.. Each wrist would suffer from positional drift even without anyexogenous forces (this problem can be remedied with a local controller, e.g., PID, toeach wrist). Using a controller with only force measurements as in (4.29) would alsoresult in a loss of kinematic correspondence between master and slave. This problem canbe solved by using a coordinating force term f based on the positional error [31, 62]:f = (kp+skv+)(xmnpxs)Chapter 4. Controller Design 54frn = Tlffcfc= f + (nj — nrnnp)fe+ (4.31)mp flfEven when force measurements are not available, f can be used to control the wristsalthough much higher gains (in k and k) are required. One final note about the controller (4.29) is that positive local feedback generally leads to a lower stability margin sothis restricts the independence in choosing the scaling ratios (in particular, it would bedesirable to have 71 flmflp).Stable transparent teleoperation can be sought through a multitude of control strategies. A coordinating force strategy similar to the one in [31] using only simple PID gainson the position tracking error has already been implemented experimentally and providesrelatively good transparency. A more advanced controller based on H-optimization theory has also had experimental success and is presented next.4.3 H Control for Fine-Motion ControlIn 1981, Zames introduced the concept of H control as a method of synthesizing a controller to minimize the sensitivity of a simple single-input, single-output (SISO) system[63]. Since then, the field of H-optimal control has grown tremendously and is widelyrecognized for its theoretical and practical use in synthesizing and analyzing controllers.The co-norm of a transfer matrix 0(s) is defined as its maximum singular value aover all frequencies.:= sup U(G(jw)) (4.32)Essentially, it places a bound on the output of a signal in the following sense: if y = Cuthen WYB2 GIIuII2 (for areal,vector-valuedsignalx(t), xW2 = [fxT(t)x(t)dt]/).Chapter 4. Controller Design 554.3.1 Standard ProblemTo motivate this section, the standard H problem is described.w zConsider the block diagram in Figure 4.18(a). There are four vector-valued signals ofinterest: the plant’s exogenous inputs w (e.g., reference signals, disturbances, measurement noise, etc.), the error outputs z to be minimized (e.g., tracking errors, weightedactuator outputs, etc.), the compensator control signals u and the measurements y usedin the control law. The plant G and controller K are assumed to be systems which canbe mathematically represented by proper, real-rational transfer matrices. Frequency dependent weighting functions which characterize the desired behaviour are assumed to beabsorbed in the plant G (e.g., for reducing sensitivity to disturbances or for increasingrobustness to plant uncertainties). It sometimes is instructive to separate the exogenousinputs as in Figure 4.18(b) so that disturbances are represented by v1 and measurementnoise is represented by v2. The system is internally stable if the nine transfer matricesfrom w, v1, and v2 to z, y, and u are in l?H.z(a) Standard Problem (b) Robust ProblemFigure 4.18: H Block DiagramsChapter 4. Controller Design 56Returning to the model in Figure 4.18(a), the plant G can be partitioned asGii(s) G12(s)G(s) = (4.33)G21(s) G22(s)For a given compensator K, the resulting input/output closed-loop transfer functionmatrix is given by= F1(G, K) = G11 + G12K(I —G22K)’G1 (4.34)The notation F1(G, K) explicitly acknowledges that the matrix is a linear fractionaltransformation on K specific to C but the notation will be adopted for convenience.The H-optimization problem is to find the realizable proper, real-rational controllerK which stabilizes G and minimizes the norm ITZWOO. If such a K exists then G issaid to be stabilizable. Define y as the upper bound on the norm (IITW < -y). Thenmathematically, this problem can be cast in the following form:Given G, solve the minimization of ::= inf(WT0) 7 (4.35)IE’I’where ‘I’ is the set of all controllers which stabilize G. Design for the H criterion corresponds to designing for the worst-case exogenous signal. The analytical and numericalsolution to this problem is nontrivial because it may not exist (if G is unstabilizable) ormay not be unique.4.3.2 Robust PerformanceAlthough H control was originally introduced for shaping the system sensitivity function S(s) to provide good performance, it can just as easily be used for its dual, thecomplementary sensitivity function T(s), to provide robustness. That is to say, insteadChapter 4. Controller Design 57of minimizing the norm of the weighted sensitivity minimize IWaTW (thenotation for the weights will become evident soon). Now with the H approach, it ispossible to combine these two and minimize a single norm defined by:w1s(4.36)W3TThis is described as the “Mixed-Sensitivity Approach” in [61], but is more commonlyknown as the “Robust Performance Problem” [60]. Because of the relationship betweenS(s) and T(s) (i.e., their sum must be unity), there is an inherent tradeoff and one canonly be minimized at the expense of the other. The practical solution is to minimizeS(s) at low frequencies where the model is more accurate and performance is moreimportant, and then minimize T(s) at high frequencies where there is more uncertaintyand robustness is more important. This is done by choosing Wi(s) to be low-pass andW3(s) to be high-pass; if the norm is desired to be subunity then a restriction in thechoice of weightings in order for a solution to exist isö(W’(jw)) + (W’(j)) > 1Ve (4.37)To see how this might be used in a plant, consider a standard feedback control systemand its transformed H model as shown in Figure 4.19(a) and (b), respectively. S(s)and T(s) are the mappings from a reference input r to the error signal e and the outputy, respectively. From a practical standpoint, it is also important to limit the controlsignal u and this can be achieved by including it as an output. The H approach is tominimize the norm of the matrix mapping r to a vector with all three of these signals,properly weighted:W1e W1SZ W2u = W2KS r = Tzrr (4.38)W3y W3TChapter 4. Controller Design 58so the goal is to minimize TzrIc,o.It should be easily recognized that the relative magnitudes of W1 and W3 can beused to tradeoff the performance versus robustness. For example, if it is found thatperformance is not good enough at a certain frequency then W1 should be increased inthat region while if instability is occurring, then W3 should be increased.4.8.3 Synthesis in Matlab[57] showed that H (sub)optimal controllers exist if solutions to a set of associatedRicatti equations exist. The Matlab Robust Control Toolbox [61] uses a “loop-shiftingtwo-Ricatti” algorithm to calculate the H controller with the option of performing abinary “P-iteration” to get an optimal P to achieve the goal:PT()1 (4.39)T()where the designer specifies the set of indices q on which the iteration is to be performed(in [61],-y is the symbol for the scaling parameter but here, P is used to avoid confusionwith the notation in previous sections; in fact, P is more like the reciprocal of y in (4.35)).The other indices q are not scaled either because they cannot (e.g., once the actuatorlimitations are known, the saturation signals cannot be altered) or the particular errorsignal isn’t too significant (e.g., if the position tracking is only required to be within acertain percentage but force tracking should be optimized, then the iteration would beperformed on the force error but not the position error). This is consistent with the twodifferent viewpoints on weightings which are that they may be fixed quantities not subjectto manipulation by the designer or that they are parameters chosen by the designer toallow different criteria to be traded off. If a solution for which I’ < 1 is found, then therequirements are too strict and the weighting function for the indices in need to beChapter 4. Controller Design 59(b) Transformed into H problemFigure 4.19: Augmented Plant for Robust Performancer z3(a) Standard feedback control problemChapter 4. Controller Design 60reduced by a factor of F; similarly, if F > 1, then tighter requirements can be made byincreasing the weighting function for the indices in q by I’.The algorithm accepts the plant in a state-space form G58 satisfyingAB1 B2 x xz = C1 D11 D12 w = G33 w (4.40)y C2 D21 D22 u Uand outputs the compensator and resulting closed-loop system. However, the descriptionincludes absorbed weightings so the real closed-loop system must be calculated separately.The Matlab H functions require that some conditions be satisfied.dim(w) dim(y) = rank(D21)dim(z) > dim(u) = rank(D12) (4.41)Thus, there must be more exogenous inputs than measurements and more output signalsthan actuator signals. The rank restrictions mean that some components must be properbut not strictly proper. These restrictions do not stem from H theory but rather fromthe algorithm employed.4.3.4 Modelling & SynthesisThe most general structure of the model in our framework appears in Figure 4.20. Fm andP3 are the master and slave plants, respectively, fh is the operator hand force which can bedecoupled into an active part fha and a passive part fhp, and similarly, the environmentforce fe can be decoupled into fea and f,. The applied actuator and the net forceson the master and slave are, respectively, fma, fsa, fm and f3 (this is slightly differentthan the nomenclature in Section 4.1), while the output master and slave positions are,respectively, Xm and x3. Measurement noise in the force and position signals can beChapter 4. Controller Design 61Figure 4.20: Framework for Controller SynthesisChapter 4. Controller Design 62represented by the vector v2 = [nfm Ttfs 12pm fl8]T which result in the measurementsignal used in the compensator y = [fh fe fern fejT Disturbances are represented bythe vector v1 = [dcrn d3]T which alter the commanded actuator forces u = [frna !salT.WT represents a time delay, H and E represent the hand and environment “impedances”,respectively, and finally, K represents the compensator which is to be designed.Some remarks about this structure need to be made:1. This can easily be transformed into either of the standard Hrn configurations. Thesignals v1 and v2 were absorbed in w as in Figure 4.18(a).2. Even in the simplest 1-DOF case, the teleoperation problem is MIMO because theminimum required inputs are fh and fe and the minimum outputs involve Xrn andxs.3. H and B are not the conventionally used impedances in which the mapping isfrom velocity to force. However, it is notationally more convenient to use a singlefunction for mapping between the signals of interest (position and force). Thereader who finds this difficult can remedy the situation by adding a differentiators from the position signal to the impedance block.4. In the synthesis, the actuator amplitude saturation limits shown in the figure werenot used because they are nonlinearities which cannot be handled in Hrn theory.However, in the simulations and experiments, these saturations have been implemented. Although an amplitude saturation was not used, a saturation weightingto limit high frequency actuation was used in the synthesis.Chapter 4. Controller Design 635. The time delay WT(s) = c_ST is infinite-dimensional in polynomial space and obviously cannot be implemented in state-space. An all-pass approximation of arbitrarily high order can be made for WT using the MacLaurin series expansion:= 1+x+x2/2+36 ...-sT—____— 1— sT/2 + (sT)2/8 — (sT)3/48 +e— eST/2— 1 + sT/2 + (sT)2/8 + (sT)3/48 +Approximations using a truncation of this series are most valid at low frequenciesand if other frequencies are of interest then a more general Taylor series expansionabout a different value can be used.6. WT(s) has only been added to the slave side to consider the case of remote teleoperation in which the controller is on the master’s side. It would be just as easy, butunlikely necessary, to model such delays on the master side. For the fine-motionscaling stage, delays are expected to be negligible.7. Fm and P are assumed to be the resulting transfer functions after the use oflocal controllers to stabilize each manipulator. For example, in our experiments,local PD controllers have been used so that Fm = 1/(mms2 + bmS + km) and= 1/(m5s2+ b3s + Jc8). Here, Pm and F3 are assumed to be given but, moregenerally, their local controllers might need to be designed for a particular task(e.g., choose them according to the functions E and H).8. The disturbances here are assumed to be at the compensator outputs (or equivalently at each manipulator input) which can be interpreted as random forces ortorques acting on the arms or uncertainties in the compensator, perhaps due tocalibration error or discretization of the output signals. Although not shown in Figure 4.20, disturbances can also be at the outputs of the manipulators; for example,for the master manipulator, this is shown in Figuie 4.21(a). The difference betweenChapter 4. Controller Design 64frnthe disturbance and noise is clear when interpreting m as the nominal position, Xmas the actual position, and m as the measured position. By including disturbancesin the model, robustness to unexpected signals or to modeled uncertainties can beincreased. When dealing with uncertainties, the designer usually assumes eitheran additive perturbation as in Figure 4.21(b) (Pm,actuai() = Pm(s) + a()) or amultiplicative perturbation as in Figure 4.21(c) (Pm,actual(S) = (I + zm(S)Fm(S))with some known bound on the norm of the perturbation.(b) Additive Perturbation (c) Multiplicative PerturbationFigure 4.21: Modelling Disturbance at the Manipulator OutputThe designer is left to decide which error signals to minimize and how to weigh themto provide the desired behaviour. The difficulty is that there is a great deal of freedomin these choices and it may seem rather arbitrary how this is done. As an example, apossible set of outputs to minimize is as follows:• Zi = Wi(fma — nfWTfe): The master actuator force should track the delayedenvironment force (since the presence of the delay makes instantaneous trackingimpossible), scaled by a specified force scaling ratio flf. This is a performancefm(a) Disturbance SignalnpmxmChapter 4. Controller Design 65requirement which is important at lower frequencies so W1 is chosen to be low-pass. Minimization of this signal might be described as “maximizing the forcetransparency at the master”.• Z2 =W(XsWTPm(fh+nfWTfe)/np): The slave position should track the delayedmotion of the “expected” master motion scaled by a specified position scaling rationni,. It is “expected” because it depends on the forces fh and fe but does notinclude fma. Again, this is a performance requirement and W2 is chosen to be low-pass. Minimization of this signal might be described as “maximizing the positiontransparency at the slave”.• Z3 = W3(Xm — nx5): Kinematic correspondence between the master and slaveshould be maintained. This signal is similar to z2 and, in fact, they are essentiallyequivalent when z1 is perfectly optimized (i.e., frna = rifWTfe) and there is no timedelay. W3 is chosen to be low-pass.• Z4 = W4fma: W4 is chosen to be high-pass. This serves the dual purpose of limitingthe master actuator so it saturates at high frequencies and improves robustnessbecause the controller output will roll off at high frequencies.• Z5 W5fsa: W5 is chosen to be high-pass for the slave actuator using the samereasoning as for W4.The redundancy between z2 and z3 can be eliminated by ignoring one of them; another option is to design a more symmetric controller by changing z2 to maximize theforce transparency at the slave. The weighting functions Wfm, Wfs, Wpm, Wps, Wem, andW3 describe the frequency spectrums in the noise signals flfm, flf3 pm, and n7,3 anddisturbance signals dcm, and d3, respectively (i.e., fl(.) = W(.)ñ(.) for ()I2 1 andChapter 4. Controller Design 66d(.) = W(.)d(.) for IIdoW2 < 1). With the choice of z made, the model can be transformedinto the standard problem.Define the signals W= [fha fea fm flf3 pm ps dcm 5}T, y = [fh+flfm WTfe+flf8 Xm + pm WTX8 +8jT, U [Ima !salT and z = [zi ... zS]T, then the plant is described byG =W0G1 WOtLtGl2 1 (4.42)[ G21W G22 ]where=G IH Lw1[y] ujW1 = diag{1,1,Wfm,Wfs,Wpm,Wps,Wcm,Wcs}W0 = diag{Wi,W2,345}r 0 —flfWT 0 0 0 0 1 nfEP3EW1+P3EWTPmI PsWPmflj/flp 0 0 0 0 WpPmHPm F8EWT (i + flfPmEWI np 1+PE np )-11— PmH flpPsE 0 0 0 0 FmH flPEWT0 0 0000 0 0L 0 0 0000 0 01 flfEFEW7WTPmHPmfl PSEWT (i + flfPmEPEW)flp flpFmH flP8EWT1 00 1Chapter 4. Controller Design 671+PmH 0 1 0 0 0 HPmH 0C21= 0 1+PE 0 1 0 0 0 —WEFSEPmH 0 0010 FmH 00 WTP8E 0 0 0 1 0 WP8EHPmH 00-WEPSEG22—PmH 00 WPsEwhere FmH= 1+FrnH and PsE = 1E are introduced for notational convenience. Wjrepresents the weightings at the plant inputs (weighting functions might have been usedin place of unity on the exogenous force signals to reflect their expected spectrums) and isless subject to design than W0, which represents the weightings at the specified outputs.It should be recognized that for the SISO case, it doesn’t matter if the weighting isconsidered at the input or output but for the MIMO case, the choice is more important;for example, the poles of a weighting function used at one input will show up in thetransfer function of that input to every output but if it is used at an output, it exists intransfer functions for every input signal to only that output.It should be observed that it is reasonably easy to simplify the plant C (and thecorresponding signals) to simpler models. For example, (i) to ignore the time delay, setWT = 1; (ii) if no F/T sensing is available, remove rows 6 and 7 and columns 3 and 4;(iii) to ignore the passive feedback, set E = H = 0 FmH = Fm, FE = F5; (iv) foridentical master and slave with unity scaling, set Fm = P5 and ii = = 1; and (v) toignore the actuator saturations, remove rows 3 and 4.Chapter 4. Controller Design 68Controller AdvantagesAt this point, it is worth pointing out the differences between this approach and mostothers. The most important feature to keep in mind is how general this approach is.There is no assumption of a passive environment as in most papers. Both the humanand environment can be active systems applying exogenous force signals. If a stabilizingK can be found, then the stability is guaranteed because the work deals directly withthe closed-loop system.The signals of interest here are forces and positions. Other approaches often adoptvelocities instead of positions and there are two reasons this might be done; firstly, forcesand velocities can be used together in passivity theory (e.g., as in (4.7)), and secondly,the mapping from force to velocity has a single pole but the mapping to position has adouble pole. Intuitively, the position signal is more important and velocity stability doesnot guarantee position stability.A multiple of control objectives can be simultaneously specified and the performancecan be measured in a single value. This provides a convenient framework for tradingoff various design criteria by changing both the input and output weightings. There isalso a means to address the well-known time delay problem by including an approximation of arbitarily high order for the delay; however, it may be argued that because anapproximation is employed, stability is not guaranteed or that impractically high orderapproximations are required in some cases. Although most of the discussion has been ondownward motion-scaling and upward force-scaling, the framework is valid for any independently chosen scaling ratios so it can just as easily be used in the control of devicessuch as man-amplifiers. This is the most general controller of the ones discussed so farbecause it uses all the position and force signals and places no restriction on the order oftheir gains.Chapter 4. Controller Design 69The problem has been cast in a H framework which works well for MIMO systems.There are a number of solutions for standard H problems and some other concepts,such as the parameterization of all stabilizing compensators, should prove useful.Unfortunately, this approach has not overcome the problem of needing a model of theimpedances for contact forces. In the experiments, it will be demonstrated that this canbe important in hard contact tasks. However, this shortcoming does not invalidate thecontroller framework of Figure 4.20 because it does not preclude the existence of somesort of impedance estimator “embedded” in the controller.Chapter 5Simulations and Experiments5.1 Design ExampleIn this chapter, a detailed example is presented to show how the H framework describedin the previous chapter can be used to design a motion-scaling controller. The generalsynthesis algorithm used here is to initialize the master and slave parameters, call a subroutine to build each “subplant” (G11, ...G22 and their augmented counterparts), combinethem into a single plant, use model reduction and separate it into the state-space formG88, and finally, use the Matlab “hinfopt” function [61] to find the compensator. Withoutthe model reduction, the synthesis is slow and the resulting high order controller wouldbe impractical to implement.To start with, the structure of the model here is as shown in Figure 5.22 which wasadapted from Figure 4.20. The F/T sensors have not been attached to the wrists yetand time delays are assumed to be negligible so these aspects are reflected in the model.The simulations and experiments are only for motion along a single DOF (the verticalz-axis).The master flotor mass is 0.62 kg and a local PD controller with a proportionalconstant 150 N/rn and damping 3 N/(rn/s) is applied (these gains were chosen somewhatarbitrarily; also, the experiments include an integral term to eliminate the steady-stateerror but it is assumed to be small enough to ignore in the synthesis). The slave flotormass is 35 grams and it is reasonable to adjust its local PD controller to make its transfer70Chapter 5. Simulations and Experiments 71L finThp_x, xFigure 5.22: Framework for Design ExampleChapter 5. Simulations and Experiments 72function a scalar multiple of the one for the master. The resulting transfer functionsmapping force to position for the master Fm(s) and slave F3(s) areFm(s)= 0.62s2 +3s + 150F3(s)= 0.035s2 + 0.17s + 8.6(5.43)Define the signals as w = [fha fea 9pm ps cm d3]T, y = [xm + pm x3 + fl3]T,and it [fma !sa]T. The output vector is chosen to beWi(fma—l2ffe)= W2(xm rix3) (5.44)W3fmaW4fsaThe first output allows maximization of the master force transparency, the second isfor maintaining kinematic correspondence, and the third and fourth help limit the highfrequency actuator gains. It should be remembered that the bandwidths for the actuatorsmust be higher than those for both the force and position tracking so that control signalscan be applied to optimize them. As well, human asymmetrical input/output capabilitiesindicate that the force transparency bandwidth should be higher than that for kinematiccorrespondence [24]. The weighting functions should reflect these qualities. For example,for the kinematic correspondence, the designer might want the error to be less than 10%for frequencies below 10 rad/s but allow errors above 40 rad/s to be as high as 100%; theweighting could then be chosen to be W2(s) = Similar reasoning could be usedto choose the other weightings. Bode plots for the ones used are as shown in Figure 5.23.To determine the measurement noise weightings, both wrists were deactivated andtheir position signals were stored. A spectrum analysis of these signals revealed that theGoindBcjCu cIP‘Io01!I+r I I)I’-. 0Chapter 5. Simulations and Experiments 74noise was not concentrated in any area so for simplicity, the noise weighting signals werechosen to be constants of the largest components seen: Wpm = 2.5[tm and W 1gm;in reality, the high frequency uncertainty is expected to be quite high and this should berepresented in the weightings. A similar analysis might have been performed on the outputs from the current drivers to determine the spectrum of disturbance signals expectedbut this was not done as stable performance was achieved with the simple assumption oflow frequency disturbances of magnitude 1 mN in the microwrist (previously calculatedas the highest force resolution using the present hardware) and 10 mN in the macrowrist(the weighting spectrums assumed are Wcm and W8 = OO1)The motion and force scaling ratios were selected to be n, = 10 and flf = 40,respectively. The model of the plant then becomesG= W0G’11 WOUG12 (545)02l Win 022wherez wGy ‘Udiag{1,1,Wpm,Wps,Wcm,Wcs}W0 diag{Wi,W2,34}0 1+PE 0 0 1 flfEPgEFmH flpFsE 0 0 FmH —nP8EG110 0 00 0 00 0 00 0 0Chapter 5. Simulations and Experiments 751 flfEF.9EFmH —rLPFSE1 0o 1PmH 0 1 0 FmH 0o PsE 0 1 0 PsEPmH 0o sEIn the following examples, a nominal controller is synthesized, and then it is shownhow one might try to improve different performance criteria, improve robustness, andaccount for human and environment impedances.5.1.1 Nominal Free Motion TrackingFor this first example, the impedances will be set to zero (i.e., H = £ = 0). This choiceconsiders that each wrist might be in free motion and simplifies the plant to be controlled(some of the elements vanish and others have lower order). This plant has an order ofalmost 40 but for the synthesis, the Matlab balanced model reduction function “balmr”was used to reduce it to 10. By performing the F-iteration on the first two outputs, acontroller was found with the parameter F = 0.320, implying that in the worst case, theerror signals may be as much as three times larger than the performance specifications;this controller will be designated as it1. The resulting continuous-time controller gainsare as shown in Figure 5.24. Although it may not be obvious from the Bode plots, eachgain is a strictly proper transfer function. The closed-loop responses for the unaugmentedplant (i.e., without the weighting functions) are shown in Figure 5.25 for the force inputs(the responses to each noise and disturbance input are not as important and do notCD0< CD_—.•CDCDCDCDCt)CoCD0OCDECD—.COo-i.CDCoCDCD.CD“C.II.o•CDCDCo—.COCDCt)CD‘)Co(—.CDCoCoC_0÷_CD_CO_CDCD_CDCoCDCDCD-—CDCCoIICoCoIIC/)CoCD:CDCoO::CD_COCDcOCD_Co“CCoCoCo<1CoCCD—.CDCDCO_•C0CC÷CD—CDC()CD_CD.C)C)Co.CoCCDCoCo,.—.CD‘CDCoCD÷Co_Co00‘CDCoCD•:CD.CD(yqCDC)C<CD -c•Co.02CDCCDCDCD—CDCD<1—.CCD0‘CD--GandBGandBrjCDCDCDO.51CoThCDCD—CDC)9-.C)o0—.o0CDCo0CoCo0F—’oD’-+SD_.______________cyq‘—‘—‘—FCID0CoCo —.CoCDC):i C)CD Co)C)000c:200‘-+00I-’L.Chapter 5. Simulations and Experiments 78Master Forces vs. Time (f_h=” “; fma=ITime (s)Slave Forces vs. Time (f_e=”_____ ‘; f_sa=”%204o’6o’84i’2ii’6i2Time (s)Positions vs. Time (x_m=”“; 1 0x_s=’0.10’40’6Time (s)Figure 5.26: Simulation for i: Free Motion Trackingstate-space controller was used in the simulation to more accurately describe the systemin the experiments.For the experiments, the state-space controller was discretized for a sampling periodof 5 ms using a Tustin approximation. The “feel” was reasonably good and some experimental results are shown in Figure 5.27 (the F/T sensors have not yet been mountedon the wrist flotors so the exogenous forces cannot be displayed). In (a), the masterwas randomly driven by hand with the slave in free motion and in (b), the roles werereversed.Chapter 5. Simulations and Experiments0.5ci,Actuator Forces vs. Time (f_ma=__; 40*f_sa=-1.50.5 1 1.5 2 2.5 3 3.5 4 4.5Time (s)Positions vs. lime (x_m=”__._.; 1 0*x_s=IIIII:.. .‘.J ::Time (s)(a) Driving master while slave in free motionActuator Forces vs. Time (f_ma= ; 40f_sa=I I I I I I I1.5 2 2.5 3 3.5 4 4.5 5Time (s)Positions vs. Time (x_m=..; 1 0*x_s=EC.2 000zC.)0U-E5C000iiiiii0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (s)(b) Driving slave while master in free motionFigure 5.27: Experiment for icr: Free Motion Tracking79Chapter 5. Simulations and Experiments 805.1.2 Trading Off Different Performance CriteriaConsider now that the designer may want better force tracking. The simplest way todo this is to change the weighting W1 to be larger in the frequency range of interest.For simplicity, W1 was made four times larger and the synthesis was repeated. A newcontroller, k2, was obtained with the parameter F = 0.082. It is interesting to note herethat 1’ decreased by almost as much as W1 was increased, indicating that there may be nosignificant improvement in the force tracking but the position tracking may be four timesas bad. Only the Bode plots for the force and position tracking responses are importantand these are shown in Figure 5.28. When compared to the closed-loop responses ofcontroller i in Figure 5.25, it is seen that the new force tracking is actually worse at lowfrequencies but becomes better for frequencies above 200 rad/s or 32 Hz; the positiontracking is also worse at low frequencies but is relatively unchanged for high frequencies.Thus, slightly better high frequency force tracking was achieved at the expense of lowfrequency tracking of both position and force. It is likely that the reason no significantimprovement in the force tracking could be made is that the performance in controlleric1 was already close to the limitations given the assumed disturbances and actuatorlimitations. Experiments with the controller ,i2 showed that the transparency perceivedby the operator is worse, as expected because the manipulation at low frequencies ismuch poorer.5.1.3 Trading Off Performance and RobustnessIn the last section, it was mentioned that the force transparency may be limited bythe assumptions on disturbances and actuation. Now consider how one might sacrificesome robustness to get better performance. For example, consider the original plant butassume no force disturbances and that the actuator limitations are only half of whatCDCC EI IGndBGndBPbaedogCi.jC)CD:::::.::aqoCC00 I.h-)CO( CCDCDCDCOCCCcCDCoo•COCD8<CDo‘CDa±I-CoCDCDCDa.CDCD—.CDCDCO—.CD,s_*_±3oID-SCD0CDCD0CDIICD—CO..ICeCC$DCDCOCD—.—‘Cs-:CDgIICCD—.0—.C COIIc-b-=CO C)÷CDCCOCD—cOI-±COC‘-CD5±<1$--HCDCDi—PhasedogC-) C CO 5± I__3 C) C C 0oq CD CC C)5±—.CoCDCDCO•)CDCCOCCDCDCO5±,-jCCD CDC)COCa;COCD—.CDCDC-) o1I-:jCDCDCDIDCOCDCDCDaCD5±COC—.a;—.CDCDCD,5±czO --a;I-—..—35±CCDa;CD5±‘—4-s oCDCDI-COCD CoCOCO 5±o±CDC5-4-=HCD‘-03a; C 0—4-—5-4- I 00PhodegCt,CD:..;H...C.Yci’ 0CD Co C CO CD Co 0 CAD-COC,o-q 0 C,C,C, 0 C,PhodogI-’-o C, I-’ 0 CO C C, C C, COGok,dBPhooedogGndBGndBI IPhooodogo CO-C,!C C,oCO00Chapter 5. Simulations and Experiments 84Master Forces vs. Time (f_h=”“; fma=”1czci)00LI0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2Time (s)Slave Forces vs. Time (f_e=”“; f_sa=”0.211.21.41.61.8 2Time (s)Positions vs. Time (x_m=”“; 1 0*x_s=h0.052U,0U--0.050 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2Time (s)Figure 5.31: Simulation for I3: Free Motion Trackingmuch better force and position tracking (the force tracking is indeed closer to the originally specified forty times). Experimentation with the new controller is shown in Figure 5.32. The higher frequency actuation components expected were observed and thesystem was less stable as evidenced by oscillations when neither manipulator was held.Alternatively, if greater robustness was required, the designer could assume largerdisturbances. Controller i was synthesized by assuming disturbances at the masterand slave that were ten times their original values and the parameter was F = 0.25.liji’.1 lir IChapter 5. Simulations and Experiments 85Actuator Forces vs. Time (f_ma=”_; 40*f_sa=....):0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (s)Positions vs. Time (x_m=__”; 1 0*x_s=_...)w5EC.Q 0Cl)00-5-1r0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (s)(a’) Driving master while slave in free motionActuator Forces vs. Time (f_ma=”_;40*tsa=_...)4020z0Ii--20-400.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (s)Positions vs. Time (x_m= ; 10x_s=10 I I I I11 C I I I I0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (s)(b) Driving slave while master in free motionFigure 5.32: Experiment for I3: Free Motion TrackingkIi1ii tIIllCDCo C C,)—-CDoo‘•<CDCo0—.o0ZCD:—.—.CCo±0CDCDCD‘ Co÷CD00CoI—_COCD0—.,,CoCoC)C.)oC-.ZCO-—.--•acC) 00 C+CD0Co?0CD C) o—.0CD C)0CDCD—.CD‘oCDC.5CDc,SDCDCD 0)-‘ CD‘•lCJ0<CDoCD(•CDCoC.’CD0cCDCDCD,CDC)0C±•‘3.CD Co—CD-ocCD C/)‘CDCOCOC)CD0CD—•—•CO 0CD CoCDCD C/)oCCoCDC7)Co•CD —.COCDCoCD‘C—0C±Co0CDICDIC) 0 Co I-. C-.0 C) 0C) -a.C C) 0 0PhedogGndBCD C1 C) —-ciqHCDI-d 0 0I I 00Chapter 5. Simulations and Experiments 87Master Forces vs. Time (fh=”“; f_ma=”10Time (s)Slave Forces vs. Time (f_e=” “; f_sa=” “)° I tL:Time (s)Positions vs. Time (xm=’______ 1 O*x_s=h0.10.60.811.21.41.6 1.8 2Time (s)Figure 5.34: Simulation for I4: Free Motion TrackingChapter 5. Simulations and Experiments 88Actuator Forces vs. Time (f_ma=_...;40*f_sa=—1—1I I I I I I I0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (s)Positions vs. Time (x_m= ; 1 0*x_s=Time (s)(a) Driving master while slave in free motionActuator Forces vs. Time (Lma=° ; 4Of_sa=5 I I5—1 I I I I0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (s)Positions vs. Time (x_m= ; 1 0*xs=I I I I10Time (s)(b) Driving slave while master in free motionFigure 5.35: Experiment for I4: Free Motion TrackingChapter 5. Simulations and Experiments 89impedance of 500 N/rn is suddenly introduced resulting in unstable oscillatory behaviourthat builds quite rapidly. To overcome this, an impedance model of the environment asa spring was included in the plant. A relatively small value of E = 10 N/rn was assumedand the resulting controller, I5, had a P value of 0.402. Simulations of this controllershowed that the system remains stable for impedances even larger than 3000 N/rn. Thiscan be seen in Figure 5.37 in which the contact was introduced as before. The fact thatthe simulations are stable for impedances much higher than the one specified would seemsomewhat conservative but this is not quite true because measurement noise was includedin the synthesis but not the simulations. A problem with this simulation is that it is notvery accurate because constant contact with the environment is assumed. The discontinuous forces expected in experiments would likely make things worse. A more importantproblem is that the synthesis is performed for a situation with a constant environmentimpedance so stability is not guaranteed for free motion. It may be possible to modelthe environment impedances as uncertainties as previously described in Section 4.3.4 butthis has not yet been pursued.As expected, hard contact was found to be a problem experimentally as evidenced inFigure 5.38(a). Here, both wrists were left in free motion and a rigid metal surface wasbrought to the edge of the slave flotor edge and stiffly held there, resulting in instability.The modified controller designed for contact with the environment was implemented andsuccessful in achieving stability under the same conditions (see Figure 5.38(b)). Theforce reflection for is was noticeably poorer than for i but still quite good.5.1.5 PID ControlFor comparison purposes, results for a PID controller are presented in Figure 5.39. Themaster was set to track four times the slave position with a PID gain of Km(s) =1.5+0.03s+ (i.e., frna() Km(s)(4xs()xm()) where frna() is in Newtons and x3(s)Chapter 5. Simulations and Experiments 90Master Forces vs. Time (t_h=” “; f_ma=”DVfZ : : s— Jci) n_ . —. :__._._ ..2 ‘ :o.Ii. : :500.5 1 1.5Time (s)Slave Forces vs. Time (f_e=’ “; f_sa=”-20.5 1.5Time (s)Positions vs. Time (x_m=”“; 1 O*x_s=f I)05. .5Time (s)Figure 5.36: Simulation for ic1: Hard ContactChapter 5. Simulations and Experimentsza)0Ii-za)oCLIMaster Forces vs. Time (f_h=”_____ f_ma=”91‘-30: : : : : : i r.. .1— : J’..I...I .:: 11,1 r5 I I I I I I I0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9Time (s)Slave Forces vs. Time (f_e=” “; f_sa=”L10 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9Time (s)1 Positions vs. Time (x_m=” “; 1 0*x_s=hEC0U)00-51-0iTime (s)Figure 5.37: Simulation for i: Hard Contact1Chapter 5. Simulations and Experiments 92Actuator Forces vs. Time (f_ma=”__; 40f_sa=I I I I I I I205 115 2 25Time (s)Positions vs. Time (x_m=j; 1 0*x_s= K)Time (s)(a) Controller ic1 designed for free motionActuator Forces vs. Time (f_ma=j; 40*f_sa=n0.4 I I I I I02 j \fl.1 ‘V0%o41I52I5e3I54I55Time (s)Positions vs. Time (x_m=J; 10*x_s=0.500.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (s)(b) Controller .‘c designed for constrained motionFigure 5.38: Experiments in Hard ContactC.;,II I I I I I I IChapter 5. Simulations and Experiments 93and Xm(S) are in millimeters) while the slave tracked one tenth the master position witha gain of K3(s) = 0.1 + 0.005s + . The actuator forces shown in the figure are higherthan for the other controllers partly because they absorb the PID controllers alreadypresent in the H controllers. The controllers should not be directly compared becauseasymmetrical position tracking was specified; there was no force tracking requirement.The resulting “feel” is quite good. However, the instability under hard contact is worsefor this situation as seen in Figure 5.40.2-2a--4I I I I5t5 2 2.5 3 3.5 4 4.5Time (s)Positions vs. Time (x_m=”__“;10*x_s=Time (s)(a) Driving master while slave in free motionActuator Forces vs. Time (f_ma=..; 40*f_sa=Chapter 5. Simulations and Experiments 94Actuator Forces vs. Time (f_ma= ; 4Of_sa=z52C10z0LL-10Time (s)Positions vs. Time (x_m= ; 1 0*x_s=2C10EC0-100-20I I I0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (s)(b) Driving slave while master in free motionFigure 5.39: Experiment for PID Controller: Free MotionChapter 5. Simulations and Experiments20. 10C)Actuator Forces vs. Time (f_ma=° °; 40*f_sa=n-10-2C I I0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (5)Positions vs. Time (x_m=__; 1 0*x_s=EC0C’)00Figure 5.40: Experiment for PID Controller: Hard Contact95---riIi•[I0.5 1 1.5 2 2.5 3 3.5 4 4.5 5Time (s)Chapter 6Conclusions6.1 ContributionsA bilateral teleoperation system suitable for microsurgery experiments has been introduced. This is the prototype for a unit which would enable surgeons to overcome limitsimposed by human dexterity to execute microsurgery tasks with greater speed, ease, andsafety.A dual-stage configuration consisting of a pair of maglev wrists transported by atransport robot was proposed so that a high degree of teleoperation transparency can beachieved over a large workspace. The overall system was designed to meet requirementsdetermined through observations of several microsurgical procedures and from the relatedliterature.A detailed description of the slave wrist design was presented including a generaldiscussion on size-scaling for magnetically-levitated devices. It was shown that for themaglev actuators described, the force-to-mass ratio, and hence the acceleration capability,increases as dimensions are scaled downward; however, as the actuator is downsized, thepracticality is limited by the force and motion ranges achievable and the machiningtolerances for the parts. This microwrist has been built and successfully employed inmotion scaling teleoperation.Aspects of the bilateral controller design have been presented. This includes a briefdiscussion on a decoupled coarse-fine hybrid rate/position control strategy. The issues96Chapter 6. Conclusions 97of performance, transparency and the tradeoff with robustness are discussed in detail. Avery general H framework for trading off these features has been described. Simulationsand experiments which demonstrate that such an approach leads to practical controllerdesigns have also been presented.6.2 Future Work• There is a need to experimentally verify the B-field linearity in the gaps to determinethe validity of the wrench vector transformation matrix. Measurements using theF/T sensor might be used to recalibrate the matrix if necessary.• The position sensing should be improved. There can be a better calibration procedure including better alignment of the LEDs and PSDs. Significant noise reductionin the PSDs is expected through the use of better optical filters.• The fine-motion scaling already works quite well with only position sensing butforce sensing is anticipated to significantly improve the performance during contacttasks. The signal conditioning for the microwrist F/T sensor needs to be developed.To operate both F/T sensors, an additional A/D board will be required and all thecorresponding software will need to be programmed.• Experiments need to be performed to demonstrate the coarse-fine motion coordination system described. No problem is expected in this area because of simulationsof the described system and previous successes with the similar system in [31]. Atransport robot with better positioning and payload capabilities needs to be foundas the CRS A460 may severely limit the overall system performance.• There should be some effort to extend much of the work already done with previousmaglev wrists. This includes work on parameter identification for obtaining a goodChapter 6. Conclusions 98model [64]. This would be useful for finding the mass moments of inertia which havenot yet been calculated. It will also be useful to have a remote center of compliance(RCC) which essentially allows the fiotor to have an apparent center which is fixedin space [65]. For example, it might be desirable to have the RCC close to the tooltip, perhaps in the same proportion as the hand would be on the command tool.Another suggestion is to allow a “retraction” mode similar to simulated stiction toallow the tool to maintain a position without the need for the surgeon to constantlyhold the command tool.• The effect of model reduction and discretization in the controller should be carefullyexamined. Higher order controllers are more general and allow greater complexity. However, these come at the expense of more computational time, effectivelylimiting the system’s operating bandwidth. It was found that the system could beoperated at 200 Hz with a controller of 9th order and that the results were quitefavourable. However, these limits were not pushed to see what would be best andas computational power increases, it is expected that higher order controllers willbe desired.• The H controllers implemented so far have been for a single DOF and eventuallythey will need to be extended to 6 DOF. Depending on the controller order, therequired computational power for this may be expensive. Also, for the rotationalmotions, a model of the inertia moments is required. Aside from these aspects,implementing this control is not expected to be a problem because 6 DOF teleoperation already works well with PID controllers.• Different control schemes besides the H approach should be tried and compared tosee which ones are most effective. Both sliding mode control and adaptive controlcould be quite promising but they are also difficult to analyze. A a-synthesisChapter 6. Conclusions 99approach might be used to attain better, less conservative performance but theproblem is usually non-convex. The use of impedance estimators in the controlshould also prove useful.• To make the device a versatile tool, it should possess 7 DOF (6 for arbitrary position and orientation and 1 for gripping) and have an interchangeable end-efFector.This 7th DOF microgripper needs to be designed and it would allow the systemto be used in tasks to replace instruments such as microforceps or scissors. Forthis microgripper, maglev actuation may not be necessary or appropriate so othertechnologies will be surveyed including piezoelectrics [66, 67] and shape memoryalloys [27].• Microsurgical instruments are being equipped with various sensors to collect betterquantitative data on the range and resolution of motions and forces required forspecific tools and for specific tasks. In addition, there will be a more thoroughsurvey conducted to determine the procedures best targeted for the system. Thisdata might eventually be used for the design of a second microwrist which is moresuitable for the application.• Experiments concerning user comfort levels will be performed to determine themaster requirements; these values are likely to be quite subjective and proceduredependent. This will allow the design of a more suitable master device.• Once the system is developed, it can easily be modified so that the microwrist isused in remote teleoperation allowing highly skilled surgeons to perform tasks awayfrom the operating site if necessary, or used in preprogrammed microsurgery tasksby having the slave track a desired force and/or position trajectory rather than themaster trajectory. However, these implementations are unlikely because one of theChapter 6. Conclusions 100goals of this system is to reduce the need for such highly trained physicians andvery few, if any, microsurgery tasks can be automated with the existing technology.• The microsurgeons felt that current microscopes provide sufficiently good visualfeedback for their work so no work was proposed in this area. However, it has beensuggested that the microscope can be integrated with the transport robot to reducethe setup time and clutter in the operating room.• As more extensive testing is performed on the microwrist, its shortcomings willbecome more evident. One of the more obvious and immediate problems whichwill need attention are the connectors. The ones leading to the coils are fragile andapply relatively large forces. Some of the other connectors are cumbersome anddifficult to work with.• Despite the enthusiasm for new medical technology, the profession has been justi—fiably cautious in employing robotic devices and safety considerations must be apriority in their design. Due to the delicate nature of microsurgery, many featureswould need to be identified and incorporated into the system to reduce the risks ofproblems associated with the device.Bibliography[1] J. Vertut and P. Coiffet, Robot Technology, Vol. SB: Teleoperations and Robotics:Evolution and Development. Prentice-Hall Series on Robot Technology, PrenticeHall, 1986.[2] B. Preising, T.C. Hsia, and B. Mittelstadt, “A literature review: Robots inmedicine,” in IEEE Engineering in Medicine and Biology, pp. 13—22, June 1991.[3] J.A. McEwen, “Solo Surgery with Automated Positioning Platforms,” in Proceedings of the New Frontiers in Minimally Invasive and Interventional Surgery, (NewOrleans, LA), October 13 1992.[4] H.A. Paul, B. Mittlestadt, W.L. Bargar, B. Musits, R.H. Taylor, P. Kazanzides, J.Zuhars, B. Williamson, and W. Hanson, “A Surgical Robot for Total Hip Replacement Surgery,” in Proceedings of the IEEE International Conference on Roboticsand Automation, (Nice, France), pp. 606—611, May 10-15 1992.[5] N.y. Laeken, “Right facial nerve palsy operation video,” October 1992.[6] S. Charles and R.E. Williams, “Measurement of Hand Dynamics in a MicrosurgeryEnvironment: Preliminary Data in the Design of a Bimanual Telemicro-operationTest Bed,” in Proceedings of the NASA Conference on Space Telerobotics, (Pasadena,CA), Jan.31 - Feb.2 1989.[7] M. Handlykken and T. Turner, “Control System Analysis and Synthesis for a SixDegree-of-Freedom Universal Force Reflecting Hand Controller,” in Proc. 19th IEEEConference of Decision and Control, December 1980.[8] J. Hill, “Study to design and develop remote manipulator systems,” tech. rep.,NASA, AMES Research Center (# NAS2-8652, SRI Project 4055), Moffett Field,CA, 1976.[9] J. Vertut and P. Coiffet, Robot Technology, Vol. SA: Teleoperations and Robotics:Evolution and Development. Prentice-Hall Series on Robot Technology, PrenticeHall, 1986.[10] I.W. Hunter, S. Lafontaine, P.M.F. Nielsen, P.J. Hunter, and J.M. Hollerbach, “Amicrorobot for manipulation and dynamical testing of single living cells,” in Proc.IEEE Micro Electro Mechanical Systems, (Salt Lake City), pp. 102—106, February1989.101Bibliography 102[11] R.L. Hollis, S.E. Salcudean, and D.W. Abraham, “Towards a tele-nanorobotic manipulation system with atomic scale force feedback and motion resolution,” in Proc.3rd IEEE Micro Electro Mechanical Systems, (Napa Valley, CA), February 1990. 6pages.[12] H. Kazerooni, “Human/robot interaction via the transfer of power and information signals; part i: Dynamics and control analysis,” in Proc. IEEE Robotics andAutomation, (Scottsdale, Arizona), pp. 1632—1640, May 14-18, 1989.[13] S. Charles, M.D., R.E. Williams, and B. Hamel, Ph.D, “Design of a surgeon-machineinterface for teleoperated microsurgery,” in Images of the Twenty-First Century.Proceedings of the Annual International Conference of the IEEE Engineering inMedicine and Biology Society, vol. 3, (New York), pp. 883—4, November 1989.[14] H. Funakubo, T. Dohi, I. Sakuma, and T. Komeda, “Robot for surgical operation,”July 1990. U.S. Patent number 4,943,296.[15] N. Tejima, H. Funakubo, T. Dohi, I. Sakuma, T. Tanishima, and Y. Nomura, “Anew microsurgical robot system for corneal transplantation,” Precision Machinery,vol. 2, pp. 1—9, 1988.[16] R.F. Young, “A robotic system for stereotactic neurosurgery,” in Modern StereotacticNeurosurgery (L. Lunsford, ed.), pp. 293—309, Martinus Nijhoff Publishing, 1988.[17] S. Lavalee, J. Troccaz, L. Laborit, P. Cinquin, A.L. Benabid, and D. Hoffmann,“Image guided operating robot: a clinical application in stereotactic neurosurgery,”in Proceedings of the IEEE International Conference on Robotics and Automation,(Nice, France), pp. 618—624, May 10-15 1992.[18] A.M. Sabatini, M. Bergamasco, and P. Dario, “Force feedback-based telemicromanipulation for robot surgery on soft tissues,” in Images of the Twenty-First Century. Proceedings of the Annual International Conference of the IEEE Engineeringin Medicine and Biology Society, vol. 3, (New York), pp. 890—1, November 1989.[19] F. Tendick and L. Stark, “Analysis of the surgeon’s grasp for telerobotic surgicalmanipulation,” in Images of the Twenty-First Century. Proceedings of the AnnualInternational Conference of the IEEE Engineering in Medicine and Biology Society,vol. 3, (New York), pp. 914—5, November 1989.[20] S. Majima and K. Matsushima, “On a micro-manipulator for medical application—stability consideration of its bilateral controller,” Mechatronics, vol. 1, no. 3, pp. 293—309, 1991.Bibliography 103[21] M.B. Gayed, B. Lepers, A. C. Diaz, and P. Vidal, “An advanced control micromanipulator for surgical applications,” Systems Science, vol. 13, no. 1-2, PP. 123—134,1987.[22] Y. Yokokohji and T. Yoshikawa, “Bilateral Control of Master-Slave Manipulators forIdeal Kinesthetic Coupling,” in Proceedings of the IEEE International Conferenceon Robotics and Automation, (Nice, France), pp. 849—858, May 10-15 1992.[23] G.J. Raju, G.C. Verghese, and T.B. Sheridan, “Design issues in 2-port networkmodels of bilateral remote manipulation,” in Proceedings of the 1989 InternationalConference on Robotics and Automation, 1989.[24] T. Brooks, “Telerobot Response Requirements,” tech. rep., STX/ROB/90-03, STXRobotics, March 1990.[25] E.G. Johnsen and W.R. Corliss, Human Factors Applications in Teleoperator Designand Operation. New York: Wiley Interscience, 1971.[26] R.C. Buchanan, Ceramic Materials for Electronics. New York: Macel Dekker, Inc.,1986.[27] K. Ikuta, “Micro/miniature shape memory alloy actuator,” in Proc. IEEE International Conference on Robotics and Automation, (Cincinnati, Ohio), May 1990.[28] B. Hannaford, L. Wood, B. Guggisberg, D. McAffee, and H. Zak, “Performanceevaluation of a six-axis force-reflecting teleoperator,” tech. rep., California Institueof Technology, Pasadena, CA, June 1989.[29] R. Hollis, “Magnetically levitated fine motion robot wrist with programmable compliance,” October 1989. U.S. Patent number 4,874,998.[30] R.L. Hollis, S.E. Salcudean, and P.A. Allan, “A Six Degree-of-Freedom MagneticallyLevitated Variable Compliance Fine Motion Wrist: Design, Modelling and Control,”IEEE Transactions on Robotics and Automation, vol. 7, pp. 320—332, June 1991.[31] S.E. Salcudean, N.M. Wong, and R.L. Hollis, “A Force-Reflecting TeleoperationSystem with Magnetically Levitated Master and Wrist,” in Proceedings of the IEEEInternational Conference on Robotics and Automation, (Nice, France), May 10-15,1992.[32] S.E. Salcudean and N.M. Wong, “Coarse-fine motion coordination and control of ateleoperation system with magnetically levitated master and wrist,” in Third International Symposium on Experimental Robotics, (Kyoto, Japan), Oct 28-30, 1993.[33] N.V. Laeken. Personal communication.Bibliography 104[34] M. Patkin, “Ergonomics applied to the practice of microsurgery,” Aust. N.Z. Journalof Surgery, vol. 47, pp. 320—329, June 1977.[35] R. H. Taylor, R. L. Hollis, and M. A. Lavin, “Precise manipulation with endpointsensing,” IBM J. Res. Develop., vol. 2, pp. 363—376, July 1985.[36] M.R. Milligan, “PSD, LED and Signal Conditioning Setup and Calibration Documentation,” tech. rep., Dept. of Electrical Engineering, University of BritishColumbia, November 1993.[37] R.L. Hollis, S.E. Salcudean, and P.A. Allan, “A six degree-of-freedom magneticallylevitated variable compliance fine motion wrist: Design, modelling and control.”IEEE Transactions on Robotics and Automation, in press.[38] N.R. Parker, S.E. Salcudean, and P.D. Lawrence, “Application of Force Feedback toHeavy Duty Hydraulic Machines,” in Proceedings of the IEEE International Conference on Robotics and Automation, (Atlanta, USA), pp. 375—381, May 2-6, 1993.[39] P. Lorrain, F. Lorrain, and D.P. Corson, Electromagnetic Fields and Waves, 3rd ed.W.H. Freeman and Co., New York, 3rd ed., 1988.[40] J.P. Holman, Heat Transfer, Sixth Edition. New York: McGraw-Hill, 1986.[41] W. Trimmer and R. Jebens, “Actuators for micro robots,” in Proceedings of the 1989International Conference on Robotics and Automation, 1989.[42] P.-H. Marbot and B. Hannaford, “Mini direct drive robot for biomedical applications,” 1992.[43] M.J. Wilson, ed., The 1988 ARRL Handbook for the Radio Amateur. AmericanRadio Relay League, 1987.[44] Magnet Sales & MFG Co. 1990 Catalog, “High performance permanent magnets.”11248 Playa Court, Culver City, CA 90230.[45] A.M. Chahal, “Optical end-point sensing of a scanning tunneling microscope,” Master’s thesis, University of British Columbia, March 1993.[46] R.J. Anderson and M.W. Spong, “Bilateral control of operators with time delay,”IEEE Trans. Automat. Cont., vol. AC-34, pp. 494—501, May 1989.[47] G.Niemeyer and J.-J. E. Slotine, “Stability and dynamics shaping in time-delayedforce-reflecting teleoperation,” 1992.Bibliography 105[48] G.M.H. Leung, B.A. Francis, and J. Apkarian, “Bilateral controller for teleoperatorswith time delay via it-synthesis,” March 1993. Ulliversity of Toronto Control Scienceand Engineering, Systems Control Group Report No. 9303.[49] D. A. Lawrence, “Designing Teleoperator Architecture for Transparency,” in Proceedings of the IEEE International Conference on Robotics arid Automation, (Nice,France), pp. 1406—1411, May 10-15 1992.[50] E. Colgate and N. Hogan, “An Analysis of Contact Instability in Terms of Passive Physical Equivalents,” in Proceedings of the IEEE International Conference onRobotics arid Automation, May 1989.[51] J.P. Holman, Nonlinear Systems Analysis, nd Edition. Englewood Cliffs, NJ:Prentice-Hall, 1993.[52] C.A. Lawn and B. Hannaford, “Performance testing of passive communications andcontrol in teleoperation with time delay,” in Proceedings of the IEEE InternationalConference on Robotics and Automation, pp. 776—783, 1993.[53] H. Kazerooni, T.-I. Tsay, and K. Hollerbach, “A Controller Design Framework forTelerobotic Systems,” IEEE Transactions on Automatic Control, vol. 1, pp. 50—62,March 1993.[54] N. Hogan, “Impedance control: An approach to manipulation, parts i-ui,” ASME J.of Dynamic Systems, Measurement, and Control, vol. 107, pp. 1—23, March 1985.[55] B. Hannaford, “A Design Framework for Teleoperators with Kinesthetic Feedback,”IEEE Transactions on Robotics and Automation, vol. RA-5, pp. 426—434, August1989.[56] J.E. Colgate, “Robust Impedance Shaping Telemanipulation,” IEEE Transactionson Robotics and Automation, vol. 9, pp. 374—384, August 1993.[57] J.C. Doyle, K. Glover, P.P. Khargonekar, and B.A. Francis, “State-space solutions tostandard H2 and H°° control problems,” IEEE Trans. Automat. Cont., vol. AC-34,pp. 831—846, August 1989.[58] B.A. Francis, J.W. Helton, and G.Zames, “H°°-Optimal Feedback Controllers forLinear Multivariable Systems,” IEEE Trans. Automat. Contr., vol. AC-29, pp. 888—900, 1984.[59] B.A. Francis, A Course in H°° Control Theory. Berlin, Heidelberg, New York:Springer-Verlag, 1987.[60] J. M. Maciejowski, Multivariable Feedback Design. Addison-Wesley, 1989.Bibliography 106[61] R.Y. Chiang and M.G. Safonov, Robust Control Toolbox for use with Matlab. TheMathWorks, Inc., 1992.[62] N.M. Wong, “Implementation of a force-reflecting telerobotic system with magnetically levitated master and wrist,” Master’s thesis, University of British Columbia,December 1992.[63] G. Zames, “Feedback and optimal sensitivity; model reference transformations, multiplicative seminorms, and approximate inverses,” IEEE Trans. Automat. Contr.,vol. AC-26, pp. 434—440, 1981.[64] P.J. Hacksel, “Observer based velocity and environment force estimation for rigidbody control,” Master’s thesis, University of British Columbia, October 1993.[65] S.-R. Oh, R.L. Hollis, and S.E. Salcudean, “Precision Assembly with A MagneticallyLevitated Wrist,” in Proceedings of the IEEE International Conference on Roboticsand Automation, (Atlanta, USA), pp. 127—134, May 2-6, 1993.[66] F. S. T. Inc., “Fine science points,” March 1990.[67] M. T. Inc., “Mg-bOO microgripper,” January 1990.Appendix AIsometric Views of Individual Microwrist PartsThe drawings in this appendix provide some insight into the design of the microwrist.The isometric views of each piece were somewhat arbitrarily chosen to be from the vectors(1,-5,2) and (1,-5,-2). Relative to a reference “front”, the first corresponds to a view 11.3°to the right and 21.4° from above; the second vector is similar but 21.4° from below.—Figure A.41: Flotor Coil Top Support FlFigure A.42: Flotor Coil Strip F2107Appendix A. Isometric Views of Individual Microwrist Parts 108Figure A.43: Flotor Coil Bottom Support F3:u:Figure A.44: Flotor Axial Support F4Figure A.45: Stator Support Rods SiFigure A.46: Stator Iron Core S2Appendix A. Isometric Views of Individual Microwrist Parts 109/-Figure A.47: Stator PSD Mounting Block S300 0Figure A.48: Stator Ring Support S4Figure A.49: Stator Peripheral Magnets S5Appendix BMachining and TolerancesThe parts to be machined are relatively small so tight tolerances are required. Of course,some toler.ances need to be tighter than others and may depend on dimensions of otherparts. The author has tried to specify all the part dimensions so they can be fabricatedindependently but it is recommended that the “coupling” of parts be carefully consideredduring machining. In particular, it may be preferable to fabricate the pieces in the ordershown in the following diagram:F4(b,c) F2 S5 SiF4(d) F4(a) F3 S2Figure B.50: Recommended Order of FabricationThe parts which can be fabricated quite independently are F4b, F4c (both shouldbe chosen from standard tubing in the shop), F2, Si (these should be machined fromstandard sized steel rods), and S5 (“mass produce” the back plates and then glue themagnets). F4a and F4d should be machined so the tubes F4b and F4c fit in snugly. F3should have tube F4b fitting comfortably through and the hexagon F2 tightly glued on.Fl needs to accommodate hexagon F2 and possess a recess hole to mate with F4a. S2should have about a 1.5mm air gap when positioned inside F2 and the holes should betapped and chamfered so that the Si rods properly bottom out. S4 should be constructed110Appendix B. Machining and Tolerances iiiso that, when the S5 magnets are monnted, there will be abont a 1.5mm air gap whenF2 is placed inside. S3 should fit snugly inside S4 and allow the Si rods to have a tightfit inside.Appendix CMatlab Source Code for H Controller SynthesisThe following source code was used for synthesizing the H bilateral controllers. Theparameters shown are the ones used for the nominal controller Ic1 of Chapter 5.C.1 Main File: synsy.m‘I. synsy.rn: synthesis of Hinf controller using our approach.clear all;% Initialize physical parameters and get P_rn & P_srn_rn=.62; % rnaster mass [kg]b_rn3; ‘I. damper (b2*rn*zeta*ornega) [kg/s]=[N/(rn/s)]k_rn=1SO; ‘I. spring (k=rn*ornega2) [N/rn]rn_s.035; ‘/, slave rnassb_s.17; ‘I. “ damperk_s8.6; ‘I. “ springnum_Prn = [0 0 1]; den_Prn = [rn_rn b_rn k_rn]; 7. transfer function for Prn[a_Prn,b_Prn,c_Prn,d_Prn] = tf2ss(num_Prn,den_Prn); V. state—space for Pmnurn_Ps = [0 0 1]; den_Ps = [rn_s b_s k_s]; 7. transfer function for Ps[a_Ps,b_Ps,c_Ps,d_Ps] = tf2ss(num_Ps,den_Ps); V. state—space for Psdisp(’Getting systern rnatrices...’);G_205; ‘I. define systern rnatricesdisp(’Augrnenting and cornbining. . .please wait...’);7. Cornbine thern all into G[a_G,b_G,c_G,d_G]=conrowss(a_WGI1,b_WG11,c_WG11,d_WG11,a_WG12,b_WG12,c_WGI2,d_WG12);[aGt ,bGt , cGt ,dGt]=conrowss(a_WG21 ,b_WG21 , c_WG21 ,d_WG21 ,a_G22,b_G22, c_G22,d_G22);[a_G,b_G,c_G,d_G]=concolss(a_G,b_G,c_G,d_G,aGt,bGt,cGt,dGt);[a_G,b_G,c_G,d_G,TOTBND,HSV] = balrnr(a_G,b_G,c_G,d_G,1,1O);[A,B1,B2,C1,C2,D11,D12,021,D22]=hinfprep(a_G,b_G,c_G,d_G,rnl,rn2,nl,n2);[gam_opt,aK,bK,cK,dIC,acl,bcl,ccl,dcl]=...hinfopt(A,B1,B2,C1,C2,D11,012,D21,D22,1:2,[.01,1,0]);[aQ,bQ,cq,dq]=feedback(aE,bK,cK,dK,a_G22,bG22,c_G22,d_G22,+1);[atrnp,btrnp,ctrnp,dtrnp]=series(a_G21,b_G21,c_G21,d_G21,aQ,bQ,cQ,dQ);[atmp,btrnp,ctrnp,dtrnp]=series(atrnp,btrnp,ctrnp,dtrnp,a_G12,b..G12,c_G12,d_G12);[acl,bcl,ccl,dcl]=parallel(atrnp,btrnp,ctrnp,dtrnp,a_G11,b_G11,c_G11,d_G11);C.2 Plant: G_205m.mV. G_205.rn: gets transfer matrices for Hinf synthesis for:112Appendix C. Matlab Source Code for H Controller Synthesis 113400) No Delay+200) Different Master/Slave100) No consideration for impedances040) No Force sensing at master‘020) No Force sensing at slave010) No force measurement errors+004) Force Transparency at master‘A 002) Position Transparency at slave‘A +001) Use actuator saturation‘A Also defines weighted disturbances‘I. Note: use W_S, K_24anlyz and cl_S4anlyz in synsmyn_f =40; ‘A force scaling to (slave to master)n_p=10; 7. position scaling (slave to master)7. Deriving teleoperation transfer functions‘A Get s—s of often used functionsEaO,bO,cO,dO]=tf2ss(E0] ,[i]);[ai,bl,cl,dl]=tf2ss([1] ,Ei]);7. Gil first: (4x6)[aGll,bGll,c.Gll,d_Gll]=conrowss(aO,bO,cO,dO,al,bl,—cl*n_f,—dl*n_f);[a_Gll,b_Gll,cGll,d_Gll]—conrowss(a_Gll,b.Gll,c_Gll,d.Gll,aO,bO,cO,dO),[a.Gll,b_Gll,cGll,dGll]=conrowss(aGll,b_Gll,c_Gll,d_Gll,aO,bO,cO,dO);[a_Gll,bGll,c_Gll,dGll]—conrowss(a_Gll,bGll,c_Gll,dGll,aO,bO,co,dO),Ea_Gll,b_G1l,c_Gll,d_Gll]—conrowss(a_Gll,b_Gll,c_Gll,d_Gll,al,bl,cl,dl),EaGt ,bGt , cGt ,dGt]conrowss(aPm,bPm,c,jm,dPm,a_Ps,bPs,—np*cPs,—n_p*dPs);EaGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO);EaGt,bGt,cGt,dGt]conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO);[aGt,bGt,cGt,dGt]conrowss(aGt,bGt,cGt,dGt,aPm,b.Pm,c.ym,dPm);[aGt ,bGt , cGt ,dGt]=conrowss(aGt ,bGt,cGt ,dGt,aPs ,bPs ,—np*cPs ,—np*d_Ps);Ea_Gll,bGll,cGll,dSll]=concolss(a.Gll,bGll,cGll,d_G1l,aGt,bGt,cGt,dGt);EaGt,bGt,cGt,dGt]conrowss(aO,bO,cO,dO,aO,bO,cO,dO);[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO);[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO);[aGt,bGt,cGt,dGtJ—conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO),[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO);[a_Gll,bSll,cGll,dGll]concolss(a_Gll,bGll,cGll,dGll,aGt,bGt,cGt,dGt);[aGt ,bGt,cGt,dGt]=conrowss(aO,bO,cO,dO,aO,bO,cO,dO);[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO);[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO);[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO);[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO);[aGll,bGll,c_Gll,d_Gll]=concolss(aGll,b_Gll,c.Gll,d.Gll,aGt,bGt,cGt,dGt);‘A G12 second: (4x2)[aGl2,bGl2,c_G12,dGl2]=conrowss(al,bl,cl,dl,aO,bO,cO,dO);CaGt ,bGt, cGt ,dGt]=conrowss(aPm,bPm,cPm,&ym,aPs,bPs,—np*c_Ps,—np*dPs);CaGl2,b_G12,cGl2,d_G12]=concolss(a_G12,bGl2,c.G12,d.G12,aGt,bGt,cGt,dGt);[aGt,bGt,cGt,dGt]=conrowss(al,bl,cl,dl,aO,bO,cO,dO);Ea_G12,bGl2,cGl2,dGl2]concolss(aGl2,bGl2,c.G12,d.G12,aGt,bGt,cGt,dGt);[aGt,bGt,cGt,dGt]=conrowss(aO,bo,co,do,al,bl,cl,dl);£aGl2,bGl2,c_G12,dGl2]concolss(aGl2,bGl2,cGl2,tGl2,aGt,bGt,cGt,dGt);‘A G21 third: (2x6)[a.G21,bG2l,cG2l,dG2l]=conrowss(apm,bpm,cpm,Cpm,ao,bo,co,do);[a.G21,bG2l,cG2l,dG2l]=conrowss(aG2l,bG2l,cG2l,dG2l,al,bl,cl,dl);[aG2l,bG2l,cG2l,dG2l]=conrowss(a_G2l,bG2l,c_G2l,d_G2l,ao,bo,co,do);[aG2l,b_G21,cG2l,dG2l]=conrowss(aG2l,bG2l,cG2l,dG2l,apm,bym,cpm,dym);EaG2l,bG2l,cG2l,dG2l]=courowss(aG2l,bG2l,c.G21,dG2l,ao,bo,co,dO);[aGt,bGt,cGt,dGt]=conrowss(aO,bO,cO,dO,a_Ps,bPs,c_Ps,dPs);[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,ao,bo,co,do);[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,ciGt,al,bl,cl,dl);Appendix C. Matlab Source Code for H Controller Synthesis 114[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,aO,bO,cO,dO);[aGt,bGt,cGt,dGt]=conrowss(aGt,bGt,cGt,dGt,a_Ps,b_Ps,c_Ps,d_Ps);[a_G21,b_G21,c_G21,d_G21]—concolss(a_G21,b_G21,c_G21,d_G2i,aGt,bGt,cGt,aGt),7, G22 fourth: (2x2)[a_G22,b_G22 , c_G22 ,d_G22] =conrowss(a_Pm,b_Pm, c_Pm,d_Pm,aO,bO ,cO,dO);[aGt,bGt,cGt,dGt]=conrowss(aO,bO,cO,dO,a_Ps,b_Ps,c_Ps,d_Ps);[a_G22 ,b_G22, c_G22,d_G22] concolss(a_G22,b_G22, c_G22 ,d_G22,aGt ,bGt, cGt ,dGt);mi=6 ;m22;n14;n22;num_Wi = O.Oi*conv(Ci,iOO],Ei,iOO]); 7. Wi: force transparency at masterden_Wi = conv([i,25],Ei,25]);num_W2 = i.O*conv(Ei,40],Ei,40]); ‘I. W2: position transparency at slaveden_W2 = conv(Ei,iO],[i,iO]);num_W3 = O.07*Ei,60]; ‘I, W3: master actuator limitationsden_W3 = Ei,iSO];num_W4 = O.S*[i,5S]; ‘I, W4: slave actuator limitationsden_W4 = [i,i25];[a_Wout ,bWout , c_Wout ,d...Wout] =tf2ss(nuau_Wi ,den_Wi);[atmp ,btmp, ctmp,dtmp] tf2ss(num_W2 ,den_W2);Ca_Wout ,b_Wout , c_Wout ,d_Wout] =append(a_Wout ,b_Wout ,c_Wout ,d_Wout,atmp ,btmp, ctmp ,dtmp);[atmp,btmp, ctmp,dtmp] tf2ss(num_W3 ,den_W3);[a_Wout ,b_Wout , c_Wout ,d_Wout] append(a_Wout ,b_Wout , c_Wout ,d_Wout ,atmp,btmp ,ctmp,dtmp);Eatmp,btmp, ctmp,dtmp]=tf2ss(nuia_W4,den_W4);La_Wout , b_Wout,c_Wout , d_Wout] =append (a_Wout , b_Wout , c_Wout , d_Wout , atmp , btmp , ctmp , dtmp);‘h Augment wI output weighting functions[a_WGii,b_WGii,c_WGii,d_WGii]=series(a_Gii,b_Gii,c_Gii,d_Gii,a_Wout,b_Wout,c_Wout,d_Wout);[a_WGi2,b_WGi2,c_WGi2,d_WGi2]series(a_Gi2,b_Gi2,c_Gi2,d_Gi2,a_Wout,b_Wout,c_Wout,d_Wout);num_Wpm = 2.Ee-6; ‘I. Wpm: master position noiseden_Wpm =num_Wps = i.Oe—6; ‘I. Wps: slave position noiseden_Wps =num_Wcm = O.Oi*Ei]; ‘I, Wcm: master disturbancesden_Wcm = [i,i];num_Wcs O.OOi*[i]; 7, Wcs: slave disturbancesden_Wcs = [i,i];[a_Win,b_Win,c_Win,d_Win]=append(ai,bi,ci,di,ai,bi,ci,di);Eatmp ,btmp, ctmp,dtmp]=tf2ss(num_Wpm,den_Wpm);[a_Win,b_Win, c_Win,d_Win]=append(a_Win,b_Win, c_Win,d_Win,atmp,btmp, ctmp,dtmp);[atmp ,btmp , ctmp ,dtmp] =tf2ss(num_Wps ,den_Wps);Ea_Win,b_Win, c_Win,d_Win]append(a_Win,b_Win,c_Win,d_Win,atmp,btmp, ctmp,dtmp);Eatmp,btmp, ctmp,dtmp]=tf2ss(num_Wcm,den_Wcm);[a_Win,b_Win, c_Win,d_Win]append(a_Win,b_Win, c_Win,d_Win,atmp,btmp, ctmp,dtmp);[atmp,btmp, ctmp,dtmp] =tf2ss(num_Wcs ,den_Wcs);[a_Win,b_Win, c_Win,d_Win]append(a_Win,b_Win, c_Win,d_Win,atmp,btmp, ctmp,dtmp);‘h Augment wI input weighting functions[a_WGii,b_WGii,c_WGii,d_WGii]=series(a_Win,b_Win,c_Win,d_Win,a_WGii,b_WGii,c_WGii,d_WGii);[a_WG2i,b_WG2i,c_WG2i,d_WG2i]=series(a_Win,b_Win,c_Win,d_Win,a_G2i,b_G2i,c_G2i,d_G2i);C.3 Miscellaneous Functions: conrowss.m, concolss.m, hinfprep.mfunction [aa,bb,cc,dd] = conrowss(ai,bi ,ci,di,a2,b2,c2,d2)‘/,CONROWSS: Awkward name for connecting two systems represented‘I. in state—space form when they represent transfer functions‘h which are in a row:Appendix C. Matlab Source Code for H Controller Synthesis 115ie: g(s) = Igi(s) g2(s)lX The resulting system is:lxii = IAI 01 lxii + iBi 01 lull1x21 10 A21 ix2l + 10 B21 1u21‘I. lyl = Id C2l lxii + IDi D2l lullX 1x21 + 1u21‘I, See also: SERIES, FEEDBACK, CLOOP, PARALLEL, CONCOLSS.error(nargchk(8,8,nargin));error(abcdchk(al ,bl ,ci ,dl));error(abcdchk(a2,b2, c2,d2));Emai,nai] = size(ai);Emdi,ndi] = size(di);Ema2,na2] = size(a2);Emd2,nd2] = size(d2);aa = Cal zeros(mai,na2);zeros(ma2,nai) a2);bb = 0i zeros(mai,nd2);zeros(ma2,ndi) b2];cc = [ci c2];dd = [di d2];function [aa,bb,cc,dd] = concolss(ai,bl ,ci,di,a2,b2,c2,d2)Y.CONCOLSS: Awkward name for connecting two systems represented% in state—space form when they represent transfer functions‘I, which are in a column:‘I. ie: g(s) = igi(s)iX 1g2(s)l% The resulting system is:‘I. lxii = iAi 01 lxii + iBil lulix2i 10 A2i 1x21 + 1B21‘I. lyli = iCi 01 lxii + iDil luliy2i 10 C21 ix2i + 1D21Y. See also: SERIES, FEEDBACK, CLOOP, PARALLEL, CONROWSS.error(nargchk(8,8,nargin));error(abcdchk(ai ,bi ,ci ,di));error(abcdchk(a2,b2,c2,d2));[mai,nai] = size(ai);[mdi,ndi] = size(di);[ma2,na2] = size(a2);[md2,nd2] = size(d2);aa = Cal zeros(mai,na2);zeros(ma2,nai) a2];bb = [bi ; b2];cc = [ci zeros(mdi,na2);zeros(md2,nai) c2];dd= [di ; d2];function [A,Bi,B2,Ci,C2,Dii,Di2,D2i,D22]=hinfprep(a,b,c,d,mi,m2,ni,n2);‘I. [A,Bi,B2,Ci,C2,Dii,Di2,D2i,D22]hinfprep(a,b,c,d,mi,m2,ni,n2);% hinfprep.m: prepares a state-space representation for U-infinity‘I. optimization techniques where ml is the number of exogenous inputs,% m2 is the number of actuators in the control, ni is the number ofZ signals to be optimized, and n2 is the number of measurements used‘I, in the controller.[n,dum]=size(c); [dum,m]=size(b); [dn,dm]size(d);if ((mi+m2)=m) I ((ni+n2=n) I (dnn) I (dmm),error(’dimensions do not agree!’);Appendix C. Matlab Source Code for H Controller Synthesis 116endAa;B1b(: , 1 :ml) ;B2b(: ,ml+1 :ml+m2);C1c(1:nl, :);C2c(nl+1:nl+n2,:);D11d(1:nl,1:ml) ;D12=d(1:nl,ml+1:ml+m2);D21d(nl+1 :nl+n2, 1 :1st) ;D22d(nl+1 :nl+n2,ml+1 :ml+m2);C.4 The State-Space ResultThe controller output by the above functions are not in a form suitable to be used forthe wrist C code. This is because the controller must be discretized and the C functionsused require the matrix transpose. The following functions, “c2dsys” and “outmat” areused to output the controller into a form more suitable for my C code.‘I. c2dsys.m: converts the resulting continuous—time controller into a7. discrete—time one with matrices transposed for use in C codedT=O.OOS; 7. Control loop time in seconds[axd,bKd,cKd,diCd]=c2dm(alC,bK,cK,dK,dT, ‘tustin’);aKdt=aICd’ ;bKdtbKd’ ;cKdtcKd’ ;dKdt=dKd’;outmat(axdt, ‘float AKEORDERK] [ORDERK]’);outmat(bKdt, ‘float BK[2]EORDERK]’);outmat(cKdt, ‘float CKEORDERK] [2]’);outmat (dKdt, ‘float DK [2] [2]’);function C] = outmat(a,name)XOUTMAT Print matrix in a form nice for my C code% OUTNAT(A,NANE) prints the matrix A and labels it NAME.disp([name,’ = ‘])Em,n] = size(a);for indll:m,if ind11,strtmp’{{’;elsestrtmp’{’;endfor ind2l:n,strtmp=[strtmp,sprintf(’%.4g’ ,a(indl,ind2))];if ind2n,strtmp[strtmp, ‘H];if indlm,strtmpEstrtmp, ‘};‘];endendif (ind1m) I (ind2n),strtmp[strtmp,’,’];endenddisp(strtmp);endThe eventual discretized state-space representation of the controller to be used as ic1is then given by:Appendix C. Matlab Source Code for H Controller Synthesis 117float AK[ORDERX] [ORDERK] ={{—8.174,s.947,—3.757,—1.711,—1.463,o.1902,--2.426,o.14,o.1883,—2.ols},{—16.53,12.18,—7.992,—3.549,—3.032,o.6706,—1.765,O.3546,o.04946,—3.84},{—4.o15,3.186--2.24,—1.263,—1.O99,o.381S,2.425,o.1927,—o.3o21,—1.o67},{—1S.14,1O.69—T.668,—2.517,—2.918,O.6444,—O.6277)O.3624,—O.O6231,—3.576},{2.622,—1.778,1.318,O.4527,1.382,—O. 1264,O.1981,—O.0579,O.002235,O.6109},{—1O.73,7.E11,—5.428,—2.273,—1.937,1.319,—O.6548,O.2489,—o.01821,—2.522},{—O.3444,O.2795,—O.2046,—O.04649,—O.03926,—O.01359,—O.3948,—O.03087,O.1442,—O.06666},{1O.07,—7.482,4.996,1.439,1.329,—o.3617,O.5615,o.6297,o.02936,2.029J-,{—1.602,1.369,—O.7569,O.08641,O.238,—O.647,--o.02081,O.03762,O.8747,—o.2173},{1.319,—O.9749,O.6555,O.1975,O.1858,—O.06411,O.O’T459,O.1311,—O.04762,—O.7232}};float BK[2] [ORDERK] ={{261.5,—52o.9,949.6,332.4,304,—169.2,—1803,—74.61,201.5,164.3},{—4.235e+04,2.933e+04,—2.135e+04,—9345,-8143,1689,—2388,987.7,—106.6,—9928}};float CKEORDERK] [2] ={{6.79,—O.3511},{13.2,—o.7013},{3.394,—o.2212},{12. 13,—O.6263},{—2.079,O. 121},{8.578,—O.4506},{O.2899,—O.0108},{—8. 154,O.3451},{1.346,O.005076},{—1.067,O.04678}};float DK [2] [2] ={{—408.5,42.87},{3 . 378e+04,—1802}};

Cite

Citation Scheme:

        

Citations by CSL (citeproc-js)

Usage Statistics

Share

Embed

Customize your widget with the following options, then copy and paste the code below into the HTML of your page to embed this item in your website.
                        
                            <div id="ubcOpenCollectionsWidgetDisplay">
                            <script id="ubcOpenCollectionsWidget"
                            src="{[{embed.src}]}"
                            data-item="{[{embed.item}]}"
                            data-collection="{[{embed.collection}]}"
                            data-metadata="{[{embed.showMetadata}]}"
                            data-width="{[{embed.width}]}"
                            async >
                            </script>
                            </div>
                        
                    
IIIF logo Our image viewer uses the IIIF 2.0 standard. To load this item in other compatible viewers, use this url:
http://iiif.library.ubc.ca/presentation/dsp.831.1-0087367/manifest

Comment

Related Items