Robot kol dinamiğinin ve hareketinin bilgisayarda analizi ve simülasyonu

thumbnail.default.alt
Tarih
1990
Yazarlar
Sancaktaroğlu, Hasan
Süreli Yayın başlığı
Süreli Yayın ISSN
Cilt Başlığı
Yayınevi
Fen Bilimleri Enstitüsü
Özet
Bu çalışmanın amacı, robot kolu hareketinin anali zini yapmak ve kontrol algoritmalarında kullanılan "model" dinamiğinin hatasını belirlemektir. Bu analiz için gerek li olan kinematik ve dinamik problemin çözümü için bir bilgisayar programı hazırlanmıştır. Ayrıca hareketin 3 boyutlu grafik simülasyonunu içeren bir program da geliş tirilmiştir. Yapılan bu çalışma, 3 ana bölüme ayrılabilir. Birinci bölümde, 6 serbestlik derecesine sahip robot kolu hareketinin simülasyonunu içeren bir program hazır lanmıştır. Hazırlanan bu program, özel konf igürasyonlu robot kolunun kuvvet ve momentten bağımsız olarak ve yal nızca zamanın bir fonksiyonu olarak eklem değişkenleri ve rildiğinde, robot kolu uç noktasının alacağı pozisyon ve yönlenmeyi görmemizi sağlamaktadır. örnek olarak PUMA ro bot kolu hareketinin simülasyonu incelenmiştir. Ayrıca incelenecek olan robot kolunun kinematik yapısını progra ma girmek için Uç boyutlu çizim yapmamızı da sağlayan bir program parçası programa eklenmiştir. İkinci kısımda, robot kolu dinamik probleminin çö zümü için kullanılan yöntemlerden ikisi olan Newton-Euler ve Lagrange- Eul er yaklaşımları, dinamik problemin çözümü için bilgisayar programı haline getirilmiştir. 6 veya da ha az serbestlik dereceli ve değişik konf i gür as yonl ara sa hip robot kollarının dinamik analizi program ile yapılabi lir. Her iki yöntem iki linkten oluşan düzlemsel bir ro bot kolu üzerinde denediğinde elde edilen sonuçların aynı olduğu görülmüştür. Üçüncü bölümde ise, 3 serbestlik derecesine sahip robot kolunun düz ve ters dinamik problemi ile her iki çö züm sonucunda oluşabilecek hataları incelemek için bir bilgisayar programı hazırlanmıştır. Ayrıca her Uç linke ait konum, hız, ivme, moment veya kuvvet 'in zamana göre değişimi grafik olarak incelenebilir. Bu bölümdeki asıl amaç, yörünge planından elde edilen t. dizisinin modele uygulanması durumunda, elde edilen yörüngenin planlanan yörüngeye uymasıdır. Geliştirilen program bir örnek üze rinde çalıştırıldığında, başlangıçta girilen yörüngelerle analiz sonucu elde edilen yörüngelerin sadece başlangıçta ki bir kaç değer için aynı, daha sonraki aralıklarda sap maların oluştuğu görülmüştür. Sonuç olarak lineer zamanla değişen bu model, bir kontrol algoritması için kullanılmak istendiğinde nelerin göz önünde bulundurulması gerektiği bu çalışma ile ortaya çıkmıştır.
A robot may be defined as a reprogrammable general - purpose manipulator designed to perform various tasks. It consists of several rigid links which are connected to each other in series by revolute or prismatic joints. One end of the chain is attached to a supporting base, while the other end is free and equipped with a tool to perform various tasks. The motion of the robot arm is accomplished by driving the joints with actuators. Robot arm kinematics deals with the analytical study of the geometry of motion of a robot arm with res pect to a fixed reference coordinate system without regard to the forces/moments that cause the motion. Particularly, it deals with the relations between the joint -var i able space and the position and orientation of the end-effector of a robot arm. There are two fundamental problems in robot arm kinematics. The first problem is usually referred to as the direct Cor forward? kinematics problem, while the se cond problem is the inverse kinematics problem. Direct kinematics is the static geometrical problem of computing the position and orientation of the end-effector of the robot arm. Specifically, given a set of joint angles, the direct kinematic problem is to compute the position and orientation of the tool frame relative to the base frame. On the other hand, given the position and orien tation of the end-effector of the robot arm, the inverse kinematic problem is to calculate all possible sets of joint angles which could be used to attain this given position and orientation. The inverse kinematic problem is not as simple as the direct kinematics. Because the kinematic equations are nonlinear, their solution is not always easy or even possible in a closed form. Since the independent variables in a robot arm are the joint variables and a task is usually stated in terms of the -vi- reference coordinate frame, the inverse kinematics prob lem is used more frequently. Since the links of a robot arm may rotate or trans late with respect to a reference coordinate frame, a body-attached coordinate frame will be established along the joint axis for each link. So, the direct kinematics problem is reduced to finding a transformation matrix that relates the body-attached coordinate frame to the reference coordinate frame. And the homogeneous coordi nates will be used to represent position vectors and to describe the rotational operations of the body-attached frame with respect to the reference frame. In general, the representation of an N-componeni position vector by an C N+l 3 -component vector is called homogeneous coordina te representation. The physical N-di mensi onal vector is obtained by dividing the homogeneous coordinates by the _ CN+lDth coordinate. Thus, a position vector p=Cp,p, p 3 x y _z is represented by an augmented vector Cwp, wp, wp, wZ> in the homogeneous coordinate representation. The homogeneous transformation matrix is a 4x4 mat rix which maps a position vector expressed in homogeneous coordinates from one coordinate system to another coordi nate system. A homogeneous transformation matrix can be considered to consist of four submatrices: A = 3x3 1x3 3x1 lxl Rotati on matrix Perspecti ve transformation Position vector Seal i ng and has the combined effect of rotation, translation, perspective and global scaling. A position and an orientation expressed in a link's coordinate frame may easily be defined in another link's coordinate frame by means of a coordinate transformation. This transformation is accomplished by using homogeneous transformation matrices which are 4x4 matrices formed by Denavit-Hartenberg CI>-HI> parameters. D-H representation is used to represent each link's coordinate system at the joint with respect to the previous link's coordinate sys tem. Thus, through sequential transformations, the end- effector expressed in the "hand coordinates" can be transformed and expressed in the "base coordinates". -vii- The D-H representation of a rigid link depends on four geometric parameters associated with each link. These four parameters completely describe any revolute or prismatic joint and are defined as follows: ©, = the joint angle from the x.. axis to the x. axis about the z. _. axis Cusing the right-hand ruleD i-1 d. = the distance from the orijin of the Ci-lDth coordinate frame to the intersection of the z axis with the x. axis along the z,_, axis. a. = the offset distance from the intersection of the z., axis with the x. axis to the orijin of the i th frame along the x. axis Cor the shor test distance between the z.. and z. axes D i-1 i a. - the offset angle from the z.. axis to the z. i w i-1 i axis about the x. axis Cusing right-hand ruleD For a rotary joint, d., a, and a. are the joint pa rameters and remain constant for a robot, while ©. is the joint variable that changes when link i moves with res pect to link i-1. For a prismatic joint, ©., a. and a are the joint parameters and remain constant for a robot, while d. is the joint variable. A homogeneous transfor mation matrix relating the i th coordinate frame to the C i -15th coordinate frame can be expressed with these four parameters CO., d., a. and a. D as follows: i-1 cose. sin©. O O -cosa.. sin©, cosa.. cos©. sina, si not,. sin©, i i -sina.. cos©, i i cosa. a.. cos©, i i a.. sin©, i i On the other hand, the homogeneous matrix Tİ which specifies the location of the i th coordinate frame with respect to the base coordinate system is the chain pro duct of successive coordinate transformation matrices of A.. and is expressed as T^=A^Cq1DAj!Cq2D..A^1Cq13=n^ AJ^CqjD for Ci=l,2,.,nD -viii- ^0 = where [x i,yi'zi pi = 3= orientation matrix of the i th coordi nate system established at link i with respect to the base coordinate system position vector which points from the orijin of the base coordinate system to the orijin of the i th coordinate system On the other hand, the dynamic behavior is descri bed in terms of the time rate of change of the arm confi guration in relation to the joint torques exerted by the actuators. This relationship can be expressed by a set of differential equations that govern the dynamic respon se of the arm linkage to input joint torques. There are two fundamental problems C for war d and in verse dynamics} in robot arm dynamics. In forward dyna mics problem, given the desired torques/forces, the dyna mic equations are used to solve for the joint accelera tions which are then integrated to solve for the genera lized coordinates and their velocities. In the inverse dynamics problem, given the desired generalized coordina tes and their first two time derivaties, the generalized forces/torques are computed. Two approaches will be used to solve inverse dynamics problem. The first method is the Newton- Euler approach. This approach when applied to a robot arm results in a set of forward and backward recursive equations with "messy" vector cross-product terms. The most significant aspect of this formulation is that the computation time of the applied torques can be reduced significantly to allow real- time control. The derivation is based on the d 'Al ember t principle and a set of mathematical equations that describe the kinematic relation of the moving links of a robot arm with respect to the base coordinate system. Newton-Euler equations of motion are a set of for ward and backward recursive equations with the dynamics and kinematics of each link referenced to its own coordi nate system. For the forward recursive equations, linear -ix- velocity and acceleration, angular velocity and accelera tion of each individual link are propagated from the base reference system to the end-effector. For the backward recursive equations, the torques and forces exerted on each link are computed recursively from the end-effector to the base reference system. Hence, the forward equa tions propagate kinematics information of each link from the base reference frame to the end- effector, while the backward equations compute the necessary torques/forces for each joint from the end-effector to the base referen ce system. The second method based on the Lagr ange-Eul er app roach and is expressed by matrix operations. These mat rix operations facilitates both analysis and computer implementation. The lagrangian formulation describes the behavior of a dynamic system in terms of work and energy stored in the system rather than of forces and moments of the individual members involved. Lagrange function L is defined by LCq^q^K-P And using the Lagrange function, equations of motion of the dynamic system are given by dt a l * q. d l * q. = T, 1=1, a,...,n where K= total kinetic energy of the robot arm P= total potential energy of the robot arm q. = generalized coordinates of the robot arm Cq, =0. for rotary joints, q.sd, for prismatic joints} q, = first time deri vat e of the generalized coordi nate, q. t. = generalized force Cor torque!) applied to the system at joint i to drive link i Applying the Lagrange- Euler formulation to the Lag rangian function of the robot arm, the necessary genera lized torque t. for joint i can be expressed in matrix notation form as follows: TCt3=DCqCOD.qCO+hCqCO,qCOD+GCqCOD -x- where DCqZ>= an nxn inertial acceleration-related matrix hCq,q!>= an nxl nonlinear Coriolis and centrifugal force vector (3Cq5= an nxl gravity loading force vector On the other hand, in forward dynamics problem, an equivalent discrete-time state-space model of the dynami cal equations will be derived by using Lagr ange-Eul er formulation. The state- space model is given by where QCq,qD=-GCq>-hCq,q3. And the discrete-time model of the robot arm can then be obtained by solving the abo ve equation in the time interval kT<t 13x1 12x12 12x1 12x6 6x1 12x1 where G. CTD = k I O TI I R. CT> = k 2 T I D. 1CT5 k H.CTD k RkCT>hkCTD h CTD=hCqCkTD,qCk,n3 D CT>=DCqCkT>:> xCk3=[q4CkD q Ck) ! q" CkD ^1 ^n ^1 TCkD=CT.Ck3 t Ck33T 1 n..q Ck33 Mn In this master thesis, a computer program is writen to analyze and simulate the robot arm kinematics and -xi- dynamics by using the above equations. The program is writen using Turbo Pascal 5.5 and can be divided into three parts. In the first section, a robot arm having 6 degree of freedom can be analyzed and simulated in terms of ro bot arm kinematics. As an example, PUMA robot arm simu lation is considered. The program can be used for anot her robot arm configurations by minor changes in the program. In the second part, the inverse dynamics problem can be solved for the robot arms which have 6 degree of freedom or less. N-E and L-E approachs are used to solve the inverse dynamics problem. The methods are tested on a two link, planar robot arm. And the same results are obtained for both of the methods. In the last section, inverse and forward dynamics can be analyzed on a robot arm having 3 degree of freedom. In addition, the results obtained after analysis can be seen as computer graphics. The main goal of this section is that the obtained trajectory planing must be compatible with the given trajectory planing, when the array t. obtained by trajectory planning is app lied to the model. But errors are seen when the results obtained from the inverse dynamics are entered to the program for the forward dynamics. These errors between the obtained trajectory planning and the given trajectory planning create cumulative errors in simulation.</t
Açıklama
Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 1990
Anahtar kelimeler
Makine Mühendisliği, Benzetim, Hareket, Robot kolu, Mechanical Engineering, Simulation, Motion, Robot arm
Alıntı