机器人学导论chapter4
- 格式:pdf
- 大小:127.65 KB
- 文档页数:8
机器人学第一章绪论1. 1 机器人发展史1.1.1 早期的自动机早在1770年,美国科学家就发明了一种报时鸟,一到整点,这只鸟的翅膀、头便开始运动,同时发出叫声。
图1-1为报时鸟的机械结构图,它的主弹簧驱动齿轮转动,使活塞压缩空气而发出叫声,同时齿轮转动时带动凸轮转动,从而驱动翅膀、头运动。
图1-1 报时鸟简图机器人(Robot)一词由一位名叫Karal Capak的捷克斯洛伐克剧作家首先使用。
在捷克语中,Robot这个词是指一个赋役的奴隶。
在1921年Capak写了一出戏剧,名叫《洛桑万能机器人公司》(Rossnm’s Universal Robots).在这出剧中,机器人是洛桑和他儿子研制的类人的生物,用来作为人类的奴仆。
随后,一名叫Isaac Asimov的科学幻想小说家使用了机器人学(Robotics)这个词来描述与机器人有关的科学。
他还提出了“机器人”的三个原则,值得今天的机器人设计者和使用者的注意。
这三个原则的原语如下:(1)A robot must not harm a human being or through inaction ,allow one tocome harm(2) A robot must always obey human beings unless that is conflict with thefirst law.(3)A robot must protect itself from harm unless that is conflict with the firstor second laws.1.1.2近似与机器人相关的装置1.操作机(Manipulators)它是目前仍然大量使用的、由机械控制的操作机。
它的各个关节由机械直接控制。
它具有和人类手臂相似的功能,可在空间抓放物体或进行其他操作。
2.远程操作手(Teleoperators)远程操作手又称主从操作手,它是在操作机之后发展起来的。
(人工智能)人工智能机器人学导论人工智能机器人学导论1简介:1作者简介2机器人控制器和程序设计3简介:3机器人制作入门篇6简介:6作者简介6机器人智能控制工程8简介:8人工智能机器人学导论作者:Ricky文章来源:本站原创更新时间:2006年05月03日打印此文浏览数:2370 SlidesforSecondEdition(Beta)Chapter1:WhatareRobots?.pptslidesandthepdfversion(goodaquicklook) Chapter2:Telesystems.thepdfversionChapter3:BiologicalFoundationsoftheReactiveParadigm.pptslidesandpdfversion Chapter5:TheReactiveParadigmChapter6:SelectingandCombiningBehaviorsChapter7:CommonSensorsandSensingTechniquesChapter8:DesigningaBehavior-BasedImplementationChapter9:Multi-AgentsChapter10:NavigationandtheHybridParadigmChapter11:TopologicalPathPlanningChapter12:MetricPathPlanningChapter13:LocalizationandMappingChapter14:AffectiveRobotsChapter15:Human-RobotInteractionChapter16:WhatCanRobotDoandWhatWillTheyBeAbletoDo?简介:本书系统地介绍了人工智能机器人于感知、导航、路径规划、不确定导航等领域的主要内容。
全书共分俩大部分。
机器人学导论学院:工程机械学院专业:机械工程*名:**学号:**********任课教师:***成绩:目录一、问题重述 (4)1.1、问题重述 (4)1.2 目标任务 (4)二、问题分析 (5)三、模型的假设 (6)四、符号说明 (6)五、模型建立与求解 (7)5.1运动学模型建立与求解 (7)5.1.1机器人运动方程的建立 (7)5.1.2 利用逆运动学方法求解 (10)5.2、问题1—1的模型 (11)5.2.1搜索算法流程图 (12)5.2.2、模型求解 (15)5.3、问题1—2、3的模型 (18)5.3.1、问题1的②、③ (18)5.3.2、问题2的② (20)5.3.3、问题2的③ (22)5.4、问题3 (25)七、模型的评价 (25)7.1.模型的优点 (25)7.2.模型的缺点 (25)参考文献 (26)摘要本文探讨了六自由度机械臂从一点到另一点沿任意轨迹移动路径、一点到另一点沿着给定轨迹移动路径、以及无碰撞路径规划问题,并讨论了设计参数对机械臂灵活性和使用范围的影响,同时给出了建议。
问题一:(1)首先确定初始坐标均为零时机械臂姿态,建立多级坐标系,利用空间解析几何的变换基本原理及相对坐标系的齐次坐标变换的矩阵解析方法,来建立机器人的运动系统的多级变换方程。
通过逆运动学解法和构建规划,来求优化指令(2)假定机械臂初始姿态为Φ0,曲线离散化,每个离散点作为末端位置,通过得到的相邻两点的姿态,利用(1)中算法计算所有相邻两点间的增量指令,将满足精度要求的指令序列记录下来。
(3)通过将障碍物理想化为球体,将躲避问题就转化成保证机械手臂上的点与障碍球球心距离始终大于r的问题。
进而通过迭代法和指令检验法,剔除不符合要求的指令,从而实现避障的目的问题二:将问题二中的实例应用到问题一中的相对应的算法中。
问题三:灵活性与适用范围相互制约,只能根据权重求得较优连杆长度。
关键词:多级坐标变换逆运动学解法遗传搜索算法优化一、问题重述1.1、问题重述某型号机器人(图示和简化图略)一共有6个自由度,分别由六个旋转轴(关节)实现,使机器人的末端可以灵活地在三维空间中运动。
Inverse ManipulatorKinematicsAlgebraic solution by reduction to polynomialOutline2 Introduction IntroductionIntroductionThe Inverse kinematic is the basis of robot trajectory planning and control.5IntroductionExample :6Algebraic solution by reduction to polynomialOutline7SolvabilitySolvabilityFor the 6 DOF Puma 560 manipulator,we have:How to find the 6 joint variablesHere we might have 12 equations to solve for 6 independent variables. Constraints should be utilized.6 equations for 6 unknown variables9SolvabilityDifficulty: these 6 equations are nonlinear and transcendental equations.obtain the solution.whereSolvability11SolvabilitySolvabilityThe dexterous workspace is only one point(the origin). The There is no dexterous workspace. The reachable SolvabilityFor most industry robots, there is limitation for the joint variable range, thus the workspace is reduced.Only one attainable orientationIf a manipulator has less than 6 DOF, it can’t attain general goal position and orientation in 3D space.Workspace also depends on the tool-frame transformation.Solvability15There might be multiple solution in solving kinematic equations.Two possible solution for the same position and orientation.How to choose possible solution?Solvability” solution.The number of solutions depends on the number of and the allowable ranges of motion of the joints, also, it can be a function of other link parameters (link length, link twist, link offset, joint angle).Solvability2. Multiple solutions17The PUMA 560 can reach certain goals with 8different solutions.+Due to the limits of joints range, some of these 8 solutions could be inaccessible.SolvabilitySolvabilityAlgebraic solution by reduction to polynomial Outline20Manipulator Subspace21workspace is a portion of an n‐DOF subspacesubspace : planeworkspace : a subset of the plane{workspace} ⊂{subspace} ⊂{space}Manipulator Subspaceof a manipulator?Giving an expression for a manipulator’s wrist frame {w}to be free to take on all possible values.Manipulator SubspaceThe subspace of is given by:233R planar manipulatorAs are allowed to take on arbitrary values, the subspace is generatedNOTE : Link lengths and joints limits restrict the workspace of the manipulator to be a subset of this subspace.Algebraic solution by reduction to polynomial Outline24Algebraic vs. GeometricGiven the transformation matrix, solved for25Algebraic vs. GeometricD-H TableAlgebraic vs. GeometricThe transformation matrix can be computed viaand we haveAlgebraic vs. GeometricSpecification of the goal points can be accomplished by specifying three parameters: ..The transformation is assumed to have the following structurewhereThe above four nonlinear equations are used to solve for (unknown)Algebraic vs. GeometricThe parameters is How to solve for according thefollowing equations:Algebraic vs. Geometric1.Algebraic solution 30The is the only unknown parameter.Algebraic vs. GeometricStep1.In the solution algorithm, the above constraintshould be checked to determine whether a solution exist or not. If the constrain is not Algebraic vs. Geometric1.Algebraic solution Here, the choice of signs in the solution of corresponds to Algebraic vs. Geometric33Based on the solution of , we can get:whereAlgebraic vs. Geometricwe haveAlgebraic vs. GeometricNote:If a choice of sign is made in the solution of ,it will affect and thus affectStep5. Based on the fact that The solution of can be obtained.Algebraic vs. Geometric36solved for by using the tools of plane geometry.can utilize plane geometry directly to find a solution.Algebraic vs. Geometricconsidering the solid triangle, the “” can be applied to solve for as:37PossibleconfigurationThe other possible solution can be obtained by settingAlgebraic vs. Geometric2. Geometric solutionTo solve for , we find the express for angleand .38and can be solved via:then can be solved as:Algebraic vs. Geometric39the solution of can Algebraic solution by reduction to polynomial Outline40Algebraic solution by reduction to polynomialexpression in terms of a single variable.This is a very important geometric substitution used often in solving kinematic equations. These substitution convert transcendental equations into polynomial equations in Algebraic solution by reduction to polynomialGiven a transcendental equation try to solve for42Solutions:(when )Algebraic solution by reduction to polynomial Outline43Inverse manipulator kinematicsThe Unimation Puma 560 Industry Robot44Inverse manipulator kinematicsReview : D-H table45Inverse manipulator kinematicsReview : Transformation of each link.46Inverse manipulator kinematicsReview : Transformation of all link47whereInverse manipulator kinematics: Given the goal point and orientation specified by:(Known: Numerical value)Solve forInverse manipulator kinematics Separating out 1 unknown parameter How to solve ?Inverse manipulator kinematics2. Inverting to be obtain50 whereInverse manipulator kinematicsCheck the (2,4) elements on both sides ,we have Inverse manipulator kinematicsIntroduce the trigonometric(三角恒等变换) substitutions:52whereThen it can be obtained that:Inverse manipulator kinematics3. The left side of the following equation is known53Inverse manipulator kinematicsTaking square of the above two equations, and adding the results together, it can be obtained thatInverse manipulator kinematicsThe above equation depends only on , then similar steps can be followed to solve for as:4. Consider the following equationhave been solved, but is unknownInverse manipulator kinematics56Eq.(3.11) in Chapter3Check elements (1,4) and (2,4) on both sides, we haveInverse manipulator kinematics 57Inverse manipulator kinematics585. Now the left side of the following equation is knownEq.(3.11) in Chapter3Check the elements (1,3) and (3,3), it can be obtained thatInverse manipulator kinematics ca can be solved as:Case2.,The manipulator is in a singular configurationas axis 4 and 6 line up and cause the same motion of the last link of the robot. Thus is chosen arbitrarily.Inverse manipulator kinematics606. Consider the following equation again:andCheck the elements (1,3) and (3,3), it can be obtained thatInverse manipulator kinematics 61Hence, we can solve for as7. Applying the same method one more time, we havewhereCheck the elements (3,1) and (1,1), it can be obtained thatInverse manipulator kinematics62Thus we can solve for aswe can obtain eight sets of possible solutions, some of them will be discarded due to the joint angle limitsInverse manipulator kinematics63Summary1、原则:等号两端的矩阵中对应元素相等,列出相关方)、从含变量少的左边开始,如,向右递推,直到)、选择等号左边或右边矩阵中等于常数或仅含有一个变量的元素,列出相应元素对应的方程或方程组。
Chapter 4Planar KinematicsKinematics is Geometry of Motion . It is one of the most fundamental disciplines in robotics, providing tools for describing the structure and behavior of robot mechanisms. In this chapter, we will discuss how the motion of a robot mechanism is described, how it responds to actuator movements, and how the individual actuators should be coordinated to obtain desired motion at the robot end-effecter. These are questions central to the design and control of robot mechanisms. To begin with, we will restrict ourselves to a class of robot mechanisms that work within a plane, i.e. Planar Kinematics . Planar kinematics is much more tractable mathematically,compared to general three-dimensional kinematics. Nonetheless, most of the robot mechanisms of practical importance can be treated as planar mechanisms, or can be reduced to planar problems. General three-dimensional kinematics, on the other hand, needs special mathematical tools, which will be discussed in later chapters.4.1 Planar Kinematics of Serial Link MechanismsExample 4.1 Consider the three degree-of-freedom planar robot arm shown in Figure 4.1.1. The arm consists of one fixed link and three movable links that move within the plane. All the links are connected by revolute joints whose joint axes are all perpendicular to the plane of the links. There is no closed-loop kinematic chain; hence, it is a serial link mechanism.Figure 4.1.1 Three dof planar robot with three revolute jointsTo describe this robot arm, a few geometric parameters are needed. First, the length of each link is defined to be the distance between adjacent joint axes. Let points O, A, and B be the locations of the three joint axes, respectively, and point E be a point fixed to the end-effecter. Then the link lengths are E B B A A O ===321,,A A A . Let us assume that Actuator 1 drivinglink 1 is fixed to the base link (link 0), generating angle 1θ, while Actuator 2 driving link 2 is fixed to the tip of Link 1, creating angle 2θ between the two links, and Actuator 3 driving Link 3 is fixed to the tip of Link 2, creating angle 3θ, as shown in the figure. Since this robot arm performs tasks by moving its end-effecter at point E, we are concerned with the location of the end-effecter. To describe its location, we use a coordinate system, O-xy, fixed to the base link with the origin at the first joint, and describe the end-effecter position with coordinates e and e . We can relate the end-effecter coordinates to the joint angles determined by the three actuators by using the link lengths and joint angles defined above:x y)cos()cos(cos 321321211θθθθθθ+++++=A A A e x (4.1.1) )sin()sin(sin 321321211θθθθθθ+++++=A A A e y (4.1.2)This three dof robot arm can locate its end-effecter at a desired orientation as well as at a desiredposition. The orientation of the end-effecter can be described as the angle the centerline of the end-effecter measured from the positive x coordinate axis. This end-effecter orientation e φ is related to the actuator displacements as321θθθφ++=e(4.1.3)viewed from the fixed coordinate system in relation to the actuator displacements. In general, a set of algebraic equations relating the position and orientation of a robot end-effecter, or any significant part of the robot, to actuator or active joint displacements, is called Kinematic Equations, or more specifically, Forward Kinematic Equations in the robotics literature.Exercise 4.1 Shown below in Figure 4.1.2 is a planar robot arm with two revolute joints and one prismatic joint. Using the geometric parameters and joint displacements, obtain the kinematic equations relating the end-effecter position and orientation to the joint displacements.Figure 4.1.2 Three dof robot with two revolute joints and one prismatic jointNow that the above Example and Exercise problems have illustrated kinematic equations, let us obtain a formal expression for kinematic equations. As mentioned in the previous chapter, two types of joints, prismatic and revolute joints, constitute robot mechanisms in most cases. The displacement of the i-th joint is described by distance d i if it is a prismatic joint, and by angle i θ for a revolute joint. For formal expression, let us use a generic notation: q i . Namely, joint displacement q i represents either distance d i or angle i θdepending on the type of joint.i {i i d q θ= (4.1.4)Prismatic joint Revolute jointWe collectively represent all the joint displacements involved in a robot mechanism with a column vector: , where n is the number of joints. Kinematic equations relate these joint displacements to the position and orientation of the end-effecter. Let uscollectively denote the end-effecter position and orientation by vector p. For planar mechanisms, the end-effecter location is described by three variables:[T n q q q q "21=]⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=e e e y x p φ(4.1.5)Using these notations, we represent kinematic equations as a vector function relating p to q :113,),(nx x q p q f p ℜ∈ℜ∈= (4.1.6)For a serial link mechanism, all the joints are usually active joints driven by individual actuators. Except for some special cases, these actuators uniquely determine the end-effecter position and orientation as well as the configuration of the entire robot mechanism. If there is a link whose location is not fully determined by the actuator displacements, such a robot mechanism is said to be under-actuated . Unless a robot mechanism is under-actuated, the collection of the joint displacements, i.e. the vector q, uniquely determines the entire robot configuration. For a serial link mechanism, these joints are independent, having no geometric constraint other than their stroke limits. Therefore, these joint displacements are generalized coordinates that locate the robot mechanism uniquely and completely. Formally, the number of generalized coordinates is called degrees of freedom. Vector q is called joint coordinates, when they form a complete and independent set of generalized coordinates.4.2 Inverse Kinematics of Planar MechanismsThe vector kinematic equation derived in the previous section provides the functionalrelationship between the joint displacements and the resultant end-effecter position andorientation. By substituting values of joint displacements into the right-hand side of the kinematic equation, one can immediately find the corresponding end-effecter position and orientation. The problem of finding the end-effecter position and orientation for a given set of joint displacements is referred to as the direct kinematics problem. This is simply to evaluate the right-hand side of the kinematic equation for known joint displacements. In this section, we discuss the problem of moving the end-effecter of a manipulator arm to a specified position and orientation. We need to find the joint displacements that lead the end-effecter to the specified position and orientation. This is the inverse of the previous problem, and is thus referred to as the inverse kinematics problem. The kinematic equation must be solved for joint displacements, given the end-effecterposition and orientation. Once the kinematic equation is solved, the desired end-effecter motion can be achieved by moving each joint to the determined value.In the direct kinematics problem, the end-effecter location is determined uniquely for anygiven set of joint displacements. On the other hand, the inverse kinematics is more complex in the sense that multiple solutions may exist for the same end-effecter location. Also, solutions may not always exist for a particular range of end-effecter locations and arm structures. Furthermore, since the kinematic equation is comprised of nonlinear simultaneous equations with many trigonometric functions, it is not always possible to derive a closed-form solution, which is the explicit inverse function of the kinematic equation. When the kinematic equation cannot besolved analytically, numerical methods are used in order to derive the desired joint displacements.Example 4.2 Consider the three dof planar arm shown in Figure 4.1.1 again. To solve itsinverse kinematics problem, the kinematic structure is redrawn in Figure 4.2.1. The problem is to find three joint angles 321,,θθθ that lead the end effecter to a desired position and orientation, e e e y x φ,,. We take a two-step approach. First, we find the position of the wrist, point B, from e e e y x φ,,. Then we find 21,θθ from the wrist position. Angle 3θ can be determined immediately from the wrist position.Figure 4.2.1 Skeleton structure of the robot arm of Example 4.1Let w and w be the coordinates of the wrist. As shown in Figure 4.2.1, point B is atdistance 3 from the given end-effecter position E. Moving in the opposite direction to the end effecter orientation x y A e φ, the wrist coordinates are given byee w e e w y y x x φφsin cos 33A A −=−= (4.2.1)Note that the right hand sides of the above equations are functions of e e e y x φ,, alone. From these wrist coordinates, we can determine the angle α shown in the figure.1wwx y 1tan −=α (4.2.2)Next, let us consider the triangle OAB and define angles γβ,, as shown in the figure. Thistriangle is formed by the wrist B , the elbow A , and the shoulder O. Applying the law of cosines to the elbow angle β yields2212221cos 2r =−+βA A A A(4.2.3)where , the squared distance between O and B. Solving this for angle 222ww y x r +=β yields 21222221122cos A A A A ww y x −−+−=−=−πβπθ(4.2.4)Similarly,221212cos 2A A A =−+γr r(4.2.5)Solving this for γyields2212221221112cos tan ww w w w w y x y x x y +−++−=−=−−A A A γαθ (4.2.6)From the above 21,θθwe can obtain213θθφθ−−=e(4.2.7)Eqs. (4), (6), and (7) provide a set of joint angles that locates the end-effecter at thedesired position and orientation. It is interesting to note that there is another way of reaching the same end-effecter position and orientation, i.e. another solution to the inverse kinematics problem. Figure 4.2.2 shows two configurations of the arm leading to the same end-effecter location: the elbow down configuration and the elbow up configuration. The former corresponds to the solution obtained above. The latter, having the elbow position at point A’, is symmetric to the former configuration with respect to line OB , as shown in the figure. Therefore, the two solutions are related asγθθθθφθθθγθθ22''''2'232132211−+=−−=−=+=e (4.2.8)Inverse kinematics problems often possess multiple solutions, like the above example,since they are nonlinear. Specifying end-effecter position and orientation does not uniquely determine the whole configuration of the system. This implies that vector p, the collective position and orientation of the end-effecter, cannot be used as generalized coordinates. The existence of multiple solutions, however, provides the robot with an extra degree offlexibility. Consider a robot working in a crowded environment. If multiple configurations exist for the same end-effecter location, the robot can take a configuration having no interference with1Unless noted specifically we assume that the arc tangent function takes an angle in a proper quadrant consistent with the signs of the two operands.the environment. Due to physical limitations, however, the solutions to the inverse kinematics problem do not necessarily provide feasible configurations. We must check whether each solution satisfies the constraint of movable range, i.e. stroke limit of each joint.11Elbow-Up ConfigurationFigure 4.2.2 Multiple solutions to the inverse kinematics problem of Example 4.24.3 Kinematics of Parallel Link MechanismsExample 4.3 Consider the five-bar-link planar robot arm shown in Figure 4.3.1.22112211sin sin cos cos θθθθA A A A +=+=e e y x (4.3.1)Note that Joint 2 is a passive joint. Hence, angle 2θis a dependent variable. Using 2θ, however, we can obtain the coordinates of point A:25112511sin sin cos cos θθθθA A A A +=+=A A y x (4.3.2)Point A must be reached via the branch comprising Links 3 and 4. Therefore,44334433sin sin cos cos θθθθA A A A +=+=A A y x(4.3.3)Equating these two sets of equations yields two constraint equations:4433251144332511sin sin sin sin cos cos cos cos θθθθθθθθA A A A A A A A +=++=+ (4.3.4)Note that there are four variables and two constraint equations. Therefore, two of the variables, such as 31,θθ, are independent. It should also be noted that multiple solutions exist for these constraint equations.xLink 0Figure 4.3.1 Five-bar-link mechanismAlthough the forward kinematic equations are difficult to write out explicitly, the inverse kinematic equations can be obtained for this parallel link mechanism. The problem is to find 31,θθ that lead the endpoint to a desired position: . We will take the following procedure:e e y x ,Step 1 Given , find e e y x ,21,θθby solving the two-link inverse kinematics problem. Step 2 Given 21,θθ, obtain . This is a forward kinematics problem. A A y x ,Step 3 Given , find A A y x ,43,θθ by solving another two-link inverse kinematics problem.Example 4.4 Obtain the joint angles of the dog’s legs, given the body position and orientation.Figure 4.3.2 A doggy robot with two legs on the groundThe inverse kinematics problem:Step 1 GivenB B B y x φ,,, find and A A y x ,C C y x , Step 2 Given , findA A y x ,21,θθ Step 3 Given , find C C y x ,43,θθ4.4 Redundant mechanismsA manipulator arm must have at least six degrees of freedom in order to locate its end-effecter at an arbitrary point with an arbitrary orientation in space. Manipulator arms with less than 6 degrees of freedom are not able to perform such arbitrary positioning. On the other hand, if a manipulator arm has more than 6 degrees of freedom, there exist an infinite number of solutions to the kinematic equation. Consider for example the human arm, which has seven degrees of freedom, excluding the joints at the fingers. Even if the hand is fixed on a table, one can change the elbow position continuously without changing the hand location. This implies that there exist an infinite set of joint displacements that lead the hand to the same location. Manipulator arms with more than six degrees of freedom are referred to as redundant manipulators. We will discuss redundant manipulators in detail in the following chapter.。