259 97 352KB
English Pages [11]
16th International Conference SAER-2002, sept.20-22,2002, Varna, Bulgaria
95
APPLICATION-ORIENTED LANGUAGE FOR DESCRIBING OPEN KINEMATIC CHAINS Kaloyan Yankov, Ph.D. Medical Faculty, Thracian University, Armejska str., 11, Stara Zagora 6000, Bulgaria e-mail: [email protected] Abstract: In this paper an application-oriented language for describing the spatial open kinematics chains is presented. The program interpreter generates the kinematics model of the chain and its motion equations in analytical form. The language is used as a user interface in system CINDY for modeling and studying the human limbs and robot manipulators. Key words: Biomechanics, Computer Aided Design, Programming Languages, Robotics, Symbolic Computation.
1. INTRODUCTION The modeling of lokomotory system of human beigs and animals is a significant for various applications: - Studying and evaluation of kinematics characteristics of limbs; - Definition of biomechanical parameters of regional and local human motions in norma and pathology; - Evaluation of motion power for patients with peripheral neuropathy and prescription for rehabilitation; - Control and regulation of computer-aided motion of invalids; - Design of supervisor control of mechanisms; The lokomotory system of living organisms could be modeled as open kinematics chain (OKC). OKC is a system of rigid bodies having two or more pairing elements, which connect it to other bodies for the purpose of transmitting force or motion. A pair is a joint between the surfaces of two rigid bodies that keeps them in contact and relatively movable. OKC consists of kinematic pairs, which are revolute (R) and prismatic (Р). They define independent kinematics parameters generalized joint coordinates: q = (q1,q2,....,qN)T (1) q is the OKC - configuration. Тo express the motions the kinematics equations are necessary. A local Cartesian coordinate system is established for each rigid body. To the firm solid a base coordinate system OoXoYoZo is attached, and for i-th kinematic pair the frame is OiXiYiZi (i=1...N, N is the number of joints). Let BN = (xN,yN,zN,1)T (2) is the characteristic end-effector point in N-th frame. Its homogeneous coordinates in OoXoYoZo frame are: k=1,2,…,N (3) B0,N = Аk-1,k(qk)*Bк where Аk-1,k is the transformation matrix from (k-1)-th to k-th frame. That is so called “right kinematic problem”. The kinematic equations are very important in design and control of OKC. We can obtain them in numerical or analytical (symbolic) form. The analytical one gives us quantitative estimation of OKC. Some of advantages of symbolic form are: - Explicit view of kinematic parameters and ability to appreciate its importance in the model [1]; - Increasing the precision during integration of dynamics differentiation equations [2]; - Decreasing the computation time for solving the right and inverse kinematics problem [3]; - Explicit view of inertia and dissipation parameters [4];
16th International Conference SAER-2002, sept.20-22,2002, Varna, Bulgaria
96
The deriving of analytical equations for hyper-redundant chains is time-consuming and human error is very probable. The systems for symbolic computations, general or specialized, are useful aid in this case [5,6]. An advantage in such system is the availability of application– oriented language. In this paper a language for describing the spatial open chains and generation of its analytical equations is presented. The language is a part of user interface in the CINDY simulation system [7,8]. 2. CHARACTERISTIC EQUATIONS OF THE OPEN KINEMATICS CHAIN Denavit-Hartenberg notation is widely used in the transformation of coordinate systems of linkages [9]. It can be used to represent the transformation matrix between links as shown in the Fig1: a) axis Zi coincide with the axes of the i-th kinematics pair; b) axis Xi is a common perpendicular to the Zi-1 and Zi : Xi = Zi-1 x ZI; c) axis Yi is chosen to define right-oriented frame OiXiYiZi. Relative position of two coordinate systems attached to adjoining joints is described with fourth parameters (Denavit-Hartenberg parameters): - θi is the included angle of axes Xi and Xi–1. When the joint is revolute, θi is variable and its value changes between restrictions [θimin,θimax]; - si – the distance connecting the axis Xi и Xi–1; This distance will be variable for a prizmatic joint. Its value changes between restrictions [simin,simax]; - ai is the shortest distance connecting the axis Zi-1 and Zi; - αi - is enclosed by the axes zi-1 and zi; The last two parameters are constant and depend on chain structure. Transformation from (i-1)-th to i-th frame Fig.1 get up with four elementary transformations: 1. Rotation on angle θi around Z i –1 until Xi and Xi –1 get parallel. This operator is denoted by RQ if θ is measured in radians, and by RQD if the angle dimension is in degrees. 2. Translation of i along Z i –1 at distance si until Xi и Xi –1 get in line; cosθi RQ(θI) = sinθi 0 0
0 0 1 0
-sinθi cosθi 0 0
0 0 0 1
(4)
TS(si) =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 Si 1
0 -sinαi cosαi 0
0 0 0 1
(5)
3. Translation of i along Xi –1 at distance ai until i-1 and i. coincide; 4. Rotation on angle αi around Xi –1 until Zi and Z i –1 coincide; TA(ai) =
1 0 0 0
0 1 0 0
0 0 1 0
aI 0 0 1
(6)
RA|RAD(αi) =
1 0 0 0
0 cosαi sinαi 0
(7)
The multiplication of these four operators gives the transformation matrix Аk-1,k in (3). It is clear that it is difficult to receive the analytical form of the end-effector coordinates in function of parameters (θ,α,s,a). The problem complicates if these parameters on the other hand are functions of other, for instance constructive or manufacturing parameters. That defines the necessity of creation of means for OKC-configuration description and computer-assisted equation generation.
16th International Conference SAER-2002, sept.20-22,2002, Varna, Bulgaria
97
3. LANGUAGE ELEMENTS FOR DESCRIBING OKC This is description-like language. The language symbols are: • letter::=”A”|...|”Z”|”a”|…|”z” • digit::=”0”|”1”|”2”|”3”|”4”|”5”|”6”|”7”|”8”|”9” • arithmetic operator::= "+" | "-" | "*" | "/" • delimiters::=”(“|”)”|”,”|”:”|”.”|”//”|” “ To indicate the OKC-parameters and other user-defined parameters are used identifiers: • identifier ::= letter { letter | digit } Identifier substitution with numerical values is possible only for joint identifiers. It is possible to use arithmetic expressions according to PASCAL-language requirements. The OKC is described with a program. The program consists of one or more sentences, separated using “;” and the terminal symbol is “.”. The sentence represents a single kinematic pair. It consists of some words delimited with commas “,”. The first word in each sentence defines the type of the kinematical pair - “R|RD|Р” and the identifier of the generalised coordinate. The joint restrictions must put in parenthesis. The following words (if they exist) describe the spatial transformation toward to the previous frame. The transformation operators (RQ,RQD,TS,TA,RA,RAD) are used followed by transformation parameter: number, identifier or arithmetic statement in parenthesis. The possible comment follows the sentence and it begins with “//”. The fourth Denavit-Hartenberg’s parameters may present as a number, user-defined identifier or arithmetic statement. They are shown on Fig.2. The missing syntax elements correspond to the requirements of PASCAL language. program sentence
.
; sentenc e
RD
joint identifier
R
,
frame transformation
P
joint constraints
identifier
joint identifier
arithmetic statement joint constraints min value
(
,
min value
)
max value
number frame transformation
max value
number
RQD
number RQ
RA ( RAD TS TA
identifier arithmetic statement
)
Fig.2. Syntax diagrams
16th International Conference SAER-2002, sept.20-22,2002, Varna, Bulgaria
98
4. SYNTAX ANALYSIS AND SYMBOLIC GENERATION The goal of program interpretation is to create the kinematics model of the OKC [10,11] and to derive the end-effector analytical equations. For each recognized joint identifier the corresponding data structure [11] and the transformation matrix in analytical form is generated. For each transformation word in a sentence the corresponding transformation matrix (4-7) is created. Its arguments are numbers, user identifiers or arithmetic statements. The algorithm order follows below. 1. Analytical multiplication of matrices using procedure MULT_MATR. This algorithm puts parentheses “(“|”)”, signs “+|- “ and detect multiplication with “0” ,“-1”, “1” [5]. 2. Algebraic reducing using procedure ALGEBRA_REDUCE. This procedure removes equal terms with contrary signs and unifies terms with equal trigonometric and different algebraic parts. It is part of SYANA system for symbolic computation [6]. 3. Output of the result on the appropriate data medium: screen, printer, file. 4. Postfix notation generation of the analytical matrices using procedure SYNTAX_ANALYSE. Postfix notation is a part of kinematics model of OKC [11]. They are necessary for numerical-analytical kinematics analysis [3]. 5. EXAMPLE
Fig.3
Human arm is an open kinematics chain beginning with the shoulder joint and ending with the wrist joint (Fig.3). The shoulder represents first link in a kinematical chain of levers. The possible motions are [12]: - flexion/extension in the sagital plane: [-20..90] degrees; - elevation in the scapular/frontal plane: [0.. 100] degrees; - rotation about the long axis of the humerus: [-30..60] degrees; The elbow joint allows two degrees of freedom in motion: - flection/extension: [10..140] degrees; - pronation/supination in the horisontal plane: [-90..90] degrees; - The length of the humerus is denoted by “H4”. The articulus of the wrist joint allows motion in two planes: -flection/extensionin in the saggital plane [-70.. 90] degrees; - radial/ulnar deviation in the frontal plane: [-20..20] degrees; - The length of the forearm is denoted by “U5”. The last frame is O8X8Y8Z8. It defines the wrist approach. The length of the wrist is denoted by “K8”. On fig.4 the dialog window is shown. In includes the program that describes the arm and the generated equations of the wrist. In the equations “S” and “C” denote functions “SIN” and “COS” respectively.
6. CONCLUSIONS A language for description of open kinematics chain is presented. The language allows a precise determination of 3D joint structures. Moreover, it provides a way to collect objective data on the functional anatomy of joints and could be used to study its motions. It may be directly applied to other species and may be used by researchers interested in discreet articular movements. REFERENCES 1. Genova P., R. Kazandjieva, K.Yankov, Computer-mathematical modeling in symbolic form and its application in robotics. First Int.Cong. on Technology and Robotics “TECHRO’88”, sept.1926, 1988, Diuni, Bulgaria (in Bulgarian).
16th International Conference SAER-2002, sept.20-22,2002, Varna, Bulgaria
99
2. Genova P., R. Kazandjieva, K.Yankov, Symbolic Generation and Normalization of Kinetic Energy of Manipulators. “ROBCON 4”, oct.1987, Sofia, pp.264-276, (in Russian). 3. Yankov, K., R.Kazandjieva, D.Tekeliev, Numerical-Analytical Kinematics Analysis of Industrial Robots. Automatica & Informatica, 1995. 29(4), pp. 26-32, (in Bulgarian) . 4. Genova P., R. Kazandjieva, K.Yankov, Computational Algorithm for Identification of Inertia and Dissipation Parameters of Manipulating Systems.7-th CISM-IFToMM Symp.on Theory and Practice of Robots and Manipulators - Ro.Man.Sy'88, sept.12-15, 1988, Udine, Italy. 5. Kazandjieva R., K.Yankov Automation of kinematics research of open kinematics chains. Fifth National Congress of Theoretical and Applied Mechanics, sept. 23-29, 1985, Varna, Bulgaria, pp.109-114, (in Bulgarian). 6. Kazandjieva, R., Analytical Modeling of Kinematics and Dynamics of Industrial Robots. Ph.D. Thesis. 1990, Sophia, Bulgaria, (in Bulgarian). 7. Yankov, K. Simulation Model of Industrial Robots. IV-th National conference “Systems for Automation of Engineering and Research SAER'90".Oct.1-6, 1990.Albena,Bulgaria.,pp.260-264. 8. Yankov K., Computer Simulation of Industrial Robots. Proc. Second Int. Conf. ACMBUL'92 "Computer Applications", okt.4-8,1992, st.Konstantine resort, Varna, Bulgaria, pp.33.1-33.8 9. Denavit, J. and Hartenberg, R. S., "A Kinematic Notation for Lower-Pair Mechanisms Based on Matrices," ASME Journal of Applied Mechanisms, 1955, pp. 215-221. 10. Konstantinov M.,K. Yankov. Data Organization in Interactive System for CAD of Robots. Int. Conf. on Ind. Robots "ROBCON 4".oct.20-23 1987. Sofia, Bulgaria., pp. 236-245, (in Russian). 11. Yankov K., Data Structures Realizing Industrial Robot Analytical Model. Proc. Third Int. Conference ACMBUL'93 "Computer Applications", okt.16-20,1993, st.Konstantine resort, Varna, Bulgaria, pp.20.1-20.6. 12. Basic Biomechanics of the Musculoskeletal System, Ed.by M.Nordin, V.Frankel, Second edition, Lea & Febiger, Philadelphia, London, 1989.
Fig.4