WO2006018485A1 - Procede et systeme d'evitement de collision pour engins mobiles - Google Patents
Procede et systeme d'evitement de collision pour engins mobiles Download PDFInfo
- Publication number
- WO2006018485A1 WO2006018485A1 PCT/FR2004/001905 FR2004001905W WO2006018485A1 WO 2006018485 A1 WO2006018485 A1 WO 2006018485A1 FR 2004001905 W FR2004001905 W FR 2004001905W WO 2006018485 A1 WO2006018485 A1 WO 2006018485A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- computer
- points
- machine
- elements
- collision
- Prior art date
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
- B25J9/1666—Avoiding collision or forbidden zones
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39082—Collision, real time collision avoidance
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40468—Using polytree intersection method
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40492—Model manipulator by spheres for collision avoidance
Definitions
- the present invention relates generally to collision avoidance devices, and more specifically to a collision avoidance method and system for avoiding collisions between at least two mobile vehicles.
- Construction machinery such as cranes or hoists are well known in the art. In a site such as a building site, these machines are used to allow the transport, from one point to another of the site, of raw materials such as concrete or building elements. At a site such as a port wharf, loading cranes are used to load and unload cargo onto and from ships, and generally mobile equipment is used to move loads on industrial sites.
- the devices of the prior art are limited at present to carrying out proximity detections using sensors such as proximity detection devices by ultrasound or the like, or by exchanging information making it possible to detect a risk. on the basis of the static positions of the craft or their load.
- nuisance alarms have the drawback of unnecessarily distracting the attention of machine operators, with the risk that another very real problem remains unnoticed, because the attention of the driver (s) concerned is focused on a nonexistent problem.
- the subject of the present invention is a method for avoiding collision between at least two physical entities, said at least two physical entities being made up of elements, said elements being defined by points, said points being able to be known in the form digital, said points being able to move simultaneously according to at least one degree of freedom, each of said simultaneous movements requiring a minimum variation of said corresponding degree of freedom before stopping, a computer type system being used to store and process said points under in digital form, said at least one computer type system making it possible to store and process said points in digital form, and which has the characteristic that a deformable digital model is defined inside said computer type system for each of said elements of said physical entities, said deformable model containing all of the positio ns that the points of said associated element are likely to take during any combination of simultaneous displacements according to said at least one degrees of freedom during said minimum variations before stopping, said computer type system calculating, for at least one entity, a distance between each of said deformable models of the elements of said at least one entity and each of said deformable models
- said physical entities can be, for example, machines capable of being used in a workshop, on a construction site, public works or handling, or a port area.
- each of said physical entities will comprise a computer type system
- said at least one computer type system will usually comprise at least one display device making it possible to display said deformable models for an operator.
- an alarm will generally be generated by said at least one computer-type system during said detection of said risk of collision, said alarm possibly being, for example, audible or visual.
- said alarm will be intended for at least one of the operators of said machines.
- said minimum variations before stopping can be determined or measured by said at least one computer system, and in this case, they can be assigned to a predefined value of an impossibility of determining or measuring said minimum variations before stopping.
- the method of the invention allows the use of two-dimensional, or alternatively three-dimensional, deformable models.
- said deformable models can be approximated by an encompassing prismatic volume obtained as the set of points traversed by a base consisting of a surface element during a displacement not included in said surface.
- Said base can then be planar and in particular, its outline can be defined by a set of connected line segments and arcs.
- said displacement can be rectilinear, and in particular, it can be perpendicular to the plane of said base.
- At least two computer type systems will be used to process said points in digital form, and more particularly, a computer type system will be associated with each of said physical entities. Said at least two computer-type systems will then be able to exchange information in digital form, preferably a computer-type means of communication.
- said computer type communication means will be a computer type network.
- said at least one computer-type system can also exercise control over the variation of at least one degree of freedom of at least one of said at least two physical entities.
- said control could consist of cutting the variation of said at least one degree of freedom, or as a variant, said control could consist of reducing the speed of variation of said at least one degree of freedom. In this case, in which said speed reduction may be inversely proportional to one of said distances between said physical entities.
- a simple global envelope can also be defined in said computer type system for each of said at least two physical entities, two of said at least two physical entities being determined as not being able to collide if their global envelopes simple have an empty intersection.
- said simple overall envelope will preferably be a prism obtained by displacement of a base surface along a path, said base surface being usually planar, for example, a circular disc. Said path will then generally be straight and perpendicular to said flat base.
- At least one of said at least one computer type system will include a non-volatile memory said non-volatile memory then allowing the storage in digital form of the configuration of at least one of said entities , said non-volatile memory usually being a computer hard disk.
- the invention also proposes a collision avoidance system between at least two physical entities, said at least two physical entities being made up of elements, said elements being defined by points, said points being able to be known in numerical form, said points being capable of moving simultaneously according to at least one degree of freedom, each of said simultaneous movements requiring a minimum variation of said corresponding degree of freedom before stopping, a computer type system being used to store and process said points in digital form, said at least one computer-type system for storing and processing said points in digital form, and which has the characteristic that it implements the method of the invention.
- FIG. 1 represents an example of two gantry cranes on a site implementing the method of the invention
- FIG. 2 represents the general flowchart of the program implementing the method of the invention in one of the computer systems of FIG. 1
- FIG. 3 represents the flowchart of the "CalculQpa" sub-program appearing in step 204 of FIG. 2
- Figure 4 shows the flowchart of the sub-program
- FIG. 6 represents the flowchart of the "Additions Vz” function appearing in step 503 of FIG. 5;
- FIG. 7 represents the flow diagram of the "Add Vz” function appearing in steps 603 and 605 of FIG. 6;
- FIG. 8 represents the flowchart of the "AdditionsVxy” subroutine appearing in step 506 of FIG. 5;
- FIG. 9 represents the flowchart of the "XY" sub-program appearing in step 801 of FIG. 8 and in step 1201 of FIG. 12;
- Figure 10 shows the flowchart of the "Add Vxy" subroutine appearing in steps 803, 805 and 810 of Figure 8;
- Figure 11 shows the flowchart of the sub-program
- FIG. 15 represents the anti-collision vectors in the XY plane associated with a point of one of the elements of the vehicles of FIG. 1; figure 16 represents the table of the configurations of the machines of figure
- Figure 18 shows the table of QPAs associated with the dynamic parameters of Figure 17;
- FIG. 21 A and 21B show the table of deformable models of the elements of the machines of Figure 1.
- the two devices used have a vertical plane of symmetry parallel to the plane YZ of the global coordinate system. Consequently, this plane was chosen as having the abscissa zero in the local coordinate system of the machine considered. Furthermore, the XZ plane is that of the proximal face of the elements 11, 21 of the machines 1, 2 and the XY plane is the common plane of the lower faces of the elements 11, 12, 21, 22.
- the elements of the machines 1, 2 are constituted by parallelepipeds defined by two diagonally opposite points A M and B M for the machine of number "M", the points A and B being respectively the points of smaller and of larger coordinates in the reference frame of the "M" object concerned.
- the dynamic parameters of positioning of the machine "M” are noted d M , g M and h M , and they are stored in the line “M” of the “Table Q of the dynamic parameters of the machines” represented in figure 17. They represent respectively, for the machine M, the distance from the plane of symmetry of the machine to the plane XY of the global coordinate system, the distance of the cable 15, 25 from the machine "M” to the first upright 11, 21 of the “M” machine, and the unwound length of the cable 15, 25. These parameters change over time as the machines 1, 2 are moved on the site.
- the program implementing the method of the invention begins at step 201.
- step 201 the computer 17 reads from its non-volatile memory the total number of machines "NbM” present on the site, the number “P” of the machine on which it is running, the safety distance “DS” minimum between the elements of the machines 1, 2 below which a risk of collision will be detected, of the time period " ⁇ t” between two successive readings of the dynamic parameters of the machines 1, 2, and the configuration parameters of the "NbM” gear.
- variable P will have the value 1.
- the configuration parameters of the "NbM” machines 1, 2 thus re-read are stored in the "Machine configuration table" represented in FIG. 16.
- the eight columns of this table respectively contain the number of the machine, the number of l element in the machine, the abscissa, the ordinate and the dimension of the first point A of the diagonal defining the element, and the abscissa, the ordinate and the dimension of the second point B of the diagonal defining the element.
- the computer 17 also reads back the number of elements "NbElem M” and the number of dynamic parameters "NbParam M " of each machine "M”.
- the computer 17 also reads "NbParam P” values "c P " which will be described in relation to FIG. 3.
- the computer 17 also reads "NbParam P " values " ⁇ P " representing increments associated with "NbParam P " parameters of the machine "M”, increments which will be described in relation to FIG. 12.
- the computer 17 initializes to 0 the "NbParam P " dynamic parameters "q P " of the machine "P” that it manages. The computer 17 then goes to step 202.
- step 202 the computer 17 saves the NbParam P current values of the dynamic parameters "q P " of the machine "P". These values, stored in the row of number "P" of the "Table Q of the dynamic parameters of the machines” represented in FIG. 17, are copied in the corresponding locations of the row of number "P” of the "Table Q 'of previous dynamic parameters of the machines "(not shown), which has the same structure as the table” Q ". The computer 17 then goes to step 203.
- step 203 the computer 17 reads, using appropriate sensors (not shown), the "NbParam P " new values of the dynamic parameters "q P " of the own machine “P".
- the computer 17 stores these values in the corresponding locations of the line of number "P" of the "Table Q of the dynamic parameters of machines "shown in Figure 17.
- the parameters" q P-1 ",” q P. 2 ",” qp / stored in the row of number "P” in the table “Q” above are respectively the dynamic parameters d P , g P and h P described above.
- the computer 17 then goes to step 204.
- step 204 the computer 17 calls the subroutine "CalculQpa”, which will be described later in relation to FIG. 3, to calculate the Quantities to Browse before the Stop "QP A P " corresponding to the dynamic parameters "q P " of the clean machine "P". The computer 17 then goes to step 205.
- step 205 the computer 17 calls the machine modeling subroutine "Machine Modeling", which will be described later in relation to FIG. 4, for the machine "P”, then it proceeds to the step 206.
- step 206 the computer 17 initializes to 0 the numbers "NbVxy” and “NbVz” of anti-collision vectors respectively in the XY plane and along the Z axis, which will be described later in relation to FIG. 5. Similarly, the computer 17 initializes to 1 the loop index "M" for the opposite machines. The computer 17 then goes to step 207.
- step 207 the computer 17 tests whether the index "M" is equal to "P". If the answer is positive, the computer 17 goes to step 211 which will be described later. If the answer is negative, that is to say, if the machine "M” is not the own machine "P” managed by the computer 17, the latter goes to step 208.
- step 208 the computer 17 obtains from the opposite machine "M", via the network 3, the dynamic parameters "q M " of this machine, and it stores them in the corresponding locations of the line “M” from the "Table Q of dynamic parameters of machines".
- the computer 17 likewise obtains from the opposite machine “M” the stopping distances "QPA M " corresponding to the q M above, and it stores these distances in the corresponding locations of the line “M” of the " QPA table of the quantities to be browsed before stopping the machines "shown in FIG. 18.
- the computer 17 then goes to step 209.
- step 209 the computer 17 calls the machine modeling subroutine "Machine Modeling", which will be described later in relation to FIG. 4, for the machine "M”, then it proceeds to the step 210.
- step 210 the computer 17 calls the anti-collision treatment subroutine "Anti-collision Treatment”, which will be described later in relation to FIG. 5, for the vehicles "M” and "P”, then it proceeds to the 'step 211.
- step 211 the computer 17 increments the loop index "M" for the opposite machines by one, then it proceeds to step 212.
- the computer 17 tests whether the loop index "M" is greater than the total number of machines "NbM”. If the answer is negative, the computer 17 returns to step 207 previously described. If the answer is positive, that is to say if the "NbM" machines have been processed, the computer 17 goes to step 213.
- step 213 the computer 17 calls the dynamic cut generation subroutine "GénérationCoupuresDynamiques", which will be described later in relation to FIG. 11. The computer 17 then goes to step 214.
- step 214 the computer 17 waits until the time period " ⁇ t", read back at step 201, has elapsed since the start of the loop started at step 202.
- the purpose of this wait is to leave sufficient network bandwidth for the other vehicles, and also, to ensure that a constant time interval " ⁇ t" elapses between two successive readings of the dynamic parameters of the vehicle "P". Once this predefined period of time " ⁇ t" has elapsed, the computer 17 returns to step 202 previously described.
- This subroutine calculates the Quantities to Browse before the Stop "QP A P " for the "NbParam P " dynamic parameters of the clean machine "P". These "QPAp” values represent the amounts of movement, measured in the same units as the corresponding "q P " parameters, necessary to stop the movement of the machine "P” according to the degree of freedom considered.
- the distance to be traveled before stopping for each of the "NbParam M " dynamic parameters "q M " of the machine “M” is modeled as being the product of a coefficient " c M / ', chosen conservatively, by the speed of variation of the only dynamic parameter "q M ,; ".
- the sensors used provide only the current values of the dynamic parameters, and not the desired variation speeds.
- the computer 17 implementing the method of the invention numerically estimates the speed of variation of each dynamic parameter as being the ratio between the difference of the last two measured values and the constant time period " ⁇ t" separating these two successive measurements.
- the subroutine "CalculQpa” begins at step 301 of FIG. 3, where the computer 17 initializes the loop index "i” to the value 1.
- the computer 17 then goes to step 302.
- the computer 17 calculates the value "QPA P i " by the formula "c P ; * (q P r q'p ; ) / ⁇ t", in which "c P i " is a read constant in step 201 of FIG. 2, where "q P i " and “q ' P> i " represent respectively the last and the penultimate measured value of the dynamic parameter of number "i” of the machine “P ", and where" ⁇ t "is the constant period of time described above in relation to Figure 2.
- the quantity represents a numerically approximated value of the average speed of variation of the parameter "q P i " of the machine "P” during the period " ⁇ t".
- the computer 17 stores the value "QPA P i " thus calculated in the corresponding location of the table "Table QPA of the Quantities to Browse before Stopping the machines” shown in FIG. 18, then it proceeds to step 303.
- step 303 the computer 17 increases the loop index "i" by one, then it proceeds to step 304.
- step 304 the computer 17 tests whether the loop index "i" is greater than the number of dynamic parameters "NbParam P " of the machine "P". If the answer is negative, the computer 17 returns to step 302 previously described. If the answer is positive, that is, if the "NbParam P " values "QP A P " have been calculated for the "NbParam P " dynamic parameters "q p " of the machine "P", then the "CalculQpa” subroutine is then finished.
- the "Machine Modeling" sub-program receives in parameter the number "M” of the machine to be modeled. This means that the value noted “M” in the "Machine Modeling” subroutine will have the value "P” of the calling program if this subroutine has been called since step 205 in FIG. 2, and will have the value "M “of the calling program if this subroutine has been called since step 209 of FIG. 2.
- the function of the "ModelingEngine” subroutine is to define, for each of the elements "e” of the machine with number "M” passed as a parameter, a “deformable model” consisting of all the positions of the space that the element “e” can take, during simultaneous, independent and arbitrary variations of the "NbParam M " parameters "q M " in their corresponding variation intervals "q Mii " to "q M i + QPA M i ".
- the deformable model associated with the element "e” of the machine “M” is a parallelepiped of diagonal (AL, BL), where the points AL and BL are the points of coordinates respectively minimal and maximum during the variation of the "NbParam M " parameters "q Mi " of the machine “M” in their respective variation intervals "q M i " to "q M, i + QPA M i ".
- the coordinates of the extreme points A and B of all the elements of the machines 1, 2 depend only on one parameter at a time. Consequently, the minimum values of the coordinates of point A and the maximum values of the coordinates of point B can be obtained by varying only one parameter at a time.
- the "Machine Modeling" subroutine begins at step 401.
- step 401 the computer 17 initializes to 1 the loop index "e" for the "NbElem M " elements of the machine "M”, then it proceeds to step 402.
- step 402 the computer 17 initializes the points AL M e and BL M e respectively at the points A M ⁇ and B M e of the element "e" of the machine "M” by evaluating the corresponding expressions appearing in the "Machine configuration table" presented in FIG. 16, for the current values of the "NbParam M " parameters "q M, i" of the machine M. The computer 17 then goes to step 403.
- step 403 the computer 17 initializes to 1 the loop index "i" for the "NbParam M " parameters of the machine "M”, then it proceeds to step 404.
- step 404 the computer 17 firstly increases the parameter "q Mi " by the quantity "QPA M / '. Then, it calculates each of the local coordinates of the point AL M e as the minimum of the current value of this coordinate of AL M e and of the corresponding value obtained for the parameter q M; increased by the quantity QP A M i5 using the corresponding expressions of the coordinates of the points A M e of the element "e” of the machine "M” appearing in the "Machine configuration table" presented in figure 16.
- the computer 17 calculates each of the local coordinates of the point BL M e as the maximum of the current value of this coordinate of BL M e and the corresponding value obtained for the parameter "q M) i " increased by the quantity "QPA M i " using the corresponding expressions of the coordinates of the points B M e of the element "e” of the machine “M” appearing in the "Table of configuration of the machines” presented in figure 16.
- the computer 17 restores the parameter "q Mii " to its initial value, that is to say that it decreases the parameter "q M i " by the quantity "QPA M ;”.
- the computer 17 then goes to step 405.
- step 405 the computer 17 increases the loop index "i" by one, then it proceeds to step 406.
- step 406 the computer 17 tests whether the loop index "i" is greater than the number of dynamic parameters "NbParam M " of the machine "M". If the answer is negative, the computer 17 returns to step 404 previously described. If the answer is positive, that is to say if the "NbParam M " parameters "q M, i" have been processed, then the computer 17 goes to step 407.
- step 407 the computer 17 increases the loop index "e" by one, then it proceeds to step 408.
- step 408 the computer 17 tests whether the loop index "e" is greater than the number of elements "NbElem M " of the machine "M". If the answer is negative, the computer 17 returns to step 402 previously described. If the answer is positive, that is to say if the "NbElem M " elements of the machine "M” have been processed, then the computer 17 goes to step 410.
- step 410 the computer 17 initializes to 1 the loop index "e" for the "NbElem M " elements of the machine "M”, then it proceeds to step 411.
- step 411 the computer 17 calculates the coordinates of the extreme points AG M e and BG M e of the element "e" of the machine "M" in the global reference frame of the site from the coordinates of the points AL M e and BL M e in the local coordinate system of the machine "M".
- the references R 1 and R 2 of the machines 1, 2 are obtained by translation of the global reference of the site, the coordinates of the extreme points AG M e and BG M e of the element "e" of the machine "M” in the global benchmark of the site is obtained simply by adding the coordinates of the origin R M of the benchmark of the machine "M” to the coordinates of the points AL M e and BL M e in the local reference of the machine "M".
- the computer 17 then goes to step 412.
- step 412 the computer 17 increases the loop index "e" by one, then it proceeds to step 413.
- step 413 the computer 17 tests whether the loop index "e" is greater than the number of elements "NbElem M " of the machine "M”. If the answer is negative, the computer 17 returns to step 411 previously described. If the answer is positive, that is to say if the global coordinates of the "NbElem M " elements of the machine "M” have all been calculated, the "ModelingEngine” subroutine appearing in steps 205 and 209 of the Figure 2 is then finished.
- step 411 The results calculated in step 411 are stored in the "NbElem M " lines corresponding to the "NbElem M " elements of the machine of number "M” from the "Table of the deformable models of the elements of the machines" represented in FIGS. 22A and 22B.
- the "Anticollision Treatment” subroutine receives a parameter "M” indicating the number "M” of the opposite machine for which the anti-collision treatment must be carried out with the clean machine of number "P".
- the number "P” is that described above in relation to FIG. 2.
- the "Anticollision Treatment” subroutine begins at step 501.
- step 501 the computer 17 initializes at 1 the loop variable "E P " describing the numbers of the elements of the own machine "P", then it proceeds to step 502.
- step 502 the computer 17 initializes at 1 the loop variable "E M " describing the numbers of the elements of the opposite machine "M”, then it proceeds to step 503.
- step 503 the computer 17 calls the "Additions Vz” function with the arguments "E r ,” M “and” E M ,,.
- This function which will be described later in relation to FIG. 6, returns the boolean value "true” if it has added new collision avoidance vectors to the table "Vz” (not shown) of collision avoidance vectors along the Z axis.
- the computer 17 goes to step 504 described below. If no anti-collision vector has been added along the Z axis, the computer 17 goes to step 511 which will be described below, which means that it skips any search for collision in the XY plane, because a such a collision cannot occur, because of a sufficient vertical distance between the machines "P" and "M”.
- step 504 the computer 17 initializes at 1 the index "K P " of the points of the rectangular base of the element "E P " of the machine "P", then it goes to step 505
- the index "Kp” takes the values 1, 2, 3 and 4 respectively for the coordinate points
- step 505 the computer 17 initializes at 1 the index "K M " of the points of the rectangular base of the element "E M " of the machine "M", then it proceeds to step 506
- the index "K M " takes the values 1, 2, 3 and 4 respectively for the coordinate points
- step 506 the computer 17 calls the subroutine "Additions Vxy", which will be described later in relation to FIG. 8, with the arguments "E P ", "K P ", "M”, " E M "and” K M ". It then proceeds to step 507.
- step 507 the computer 17 increases the loop index "K M " by one for the points of the rectangular base of the element "E M " of the machine "M”, then it passes at step 508.
- step 508 the computer 17 tests whether the loop index "K M " is greater than 4. If the answer is negative, the computer returns to step 506 previously described. If the answer is positive, that is, if the four points of the rectangular base of the element "E M " of the machine "M” have been processed, the computer goes to step 509 .
- step 509 the computer 17 increases the loop index "K P " by one for the points of the rectangular base of the element "E P " of the machine "P”, then it passes in step 510.
- step 510 the computer 17 tests whether the loop index "K P " is greater than 4. If the answer is negative, the computer returns to step 505 previously described. If the answer is positive, that is, if the four points of the rectangular base of the element "E P " of the machine "P" have been processed, the computer goes to step 511 .
- step 511 the computer 17 increases the loop index "E M " for the elements of the machine "M” by one, then it proceeds to step 512.
- step 512 the computer 17 tests whether the loop index "E M " is greater than the number "NbElem M " of elements of the machine "M". If the answer is negative, the computer 17 returns to step 503 previously described. If the answer is positive, that is to say, if the "NbElem M " elements of the machine "M" have been processed, the computer goes to step 513.
- the computer 17 increases the loop index "E P " for the elements of the machine P by one, then it proceeds to step 512.
- step 512 the computer 17 tests whether the loop index "E P " is greater than the number NbElem P of elements of the machine "P". If the answer is negative, computer 17 returns to step 502 previously described. If the answer is positive, that is to say, if the "NbElem P " elements of the machine "P" have been processed, the "Anticollision Treatment" sub-program is then terminated.
- the "AddsVz” function receives from the program calling the parameters "e", "M” and “f respectively indicating the number of the element to be processed in the machine” P ", the number” M “of the machine opposite to process, and the number “f 'of the element to be processed in the machine” M ". Its purpose is to add an anti-collision vector along the Z axis to the table “Vz” (not shown) if there is a risk of collision along the Z axis between the elements "e” and “P of the respective devices” P “and” M ".
- This function returns a Boolean indicator having the value "true” if it has added at least one anti-collision vector to the table "Vz" of the anti-collision vectors according to Z, and "false” otherwise.
- the "AddsVz” function begins at step 601.
- step 601 the computer 17 initializes to the boolean value "false” the variable “cr” containing the boolean value which will be returned by the function "AddsVz", then it proceeds to step 602.
- step 602 the computer 17 tests whether the lower dimension of the element "f of the machine” M "is less than the upper dimension of the element” e “of the clean machine” P "increased of the safety distance "DS" previously described in relation to FIG. 2. If the response is negative, then the computer 17 goes to step 604 described below. If the response is positive, then there is a risk collision between the upper part of the element "e” of the machine "P” and the lower part of the element "f of the machine” M ", and the computer 17 then goes to step 603 .
- step 603 the computer 17 calls the subroutine "AddVz", which will be described later in relation to FIG. 7, with the arguments "e", “true” and “ z AG, M, r z BG, p , e "-
- the argument” true “above indicates that the upper face of the element” e “of the machine” P "is that concerned by the risk of collision.
- the computer 17 stores the boolean value "true” in the variable "cr” to indicate that a collision avoidance vector in Z has been added. It then proceeds to step 604.
- step 604 the computer 17 tests whether the upper dimension of the element "f of the machine” M "is greater than the lower dimension of the element” e “of the clean machine” P "reduced of the safety distance "DS”. If the answer is negative, then the computer 17 returns the value "cr" to the calling program, and the subroutine "AddsVz” is then finished. If the answer is positive, then it there is a risk of collision between the lower part of the element "e” of the machine "P" and the upper part of the element "f” of the machine M, and the computer 17 then goes to step 605.
- step 605 the computer 17 calls the "Add Vz” function with the arguments “e", “false” and “z BG M r z AG P e ".
- the "false” argument above indicates that the underside of element "e” of the vehicle "P” is the one affected by the risk of collision.
- the computer 17 stores the boolean value "true” in the variable "cr” to indicate that a collision avoidance vector in Z has been added. The computer 17 then returns the value "cr" to the calling program, and the subroutine "Additions Vz" is then terminated.
- the "AddVxy” subroutine receives the parameters "e", "h” and "z” passed by the calling program. Its function is to add an anti-collision vector to the "Vz” table (not shown) with three columns of anti-collision vectors parallel to the Z axis.
- the "AddVz" subroutine consists of the single step 701.
- the computer 17 increases the number "NbVz” of anti-collision vectors along the Z axis by one, then stores in the three locations of the corresponding "NbVz” line of the "Vz” table the three parameters "e", "h” and "z” passed to it by the calling program.
- the subroutine "Vxy Additions" receives from the program calling the parameters "e", “k”, “M”, “f and” 1 ", and its function is to determine the collision avoidance vectors of length less than” DS "associated at point "k” of the base in the XY plane of the element "e” of the apparatus "P", opposite the segment of the base of the element “f of the apparatus” M “ starting at point number "1” of this base.
- These vectors are the vectors SM 0 , SH and SM 1 appearing in FIG.
- the "Vxy Additions" subroutine begins at step 801.
- step 801 the computer 17 finds the coordinates "x P " and "y P " of the point S of number "k” in the element "e” of the machine "P” using the sub - “XY” program which will be described later in relation to FIG. 9. Similarly, it finds the coordinates "x M0 " and “y M0 “ of the first point M 0 of number "1" of the segment of the plane base of the element "F of the machine "M” using the same subroutine "XY".
- the computer 17 determines the number of the second point M 1 of the segment of the base of the element "f of the machine” M "using the formula” mod (l, 4) + l ", where" mod "represents the function modulo, or remainder of the division, of its first argument by the second.
- the result of this formula is worth 1 if the variable" 1 "is worth 4 and” 1 + 1 "if not. Consequently, taking into account the point numbering convention described above in relation to step 505 of FIG. 5, the point number thus determined is indeed point M 1 following point M 0 on the closed contour of the base of the element "F of the machine” M ".
- the computer 17 finds, using this number, the coordinates "x M i" and “y M1 " of the second point M 1 of the segment of the plane base of the element "F of the machine” M "using the same subroutine” XY ", then it proceeds to step 802.
- step 802 the computer 17 tests whether the Euclidean distance in the XY plane between the point S and the point M 0 with respective coordinates "x P ", "y P “ and “x M0 “, "y M o "above determined is less than the safety distance” DS ". If the answer is negative, then the computer proceeds to step 804 described below. If the answer is positive, then there is a risk of collision between the point S and the segment M 0 M 1 , and the computer proceeds to step 803.
- step 803 the computer 17 calls the subroutine "AddVxy”, which will be described later in relation to FIG. 10, with the arguments "e”, “k”, “x M0 - Xp” and " y M o-yp "j then the computer 17 goes to step 804.
- step 804 the computer 17 tests whether the Euclidean distance in the XY plane between the point S of coordinates "x P " and “y P " and the point M 1 of coordinates "x M1 " and “y M1 " above determined is less than the safety distance "DS”. If the answer is negative, then the computer proceeds to step 806 described below. If the answer is positive, then there is a risk of collision between the point S and the segment M 0 M 1 , and the computer proceeds to step 805.
- step 805 the computer 17 calls the subroutine "AddVxy” with the arguments "e”, “k”, “x M1 -x P " and "y M1 -y P ", then the computer 17 go to step 806.
- step 806 the computer 17 calculates the parameter " ⁇ " defining the point H in the parametric equation of the line segment M 0 M 1 :
- the vector SH will be perpendicular to the vector M 0 M 1 if and only if the dot product of these two vectors is zero.
- a development elementary for those skilled in the art shows that the segment SH is perpendicular to the segment M 0 M 1 for the value of " ⁇ " appearing in step 806.
- the computer 17 then goes to step 807.
- step 807 the computer 17 tests whether the value of " ⁇ " determined in step 806 is between 0 and 1. If the answer is negative, then the point H is located outside the segment M 0 M 1 , which means that point S is closer to one of points M 0 or M 1 than to any other point in the segment M 0 M 1 and therefore there is no risk of collision between point S and a point inside the segment. The "AddsVxy" subroutine is then finished. If the answer is positive, then the computer 17 goes to step 808.
- step 808 the computer 17 calculates the coordinates "h x " and "h y " obtained by replacing, in the parametric equation of the segment SH, the parameter " ⁇ ” by the value obtained in step 806. It then goes to step 809.
- step 809 the computer 17 tests whether the length of the segment SH is less than the safety distance "DS". If the answer is negative, then there is no risk of collision, and the subroutine "AddsVxy" is finished. If the answer is positive, then the computer 17 goes to step 810.
- step 810 the computer 17 calls the subroutine "AddVxy” with the arguments "e”, “k”, “Ji x ", and "h y ", then the subroutine "AddsVxy” is finished .
- the subroutine "XY” receives the parameters "M”, "e”, k “,” x “and” y “from the calling program. Its function is to find the coordinates" x “and” y “of the point of number "k” in the planar base of the element of number “e” of the machine of number "M”.
- the subroutine "XY” begins at step 901.
- step 901 the computer 17 tests whether the value of the parameter "k", indicating the point number in the base of the element "e” of the machine "P", is worth 1 or 4. If the answer is negative, the computer goes to step 903 described below, otherwise it goes to step 902.
- step 903 reached when the answer to the test in step 901 is negative, the computer 17 assigns the maximum value "x BG, M, e " to the variable "x", then it proceeds to step 904.
- step 904 the computer 17 tests whether the value of the parameter "k", indicating the number of the point S in the base of the element "e" of the machine "P", is worth 1 or 2. If the answer is negative, the computer goes to step 906 described below, otherwise it goes to step 905.
- the "XY" subroutine is then terminated.
- step 906 reached when the response to the test in step 904 is negative, the computer 17 assigns the maximum value "y BG, M, e " to the variable "y".
- the "XY" subroutine is then terminated.
- the "AddVxy” subroutine receives the parameters "e", "k”, "x” and "y” passed by the calling program. Its function is to add an anti-collision vector to the "Vxy” table (not shown) with four columns of anti-collision vectors in the XY plane.
- the "AddVxy" subroutine consists of the single step 1001.
- the computer 17 increases by one the number "Nb Vxy” of anti-collision vectors in the XY plane, then it stores in the four locations of the corresponding "Nb Vxy" line of the "Vxy” table parameters "e", "k", "x” and "y” which were passed to it in parameters by the calling program.
- This subroutine determines which degrees of freedom of the "P" craft, and in which direction, must be stopped to avoid increasing the collision avoidance vectors determined previously, that is to say to stop the movements before a collision occurs.
- the "GenerationDynamicCuts" subroutine begins at step 1101.
- step 1101 the computer 17 tests whether the numbers of anti-collision vectors "NbVxy" in the XZ plane and "NbVz" on the Z axis are both zero. If the answer is positive, that is to say, if there are no collision avoidance vectors and therefore no risk of collision, the "GenerationDynamicCuts" subroutine is terminated. If the answer is negative, then the computer 17 goes to step 1102.
- step 1102 the computer 17 generates an alarm, visual or audible, for the operator of the own vehicle "P" which it manages, then it proceeds to step 1103.
- step 1103 the computer 17 resets the dynamic cut-offs to 0 in the positive direction "C + " and in the negative direction "C “ “for the” NbParam P "degrees of freedom of the own machine” P " , then it goes to step 1104.
- step 1104 the computer 17 initializes the loop index "n" of the collision avoidance vectors in the XY plane to the value 1, then it proceeds to step 1105.
- step 1105 the computer 17 calls the subroutine for determining the dynamic breaks in the XY plane "Dynamic BreaksVxy", which will be described later in relation to FIG. 12, passing in argument the number "n” of the anti-collision vector "Vxy" to be treated.
- the computer 17 then goes to step 1106.
- step 1106 the computer 17 increments the loop index "n" by one, then it proceeds to step 1107.
- step 1107 the computer 17 tests whether the loop index "n" is greater than the number "Nb Vxy” of the collision avoidance vectors "Vxy” in the XY plane. If the answer is negative, the computer 17 returns to step 1105 previously described, otherwise that is to say if the "Nb Vxy" anti-collision vectors "Vxy” in the XY plane have been processed, the computer 17 go to step 1108.
- step 1108 the computer 17 initializes the loop index "n" of the collision avoidance vectors along the Z axis to the value 1, then it proceeds to step 1109.
- step 1109 the computer 17 calls the subroutine "Dynamic BreaksVz" determining the dynamic breaks along the Z axis, which will be described later in relation to FIG. 13, passing to this subroutine an argument made up the number "n” of the collision avoidance vector "Vz" to be processed.
- the computer 17 then goes to step 1110.
- step 1110 the computer 17 increments the loop index "n" by one, then it proceeds to step 1111.
- step 1111 the computer 17 tests whether the loop index "n" is greater than the number "NbVz" of anti-collision vectors "Vz” parallel to the axis Z. If the answer is negative, the computer 17 returns to step 1109 previously described, if not, that is to say if all the anti-collision vectors "Vz" parallel to the axis Z have been processed, the computer 17 goes to step 1112.
- step 1112 the computer 17 calls the subroutine "EnvoiCoupuresDyamiques" which will be described later in relation to FIG. 14, then, then the subroutine "GubenrationCoupuresDynamiques" is finished.
- This subroutine is to generate the dynamic breaks necessary for the vector "Vxy" of number "n” passed in parameter, for the "NbParam P " parameters "q P " of the own engine "P", and in the two directions of displacement of the degree of freedom of the associated "P" device for each of these parameters.
- the "VxyDynamicCuts" subroutine begins at step 1201.
- step 1201 the computer 17 initializes the temporary variable "e” to the value located in the first location of the line “n" of the table “Vxy", that is to say that the variable " e “receives the number of the element of the machine” P "to which the point of origin S of the anti-collision vector” n “belongs, as it was saved in step 1001 of FIG. 10.
- the computer 17 initializes a temporary variable "k” to the value located in the second location of the line “n” of the table “Vxy”, that is to say that the variable “k” receives the number , in the element "e” of the machine "P”, from the point of origin S of the collision avoidance vector "n".
- the computer 17 then calls the subroutine "XY”, described previously in relation to FIG. 9, with the arguments "P", "e”, "k”, “x” and “y”, which has as its effect of initializing the variables "x” and "y” to the values of the XY coordinates of point "k” of the base of the element "e” of the machine "P".
- the computer 17 thus finds the coordinates of the point of origin S of the anti-collision vector "Vxy n ", for the current values of the parameters "q P " of the machine "P".
- the computer 17 also initializes the loop index "i" to the value 1, then it proceeds to step 1202.
- step 1202 the computer 17 adds to the value of the parameter "q P i " the positive quantity " ⁇ P i " which has been read back in step 201 of FIG. 2.
- the value " ⁇ P i " associated with the parameter "q P i " is a predetermined value, chosen so as to be sufficiently small so that the displacements of the elements of the machine "P” associated with this increment of the parameter "q P i " remain small, while guaranteeing sufficient numerical precision for subsequent calculations.
- the computer 17 finds the coordinates V "and" y "'of the point of origin S' of the anti-collision vector" Vxy n "for the value" q P, i + ⁇ P, i "of the parameter” i "of l 'machine' P ', by calling the subroutine' XY 'with the parameters'P','e','k','x''and' y '.
- the computer restores the parameter' q P i "to its current value by subtracting from” q P i "the quantity” ⁇ P i ", then it calculates the scalar product" PS "of the vector SS 'and of the anti-collision vector” Vxy n ".
- the computer 17 then passes at step 1203.
- step 1203 the computer 17 tests whether the dot product "PS" determined in step 1202 is positive. If the answer is negative, then the computer 17 goes to step 1205 described below. If the answer is positive, then a positive variation of the parameter "q P i " will tend to reduce the anti-collision vector "Vxy n ", that is to say to increase the risk of a collision. In this case, the computer 17 goes to step 1204, where the cutoff indicator "C + ;" is set to the value "true” to indicate that the movement according to the degree of freedom "i" of the machine “P” must be prohibited in the positive direction. The computer 17 then goes to step 1205.
- step 1205 the computer 17 tests whether the dot product "PS" determined in step 1202 is negative. If the answer is negative, then the computer 17 goes to step 1207 described below. If the answer is positive, then a negative variation of the parameter "q P; i " will tend to reduce the anti-collision vector "Vxy n ", that is to say to increase the risk of a collision. In this case, the computer 17 goes to step 1206, where the cut-off indicator "C “ ; “is set to” true “to indicate that the movement” i “of the machine” P "in the negative direction should be cut off. The computer 17 then proceeds to step 1207.
- step 1207 the computer 17 increases the loop index "i" by one, then proceeds to step 1208.
- step 1208 the computer 17 tests whether the loop index "i" is greater than the number "NbParam P " of parameters of the machine "P". If the answer is negative, then the computer 17 returns to step 1202 described above. If the answer is positive, that is to say, if the "NbParam P " parameters "q P " of the clean machine "P" have been processed, the "DynamicDiscountVxy" subroutine is terminated.
- the "CoupuresDynamiquesVz” subroutine begins at step 1301.
- step 1301 the computer 17 initializes the temporary variable "e" to the value located in the first location of the line “n" of the table “Vz", that is to say that the variable " e “receives the number of the element of the machine” P "to which the point of origin S of the anti-collision vector” n “belongs, as it was saved in step 701 of FIG. 7.
- L ' computer 17 also initializes the loop index "i" to the value 1, then it proceeds to step 1302.
- step 1302 the computer 17 tests the value of the Boolean variable stored in the second column of the line "n" of the anti-collision vector table "Vz".
- This value stored in step 701 of FIG. 7, has the boolean value "true” if the risk of collision concerns the upper face of the element "e", and the boolean value "false” if the risk of collision concerns the underside of the element "e”. If the value "Vz 112 " has the boolean value "true”, then the computer 17 goes to step 1304 which will be described below, otherwise the computer 17 goes to step 1303.
- step 1303 reached if the variable "Vz n 2 " has the boolean value "false", that is to say if the risk of collision indicated by "Vz n " concerns the underside of the element " e “of the machine” P ", the computer 17 initializes the temporary variable” z ", representing the dimension of the point S origin of the anti-collision vector” Vz n ", to the value of the dimension” z AG P e "of the underside of the element "e” of the machine "P". The computer 17 then adds to the value of the parameter "q Pji " the positive quantity " ⁇ P> i " which was read again in step 201 of FIG. 2.
- the computer 17 then initializes the temporary variable" z "', representing the dimension of the point of origin S' of the anti-collision vector" Vz 11 "for the value” q Pii + ⁇ P i "of the parameter” i “of the machine” P ", to the value of the dimension” z AG P e "on the underside of the element” e “ of the machine “P” obtained for the value "q Pii + ⁇ P i " of the parameter "i” of the machine "P".
- the computer restores the parameter "q P i " to its initial value by subtracting from “q P i " the quantity " ⁇ P i ".
- the computer 17 then goes to step 1305.
- step 1304 reached if the variable "Vz 112 " has the boolean value "true", that is to say if the risk of collision indicated by "Vz n " concerns the upper face of the element "e “of the machine” P ", the computer 17 initializes the temporary variable” z ", representing the dimension of the point S origin of the anti-collision vector "Vz n ", to the value of the dimension "z BG P e " of the upper face of the element "e” of the machine "P". The computer 17 then adds to the value of the parameter "q P i " the quantity " ⁇ P i ".
- the computer 17 then initializes the temporary variable "z"', representing the dimension of the point of origin S' of the anti-collision vector "Vz n " for the value "q P) i + ⁇ P " of the parameter "i" of l 'gear' P ', at the value of the dimension' z AG P e 'on the underside of the element' e 'of the gear' P 'obtained for the value' q Pii + ⁇ P> i 'of parameter "i” of the machine "P".
- the computer restores the parameter "q P i " to its initial value by subtracting from "q P i " the quantity " ⁇ P i ".
- the computer 17 then goes to step 1305.
- step 1305 the computer 17 tests whether the product "(z'-z) * Vz n-3 ", where "z” and “z”'are the values determined in step 1302 or 1303 and " Vz n-3 "is the length of the anti-collision vector” Vz n "as determined in step 701 of FIG. 7, is positive. If the answer is negative, then the computer 17 goes to step 1307 which will be described below. If the answer is positive, then the vector SS 'has the same meaning as the anti-collision vector "Vz n ", that is to say that a positive variation of the parameter "q P; " will tend to reduce the anti-collision vector "Vz n ", therefore increasing the risk of a collision.
- step 1306 the cutoff indicator "C + i" is positioned at the value "true” to indicate that the movement "i" of the machine "P” in the positive direction of the parameter "q P i " must be prohibited.
- the computer 17 then goes to step 1307.
- step 1307 the computer 17 tests whether the product "(z'-z) * Vz n 3 " is negative. If the answer is negative, then the computer 17 goes to step 1309 which will be described below. If the answer is positive, then the vector SS 'has a direction opposite to that of the anti-collision vector "Vz n ", that is to say that a negative variation of the parameter "q P i" will tend to reduce the vector "Vz n " collision avoidance, therefore increasing the risk of a collision.
- step 1308 the cutoff indicator "CV 'is positioned at the value" true “to indicate that the movement" i "of the machine” P "in the negative direction the parameter "q P i " must be prohibited
- step 1309 the cutoff indicator "CV 'is positioned at the value" true "to indicate that the movement" i "of the machine” P "in the negative direction the parameter "q P i " must be prohibited
- step 1309 the computer 17 increases the loop index "i" by one, then it proceeds to step 1310.
- step 1310 the computer 17 tests whether the loop index "i" is greater than the number "NbParam P " of parameters of the machine "P". If the answer is negative, then the computer 17 returns to step 1302 described above. If the answer is positive, that is to say, if the "NbParam P " parameters "q P " of the clean machine "P" have been processed, the subroutine "CoupuresDynamiquesVz” is terminated. Referring more particularly to FIG. 14, there will now be described the subroutine "EnvoiCoupuresDynamiques" appearing in step 1112 of FIG. 11.
- the "SendDynamicCuts" subroutine begins at step 1401.
- step 1401 the computer 17 initializes the loop index "i" to the value 1, then it proceeds to step 1402.
- step 1402 the computer 17 tests whether the variable "C + / 'is at the boolean value" true ". If the answer is negative, then the computer 17 goes to step 1404 which will be described below. If the answer is positive, the computer proceeds to step 1403.
- step 1403 reached if the variable "C + ,” is at the value "true”, that is to say if the computer 17 has determined by means of the method described above that the movement of the degree of freedom "i" of the machine “P” should be prohibited in the direction of positive variation of the parameter "q PjI ", the computer 17 sends to the actuator "i” concerned of the machine “P” an order d 'movement stopped in the positive direction. The computer 17 then goes to step 1404.
- step 1404 the computer 17 tests whether the variable "C " , "is at the boolean value” true ". If the answer is negative, then the computer 17 goes to step 1406 which will be described below If the answer is positive, the computer proceeds to step 1405.
- step 1405 reached if the variable "C “ , "is at the value” true ", that is to say if the computer 17 has determined by means of the method described above that the movement of the degree of freedom “i” of the machine “P” should be prohibited in the direction of negative variation of the parameter "q P) 1 ", the computer 17 sends to the actuator "i” concerned of the machine “P” a order to stop movement in the negative direction The computer 17 then goes to step 1406.
- step 1406 the computer 17 increases the loop index "i" by one, then it proceeds to step 1407.
- step 1407 the computer 17 tests whether the loop index "i" is greater than the number "NbParam P " of parameters of the own engine P. If the answer is negative, the computer 17 returns to l step 1402 previously described. If the answer is positive, that is to say if all the dynamic cuts have been sent to the corresponding actuators, then the "Send Dynamic Breaks" subroutine is terminated.
- the example has been deliberately restricted to a simple case consisting of two devices.
- the data structures of the example described have been simplified, the type of machines treated has been restricted to that of gantry cranes modeled as being made up of five parallelepipedic elements, changes of reference frame have been limited to translations, and the number of dynamic parameters has been limited to three per machine.
- the search for collision risk was limited to pairs of elements, each of which belongs to separate machines.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Control Of Position Or Direction (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Testing Of Devices, Machine Parts, Or Other Structures Thereof (AREA)
- Jib Cranes (AREA)
Abstract
Description
Claims
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/632,657 US20080119960A1 (en) | 2004-07-19 | 2004-07-19 | Method and System for Avoiding Collisions Between Moveable Devices |
JP2007521969A JP2008506611A (ja) | 2004-07-19 | 2004-07-19 | 可動機械の衝突を回避するための方法及びシステム |
EP04767728A EP1768821A1 (fr) | 2004-07-19 | 2004-07-19 | Procede et systeme d'evitement de collision pour engins mobiles |
AU2004322424A AU2004322424B2 (en) | 2004-07-19 | 2004-07-19 | Process and system for avoiding collisions for moveable machines |
CNA200480043641XA CN1997490A (zh) | 2004-07-19 | 2004-07-19 | 用于避免可移动机器碰撞的方法和系统 |
CA002573967A CA2573967A1 (fr) | 2004-07-19 | 2004-07-19 | Procede et systeme d'evitement de collision pour engins mobiles |
PCT/FR2004/001905 WO2006018485A1 (fr) | 2004-07-19 | 2004-07-19 | Procede et systeme d'evitement de collision pour engins mobiles |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/FR2004/001905 WO2006018485A1 (fr) | 2004-07-19 | 2004-07-19 | Procede et systeme d'evitement de collision pour engins mobiles |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2006018485A1 true WO2006018485A1 (fr) | 2006-02-23 |
Family
ID=34958866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR2004/001905 WO2006018485A1 (fr) | 2004-07-19 | 2004-07-19 | Procede et systeme d'evitement de collision pour engins mobiles |
Country Status (7)
Country | Link |
---|---|
US (1) | US20080119960A1 (fr) |
EP (1) | EP1768821A1 (fr) |
JP (1) | JP2008506611A (fr) |
CN (1) | CN1997490A (fr) |
AU (1) | AU2004322424B2 (fr) |
CA (1) | CA2573967A1 (fr) |
WO (1) | WO2006018485A1 (fr) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2033919A3 (fr) * | 2007-07-18 | 2011-12-07 | Heidelberger Druckmaschinen Aktiengesellschaft | Machine à imprimer dotée d'une protection électrique contre l'écrasement |
CN113998595A (zh) * | 2021-11-24 | 2022-02-01 | 大连科润重工起重机有限公司 | 无人化起重机自动化防碰撞控制系统 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090114612A1 (en) * | 2007-11-01 | 2009-05-07 | Roger Gail Nelson | Universal collision avoidance override control system for overhead bridge cranes |
DE112008003800T5 (de) * | 2008-04-22 | 2011-02-24 | Mitsubishi Electric Corp. | Numerische Steuerverfahren und Vorrichtung dafür |
CN102658557A (zh) * | 2012-06-01 | 2012-09-12 | 昆山市三众模具制造有限公司 | 自动机械手防撞装置 |
US9254824B2 (en) * | 2013-12-30 | 2016-02-09 | Automotive Research & Testing Center | Adaptive anti-collision method for vehicle |
CN105512459B (zh) * | 2015-11-25 | 2020-12-11 | 陕西泰新博坤智能科技有限公司 | 塔式起重机间最短距离的精确计算方法 |
CN106042043A (zh) * | 2016-05-23 | 2016-10-26 | 大族激光科技产业集团股份有限公司 | 一种钻码机的防撞系统及其防撞方法 |
SG11201811732PA (en) * | 2016-07-04 | 2019-01-30 | Siemens Ag | Method and system for avoiding collisions in cranes |
CN107954321A (zh) * | 2017-10-20 | 2018-04-24 | 扬戈科技股份有限公司 | 一种防碰撞预警系统 |
CN109573848A (zh) * | 2019-01-24 | 2019-04-05 | 西安鑫锐弘信息工程有限公司 | 一种吊车防碰撞系统 |
CN109970009B (zh) * | 2019-04-24 | 2024-02-23 | 江苏建筑职业技术学院 | 高空作业车防碰撞装置及方法 |
CN111449666B (zh) * | 2020-03-09 | 2023-07-04 | 北京东软医疗设备有限公司 | 距离监测方法、装置、血管机、电子设备及存储介质 |
CN117574117B (zh) * | 2024-01-16 | 2024-04-30 | 杭州宇泛智能科技有限公司 | 基于神经网络的塔群三维防碰撞快速计算模型的训练方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4578757A (en) * | 1982-02-24 | 1986-03-25 | U.S. Philips Corporation | Method for preventing collision of two mutually movable bodies and an apparatus including an arrangement for preventing collision |
US5347459A (en) * | 1993-03-17 | 1994-09-13 | National Research Council Of Canada | Real time collision detection |
US6393362B1 (en) * | 2000-03-07 | 2002-05-21 | Modular Mining Systems, Inc. | Dynamic safety envelope for autonomous-vehicle collision avoidance system |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2341636A1 (de) * | 1973-08-17 | 1975-03-13 | Krupp Gmbh | Kollisionsschutz fuer krane |
JPS6127896A (ja) * | 1984-07-17 | 1986-02-07 | 三井建設株式会社 | クレ−ンの衝突防止方法 |
US4890241A (en) * | 1987-10-26 | 1989-12-26 | Megamation Incorporated | Robotic system |
DE10106023A1 (de) * | 2001-02-09 | 2002-08-29 | Fraunhofer Ges Forschung | Verfahren und Vorrichtung zur Kollisionserkennung von Objekten |
JP2003118981A (ja) * | 2001-10-18 | 2003-04-23 | Hitachi Ltd | クレーン接近警報装置 |
US7114157B2 (en) * | 2001-11-27 | 2006-09-26 | Kuka Roboter Gmbh | System controlling exclusive access by control programs to system resources |
US6678582B2 (en) * | 2002-05-30 | 2004-01-13 | Kuka Roboter Gmbh | Method and control device for avoiding collisions between cooperating robots |
DE10236392A1 (de) * | 2002-08-08 | 2004-02-19 | Kuka Roboter Gmbh | Verfahren und Vorrichtung zum Steuern von Handhabungsgeräten |
DE10307261A1 (de) * | 2003-02-20 | 2004-09-09 | Siemens Ag | Programmierplattform zur Erstellung von Teileprogrammen bei Werkzeug- oder Produktionsmaschinen |
US7699021B2 (en) * | 2004-12-22 | 2010-04-20 | Sokudo Co., Ltd. | Cluster tool substrate throughput optimization |
-
2004
- 2004-07-19 JP JP2007521969A patent/JP2008506611A/ja active Pending
- 2004-07-19 US US11/632,657 patent/US20080119960A1/en not_active Abandoned
- 2004-07-19 CA CA002573967A patent/CA2573967A1/fr not_active Abandoned
- 2004-07-19 EP EP04767728A patent/EP1768821A1/fr not_active Withdrawn
- 2004-07-19 CN CNA200480043641XA patent/CN1997490A/zh active Pending
- 2004-07-19 AU AU2004322424A patent/AU2004322424B2/en not_active Ceased
- 2004-07-19 WO PCT/FR2004/001905 patent/WO2006018485A1/fr active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4578757A (en) * | 1982-02-24 | 1986-03-25 | U.S. Philips Corporation | Method for preventing collision of two mutually movable bodies and an apparatus including an arrangement for preventing collision |
US5347459A (en) * | 1993-03-17 | 1994-09-13 | National Research Council Of Canada | Real time collision detection |
US6393362B1 (en) * | 2000-03-07 | 2002-05-21 | Modular Mining Systems, Inc. | Dynamic safety envelope for autonomous-vehicle collision avoidance system |
Non-Patent Citations (2)
Title |
---|
KWON S J ET AL: "Self-collision avoidance for n-link redundant manipulators", DECISION AIDING FOR COMPLEX SYSTEMS. CHARLOTTESVILLE, VA., OCT. 13 - 16, 1991, PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON SYSTEMS, MAN AND CYBERNETICS, NEW YORK, IEEE, US, vol. VOL. 1 _, 13 October 1991 (1991-10-13), pages 937 - 942, XP010054847, ISBN: 0-7803-0233-8 * |
XAVIER P G: "Fast swept-volume distance for robust collision detection", ROBOTICS AND AUTOMATION, 1997. PROCEEDINGS., 1997 IEEE INTERNATIONAL CONFERENCE ON ALBUQUERQUE, NM, USA 20-25 APRIL 1997, NEW YORK, NY, USA,IEEE, US, vol. 2, 20 April 1997 (1997-04-20), pages 1162 - 1169, XP010235618, ISBN: 0-7803-3612-7 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2033919A3 (fr) * | 2007-07-18 | 2011-12-07 | Heidelberger Druckmaschinen Aktiengesellschaft | Machine à imprimer dotée d'une protection électrique contre l'écrasement |
US8151706B2 (en) | 2007-07-18 | 2012-04-10 | Heidelberger Druckmaschinen Ag | Apparatus with electrical crush protector and printing press having the apparatus |
CN113998595A (zh) * | 2021-11-24 | 2022-02-01 | 大连科润重工起重机有限公司 | 无人化起重机自动化防碰撞控制系统 |
Also Published As
Publication number | Publication date |
---|---|
EP1768821A1 (fr) | 2007-04-04 |
CN1997490A (zh) | 2007-07-11 |
CA2573967A1 (fr) | 2006-02-23 |
AU2004322424A1 (en) | 2006-02-23 |
AU2004322424B2 (en) | 2010-12-09 |
JP2008506611A (ja) | 2008-03-06 |
US20080119960A1 (en) | 2008-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2006018485A1 (fr) | Procede et systeme d'evitement de collision pour engins mobiles | |
CA2137306C (fr) | Procede et dispositif pour detecter un depassement des charges de dimensionnement d'un aeronef | |
EP3252615B1 (fr) | Procede et systeme de determination de cellules traversees par un axe de mesure ou de visualisation | |
EP3353720A1 (fr) | Procede et systeme de perception de corps materiels | |
CA2813565A1 (fr) | Detection de chargement et de dechargement de vehicule | |
CA2964815A1 (fr) | Procede et dispositif de surveillance d'une roue aubagee de moteur d'aeronef par mesure de position d'equilibre | |
WO2022132239A1 (fr) | Procédé, système et appareil de gestion d'entrepôt par détection d'une cargaison endommagée | |
CN106314275A (zh) | 一种用于汽车的防刮碰装置、方法及汽车 | |
FR2944621A1 (fr) | Procede de determination de parametres de fonctionnement d'un vehicule automobile | |
FR2844880A1 (fr) | PROCEDE PERMETTANT D'EVALUER LA REPONSE TEMPORELLE D'UN CAPTEUR DE NOx | |
WO2021176031A1 (fr) | Procédé et système de détermination d'une zone de visibilité de différents types d'objets pour un véhicule autonome | |
EP3657415A1 (fr) | Système de contrôle de chargement et de déchargement de palettes | |
CN113865840B (zh) | 用于检测轴荷的方法、控制器及工程机械 | |
CN116385982A (zh) | 一种环卫站点的车辆到位检测方法、装置、设备和介质 | |
FR2990027A1 (fr) | Procede d'estimation du tangage et du roulis et dispositif inertiel associe | |
EP3556287A1 (fr) | Procédé de calibration d'un réseau de magnétomètres | |
EP1331621B1 (fr) | Procédé de supervision de l'environnement d'un véhicule | |
KR20140132555A (ko) | 폐기물 관리 시스템 및 그 방법 | |
WO2022008304A1 (fr) | Procédé de commande d'un véhicule automobile muni de moyens de conduite autonome | |
WO2017216495A1 (fr) | Procédé de détermination d'une classe de conduite de référence | |
CN112700387A (zh) | 激光数据处理方法、装置及设备、存储介质 | |
EP2911776B1 (fr) | Gestion du chargement en particules solides d'un reacteur | |
FR2981150A1 (fr) | Procede d'identification d'axes de mesure defaillant d'un capteur triaxial | |
FR3117223A1 (fr) | Système et procédé de contrôle de véhicule à base d’apprentissage machine | |
FR3128304A1 (fr) | Procédé de détection d'une limite d'une voie de circulation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DPEN | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed from 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2004767728 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2573967 Country of ref document: CA Ref document number: 374/DELNP/2007 Country of ref document: IN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2007521969 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 200480043641.X Country of ref document: CN |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2004322424 Country of ref document: AU |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020077003726 Country of ref document: KR |
|
ENP | Entry into the national phase |
Ref document number: 2004322424 Country of ref document: AU Date of ref document: 20040719 Kind code of ref document: A |
|
WWP | Wipo information: published in national office |
Ref document number: 2004322424 Country of ref document: AU |
|
WWE | Wipo information: entry into national phase |
Ref document number: 11632657 Country of ref document: US |
|
WWP | Wipo information: published in national office |
Ref document number: 2004767728 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 11632657 Country of ref document: US |