Читать книгу Robot Modeling and Control - Mark W. Spong - Страница 53

2.1 Representing Positions

Оглавление

Before developing representation schemes for points and vectors, it is instructive to distinguish between the two fundamental approaches to geometric reasoning: the synthetic approach and the analytic approach. In the former, one reasons directly about geometric entities (e.g., points or lines), while in the latter, one represents these entities using coordinates or equations, and reasoning is performed via algebraic manipulations. The latter approach requires the choice of a reference coordinate frame. A coordinate frame consists of an origin (a single point in space), and two or three orthogonal coordinate axes, for two- and three-dimensional spaces, respectively.

Consider Figure 2.1, which shows two coordinate frames that differ in orientation by an angle of 45°. Using the synthetic approach, without ever assigning coordinates to points or vectors, one can say that x0 is perpendicular to y0, or that v1 × v2 defines a vector that is perpendicular to the plane containing v1 and v2, in this case pointing out of the page.


Figure 2.1 Two coordinate frames, a point p, and two vectors v1 and v2.

In robotics, one typically uses analytic reasoning, since robot tasks are often defined using Cartesian coordinates. Of course, in order to assign coordinates it is necessary to specify a reference coordinate frame. Consider again Figure 2.1. We could specify the coordinates of the point p with respect to either frame o0x0y0 or frame o1x1y1. In the former case we might assign to p the coordinate vector (5, 6) and in the latter case ( − 3, 3). So that the reference frame will always be clear, we will adopt a notation in which a superscript is used to denote the reference frame. Thus, we write


Geometrically, a point corresponds to a specific location in space. We stress here that p is a geometric entity, a point in space, while both and are coordinate vectors that represent the location of this point in space with respect to coordinate frames o0x0y0 and o1x1y1, respectively. When no confusion can arise, we may simply refer to these coordinate frames as frame 0 and frame 1, respectively.

Since the origin of a coordinate frame is also a point in space, we can assign coordinates that represent the position of the origin of one coordinate frame with respect to another. In Figure 2.1, for example, we may have


Thus, o01 specifies the coordinates of the point o1 relative to frame 0 and o10 specifies the coordinates of the point 00 relative to frame 1. In cases where there is only a single coordinate frame, or in which the reference frame is obvious, we will often omit the superscript. This is a slight abuse of notation, and the reader is advised to bear in mind the difference between the geometric entity called p and any particular coordinate vector that is assigned to represent p. The former is independent of the choice of coordinate frames, while the latter obviously depends on the choice of coordinate frames.

While a point corresponds to a specific location in space, a vector specifies a direction and a magnitude. Vectors can be used, for example, to represent displacements or forces. Therefore, while the point p is not equivalent to the vector v1, the displacement from the origin o0 to the point p is given by the vector v1. In this text, we will use the term vector to refer to what are sometimes called free vectors, that is, vectors that are not constrained to be located at a particular point in space. Under this convention, it is clear that points and vectors are not equivalent, since points refer to specific locations in space, but a free vector can be moved to any location in space. Thus, two vectors are equal if they have the same direction and the same magnitude.

When assigning coordinates to vectors, we use the same notational convention that we used when assigning coordinates to points. Thus, v1 and v2 are geometric entities that are invariant with respect to the choice of coordinate frames, but the representation by coordinates of these vectors depends directly on the choice of reference coordinate frame. In the example of Figure 2.1, we would obtain


In order to perform algebraic manipulations using coordinates, it is essential that all coordinate vectors be defined with respect to the same coordinate frame. In the case of free vectors, it is enough that they be defined with respect to “parallel” coordinate frames, that is, frames whose respective coordinate axes are parallel, since only their magnitude and direction are specified and not their absolute locations in space.

Using this convention, an expression of the form , where and are as in Figure 2.1, is not defined since the frames o0x0y0 and o1x1y1 are not parallel. Thus, we see a clear need not only for a representation system that allows points to be expressed with respect to various coordinate frames, but also for a mechanism that allows us to transform the coordinates of points from one coordinate frame to another. Such coordinate transformations are the topic for much of the remainder of this chapter.

Robot Modeling and Control

Подняться наверх