METHOD FOR OPERATING A ROBOT, DATA MEMORY WITH CORRESPONDING PROGRAM CODE, ROBOT, AND ROBOT SYSTEM
20190381659 · 2019-12-19
Inventors
Cpc classification
B25J9/1607
PERFORMING OPERATIONS; TRANSPORTING
G05B2219/39081
PHYSICS
B25J9/1664
PERFORMING OPERATIONS; TRANSPORTING
International classification
Abstract
The disclosure relates to a method for operating a robot, a data memory with a corresponding program code, the corresponding robot, and a corresponding robot system. Different coordinate system and their relationships to one another are used to position a tool in a target pose. A stationary reference coordinate system originating at a robot foot of the robot and a target coordinate system originating at the tool are specified. Herein, a z-axis of the target coordinate system corresponds to a specified axis of the tool. The orientations of an x-axis and a y-axis of the target coordinate system are calculated by a first cross product of the orientation of the specified axis and a direction vector, that is not parallel thereto, of coordinate axis of the reference coordinate system and by a second cross product of a result of the first cross product and the orientation of the specified axis.
Claims
1. A method for operating a robot for positioning a tool in a target pose, wherein the robot comprises a robot foot and a movable robot arm attached thereto on the distal end of which a robot flange is arranged, on which the tool is held, the method comprising: specifying, by a processor, an axis of the tool; specifying, by the processor, a Cartesian reference coordinate system originating on the robot foot; specifying, by the processor, a Cartesian target coordinate system originating on a point of the tool, a z-axis corresponding to the axis of the tool, and an x-axis and a y-axis each with initially indeterminate orientations; specifying, by the processor, three-dimensional spatial coordinates of the point of the tool and an orientation of the axis, expressed in each case in the reference coordinate system {0}, as part of the target pose for the tool; calculating orientations of the x-axis and the y-axis of the target coordinate system {r} expressed in the reference coordinate system {0} by: (1) a first cross product of the specified orientation of the axis and a direction vector, which is not parallel thereto, of a coordinate axis (x.sub.0, y.sub.0, z.sub.0) of the reference coordinate system {0}, and (2) a second cross product of a result of the first cross product and the specified orientation of the axis expressed in the reference coordinate system; and creating a 44 matrix, which defines a pose .sup.0H.sub.r of the target coordinate system {r} with reference to the reference coordinate system {0} from the orientations of the coordinate axes (.sup.0x.sub.r, .sup.0y.sub.r, .sup.0z.sub.r) of the target coordinate system {r} expressed in each case in the reference coordinate system {0} and the three-dimensional spatial coordinates (.sup.0t.sub.r) of the point of the tool and from an additional 14 line vector.
2. The method of claim 1, wherein the orientation .sup.0y.sub.r of the y-axis of the target coordinate system {r} is calculated by the first cross product as
.sup.0y.sub.r=.sup.0z.sub.rx.sub.0 and the orientation .sup.0x.sub.r of the x-axis of the target coordinate system {r} is calculated by the second cross product as
.sup.0x.sub.r=.sup.0y.sub.r.sub.0z.sub.r, wherein, when the z-axis of the target coordinate system {r} corresponding to the specified axis of the tool is parallel to the x-axis x.sub.0 of the reference coordinate system {0}, the orientations .sup.0x.sub.r and .sup.0y.sub.r are calculated by the first and second cross product as
.sup.0x.sub.r=y.sub.0.sup.0z.sub.r and 0y.sub.r=.sup.0z.sub.r.sup.0x.sub.r, wherein, in each case, x.sub.0 and y.sub.0 indicate the x- or y-axes of the reference coordinate system {0} and .sup.0x.sub.r, .sup.0y.sub.r, .sup.0z.sub.r indicate the coordinate axes of the target coordinate system {r} expressed in the reference coordinate system {0} in vector form.
3. The method of claim 1, wherein a pose .sup.rH.sub.f of the robot flange, corresponding to the pose .sup.0H.sub.r of the target coordinate system {r} and expressed therein, is determined from a specified calibration, which indicates a spatial positional relationship between the point of the tool and the robot flange.
4. The method of claim 3, wherein, for the calibration, a marker in a specified positional relationship to the point of the tool is arranged thereupon or on the robot and is detected by a detection facility, which is arranged in a specified positional relationship to the robot foot, in an auxiliary coordinate system {e} originating at the point of the tool and with an initially indeterminate orientation relative to the target coordinate system {r}, wherein a spatial positional relationship of the auxiliary coordinate system {e} relative to the robot flange is determined from the corresponding detection data of the marker provided by the detection facility, and wherein the pose .sup.rH.sub.f of the robot flange is determined from the orientations of the axes (.sup.0x.sub.r, .sup.0y.sub.r, .sup.0z.sub.r) of the target coordinate system {r} expressed in the reference coordinate system {0} and specified forward kinematics of the robot using an identical origin of the target coordinate system {r} and the auxiliary coordinate system {e}.
5. The method of claim 4, wherein the marker is an optical marker.
6. The method of claim 3, wherein, from the poses .sup.0H.sub.r and .sup.rH.sub.f, a pose .sup.0H.sub.f of the robot flange corresponding to the determined pose .sup.0H.sub.r of the target coordinate system {r} is determined with reference to the reference coordinate system {0} as:
.sup.0H.sub.f=.sup.0H.sub.r.sup.rH.sub.f.
7. The method of claim 1, wherein a control signal for the robot is automatically created from the variables determined and a specified kinematic model of the robot by which the robot is moved out of its current pose in each case such that the tool is transferred into the specified target pose specified therefor.
8. The method of claim 1, wherein a specified kinematic model of the robot is used automatically to check whether the target pose specified for the tool is achievable by the robot, and when the target pose is not achievable, the target coordinate system {r} is rotated by specified incrementally increasing angular amounts alternately in positive and negative directions about its z-axis until an achievable target pose is found, wherein, for each rotation, the direction of rotation is changed with reference to a preceding rotation in each case and a next higher of the specified angular amounts is used in each case, and the check is performed again after each rotation.
9. A robot comprising: a control device for controlling the robot; a data memory; and a processor connected to the data memory for executing program code, and with an interface for receiving specifications, wherein the processor is configured to: specify an axis of a tool; specify a Cartesian reference coordinate system originating on the robot foot; specify a Cartesian target coordinate system originating on a point of the tool, a z-axis corresponding to the axis of the tool, and an x-axis and a y-axis each with initially indeterminate orientations; specify three-dimensional spatial coordinates of the point of the tool and an orientation of the axis, expressed in each case in the reference coordinate system {0}, as part of the target pose for the tool; calculate orientations of the x-axis and the y-axis of the target coordinate system {r} expressed in the reference coordinate system {0} by: (1) a first cross product of the specified orientation of the axis and a direction vector, which is not parallel thereto, of a coordinate axis (x.sub.0, y.sub.0, z.sub.0) of the reference coordinate system {0}, and (2) a second cross product of a result of the first cross product and the specified orientation of the axis expressed in the reference coordinate system; and create a 44 matrix, which defines a pose .sup.0H.sub.r of the target coordinate system {r} with reference to the reference coordinate system {0} from the orientations of the coordinate axes (.sup.0x.sub.r, .sup.0y.sub.r, .sup.0z.sub.r) of the target coordinate system {r} expressed in each case in the reference coordinate system {0} and the three-dimensional spatial coordinates (.sup.0t.sub.r) of the point of the tool and from an additional 14 line vector.
10. A robot system comprising: a robot and a detection facility coupled thereto and arranged in a specified positional relationship thereto for detecting a marker arranged on the robot, wherein the robot system is configured automatically to determine an orientation of the marker from detection data provided by the detection facility, and wherein the robot system is further configured to: specify an axis of a tool; specify a Cartesian reference coordinate system originating on the robot foot; specify a Cartesian target coordinate system originating on a point of the tool, a z-axis corresponding to the axis of the tool, and an x-axis and a y-axis each with initially indeterminate orientations; specify three-dimensional spatial coordinates of the point of the tool and an orientation of the axis, expressed in each case in the reference coordinate system {0}, as part of the target pose for the tool; calculate orientations of the x-axis and the y-axis of the target coordinate system {r} expressed in the reference coordinate system {0} by: (1) a first cross product of the specified orientation of the axis and a direction vector, which is not parallel thereto, of a coordinate axis (x.sub.0, y.sub.0, z.sub.0) of the reference coordinate system {0}, and (2) a second cross product of a result of the first cross product and the specified orientation of the axis expressed in the reference coordinate system; and create a 44 matrix, which defines a pose .sup.0H.sub.r of the target coordinate system {r} with reference to the reference coordinate system {0} from the orientations of the coordinate axes (.sup.0x.sub.r, .sup.0y.sub.r, .sup.0z.sub.r) of the target coordinate system {r} expressed in each case in the reference coordinate system {0} and the three-dimensional spatial coordinates (.sup.0t.sub.r) of the point of the tool and from an additional 14 line vector.
11. The robot system of claim 10, wherein the marker is an optical marker.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0034] Further features, details, and advantages of the present disclosure may be derived from the following description of exemplary embodiments and with reference to the drawings, in which:
[0035]
[0036]
[0037]
DETAILED DESCRIPTION
[0038] In the exemplary embodiments disclosed herein, the described components of the embodiments in each case constitute individual features of the disclosure, which may be considered independently of each other and which develop the disclosure in each case also independently of one another and hence may also be regarded as part of the disclosure individually or in a different combination than that shown. Furthermore, the embodiments described may also be supplemented by further features from among the features of the disclosure already described.
[0039] In the figures, components or elements that are the same, functionally identical or correspond to one another are in each case identified with the same reference characters.
[0040]
[0041] Some calculations are necessary in order to automatically move the conventional robot 1 or the tool 4 from the starting pose 2 into the end pose 3. To this end, in a known method that has been used hitherto, a plane 7 is spanned such that both the axis of symmetry of the tool 4 and an origin or point of origin of the basic coordinate system 5 lie in or are contained in this plane 7. The x-axis x.sub.0 or the second axis 6 may then be defined such that they extend perpendicular to the plane 7.
[0042] In order to move the conventional robot 1 or the tool 4 from the starting pose 2 into the end pose 3, inter alia a rotation 8 indicated here by an arrow is provided. In the example depicted here, in the starting pose 2 and in the end pose 3, the axis of symmetry of the tool 4 has the same orientation, for example, with reference to the basic coordinate system 5 and/or with reference to an external camera, which is arranged in a fixed position with reference to the basic coordinate system 5. It is identifiable that the orientations of the x-axis x.sub.r and the second axis 6 in the end pose 3 are fundamentally different from the corresponding orientations of the x-axis x.sub.r and the second axis 6 in the starting pose 2. This may be attributed to the fact that, to determine its orientation for the end pose 3, the corresponding coordinate system at the tip of the tool 4 is rotated jointly with the plane 7 and accordingly together with the tool 4. Here, this may be identified at a location of a rotated plane 9 corresponding to the plane 7 after rotation 8. This rotation and the associated change in the orientations of the x-axis x.sub.r and the second axis 6 from the starting pose 2 to the end pose 3 enable a marker fixed on the tool 4 to move with a high degree of probability out of a field of view of a camera provided for the tracking thereof. Therefore, this conventional method is inherently rotation-based and thus may cause significant rotational movements. This is undesirable for the purposes of reliable and dependable trackability by the greatest possible degree of visibility of the corresponding marker. To avoid this, here another method is provided for determining the orientations of the coordinate system for the end pose 3 arranged at the tip of the tool 4 as explained below.
[0043]
[0044] Furthermore, in the present case, an optical marker 16 is arranged on the tool 4. This marker 16 is embodied in a manner that is known per se so such that its orientation or pose may be determined unambiguously from each external viewing angle, e.g., from any perspective. In the present case, a camera 17 is provided to detect the marker 16 or its orientation or pose, e.g., ultimately to track the marker 16 and hence the tool 4. Thus, it is possible to determine the orientation of the marker 16 from corresponding image data recorded thereof by the camera 17 and hence to track the tool 4 or the robot 10. To this end, the marker 16 may be arranged in a specified spatial positional relationship to the tool 4, e.g., to the tip thereof. Furthermore, also depicted here is a control device 18 connected to the robot 10 and the camera 17 for controlling the robot 10. The robot 10, the control device 18, and the camera 17 may together form the robot system or be part of the robot system. The control device 18 may also be part of the robot 10 and then, for example, be integrated therein.
[0045]
[0046] The method is started in a method act S1. Here, for example, the robot system may be activated. Similarly, here, it is also possible for a kinematic model of the robot 10, (e.g., model-based forward kinematics of the robot 10), to be specified or provided.
[0047] In a method act S2, a Cartesian reference coordinate system {0} and a Cartesian target coordinate system {r} are specified or defined. Herein, the reference coordinate system {0} is arranged in a fixed position on the robot foot 11. Herein, both an origin of the reference coordinate system {0} and the coordinate axes x.sub.0, y.sub.0, z.sub.0 or orientations thereof, overall therefore a pose of the reference coordinate system {0}, remain unchanged during the operation of the robot 10, in particular, during a movement of the robot arm 12.
[0048] An origin of the target coordinate system {r} is arranged at the tip of the tool 4. A z-axis z.sub.r of the target coordinate system {r} coincides with the specified axis of symmetry 15 of the tool 4.
[0049] In the present case, the aim is ultimately to determine or calculate a 6D pose or 6-DoF pose (DoF: degrees of freedom) of the robot flange 13 such that, when it is achieved, the tip of the tool 4 adopts a specified 3D target position in space and, in addition, the axis of symmetry 15 extends in a specified direction or orientation. In the present example, the tool 4 is a needle-guide sheath (NGS). If the robot flange 13 and thus the tool 4 are in the respective target pose, the corresponding needle may be guided through the guide sheath, e.g., through the tool 4, in order to reach a specific specified position of a target object, (e.g., a patient), from the specified direction. Exact positioning of the tool 4 may be particularly important in a medical context, for example, in order to be able to treat the patient without injuries. However, exact positioning is also important and desirable in other fields of application. Due to the corresponding specification of the axis of symmetry 15 or, in the present case, due to the rotational symmetry of the tool 4 in respect of the specified axis of symmetry 15, the needle guided through the tool 4 is able to reach the specified target position from the specified direction regardless of the angle with which the tool 4 is rotated about the axis of symmetry 15. This is independent of design details of the tool 4, such as, for example, an arrangement of fastening or holding mechanisms, markings, and/or the like, which strictly speaking interrupt purely geometrical rotational symmetry of the tool 4. In the present case, the tool 4 includes at least one rotationally symmetrical internal space, through which the respective needle may be guided in the same way in each case regardless of its rotational position about the axis of symmetry 15. The rotation of the tool 4 about the axis of symmetry 15 or a corresponding angle is hence free and may, therefore, be selected or set in any way desired when positioning the robot flange 13. Hence, the problem of the positioning of the tool 4 in the specified target pose is therefore effectively a 5D problem. However, in order to keep the marker 16 in a field of view of the camera 17 as permanently and continuously as possible, it is, however, desirable to minimize or even avoid rotation of the tool 4 about the axis of symmetry 15.
[0050] A pose of the target coordinate system {r} to be achieved or given in the target pose of the tool 4 is initially only determined in so far that the origin of the target coordinate system {r} is arranged at the tip of the tool 4 and the z-axis z.sub.r of the target coordinate system {r} corresponds to the axis of symmetry 15 of the tool 4 or coincides therewith.
[0051] An assumption or precondition for the method is that any Cartesian coordinate system, inter alia, therefore, the target coordinate system {r}, may be expressed in or with reference to the reference coordinate system {0}.
[0052] In a method act S3, the target pose for the tool 4 is then specified as the z-axis .sup.0z.sub.r of the target coordinate system {r} expressed in the reference coordinate system {0} and as 3D spatial or point coordinates .sup.0t.sub.r of the target point of the tip of the tool 4, corresponding to the origin of the target coordinate system {r}, also expressed in the reference coordinate system {0}.
[0053] In a method act S4, calibration is performed in order to determine a spatial positional relationship between the tip of the tool 4 and the robot flange 13. This calibration is explained in more detail below.
[0054] In a method act S5, the still indeterminate orientations of the x- and y-axes of the target coordinate system {r}, .sup.0x.sub.r or .sup.0y.sub.r, are calculated. To this end, it is initially checked whether in the specified target pose, the axis of symmetry 15, e.g., the z-axis of the target coordinate system {r}, is parallel to or colinear with the x-axis x.sub.0 of the reference coordinate system {0}. If this not the case, the x- and y-axes of the target coordinate system {r} are calculated as:
.sup.0y.sub.r=.sup.0z.sub.rx.sub.0 and .sup.0x.sub.r=.sup.0y.sub.r.sup.0z.sub.r(1),
wherein x stands for the cross product or vector product.
[0055] In the event that the axis of symmetry 15, e.g., z.sub.r or .sup.0z.sub.r is parallel to or colinear with the x-axis x.sub.0 of the reference coordinate system {0}, the x- and y-axes of the target coordinate system {r} are calculated as:
.sup.0x.sub.r=y.sub.0.sup.0z.sub.r and .sup.0y.sub.r=.sup.0z.sub.r.sup.0x.sub.r(2).
[0056] Herein, the coordinate axes x.sub.0, y.sub.0, z.sub.0 of the reference coordinate system {0} may then, for example, be given or defined as column vectors x.sub.0=(1 0 0).sup.T, y.sub.0=(0 1 0).sup.T and z.sub.0=(0 0 1).sup.T.
[0057] The coordinate axes of the target coordinate system {r} may then be combined as column vectors of a rotation matrix .sup.0R.sub.r, for example:
.sup.0R.sub.r=[.sup.0x.sub.r .sup.0y.sub.r .sup.0z.sub.r],
which indicates the target orientation of the target coordinate system {r} based on the reference coordinate system {0}.
[0058] In a method act S6, a homogeneous matrix .sup.0H.sub.r is then created from the rotation matrix .sup.0R.sub.r, the three spatial coordinates .sup.0t.sub.r as a further column vector and an additional 14 line vector of the shape (0,0,0,1). The homogeneous matrix .sup.0H.sub.r is, therefore, a 44 matrix, which defines the pose of the target coordinate system {r} with reference to the reference coordinate system {0}.
[0059] In a method act S7, a homogeneous matrix .sup.0H.sub.f is calculated, which indicates a target pose of the robot flange 13 corresponding to the target pose of the target coordinate system {r} calculated in the method act S6 with reference to the reference coordinate system {0}. Herein:
.sup.0H.sub.f=.sup.0H.sub.r .sup.rH.sub.f,
wherein .sup.rH.sub.f indicates the corresponding pose of the robot flange 13 with reference to the target coordinate system {r}.
[0060] Herein, .sup.rH.sub.f may be determined in the context of the calibration in the method act S4. Let {e} be a Cartesian auxiliary coordinate system originating at the tip of the tool 4. Herein, the auxiliary coordinate system {e} may initially have an arbitrary orientation. Advantageously, the auxiliary coordinate system {e} may be defined by a calibration element. This calibration element may be an optical pointer, for example, a needle-shaped or needle-like auxiliary tool with an optical marker arranged thereon. This auxiliary tool may then be guided like the aforementioned needle through the tool 4 so that a tip of the auxiliary tool coincides with the tip of the tool 4. Herein, a variable or dimension of the auxiliary tool is known so that the detection of the optical marker in a specified positional relationship to the tip of the auxiliary tool arranged on the auxiliary tool enables the current position of the tip of the auxiliary tool, and hence in this case the tip of the tool 4 and the origin of the target coordinate system {r} and also the auxiliary coordinate system {e}, to be determined in each case. To this end, the optical marker arranged on the auxiliary tool may be detected by the camera 17, wherein, to determine the pose thereof, corresponding detection data provided by the camera 17, e.g., camera data or image data, may be processed by the control device 18.
[0061] Additionally, or alternatively to this auxiliary tool, the optical marker 16 may be used when this is arranged on the tool in a specified, (e.g., constant), positional relationship to the tip of the tool 4. It then is possible to determine a homogeneous matrix .sup.fH.sub.e from the determined pose of the marker 16 or of the arranged optical marker arranged on the auxiliary tool and a current pose of the robot flange 13 at the corresponding time of this calibration in each case. This homogeneous matrix .sup.fH.sub.e indicates the current pose of the auxiliary coordinate system {e} at the time of the calibration with reference to a Cartesian coordinate system {f} of the robot flange 13. Herein, a translatory portion of the homogeneous matrix .sup.fH.sub.e is given as .sup.ft.sub.e, .sup.ft.sub.e; e.g., is a distance or translation vector between the auxiliary coordinate system {e} and the coordinate system {f} of the robot flange 13. The coordinate system {f} of the robot flange 13 may describe the pose thereof or in order to describe the pose thereof without further coordinate transformations. An origin of this coordinate system {f} of the robot flange 13 may be arranged in a center of the robot flange 13. The current pose of the robot flange 13 may be determined or known from a robot control of the robot 10, e.g., in each case using current measured joint coordinates or joint settings and a kinematic model or forward kinematics of the robot 10.
[0062] Because both the target coordinate system {r} and the auxiliary coordinate system {e} have their respective origins at the tip of the tool 4, the following applies:
.sup.ft.sub.r=.sup.ft.sub.e(3).
[0063] In addition, it is possible to derive a direction of the auxiliary tool or the tool 4, e.g., the axis of symmetry 15 at the time of the calibration from the detected pose of the marker 16 or of the marker arranged on the auxiliary tool. This is expressed in the reference coordinate system {0} as .sup.0z.sub.r. A corresponding application of equations (1) or (2) supplies the associated rotation matrix .sup.0R.sub.r and finally
.sup.fR.sub.r=.sup.0R.sub.f.sup.T 0R.sub.r,
wherein .sup.0R.sub.f indicates the rotational portion of the pose of the robot flange 13 or of the coordinate system of the robot flange 13 with reference to the reference coordinate system {0} or the corresponding homogeneous matrix and, as described, is known or may be determined from the robot control or the forward kinematics of the robot 10.
[0064] The homogeneous matrix .sup.rH.sub.f is then determined from the result .sup.fR.sub.r and relationship (3) so that the homogeneous matrix .sup.0H.sub.f is determined completely.
[0065] In a method act S8, it is then checked, (for example, using a model of the robot 10), whether the associated target pose .sup.0H.sub.f of the robot flange 13 determined for the specified target position of the tool 4 may be achieved. Herein, a current pose of the robot 10 and any possible technical limitations of the robot 10 and/or limitations caused by a current environment of the robot 10 are taken into account. If it is not possible to achieve or set the pose .sup.0H.sub.f for the robot flange 13, the method follows a path 20 to a method act S9.
[0066] In the method act S9, the target coordinate system {r} is rotated according to a specified sequence based on the determined orientation for the target pose. In the present case, the sequence given is (, , 2, 2, . . . , k, k, . . . ), wherein is a relatively small angle of, in the present case, 5 for example, the preliminary sign indicates a direction of rotation and k is a positive integer. This introduces a minimally required rotation of the target coordinate system {r}. After each such rotation, the method follows a path 21 to a method act S10.
[0067] In the method act S10, the associated resulting target pose .sup.0H.sub.f for the robot flange 13 is determined for the current rotated pose or orientation of the target coordinate system {r} in each case.
[0068] Then, following a path 22, another check is performed as to whether the new, (e.g., in each case current), target pose .sup.0H.sub.f of the robot flange 13 may be achieved. To this end, therefore, the method acts S8, S9, and S10 may be passed through in a looped or iterative manner until a target pose .sup.0H.sub.f for the robot flange 13 that may be achieved or set by the robot 10 is found.
[0069] As soon as an achievable target pose .sup.0H.sub.f for the robot flange 13 has been found, the method follows a path 23 to a method act S11.
[0070] In the method act S11, the control device 18 creates a control signal for the robot 10 by which the robot flange 13 may be moved or transferred from the current pose of the robot 10 into the specific target pose .sup.0H.sub.f.
[0071] Then, this control signal is communicated to the robot 10 in a method act S12 and accordingly the robot flange 13 positioned in the specific target pose .sup.0H.sub.f as a result of which the tool 4 reaches the specified target pose.
[0072] In contrast to the conventional method initially described with reference to
[0073] Although the disclosure has been illustrated and described in detail by the exemplary embodiments, the disclosure is not restricted by the disclosed examples and the person skilled in the art may derive other variations from this without departing from the scope of protection of the disclosure. It is therefore intended that the foregoing description be regarded as illustrative rather than limiting, and that it be understood that all equivalents and/or combinations of embodiments are intended to be included in this description.
[0074] It is to be understood that the elements and features recited in the appended claims may be combined in different ways to produce new claims that likewise fall within the scope of the present disclosure. Thus, whereas the dependent claims appended below depend from only a single independent or dependent claim, it is to be understood that these dependent claims may, alternatively, be made to depend in the alternative from any preceding or following claim, whether independent or dependent, and that such new combinations are to be understood as forming a part of the present specification.