Prediction of a potential collision of a robot on a trajectory, planning a robot trajectory, operation of a robot, and training of a data processing unit for ascertaining a distance value
By employing machine learning-based data processing to predict collision options for robots on trains within virtual space areas, the procedure addresses the challenge of efficient collision prediction, enhancing train planning and operation.
Patent Information
- Application Number
- PCT/EP2024/073311
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-14
- Filing Date
- 2024-08-20
- Publication Date
- 2025-03-20
AI Technical Summary
Existing technologies lack an efficient method to predict collision options for robots on trains, which is crucial for improving train planning and operation, especially in complex environments with varying start and end poses.
A procedure that uses machine learning-based data processing to determine distance values between a robot and objects within a virtual space area, predicting collision options by simulating the robot's path from start to end pose.
Enables precise and reliable forecasting of collision options for robots on trains, allowing for improved train planning and operation by avoiding collisions in complex environments.
Smart Images

Figure 00000024_0000
Description
[0001] Description
[0002] Predicting a collision possibility of a robot on a path, planning a path of a robot, operating a robot and training a data processing to determine a distance value
[0003] The present invention relates to a method for predicting a collision possibility of a robot on a path, a method for planning a path of a robot and / or for operating a robot on the basis of a predicted collision possibility of the robot, a method for training a data processing system based at least partially on machine learning for determining a distance value which depends on a distance between an object and a boundary of a virtual spatial region filled by an image of the robot by traversing a path from the start to the end pose, and a system or computer program or computer program product for carrying out at least one of the methods.
[0004] By predicting the possibility of a robot colliding on a path, path planning and / or operation of the robot can be improved.
[0005] Accordingly, it may be an object of the present invention to improve a prediction of a collision possibility of a robot on a path, a path planning for a robot, an operation of a robot and / or a data processing for determining a distance value that depends on a distance between an object and a boundary of a virtual spatial area filled by an image of the robot by traversing a path from the start to the end pose.
[0006] This object is achieved by a method having the features of claims 1, 11, 12, and 13, respectively. Claims 14 and 15 protect a system, computer program, or computer program product for carrying out a method described herein. The subclaims relate to advantageous developments. According to one embodiment of the present invention, a method for predicting a collision possibility of a robot while traveling or on a path comprises the steps:
[0007] - Providing a starting pose for the robot;
[0008] - Providing an end pose of the robot, which in a preferred embodiment may be identical to the start pose, in particular provided by its provision, or in a particularly preferred embodiment may be different from the start pose;
[0009] - Providing at least one object to be checked for the possibility of collision with the robot, which is referred to here without restriction of generality as the first object; and
[0010] - Determination of a distance value, which is accordingly referred to as the first distance value without loss of generality and is determined by a distance between
[0011] - the first object and
[0012] - a boundary of a virtual spatial area, which is (as a whole) filled or traversed or swept over by an image, in particular a data model, of the robot by (virtual or simulated) traveling along a preferably predetermined path from the start to the end pose, or is defined thereby, in particular a “swept volume”, by means of data processing based at least partly on machine learning on the basis of
[0013] - the provided starting pose,
[0014] - the provided final pose and
[0015] - of the provided first object; wherein a collision possibility of the robot on the path is predicted on the basis of the first distance value, in particular whether a collision of the robot, in particular with the first object, is (expected) to occur or whether a collision of the robot, in particular with the first object, is (expected) to occur.
[0016] One embodiment of the present invention is based on the idea of implicitly or indirectly representing a virtual spatial area or a "swept volume" by means of data processing based at least partially on machine learning, which is filled, traversed, or occupied by an image, in particular a data model, of the robot by (virtually or simulated) traversing a path from the start to the end pose, or is defined by this image (as a whole, in particular successively), and of using this data processing to predict a potential collision of the robot with an object on this path. Advantageously, different start and end poses and correspondingly different paths and virtual spatial areas are represented by the same, appropriately trained data processing and can be checked for the potential for collision with different objects.
[0017] Accordingly, the procedure in an advantageous further development comprises the following steps:
[0018] - Providing one or more additional checks for the possibility of collision with the
[0019] Robot objects to be inspected; and
[0020] - (in each case) determining a further distance value, which, preferably in the same way as the first distance value, depends on the distance between the first object and the boundary, on a distance, preferably defined in the same way as the distance between the first object and the boundary, between the (respective) further object and the boundary of the virtual spatial area filled by the image of the robot by traveling along the path from the start pose to the end pose, by means of the data processing based at least partly on machine learning on the basis of the provided start pose, provided end pose and the provided further object; wherein a possibility of collision of the robot on the path is predicted on the basis of this further distance valueAe, in particular whether a collision of the robot, in particular with this orthe respective further object, (is expected) to occur or (is expected) no collision of the robot, in particular with the (respective) further first object, occurs.
[0021] Preferably, the first and the or one or more of the further distance values can be determined one after the other or, in particular on GPUs or the like, at least partially in parallel. The data processing based at least partially on machine learning can, in one embodiment, be distributed across multiple computing devices. In one embodiment, an (first or further) object to be checked has a, preferably two- or three-dimensional, spatial point, preferably in a, in particular Cartesian or three-dimensional, working area of the robot, and can, in particular, be such a spatial point. In one embodiment, a distance between an object and a boundary is a shortest and / or Euclidean and / or one-dimensional or scalar distance. In one embodiment, predicting a collision possibility of the robot on the path comprises predicting whether a collision of the robot, in particular with the respectiveone of the object(s), or (presumably) no collision of the robot, in particular with the object(s), occurs.
[0022] In one embodiment, in a further development, a determined distance value comprises a signedAr and / or continuousAr or quasi-continuousAr value; in particular, it can have the distance, directed in one embodiment, or its (numerical) value, in one embodiment, the distance, directed in a further development, or its (numerical) value. In a further development, on the basis of such a distance value, it is predicted that a collision of the robot on the path is likely to occur if the distance falls below a predetermined limit value, preferably a predetermined minimum (safety) distance, in particular (at least) if the distance is negative.
[0023] This allows collision possibilities to be predicted particularly precisely and / or reliably in one version.
[0024] Additionally or alternatively, in a further development, a determined distance value in one embodiment comprises a discrete, in a particularly preferred development binary, value which in one embodiment indicates whether a collision is likely to occur or is present or not.
[0025] This allows data processing to be better trained in one execution.
[0026] In one embodiment, the determined distance value is a one-dimensional value, preferably the aforementioned discrete or (quasi-)continuous, in particular signed, value. This advantageously reduces the computational effort. In one embodiment, the determined distance value is a multi-dimensional value, preferably comprising the aforementioned discrete and the aforementioned (quasi-)continuous value, in particular signed. This allows training to be improved in one embodiment.
[0027] In one embodiment, the robot comprises a robot arm and / or a mobile base, and can in particular consist thereof. In one embodiment, the robot, in particular its robot arm and / or its mobile base, has three or more, preferably at least six, in one embodiment at least seven, (movement) degrees of freedom or (movement) axes, in particular translational and / or rotational degrees of freedom or axes, in particular joints. The present invention is particularly suitable for such robots, in particular due to the complex and / or variable movement (possibility) and / or application conditions, in particular environments. The coordinates q, which describe or specify the (movement) degrees of freedom or (movement) axes of the robot, in one embodiment span a configuration space of the robot. Surface points x of the robot or its image in a Cartesian or Euclidean workspace of the robot and the coordinates q orThe robot's configuration and workspace are converted to each other in a conventional manner by a (forward or backward) transformation (x = 7(g)). In one embodiment, the robot's workspace is a Cartesian or Euclidean, preferably three-dimensional, space in which an outer contour of the robot or its image is located or can move. The robot's configuration space is a space whose dimension corresponds to the robot's (motion) degrees of freedom and in which each pose of the robot is uniquely determined by a point.
[0028] In one embodiment, the data processing based at least partially on machine learning comprises, and can in particular consist of, at least one artificial neural network, preferably at least one deep neural network. Such data processing allows distance values to be determined particularly precisely, easily, quickly, and / or reliably. Accordingly, in one embodiment, machine learning comprises training the data processing, preferably the artificial neural network(s); it can in particular comprise supervised or unsupervised machine learning.
[0029] In one embodiment, the path from the start to the end pose, through whose (virtual or simulated) travel the image of the robot fills the virtual space, is a straight path, preferably a straight path predefined in a workspace or, more preferably, a configuration space of the robot. If q s the starting pose, qg the final pose and te [0, 1] a path parameter, the virtual space area can be defined, for example, by SV(q s , q g ) = j G [0 , i] V((1-t)-q s + tq g ). This makes it particularly easy to specify the paths and / or run them virtually or simulated, or to determine the virtual space accordingly.
[0030] In one embodiment, the path of the robot from the start to the end pose, through whose (virtual or simulated) travel the image of the robot fills the virtual spatial area, is a path that is curved once or multiple times, preferably in a configuration or particularly preferably workspace of the robot, or in a particularly advantageous development, a spline path. A curved path can also have straight path sections. This allows the paths to be specified particularly flexibly or the virtual space to be determined accordingly, adapted to the situation. A (specified) spline path or another defined curved path in the workspace is particularly advantageous in order to realize a smoother movement of a robot (end) flange.
[0031] In one embodiment, one or more, preferably a fixed (predetermined) number of, intermediate poses of the robot are provided to determine a distance value, in particular between the start and end pose and / or on the path, and the distance value is determined by means of data processing on the basis of these provided intermediate pose(s). In one embodiment, this allows the data processing to be trained particularly advantageously, in particular to enable faster machine learning and / or to deliver better results.
[0032] In one embodiment, one or more of the objects to be checked for the possibility of collision with the robot, in particular the first and / or the one or more of the further objects, are provided based on the robot's surroundings, preferably as a point cloud or the like, which is captured, in particular by sensors, in one embodiment using at least one camera, in particular at least one depth or 3D camera. This allows a particularly advantageous, in particular simple, reliable, and / or precise, prediction of the possibility of collision between the robot and the surroundings or obstacles.
[0033] In one embodiment, one or more of the objects to be checked for collision potential with the robot, in particular the first and / or the one or more of the further objects, are provided in a workspace of the robot, in a further development as spatial points peSR 3This allows the possibility of a collision between the robot and the environment or obstacles to be predicted particularly advantageously, in particular simply, reliably and / or precisely.
[0034] In one execution the starting pose q s eSR f and / or the final pose q g e9 in a configuration space .K f of the robot with degrees of freedom or (motion) axes. This makes it particularly easy to specify the paths and / or execute them virtually or simulated, and to determine the virtual space accordingly.
[0035] In one embodiment, when determining a distance value by means of data processing, an additional one- or multi-dimensional output value, in an advantageous development, a kinematic variable transformed between a workspace and a configuration space of the robot, and in a particularly advantageous embodiment, a position of one or more reference points, in one embodiment, joint(s), of the robot in the workspace, is determined. As a result, in one embodiment, the data processing can be trained particularly advantageously, in particular, machine learning can be faster and / or it can deliver better results, in particular by (implicitly) (better) learning such a transformation between configuration and workspace, which influences the determination of the distance value when the object(s)Ae are provided in the workspace and the start and end pose in the configuration space.
[0036] According to one embodiment of the present invention, a method for planning a path of a robot comprises the steps of: - providing a path of the robot, in one embodiment using a corresponding (initial) path planning, for example on the basis of predetermined target positions and / or orientations of robot-fixed references, in particular a TCP, robot-guided tool or the like and / or on the basis of predetermined quality criteria such as energy, time, path length or the like; and
[0037] - predicting a collision possibility of the robot on this path according to a method described here; wherein the start and end pose and, in a further development, the intermediate pose(s) for predicting a collision possibility are provided on the basis of the provided path, in one embodiment this provided path has this start and end pose (and optionally intermediate pose(s)) and, in a further development, the path, by traveling along which the virtual spatial area is filled, in particular as a partial or path section, and the provided path is evaluated on the basis of this prediction, in one embodiment is modified or replaced by an alternative provided path if it is predicted that a collision of the robot, in particular with the object(s) provided for data processing, will occur, wherein modified oralternative path, preferably a collision possibility of the robot is again predicted according to a method described here and this is repeated until a termination criterion is met, for example a predetermined maximum number of attempts is reached, or it is predicted that on the modified or alternative path (presumably) no collision of the robot, in particular with the object(s) provided for data processing, will occur.
[0038] According to one embodiment of the present invention, a collision possibility of the robot on a path is predicted according to a method described here, in a further development a path of the robot is planned according to a method described here, and the robot is operated on the basis of this prediction, in particular the planned path, in particular the robot is driven along the planned path or, if it is predicted that a collision of the robot, in particular with the object(s) provided for data processing, will occur, a corresponding avoidance reaction is carried out, for example the robot is stopped, a collision avoidance movement is carried out, the path is replanned or the like. According to one embodiment of the present invention, a method for training one or more...the data processing based at least partially on machine learning for, preferably as described here, determining a distance value which, preferably in the manner described here, depends on a distance between an object and a boundary of a virtual spatial area filled by traveling along a preferably predetermined path from a or the start pose to a or the end pose of a or the image of the robot, on the basis of the provided start pose, the provided end pose and the provided object, the steps of:.
[0039] - Providing several (training) sets of starting and ending poses as well as intermediate poses in a further training course; for each of these sets
[0040] - a virtual spatial area filled by the image of the robot is determined by following a preferably predetermined path from the start pose to the end pose, in a further development via the intermediate pose(s), of the respective set;
[0041] - several objects, in particular at least one object within the virtual spatial area and / or at least one object outside the virtual spatial area and / or at least one object whose distance from the image of the robot and / or the boundary of the virtual spatial area is less than half of a maximum extent of the image of the robot and / or virtual spatial area, in other words in the vicinity of the image of the robot or the boundary of the virtual spatial area, are provided; and for these objects, respectively
[0042] - a distance value which, preferably in the manner described here or in the same way as when predicting a collision possibility, depends on a distance between the respective object and the boundary of the respective virtual spatial area; and
[0043] - Training the data processing on the basis of the provided sentences, provided objects and distance values determined for them, preferably in such a way that the data processing maps the provided sentences and objects to the determined distance values or assigns the determined distance values to the provided sentences and objects.
[0044] According to one embodiment of the present invention, a system, in particular hardware and / or software, in particular program technology, is set up to carry out a method described here.
[0045] According to one embodiment of the present invention, a system comprises:
[0046] - means for providing a starting pose of the robot;
[0047] - means for providing a final pose of the robot;
[0048] - in a further development, means for providing at least one intermediate pose;
[0049] - means for providing a first object to be checked for the possibility of collision with the robot and, in a further development, at least one further object to be checked for the possibility of collision with the robot; and
[0050] - data processing based at least partially on machine learning for determining a first distance value, which depends on a distance between the first object and a boundary of a virtual spatial area filled by an image of the robot by traversing a path from the start pose to the end pose, in a further development via the intermediate pose(s), on the basis of the provided start pose, the provided end pose (and optionally provided intermediate pose(s)) and the provided first object, and in a further development of a further corresponding distance value for the (respective) further object; and
[0051] - means for predicting a collision possibility of the robot on the path on the basis of the first distance value and, if applicable, the further distance value(s)Ae.
[0052] Additionally or alternatively, according to an embodiment of the present invention, a system comprises:
[0053] - means for providing a plurality of sets of start and end poses and, in a further development, at least one intermediate pose;
[0054] - means for, for these sentences respectively,
[0055] - Determining a virtual spatial area filled by the image of the robot by traversing a path from the start to the end pose, in a further development via the intermediate pose(s), of the respective set, and - Providing a plurality of objects, in particular at least one object within the virtual spatial area and / or at least one object outside the virtual spatial area and / or at least one object whose distance from the robot and / or a boundary of the virtual spatial area is less than half of a maximum extension of the robot and / or virtual spatial area, and
[0056] - Determining - for these objects - a distance value which depends on a distance between the respective object and the boundary of the respective virtual spatial area; and
[0057] - Means for training the data processing based on the provided sentences, provided objects and distance values determined for them.
[0058] Additionally or alternatively, according to an embodiment of the present invention, a system comprises:
[0059] - means for providing a path of the robot;
[0060] - means for predicting a collision possibility of the robot on this path according to a method described here; and
[0061] - Means for evaluating the provided track based on this forecast.
[0062] Additionally or alternatively, according to an embodiment of the present invention, a system comprises:
[0063] - means for predicting a collision possibility of a robot on a path according to a method described herein; and
[0064] - Means of operating the robot based on this forecast.
[0065] A system and / or means within the meaning of the present invention can be designed in hardware and / or software, in particular at least one, in particular digital, processing unit, in particular a microprocessor unit (CPU), graphics card (GPU) or the like, preferably connected to a memory and / or bus system for data or signals, and / or one or more programs or program modules. The processing unit can be designed to execute instructions implemented as a program stored in a memory system, to detect input signals from a data bus, and / or to output signals to a data bus. A memory system can have one or more, in particular different, storage media, in particular optical, magnetic, solid-state, and / or other non-volatile media. The program can be designed in such a way that it embodies the methods described here oris capable of executing, so that the processing unit can carry out the steps of such methods and thus in particular predict a collision possibility of a robot or plan a path of a robot or operate a robot or train data processing that is at least partially based on machine learning. In one embodiment, a computer program product can have, in particular be, a storage medium, in particular a computer-readable and / or non-volatile, for storing a program or instructions or with a program or instructions stored thereon. In one embodiment, execution of this program or these instructions by a system or a controller, in particular a computer or an arrangement of several computers, causes the system or the controller, in particular the computer(s), to execute a method orto carry out one or more of its steps, or the program or instructions are set up to do so.
[0066] In one embodiment, one or more, in particular all, steps of the method are fully or partially computer-implemented or one or more, in particular all, steps of the method are fully or partially automated, in particular by the system or its means.
[0067] In one embodiment, the system comprises the robot.
[0068] In one embodiment, the data processing based at least partially on machine learning maps the provided start pose, provided end pose, and the provided (corresponding) object, as well as, if applicable, the provided intermediate pose(s), to the corresponding distance value and, if applicable, the additional output value. In particular, determining a distance value and, if applicable, an additional output value by means of data processing based at least partially on machine learning on the basis of a provided start pose, provided end pose, and a provided object, as well as, if applicable, one or more provided intermediate poses, can comprise, in particular, such mapping. As already mentioned, the start and end poses can also coincide or be identical.Then, following a path from such a start pose to such an end pose is, in the sense of the present invention, a zero movement of the robot (image), and the virtual space area filled by an image of the robot by following a path from such a start pose to such an end pose is the virtual space area filled by the image of the robot in this start / end pose.
[0069] Providing in the sense of the present invention can in particular comprise generating and / or transmitting and / or receiving or obtaining and / or retrieving, in particular loading from a memory or buffer, and / or keeping ready, in one embodiment in a memory or buffer, in particular be, preferably for (further) use in a method described here.
[0070] Further advantages and features emerge from the subclaims and the exemplary embodiments. The following shows, partly schematically:
[0071] Fig. 1 : a system according to an embodiment of the present invention; and
[0072] Fig. 2: a method according to an embodiment of the present invention.
[0073] Fig. 1 shows a system according to an embodiment of the present invention with a robot and a controller 30. For clarity, the robot consists of a proximal member 10, which is rotatably mounted in a pivot joint 11, and a distal (end) member 12, which is rotatably mounted on the proximal member 10 in a pivot joint 13. An image of this robot is indicated in Fig. 1 by two spheres enclosing the joints 11, 13 and two cylinders enclosing the members 10, 12. Accordingly, the configuration space of this robot is defined by its joint coordinates q = [qi , q2] Tspanned, its workspace by Cartesian space, in which - again by way of example for a clearer representation - a first Ar object or spatial point pi and a further Ar object or spatial point p2 are indicated. In order to plan a path on which the robot moves past the two spatial points pi, p2 without collision, a data processing unit 31 comprising an artificial neural network is trained, or a data processing unit trained in this way is used.
[0074] For training, a set of start and end poses {q s , i, q g , provided (Fig. 2: step S10) and for each set a virtual spatial area filled by the image of the robot is determined by traversing a path from the start to the end pose of the respective set (Fig. 2: step S20).
[0075] In Fig. 1, such virtual spatial areas are indicated by hatching purely as an example for illustration, for example
[0076] - a virtual spatial area for a starting pose indicated in Fig. 1 by a solid line, in which both limbs 10, 12 in Fig. 1 are horizontally extended, an end pose in which the distal limb 12 is pivoted upwards by 90° while the proximal limb 10 is still horizontally extended, and a straight path [qi = 0°, q2 = t-90°], te [0, 1],
[0077] - a virtual spatial area for the end pose described above as a starting pose in which the distal limb 12 is pivoted upwards by 90° from the horizontal with the proximal limb 10 horizontally extended, an end pose in which the proximal limb 10 is pivoted upwards by 45° without relative movement of the distal limb 12 to the proximal limb, and a straight path [qi = t-45°, q2 = 90°], fe [0, 1], and
[0078] - a virtual spatial area for the final pose described above as a starting pose in which the proximal limb 10 is pivoted upwards by 45° from the horizontal and the distal limb 12 is pivoted upwards by 90° relative to the distal limb 12 from the extended orientation or alignment, an end pose in which the proximal limb 10 is pivoted upwards by a further 45° and the distal limb 12 is pivoted backwards or backwards by -90° relative to the proximal limb 10, and a straight path [qi = t-45°, q2 = (1-t)-90°], te [0, 1],
[0079] Several objects in the form of spatial points are provided and for each of these objects a distance value is determined which comprises a distance between the respective object and the boundary of the respective virtual spatial area as a signed continuous value and / or a binary value which indicates whether the respective object lies within the virtual spatial area or not (Fig. 2: step S30).
[0080] In Fig. 1, two such spatial points pi, p2 are again indicated purely for illustration purposes.
[0081] While further sets and objects are provided and distance values are determined for them, and / or after several sets and objects have been provided and distance values have been determined for them, the data processing 31 is trained on the basis of these provided sets and objects and the distance values determined for them (Fig. 2: step S40) in such a way that it maps start and end poses and spatial points to distance values: [q s , q9, p] {dist, flag} with the signed distance dist and the binary value flag = {collision; no collision}. In a variation, one of these two distance value components can be omitted.
[0082] After the data processing unit 31 has been trained in this way (Fig. 2: step S50: "Y"), path planning is now carried out. For this purpose, an initial path is provided in a step S100 and divided into shorter partial paths in a step S110. For each of these (partial) paths, a collision possibility of the robot on this (partial) path is predicted by means of the trained data processing unit 31 (Fig. 2: step S120), whereby the beginning and end of the respective partial path are provided as start and end poses (Fig. 2: step S112) and as objects, for example, the spatial points pi, p2 explained above are provided as the first and further objects (Fig. 2: step S114), and the corresponding first and further distance values are determined by means of the trained data processing unit 31 (Fig.2: Step S116) and it is predicted that the robot is likely to collide with the corresponding spatial point if the signed distance dist is less than zero or a predetermined positive minimum distance between the boundary and the spatial point lying outside the spatial area or the flag = "collision".
[0083] If it is predicted for at least one of the partial paths that the robot is likely to collide with one of the spatial points (Fig. 2: step S130: "Y"), the initially provided path is assessed as unsuitable and modified or replaced by an alternative path (Fig. 2: step S140) and steps S110 - 130 or 140 are repeated until a path is found for whose partial paths it is predicted that the robot is not likely to collide with any of the spatial points (Fig. 2: step S130: "N").
[0084] This path is then followed by the robot (Fig. 2: step S150). Again purely for illustrative purposes, such a collision-free path is indicated in Fig. 1, on which the robot moves past the two spatial points pi, p2. By following this path with the image of the robot, the image fills the virtual spatial area SV indicated by the hatched lines in Fig. 1. It can be seen that both spatial points pi, p2 each have a positive distance to the boundary G of the spatial area SV or lie outside the spatial area SV.
[0085] The exemplary embodiment illustrates that the data processing unit 31, trained on the basis of various sets of start and end poses and spatial points, can determine a distance value for different (partial) paths and for different potential obstacles in the form of spatial points. This allows different paths to be checked for collisions easily, quickly, and reliably.
[0086] It should be emphasized again that the exemplary embodiment serves only as an illustration and has therefore been greatly simplified. In practice, more complex robots will often be present and / or considerably more spatial points and sets of start and end poses will be used to train the data processing, preferably start and end poses distributed throughout the configuration area of the robot as well as spatial points in the vicinity of the robot (image) and / or the boundary of the (respective) virtual spatial area for the (respective) trajectory between the (respective) start and end pose. The two spatial points pi, p2 in Fig. 1 are used for the sake of clarity to explain both the training and the fully planned trajectory. The above-explained subdividing of the trajectory and checking of the partial trajectories for collision can also be omitted and / or start and end poses can be defined for one or more poses to be checked.Path points match, so that the virtual space area then corresponds to the virtual space filled by the image of the robot in this start / end pose. In the present disclosure, "has an X" generally does not imply an exhaustive list, but is a shortened form of "has at least one X" and also includes "has two or more Xs" and "has Y in addition to X." Although exemplary embodiments have been explained in the preceding description, it should be noted that numerous modifications are possible.
[0087] For example, path planning and / or training can be performed (each) on separate computing devices, or the planned path can be made available to the controller and / or the trained data processing can be made available to a path planner. Furthermore, it should be noted that the exemplary embodiments are merely examples that are not intended to limit the scope of protection, applications, or structure in any way. Rather, the preceding description provides the person skilled in the art with a guide for implementing at least one exemplary embodiment. Various modifications, particularly with regard to the function and arrangement of the described components, can be made without departing from the scope of protection as it results from the claims and equivalent combinations of features.
[0088] List of reference symbols
[0089] 10 proximal robotic limb
[0090] 11 Swivel joint
[0091] 12 distal robotic link 13 swivel joint
[0092] 30 Control
[0093] 31 Data processing i spatial point (first object) p2 spatial point (further object) SV virtual spatial area
[0094] G Limit of the virtual space area qi, q2Joint coordinates
Claims
Patent claims 1. A method for predicting a collision possibility of a robot on a path, the method comprising the steps of: - Providing (S112) a starting pose of the robot; - Providing (S112) an end pose of the robot; - Providing (S114) a first object to be checked for collision potential with the robot; and - Determining (S116) a first distance value, which depends on a distance between the first object and a boundary of a virtual spatial region filled by an image of the robot by traversing a path from the start pose to the end pose, by means of data processing based at least partially on machine learning on the basis of the provided start pose, the provided end pose, and the provided first object; wherein a collision possibility of the robot on the path is predicted on the basis of the first distance value (S120).
2. Method according to claim 1, characterized by the steps: - Providing (S114) at least one further object to be checked for the possibility of collision with the robot; and - Determining (S116) a further distance value, which depends on a distance between this further object and the boundary of the virtual spatial area filled by the image of the robot by traversing the path from the start pose to the end pose, by means of the data processing based at least partially on machine learning on the basis of the provided start pose, provided end pose and the provided further object; wherein a collision possibility of the robot on the path is also predicted on the basis of this further distance value (S120).
3. Method according to one of the preceding claims, characterized in that a determined distance value has a discrete, in particular binary, value.
4. Method according to one of the preceding claims, characterized in that a determined distance value has a signed value.
5. Method according to one of the preceding claims, characterized in that the path of the robot from the start to the end pose is a straight path.
6. Method according to one of the preceding claims, characterized in that the path of the robot from the start to the end pose is a curved path.
7. Method according to one of the preceding claims, characterized in that at least one intermediate pose of the robot is provided for determining a distance value and the distance value is determined by means of data processing on the basis of this provided intermediate pose.
8. Method according to one of the preceding claims, characterized in that at least one object to be checked for the possibility of collision with the robot is provided on the basis of an environment of the robot, in particular one detected by sensors, and / or in a workspace of the robot and / or that the start pose and / or end pose is provided in a configuration space of the robot.
9. Method according to one of the preceding claims, characterized in that when determining a distance value by means of the data processing, an additional output value, in particular a kinematic variable transformed between a working space and a configuration space of the robot, is determined.
10. Method according to one of the preceding claims, characterized in that the data processing is trained, in particular is carried out, according to a method according to claim 13.
11. A method for planning a path of a robot, the method comprising the steps of: Providing (S100) a path of the robot; and - Predicting (S120) a collision possibility of the robot on this path according to a method according to one of the preceding claims; wherein the start and end pose are provided on the basis of the provided path and the provided path is evaluated (S140) on the basis of this prediction.
12. A method for operating a robot, wherein a collision possibility of the robot on a path is predicted according to a method according to one of the preceding claims and the robot is operated on the basis of this prediction (S150).
13. A method for training a data processing system based at least partially on machine learning for determining a distance value that depends on a distance between an object and a boundary of a virtual spatial area filled by an image of the robot by traveling along a path from a start pose to an end pose, on the basis of the provided start pose, the provided end pose and the provided object, in particular for predicting a collision possibility of the robot on the path according to a method according to one of the preceding claims, wherein the training comprises the steps: - Providing (S10) several sets of start and end poses; for each of these sets - a virtual spatial area filled by the image of the robot is determined by traversing a path from the start to the end pose of the respective set (S20); - several objects, in particular at least one object within the virtual spatial area and / or at least one object outside the virtual spatial area and / or at least one object whose distance from the robot and / or a boundary of the virtual spatial area is less than half of a maximum extension of the robot and / or virtual spatial area, are provided (S30); and for these objects in each case - a distance value which depends on a distance between the respective object and the boundary of the respective virtual spatial area is determined (S30); and Training (S40) the data processing based on the provided sentences, provided objects and distance values determined for them.
14. System which is arranged to carry out a method according to one of the preceding claims and / or comprises: - means for providing a starting pose of the robot; - means for providing a final pose of the robot; - means for providing a first object to be checked for collision potential with the robot; and - data processing based at least partially on machine learning for determining a first distance value, which depends on a distance between the first object and a boundary of a virtual spatial area filled by an image of the robot by traversing a path from the start pose to the end pose, on the basis of the provided start pose, the provided end pose and the provided first object; and - means for predicting a collision possibility of the robot on the path based on the first distance value; and / or comprising: - means for providing multiple sets of start and end poses; - Means for determining, for each of these sets, a virtual spatial region filled by the image of the robot by traversing a path from the start to the end pose of the respective set and providing a plurality of objects, in particular at least one object within the virtual spatial region and / or at least one object outside the virtual spatial region and / or at least one object whose distance from the robot and / or a boundary of the virtual spatial region is less than half of a maximum extension of the robot and / or virtual spatial region, and determining for each of these objects a distance value which depends on a distance between the respective object and the boundary of the respective virtual spatial region; and - Means for training the data processing based on the provided sentences, provided objects and distance values determined for them.
15. A computer program or computer program product, wherein the computer program or computer program product contains instructions, in particular stored on a computer-readable and / or non-volatile storage medium, which, when executed by one or more computers or a system according to claim 14, cause the computer(s) or the system to carry out a method according to one of claims 1 to 13.