A SIX DEGREES-OF-FREEDOM, HYDRAULIC, ONE PERSON MOTION SIMULATORByPeter A. W. DrexelB. A. Sc., The University of British Columbia, 1990A THESIS SUBMITTED IN PARTIAL FULFILLMENT OFTHE REQUIREMENTS FOR THE DEGREE OFMASTER OF APPLIED SCIENCEinTHE FACULTY OF GRADUATE STUDIESDEPARTMENT OF ELECTRICAL ENGINEERINGWe accept this thesis as conformingto the required standardTHE UNIVERSITY OF BRITISH COLUMBIASeptember 1992© Peter A. W. Drexel, 1992In presenting this thesis in partial fulfilment of the requirements for an advanced degree at theUniversity of British Columbia, I agree that the Library shall make it freely available for refer-ence and study. I further agree that permission for extensive copying of this thesis for scholarlypurposes may be granted by the head of my department or by his or her representatives. Itis understood that copying or publication of this thesis for financial gain shall not be allowedwithout my written permission.Department of Electrical EngineeringThe University of British Columbia2075 Wesbrook PlaceVancouver, CanadaV6T 1W5Date: October 5, 1992 AbstractIn order to simulate the motion of heavy equipment used in the forestry industry for thepurpose of human factors and teleoperation research, we have designed a six degrees-of-freedom,hydraulic, one person motion simulator. In this thesis we derive the inverse kinematics and thejacobian of the platform. We also derive the forward kinematics of the platform using Newton'smethod and address workspace issues from the point of view of a "singularity boundary." Inaddition, we look at platform dynamics including the design of the hydraulic actuation system.Based on the results of dynamic simulations, we expect that this motion simulator will provide9.8 m/s2 , 400°/s2 accelerations and 1 m/s, 30°/s speeds to a 250 kg payload with 1 m, 45°displacements from a nominal center.iiTable of ContentsAbstract iiList of Tables viList of Figures viiAcknowledgments1 Introduction 11.1 Motivation 11.2 Literature Review 41.3 Overall Design and Performance 102 Kinematics 132.1 Inverse Kinematics 132.2 Platform Jacobian 162.3 Singularity 202.4 Velocity and Acceleration Kinematics 222.5 Forward Kinematics 223 Design 263.1 Motion Simulator Design 263.2 Inverse Dynamic Simulations 273.3 Actuator Design 413.4 Hydraulic System Design 473.4.1 Power Unit Subsystem 483.4.2 Distribution Subsystem 493.4.3 Actuator Subsystem 513.5 Mechanical Design 523.5.1 Motion Simulator Base 523.5.2 Universal Joints 533.5.3 Position Transducer Mounting 543.5.4 Distribution Manifold Frame 553.6 Electrical Design 554 Dynamics and Control 694.1 Platform Dynamics 694.2 Hydraulic Dynamics 724.3 Combined Dynamics 754.4 Control 765 Conclusions 1095.1 Contributors 1105.2 Suggestions for Further Work 111Bibliography 113A Joint Components 116A.1 Base 116A.2 Base Shaft 117A.3 Rod Fork 118A.4 Cylinder Fork 119A.5 Short Shaft 120B Position Transducer Mounting System Components 121B.1 Clamp Plate 121ivB.2 Tube Guide Plate 122B.3 Tube Guide 123B.4 Transducer Bracket 124C Singularity Source Code 125C.1 plotsingratios.m 125C.2 jacobian m 129C.3 CrossProduct.m 129D Buckling Source Code 130D.1 buckling.m 130E Force Versus Flow Source Code 132E.1 fvsq.m 132vList of Tables1.1 Simulator Dimensions 101.2 Desired Simulator Performance 102.3 Platform and Base Actuator End Point Angles 152.4 Examples Using Newton's Method 253.5 Desired Actuator Performance. 413.6 Fluid Flow versus Bore for 1.5 m/s Actuator Speed. 444.7 Control Simulation Parameters 83viList of Figures1.1 Excavator Actuators. 21.2 Human Factors/Teleoperation Research facility 41.3 Stewart Platform. 51.4 Special Geometries required for "Polynomial Method." 71.5 Inverted Simulator Geometry 112.6 Vector Definitions for Inverse Kinematics. 142.7 Singular Value Ratios Versus Pitch and Yaw 213.8 Actuator forces with a base radius of 0.75 m. 283.9 Actuator forces with a base radius of 1 m 293.10 Acceleration in the x direction. 333.11 Frames showing acceleration in the x direction. 343.12 Acceleration in the y direction. 343.13 Frames showing acceleration in the y direction. 353.14 Acceleration in the z direction. 353.15 Frames showing acceleration in the z direction. 363.16 Acceleration about the x axis. 373.17 Frames showing acceleration about the x axis. 373.18 Acceleration about the y axis 383.19 Frames showing acceleration about the y axis. 383.20 Acceleration about the z axis 393.21 Frames showing acceleration about the z axis 393.22 Diagonal Acceleration 40vu3.23 Frames Showing Diagonal Acceleration. 3.24 Hydrostatic Cylinder. 3.25 Actuator Critical Buckling Force 3.26 Force/Speed Characteristics: Moog Servo Valve & Varying Cylinder Bores. 3.27 Force/Speed Characteristics: Moog Prop. Valve & Varying Cylinder Bores. 3.28 Force/Speed Characteristics: Medium Rexroth Valve3.29 Force/Speed Characteristics: Small Rexroth Valve &3.30 Hydraulic Power Unit Schematic 3.31 Distribution Subsystem Schematic 3.32 Actuator Subsystem Schematic 3.33 Motion Simulator Base Design—Plan View 3.34 Motion Simulator Base Design—Profile View 3.35 Universal Joint 3.36 Initial Transducer Mounting Design. 3.37 Final Transducer Mounting Design . 3.38 Distribution Manifold Frame. 3.39 Electrical Schematic—Safety System 3.40 Electrical Schematic—Control System 4.41 Definition of Three-way Connection Parameters. 734.42 Joint-Space Control Block Diagram. 774.43 Cartesian-Space Control Block Diagram 784.44 Open-loop Magnitude Response. 814.45 Open-loop Phase Response. 824.46 Proportional Control Simulation Results for Oscillation in the x direction 854.47 Proportional Control Simulation Results for Oscillation in the x direction 864.48 Proportional Control Simulation Results for Oscillation in the x direction 874.49 Proportional Control Simulation Results for Oscillation in the x direction 88& Varying Cylinder Bores.Varying Cylinder Bores.404143474849505859606162636465666768viii4.504.514.524.534.544.554.564.574.584.594.604.614.624.634.644.654.664.674.684.69Proportional Control Simulation Results for Oscillation in the x direction 89Frequency Response for Oscillation in the x direction. 90Proportional Control Simulation Results for Oscillation about the z axis. 91Proportional Control Simulation Results for Oscillation about the z axis. 92Proportional Control Simulation Results for Oscillation about the z axis. 93Proportional Control Simulation Results for Oscillation about the z axis. 94Proportional Control Simulation Results for Oscillation about the z axis. 95Frequency Response for Oscillation about the z axis 96Proportional Control Simulation Results for Step Input in the x direction 97Proportional Control Simulation Results for Step Input in the x direction 98Proportional Control Simulation Results for Step Input in the x direction 99Proportional Control Simulation Results for Step Input in the x direction 100Proportional Control Simulation Results for Step Input in the x direction 101Proportional Control Simulation Results for Step Input in the x direction 102Proportional Control Simulation Results for Step Input about the z axis. • 103Proportional Control Simulation Results for Step Input about the z axis. • 104Proportional Control Simulation Results for Step Input about the z axis. 105Proportional Control Simulation Results for Step Input about the z axis. ▪ 106Proportional Control Simulation Results for Step Input about the z axis. 107Proportional Control Simulation Results for Step Input about the z axis. 108ixAcknowledgmentsI would like to thank Tim Salcudean and Peter Lawrence for their ideas and encouragementduring the course of my research. Thanks also to my family and friends for their support overthe last two years.xChapter 1IntroductionIn this first chapter we discuss the motivation for designing and building a six degrees-of-freedom, hydraulic, one person motion simulator which will be used to improve the humaninterface with heavy equipment in the forest industry. We present a literature review of severalsignificant authors in which we extract points relevant to our project and finally, we give ageneral description of the desired simulator performance and its design.1.1 MotivationThe motivation for A Six Degrees-of-Freedom, Hydraulic, One Person Motion Simulator comesfrom the desire to create a facility where we can perform human factors and teleoperationresearch for the forest industry. In addition to these two primary uses, the human factorsand teleoperation research facility can be used to study virtual reality, motion simulation andparallel manipulators. In this thesis we concentrate on the design of the motion simulator whichforms the main component in this facility.Human factors research is used to improve the human interface with heavy equipment suchas excavators, log-loaders and feller-bunchers. Currently, most heavy equipment used in theforest industry operates by using a joint-space control strategy. For example, an excavator hasthree actuators which control the position and orientation of the bucket: one for the boom,one for the stick and one for the bucket itself (See Figure 1.1). In order for the excavator toperform a particular task, the operator must determine which actuators to control and when tocontrol them. For an experienced operator, this is a routine task. However, for new operators,determining which controls to move is difficult to learn and in some situations, making the1Chapter 1. Introduction 2wrong choice can damage the machine or cause personal injury. In order to reduce these risks,the excavator can be modified by adding a computer and joystick so that the controls operateusing a cartesian-space strategy (i.e. each control axis operates the appropriate actuators tomove along the x, y, z axes). The cartesian-space control strategy is easier for new operators tolearn because it is more intuitive: when the operator moves the joystick forward the bucket alsomoves forward. This control strategy can also be used on other more complicated machinessuch as feller-bunchers or log-loaders. However, the control designer requires each machine toprototype and test the controls which is impractical and costly. To overcome this problem, thehuman factors and teleoperation research facility will simulate each of the different machinesusing different hand controls and control strategies. By comparing operator performance underdifferent control conditions we hope to develop better control systems to make forestry machinessafer and easier to operate.Figure 1.1: Excavator Actuators.In addition to human factors research, the facility will be used for teleoperation research.This will provide an operator with sensory input such as motion, sight and sound cues neededto operate heavy equipment remotely from a safe location. In the forest industry workers areChapter 1. Introduction 3constantly operating heavy equipment such as feller-bunchers, log-loaders and grapple-yardersin dangerous environments, for example, in British Columbia's mountainous terrain wherethese vehicles can easily tip over, possibly injuring the operator. By moving the operator offthe machine into a safer environment these injuries will be avoided. However, one disadvantageis that the operator will lose all sense of sight, hearing and feel for what the machine is doing.To compensate for this, the human factors and teleoperation research facility will provide theoperator with the appropriate motion, sight and sound cues in order for him/her to operate themachine as if he/she were still in it.This facility is not simply restricted to human factors and teleoperation research. It mayalso be used in the study of virtual reality to create more realistic video games and movies in theentertainment industry. For motion simulation to simulate the motions of other vehicles such asboats and airplanes which will allow us to perform similar human factors studies. And finallyfor parallel manipulators to learn more about their dynamics, kinematics and singularities.Figure 1.2 shows the proposed layout of this new human factors and teleoperation researchfacility. It is made up of three major components. The first is a six degrees-of-freedom, hydraulicmotion simulator which will be programmed to respond to operator and environmental inputand controlled by a Sparc lE running the VxWorks Real-time operating system. The secondcomponent is a helmet-display driven by a Silicon Graphics Iris workstation which is wornby the operator and will provide a three dimensional view of a virtual workspace. As themotion simulator moves, workspace images will change, thus making the movement as realisticas possible for the operator. The third component is hand controls such as joysticks and force-reflecting controls. These controls will be mounted on the motion simulator which the operatorwill then use to command the virtual machine.Motion simulators used as the basis for the human factors and teleoperation research fa-cility are already available from several commercial manufacturers including Canadian Aero-space Electronics (CAE), Limited, Mannesmann-Rexroth/Hydraudyne, Limited [1], Limitedand Kawasaki Heavy Industries, Limited [2]. Unfortunately, these simulators are too large andVMECardCageSUN WorkstationSilicon GraphicsIRIS WorkstationHandControlsIntel i860CoprocessorHeadMountedDisplayHydraulic Power UnitSparc 1E Boardrunning VxWorks A/D Converter D/A Converter Digital I/OChapter 1. Introduction 4Figure 1.2: Human Factors/Teleoperation Research facility.very expensive. They are typically designed for use as flight simulators supporting an entireairplane cockpit which usually includes several crew members and a large visual system. Forthis project, however, we only need a one person unit and because we are working with a limitedbudget, we are compelled to design and construct our own motion simulator.1.2 Literature ReviewUntil recently there has not been a lot of literature published on Stewart platforms' or motionsimulators (See Figure 1.3). Perhaps a reason for this delay in research lies in the fact that'Although Stewart is usually credited with developing the Stewart platform [3], Gough et al devised a verysimilar device in 1947 for testing tires [4].Chapter 1. Introduction 5the forward kinematics and the dynamics of Stewart platform's are more complicated thanthose of serial type manipulators and only recently have we had the computing power to solvethese problems numerically. The lack of published papers, however, has not prevented severalcompanies, including Canadian Aerospace Electronics (CAE), Limited and Kawasaki HeavyIndustries, Limited [2], from employing Stewart's design for flight simulators. Unfortunatelytheir work is proprietary information. However, since 1980, several researchers including Hunt,Nguyen et al, Cleary et al, Fichter, Mohamed et al, Yang et a/, Do et al, Nanua et al, Griffis etal, Geng et a/, Innocenti et a/, Merlet, Dieudonne et al, Koevermans et al, Koizumi et al andDuncan et a/ have examined Stewart's original ideas. The following is a review of their work.PlatformFigure 1.3: Stewart Platform.Hunt gives a general survey of parallel mechanisms in [5]. He presents sample parallelmechanisms and tabulates all the possible combinations of connecting chains and their jointsChapter 1. Introduction 6for mechanisms with up to six degrees-of-freedom. He also considers the assembly modes ofparallel devices, for a given set of actuator lengths there are several modes in which the actuatorsand end effector may be assembled. Hunt concludes, without proof, that there may be up tosixteen possible assembly modes for a Stewart platform.The inverse kinematics (determining the actuator lengths given the platform position/orien-tation) of a Stewart platform is relatively easy to derive. These results are important becausethey form the basis for other derivations, workspace considerations and methods of control.This derivation is presented by Nguyen et al, Cleary et al, Fichter, Mohamed et al, Yang etaland Do et al in [6], [7], [8, 9], [10], [11] and [12, 13] respectively.Yang et al use the inverse kinematics of the Stewart platform to plot its physical workspace.They assume that the actuators are attached to the base and platform via ball and socketjoints. Using computer simulations, the platform is translated and rotated while monitoringthe actuator lengths and joint angles. If the length of any one of the actuators becomes too shortor too long, or the angle of any of the actuators exceeds the limit imposed by the joints, then theplatform has reached a workspace limit. Using this exhaustive technique, the entire workspaceof the platform is mapped out. Note however, that this algorithm does not consider platformsingularities, therefore, the controllable workspace is smaller. Cleary et al and Fichter usesimilar techniques to plot cross-sections of the physical workspace of their prototype platformsin [7] and [9] respectively. Fichter determines that using gimbaled or Hooke joints instead ofball and socket joints will significantly increase the platform's physical workspace.There is no known closed-form solution to the forward kinematics problem (determining theplatform's position and orientation given the actuator lengths) for Stewart platforms. Nanua etal [14], Griffis et al [15], Geng et al [16], Innocenti et al [17] and Merlet [18] derive what we callthe "polynomial method" for solving this forward kinematics problem. Their method reducesthe problem to one of solving for the roots of a sixteenth order polynomial, thereby verifyingHunt's theory. The polynomial's variable is the tangent of the half angle from the base to theplane formed by two adjacent actuators. The order of the polynomial is reduced to eight if theChapter 1. Introduction 7platform is restricted to be either above or below the base. The authors determine the correctroot and position and orientation of the platform by back substitution and solution for theother angles. Unfortunately, the "polynomial method" only applies to platforms where the endpoints of the actuators intersect in either the base, platform or both as shown in Figure 1.4.Because of this restriction and significant computing time, this method is inappropriate forreal-time control.Platform PlatformA MtBaseFigure 1.4: Special Geometries required for "Polynomial Method."A second method of computing the forward kinematics, used by Nguyen et al in [6], isPowell's Direction Set Method. Powell's method minimizes the sum of the squares of thedifferences between the actual and computed actuator lengths. Similarly, Dieudonne et al, in[19], use Newton's method for multiple functions and variables to converge to a solution. Thismethod makes use of the platform's jacobian matrix to update the estimates of the platform'sposition and orientation parameters. Unlike the "polynomial method," Powell and Newton'smethods do not require special platform geometries. We will apply Newton's method to solvethe forward kinematics problem in Chapter 2.In [7], Cleary et al avoid the forward kinematics problem of the Stewart platform entirely bymonitoring the position and orientation of their prototype platform with a passive serial linkageconnected from the center of the base to the center of the platform. As the platform moves,Chapter 1. Introduction 8the six degrees-of-freedom serial manipulator follows. By reading the rotary position sensorson the serial manipulator and computing its forward kinematics, the position and orientationof the platform are determined.Before controlling the position and orientation of a platform, we must have some ideaabout its singularities. At a singular position or orientation the platform gains one or moreuncontrolled degrees-of-freedom. Unfortunately, the singularities of a parallel mechanism arenot as evident as they are with most serial mechanisms. Cleary et al and Fichter look brieflyat the singularities of the Stewart platform in [7] and [8, 9] respectively and find that when twoor more of the actuators become linearly dependent, the platform is singular. Similarly, Clearyet al monitor the rank of the platform's jacobian matrix, when the rank is less than six, theplatform is singular.Fichter [9] and Do et al [12, 13] study the dynamics of parallel manipulators. Fichteraddresses the platform's dynamics using screw theory and Pliicker coordinates for each of theactuators. He assumes that the actuators have no mass, making the derivation of the actuatorforces for a given platform acceleration relatively easy. Unlike Fichter, Do et al approach theinverse dynamics problem using Newton's laws of motion. In order to simplify their derivations,they assume that the actuators may be modeled as narrow rods, allowing them to ignore thetorque about the actuator axes. Their algorithm consists of moving the platform and computingthe angular velocity and acceleration of each actuator. Using these values and the algorithm,they compute the actuator reaction forces perpendicular to the actuator. By then applyingthese forces and the inertia forces to the platform, they determine the resulting forces parallelto the actuators. Do et al's derivations and algorithm are used to determine the actuatorperformance requirements for the motion simulator in this thesis.Nguyen et al provide an algorithm in [6] for computing straight line trajectories for a Stewartplatform. In the algorithm they first compute the actuator lengths at the platform's start andfinish positions. Second, they select the desired velocity and acceleration of the actuator withthe largest absolute change in length. Third, they compute times for acceleration, decelerationChapter 1. Introduction 9and constant velocity. And finally, they compute the velocity and acceleration for the other fiveactuators with the above times. Applying the algorithm results in the actuators having linearlydependent velocities. This algorithm may be of use because their experimental results indicatevery small tracking errors.Koevermans et al discuss the design and performance of a four degrees-of-freedom flightsimulator in [20]. This simulator is capable of motion in the roll, pitch, yaw and heave directions.They use hydrostatic actuators to achieve a very low acceleration noise threshold of 0.1 m/s 2which is imperceptible to humans. Their paper also provides a list of safety provisions whichinclude position, velocity and acceleration limits on the actuators to protect the test pilot.Koizumi et al discuss in [21] the performance and design of a six degrees-of-freedom, hy-draulic motion base similar to the one discussed in this thesis which is now available fromKawasaki Heavy Industries Limited [2]. The design features hydrostatic cylinders for smoothoperation and a large diameter platform (4.2 meters) to support wide loads. The step responseand bandwidth for 5 centimeter platform displacements were found to be 0.19 seconds and1 Hertz respectively which is the minimum we hope to achieve when running simulations withour platform.In [22], Duncan et al describe a commercial human factors research laboratory for off-roadvehicle design created at the Deere and Company Technical Center. Their system has severalfeatures including a six degrees-of-freedom, hydraulic motion simulator which can support avariety of tractor cabs, a noise generator for creating the sound cues which alert the operatorto engine speed and load changes and finally, a large rear projection video screen to provide theoperator with visual cues of a simulated work site. The researchers have five important goalsdesigned to improve the performance of operators and the safety of heavy equipment. First,they wish to determine the effects of noise, vibration and task complexity on the performanceof the operator. Second, they want to evaluate the performance of operators who are usingadvanced controls and displays. Third, they would like to improve the comfort of the operator bydesigning new suspension systems for the enclosure and the seat. Fourth, they wish to determineChapter 1. Introduction 10the behaviour of operators to simulated emergencies and vehicle malfunctions. Finally, theywant to compare the role of the operator with respect to different levels of vehicle automation.1.3 Overall Design and PerformanceIn order to protect the operator as well as meet the demands of our simulations, we chose aninverted rather than the traditional design of most flight simulators. In this design we alsoinclude several safety features in the hydraulic and electrical systems to prevent injury duringsimulations. Table 1.1 summarizes the dimensions of the simulator. The figures in Table 1.2Table 1.1: Simulator Dimensions.Platform Radius, rp 0.5 mPlatform Actuator Angle, ^yp 8°Base radius, rb 1.0 mBase Actuator Angle, -yb 51°Nominal Height, h 2.5 mreflect the performance of existing flight simulators [2, 23], human safety considerations [22,24] and the ability to achieve the sensations of operating a real excavator. To achieve theseTable 1.2: Desired Simulator Performance.Displacement Velocity Accelerationx-axis ±1 m ±1 m/s ±9.8 m/s'y-axis ±1 m ±1 m/s ±9.8 m/s 2z-axis ±1 m ±1 m/s ±9.8 m/s 2Yaw ±45° ±30°/s ±400°/s2Pitch ±45° ±30°/s ±400°/s2Roll ±45° ±30°/s ±400°/s2performance figures, the simulator uses six 1.5 inch bore, 54 inch stroke hydraulic actuatorseach controlled by a three-stage, proportional valve. The valves feature a near linear responsecurve and large bandwidth similar to that of more expensive servo valves making them easyChapter 1. Introduction 114 3PlatformFigure 1.5: Inverted Simulator Geometry.to model mathematically. The hydraulic fluid for the actuators is supplied by a 30 gallon perminute (GPM), 2500 pounds per square inch (PSI) power unit and two 10 gallon accumulators.With this design and expected performance, we anticipate a motion simulator which will formthe basis of our human factors and teleoperation research facility.The remainder of this thesis is divided into four chapters. In Chapter Two, we will derivethe platform's kinematics and jacobian and look at singularity issues. We will explain relevantChapter 1. Introduction 12issues concerning the design of the motion simulator, the actuators, the hydraulic, mechanicaland electrical systems in Chapter Three. Chapter Four derives a simplified version of the motionsimulator's dynamics as well as looking at issues of control. Finally, in the last chapter, wepresent some conclusions and suggestions for further work to help complete the human factorsand teleoperation research facility.Chapter 2KinematicsIn Chapter Two we present the derivation of the platform's inverse kinematics which transformthe platform's position and orientation to the lengths of the six actuators. We derive theplatform's jacobian and use it to determine and avoid the platform's singularities so that wedo not lose control of the platform during a simulation. We also use the jacobian matrix todetermine expressions for the platform's velocity and acceleration kinematics. Then, usingNewton's method for multiple equations and variables and the platform's jacobian, we derivethe platform's forward kinematics which determine the platform's position and orientation giventhe lengths of the actuators.2.1 Inverse KinematicsIn the case of a serial manipulator the inverse kinematics are usually quite difficult to deriveand are generally non-unique. However, in this project, the platform's inverse kinematics arerelatively easy to derive because the platform is a parallel-type manipulator. The platform'sinverse kinematics map the position and orientation of the platform to the lengths of theplatform's six actuators. Referring to Figure 2.6, we see that there is one coordinate frame fixedto the platform and one coordinate frame fixed to the base whose axes are labeled xp , yp , zp andx, y, z respectively. We can write the equation for a vector, bai, representing actuator i in thebase frame asbai = bRpppi + bdp — bbi (2.1)where bRp (variable) is the rotation matrix whose columns are the coordinates of the platformbasis vectors in the base frame, bdp = [xp , yp , zp}T (variable) is the position of the platform's13ypChapter 2. Kinematics 14Figure 2.6: Vector Definitions for Inverse Kinematics.center of mass with respect to the base frame, Pp; (fixed) is the position of the platform end ofactuator i with respect to the platform frame and b bi (fixed) is the position of the base end ofChapter 2. Kinematics 15actuator i with respect to the base frame. If the actuator end points are arranged in pairs at120 degree intervals around a circle, as shown in Figure 2.6, then we write vectors Ppi and bbiasTPPi = [ rp cos 7pi rp sin -ypi —kh2 i and (2.2)bbi = [ rbcos-ybi rb sin 7bi 0 i T (2.3)where rp is the radius of the platform circle, hp is the nominal height of the platform, rb is theradius of the base circle and 7pi and 7bi are defined for each actuator as shown in Table 2.3.Note that (2.2) assumes that the platform's center of mass is vertically centered and that theTable 2.3: Platform and Base Actuator End Point Angles.i 7pi 7bi1 ^yp = 8° -yb = 5 1°2 120° — 7p 120° — 7b3 120° + 72, 120° + 7b4 —120° — 7p —120° — 7b5 —120° + 7p —120° -I- 7b6—7p —76platform ends of the actuators attach to the top of the platform.The platform's orientation matrix, bRp , is defined using roll, pitch and yaw angles asibR, (op, op, op) = ClbpP —pOp0 0 _cepcOpcepsOp=—Sepcep 0 sep 1 0 00 1 0 0 cikp —stkp—sep 0 cep 0 stkp cOpc iPpsepcOp + stkpsOpctkpsep scbp — stkpcOpcOpcep1sOpsepcckp — cOpschsOpsOpsOp + ctkpcckpsOpcep(2.4)COp 0where Op is the yaw angle, Op is the pitch angle, Op is the roll angle and clip = cos Op, Sikp =sin Op , etc. We chose roll, pitch and yaw angles rather than other possible angle combinationsChapter 2. Kinematics 16because it is easier to relate them to the platform's actual physical orientation which is helpfulwhen specifying trajectories.The length of actuator i is easily obtained from (2.1) to give us,ii = = \lb aiTbai. (2.5)For each actuator, i = 1 ...6, (2.5) expresses its length given the platform's position andorientation and hence the inverse kinematics of the platform (See [25] for C source code).2.2 Platform JacobianThis section contains derivations of the platform's jacobian matrix and its derivatives as they areused to determine the platform's singularities, the actuator forces and the platform's position,velocity and acceleration. We use the first derivative of the jacobian matrix to determine theplatform's acceleration and actuator forces and the second derivative to model the hydraulicactuator and platform dynamics.For parallel-type manipulators, such as a Stewart platform, it is easier to define the jaco-bian matrix as a transformation from the platform's velocity to the actuator velocities. Theplatform's jacobian is defined asby= J [ P ,b(41where i is the six vector of actuator velocities, J is the platform's six by six jacobian matrix,b Vp = bap (three vector) is the platform's translational velocity and bWp (three vector) is theplatform's angular velocity. Note that bCdp is written in terms of the derivatives of the platform'srotation angles asb cop = Bp4(2.7) (2.6)Chapter 2. Kinematics 17where for the Euler angle rotation bR p defined aboveB =[cOpcOpcep sOp—Op—OpOp0001(2.8)Because each row of the jacobian matrix corresponds to one of the platform's six actuators, andall the actuators are equivalent, we only need to derive row i. We can write an expression forthe square of the magnitude (length) of actuator i, I? = Ilbaill 2 by multiplying the transpose of(2.1) with itself to obtain,11 = PIN rPp i +b dpTbdp + bbiTbbi — 2bb iTbdp + 2 (bRpppi)T (bdp — bb i) . (2.9)Taking the time derivative of (2.9) we obtain,iiii = (b Rpppi + bdp — bb i) T bvp + (bRpppi) 7' ST (bujp) (bdp — 6bi) • (2.10)where blip = S (bwp) bRp and S (bcop) is a skew symmetric matrix, such that S (v) w = v x w =the cross product of v with w. The elements of S (v) areS (V) =0 --Vz{ vz 0Vy vxV Y—Vx0 1 (2.11)SinceST (bcop) (bdp bb,) = S (bdp — bbi) bcop (2.12)we rewrite (2.10) as44 = (bRpppi + bdp — bb i) T bvp + ((bb'bdp) x (bRpppi)) T bujp. (2.13)or, in vector notation,(2.14)Chapter 2. Kinematics 18Comparing (2.6) to (2.14) we can write the ith row of the jacobian matrix as (See [25] for Csource code)J. (bdp, bRp) = Ti [ (bRpppi + bdp bb i) T ((bbi bdp) x `Pp.)) T ]. (2.15)Equation (2.15) is written to show how the rows of the jacobian depend on the platform'sposition, bdp , and orientation, bRp .As mentioned at the beginning of this section, the first and second derivatives of the jacobianmatrix are useful for analyzing the platform'sof these derivatives.We begin by taking the transpose=JT1` ioverall dynamicsof (2.15) to simplify furtherbRpPPi + bdp — bbi(b bi — bdp) X (bRpPPi)The following are derivationsthe mathematical operations(2.16)Using the quotient rule, we take the derivative of (2.16) with respect to time, giving1JT U.Ip X (bRpP Pi) + by')— by,' X (bRpPPi) (bbi — bdp) X (bWp X (b RpPPi))bRppp• + bdp bi3i 1 .. (2.17)(bb i bdp) x eRpppi)Equation (2.17) can be simplified using (2.16) to givebwp x (bRpPpi) bvp 1_ jTii— bVp X (bRpPpi) (bbi bdp) x (bwp x (bRpPpi)j sT = (2.18)liFinally, taking the transpose of (2.18) we have an expression for each row of the first derivativeof the platform's jacobian matrix (See [25] for C source code)edp, bytp, bvp, bwp, is) [Tb pi) + bvp—Ji1.i_bvp x (bRpppi)WP+X (bRpp(b i — bdp) x (bLop x (bRpppi)) •ti(2.19)Chapter 2. Kinematics 19To derive the second derivative of the jacobian matrix we start with (2.18) and use thequotient rule as before, giving1 1 —bap x (bRpPpi) — 2 bvp x (bcop x (bRpPpi))bap x (bRpppi) bwp x (bwp x (bRpppi)) + bapbwp x (bwp x (bRpppi)))— {[bwp x (bRpppi) byp_bvp x (bRpppi) (bbi bdp) x (bwp x (bRpppi))] — .71'111 (2.20)where bap (three vector) is the translational acceleration of the platform's center of mass, bap(three vector) is the angular acceleration of the platform about its center of mass and 1, is theacceleration of actuator i. Note that bap is written in terms of the first and second derivativesof the platform's rotation angles asbap = B. -Op 6Bp + B (2.21) where— Bp Sep Cgp — q5, Cep S 400 0B = —Opsepsop 4;pc9pcop —40„ 0--Opcep 0 0Equation (2.20) is simplified using (2.18) to givebap x (bRpppi) bwp x (bwp x (b Rpppi)) + bap_bap x (bRpppi) 2bvp x (bwp x (bRpppi))(bbi bdp) x (bap x (bRpppi) bwp x (bwp x (bRpppi)))j iT = (2.22) — 2J ,Tli — JTi;(2.23) (bb i _ bdp) x (bap x (bRpppi) — -Finally, taking the transpose of (2.23) we have an expression for each row of the second derivativeof the platform's jacobian matrixj i (bdp, bRp, bvp, b1.44, bap, bap, =Chapter 2. Kinematics 20bap X (bRpppi ) + bwp x (bwp x (bRpppi )) + bap_bap x (bRpppi) — 2bvp x (bwp x (bRpppi)) + — Iiiii — Jiii(bbi — bdp) x (bap x (bRpppi ) + bwp x (bwp x (bRpppi)))[ 1 1 1li (2.24)In the sections that follow, the results derived above for the rows of the jacobian matrixand its first and second derivatives, namely (2.15), (2.19) and (2.24), are used to derive thefollowing:1. a method of determining when the platform is nearing a singular position or orientationso we do not lose control of the platform;2. a transformation from the platform's velocity to the actuator velocities and the reversetransformation used to derive the combined dynamics of the platform and the hydraulics;3. a transformation from the platform's acceleration to the actuator accelerations and thereverse transformation used to derive the combined dynamics of the platform and thehydraulics;4. an iterative method used for estimating the platform's position and orientation given theactuator lengths and for controlling the position and orientation of the platform; and5. a transformation from the actuator forces to the platform's force and torque and thereverse transformation used to derive the dynamics of the platform.2.3 SingularityWhen a parallel mechanism reaches a singular position or orientation it gains an uncontrolleddegree of freedom and will rotate and/or translate without the lengths of the actuators changing.Therefore, in order to prevent this loss of control, we must avoid singularities. We use theplatform's jacobian matrix to find the singularities because they are not geometrically obvious.Chapter 2. Kinematics 21The singular value decomposition (SVD) [26] of the platform's jacobian matrix is:J = UEVT (2.25)where U and V are row orthonormal matrices and E is a diagonal matrix of the singular values,cri ...a6 , of J. By plotting the ratios of the largest to smallest singular value while varying twoof the platform's six position and orientation parameters, we obtain a graphical description ofthe platform's singularities. For example, Figure 2.7 shows a plot of the singular value ratiosversus varying yaw (Op ) and pitch (Op ) for the platform at its nominal position (x = 0 m,y = 0 m, z = —2.5 m and Op = 0° ). We created the plot by computing the SVD of theplatform's jacobian while varying the platform's yaw and pitch angles between 0° and 90° at5° intervals (See Appendix C for MATLAB source code). This figure (2.7) shows that thereSingular Value RatiosOpFigure 2.7: Singular Value Ratios Versus Pitch and Yawis a "singularity boundary" where the platform is nearing a singular position or orientation.To prevent losing control of the motion simulator we will monitor the ratios of the jacobian'ssingular values and stop the platform before it enters a singular position or orientation.1=.•1[by Pi+ J ba[ P 1 - (2.28) bLi.) b a P PChapter 2. Kinematics 222.4 Velocity and Acceleration KinematicsThe jacobian matrix is used to solve for the actuator velocities given the platform's translationaland angular velocities as shown in (2.26)byi = J[ b:P(2.26)If J is non-singular, then the inverse of the jacobian matrix can be used to solve for the platform'stranslational and angular velocities given the actuator velocities as shown in (2.27) (See [25]for C source code)The jacobian matrix and its derivative can also be used to compute the actuator accelerationsgiven the actuator velocities and the platform's velocity and acceleration. We see this by takingthe derivative of (2.26) with respect to time to give[by 1P = j—li.bcoP(2.27)If the jacobian matrix is non-singular, (2.28) is rearranged allowing us to compute the platform'sacceleration given its velocity and the actuator accelerations(See [25] for C source code). byba[ bc:P = '7-1 ( — j 6:1) •P(2.29)2.5 Forward KinematicsTo simulate and control the platform, we need to compute its forward kinematics. Althoughin practice, it is possible to measure the platform's position and orientation directly [7], itis mechanically easier to measure the lengths of the actuators. Unfortunately, as mentionedChapter 2. Kinematics 23earlier, for fully parallel six degrees-of-freedom manipulators, there is no known closed-formsolution to the forward kinematics problem. Therefore, we propose to use Newton's methodfor multiple equations and variables [19, 26] to calculate the platform's forward kinematicsiteratively. There are several advantages to this method. First, there is no geometry restrictionwhich means that the actuators do not have to intersect. Second, the mathematics of thismethod is relatively uncomplicated compared to that of the "polynomial method." Finally,using a preplanned platform trajectory with small increments for each time step, we provideNewton's method with a "good" starting point. For this reason and the fact that Newton'smethod converges quadratically, this method will require only a few iterations per time step.For multiple equations and variables, Newton's method isxj+i = xi g (xi)ax (2.30)where x is a vector of the variables we wish to estimate, g is a vector function which approacheszero as the estimate of x improves and j is the iteration count. For the motion simulator usedin this project,XT = HIT 1'p Op Opg (x) = II ( lap (Op, Op, Op) PPi 134 — bbi) — and(x) = edp, lOX ap (Op, 9p1 OP))(2.31)(2.32)(2.33)where gi is the ith row of g and is the actual length of actuator i. Substituting into (2.30)gives the following iterationLip1,pOp b dpOpOp — J -111 6RpPP1 6dp - 6 131 II - 11IlbRppp6 bdp - bb611 -16( 2 . 3 4 ) j+1 provided that J is non-singular. Note that it is not necessary to compute the inverse of J(0(n3 )) explicitly, thus saving time. We use the LU decomposition instead because it has alower operation count, 0(n2).Chapter 2. Kinematics 24We applied Newton's method to several case studies (see Table 2.4) in order to test its con-vergence. In cases one and three, the initial estimate of the platform's position and orientationis (0 m, 0 m, -2.5 m, 0°, 0°, 0°). By improving our initial guess of the platform's position andorientation, we reduce the number of iterations required for convergence as shown in cases twoand four respectively. Cases five and six show similar results, however, because the platformis closer to a singular position/orientation, the number of iterations is higher. Finally, in caseseven, we see that even if we start with a "good" initial estimate of the platform's positionand orientation, the number of iterations required for convergence is still high because we arevery close to a singular position/orientation. To help improve the convergence, we are currentlyinvestigating the use of modified Newton methods (See [25] for C source code).Chapter 2. Kinematics 25Table 2.4: Examples Using Newton's Method.Case Position Results(m, m, m, 0 , 0 , 0)Time(s)Number ofIterations1 Guess (0.0, 0.0, -2.5, 0, 0, 0)Desired (0.5, 0.0, -2.5, 0, 0, 0)Actual (0.5, -1.04987 x 10 -17 , -2.5,-4.9643 x 10 -17 , 1.4814 x 10-7 , 1.6039 x 10 -16 ) 0.018 42 Guess (0.49, 0.0, -2.5, 0, 0, 0)Desired (0.5, 0.0, -2.5, 0, 0, 0)Actual (0.5, -9.36948 x 10 -21 , -2.5,1.03858 x 10 -19 , 8.1727 x 10 -16 , -2.2868 x 10-19 ) 0.014 33 Guess (0.0, 0.0, -2.5, 0, 0, 0)Desired (0.0, 0.0, -2.5, 0, 45, 0)Actual (1.07369 x 10-11 , -1.48721 x 10 -16 , -2.5,-6.1343 x 10 -13 , 45, -6.9181 x 10 -16 ) 0.022 54 Guess (0.0, 0.0, -2.5, 0, 43, 0)Desired (0.0, 0.0, -2.5, 0, 45, 0)Actual (1.6586 x 10-7 , -3.8722 x 10 -19 , -2.5,1.1119 x 10 -16 , 45, 0) 0.013 35 Guess (0.0, 0.0, -2.5, 0, 0, 0)Desired (0.0, 0.0, -2.5, 45, 45, 0)Actual (-1.2139 x 10 -12 , 4.3792 x 10 -11 , -2.5,45, 45, -3.2676 x 10 -4 ) 0.06 136 Guess (0.0, 0.0, -2.5, 43, 43, 0)Desired (0.0, 0.0, -2.5, 45, 45, 0)Actual (-2.4712 x 10 -13 , 8.8653 x 10 -12 , -2.5,45, 45, -1.47 x 10 -4 ) 0.045 107 Guess (0.0, 0.0, -2.5, 59, 59, 0)Desired (0.0, 0.0, -2.5, 60, 60, 0)Actual (1.1188 x 10 -11 , 1.1347 x 10 -11 , -2.5,60, 60, -3.643 x 10 -4 ) 0.061 13Chapter 3DesignWe discuss in Chapter Three the design of each of the motion simulator's components. Weexplain the advantages of our inverted design and justify its dimensions. We run several inversedynamic simulations to determine the required actuator performance. We also discuss the designof the hydraulic system including the power unit, distribution and actuator subsystems. Themotion simulator base, the universal joints, position transducer mounting and the distributionmanifold frame are all parts of the mechanical design of the simulator. Finally, in the electricaldesign section we discuss the two subsystems involved, namely, safety and control.3.1 Motion Simulator DesignWe decided on an inverted design for our motion simulator because it provides several advan-tages over traditional flight simulator designs. First, the actuators are under tension, therebyallowing them to be narrower without buckling. Second, the platform conserves space by risingup toward the ceiling when it is not in use. Third, if the system fails for any reason, the operatorcan lower the platform to a level attitude allowing him/her to dismount safely. Finally, becausethe platform may be lowered, the operator can easily enter and exit without climbing stairsor crossing ramps. This inverted arrangement, however, does have one obvious disadvantage,that is, trouble in performing regular maintenance of the hydraulic system as it is difficult toreach. Yet, in spite of this undesired consequence, the alternative, mounting the actuators withtheir blind ends down, results in a more severe problem as the hoses and cables may becomeentangled.To provide the operator with a comfortable environment, we chose a platform radius of26Chapter 3. Design 270.5 meters. This will provide enough space for a chair, hand controls and room for the operatorto move without injury or discomfort during a simulation. To prevent the joints from interferingwith one another, we chose a platform actuator angle of 8° which gives a center-to-center jointseparation of 5.5 inches providing just enough room to mount the joints to the platform. Inaddition to the joints, the base ends of the actuators include hydraulic valves and manifoldswhich require a 12 inch separation, which results in a base actuator angle of 51°. We ranseveral inverse dynamic simulations, discussed later, with varying base radii in an attempt tominimize the actuator forces. We found that increasing the base radius reduces the actuatorforces required for a given translational acceleration and decreasing the base radius reducesthe actuator forces required for a given angular acceleration. Figures 3.8 and 3.9 show thedifferences in the actuator forces for two different base radii (0.75 m and 1 m) when the platformis accelerating horizontally in the x direction from its home position of (0 m, 0 m, -2.5 m, 0°,00, 0°). The width of the simulator room (3.6 m) was another factor which influenced thebase radius. To maintain clearance between the walls and the actuators and to help reduce theactuator forces required for translational motion, the base radius is 1.0 meter. The platform'stranslational displacements are limited to ±1 meter by the height (3.6 m) and width of thesimulator room. The nominal height of the platform is 2.5 meters allowing the operator's legsto hang down.3.2 Inverse Dynamic SimulationsTo meet the desired platform performance as shown in Table 1.2, we had to determine therequired performance of the actuators. To do this, we ran several inverse dynamic simulationsas presented by Do et al in [12, 13]. Given the initial position, velocity and acceleration of theplatform, the simulation program computes the actuator lengths, velocities, accelerations andforces at each time step using the following algorithm:1. Initialize platform position and orientation, actuator lengths and angles.Chapter 3. Design 28Actuator Force2500200015001000500z 0q-;-500-1000-1500-2000-25000 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.21 62 5t (s)Figure 3.8: Actuator forces with a base radius of 0.75 m.2. From the given acceleration compute the position, orientation and velocity of the platformat time t + At. For example,vpz = apz (2 + At) + vpzo and (3.35)xp = xpo vpzo (t + At) + At)2 (3.36)3. For each actuator i = 1 ...6:(a) Compute the coordinate frame attached to actuator i where ii = bain bai- II is theunit vector coincident with actuator i, ji = x —k) x —kil and ki = ii x ji.(b) Compute the Euler angles of rotation, tki,ei, 4, from the base frame to the frameattached to actuator i. Do et al use a 3-2-3 Euler rotation sequence so(ki = arctan k. t,kix(3.37)150010005000z'4 -500-1000-1500-2000041 6 2 50.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0 2Chapter 3. Design 29Actuator Forcet (s)Figure 3.9: Actuator forces with a base radius of 1 m.(kix cos 0, + ki y sin ck,)= arctan andki,(3 .38)( tki = arctan —iix sin 0, + ii y cos (k;i (3.39)—jix sin cbi + jiy cos 4 ) • (c) Compute the first and second time derivatives of the Euler angles, for example,1,bi = [th (t + At) — .tki (t)] /At.(d) Compute the angular velocity and acceleration of actuator i in the attached coordi-nate frame. For a 3-2-3 rotation+ Oistki= Oictki and (3.40)t4iChapter 3. Design 30—4seicoi — (4i (oiceictki — + BisWj + di t•kickiiai =;ki AO): + (4: + 14:Aoki) + koki —4c9i — (4iksOiwhere ctki = cos tki and ski = sin i , etc.(e) Compute the reaction forces perpendicular to actuator i (i.e. along ji and ki). Usingconservation of angular momentum and assuming that the actuators are narrowand that their center of mass is positioned half way along their length, then theperpendicular forces arei lizziWiz + i iizz ia:z + i Iiyy iwix iwiy + ma9 11.1:z fiy = (3.42) ifi Y YY Yill jai - jiizz jwi. jwiz - fi. = Y (3.43)(f) Compute the ith column of the six by six matrix JT (similar to the transpose of theplatform's jacobian derived earlier) such that(3.41)X1 1 y111ZP P1 yPR131 PP1zPR121PP1zPR111 PP1xPR131PP1xPR121 PP1yPR111i6xi6yi6zPP6yPR63 P PR„1 6z • ')21PP6zPR611 PP6xPR631PP6xPR62 P PR' „P6yJT = (3.44)where PRi = hRpTi'lli is a transform from the frame attached to actuator i to theplatform's frame and PRiik is the element from the jth row and kth column of PRi.4. Sum the perpendicular reaction forces and their corresponding torques in the base andplatform frames respectively.681 = E(fiyjix Azkix)i=1(3.45)Chapter 3. Design 31682 = E + fizkiy) (3.46)1=1683 = E (fiji z + fizkiz) (3.47)i=1684 = E (PPiy (PRi32fiy PRi33fiz) PPiz (PRi22fiy PRi23fiz)) (3.48)i=1635 = !6 (PRil2fiy PRil3fiz) Ppix (PRi32/iy PRi33fiz)) (3.49)i=1686 = E (Ppix (PRi22fiy + PR423fiz) - PPiy (PRil2fiy PRil3fiz)) (3.50)i=1where the sums si correspond to the ith row of JT.5. Compute the total force and torque on the platform in the base and platform framesrespectively. The total force includes the platform's inertia, gravity and the perpendicularreaction forces. The total torque includes the platform's rotational inertia and the torquedue to the perpendicular reaction forces,m baP Pxm ba 32P Pym bP aPz +mPg — 83PiPxzPt'Px + (PiPzz P/Pyy) PwPyPuPz — 84PIPyyP°Py + (PIPzz PIPzz) PwPxPwPz — 36PIPzzPaPzbpfprp(3.51)where the angular velocity and acceleration of the platform in the platform frame are[14 — q‘s°P1)44p = 9.79 C14 — 007,S0pC0pdp S Op + 4)32 0.7pC0p1.43 (412s812 44/3=Pap = h;O — thpep S — C Op — thp C C Op + tip (i)p S /bp S Op0p S thp lip Ctkp + C C Op '"•- S C Op —• Op 4 C 1/..lpS Op(3.52)(3.53)Chapter 3. Design 32and we assume that the platform is symmetric about the zp axis so that PIpzx = PIpyy .6. The actuator forces are obtained by solving Tflxfsx(3.54) using the LU decomposition.For the purposes of the simulation, each actuator is represented as a narrow rod with themoment of inertia about its principal axes given byilixx = 0, (3.55)ma le= and (3.56)3ma d!=(3.57)Iizz 3where ma is the mass of the actuator and /i is its length. Assuming Figure 2.6 is a "good"representation of the motion simulator, we model the platform as a solid cylinder of radius rp ,height hp and mass mp . The inertias about the platform's principal axes aremp (3rp2 hp)12 (3.58)mp (3rp2 hp)12 and (3.59)PIPzz2Mp Tp(3.60)2Using the above algorithm and inertia formulas we ran a set of six simulations (for theactuator numbering convention see Figure 1.5). In the simulations we assume that the mass ofthe platform is 250 kg (P.1500 lbs) and that the mass of each actuator is 40 kg (.c.-,80 lbs). Weestimate the total mass of the platform by including the operator's mass A.-.200 pounds maxi-mum, the mass of the seat P..1100 pounds and the mass of the platform frame and miscellaneousequipment 'A 1 2 0 0 pounds. The first set of three simulations start at the platform's home positionPIPxxPIP YY030.1 0.2030 0.1 0.2t (s)0.1 0.2 0.3t (s)Actuator Accelerationt (s)2000t (s)Actuator Force3 410000-1000 1 62 5-20001.51Ei 0.50-0.50Chapter 3. Design 33and orientation (0 m, 0 m, -2.5 m, 0 0 , 00 , 0°) and accelerate the platform at 1 g (9.8 m/s2 )in each of the cartesian directions, x, y, z, for 0.3 seconds. The first simulation, Figures 3.10and 3.11, show the geometrical symmetry of the platform about the x axis. Actuators 1, 2, 5and 6 are pulling the platform forward (out of the page) while actuators 3 and 4 are pushingit. Actuators 2 and 5 are pulling with more force than actuators 1 and 6 because their anglewith the x axis is smaller. The second simulation, Figures 3.12 and 3.13, demonstrate theplatform's lack of symmetry about the y axis. Actuators 1, 2 and 4 are pulling the platformwhile actuators 5 and 6 are pushing. At the beginning of the simulation actuator 3 is pullinghowever at the end, it is pushing. In the third simulation, the symmetry of the platform aboutthe z axis is shown in Figures 3.14 and 3.15. All six actuators are pulling the platform upwardwith their force increasing as the angle between the actuators and the z axis increases.Figure 3.10: Acceleration in the x direction.0.1 0.2t (s)Actuator Acceleration0.1 0.2 a 3t (s)t (s)2000 Actuator Force 610005— - „'''s °344.4:: -1000 -2000 1-2-30000.1 0.2 030t (s)../....CVCOs.....E: ...*J.Chapter 3. Design 34Figure 3.11: Frames showing acceleration in the x direction.Figure 3.12: Acceleration in the y direction.The second set of three simulations start at the platform's home position and orientation(0 m, 0 m, -2.5 m, 0°, 0°, 0°) and accelerate the platform at 400°/s 2 about the three cartesian11111=11M111.11111/► MR ME Allrnior AMiNN. la % f3. IMPb. 111101111 • ill■ it A-. /NW_VS I _. WIN MEM, 4.1....■•••• se= ' • ••1Figure 3.13: Frames showing acceleration in the y direction.-9.50CO .1-2-30.3 0-828-830Z -832-834-836-83800.1 0.2(s)Actuator Force0.1 0.2t (s)2.22.121.91.81.70.1 0.2(s)Actuator Acceleration03030.2 0.3Chapter 3. Design 35Figure 3.14: Acceleration in the z direction.axes, x, y, z, for 0.3 seconds. For the rotation about the x axis, Figures 3.16 and 3.17, all theChapter 3. Design 36Figure 3.15: Frames showing acceleration in the z direction.actuators are pulling to support the weight of the platform. Because the distance from thex axis to the end points of actuators 2, 3, 4 and 5 is much larger than the distance to theend points of actuators 1 and 6, actuators 2 and 3 are doing the most work in pulling theirside of the platform up, while actuators 4 and 5 do very little work allowing their side of theplatform to fall. Figures 3.18 and 3.19 show the result of accelerating the platform about they axis. The actuators work in pairs to rotate the platform. Actuators 1 and 6 allow their sideof the platform to fall while actuators 2, 3, 4 and 5 are pulling their side up. Because there arefour actuators pulling up instead of just two as in the previous simulation, the actuator forcesare smaller. Finally, Figures 3.20 and 3.21 show the platform's symmetry about the z axis.All actuators are pulling to support the weight of the platform, however, the odd numberedactuators are pulling more than the even numbered actuators because they have a positivecomponent of force in the direction of rotation. The even numbered actuators, on the otherhand, have a negative component of force in the direction of rotation so that they are pullingwith less force.In addition to the six simulations described above which start the platform from its homeposition and orientation, we ran some simulations which start the platform from other positionsActuator Velocity5.................. 2 ......0.1 0.2 0.3t (s)Actuator Acceleration 5000-5000.1 0.2t (s)- 1 000o 03Chapter 3. Design 37Figure 3.16: Acceleration about the x axis.Figure 3.17: Frames showing acceleration about the x axis.to see if the actuator forces changed significantly. As an example, Figures 3.22 and 3.23 show0.30.1 0.2t (s)Actuator Acceleration0.30.1 0.2t (s)2.32.252.22.15ti2.12.0506420-2-40 0.1 0.2 03t (s)Actuator Velocity2 51.50.1 0.2 0 3t (s)Actuator ForceChapter 3. Design 38Figure 3.18: Acceleration about the y axis.Figure 3.19: Frames showing acceleration about the y axis.the results of accelerating the platform diagonally at 1 g from (0.75 m, 0.75 m, -3.0 m, 0°, 0°,1 3 50.1 0.2 0 32.22.15A2.12.0500.60.4--z- 0.2Ei 0• .- -0.24140Actuator Velocity___3. --3---0.1 0.2 03t (s)Actuator Acceleration__--------- -7,-' --4"---4-I 3 50.1 0.2 0.3t (s)-200-300z-403-500-6000t (s)Actuator Force0.1 0.2t (s)03Chapter 3. Design 39Figure 3.20: Acceleration about the z axis.Figure 3.21: Frames showing acceleration about the z axis.0°) for 0.3 seconds. These results indicate that the actuators should be capable of forces whichO30.1 0.2t (s)3 ,,..................4--5Actuator Velocity3..........................................• .. ...................... .......... A45140000Chapter 3. Design 40are somewhat higher than those in the previous simulations.Figure 3.22: Diagonal Acceleration.Figure 3.23: Frames Showing Diagonal Acceleration.Chapter 3. Design 41By combining the simulation results and the desired platform performance in Table 1.2 wearrive at the desired actuator performance shown in Table 3.5. We now proceed to determinethe type, size and configuration of actuator that will meet these performance criteria.Table 3.5: Desired Actuator Performance.Force ±4000 NStroke 1.5 m (60 inches)Velocity ±1.5 m/sAcceleration ±11 m/s23.3 Actuator DesignTable 3.5 indicates that the actuators must be capable of providing a force of 4000 Newtonsat a speed of 1.5 meters per second. With this in mind, the obvious choice of actuator type ishydraulic because of its high force to weight ratio [27]. Initially, we wanted to use hydrostaticcylinders typically found in flight simulators because they operate with virtually no friction thusno noticeable "stick-slip" motion (or turn-around bump) is felt by the operator. Manufacturersachieve this frictionless motion because the piston and piston rod bushings are tapered whichallows fluid to flow between the piston and cylinder and between the piston rod and rod sealkeeping the piston and piston rod centered [28]. See Figure 3.24. Unfortunately, the machin-L, 1TapersFigure 3.24: Hydrostatic Cylinder.ing required to make hydrostatic cylinders is very precise which in turn makes the actuatorsChapter 3. Design 42very expensive. We obtained quotes from Basic Hydraulics (Rexroth, Germany) and Wainbee(Parker Fluid Power, USA) which ranged from $5000 to $6000 per actuator (not includingvalves). As an alternative to buying hydrostatic cylinders, we considered machining standardcylinders to the required tolerances, however, local machines shops were unable to meet thesetolerances for small bore cylinders (1 to 2 inches). Due to financial limits we were forced touse standard industrial actuators with low-friction, Teflonl based seals. Once we determinedthe actuator type, we had to determine its size. We chose the bore, rod diameter, stroke andoperating pressure of the platform's actuators in order to satisfy several criteria. Firstly, theactuator had to be sufficiently rigid to prevent buckling. Secondly, to keep power unit andvalve costs down, the fluid flow into the actuator, at a speed of 1.5 meters per second, had tobe minimized. Thirdly, to maximize the platform's workspace, the actuator's stroke had to bemaximized. Finally, we wanted an actuator that would meet our performance requirements of4000 Newtons at 1.5 meters per second. To satisfy this last requirement, we had to considerthe type of valve and its connection to the actuator as these determine the actuator's force andspeed. In the discussion that follows we limit the actuator choices to asymmetrical 1, 1.5 and2 inch bores (standard sizes) with 0.625, 1, and 1.375 inch rod diameters respectively. Oneinch bore actuators are the narrowest standard available while 2 inch bore actuators require thehighest flow. We are not considering symmetrical actuators because they reduce the platform'sworkspace as they are twice as long as asymmetrical actuators when fully retracted.To prevent injury to the operator and damage to the platform, we ensured that the actuatorswould not buckle when subjected to the maximum force requirement of 4000 Newtons. Weused Euler's column formula [29], (3.61), to conservatively estimate the critical buckling forceof the actuator. Euler's formula gives a conservative estimate because it assumes that we areconsidering a single, solid column of uniform diameter whose ends are free to pivot,2-2E1 fer = L2 (3.61)where E is the modulus of elasticity of the material (200 GPa for steel), I is the moment of'Teflon is a trademark of the Du Pont Company.4.543.5310.5015... ...........1.5 ...2 2-5 3 3.52.04000 N• .. LP. ..............Chapter 3. Design 43area of the column and L is the column length. To simplify the calculation of the moment ofarea we assume that the diameter of the actuator is the same as the rod along the entire length.The moment of area is then given byit-R4/ =4(3.62)where R is the column's radius. Figure 3.25 shows a plot of the critical buckling force versuslength (when fully extended) for the three actuator sizes (See Appendix D for MATLAB sourcecode). The results are as expected: the longer the actuator the lower the buckling force for agiven bore. Therefore, 1.5 and 2 inch bore actuators are suitable for driving the platform while1 inch bore actuators are not.x104 Critical Buckling Force Versus Column Length1 (m)Figure 3.25: Actuator Critical Buckling Force.After considering the problem of buckling we had to minimize the size of the power unit asit represents a large portion of the total system cost. The higher the flow for a given pressure,the higher the cost of the power unit. Also, as the flow increases the cost of valves increases1227481.01.52.072162298ActuatorBore(inches)ActuatorFlow(GPM)TotalFlow(GPM)Chapter 3. Design 44while their bandwidth decreases. When the platform is moving downward at 1.5 meters persecond the total flow is six times the flow into each actuator. To calculate the flow into eachactuator, we multiply the actuator's speed times its piston area. Table 3.6 shows the individualand total flows required for each of the three actuator sizes at a speed of 1.5 meters per second.To keep costs down we will use the smallest bore possible.Table 3.6: Fluid Flow versus Bore for 1.5 m/s Actuator Speed.Our final concerns, over and above preventing buckling and minimizing flow, are the typeof valve and its connection to the cylinder. We looked at several servo and proportional valvesmanufactured by Moog Controls and Mannesmann-Rexroth. Generally speaking, servo valvesare more linear and have a higher bandwidth than proportional valves. However, as the size ofthe valve increases (above 20 GPM), the bandwidth falls. Also, servo valves require a minimumpressure drop across both ports of 1000 PSI to operate properly while proportional valves canoperate at around 500 PSI so the supply pressure is lower. After considering the Moog 78 seriesservo valves (55 Hz bandwidth at ±40% signal), 641 series proportional valves (30 Hz bandwidthat ±40% signal) and the small (100 Hz bandwidth at ±25% signal) and the medium (70 Hz at±25% signal) size Rexroth 4WRDE three-stage proportional valves we chose the small Rexroththree-stage proportional valves. We found many advantages to the Rexroth valves. First, theyfeature a near linear response curve and large bandwidth (150 Hz at ±5%, 100 Hz at ±25%and 35 Hz at ±100% of maximum valve opening) similar to that of servo valves making themeasy to model mathematically. The valves achieve this performance by using a built-in controlcircuit that monitors the main stage spool position using a linear variable differential transducerChapter 3. Design 45(LVDT). Second, the valves have a built-in isolation valve which closes in the case of systemfailure and stops the actuator, thereby preventing injury to the operator and damage to themotion simulator. Third, as described below, the valves are capable of providing the platformwith the required forces (±4000 N) over most of the desired range of velocities (±1.5 m/s).Finally, the valves have a larger flow capacity for less cost than comparable servo valves.When working with hydraulics there are two principal methods of connecting a cylinderand its control valve: four-way and three-way. In the four-way connection, the valve controlsthe flow into both sides of the actuator. This increases the actuator's stiffness and bandwidthbecause there are two small fluid chambers, one on either side of the piston. With asymmetricactuators, however, the four-way connection leads to pressure jumps when the actuator's speedchanges sign because the unequal areas on either side of the piston are incompatible with theequal port areas of the valve [28]. These jumps will detract from the quality of the simulationand may damage the hydraulic system. Therefore, we will not use the four-way connection,instead, we will use the three-way connection shown in Figure 4.41. In the three-way connection,the valve controls the flow into the blind end of the actuator while the rod end remains at theconstant supply pressure. Because there is only one fluid chamber, the actuator's stiffness (andbandwidth) is lower than in the four-way connection. An asymmetric, three-way connectedactuator's output force is given byf = Pe ll — P3a (3.63)where Pc is the cylinder pressure at the blind end, A is the piston area, Ps is the supplypressure and a is the annulus area between the cylinder and the piston rod. Furthermore, Pc isdetermined by the pressure drop across the valve for a given flow. If the actuator is extending,the flow q, into the blind end is given byq = Cv v/P. — Pc (3.64)where Ct, is the valve's flow/load coefficient when it is fully open [27]. If the actuator isChapter 3. Design 46retracting, the flow out of the blind end is given byq = C,V7Pc. (3.65)Solving (3.64) and (3.65) for Pc and substituting each result into (3.63) gives the following forceversus flow equations2f = P, - C2 A — P,a, q > 0q2J C3 A — P,a, q < 0(3.66)(3.67)We use (3.66) and (3.67) to plot the force-velocity characteristic curves of the four valveand three cylinder combinations as shown in Figures 3.26, 3.27, 3.28 and 3.29 (See Appendix Efor MATLAB source code). We created the plots with the highest possible supply pressureof 2500 PSI and use the valve specifications provided by Moog and Rexroth. All four plotsindicate that the 2 inch bore cylinder can produce very high forces (>12,000 N). In threecases (Figure 3.28 excluded), however, the 2 inch bore cylinder is unable to achieve the desiredvelocity of 1.5 m/s. Also, the possibility of high forces in all four cases is undesirable as theresulting accelerations may harm the operator. In all four cases, the 1 inch bore cylinder iscapable of relatively high speeds (>1.5 m/s), but as we saw earlier, it is not strong enoughfor our application. With the 1.5 inch bore cylinder the two Moog valves (Figures 3.26 and3.27) and the small Rexroth proportional valve (Figure 3.29) produce similar performancecharacteristics. However, none of these valves are capable of the desired force over the entirevelocity range because their flow/load coefficients are too small. The combination of the mediumsize Rexroth proportional valve and the 1.5 inch bore cylinder (Figure 3.28) is capable ofproducing the desired forces over a wide velocity range (>2 m/s) and would be the best choice forour application if it were not for our concerns about operator safety. If the actuator accidentallyattains a high velocity and must then stop suddenly, the high acceleration could cause injury tothe operator. With this in mind the 1.5 inch bore cylinder with the small Rexroth proportionalChapter 3. Design 47valve (Figure 3.29), although not able to deliver all the performance we wolild like, is the bestchoice for our application. Therefore, using the information obtained from the buckling, flowand valve studies, we chose to use 1.5 inch bore, 60 inch (P-.A.5 m) stroke actuators with a6 inch stop-tube. The stop-tube, although reducing the actuator's effective stroke to 54 inches,-increases its strength when it is near full extension. These actuators provide the platform withthe desired forces (±4000 N) over a velocity range of -1.3 to 1.1 m/s.x104 Force-Speed Characteristic (20 GPM @ 1000 PSI, Ps = 2500 PSI) 3-Way(m/s)Figure 3.26: Force/Speed Characteristics: Moog Servo Valve & Varying Cylinder Bores.3.4 Hydraulic System DesignThe platform's hydraulic actuation system can be logically divided into three main subsystems.The first is the power unit subsystem which supplies and receives fluid to and from the rest ofthe system. The second is the distribution subsystem which filters, accumulates and distributesfluid to the actuators. And finally, the six actuator subsystems which control the fluid flow intoChapter 3. Design 48x104 Force-Speed Characteristic (6.6 GPM @ 150 PSI, Pa = 2500 PSI) 3-WayFigure 3.27: Force/Speed Characteristics: Moog Prop. Valve & Varying Cylinder Bores.and out of each actuator.3.4.1 Power Unit SubsystemThe power unit is a standard item designed by Basic Hydraulics meeting our pressure and flowrequirements of 2500 PSI at 30 GPM. A schematic of the power unit is shown in Figure 3.30.At the heart of the unit is a compensated, swash plate type piston pump driven by a 40 horsepower, three phase motor. After the user sets the desired system pressure, the compensatoradjusts the pump flow according to the system's demand for fluid. To keep the noise leveldown, the pump is submerged in a 90 gallon reservoir. In addition to the pump, the powerunit has a water cooled heat exchanger and a low pressure filter on the fluid return line. Theheat exchanger controls the flow of water by monitoring the temperature of the fluid in thetank. When the temperature exceeds a predefined limit a valve opens allowing water to coolChapter 3. Design 49x104 Farce-Speed Characteristic (50 LPM @ 10 Bar, Pi = 2500 PSI) 3-Way1.50.50Z _0.5-1-1.5-2-2.5-8 -6 -4 -2 0i (m/s)Figure 3.28: Force/Speed Characteristics: Medium Rexroth Valve & Varying Cylinder Bores.the returning fluid. The filter removes dirt picked up by the fluid after leaving the actuators.When the filter is full, a mechanical, pop-up indicator tells the user to replace the filter element.The power unit subsystem also includes several other features including a pressure gauge whichallows the user to accurately adjust the system pressure, a breather which filters air enteringat the top of the tank, a fluid level indicator with a fluid level switch and a fluid temperatureswitch which are monitored by the computer control system. If the level is too low or thetemperature is too high, the control system will shut the power unit down.3.4.2 Distribution SubsystemThe distribution subsystem is made up of several components (See Figure 3.31). Starting wherethe fluid enters the distribution subsystem there is a ball valve. This valve is used to disconnectthe power unit from the rest of the hydraulic system for maintenance purposes. Following2 4 6 8Chapter 3. Design 50x104 Farce-Speed Characteristic (25 LPM 10 Bar. Ps = 2500 PSI) 3-Way1.50.50z -0.5-1-1.5-2-2.5-4 -3 -2 -1 0 2 3 4(m/s)Figure 3.29: Force/Speed Characteristics: Small Rexroth Valve & Varying Cylinder Bores.the ball valve there is a pressure filter which prevents fine particles of dirt from damaging theproportional valve spools and sleeves. The pressure filter has an electrical dogging indicatorwhich is monitored by the computer system. As the filter fills with dirt, a pressure drop developsacross it. When the pressure drop becomes too high, a switch doses interrupting the computersystem which in turn performs a hydraulic system shutdown. Next to the pressure filter thereare two 10 gallon, gas filled accumulators. These accumulators act like capacitors in electriccircuits providing storage for extra fluid. When the system demands more fluid than the powerunit can deliver, the accumulators make up the difference. If the platform requires a sudden,short acceleration burst, the power unit and the accumulators together provide the necessaryfluid. After the burst, however, the accumulators must recharge before another one can takeplace. There are two valves that direct the fluid from the accumulators. The first valve, whichis between the pressure filter and the accumulators, prevents a backwash of fluid through theChapter 3. Design 51filter while the second valve allows the accumulators to drain back to the tank when the powerunit shuts down, thereby reducing the fluid pressure to zero. Beyond the accumulators there isa distribution manifold and pilot filter assembly which distributes and collects fluid to and fromthe six actuators via eighteen flexible hoses (6 pressure hoses, 6 return hoses and 6 pilot hoses).The first stage of each proportional valve is separately piloted through the pilot filter whichprovides extra protection for the dirt sensitive first stage of the proportional valves. An electricpressure transducer on the distribution manifold allows the computer system to monitor thesystem pressure. If the pressure fails below the normal operating range then the control systeminitiates a power unit shutdown.3.4.3 Actuator SubsystemEach actuator subsystem is made up of six components (See Figure 3.32). First, there is a1.5 inch bore, 54 inch stroke cylinder which drives the platform. If the control system failsand an actuator tries to fully retract, the cylinders have hydraulic "cushions" on their blindends to slow the pistons down. Second, an actuator manifold provides a connection networkand mounting base for the other components. The manifold mounts directly to the cylinderavoiding the use of hoses which would increase the compliance of the system. Third, there isa proportional valve which controls the fluid flow to the blind end of the cylinder including abuilt-in isolation valve which is normally energized and open allowing proper operation of theproportional valve. If there is a control system failure and an actuator tries to extend past apredetermined length, a switch at the rod end of the cylinder opens and deactivates all of theisolation valves. To prevent the platform from moving beyond the boundaries of the simulatorroom, the platform will connect to limit switches which are fixed to the wall and attachedto the platform with chains of a predetermined length. If the platform pulls on one of thechains the switch opens and the isolation valves are deactivated, thereby stopping the platform.The fourth component in the actuator subsystem is a "home" valve which fully extends theactuator regardless of the condition of the proportional and isolation valves. The "home" valvesChapter 3. Design 52are operated manually and contain a velocity limiting orifice allowing us to move the platformdownward and remove the operator safely. The fifth component is an adjustable pressure reliefvalve which regulates the pressure at the blind end of the cylinder. With this valve we can limitthe maximum force and acceleration produced by the actuator. Finally, there is a provision fora differential pressure transducer which measures the pressure difference between the rod endand the blind end of the cylinder. We use the measurements from this transducer to determinethe load on the actuator and adjust the controller response.3.5 Mechanical DesignThe mechanical design of the motion simulator consists of the base frame, universal joints,position transducer mounting and the distribution manifold frame. The following subsectionscontain an overview of the design of each of these components.3.5.1 Motion Simulator BaseIn order to support the motion simulator including the twelve universal joints, the six actuators,the platform frame, the seat and the operator, we decided to use a frame attached to the ceilingof the room. We contracted Jim Mandelli of Yolles Partnership Limited to design such aframe with several important specifications. First, the frame must support a maximum load of4000 Newtons at each joint attachment point as well as allowing the load to be directed up to45 degrees from vertical. Second, we wanted the radius from the center of the frame to the jointattachment points to be one meter (See Table 1.1) to minimize the actuator forces. Third, theframe must be as close as possible to the ceiling so that is does not interfere with the actuatorsand joints. Fourth, the center of the frame must lie near the center of the room in order toprovide maximum clearance between the platform and the walls. Finally, the joint attachmentpoints must be compatible with the joint base design and they must be at a 45 degree angle withthe vertical to prevent the joints from exceeding their 90 degree bending limit. Figures 3.33and 3.34 show the final design submitted by Jim Mandelli which meets all our requirements andChapter 3. Design 53exceeds the requested loading capacity by more than 2.5 times. We then contracted ContinentalSteel to manufacture and install the three support frames.3.5.2 Universal JointsBecause the platform has six degrees-of-freedom, each of the six actuators must have five passivedegrees-of-freedom and one active degree-of-freedom. Each hydraulic cylinder has one active(prismatic) and one passive (rotary) degree-of-freedom in its cylindrical joint. The other fourpassive degrees-of-freedom are provided by two joints, one at either end of each cylinder. Weconsidered using ball and socket joints because they have no singularities to avoid, however, theysignificantly restrict the platform's workspace. We also considered locally developed joints whichwould allow adjacent actuator endpoints to intersect. However, these joints would also restrictthe platform's workspace and they do not provide enough room between adjacent actuators forthe valves and length transducers. After looking at the joint designs of several flight simulators,we decided to use universal-type joints. These joints provide a large range of motion and arerelatively easy to manufacture. Their one drawback, however, is that they have a singularitywhich we will avoid while operating the motion simulator.Figure 3.35 shows the design of the motion simulator's joints. Each joint is made up of fourmain parts. The first is the base which bolts to either the platform or base frames and holds thecups of two tapered roller bearings (first degree-of-freedom) which share a common axis. Weuse tapered bearings rather than ball bearings because they withstand radial and longitudinalloads (in one direction) better. The second is the base shaft which rotates on the bearings insidethe base and is held in by a nut and lock washer that thread onto the shaft. At the other end ofthe shaft there is a loop which holds two more bearing cups (second degree-of-freedom) whosecommon axis is perpendicular to the previous one. The third component changes dependingon which end of the cylinder the joint attaches to. On the rod end there is the rod fork whichthreads on to the actuator's piston rod and is held in place by a pin. The rod fork has abearing surface and circlip groove to attach the tube clamp plate (not shown) of the positionChapter 3. Design 54transducer mounting (described in a later section). On the blind end there is a cylinder forkwhich is held at the base of the cylinder by the cylinder's tie rods. The final component is theshort shaft which connects the rod (or cylinder) fork to the base shaft. The short shaft is heldby a shoulder at one end and a nut and lock washer at the other. See Appendix A for detaileddesign drawings of the joint components.3.5.3 Position Transducer MountingIn order for the control system to measure the length of each actuator, and hence determine theplatform's position and orientation, we need to mount a position transducer on each actuator.We chose magneto-sonic transducers because they have been used successfully in many hydraulicapplications, including flight simulators. They are not adversely affected by oil and dust and weobtained surplus units for $500 each (half the typical price). Normally, in hydraulic applications,the piston rod is bored out so that the transducer rod can fit inside. However, the piston rods inour actuators are relatively narrow so we had to mount the transducers along side the cylinders.Figure 3.36 shows our first mounting idea. The transducer body is fixed at the blind end ofthe cylinder. A tube with the transducer magnet on one end slides over the transducer tube andthrough a guide, containing low friction bushings, which is fixed to the rod end of the cylinder.The other end of the tube is clamped to the piston rod so that when the actuator extendsand retracts the magnet follows. Because each actuator must have six degrees-of-freedom:four degrees in the revolute joints at each end and two degrees in the cylindrical rod/cylinderjoint, the piston rod must rotate relative to the cylinder and tube. Therefore, the piston rodis connected to the tube clamp with a bearing. Although this first idea seems reasonableand would probably work satisfactorily, we are concerned that the transducer tube will rattleinside the tube causing unwanted noise and possibly damaging the transducer. We modifiedthe design as shown in Figure 3.37 so that the transducer tube is held firmly at both ends.We also made the tube more rigid by lengthening the tube guide. A prototype of this designwas manufactured and tested on a single cylinder with favourable results. See Appendix B forChapter 3. Design 55detailed design drawings of the transducer mounting components.3.5.4 Distribution Manifold FrameAs mentioned in the hydraulic distribution system design subsection, there is a manifold whichconnects the six actuators via hoses to the pressure, pilot and tank lines of the power unitsubsystem. To keep the hoses as short as possible we will position the manifold close to thecenter of the base of the motion simulator. To accomplish this we designed and manufactureda frame which bolts to the existing beam in the simulator room. Figure 3.38 shows the designof the distribution manifold frame.3.6 Electrical DesignThe motion simulator's electrical system is divided into two subsystems: the safety subsystemand the control subsystem. The safety subsystem includes components which do not affect theperformance of the simulator. These include "home" and isolation valves, "chicken", actuatorlimit, platform limit, filter, fluid temperature and fluid level switches and a supply pressuretransducer (See Figure 3.39). The "home" valves (V1-6) are connected in parallel and areactivated by a momentary push button switch (S17). Operating the switch causes all theactuators to extend simultaneously, thereby, lowering the platform and allowing the operatorto exit. The isolation valves (V7-12) are connected in parallel to a relay switch (S20) and arenormally energized (open) allowing their corresponding proportional valves to function. If thesimulator operator becomes disoriented or the computer operator discovers a malfunction, theycan press their "chicken" switches (S18-19) which will de-energize the relay and the isolationvalves which stops the platform. In addition, to prevent the actuators from fully extendingand bottoming-out, possibly causing damage, and to prevent the platform from exceeding thephysical limits of the simulator room, there are actuator and platform limit switches. Theseswitches are normally closed and are connected in series with the "chicken" switches. If any oneof these switches opens, all the actuators will stop. The platform limit switches are actuallyChapter 3. Design 56plugs which connect to receptacles on the walls, floor and ceiling. The plugs are connected tothe platform with light chains of a predetermined length. If the platform moves too far, the plugpulls out and opens the circuit. The two filter switches (S1-2, one for the main pressure filterand one for the pilot filter), the fluid temperature switch (S3), the fluid level switch (S4) andthe supply pressure transducer are monitored by the computer control system. When the filtersare nearing a full condition their switches close which tells the computer system to warn theoperator to change the filter elements. Similarly, the fluid temperature and level switches closewhen the temperature or level exceed predefined limits. This closure may possibly indicate acooling system failure or a leak. The supply pressure transducer returns a voltage proportionalto the supply pressure to the computer via an analog to digital converter. If the pressure risesabove or falls below predefined limits, possibly indicating a pump failure or leak, then thecomputer can warn the operator and shut down the power unit.The second subsystem of the motion simulator's electrical system are six control subsystems,one per actuator. Each of these consist of three components: a three-stage proportional valve(V13-18), a length transducer and a differential pressure transducer (See Figure 3.40). First,the main-stage spool position of the three-stage proportional valve, and hence the flow into theblind end of the actuator, is controlled by the computer system through a digital to analogconverter. The valve provides the computer system with the actual spool position through ananalog to digital converter which allows the computer to verify whether the valve is respondingto the commands it is sending Second, the length transducer on each actuator provides afeedback signal proportional to its length. The transducer consists of two components: thetransducer itself and the amplifier recirculation circuit. This circuit generates pulses which areconverted to sound waves and sent down a wire inside the transducer tube. Magnets outside thetube constrict the wire making the sound wave return. The time required for the wave to returnis directly proportional to the position of the magnets along the tube. Finally, the differentialpressure transducer returns a voltage proportional to the difference in pressure between thecylinder's blind and rod ends to the computer through an analog to digital converter. TheseChapter 3. Design 57pressures are proportional to the load on the actuator and may be used to improve the controlsystem's response by increasing the damping.'1"*..... Pressure ReliefP T Valve ••Heat .Exchanger11 1.1.■.■—11 MI IIICompensator *11■=101011.,0P Couplingr • 0 • - - -; g!s6 158Chapter 3. Designe•1.• Temp.Switch.„:BreatherReturnFilterLevelIndicator..eT; L. .. • .: .......... _ ............................!PistonPumpTankFigure 3.30: Hydraulic Power Unit Schematic.V VAcctunulato I •AccumulatorDump Valver" -i r'IIIII II 44--0.• II IIExternal Pilot 'X' Pressure '1).• A • •r •---•-Return 'T'IMI• II0011011Distribution ManifoldBall ValveP TFigure 3.31: Distribution Subsystem Schematic.8... - ...............Pilot FilterChapter 3. Design 59Chapter 3. Design 60Cylinder••■••■•■GA•••! ActuatorManifold••PX....• - ••••••Relief Valve3-Way Sandwich Plate"Home"Valve A; GBProportional Valvevvp Figure 3.32: Actuator Subsystem Schematic.ItIIIIIIIItI-41iIIII//t//I .. I .0.... "..-t Existing BeamChapter 3. Design 61I-- ---- .... .....• Are%ow I .... .4........am. . % ■ %■,/ %%/ %/ I// IIIIIII 60 deg/•I••t xtttttI‘v /I //I//I /I ///% /% /... I/•11Y 11i.• 0.76 m1• 2mFigure 3.33: Motion Simulator Base Design—Plan View.Chapter 3. Design 62Ceiling I ; '1.1Figure 3.34: Motion Simulator Base Design—Profile View.Chapter 3. Design 63FrameFigure 3.35: Universal Joint.Chapter 3. Design 641e ; e: :El+ -*I:- i:TubeGuideBracket111,HydraulicCylinderTubeClampe i 1I r11 ,II 11 ::.TubeGuideTubeI II II III I TLengthransducerMagnet1 j1TransducerBracketLengthTransducerBodyFigure 3.36: Initial Transducer Mounting Design.Chapter 3. Design 65TubeClamp i i: +-, r!TubeGuideBracketLaTubeGuideLengthTransducerTubeHydraulicCylinderTransducerBracketTubeLengthTransducerMagnet; a aLengthTransducerBodyFigure 3.37: Final Transducer Mounting Design.14 nun x 25 mm Slotted Hole2 x 2 L-ChannelDistribution Manifold-T11111111Existing Beam9.750375 Clearance Hole0375 x 2 Slotted Hole153630111i11T"--I 1.5 x 3U-ChannelWeldedJoint DistributionManifold-4E-0-8.125i0375 x 2 Slotted Hole11 11_,r ■I.1 1 x 1L-ChannelWelded 3Joint 4 rFigure 3.38: Distribution Manifold Frame.Chapter 3. Design 66+24 V S IS2S3XycomXVME-200Digital I/0BoardS12-x PullChainS14-y PullChainS15+z PullChainS16-z PullChainIsolation Valves V7-12Chapter 3. Design 67SupplyPressureTransducer+24 VS17"Home"Switch+5 V Actuator PlatformLimit LimitSwitches SwitchesS5PressureFilterSwitchS6S7S8T.S9FluidLevelSwitchController Platform+24 V "Chicken "Chicken • • , 2ivSwitch" Switch"I • I.S20TemperatureSwitchPilotFilterSwitchS18-r"Home" Valves V1-6Figure 3.39: Electrical Schematic—Safety System.+24 VVME CageThree Stage Proportional Valve1 VccXycomXVME-545A/D BoardEnableControllerSpool Position r1eThernCommandCommand RefGndXycomXVME-545A/D Board _V13 -18+15 VRecirculationXycom AmplifierXVME-545 VccA/D Board411OutVdd/-15 VC IMagnetMagneto-SonicLength TransducerMI! •■■•■•■•ActuatorXycomXVME-545A/D BoardAmplifier/Signal ConditionerPressureTransducerOut+Out-!■■•=111•0MOOFigure 3.40: Electrical Schematic—Control System.Chapter 3. Design 68Chapter 4Dynamics and ControlChapter Four gives an overview of the dynamics and the control of the simulator. We provide asimplified model of the platform's dynamics as well as the dynamics of the hydraulic actuatorsas they play an important role in the simulator's performance. We then combine these tosimulate the dynamics of the motion simulator. In the final section, we discuss the control ofthe simulator including both joint-space and cartesian-space strategies.4.1 Platform DynamicsBefore we can test and evaluate methods of controlling the platform's position and orientation,velocity and acceleration, we must adequately model its dynamics. Using the principle ofvirtual work, we can relate the actuator forces to the force and torque acting on the platform.The virtual work, Ow, done in translating the platform by a virtual distance, [bx,by,bz]T , androtating the platform by the virtual angle [4511,,b9,4]T isbOw = fT ■51 — fpI T[bT pbdbtkbeb0(4.68) where f is a six-vector of the actuator forces, (51 is a six-vector of virtual actuator displacements,bfp is the total force acting on the center of mass of the platform, brp is the total torque actingabout the center of mass of the platform, Sd is the virtual translational displacement of theplatform's center of mass and [4,50,bcb]T is the virtual rotational displacement of the platform69Chapter 4. Dynamics and Control 70about its center of mass. We can substitute J [Ocl,•50,60,50]T for 51 in (4.68), givingTbw = (JTf —[ bfP 1) bx (4.69)rpThe principle of virtual work says that the work done by external forces (f ; bfp, b rp ■) correspond-ing to any virtual displacements (51; bd,b1P,b0,4) is zero (Ow = 0) [30]. Therefore, we canwritebfpjTf (4.70)b rpIf J is non-singular then we calculate the actuator forces given the force and torque on theplatform usingbfpf T) 1.b TP (4.71)If we neglect the actuator dynamics, then we can easily derive the force and torque on theplatform using Newton's second law, F = ma. Summing the forces on the platform's center ofmass gives6Ebt_mpfik=mpbap (4.72)i=1where bt is the force of actuator i in the base frame, m p is the mass of the platform, g 'A:. 9.8 m/s2is the acceleration due to gravity and k is the base frame's unit vector in the z direction. Theforce delivered by the actuators isbfp =m baP Pxm baP Pymp (bapz g)(4.73) The angular momentum of the platform with respect to the base frame is, by definition,bi.P = biP b =0 bilpPIP bitpTb GOP P (4.74)Chapter 4. Dynamics and Control 71where PIp is the platform's inertia matrix expressed with respect to the platform frame. If wecompute the moments of inertia along the principle axes xp , yp , zp then PIp takes the formPipxx 0[ 0PIP = 0 PIPYY 00 0 PIPzzTaking the derivative of (4.74) gives the torque on the platform asbr = b .!P baP + X ( b )P PP(4.75)(4.76)where we assume that the inertia of the platform does not change with time in the platformframe. Rewriting (4.76) in terms of the base frame coordinates and combining with (4.73) gives bf ..,„ b. + mp[""P c`P , 0 0 g [ p I = (4.77)br P bipbap + bull, x (bip bwp)Using (4.71), we can write a expression for the actuator forces given the platform's accelerationasbf = (JT)-1 a_ (4 .7 8)bapwhereD =MP 0 00 00 0 MP00(4.79) bip 00(4.80)mpgb,, b,," (bT '""PandE =(See [25] for C source code)Chapter 4. Dynamics and Control 724.2 Hydraulic DynamicsTo model the overall dynamics of the platform and devise a satisfactory control scheme, wemust include the dynamics of the actuator hydraulics as they play a large part in determiningthe platform's performance including its velocity, acceleration and bandwidth. Unfortunately,hydraulic systems are difficult to model accurately for several reasons. First, fluid systemsare inherently non-linear so we cannot analyze them over their entire operating range withstandard linear techniques, although they can be linearized around a given operating point.Second, some of the system parameters, such as the damping and compliance of the load, arehard to measure for many actuators. Third, the effects of viscous and coulomb friction betweenthe cylinder and the piston are highly non-linear and are therefore difficult to estimate. Fourth,any air trapped in the hydraulic fluid can greatly reduce its bulk modulus, thereby decreasingthe actuators stiffness and performance. Finally, we assume in hydraulic analysis that we haveturbulent flow (versus laminar flow) at any orifice in the system. However, this assumption isonly valid for sharp edged orifices with adequately large flows. Over time, these orifice edgesbecome rounded and some laminar flow will occur which is very difficult to model.In spite of all these difficulties we can still model the hydraulic actuators for somewhatideal circumstances. To model the actuators we use a standard mathematical approach [27].Figure 4.41 shows a typical three-way valve/cylinder connection. There are three equationswhich describe the valve, cylinder and load dynamics respectively. First, for the valve, assumingthat there is no leakage, the flow Q c from the valve to the blind end of the cylinder isQc= Qi— Q2 (4.81)where Q i is the flow from the pressure line to the cylinder and Q2 is the flow from the cylinderto the tank. Using the orifice equation [27] we can write expressions for Q i and Q2 asQ1={Cdw (U x) (P„ — Pa ), x> —U0, x < —U(4.82)PtChapter 4. Dynamics and Control 73Figure 4.41: Definition of Three-way Connection Parameters.andQ2 = CdW (U X) (Pc — Pi ), x < U (4.83)0, x > Uwhere Cd = ir 1-74-1 2 0.611 is the discharge coefficient, w is the port width of the valve, U is thevalve's underlap, x is the spool position of the valve relative to center, p is the density of theChapter 4. Dynamics and Control 74fluid, P. is the supply pressure, Pc is the controlled pressure at the blind end of the cylinderand Pt 0 is the tank (or return line) pressure. Second, for the cylinder, the flow Qc , is theresult of two processes: movement of the piston (change in volume) and compression of thefluid. These two processes are described by the continuity equation [27] asQe=1./+-1r Pc0 (4.84)where V is the total volume contained between the piston and the blind end of the cylinderand fl is the bulk modulus of the fluid. Finally, applying Newton's second law to the cylinderand the load givesPA—P.a=Mi+Bi+Kl+f (4.85)where A is the area of the piston, a is the annulus area between the piston rod and the cylinderwall, M is the mass of the load, B is the load's viscous damping coefficient, K is the springconstant of the load and f is an external force. Equations (4.81), (4.82), (4.83), (4.84) and(4.85) describe the dynamics of the valve, the cylinder and the load.For the purposes of numerical integration, (4.81), (4.82), (4.83), (4.84) and (4.85) are solvedfor 1 giving the following= rvA (cdw e_h pc)(x, - - Bl — Ki — 1 (4.86)whereV A(1 — L), (4.87)V = Ai, (4.88)Pc Mi+Bil-Kl+f+Ps a= (4.89)A(U x) — > Uh (x, Pc ) (U x) P„ — Pc — (U — x)— Pt, —U <x <U (4.90)— (U — A/Pc — Pt, x < —Uand L is the stroke length of the cylinder.f = (J - 1 (D b1 aP 1+ E .aP(4.92)Chapter 4. Dynamics and Control 754.3 Combined DynamicsWe have looked at the actuator and platform dynamics separately. Now we will combine them inorder to derive and simulate the dynamics of the motion simulator as a whole. To simplify thisderivation we will not include the dynamic effects corresponding to the mass of the actuatorsthemselves. This simplification is valid if the platform is larger than the actuators and the massof each actuator is concentrated near the fixed end so that the actuator's moment of inertia isrelatively small. We meet these two criteria with the design of our motion simulator becausethe mass of the platform is more than six times the mass of an actuator and the hydraulicvalves and manifolds are mounted at the fixed ends of the actuators.The hydraulic dynamics of each of the platform's six actuators is described by (4.86). Nowwe can combine them into a single vector equation to giveV (Cdw4-h (x i , Pa ) — Vi )•••ma 1 = •••[- Bi - xi - (4.91)(Cdwe,h (x6, Pc6) - T ./6)where M = ma and ma is the combined mass of the piston and piston rod of each actuator, 1is a six-vector of the actuator lengths and f is a six-vector of the actuator forces. Recall thatthe actuator forces can be expressed in terms of the platform's acceleration asTaking the derivative of (4.92) gives= (JT) iT O./ (D [baP (7/ -1 DbaPaPbaDbapbap)+ E (4.93)0 0 0D D (4.94)S (bcop) 0 ST (bcop)where01D =0Chapter 4. Dynamics and Control 76and E_000(4.95) ibT ) x bT bk "12 "'"P ^ "12 "`'P "12From the (2.27) and (2.29) we know that the platform's velocity and acceleration can be ex-pressed in terms of the actuator velocities and accelerations. Equation (4.93), however, containsterms in bap• and bap• so we must take the derivative of (2.29) giving, after some simplification,•= J-1 1— J P — 2 P[ bb PP ] (••• •• { 1V P b aPi J [ ba 1) •Substituting (4.96) into (4.93) and the result into (4.91) gives(4.96)= (ma i + (JT) D J- 1 )131 — Ki+ (JT)-1 iT (jT) D a/2 + Eb aPI V (Cdw 1F, h (x i, Pei) — Vi)(cdwifh(x.,Pc6)—01 -1 baP (j[byp 1 + 2ibabapbE"Pwhere I is a six by six identity matrix. Note that all the terms on the right side of (4.97) canbe expressed in terms of the actuator lengths, velocities and accelerations so it expresses thecombined dynamics of the platform and the actuator hydraulics as a set of six coupled, thirdorder differential equations where the inputs are the six valve spool positions x1 x 6 .4.4 ControlFor the motion simulator to follow trajectories and respond to operator commands, it needsa feedback control system. This system takes a desired platform position and orientationChapter 4. Dynamics and Control 77and compares it to the current platform position and orientation and drives the hydraulicactuators. Typically, there are two common control strategies which achieve this goal: joint-space and cartesian-space (see Figures 4.42 and 4.43). Using the joint-space strategy, eachactuator is driven independently, making it computationally very fast because the feedbackoccurs at the joint variable (actuator length) level. This strategy does, however, ignore thecoupling between the actuators and the platform. On the other hand, the cartesian-spacestrategy includes coupling between the actuators, however, it requires more computational timebecause the feedback (platform position and orientation) must be computed from the actuatorlengths (forward kinematics). In the block diagrams (Figures 4.42 and 4.43), we see that bothcontrol strategies require compensators, one for each actuator, which transform the differencebetween the actual and desired actuator lengths, Al, to the six valve spool position inputs,x. Determining the type of controller and it's performance parameters is easily accomplishedInverse MotionCompensatorKinematics --IP. SimulatorDesired Id x DynamicsPlatformTrajectoryFigure 4.42: Joint-Space Control Block Diagram.using classic control theory which is based on linear, time-invariant (LTI) systems. We can seefrom (4.90) and (4.97) that the platform's hydraulics and dynamics form a complex, non-linearsystem. Therefore, in order to use classic control theory we must linearize the system. We dothis by performing a Taylor series expansion of (4.81) about an operating point as describedbelow.From (4.81), (4.82) and (4.83) we see that Q, is a non-linear function of the valve spoolposition x and the pressure at the cylinder's blind end Pc . As mentioned earlier, we linearizeChapter 4. Dynamics and Control 78 J _ol Compensator MotionSimulatorDynamics --III.I DesiredPlatformTrajectory ForwardKinematics is ActualPlatformTrajectory 1 Figure 4.43: Cartesian-Space Control Block Diagram.Q, about a particular operating point. Q c is a differentiable function of x and Pc :Qc=Qc(x, Pc) • (4.98)Thus, we perform a Taylor series expansion about the operating point Q c = Q co givingQc=Qco+-E8 1 Ax + A-'9 1 APc + • • • (4.99)OX Qa, OPc (20,Note that at x = ±U (4.98) is not differentiable so (4.99) does not exist. If we confine ourselvesto a small region around the operating point then we can neglect higher order terms so AC2c = KgAx — KcAPc (4.100)where Kg = * is the flow gain, Kc = —V—,: is the flow-pressure coefficient and APc =(MAt+ BAI + KAI + Af) /A. Taking the derivative of (4.81) with respect to x and Pc wewrite expressions for Kg and Kc asCdwO (Ps — Pc), x> UCdwei; (VP, — Pc + A/Pc — Pt), —U < x < U (4.101)CdwO (Pc — Pt), x < —UChapter 4. Dynamics and Control 79and(U x > UG2 vo,[(u+. ) + (u_x ) 1, _u <x<u (4.102)K,C2w (U — x) < —UWe combine (4.100), (4.84) and (4.85) as before with one additional modification. As part ofthe linearization we write V = Vo + Ail where Vo is the initial volume between the piston andthe blind end of the cylinder and AA/ is the change in volume such that IAA/1 < Vo. Now wecan write the differential equation relating I and x asKg r Vo (V0B (VoK K,B K,K AA x Al f — A2 — i3A2 + i3A2 + A2 • + -FAT + --A-2 + + —A3-6 (4 .103)where ix, APc and it are replaced by x, 1 and P, for convenience in notation. By taking theLaplace transform of (4.103) we get the transfer functionxix(s) — (fAc-1 Ti12.8) F(s)L(s) = (4.104)u_A s3 atiwh s2 (5.1 + 1) swhere wh = 27rfh = A lrirm is the hydraulic undamped natural frequency and h = +is the hydraulic damping ratio. Because the frequency and damping depend on the2 A NVoMvolume of fluid contained in the actuator and hence on the length of the actuator, it is unlikelythat a fixed gain controller will provide acceptable performance. To compensate for changesin the frequency and damping in the actuators, we adjust the gains of the controller while theplatform is moving.Equation (4.104) is made up of two terms. The first is the transfer function from the valvespool position X(s) to the actuator length L(s). The second is the transfer function fromthe reaction force F(s) of the platform on the actuator to the actuator length. This term istreated as a disturbance input in a simple compensator, however, it's effect on the length maybe lessened by using a more advanced feedforward compensator design [31]. At this time, weare using a simple proportional gain, joint-space controller to simulate the motion simulator'sChapter 4. Dynamics and Control 80combined dynamics (Equation 4.97). The compensator's transfer function isX(sGc(s)= E(s ) = Kp (4.105)where E(s) is the Laplace transform of the error between the desired and the actual actuatorlengths and Kp is the proportional gain. We choose a value for K p which prevents the systemfrom becoming unstable while meeting a desired steady-state error. If we assume the load onthe actuator is a simple, rigid mass (K = 0), then the plant transfer function from the valveinput to the actuator length isL(s) _sGp (s) (4.106)A =X(S) .83 101 .92 + (V1 4. 1) s44 -I- C4,Figures 4.44 and 4.45 show the frequency response of G p (s) for three different actuator lengths:70, 100 and 130 inches. Adding a proportional gain of 0.02 to 0.03 will lower the magnitudecurve and make the system stable. The closed-loop system characteristic equation isxpxq1 + Gc(s)Gp(s) = 1+ 2_83 gas2 (V +1) s A = 0 (4.107)Wh whOr1 3 gh 2 (K,B Kplfq = 0.‘7 8 + + ± ±h wh A(4.108)By applying the Routh-Hurwitz stability criterion [31], we find that the proportional gain mustsatisfyghwhA (K,B +1) > Kp > 0 (4.109)Kg A2so that the closed-loop system remains stable. If the system is stable then the steady-statesystem error is found using the final value theorem of the Laplace transform, namely,e„ = lim sE(s). (4.110)For the closed-loop systemsR(s) = lim8.0 1 + Gc (s)Gp (s)10410310210 110010-11 0-210-31 0- 1 103100 10 1 102Chapter 4. Dynamics and Control 81Magnitude Response(rad/s)Figure 4.44: Open - loop Magnitude Response.Chapter 4. Dynamics and Control 821 021 0- 1 00 101(rad/s)Figure 4.45: Open-loop Phase Response.103Phase Response-80-100-120-140-220-240-260-280Chapter 4. Dynamics and Control 83As the system is type 1, the steady-state error for a ramp input R(s) = sis finite and non-zero.Substituting for R(s), Gc (s) and Gp (s) into (4.111) and taking the limit as s goes to zero givesSolving (4.112) for Kp givesKcji_ A2 ess KP K1 •A(4.112)KP q •— (4.113)AEquations (4.109) and (4.113) provide a method of choosing the compensator's proportionalgain. Using this method, parameters in Table 4.7 and the joint-space control strategy, we ransome closed-looped simulations of the motion simulator's combined dynamics to learn moreabout the dynamic response. Figures 4.46 to 4.68 show the results of four of these simulationswhere in each simulation there are nineteen plots (six figures) showing the actuator and platformpositions (lengths), velocities and accelerations as well as the actuator forces, pressures andvalve spool positions. In the first two simulations (Figures 4.46 to 4.49 and Figures 4.52Table 4.7: Control Simulation Parameters.Parameter Value Definition13 900 MPa Bulk Modulus of the FluidA (1.5)2r/4 in2 Piston Areaa A - (1.0)2r/4 in2 Annulus AreaC d 0.611 Discharge Coefficientw 5.7 mm Port Width of the Valvep 858.2 kg/m3 Density of the FluidL 54 in Stroke Length of the CylindermP 250 kg Mass of the PlatformB 1 5000 N s/m Viscous Damping of the LoadK 0 N s 2 /m Spring Constant of the Load138 2000 PSI Supply PressurePt 0 PSI Tank PressureU 55.4 x 10 -6 m Underlap of the Valveto 4.55), we oscillated the platform along the x axis and about the z axis with an amplitude'The viscous damping, was determined experimentally to give a typical hydraulic damping ratio Sh in therange 0.1 to 0.3 [27].Chapter 4. Dynamics and Control 84of 0.15 meters and 10° at 1 Hertz respectively. In addition, Figures 4.51 and 4.57 show theclosed-loop magnitude response of the platform for oscillations in the x direction and about thez axis. From these figures we see that the platform has a 2.3 Hz bandwidth along x and a 2 Hzbandwidth about z which is higher than that of the Kawasaki motion base. In the last twosimulations (Figures 4.58 to 4.61 and Figures 4.64 to 4.67) we applied a 0.1 meter step input tothe platform's xp coordinate and a 10° step input to the platform's Op coordinate. Figures 4.63and 4.69 show a more detailed view of the motion simulator's step response and indicate that theplatform has a rise time of 0.15 seconds which is 0.04 seconds less than the Kawasaki motionbase. Also, the oscillation present in the x step response may indicate a need to increase thedamping using pressure feedback [27]. The preliminary results of the simulations indicate thatthe motion simulator and hydraulics are capable of producing the desired performance as shownin Table 1.2. However, the "rough" response shown in the simulations indicate that a simpleproportional gain compensator is not adequate for controlling the platform's actuators. This"rough" response may be due in part because the actuators are not completely synchronized.As each actuator responds independently, some of them may reach their desired position soonerthan others, causing the platform to wander from the desired trajectory. Because these resultsare preliminary, further investigation of the control system design is required.1 32t (s)1 2 3i (s)Chapter 4. Dynamics and Control 85A ator Len Actuator Le I• 1 1•I II. ••- = 1 .=2 = 3-0.20.2 1.\•Figure 4.46: Proportional Control Simulation Results for Oscillation in the x direction.2t (s)Actuator Velocities.=6 .=5d 4-= +=6d1 2 3t (s)Actuator Velocities2.152.12.152.1- = 4= 4d, A,t,s•AActuator Accelerations Actuator Accelerations1 2 3t (s)NGO5: ▪ •-▪ •Actuator Forces Actuator Forces= 2 = 32t (s)12000 -A$1—=52t (s)z-2000 --=4t:t4. 1 V41;•'II t-=4 --=5 ..=6Chapter 4. Dynamics and Control 86Figure 4.47: Proportional Control Simulation Results for Oscillation in the x direction.10-4 Valve S ool Positions x10-4 Valve Spool Positionst (s)1 30 It • •twir •Ott ,11•1500cf)A. 10005002t (s)Actuator Pressures1500a. 1000-c5002t (s)Actuator Pressures•• •it;ItII 0,i it0 .4 1- = 4 —=5 = 61 2 3$ : • 4, . „,; 1 s\ , I:=1 —=2 ..= 31 2 3t (s)Chapter 4. Dynamics and Control 87Figure 4.48: Proportional Control Simulation Results for Oscillation in the x direction.= Xp = yp .; = Zp•1= Op 'Q..0- -=/ II=1 2t (s)3b0<31 2t (s)=-1 - X p1 2 3t (s)Velocity of Platform= Zp= ypAn ar Veloci of PlatformChapter 4. Dynamics and Control 88Position of Platform Orientation of PlatformFigure 4.49: Proportional Control Simulation Results for Oscillation in the x direction.Angular Acceleration of Platformtt ,f1:Ni:9= p_ = = OpAcceleration of Platform I t = 2. 1) = Yp = Zp 10-10500-50Chapter 4. Dynamics and Control 891 2 3 1 2 3t (s) t (s)Figure 4.50: Proportional Control Simulation Results for Oscillation in the x direction.Chapter 4. Dynamics and Control 90Frequency Response Along the x Axisf (Hz)Figure 4.51: Frequency Response for Oscillation in the x direction.2.14--- 2.12..z.:2.1r 1 v t i1 I ■ 8... = 5 . .8 .. = 6,. . 1 2 3t (s)2.14TLI 2.122.1Actuato Len hs A ator Le2t (s)Actuator Velocities31 2t (s)0.1-0.2Chapter 4. Dynamics and Control 91Figure 4.52: Proportional Control Simulation Results for Oscillation about the z axis.t (s)Actuator Accelerations31 2t (s)Actuator Forces—=5 ..=631 2t (s)Actuator ForcesChapter 4. Dynamics and Control 92Figure 4.53: Proportional Control Simulation Results for Oscillation about the z axis.x10-4 Valve Spool Positions■ rt i •i liI I :'I I I 1II 'I 1SIII /I I I #I I 1 I 1 I1,1 4 5 i 0I I I I1 I I II IXI« = 5_ -=43I=1 —=2 21 2t (s)Actuator Pressures•111 tt1.II IS01 I14 .-x104 Valve Spool PositionsE•«1200800 -= 1 --= 2 ..=3 _1 2 3t (s)21 0-2-41 2 3t (s)Actuator Pressures1200c.)1000= ..=6 _2 3t (s)8001Chapter 4. Dynamics and Control 93Figure 4.54: Proportional Control Simulation Results for Oscillation about the z axis.Orientation of Platform- - = =. opPosition of Platform-1-2 = XP = yp zp 31 2t (s)0E-5x10-3 Velocity of Platform- = XP = yp = ZpChapter 4. Dynamics and Control 941 2 3 1 2 3t (s) t (s)Figure 4.55: Proportional Control Simulation Results for Oscillation about the z axis.3 2i(s)= XP -1000= Zp= lipAcceleration of Platform An ar Acceleration of Platform10000CS'I-0.5Chapter 4. Dynamics and Control 95Figure 4.56: Proportional Control Simulation Results for Oscillation about the z axis.Chapter 4. Dynamics and Control 96Frequency Response About the z Axis11100.5 1 1.5 2 2.5 3f (Hz)Figure 4.57: Frequency Response for Oscillation about the z axis.1 2 3t (s)1 2t (s)32t (s)Actuator Velocities2t (s)Actuator Velocities0.200.25 A-0.2 -0.21 --= 2 ..= 3- =Actuator Le2.162.142.122.1- = 4 = 5 ..= 6 -Chapter 4. Dynamics and Control 97Figure 4.58: Proportional Control Simulation Results for Step Input in the x direction.2t (s)=1 --=2 .. = 3-3Chapter 4. Dynamics and Control 98 Actuator Accelerations .•••-■N -=1 1 —=2 ..=3 -=4 —=5 ..=6 1 2 3t (s)Actuator Forces1 2 3t (s)Actuator Forces-=4 —=5 ..=6- 2 3t (s)Actuator AccelerationsFigure 4.59: Proportional Control Simulation Results for Step Input in the x direction.1 2 3t (s)Actuator Pressures - = 1 —= 2 ..=31-10E1E1500ti'm 10000. 50001 2 3t (s)150010()()500=1 =2 .. = 301 2 3t (s) ' I - = 4 --=5 ..= 6 Chapter 4. Dynamics and Control 99x10-3 Valve Spool Positions x10-3 Valve Spool Positions- = 4 = 5 = 61 2 3t (s)Actuator PressuresFigure 4.60: Proportional Control Simulation Results for Step Input in the x direction. _yp =ZpE1 2 3t (s)Velocity of Platform$0.60.4E= Xp •••• = = p1 2 3t (s)0.20Chapter 4. Dynamics and Control 100Position of Platform Orientation of Platform7,6 0.04-ow• 0.02▪ 0- =bp1 2 3t (s)An ar Veloci of PlatformFigure 4.61: Proportional Control Simulation Results for Step Input in the x direction.-10 - - = xpAcceleration of Platform An ar Acceleration of Platform1••■ = Vp .. = Zp —1 2 3 1 2t (s) t (s)Chapter 4. Dynamics and Control 101Figure 4.62: Proportional Control Simulation Results for Step Input in the x direction..0.5Chapter 4. Dynamics and Control 102X Axis Step Response0.120. 10.080.021 0.06Q.fi0.04Figure 4.63: Proportional Control Simulation Results for Step Input in the x direction.2.142.122.1Actuator Velocities Actuator Velocities32t (s)1 2 3t (s)1Actuator Len h2 3 1 2t (s) t (s)2.142.122.10.2t4 0-0.2-0.20.2=1 = 2 .. = 3 - = 4 = 5 ..= 6Chapter 4. Dynamics and Control 103Figure 4.64: Proportional Control Simulation Results for Step Input about the z axis.= 5Actuator Accelerations Actuator Accelerations10tV-10—.2 ..=3Chapter 4. Dynamics and Control 10410-101 2 3 1 2 3t (s) t (s)Actuator Forces Actuator Forcesz-2000=1 --=2 .. = 31 2 3t (s) — = 5 ..=61 2 3t (s),44-2000Figure 4.65: Proportional Control Simulation Results for Step Input about the z axis.Chapter 4. Dynamics and Control 105 x10-3 Valve Spool Positions x10 -3 Valve Spool Positions 0.51 04'-0.5-1 0.5 ,1 -- = 2 .. = 3 - = 4 — = 5 .. = 6 I • . 1 2 3t (s) 2 3t (s) Actuator PressuresI Actuator Pressures1500..--,.--,' 1000a,500 1500cn 1000A.C4 5000 { 0 = 1 -- = 2 .. = 31 2 31t (s) - = 4 --=5 ..=6 1 2 3t (s)Figure 4.66: Proportional Control Simulation Results for Step Input about the z axis.■=Xp ..••= ..=Xp =Op = Op =3bO-0Q. 503-2-3x10-3 Velocity of Platform An ar Veloci of Platform2t (s)100too 50-= yp = Zp3-5Chapter 4. Dynamics and Control 106Position of Platform Orientation of PlatformFigure 4.67: Proportional Control Simulation Results for Step Input about the z axis.Acceleration of Platform An ar Acceleration of Platform3 2t (s)1 2t (s)0.5140002000tq-2000=xp ••■=Yp .. =zpChapter 4. Dynamics and Control 107Figure 4.68: Proportional Control Simulation Results for Step Input about the z axis.Chapter 4. Dynamics and Control 108Z Rotation Step Response109876lir-rz 54...43210.5 1 1.5 2 25t (s)Figure 4.69: Proportional Control Simulation Results for Step Input about the z axis.Chapter 5ConclusionsIn this thesis we have presented the design of an inverted six degrees-of-freedom, hydraulic, oneperson motion simulator capable of providing 9.8 m/s 2 , 400°/s 2 accelerations and 1 m/s, 30°/sspeeds to a 250 kg payload with 1 m, 45° displacements from a nominal center. This simulatorallows us to perform human factors and teleoperation research to improve the human interfaceto heavy equipment used in the forest industry.We derived the motion simulator's inverse kinematics and jacobian and used them to deter-mine the platform's forward kinematics and controllable workspace. Using Newton's methodand the jacobian, we presented an iterative method to solve the platform's forward kinemat-ics. We also plotted the ratios of the singular values of the jacobian to determine where theplatform's position and orientation becomes singular. With this information, we will be ableto design a computer control system which avoids the motion simulator's singularities, therebymaintaining control of the platform.The inverted design of our motion simulator has several advantages over those of traditionalflight simulators. First, we were able to use narrower hydraulic actuators which require lessfluid, making the hydraulic system less expensive. Second, the operator may enter and exiteasily without any steps, ramps or ladders because the platform can be lowered to the floor.Finally, in case of system failure, the platform lowers to a level attitude allowing the operatorto dismount safely. In order to do this we used isolation and "home" valves in the hydraulicsystem as well as platform and actuator limit switches in the electrical system. These switchesdeactivate the isolation valves if the platform or the actuators move too far. Activating the"home" valves lowers the platform to the floor allowing the operator to exit safely.109Chapter 5. Conclusions 110Using the results of inverse dynamic simulations, we determined the dimensions of themotion simulator as well as the type and size of the hydraulic cylinders and valves. We foundthat a 0.5 meter platform radius has enough room for an operator, hand controls and a chair.We decided on a base radius of 1.0 meter to prevent the actuators from colliding with the wallsand to minimize the forces needed in translational motion. We chose a nominal platform heightof 2.5 meters to accommodate the operator's legs during a simulation. As well as the platformitself, we also designed actuators using 1.5 inch bore, 54 inch stroke cylinders and Rexroththree-stage proportional valves. The force-velocity characteristics of this valve and cylindercombination indicate that the actuators will provide the maximum desired forces (±4000 N)over a -1.3 to 1.1 meter per second velocity range. The three-stage valves feature near linearresponse, large bandwidth and higher flow capacity than more expensive servo valves.We also presented a derivation of the motion simulator's combined dynamics and includedthe results of several dosed-loop, proportional gain simulations using a joint-space controlstrategy. The preliminary results indicated that the platform has a bandwidth of 2 Hertzand a step response time of 0.15 seconds. Further investigation is needed to design a moresatisfactory control system and improve the "smoothness" of the platform's motion.5.1 ContributorsTo accomplish a project of this magnitude requires contributions from many people and orga-nizations. One person cannot possibly have the knowledge or expertise in every area required,therefore, we would like to acknowledge and thank the following people for their fine work:1. Al Mackenzie for his assistance in every phase of this project;2. Captain Wood and Canadian Airlines for giving us a tour of their flight simulator facilityand a ride in their DC-10 simulator;3. Daniel Ben-Dov for designing the motion simulator's hydraulic system;Chapter 5. Conclusions 1114. Jon Finlay and Basic Hydraulics Limited for providing and installing the hydraulic systemcomponents;5. Tim Salcudean for designing the motion simulator's universal joints;6. Dave Fletcher and the Electrical Engineering Machine Shop for manufacturing the uni-versal joints, length transducer mounts and distribution manifold frame;7. David Grigg and UBC's Plant Operations for:(a) designing the power unit frame;(b) designing and installing the electrical system for the power unit; and(c) designing and installing the cooling system for the power unit;8. Jim Mandelli and Yolles Partnership Limited, Consulting Structural Engineers, for de-signing the motion simulator's base frame;9. John Calderella and Continental Steel Limited for manufacturing and installing the baseand power unit frames;10. Ben Xiao for wiring the electrical system;11. Pardeep Sangha for designing and coding a graphical representation of the motion simu-lator using HOOPS 1 ;12. Simon Bachmann for designing the platform frame; and13. Alison Taylor for designing and coding the motion simulator's control software.5.2 Suggestions for Further WorkSome suggestions for further work in order to complete this project include the following:1. Finish manufacturing the universal joints;1 HOOPS is a graphics software library and a trademark of Ithaca Software.Chapter 5. Conclusions 1122. Manufacture the platform frame and seat;3. Assemble the platform frame, universal joints and actuators;4. Finish assembling the hydraulic system, including open-loop tests;5. Assemble and test the safety systems;6. Complete design and implementation of the computer control system and perform closed-loop tests;7. Incorporate operator hand controls with the platform frame; and8. Program excavator motion simulation.Bibliography[1] Mannesmann-Rexroth and Hydraudyne Systems and Engineering B.V., Kruisbroeksestraatla, P.O. Box 32, 5280 AA Boxtel, The Netherlands. The Refined Precision in Motion.Company Brochure.[2] Kawasaki Heavy Industries, Limited Precision Machinery Division, World Trade CenterBuilding,. 4-1 Hamamatsu-cho 2-chome, Minato-ku, Tokyo, 105 Japan. Six-Degree-of-Freedom Motion Base, 1991.[3] D. Stewart. A platform with six degrees of freedom. Proceedings of the Institution ofMechanical Engineers, 180(15):371-386, 1966.[4] V. E. Gough and S. G. Whitehall. Universal tyre test machine. In Proceedings, NinthInternational Technical Congress FISITA, page 117, May 1962. Institution of MechanicalEngineers.[5] K.H. Hunt. Structural kinematics of in-parallel-actuated robot arms. Journal of Mecha-nisms, Transmissions and Automation in Design, 105:705-712, 1983.[6] C.C. Nguyen, S.S. Antrazi, Z-L. Zhou, and C.E. Campbell, Jr. Experimental study ofmotion control and trajectory planning for a Stewart platform robot manipulator. InProceedings of the 1991 IEEE International Conference on Robotics and Automation, pages1873-1878, 1991.[7] Kevin Cleary and Tatsuo Arai. A prototype parallel manipulator: Kinematics, construc-tion, software, workspace results, and singularity analysis. In Proceedings of the 1991 IEEEInternational Conference on Robotics and Automation, pages 566-571, 1991.[8] E.F. Fichter. Kinematics of a parallel connection manipulator. In ASME Design Engi-neering Technical Conference, 1984. Paper Number 84-DET-45.[9] E.F. Fichter. A Stewart platform based manipulator: General theory and practical con-struction. International Journal of Robotics Research, 5(2):157-182, 1986.[10] M.G. Mohamed and J. Duffy. A direct determination of the instantaneous kinematics offully parallel robot manipulators. Transactions of the ASME, 107:226-229, 1985.[11] D.C.H. Yang and T.W. Lee. Feasibility study of a platform type of robotic manipulatorsfrom a kinematic viewpoint. Journal of Mechanisms, Transmissions and Automation inDesign, 106:191-198, 1984.[12] W.Q.D. Do and D.C.H. Yang. Inverse dynamic analysis and simulation of a platformtype of robot. In ASME Design Engineering Technical Conference, 1986. Paper Number86-DET-94.113Bibliography 114[13] W.Q.D. Do and D.C.H. Yang. Inverse dynamic analysis and simulation of a platform typeof robot. Journal of Robotic Systems, 5(3):209-207,1988.[14] Prabjot Nanua, Kenneth J. Waldron, and Vasudeva Murthy. Direct kinematic solution ofa Stewart platform. IEEE Transactions on Robotics and Automation, 6(4):438-444, 1990.[15] M. Griffis and J. Duffy. A forward displacement analysis of a class of Stewart platforms.Journal of Robotic Systems, 6(6):703-720,1989.[16] Zheng Geng, Leonard S. Haynes, and Robert L. Carroll. Direct forward kinematic solutionfor general Stewart platforms. ASME Press Series Robotics and Manufacturing: RecentTrends in Research, Education, and Applications, 3:11-16, 1990.[17] Carlo Innocenti and Vincenzo Parenti-Castelli. Direct position analysis of the Stewartplatform mechanism. Journal of Mechanisms and Machine Theory, 25(6):611-621, 1990.[18] J-P. Merlet. Assembly modes and direct kinematics of parallel manipulators. ASME PressSeries Robotics and Manufacturing: Recent Trends in Research, Education and Applica-tions, 3:43-48, 1990.[19] J.E. Dieudonne et al. An actuator extension transformation for a motion simulator andan inverse transformation applying Newton-Raphson's method. Technical Report D-7067,NASA, 1972.[20] W.P. Koevermans and C.J. Jansen. Design and performance of the four-degrees-of-freedommotion system of the NLR Research Flight Simulator. In Proceedings of the Flight Simu-lation/Guidance Systems Simulation, AG A RD Symposium, The Hague, 1975.[21] Yutaka Koizumi, Masao Ohashi, Tóru Yoshinari, Hiroshi Muramoto, and Tomoyuki Taka-hashi. Development of six-degree-of-freedom motion base. Technical report, KagoshimaUniversity, Faculty of Engineering, Department of Mechanical Engineering, 1991.[22] J.R. Duncan and E.L. Wegscheid. Development of a human factors research laboratoryfor off-road vehicle operator workstation design. In Proceedings of the Human FactorsSociety-26th Annual Meeting, pages 896-900,1982.[23] Lloyd D. Reid and Meyer A. Nahon. Response of airline pilots to variations in flightsimulator motion algorithms. Journal of Aircraft, 25(7):639-646,1988.[24] Clifford T. Morgan, editor. Human Engineering Guide to Equipment Design. McGraw-Hill, New York, NewYork, 1963.[25] P. A. Drexel. A Six Degrees-of-Freedom, Hydraulic, One Person Motion Simulator UsersManual. Department of Electrical Engineering, The University of British Columbia. InProgress.[26] William H. Press, Saul A. Teukolsky, Brian P. Flannery, and William T. Vetterling. Nu-merical Recipes in C: The Art of Scientific Computing. Cambridge University Press, 1988.Bibliography 115[27] Herbert E. Merritt. Hydraulic Control Systems. Wiley and Sons, New York, New York,1967.[28] Taco J. Viersma. Analysis, Synthesis, and Design of Hydraulic Servo Systems andPipelines. Elsevier Publishing Company, Amsterdam, New York, 1980.[29] Joseph E. Shigley. Mechanical Engineering Design. McGraw-Hill, Tokyo, Japan, 1963.[30] Mark W. Spong and M. Vidyasagar. Robot Dynamics and Control. John Wiley and Sons,New York, New York, 1989.[31] Charles L. Phillips and Royce D. Harbor. Feedback Control Systems. Prentice-Hall, En-glewood Cliffs, New Jersey, 1988.I II II II II Ii. I L.I II 1IIIIIIIIIIIIIIIIIItr i 11111111111I-1Appendix AJoint ComponentsA.1 Baseclo 5.000 4.00 - 4 Holes 1/2-201 I1.255.2701111111I .I I i II . II I I I . III I I J . II I 1 III I(1"----IIIIIIIIIIIIIIIIiII Ar.,.../-I 11.0340.156 +0.002, -00.465 I I L I I I I 'v.'s. 0.1030 2.500 +0.003, -0.0020 2.653 +0.005, -00 2.781 +-0.0060 3.50116A.2 Base Shaftp.188 +0.016, -04111-"....-111%.1 0.960-32+-0.0051 r 0,062 4' 0.915 +-0.005I0.621i0. 1■■•11..... 25 +0.016, -00.82 4) 1.000+0.0015,-0.001 t-II.t1tt4) 1.000+0, -0.0051a0.564) 2.382+-0.005VR 0.030 max0.82i•-•1 . i•-- $1.625-PI.4.400141 1.000+0.0015,-0.0013.000.146 0.0868.271.75Appendix A. Joint Components 117Appendix A. Joint Components 118A.3 Rod Fork2.7501.875 +0.020, -0• •5.181 .251 0 1300+°'1,_ -01i 10.25 RI 1 • 1- 0 00 . I • -1 4125I0.063 1 ! 1+0.001,-0110.861+0.0010.310 I -01+0, I/...1-0.0010 1300 +0, -0.00241) 1378 +0, -0.0012.501192.50Appendix A. Joint ComponentsA.4 Cylinder Fork2.7501.875 +0.020, -02.502.50 ft1.2515.251.75• 1300+0.001,-0 ri.0.06233800.125 +0.016, -0.1 0 0.915 0 0.960-32+-0.005 +-0.0052.1500 1300 0 1.000+0.001, +0.0015,-0 -0.0010.62 4--------L..... ........... ......_.. ....Appendix A. Joint Components 120A.5 Short Shaft.... .....•• ••3.01.52.625v03Appendix BPosition Transducer Mounting System ComponentsB.1 Clamp Plate0.1251.54.255.00.216 +-0.003. il■r -0L, 0.086 +0.005, -0; •S I I II •I I $al■ bo.”•I I $I II II II $ 4) 2.584 +-0.006121. Ill Appendix B. Position Transducer Mounting System Components 122B.2 Tube Guide Plate0.125 3.012510.52.0 1.254.05.756.250.375Appendix B. Position Transducer Mounting System Components 123B.3 Tube GuideI$1.0• ►0 1.066 +-0.003Appendix B. Position Transducer Mounting System Components 124B.4 Transducer Bracket2.5 1.255.757.00375 t 1 : ■: : 1 .II .Il II,. II I 1Appendix CSingularity Source CodeC.1 plotsingratios.mfunction plotsingratios( pi, pis, pie, piinc, p2, p2s, p2e,p2inc, xp, yp, zp, psip, thep, phip )% File: plotsingratios.m% Project: A Six Degrees-of-Freedom, Hydraulic, One Person Notion Simulator% For: Dr. Tim Salcudean and Dr. Peter Lawrence% By: Peter Drexel% Copyright University of British, 1992% plot the max to min singular value ratios of the platform's jacobian% while varying two of the platform's position/orientation parameters% pi = (1..6) first platform parameter to vary, for example, xp position% pis = starting value of first parameterV. pie = ending value of first parameter% piinc = increment value of first parameter% p2, p2s, p2e, p2inc same as above but second parameter, say ypY. xp, yp, zp, psip, thep, phip = initial position/orientation of platform% NOTE: for p1 and p2 (xp = 1, yp = 2, zp = 3, etc.)% conversion factors and offset to actuator pairsdegrees = pi / 180.0;offset = 120.0 * degrees;rp = 0.5; V. platform radiusgammap = 8.0 * degrees; V. angle to platform end of first actuatorrb = 1.00; V. base radiusgammab = 81.25 * degrees; % angle to base end of first actuatorV. actuator end pointspp = C C rp * cos( gammap ), rp * sin( gammap ), 0 ];[ rp * cos( offset - gammap ), rp * sin( offset - gammap 0 ];[ rp * cos( offset + gammap ), rp * sin( offset + gammap 0 ];C rp * cos( -offset - gammap ), rp * sin( -offset - gammap ), 0 ];125rp[ rpbb = [[ rb[ rb[ rb[ rb[ rb* cos(* cos([ rb ** cos(* cos(* cos(* cos(* cos(% if parameter% then convertif ( pi == 4 )pis = pis *pie = pie *Appendix C. Singularity Source Code 126-offset + gammap ), rp * sin( -offset + gammap ), 0 ];-gammap ), rp * sin( -gammap ), 0 ] ]';cos( gammab ), rb * sin( gammab ), 0 ];offset - gammab ), rb * sin( offset - gammab ), 0 ];offset + gammab ), rb * sin( offset + gammab ), 0 3;-offset - gammab ), rb * sin( -offset - gammab ), O ];-offset + gammab ), rb * sin( -offset + gammab ), O ];-gammab ), rb * sin( -gammab ), 0 ] ]';1 is one of the platform's orientation anglesdegrees to radiansI ( pi == 5 ) I ( pi == ),pi / 180;pi / 180;piinc = piinc * pi / 180;end% same as above for parameter 2if ( p2 == 4 ) I ( p2 == 6 ) I ( p2 == 6 ),p2s = p2s * pi / 180;p2e = p2e * pi / 180;p2inc = p2inc * pi / 180;end% allocate space for 2D array of singular value ratiosratios = ones( ( pie - pis ) / piinc, ( p2e% for each element in the array1 = 1;for pitemp = pis:plinc:ple,m = 1;for p2temp = p2s:p2inc:p2e,% set the appropriate parametersif pi == 1,zp = pitemp;elseif pi == 2,yp = pitemp;elseif pi == 3,zp = pitemp;elseif pi == 4,psip = pitemp;elseif pi == 6,- p2s ) / p2inc );Appendix C. Singularity Source Code 127thep = pitemp;elseif p1 == 6,phip = pitemp;endif p2 == 1,xp = p2temp;elseif p2 == 2,yp = p2temp;elseif p2 == 3,zp = p2temp;elseif p2 == 4,psip = p2temp;elseif p2 == 6,thep = p2temp;elseif p2 == 6,phip = p2temp;end% compute platform jacobianj = jacobian( xp, yp, zp, phip, thep, psip, pp, bb );% singular value decompositionsys = svd( j );% save ratio of max to min SV ratiosratios( 1, m ) = max( sys ) / min( sys );% limit maximum ratio because they get really bigif ratios( 1, m ) > 200,ratios( 1, m ) = 200;endm = m + 1;end1 = 1 + 1;end% set axis label names and units% NOTE: MATLAB has no way of specifying labels for "mesh" plots% so this is an adequate fixif pl == 1,namel = 'xp';elseif pi == 2names = 'yp';elseif pi == 3Appendix C. Singularity Source Code 128namel = 'zp';elseif pi == 4namei = 'psip';elseif pi == 6namel = 'thep';elseif pi == 6namei = 'phip';endif ( pi >= 4 ) ( p1 <= 6 )pie = pie * 180 / pi;unitsi = ' deg';elseunitsl = ' m';endif p2 == 1,name2 = 'xp';elseif p2 == 2name2 = 'yp';elseif p2 == 3name2 = 'zp';elseif p2 == 4name2 = 'psip';elseif p2 == 6name2 = 'thep';elseif p2 == 6name2 = 'phip';endif ( p2 >= 4 ) & ( p2 6 )p2e = p2e * 180 / pi;units2 = ' deg';elseunits2 = ' m';endclg;mesh( ratios );title('Singular Value Ratios');text( 0.76, 0.12, names, 'sc' );text( 0.26, 0.10, name2, 'sc' );text( 0.1, 0.8, [ num2str( pis ), ' < namel, 2 < 2 ,num2str( pie ), unitsi ], 'sc' );text( 0.1, 0.76, [ num2str( p2s ), ' < name2, <num2str( p2e ), units2 ], 'sc' );Appendix C. Singularity Source Code 129text( 0.1, 0.7, [ num2str( min( min( ratios ) ) ), ' < ratios < ', ...num2str( max( max( ratios ) ) ) ], 'sc' );C.2 jacobian.mfunction j = jacobian( x, y, z, phi, the, psi, pp, bb )% File: jacobian.mV. Project: A Six Degrees-of-Freedom, Hydraulic, One Person Motion Simulator% For: Dr. Tim Salcudean and Dr. Peter Lawrence% By: Peter Drexel% Copyright University of British, 1992% compute platform's jacobian for "plotsingratios.m"% cos and sin of platform orientation anglescphi = cos( phi ); sphi = sin( phi );cthe = cos( the ); sthe = sin( the );cpsi = cos( psi ); spsi = sin( psi );V. orientation matrixbRp = [ [ cphi*cthe, -sphi*cpsi+cphi*sthe*spsi, sphi*spsi+cphi*sthe*cpsi ];[ sphi*cthe, cphi*cpsi+sphi*sthe*spsi, -cphi*spsi+sphi*sthe*cpsi ];[ -sthe, cthe*spsi, cthe*cpsi ] ];j = zeros( 6 );for i = 1:6,bRpTimesppi = bRp * pp( :, i );bbiMinusbdp = bb( i ) - [ x, y, z ] 1 ;j( i, 1:3 ) = bRpTimesppi' - bbiMinusbdp';j( i, 4:6 ) = CrossProduct( bbiMinusbdp, bRpTimesppi ) 1 ;endC.3 CrossProduct.mfunction c = CrossProduct( a, b )c = [ a( 2 )*b( 3 )-a( 3 )*b( 2 );a( 3 )*b( 1 )-a( 1 )*b( 3 );a( 1 )*b( 2 )-a( 2 )*b( 1 ) ];Appendix DBuckling Source CodeD.1 buckling.mfunction buckling( minlen, maxlen, minforce )% File: buckling.m% Project: A Six Degrees-of-Freedom, Hydraulic, One Person Motion Simulator% For: Dr. Tim Salcudean and Dr. Peter Lawrence% By: Peter Drexel% Copyright University of British Columbia, 1992% plot buckling force versus column length using Euler's column formula% for actuator bores of 2, 1.5 and 1 inch% minlen = minimum column length to consider% maxlen = maximum column length to consider% minforce = minimum acceptable force (draws a threshold line)X unit convesrion factorsinch_to_meter = 0.0254; % 1 inch = 0.0254 meters% set piston rod diametersrodDialO = 5/8 * inch_to_meter;rodDialb = 1 * inch_to_meter;rodDia20 = 1.25 * inch_to_meter;% moment of areaI10 = pi * rodDia10 -4 / 64;115 = pi * rodDia15 -4 / 64;120 = pi * rodDia20 -4 / 64;E = 200e9; % modulus of elasticity of steelY. set plot range1 = linspace( minlen, maxlen, 50 );threshold = linspace( minforce, minforce, 50 );fcr10 = pi -2 * E * 110 ./ 1. -2;130Appendix D. Buckling Source Code 131fcrib = pi -2 * E * 115 ./ 1. -2;fcr20 = pi -2 * E * 120 ./ 1. -2;plot( 1, fcriO, ':', 1, fcriS, '-', 1, fcr20, '--', 1, threshold, '-.' );title( 'Critical Buckling Force Versus Column Length' );zlabel( '1 (m)' );ylabel( 'fcr (I)' );text( 1( length( 1 ) / 4 ), fcri0( length( 1 ) / 4 ), '1.0' );text( 1( length( 1 ) / 4 ), fcriB( length( 1 ) / 4 ), '1.5' );text( 1( length( 1 ) / 4 ), fcr20( length( 1 ) / 4 ), '2.0' );text( 1( length( 1 ) / 4 ), threshold( length( 1 ) / 4 ), '4000 N' );Appendix EForce Versus Flow Source CodeE.1 fvsq.mfunction fvsq( qMax, deltaP, Ps, maxFlow, metricValve, fourway )% File: fvsq.m% Project: I Six Degrees-of-Freedom, Hydraulic, One Person Motion Simulator% For: Dr. Tim Salcudean and Dr. Peter Lawrence% By: Peter Drexel% Copyright University of British, 1992% plot the force versus flow/speed characteristics for 2, 1.6 and 1 inch bore% cylinders and the valve specified in the input parameters% qMax = flow through valve for a given pressure drop, deltaP, across BOTH% valve portsY. deltaP = pressure drop across BOTH valve ports at a flow of qMaxY. Ps = supply pressure% metricValve: if =1 then qMax must be given in liter/min and deltaP% must be given in Bar,% if =0 then qMax " •I et " gallons/min " deltaP " " PSI% NOTE: Ps and maxFlow are always given in PSI and GPM respectively% fourway: if =1 then the fluid into both ends of the cylinder is controlledif =0 then the fluid into the blind end only is controlled% unit convesrion factorsPSI_to_Pascal = 6896; % 1 PSI = 6896 Pascalbar_to_Pascal = 100e3; % 1 Bar = 100000 Pascalinch_to_meter = 0.0264; % 1 inch = 0.0264 metersmin_to_sec = 60; % 1 minute = 60 secondsliter_to_m3 = 0.001; % 1 L = 0.001 m -3gal_to_m3 = 0.0038; % 1 gal = 0.0038 m -3LPM_to_m3perS = liter_to_m3 / min_to_sec;GPM_to_m3perS = gal_to_m3 / min_to_sec;% convert input to SI132Appendix E. Force Versus Flow Source Code 133if metricValve == 1,qMax_SI = qMax * LPM_to_m3perS;Ps_SI = Ps * PSI_to_Pascal;deltaP_SI = deltaP * bar_to_Pascal;elseqMax_SI = qMax * GPM_to_m3perS;Ps_SI = Ps * PSI_to_Pascal;deltaP_SI = deltaP * PSI_to_Pascal;end% set piston and rod diameterspistonDialO = 1 * inch_to_meter;rodDialO = b/8 * inch_to_meter;pistonDialb = 1.b * inch_to_meter;rodDialb = 1 * inch_to_meter;pistonDia20 = 2 * inch_to_meter;rodDia20 = 1.2b * inch_to_meter;% piston and annulus areasA10 = pi * pistonDia10 -2 / 4.0;a10 = A10 - pi * rodDial0"2 / 4.0;Alb = pi * pistonDialb -2 / 4.0;alb = A1b - pi * rodDialb -2 / 4.0;A20 = pi * pistonDia20 -2 / 4.0;a20 = A20 - pi * rodDia20 -2 / 4.0;% valve coefficient, divide by two because data sheet pressure% drop is across both portsCv = qMax_SI / sqrt( deltaP_SI / 2 );% force versus flow% for positive flows into the blind endqp = linspace( 0, maxFlow, b0 );if fourway == 1,fp10 = ( Ps_SI - ( qp * GPM_to_m3perS / Cv ). -2 ) * A10 -( qp * GPM_to_m3perS * al0 / Cv / A10 )."2 * al0;fplb = ( Ps_SI - ( qp * GPM_to_m3perS / Cv ). -2 ) * £18 -( qp * GPM_to_m3perS * alb / Cv / A1b ). -2 * alb;fp20 = ( Ps_SI - ( qp * GPM_to_m3perS / Cv ). -2 ) * A20 -( qp * GPM_to_m3perS * a20 / Cv / A20 )."2 * a20;elseAppendix E. Force Versus Flow Source Code 134fp10 = ( Ps_SI - ( qp * GPM_to_m3perS / Cv ). -2 ) * A10 - Ps_SI * al0;fplb = ( Ps_SI - ( qp * GPM_to_m3perS / Cv ). -2 ) * Alb - Ps_SI alb;fp20 = ( Ps_SI - ( qp * GPM_to_m3perS / Cv ). -2 ) * 120 - Ps_SI a20;end% for negative flows out of the blind endqn = - qp ;if fourway == 1,fn10 = ( qn * GPM_to_m3perS / Cv ). -2 * A10 - ( Ps_SI -( qn * GPM_to_m3perS * al0 / Cv / A10 ). -2 ) * al0;fnlb = ( qn * GPM_to_m3perS / Cv * Alb - ( Ps_SI -( qn * GPM_to_m3perS * alb / Cv / Alb ). -2 ) * alb;fn20 = ( qn * GPM_to_m3perS / Cv * A20 - ( Ps_SI -( qn * GPM_to_m3perS * a20 / Cv / A20 ). -2 ) * a20;elsefn10fnlbfn20end= ( qn * GPM_to_m3perS= ( qn * GPM_to_m3perS= ( qn * GPM_to_m3perS/ Cv ). -2 * A10 - Ps_SI * al0;/ Cv ). -2 * Alb - Ps_SI * alb;/ Cv * A20 - Ps_SI * a20;Y. set unit label for plotsif metricValve == 1,flowunits = 'LPN';pressunits = 'Bar';else,flowunits = 'GPM';pressunits = 'PSI';endY. set connection label for plotsif fourway == 1,connection = '4-Way';elseconnection = '3-Way';endY. plot force versus flowplot( qp, fp10, ':', qn, fn10, ':', ...qp, fplb, 2 - 2 , qn, fnlb, 2 - 2 , ...qp, fp20, '--', qn, fn20, '--' );grid;title( [ 'Force-Flow Characteristic (', num2str(qMax), ' ', flowunits,num2str(deltaP), ', pressunits, ', ', 'Ps = ', num2str(Ps),' PSI) ', connection ] );Appendix E. Force Versus Flow Source Code 135xlabel( 'q (GPM)' );ylabel( 'f );text( qn(1), fn10(1), '1.0' );text( qn(1), fn15(1), ' 1 . 5 ' );text( qn(1), fn20(1), '2.0' );% wait for "return"keyboard;% plot force versus speedplot( qp * GPM_to_m3perS / A10, fp10, qu * GPM_to_m3perS / A10, fn10,qp * GPM_to_m3perS / A15, fp15, qn * GPM_to_m3perS / A15 , ...fn1S, qp * GPM_to_m3perS / A20, fp20,qn * GPM_to_m3perS / A20, fn20, );grid;title( [ 'Force-Speed Characteristic e, num2str(qMax), ", flowunits,' C num2str(deltaP), ", pressunits, ', 'Ps =num2str(Ps), ' PSI) ', connection ] );xlabel( 'dl/dt (m/s)' );ylabel( 'f (N)' );text( qn(1) * GPM_to_m3perS / A10,text( qn(1) * GPM_to_m3perS / A15,text( qn(i) * GPM_to_m3perS / A20,fn10(1),fn15(1),fn20(1),'1.0''1.5''2.0');););
- Library Home /
- Search Collections /
- Open Collections /
- Browse Collections /
- UBC Theses and Dissertations /
- A six degrees-of-freedom, hydraulic, one person motion...
Open Collections
UBC Theses and Dissertations
Featured Collection
UBC Theses and Dissertations
A six degrees-of-freedom, hydraulic, one person motion simulator Drexel, Peter A. W. 1992
pdf
Page Metadata
Item Metadata
Title | A six degrees-of-freedom, hydraulic, one person motion simulator |
Creator |
Drexel, Peter A. W. |
Date Issued | 1992 |
Description | In order to simulate the motion of heavy equipment used in the forestry industry for the purpose of human factors and teleoperation research, we have designed a six degrees-of-freedom, hydraulic, one person motion simulator. In this thesis we derive the inverse kinematics and the jacobian of the platform. We also derive the forward kinematics of the platform using Newton's method and address workspace issues from the point of view of a "singularity boundary." In addition, we look at platform dynamics including the design of the hydraulic actuation system. Based on the results of dynamic simulations, we expect that this motion simulator will provide 9.8 m/s² , 400°/s² accelerations and 1 m/s, 30°/s speeds to a 250 kg payload with 1 m, 45° displacements from a nominal center. |
Extent | 4105640 bytes |
Genre |
Thesis/Dissertation |
Type |
Text |
FileFormat | application/pdf |
Language | eng |
Date Available | 2008-12-15 |
Provider | Vancouver : University of British Columbia Library |
Rights | For non-commercial purposes only, such as research, private study and education. Additional conditions apply, see Terms of Use https://open.library.ubc.ca/terms_of_use. |
DOI | 10.14288/1.0065000 |
URI | http://hdl.handle.net/2429/2898 |
Degree |
Master of Applied Science - MASc |
Program |
Electrical and Computer Engineering |
Affiliation |
Applied Science, Faculty of Electrical and Computer Engineering, Department of |
Degree Grantor | University of British Columbia |
GraduationDate | 1992-11 |
Campus |
UBCV |
Scholarly Level | Graduate |
AggregatedSourceRepository | DSpace |
Download
- Media
- 831-ubc_1992_fall_drexel_peter.pdf [ 3.92MB ]
- Metadata
- JSON: 831-1.0065000.json
- JSON-LD: 831-1.0065000-ld.json
- RDF/XML (Pretty): 831-1.0065000-rdf.xml
- RDF/JSON: 831-1.0065000-rdf.json
- Turtle: 831-1.0065000-turtle.txt
- N-Triples: 831-1.0065000-rdf-ntriples.txt
- Original Record: 831-1.0065000-source.json
- Full Text
- 831-1.0065000-fulltext.txt
- Citation
- 831-1.0065000.ris
Full Text
Cite
Citation Scheme:
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>
Our image viewer uses the IIIF 2.0 standard.
To load this item in other compatible viewers, use this url:
https://iiif.library.ubc.ca/presentation/dsp.831.1-0065000/manifest