WO2022082508A1 - Method and device for implementing synchronization between agvs - Google Patents

Method and device for implementing synchronization between agvs Download PDF

Info

Publication number
WO2022082508A1
WO2022082508A1 PCT/CN2020/122482 CN2020122482W WO2022082508A1 WO 2022082508 A1 WO2022082508 A1 WO 2022082508A1 CN 2020122482 W CN2020122482 W CN 2020122482W WO 2022082508 A1 WO2022082508 A1 WO 2022082508A1
Authority
WO
WIPO (PCT)
Prior art keywords
agv
distance
ranging unit
synchronization
agvs
Prior art date
Application number
PCT/CN2020/122482
Other languages
French (fr)
Chinese (zh)
Inventor
席宝时
闵令宝
华韬
李�浩
吴剑强
Original Assignee
西门子(中国)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 西门子(中国)有限公司 filed Critical 西门子(中国)有限公司
Priority to CN202080106014.5A priority Critical patent/CN116323434A/en
Priority to PCT/CN2020/122482 priority patent/WO2022082508A1/en
Publication of WO2022082508A1 publication Critical patent/WO2022082508A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D63/00Motor vehicles or trailers not otherwise provided for
    • B62D63/02Motor vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G1/00Storing articles, individually or in orderly arrangement, in warehouses or magazines
    • B65G1/02Storage devices
    • B65G1/04Storage devices mechanical
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G1/00Storing articles, individually or in orderly arrangement, in warehouses or magazines
    • B65G1/02Storage devices
    • B65G1/04Storage devices mechanical
    • B65G1/137Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed

Definitions

  • the present disclosure relates to the technical field of intelligent mobile robots, and more particularly, to a method, an apparatus, a computing device, a computer-readable storage medium and a program product for realizing synchronization between AGVs.
  • AGV Automatic Guided Vehicle
  • AGVs are used to move components from a warehouse to a production line, and then move finished goods from the production line to the warehouse to automate logistics.
  • two or more AGVs may be required to move from one location to another, and how to maintain synchronization between AGVs is very important.
  • a possible solution is to use a camera mounted above the AGV (eg, mounted on the ceiling of the workshop) to capture the image of the AGV (eg, the camera needs to capture an image of the entire workshop), using computer vision techniques (eg, image stitching). ) to locate the AGV and control the AGV according to the calculated result.
  • computer vision techniques eg, image stitching
  • the first embodiment of the present disclosure proposes a method for realizing synchronization between two AGVs, the two AGVs include a first AGV and a second AGV, and the two AGVs are provided on one side surface of the first AGV.
  • the first ranging unit and the second ranging unit are respectively initially aligned with specific positions on the first trapezoidal block and the second trapezoidal block provided on one side surface of the second AGV, the first AGV and the The second AGV is designated to be spaced apart by a first distance, and when the first AGV moves following the movement of the second AGV, the method includes: A. measuring the first AGV by a first ranging unit The second distance between the AGV and the second AGV; B.
  • the third distance between the first AGV and the second AGV is measured by the second ranging unit; C. Based on the first a distance, the second distance, and the third distance, determining a relative state between the first AGV and the second AGV with respect to synchronization; and D. when the relative state represents the first AGV When out of synchronization with the second AGV, the movement of the first AGV is adjusted based on the relative state.
  • AGV synchronization can be easily realized by sampling, no complex image processing technology is required, field costs are effectively reduced, AGV synchronization can be quickly realized to meet application requirements, and high precision and intelligent synchronization mechanism design , which can be flexibly and reliably applied to scenarios where multiple AGVs work together.
  • the second embodiment of the present disclosure provides a method for realizing synchronization among multiple AGVs
  • the multiple AGVs include a first AGV, a second AGV and a third AGV, the second AGV and the third AGV
  • Three AGVs are respectively arranged on both sides of the first AGV, and the first ranging unit and the second ranging unit arranged on one side surface of the first AGV are respectively initially aligned and arranged on the second AGV
  • the third ranging unit and the fourth ranging unit provided on the one side surface of the third AGV are respectively initially aligned and set
  • the first AGV and the second AGV are designated to be spaced apart by a first distance
  • the first AGV An AGV and the third AGV are designated to be separated by another distance
  • the method comprising: when the first AGV moves following the movement of the second AGV, using the
  • the third embodiment of the present disclosure provides a method for realizing synchronization among multiple AGVs
  • the multiple AGVs include a first AGV, a second AGV and a third AGV, the first AGV and the third AGV
  • Three AGVs are respectively arranged on both sides of the second AGV, and the first ranging unit and the second ranging unit arranged on one side surface of the first AGV are respectively initially aligned and arranged on the second AGV
  • the third ranging unit and the fourth ranging unit provided on the one side surface of the third AGV are respectively initially aligned and set
  • the first AGV and the second AGV are designated to be spaced apart by a first distance
  • the first The second AGV and the third AGV are designated to be separated by another distance
  • the method comprising: when the first AGV moves following the movement of the second AGV, using the method
  • a fourth embodiment of the present disclosure provides an AGV including a controller configured to implement the method according to the first embodiment.
  • the fifth embodiment of the present disclosure provides an apparatus for realizing synchronization between two AGVs, the two AGVs include a first AGV and a second AGV, and the two AGVs are provided on one side surface of the first AGV.
  • the first ranging unit and the second ranging unit are respectively initially aligned with specific positions on the first trapezoidal block and the second trapezoidal block provided on one side surface of the second AGV, the first AGV and the the second AGV is designated to be spaced apart by a first distance, the first AGV moves following movement of the second AGV
  • the apparatus includes a first measurement module configured to measure by a first ranging unit A second distance between the first AGV and the second AGV; a second measurement module configured to measure the distance between the first AGV and the second AGV through the second ranging unit a third distance; a state determination module configured to determine a relative state of synchronization between the first AGV and the second AGV based on the first distance, the second distance, and the third distance and an adjustment module configured to adjust the
  • a sixth embodiment of the present disclosure provides a computing device comprising: a processor; and a memory for storing computer-executable instructions that, when executed, cause the processor to The method described in the first embodiment, the second embodiment or the third embodiment is performed.
  • a seventh embodiment of the present disclosure proposes a computer-readable storage medium having computer-executable instructions stored thereon, and the computer-executable instructions are used to execute the first embodiment, the first The method described in the second embodiment or the third embodiment.
  • An eighth embodiment of the present disclosure proposes a computer program product tangibly stored on a computer-readable storage medium and comprising computer-executable instructions that, when executed, cause At least one processor performs the method described in the first embodiment, the second embodiment or the third embodiment.
  • FIG. 1 illustrates an exemplary scenario in which embodiments of the present disclosure may be applied.
  • FIG. 2 shows a flowchart of an exemplary method for achieving synchronization between two AGVs according to an embodiment of the present disclosure.
  • FIG. 3 shows a schematic diagram of relative movement between two AGVs according to an embodiment of the present disclosure.
  • FIG. 4 shows a schematic diagram of relative movement between two AGVs according to an embodiment of the present disclosure.
  • FIG. 5 shows a schematic diagram of relative movement between two AGVs according to an embodiment of the present disclosure.
  • FIG. 6 shows a schematic diagram of relative movement between two AGVs according to an embodiment of the present disclosure.
  • FIG. 7 shows a block diagram of an exemplary apparatus for achieving synchronization between two AGVs according to an embodiment of the present disclosure.
  • FIG. 8 shows a flowchart of an exemplary method for achieving synchronization between multiple AGVs, according to an embodiment of the present disclosure.
  • FIG. 9 shows a schematic diagram of relative movement among a plurality of AGVs according to an embodiment of the present disclosure.
  • FIG. 10 shows a flowchart of an exemplary method for achieving synchronization between multiple AGVs according to an embodiment of the present disclosure.
  • FIG. 11 shows a schematic diagram of relative movement between multiple AGVs according to an embodiment of the present disclosure.
  • FIG. 12 illustrates an exemplary AGV for implementing AGV synchronization according to an embodiment of the present disclosure.
  • FIG. 13 illustrates an exemplary system for implementing AGV synchronization according to embodiments of the present disclosure.
  • FIG. 14 illustrates an exemplary computing device for implementing AGV synchronization in accordance with embodiments of the present disclosure.
  • the terms “including”, “including” and similar terms are open-ended terms, ie, “including/including but not limited to,” meaning that other content may also be included.
  • the term “based on” is “based at least in part on.”
  • the term “one embodiment” means “at least one embodiment”; the term “another embodiment” means “at least one additional embodiment” and so on.
  • FIG. 1 illustrates an exemplary scenario 100 in which embodiments of the present disclosure may be applied.
  • Scenario 100 includes multiple AGVs, such as AGV 101 and AGV 102.
  • the AGV 101 moves along the first path 103 and the AGV 102 moves along the second path 104 .
  • the AGV 101 can be equipped with an automatic navigation device to automatically drive along the prescribed guidance path 103.
  • the AGV 101 can use magnetic navigation (a magnetic strip is attached to the road surface of the AGV driving path, and the guidance is realized by the magnetic strip induction signal), two QR code navigation (by scanning the QR code laid on the ground with a camera, and analyzing the QR code information to achieve guidance) or laser navigation (by collecting laser beams reflected by the natural environment (walls, pillars and other fixed objects) to achieve guidance ) etc. to move along the first path 103 .
  • the AGV 102 may similarly move along the second path 104 .
  • the AGV 101 can also be installed with a multi-joint manipulator or a multi-degree-of-freedom mechanical device 105 oriented to the industrial field, and the AGV 102 can also be installed with a multi-joint manipulator or a multi-degree-of-freedom mechanical device 106 oriented to the industrial field.
  • two or more AGVs are required to move the product cooperatively or to process the product with a robot.
  • synchronization between two or more AGVs needs to be maintained, for example, to keep AGV 101 and AGV 102 at a specified separation distance as they move along first path 103 and second path 104, respectively. It should be understood that the number of AGVs in FIG.
  • scenario 100 may include more AGVs (eg, three, four, etc.).
  • one AGV can act as a master AGV (master AGV), and the other AGV can act as a slave AGV (slave AGV), wherein the slave AGV moves following the movement of the master AGV.
  • master AGV master AGV
  • slave AGV slave AGV
  • Synchronization can be achieved between the AGV 101 and the AGV 102 in the scene 100 through the method for realizing synchronization between two AGVs described below in conjunction with FIGS. 2-6 .
  • FIG. 2 shows a flowchart of an exemplary method 200 for achieving synchronization between two AGVs according to an embodiment of the present disclosure.
  • the method 200 may be applied to the example scenario 100 shown in FIG. 1 and the example system 1300 shown in FIG. 13 .
  • the method 200 may be implemented by any of the AGVs in FIG. 1 , the exemplary AGV 1200 in FIG. 12 , the computing device 1303 in the exemplary system 1300 that is communicatively coupled to the AGV.
  • the method 200 is described below in conjunction with FIGS. 3-6 , wherein FIGS. 3-6 show schematic diagrams 300 , 400 , 500 , 600 of relative movement between two AGVs according to embodiments of the present disclosure.
  • the two AGVs include AGV1 (first AGV) and AGV2 (second AGV).
  • the first ranging unit M1 and the second ranging unit M2 are disposed on one side surface (eg, the outer wall) of the AGV1.
  • the first trapezoidal block T1 and the second trapezoidal block T2 are provided on one side surface (eg, the outer wall) of the AGV2.
  • One side surface of AGV1 may be parallel to one side surface of AGV2.
  • the first trapezoidal block T1 and the second trapezoidal block T2 may have the same shape (upper lengthening, lower side length, hypotenuse, bevel angle), for example, having the illustrated bevel angle ⁇ , upper side length C 1 and lower side length C 2 , C 1 and C 2 are not the same.
  • the first ranging unit M1 is aligned with the first trapezoidal block T1
  • the second ranging unit is aligned with the second trapezoidal block T2 .
  • the first ranging unit M1 and the second ranging unit M2 are respectively aligned with the same middle position of the first trapezoid block T1 and the second trapezoid block T2, for example, the waistline of the trapezoid block, the middle position (the middle side length C 3 ) Divide the height of the trapezoid into H 1 and H 2 .
  • this alignment can be achieved by placing a marker point at an intermediate position of the first trapezoidal block T1 and the second trapezoidal block T2.
  • the distance between the first ranging unit M1 and the second ranging unit M2 is equal to the distance between the first trapezoidal block T1 and the second trapezoidal block T2 , such as the longitudinal distance H shown in FIG. 4 .
  • AGV1 and AGV2 are designated to be separated by a first distance D 1 .
  • the heads of AGV1 and AGV2 are designated to be laterally spaced apart by a first distance D 1 , as shown in Figures 3-6 Show.
  • the method 200 begins at step 201 .
  • a second distance between the first AGV and the second AGV is measured by the first ranging unit.
  • 3-6 show the second distance D 2 obtained by the first ranging unit M1 under relative movement between the two AGVs.
  • step 201 may include measuring the second distance between the first AGV and the second AGV by the first ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV.
  • the first ranging unit M1 may include a sensor, such as an ultrasonic sensor, a photoelectric sensor (infrared, laser sensor), etc.
  • the sensor includes a transmitter and a receiver, and the transmitter transmits generated pulses (eg, ultrasonic, infrared, laser) to the AGV2. etc.), the receiver receives the reflected pulses (eg, ultrasonic, infrared, laser, etc.) returned from the AGV2.
  • the second distance D2 between AGV1 and AGV2 may be calculated based on the time difference between the sampled transmitted and reflected pulses.
  • step 202 a third distance between the first AGV and the second AGV is measured by the second ranging unit. 3-6 show the second distance D 3 obtained by the second ranging unit M2 under relative movement between the two AGVs.
  • step 202 may include measuring a third distance between the first AGV and the second AGV by the second ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV.
  • the second ranging unit M2 may include a sensor, such as an ultrasonic sensor, a photoelectric sensor (infrared, laser sensor), etc.
  • the sensor includes a transmitter and a receiver, and the transmitter transmits generated pulses (eg, ultrasonic, infrared, laser) to the AGV2 etc.), the receiver receives the reflected pulses (eg, ultrasonic, infrared, laser, etc.) returned from the AGV2.
  • the second distance D3 between AGV1 and AGV2 may be calculated based on the time difference between the sampled transmitted and reflected pulses.
  • step 203 based on the first distance, the second distance and the third distance, a relative state of synchronization between the first AGV and the second AGV is determined. For example, as shown in Figures 3-6, under different relative movements between AGV1 and AGV2, the first distance D 1 , the second distance D 2 and the third distance D 3 have different relationships, so the first distance D 1 , the second distance D 2 and the third distance D 3 have different relationships. The distance D 1 , the second distance D 2 and the third distance D 3 are used to determine whether the two AGVs are in synchronization and in what kind of asynchronous state.
  • step 203 may include: if the second distance is different from the third distance, determining that the first out-of-sync state is between the first AGV and the second AGV; or if the second distance is the same as the third distance , then when the second distance is within the first threshold range of the first distance, it is determined that the first AGV and the second AGV are in a second asynchronous state, and when the second distance is within the second threshold range of the first distance , it is determined that the first AGV and the second AGV are in a third asynchronous state, and when the second distance is the same as the first distance, it is determined that the first AGV and the second AGV are in a fourth asynchronous state.
  • the second distance D 2 is equal to the third distance D 3 , if D 1 -C 3 ⁇ D 2 ⁇ D 1 -C 1 , the AGV1 moves faster than the AGV2 at this time. Therefore, when the second distance D 2 is within the first threshold range of the first distance D 1 (eg, D 1 -C 3 ⁇ D 2 ⁇ D 1 -C 1 ), it can be determined that AGV1 and AGV2 are in a second out-of-synch state, ie, indicating that AGV1 is ahead of AGV2, where the first threshold range can be determined by the parameters of the trapezoid block (eg, upper side length C 1 and middle side length C 3 ).
  • the second distance D 2 is equal to the third distance D 3 , if D 1 -C 2 ⁇ D 2 ⁇ D 1 -C 3 , the AGV1 moves slower than the AGV2 at this time. Therefore, when the second distance D 2 is within the second threshold range of the first distance D 1 (eg, D 1 -C 2 ⁇ D 2 ⁇ D 1 -C 3 ), it can be determined that AGV1 and AGV2 are in a third out-of-synch state, ie, indicating that AGV1 is behind AGV2, where the second threshold range can be determined by the parameters of the trapezoid block (eg, lower side length C2 and middle side length C3 ) .
  • the parameters of the trapezoid block eg, lower side length C2 and middle side length C3
  • step 204 when the relative state indicates that the first AGV and the second AGV are out of synchronization, the movement of the first AGV is adjusted based on the relative state.
  • step 204 may include: when the relative state is the first asynchronous state, estimating a tilt angle of the first AGV relative to the second AGV based on the second distance and the third distance; and based on the estimated tilt angle, drive the first AGV to change the moving direction to compensate for the tilt angle.
  • the AGV1 can be driven to change the moving direction (eg, rotate by an appropriate angle) to compensate for the tilt angle ⁇ .
  • step 204 may include: when the relative state is the second asynchronous state or the third asynchronous state, estimating the distance between the first AGV and the second AGV in the moving direction based on the first distance and the second distance relative displacement; and, based on the estimated relative displacement, driving the first AGV to change the moving speed to compensate for the relative displacement.
  • the AGV1 can be driven to decelerate to compensate for the relative displacement D.
  • the corresponding velocity trapezoidal curve and deceleration time can be calculated, and the movement can be automatically decelerated to compensate for the relative displacement D.
  • the AGV1 can be driven to accelerate to compensate for the relative displacement D.
  • the corresponding velocity trapezoidal curve and acceleration time can be calculated, and the movement can be automatically accelerated to compensate for the relative displacement D.
  • step 204 may include: when the relative state is the fourth asynchronous state, stopping the movement of the first AGV and the second AGV, and sending alarm information.
  • AGV1 and AGV2 are in the fourth asynchronous state, it means that when AGV1 is ahead or behind AGV2 too much, since the moving direction cannot be judged, it is necessary to stop AGV1 and AGV2 from moving to avoid unexpected situations, and send out alarm information (for example, by sound , indicator lights, etc.) to remind the user.
  • AGV1 may stop AGV2 from moving, either directly or through a workstation sending an instruction to stop moving to AGV2.
  • the method 200 may also include: judging whether the moving task has ended (for example, judging whether it has moved from the first position to the second position according to the navigation), if the moving task has not ended, then repeating the above steps 201-204 to continuously control as the slave AGV.
  • the movement of the first AGV achieves synchronization between the first AGV and the second AGV.
  • AGV synchronization can be easily realized by sampling, no complex image processing technology is required, field costs are effectively reduced, AGV synchronization can be quickly realized to meet application requirements, and it has a high-precision and intelligent synchronization mechanism
  • the design can be flexibly and reliably applied to scenarios where multiple AGVs work together.
  • FIG. 7 shows a block diagram of an exemplary apparatus 700 for implementing synchronization between two AGVs, wherein the two AGVs include a first AGV and a second AGV, arranged at a position of the first AGV, according to an embodiment of the present disclosure.
  • the first ranging unit and the second ranging unit on the side surface are respectively initially aligned with specific positions on the first trapezoid block and the second trapezoid block provided on the side surface of the second AGV, the first AGV and the second
  • the two AGVs are designated to be spaced apart by a first distance, the first AGV moving following the movement of the second AGV.
  • the apparatus 700 includes a first measurement module 701 , a second measurement module 702 , a state determination module 703 and an adjustment module 704 .
  • the first measurement module 701 is configured to measure the second distance between the first AGV and the second AGV through the first ranging unit.
  • the second measurement module 702 is configured to measure a third distance between the first AGV and the second AGV through the second ranging unit.
  • the state determination module 703 is configured to determine the relative state of synchronization between the first AGV and the second AGV based on the first distance, the second distance and the third distance.
  • the adjustment module 704 is configured to adjust the movement of the first AGV based on the relative state when the relative state indicates that the first AGV and the second AGV are out of synchronization.
  • the first measurement module 701 may be further configured to measure the second distance between the first AGV and the second AGV by the first ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV distance.
  • the second measurement module 702 may be further configured to measure the third distance between the first AGV and the second AGV by the second ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV distance.
  • the state determination module 703 may be further configured to: if the second distance is not the same as the third distance, determine that the first out-of-sync state is between the first AGV and the second AGV, or if the second distance The same as the third distance, then when the second distance is within the first threshold range of the first distance, it is determined that the first AGV and the second AGV are in a second asynchronous state, and when the second distance is within the first When the two thresholds are within the range, it is determined that the first AGV and the second AGV are in a third asynchronous state, and when the second distance is the same as the first distance, it is determined that the first AGV and the second AGV are in a fourth asynchronous state .
  • the adjustment module 704 may be further configured to: estimate the tilt angle of the first AGV relative to the second AGV based on the second distance and the third distance when the relative state is the first asynchronous state; and based on Based on the estimated tilt angle, the first AGV is driven to change the moving direction to compensate for the tilt angle.
  • the adjustment module 704 may be further configured to: estimate the first AGV and the second AGV based on the first distance and the second distance when the relative state is the second asynchronous state or the third asynchronous state relative displacement of the AGV in the moving direction; and, based on the estimated relative displacement, driving the first AGV to change the moving speed to compensate for the relative displacement.
  • the adjustment module 704 may be further configured to stop the movement of the first AGV and the second AGV and issue an alarm message when the relative state is the fourth asynchronous state.
  • the above describes how to realize the synchronization process between two AGVs.
  • the above synchronization process can be flexibly applied to multiple AGV scenarios to realize synchronization between multiple AGVs, as described below in conjunction with FIGS. 8-10 .
  • FIG. 8 shows a flowchart of an exemplary method 800 for achieving synchronization between multiple AGVs, according to an embodiment of the present disclosure.
  • Figure 9 shows a schematic diagram 900 of relative movement between multiple AGVs according to an embodiment of the present disclosure.
  • the method 800 is described below in conjunction with FIG. 9 .
  • the method 800 may be applied to the example scenario 100 shown in FIG. 1 and the example system 1300 shown in FIG. 13 .
  • method 800 may be implemented by computing device 1303 in example system 1300 that is communicatively coupled to the AGV.
  • the plurality of AGVs include AGV1 (first AGV), AGV2 (second AGV) and AGV3 (third AGV), AGV2 and AGV3 are respectively arranged on both sides of AGV1 and on one side surface of AGV1
  • the first ranging unit M1 and the second ranging unit M2 are respectively initially aligned with specific positions on the first trapezoidal block T1 and the second trapezoidal block T2 arranged on one side surface of the AGV2, and are arranged on one side of the AGV3
  • the third ranging unit M3 and the fourth ranging unit M4 on the surface are initially aligned with specific positions on the third and fourth trapezoidal blocks T3 and T4 provided on the other side surface of the AGV1, AGV1 and AGV2, respectively.
  • AGV1 and AGV3 are designated to be separated by another distance D 1 ′.
  • One side surface of AGV1 may be parallel to one side surface of AGV2, and the other side surface of AGV1 may be parallel to one side surface of AGV3.
  • step 801 when the first AGV moves following the movement of the second AGV, the aforementioned method 200 is used to achieve synchronization between the first AGV and the second AGV.
  • the method 200 can be used to achieve synchronization between AGV1 and AGV2.
  • step 802 when the third AGV moves following the movement of the first AGV, the aforementioned method 200 is used to achieve synchronization between the third AGV and the first AGV.
  • the method 200 can be used to achieve synchronization between AGV3 and AGV1.
  • FIG. 10 shows a flowchart of another exemplary method 1000 for achieving synchronization among multiple AGVs according to an embodiment of the present disclosure.
  • FIG. 11 shows a schematic diagram 1100 of relative movement between multiple AGVs according to an embodiment of the present disclosure.
  • the method 1000 is described below in conjunction with FIG. 11 .
  • the method 1000 may be applied to the example scenario 100 shown in FIG. 1 and the example system 1300 shown in FIG. 13 .
  • method 1000 may be implemented by computing device 1303 in example system 1300 that is communicatively coupled to the AGV.
  • the plurality of AGVs include AGV1 (first AGV), AGV2 (second AGV) and AGV3 (third AGV), AGV1 and AGV3 are respectively arranged on both sides of AGV2 and on one side surface of AGV1
  • the first ranging unit M1 and the second ranging unit M2 are respectively initially aligned with specific positions on the first trapezoidal block T1 and the second trapezoidal block T2 arranged on one side surface of the AGV2, and are arranged on one side of the AGV3
  • the third ranging unit M3 and the fourth ranging unit M4 on the surface are initially aligned with specific positions on the third trapezoidal block T3 and the fourth trapezoidal block T4 provided on the other side surface of the AGV2, respectively,
  • AGV1 and AGV2 Designated to be separated by a first distance D 1 , AGV2 and AGV3 are designated to be separated by another distance D 1 ′.
  • One side surface of AGV2 may be parallel to one side surface of AGV1, and the other side surface
  • step 1001 when the first AGV moves following the movement of the second AGV, the aforementioned method 200 is used to achieve synchronization between the first AGV and the second AGV.
  • the method 200 can be used to achieve synchronization between AGV1 and AGV2.
  • step 1002 as the third AGV moves following the movement of the second AGV, the aforementioned method 200 is used to achieve synchronization between the third AGV and the second AGV.
  • the method 200 can be used to achieve synchronization between AGV3 and AGV2.
  • FIG. 12 shows an exemplary AGV 1200 for implementing AGV synchronization according to an embodiment of the present disclosure.
  • the AGV 1200 includes a controller 1201, which may be configured to implement the aforementioned method 200 for achieving synchronization between two AGVs.
  • the method for achieving AGV synchronization can be integrated into the AGV and implemented by the AGV's controller.
  • FIG. 13 illustrates an exemplary system 1300 for implementing AGV synchronization in accordance with embodiments of the present disclosure.
  • Exemplary system 1300 includes a plurality of AGVs 1301 , AGVs 1302 and computing devices 1303 . It should be understood that the number of AGVs in Figure 13 is for illustration and not limitation, and that system 1300 may include more AGVs (eg, three, four, etc.).
  • the plurality of AGVs 1301 , AGVs 1302 may be similar to the AGVs 101 , AGVs 102 of FIG. 1 .
  • Computing device 1303 may be communicatively coupled to multiple AGVs 1301 and AGVs 1302 for information exchange.
  • computing device 1303 may communicate with multiple AGVs 1301 and 1302 via wired or wireless data links to send instructions (eg, move instructions, stop instructions, measurement instructions, etc.) to and from multiple AGVs 1301 and AGVs 1302 Acquiring data (eg, various distances (including measured distances and known distances, eg, first distance D 1 , second distance D 2 , third distance D 3 , distance H between ranging units, etc.) , various parameters (eg, ladder block parameters, etc.)
  • Computing device 1303 may be a computer (PC), workstation, programmable logic controller (PLC), and/or any suitable control device to implement the methods for implementing AGV synchronization described in embodiments of the present disclosure (eg, the aforementioned any one or more steps of methods 200, 800 or 1000).
  • PC computer
  • PLC programmable logic controller
  • Computing device 1400 includes processor 1401 and memory 1402 coupled with processor 1401 .
  • the memory 1402 is used to store computer-executable instructions that, when executed, cause the processor 1401 to perform the methods in the above embodiments (eg, any one or more steps of the aforementioned methods 200 , 800 or 1000 ).
  • the above-described method can be implemented by a computer-readable storage medium.
  • the computer-readable storage medium carries computer-readable program instructions for carrying out various embodiments of the present disclosure.
  • a computer-readable storage medium may be a tangible device that can hold and store instructions for use by the instruction execution device.
  • the computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing.
  • Non-exhaustive list of computer readable storage media include: portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM) or flash memory), static random access memory (SRAM), portable compact disk read only memory (CD-ROM), digital versatile disk (DVD), memory sticks, floppy disks, mechanically coded devices, such as printers with instructions stored thereon Hole cards or raised structures in grooves, and any suitable combination of the above.
  • RAM random access memory
  • ROM read only memory
  • EPROM erasable programmable read only memory
  • flash memory static random access memory
  • SRAM static random access memory
  • CD-ROM compact disk read only memory
  • DVD digital versatile disk
  • memory sticks floppy disks
  • mechanically coded devices such as printers with instructions stored thereon Hole cards or raised structures in grooves, and any suitable combination of the above.
  • Computer-readable storage media are not to be construed as transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (eg, light pulses through fiber optic cables), or through electrical wires transmitted electrical signals.
  • the present disclosure provides a computer-readable storage medium having computer-executable instructions stored thereon for performing various implementations of the present disclosure method in the example.
  • the present disclosure presents a computer program product tangibly stored on a computer-readable storage medium and comprising computer-executable instructions that, when executed, cause At least one processor executes the methods in various embodiments of the present disclosure.
  • the various example embodiments of the present disclosure may be implemented in hardware or special purpose circuits, software, firmware, logic, or any combination thereof. Certain aspects may be implemented in hardware, while other aspects may be implemented in firmware or software, which may be executed by a controller, microprocessor or other computing device. While aspects of the embodiments of the present disclosure are illustrated or described as block diagrams, flowcharts, or using some other graphical representation, it is to be understood that the blocks, apparatus, systems, techniques, or methods described herein may be taken as non-limiting Examples are implemented in hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controllers or other computing devices, or some combination thereof.
  • Computer-readable program instructions or computer program products for executing various embodiments of the present disclosure can also be stored in the cloud, and when invoked, the user can access the data stored in the cloud for execution through the mobile Internet, fixed network or other network.
  • the computer-readable program instructions of an embodiment of the present disclosure implement the technical solutions disclosed in accordance with various embodiments of the present disclosure.

Abstract

A method for use in implementing synchronization between two AGVs (1-2, 101-102, and 1301-1302). A first ranging unit (M1) and a second ranging unit (M2) provided on one lateral surface of the first AGV (1, 101, and 1301) respectively and initially are provided in alignment with specific positions on a first trapezoidal block (T1) and a second trapezoidal block (T2) on one lateral surface of the second AGV (2, 102, and 1302). The first AGV (1, 101, and 1301) and the second AGV (2, 102, and 1302) are specified as being spaced apart by a first distance (D1). When the first AGV (1, 101, and 1301) moves as the second AGV (2, 102, and 1302) moves, a second distance (D2) between the first AGV (1, 101, and 1301) and the second AGV (2, 102, and 1302) is measured by the first ranging unit (M1) (201); a third distance (D3) between the first AGV (1, 101, and 1301) and the second AGV (2, 102, and 1302) is measured by the second ranging unit (M2) (202); a relative state related to synchronization between the first AGV (1, 101, and 1301) and the second AGV (2, 102, and 1302) is determined on the basis of the first distance (D1), of the second distance (D2), and of the third distance (D3) (203); and when the relative state expresses that the first AGV (1, 101, and 1301) and the second AGV (2, 102, and 1302) are unsynchronized, the movement of the first AGV (1, 101, and 1301) is adjusted on the basis of the relative state (204). The method for use in implementing synchronization between the two AGVs (1-2, 101-102, and 1301-1302) easily and quickly implements the synchronization of the AGVs (1-2, 101-102, and 1301-1302), provides a high-precision and smart synchronization mechanism design, and is flexibly applicable in collaborative work scenarios of multiple AGVs (1-3, 101-102, 1200, and 1301-1302).

Description

用于实现AGV之间同步的方法和装置Method and apparatus for realizing synchronization between AGVs 技术领域technical field
本公开涉及智能移动机器人技术领域,更具体地说,涉及用于实现AGV之间同步的方法、装置、计算设备、计算机可读存储介质和程序产品。The present disclosure relates to the technical field of intelligent mobile robots, and more particularly, to a method, an apparatus, a computing device, a computer-readable storage medium and a program product for realizing synchronization between AGVs.
背景技术Background technique
AGV(Automatic Guided Vehicle)在工业和商业领域中应用越来越普遍。例如,使用AGV将组件从仓库移动至生产线,然后将成品从生产线移至仓库以自动进行物流。对于某些大尺寸产品,可能需要两个或多个AGV从一个位置移动到另一个位置,如何保持AGV之间的同步非常重要。AGV (Automatic Guided Vehicle) is becoming more and more common in industrial and commercial fields. For example, AGVs are used to move components from a warehouse to a production line, and then move finished goods from the production line to the warehouse to automate logistics. For some large-size products, two or more AGVs may be required to move from one location to another, and how to maintain synchronization between AGVs is very important.
发明内容SUMMARY OF THE INVENTION
目前AGV之间的同步问题尚未得到很好的解决。一种可能的解决方案是使用安装于AGV上方(例如,安装于车间的天花板上)的相机来捕捉AGV的图像(例如,相机需要捕捉整个车间的图像),利用计算机视觉技术(例如,图像拼接)来定位AGV,并根据计算的结果来控制AGV。然而,对于该解决方案,相机的可视区域和定位精度是关键问题,导致其成本高昂,并且从捕捉AGV、定位AGV到控制AGV存在较大延时,难以满足实际的同步应用。At present, the synchronization problem between AGVs has not been well solved. A possible solution is to use a camera mounted above the AGV (eg, mounted on the ceiling of the workshop) to capture the image of the AGV (eg, the camera needs to capture an image of the entire workshop), using computer vision techniques (eg, image stitching). ) to locate the AGV and control the AGV according to the calculated result. However, for this solution, the visible area of the camera and the positioning accuracy are the key issues, resulting in high cost, and there is a large delay from capturing the AGV, positioning the AGV to controlling the AGV, which is difficult to meet the actual synchronization application.
本公开的第一实施例提出了一种用于实现两个AGV之间同步的方法,所述两个AGV包括第一AGV和第二AGV,设置在所述第一AGV的一侧表面上的第一测距单元和第二测距单元分别初始地对准设置在所述第二AGV的一侧表面上的第一梯形块和第二梯形块上的特定位置,所述第一AGV与所述第二AGV被指定为间隔开第一距离,当所述第一AGV跟从所述第二AGV的移动而移动时,所述方法包括:A.通过第一测距单元来测量所述第一AGV与所述第二AGV之间的第二距离;B.通过所述第二测距 单元来测量所述第一AGV与所述第二AGV之间的第三距离;C.基于所述第一距离、所述第二距离和所述第三距离,确定所述第一AGV与所述第二AGV之间的关于同步的相对状态;以及D.当所述相对状态表示所述第一AGV与所述第二AGV之间不同步时,基于所述相对状态对所述第一AGV的移动进行调整。The first embodiment of the present disclosure proposes a method for realizing synchronization between two AGVs, the two AGVs include a first AGV and a second AGV, and the two AGVs are provided on one side surface of the first AGV. The first ranging unit and the second ranging unit are respectively initially aligned with specific positions on the first trapezoidal block and the second trapezoidal block provided on one side surface of the second AGV, the first AGV and the The second AGV is designated to be spaced apart by a first distance, and when the first AGV moves following the movement of the second AGV, the method includes: A. measuring the first AGV by a first ranging unit The second distance between the AGV and the second AGV; B. The third distance between the first AGV and the second AGV is measured by the second ranging unit; C. Based on the first a distance, the second distance, and the third distance, determining a relative state between the first AGV and the second AGV with respect to synchronization; and D. when the relative state represents the first AGV When out of synchronization with the second AGV, the movement of the first AGV is adjusted based on the relative state.
在该实施例中,可以利用采样来容易地实现AGV同步,无需复杂的图像处理技术,有效地降低了现场成本,并可快速实现AGV同步以满足应用需求,并且具有高精度和智能同步机制设计,可灵活和可靠地适用于多AGV协同工作的场景。In this embodiment, AGV synchronization can be easily realized by sampling, no complex image processing technology is required, field costs are effectively reduced, AGV synchronization can be quickly realized to meet application requirements, and high precision and intelligent synchronization mechanism design , which can be flexibly and reliably applied to scenarios where multiple AGVs work together.
本公开的第二实施例提供了一种用于实现多个AGV之间同步的方法,所述多个AGV包括第一AGV、第二AGV和第三AGV,所述第二AGV和所述第三AGV分别设置在所述第一AGV的两侧,设置在所述第一AGV的一侧表面上的第一测距单元和第二测距单元分别初始地对准设置在所述第二AGV的一侧表面上的第一梯形块和第二梯形块上的特定位置,设置在所述第三AGV的一侧表面上的第三测距单元和第四测距单元分别初始地对准设置在所述第一AGV的另一侧表面上的第三梯形块和第四梯形块上的特定位置,所述第一AGV与所述第二AGV被指定为间隔开第一距离,所述第一AGV与所述第三AGV被指定为间隔开另一距离,所述方法包括:当所述第一AGV跟从所述第二AGV的移动而移动时,使用根据第一实施例中所述的方法来实现所述第一AGV与所述第二AGV之间的同步,以及当所述第三AGV跟从所述第一AGV的移动而移动时,使用根据第一实施例中所述的方法来实现所述第三AGV与所述第一AGV之间的同步。The second embodiment of the present disclosure provides a method for realizing synchronization among multiple AGVs, the multiple AGVs include a first AGV, a second AGV and a third AGV, the second AGV and the third AGV Three AGVs are respectively arranged on both sides of the first AGV, and the first ranging unit and the second ranging unit arranged on one side surface of the first AGV are respectively initially aligned and arranged on the second AGV At specific positions on the first trapezoidal block and the second trapezoidal block on one side surface of the third AGV, the third ranging unit and the fourth ranging unit provided on the one side surface of the third AGV are respectively initially aligned and set At specific positions on the third and fourth trapezoidal blocks on the other side surface of the first AGV, the first AGV and the second AGV are designated to be spaced apart by a first distance, the first AGV An AGV and the third AGV are designated to be separated by another distance, the method comprising: when the first AGV moves following the movement of the second AGV, using the method described in the first embodiment method to achieve synchronization between the first AGV and the second AGV, and using the method according to the first embodiment when the third AGV moves following the movement of the first AGV Synchronization between the third AGV and the first AGV is achieved.
本公开的第三实施例提供了一种用于实现多个AGV之间同步的方法,所述多个AGV包括第一AGV、第二AGV和第三AGV,所述第一AGV和所述第三AGV分别设置在所述第二AGV的两侧,设置在所述第一AGV的一侧表面上的第一测距单元和第二测距单元分别初始地对准设置在所述第二AGV的一侧表面上的第一梯形块和第二梯形块上的特定位置,设置在所述第三AGV的一侧表面上的第三测距单元和第四测距单元分别初始地对准设置在所述第二AGV的另一侧表面上的第三梯形块和第四梯形块上的特定位置,所述第一AGV与所述第二AGV被指定为间隔开第一距离,所述第 二AGV与所述第三AGV被指定为间隔开另一距离,所述方法包括:当所述第一AGV跟从所述第二AGV的移动而移动时,使用根据第一实施例中所述的方法来实现所述第一AGV与所述第二AGV之间的同步,以及所述第三AGV跟从所述第二AGV的移动而移动时,使用根据第一实施例中所述的方法来实现所述第三AGV与所述第二AGV之间的同步。The third embodiment of the present disclosure provides a method for realizing synchronization among multiple AGVs, the multiple AGVs include a first AGV, a second AGV and a third AGV, the first AGV and the third AGV Three AGVs are respectively arranged on both sides of the second AGV, and the first ranging unit and the second ranging unit arranged on one side surface of the first AGV are respectively initially aligned and arranged on the second AGV At specific positions on the first trapezoidal block and the second trapezoidal block on one side surface of the third AGV, the third ranging unit and the fourth ranging unit provided on the one side surface of the third AGV are respectively initially aligned and set At specific positions on the third and fourth trapezoidal blocks on the other side surface of the second AGV, the first AGV and the second AGV are designated to be spaced apart by a first distance, the first The second AGV and the third AGV are designated to be separated by another distance, the method comprising: when the first AGV moves following the movement of the second AGV, using the method described in the first embodiment method to achieve synchronization between the first AGV and the second AGV, and when the third AGV moves following the movement of the second AGV, using the method described in the first embodiment Synchronization between the third AGV and the second AGV.
本公开的第四实施例提供了一种AGV,包括被配置为实现根据第一实施例中所述的方法的控制器。A fourth embodiment of the present disclosure provides an AGV including a controller configured to implement the method according to the first embodiment.
本公开的第五实施例提供了一种用于实现两个AGV之间同步的装置,所述两个AGV包括第一AGV和第二AGV,设置在所述第一AGV的一侧表面上的第一测距单元和第二测距单元分别初始地对准设置在所述第二AGV的一侧表面上的第一梯形块和第二梯形块上的特定位置,所述第一AGV与所述第二AGV被指定为间隔开第一距离,所述第一AGV跟从所述第二AGV的移动而移动,所述装置包括:第一测量模块,被配置为通过第一测距单元来测量所述第一AGV与所述第二AGV之间的第二距离;第二测量模块,被配置为通过所述第二测距单元来测量所述第一AGV与所述第二AGV之间的第三距离;状态确定模块,被配置为基于所述第一距离、所述第二距离和所述第三距离,确定所述第一AGV与所述第二AGV之间的关于同步的相对状态;以及调整模块,被配置为当所述相对状态表示所述第一AGV与所述第二AGV之间不同步时,基于所述相对状态对所述第一AGV的移动进行调整。The fifth embodiment of the present disclosure provides an apparatus for realizing synchronization between two AGVs, the two AGVs include a first AGV and a second AGV, and the two AGVs are provided on one side surface of the first AGV. The first ranging unit and the second ranging unit are respectively initially aligned with specific positions on the first trapezoidal block and the second trapezoidal block provided on one side surface of the second AGV, the first AGV and the the second AGV is designated to be spaced apart by a first distance, the first AGV moves following movement of the second AGV, the apparatus includes a first measurement module configured to measure by a first ranging unit A second distance between the first AGV and the second AGV; a second measurement module configured to measure the distance between the first AGV and the second AGV through the second ranging unit a third distance; a state determination module configured to determine a relative state of synchronization between the first AGV and the second AGV based on the first distance, the second distance, and the third distance and an adjustment module configured to adjust the movement of the first AGV based on the relative state when the relative state indicates that the first AGV and the second AGV are out of synchronization.
本公开的第六实施例提供了一种计算设备,所述计算设备包括:处理器;以及存储器,其用于存储计算机可执行指令,当所述计算机可执行指令被执行时使得所述处理器执行第一实施例、第二实施例或第三实施例中所述的方法。A sixth embodiment of the present disclosure provides a computing device comprising: a processor; and a memory for storing computer-executable instructions that, when executed, cause the processor to The method described in the first embodiment, the second embodiment or the third embodiment is performed.
本公开的第七实施例提出了一种计算机可读存储介质,所述计算机可读存储介质具有存储在其上的计算机可执行指令,所述计算机可执行指令用于执行第一实施例、第二实施例或第三实施例中所述的方法。A seventh embodiment of the present disclosure proposes a computer-readable storage medium having computer-executable instructions stored thereon, and the computer-executable instructions are used to execute the first embodiment, the first The method described in the second embodiment or the third embodiment.
本公开的第八实施例提出了一种计算机程序产品,所述计算机程序产品被有形地存储在计算机可读存储介质上,并且包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行第一实施例、第二实施 例或第三实施例中所述的方法。An eighth embodiment of the present disclosure proposes a computer program product tangibly stored on a computer-readable storage medium and comprising computer-executable instructions that, when executed, cause At least one processor performs the method described in the first embodiment, the second embodiment or the third embodiment.
附图说明Description of drawings
结合附图并参考以下详细说明,本公开的各实施例的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干实施例,在附图中:The features, advantages and other aspects of various embodiments of the present disclosure will become more apparent when taken in conjunction with the accompanying drawings and with reference to the following detailed description, In the attached picture:
图1示出了其中可以应用本公开的实施例的示例性场景。FIG. 1 illustrates an exemplary scenario in which embodiments of the present disclosure may be applied.
图2示出了根据本公开的实施例的用于实现两个AGV之间同步的示例性方法的流程图。2 shows a flowchart of an exemplary method for achieving synchronization between two AGVs according to an embodiment of the present disclosure.
图3示出了根据本公开的实施例的两个AGV之间的相对移动的示意图。3 shows a schematic diagram of relative movement between two AGVs according to an embodiment of the present disclosure.
图4示出了根据本公开的实施例的两个AGV之间的相对移动的示意图。4 shows a schematic diagram of relative movement between two AGVs according to an embodiment of the present disclosure.
图5示出了根据本公开的实施例的两个AGV之间的相对移动的示意图。5 shows a schematic diagram of relative movement between two AGVs according to an embodiment of the present disclosure.
图6示出了根据本公开的实施例的两个AGV之间的相对移动的示意图。FIG. 6 shows a schematic diagram of relative movement between two AGVs according to an embodiment of the present disclosure.
图7示出了根据本公开的实施例的用于实现两个AGV之间同步的示例性装置的框图。7 shows a block diagram of an exemplary apparatus for achieving synchronization between two AGVs according to an embodiment of the present disclosure.
图8示出了根据本公开的实施例的用于实现多个AGV之间同步的示例性方法的流程图。8 shows a flowchart of an exemplary method for achieving synchronization between multiple AGVs, according to an embodiment of the present disclosure.
图9示出了根据本公开的实施例的多个AGV之间的相对移动的示意图。FIG. 9 shows a schematic diagram of relative movement among a plurality of AGVs according to an embodiment of the present disclosure.
图10示出了根据本公开的实施例的用于实现多个AGV之间同步的示例性方法的流程图。10 shows a flowchart of an exemplary method for achieving synchronization between multiple AGVs according to an embodiment of the present disclosure.
图11示出了根据本公开的实施例的多个AGV之间的相对移动的示意图。11 shows a schematic diagram of relative movement between multiple AGVs according to an embodiment of the present disclosure.
图12示出了根据本公开的实施例的用于实现AGV同步的示例性AGV。12 illustrates an exemplary AGV for implementing AGV synchronization according to an embodiment of the present disclosure.
图13示出了根据本公开的实施例的用于实现AGV同步的示例性系统。13 illustrates an exemplary system for implementing AGV synchronization according to embodiments of the present disclosure.
图14示出了根据本公开的实施例的用于实现AGV同步的示例性计算设备。14 illustrates an exemplary computing device for implementing AGV synchronization in accordance with embodiments of the present disclosure.
具体实施方式Detailed ways
以下参考附图详细描述本公开的各个示例性实施例。虽然以下所描述的示例性方法、装置包括在其它组件当中的硬件上执行的软件和/或固件,但是应当注意,这些示例仅仅是说明性的,而不应看作是限制性的。例如,考虑 在硬件中独占地、在软件中独占地、或在硬件和软件的任何组合中可以实施任何或所有硬件、软件和固件组件。因此,虽然以下已经描述了示例性的方法和装置,但是本领域的技术人员应容易理解,所提供的示例并不用于限制用于实现这些方法和装置的方式。Various exemplary embodiments of the present disclosure are described in detail below with reference to the accompanying drawings. Although the example methods, apparatuses described below include software and/or firmware executing on hardware among other components, it should be noted that these examples are merely illustrative and should not be regarded as limiting. For example, it is contemplated that any or all hardware, software and firmware components may be implemented exclusively in hardware, exclusively in software, or in any combination of hardware and software. Accordingly, while exemplary methods and apparatus have been described below, those skilled in the art will readily appreciate that the examples provided are not intended to limit the manner in which these methods and apparatus may be implemented.
此外,附图中的流程图和框图示出了根据本公开的各个实施例的方法和系统的可能实现的体系架构、功能和操作。应当注意,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者它们有时也可以按照相反的顺序执行,这取决于所涉及的功能。同样应当注意的是,流程图和/或框图中的每个方框、以及流程图和/或框图中的方框的组合,可以使用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以使用专用硬件与计算机指令的组合来实现。Additionally, the flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of methods and systems in accordance with various embodiments of the present disclosure. It should be noted that the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may in fact be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It should also be noted that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented using dedicated hardware-based systems that perform the specified functions or operations , or can be implemented using a combination of dedicated hardware and computer instructions.
本文所使用的术语“包括”、“包含”及类似术语是开放性的术语,即“包括/包含但不限于”,表示还可以包括其它内容。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”等等。As used herein, the terms "including", "including" and similar terms are open-ended terms, ie, "including/including but not limited to," meaning that other content may also be included. The term "based on" is "based at least in part on." The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment" and so on.
图1示出了其中可以应用本公开的实施例的示例性场景100。场景100包括多个AGV,例如AGV 101和AGV 102。AGV 101沿第一路径103移动,AGV 102沿第二路径104移动。AGV 101可以装备有自动导航装置来沿规定的导引路径103自动行驶,例如,AGV 101可以使用磁导航(在AGV行驶路径的路面上贴磁条,通过磁条感应信号实现导引)、二维码导航(通过摄像头扫描地面铺设的二维码,解析二维码信息来实现导引)或激光导航(通过采集由自然环境(墙壁、柱子以及其它固定物体)反射的激光束来实现导引)等来沿第一路径103移动。AGV 102可以类似地沿第二路径104移动。AGV 101上还可以安装有面向工业领域的多关节机械手或多自由度的机器装置105,AGV 102上还可以安装有面向工业领域的多关节机械手或多自由度的机器装置106。在一些情况下,需要两个或多个AGV协同地移动产品或者协同地移动以利用机械手对产品进行处理。在这种情况下,需要保持两个或多个AGV之间的同步,例如,使AGV 101和AGV 102分别沿第一路径103和第二路径104移动时保持指定的间隔距离。应当理解,图1中AGV 的数量仅用于说明而非限制,场景100可以包括更多个AGV(例如,三个、四个等)。此外,在两个AGV的协同移动的情况下,一个AGV可以作为主AGV(master AGV),另一个AGV可以作为从AGV(slave AGV),其中,从AGV跟从主AGV的移动而移动。在多个AGV的协同移动的情况下,可以存在多种主从AGV的配置。FIG. 1 illustrates an exemplary scenario 100 in which embodiments of the present disclosure may be applied. Scenario 100 includes multiple AGVs, such as AGV 101 and AGV 102. The AGV 101 moves along the first path 103 and the AGV 102 moves along the second path 104 . The AGV 101 can be equipped with an automatic navigation device to automatically drive along the prescribed guidance path 103. For example, the AGV 101 can use magnetic navigation (a magnetic strip is attached to the road surface of the AGV driving path, and the guidance is realized by the magnetic strip induction signal), two QR code navigation (by scanning the QR code laid on the ground with a camera, and analyzing the QR code information to achieve guidance) or laser navigation (by collecting laser beams reflected by the natural environment (walls, pillars and other fixed objects) to achieve guidance ) etc. to move along the first path 103 . The AGV 102 may similarly move along the second path 104 . The AGV 101 can also be installed with a multi-joint manipulator or a multi-degree-of-freedom mechanical device 105 oriented to the industrial field, and the AGV 102 can also be installed with a multi-joint manipulator or a multi-degree-of-freedom mechanical device 106 oriented to the industrial field. In some cases, two or more AGVs are required to move the product cooperatively or to process the product with a robot. In this case, synchronization between two or more AGVs needs to be maintained, for example, to keep AGV 101 and AGV 102 at a specified separation distance as they move along first path 103 and second path 104, respectively. It should be understood that the number of AGVs in FIG. 1 is for illustration and not limitation, and that scenario 100 may include more AGVs (eg, three, four, etc.). In addition, in the case of coordinated movement of two AGVs, one AGV can act as a master AGV (master AGV), and the other AGV can act as a slave AGV (slave AGV), wherein the slave AGV moves following the movement of the master AGV. In the case of coordinated movement of multiple AGVs, there can be multiple configurations of master-slave AGVs.
然而,无论是何种导航方式,当AGV 101和AGV 102分别沿着路径103和104移动时,由于并非完全地一致(例如,移动速度误差、移动方向误差等),难免存在不同步的情况。通过下面结合图2-图6所描述的用于实现两个AGV之间同步的方法,可以使场景100中的AGV 101与AGV 102之间实现同步。However, regardless of the navigation method, when the AGV 101 and the AGV 102 move along the paths 103 and 104, respectively, because they are not completely consistent (for example, movement speed error, movement direction error, etc.), it is inevitable that there will be out of synchronization. Synchronization can be achieved between the AGV 101 and the AGV 102 in the scene 100 through the method for realizing synchronization between two AGVs described below in conjunction with FIGS. 2-6 .
图2示出了根据本公开的实施例的用于实现两个AGV之间同步的示例性方法200的流程图。方法200可以应用于如图1所示的示例性场景100和如图13所示的示例性系统1300。例如,方法200可以由图1中的任何AGV、图12中的示例性AGV 1200、示例性系统1300中与AGV通信耦合的计算设备1303实现。下面结合图3-图6来描述方法200,其中,图3-图6示出了根据本公开的实施例的两个AGV之间的相对移动的示意图300、400、500、600。FIG. 2 shows a flowchart of an exemplary method 200 for achieving synchronization between two AGVs according to an embodiment of the present disclosure. The method 200 may be applied to the example scenario 100 shown in FIG. 1 and the example system 1300 shown in FIG. 13 . For example, the method 200 may be implemented by any of the AGVs in FIG. 1 , the exemplary AGV 1200 in FIG. 12 , the computing device 1303 in the exemplary system 1300 that is communicatively coupled to the AGV. The method 200 is described below in conjunction with FIGS. 3-6 , wherein FIGS. 3-6 show schematic diagrams 300 , 400 , 500 , 600 of relative movement between two AGVs according to embodiments of the present disclosure.
参考图3,两个AGV包括AGV1(第一AGV)和AGV2(第二AGV)。第一测距单元M1和第二测距单元M2设置在AGV1的一侧表面(例如,外壁)上。第一梯形块T1和第二梯形块T2设置在AGV2的一侧表面(例如,外壁)上。AGV1的一侧表面可以平行于AGV2的一侧表面。第一梯形块T1和第二梯形块T2可以具有相同的形状(上变长、下边长、斜边、斜角),例如具有图示的斜角θ、上边长C 1和下边长C 2,C 1和C 2不相同。如图3所示,初始地,第一测距单元M1对准第一梯形块T1,第二测距单元对准第二梯形块T2。例如,第一测距单元M1和第二测距单元M2分别对准第一梯形块T1和第二梯形块T2的相同中间位置,例如,梯形块的腰线,该中间位置(中间边长C 3)将梯形的高分为H 1和H 2。在一个示例中,可以通过在第一梯形块T1和第二梯形块T2的中间位置处设置标记点来实现这种对准。因而,第一测距单元M1和第二测距单元M2之间的距离等于第一梯形块T1和第二梯形块T2之间的距离,如图4所示的纵向距离H。AGV1与AGV2被指 定为间隔开第一距离D 1。例如,通过导航(例如,磁导航、二维码导航、激光导航等)进行的导引中,AGV1和AGV2的头部被指定为横向间隔开第一距离D 1,如图3-图6所示。 Referring to FIG. 3 , the two AGVs include AGV1 (first AGV) and AGV2 (second AGV). The first ranging unit M1 and the second ranging unit M2 are disposed on one side surface (eg, the outer wall) of the AGV1. The first trapezoidal block T1 and the second trapezoidal block T2 are provided on one side surface (eg, the outer wall) of the AGV2. One side surface of AGV1 may be parallel to one side surface of AGV2. The first trapezoidal block T1 and the second trapezoidal block T2 may have the same shape (upper lengthening, lower side length, hypotenuse, bevel angle), for example, having the illustrated bevel angle θ, upper side length C 1 and lower side length C 2 , C 1 and C 2 are not the same. As shown in FIG. 3 , initially, the first ranging unit M1 is aligned with the first trapezoidal block T1 , and the second ranging unit is aligned with the second trapezoidal block T2 . For example, the first ranging unit M1 and the second ranging unit M2 are respectively aligned with the same middle position of the first trapezoid block T1 and the second trapezoid block T2, for example, the waistline of the trapezoid block, the middle position (the middle side length C 3 ) Divide the height of the trapezoid into H 1 and H 2 . In one example, this alignment can be achieved by placing a marker point at an intermediate position of the first trapezoidal block T1 and the second trapezoidal block T2. Thus, the distance between the first ranging unit M1 and the second ranging unit M2 is equal to the distance between the first trapezoidal block T1 and the second trapezoidal block T2 , such as the longitudinal distance H shown in FIG. 4 . AGV1 and AGV2 are designated to be separated by a first distance D 1 . For example, in guidance by navigation (eg, magnetic navigation, two-dimensional code navigation, laser navigation, etc.), the heads of AGV1 and AGV2 are designated to be laterally spaced apart by a first distance D 1 , as shown in Figures 3-6 Show.
参考图2,当第一AGV跟从第二AGV的移动而移动时(即,启动了AGV移动任务(例如,从第一位置移动到第二位置),第二AGV作为主AGV,第一AGV作为从AGV),方法200从步骤201开始。在步骤201中,通过第一测距单元来测量第一AGV与第二AGV之间的第二距离。图3-图6示出了通过第一测距单元M1在两个AGV之间的相对移动下获得的第二距离D 2Referring to FIG. 2, when the first AGV moves following the movement of the second AGV (ie, the AGV movement task is initiated (eg, moving from the first position to the second position), the second AGV acts as the main AGV, and the first AGV acts as the From an AGV), the method 200 begins at step 201 . In step 201, a second distance between the first AGV and the second AGV is measured by the first ranging unit. 3-6 show the second distance D 2 obtained by the first ranging unit M1 under relative movement between the two AGVs.
在一些实施例中,步骤201可以包括:通过第一测距单元向第二AGV发射脉冲并从第二AGV接收反射脉冲来测量第一AGV与第二AGV之间的第二距离。例如,第一测距单元M1可以包括传感器,例如超声波传感器、光电传感器(红外、激光传感器)等,传感器包括发射器和接收器,发射器向AGV2发射生成的脉冲(例如,超声波、红外线、激光等),接收器接收从AGV2返回的反射脉冲(例如,超声波、红外线、激光等)。例如,可以基于采样的发射的脉冲和反射脉冲之间的时间差来计算AGV1与AGV2之间的第二距离D 2In some embodiments, step 201 may include measuring the second distance between the first AGV and the second AGV by the first ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV. For example, the first ranging unit M1 may include a sensor, such as an ultrasonic sensor, a photoelectric sensor (infrared, laser sensor), etc. The sensor includes a transmitter and a receiver, and the transmitter transmits generated pulses (eg, ultrasonic, infrared, laser) to the AGV2. etc.), the receiver receives the reflected pulses (eg, ultrasonic, infrared, laser, etc.) returned from the AGV2. For example, the second distance D2 between AGV1 and AGV2 may be calculated based on the time difference between the sampled transmitted and reflected pulses.
接着,方法200行进到步骤202。在步骤202中,通过第二测距单元来测量第一AGV与第二AGV之间的第三距离。图3-图6示出了在两个AGV之间的相对移动下通过第二测距单元M2获得的第二距离D 3Next, the method 200 proceeds to step 202 . In step 202, a third distance between the first AGV and the second AGV is measured by the second ranging unit. 3-6 show the second distance D 3 obtained by the second ranging unit M2 under relative movement between the two AGVs.
在一些实施例中,步骤202可以包括:通过第二测距单元向第二AGV发射脉冲并从第二AGV接收反射脉冲来测量第一AGV与第二AGV之间的第三距离。例如,第二测距单元M2可以包括传感器,例如超声波传感器、光电传感器(红外、激光传感器)等,传感器包括发射器和接收器,发射器向AGV2发射生成的脉冲(例如,超声波、红外线、激光等),接收器接收从AGV2返回的反射脉冲(例如,超声波、红外线、激光等)。例如,可以基于采样的发射的脉冲和反射脉冲之间的时间差来计算AGV1与AGV2之间的第二距离D 3In some embodiments, step 202 may include measuring a third distance between the first AGV and the second AGV by the second ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV. For example, the second ranging unit M2 may include a sensor, such as an ultrasonic sensor, a photoelectric sensor (infrared, laser sensor), etc. The sensor includes a transmitter and a receiver, and the transmitter transmits generated pulses (eg, ultrasonic, infrared, laser) to the AGV2 etc.), the receiver receives the reflected pulses (eg, ultrasonic, infrared, laser, etc.) returned from the AGV2. For example, the second distance D3 between AGV1 and AGV2 may be calculated based on the time difference between the sampled transmitted and reflected pulses.
接着,方法200行进到步骤203。在步骤203中,基于第一距离、第二距离和第三距离,确定第一AGV与第二AGV之间的关于同步的相对状态。 例如,如图3-图6所示,在AGV1与AGV2之间的不同相对移动下,第一距离D 1、第二距离D 2和第三距离D 3有着不同的关系,因此可以基于第一距离D 1、第二距离D 2和第三距离D 3来确定两个AGV之间是否同步以及处于何种不同步状态。 Next, the method 200 proceeds to step 203 . In step 203, based on the first distance, the second distance and the third distance, a relative state of synchronization between the first AGV and the second AGV is determined. For example, as shown in Figures 3-6, under different relative movements between AGV1 and AGV2, the first distance D 1 , the second distance D 2 and the third distance D 3 have different relationships, so the first distance D 1 , the second distance D 2 and the third distance D 3 have different relationships. The distance D 1 , the second distance D 2 and the third distance D 3 are used to determine whether the two AGVs are in synchronization and in what kind of asynchronous state.
在一些实施例中,步骤203可以包括:如果第二距离与第三距离不相同,则确定第一AGV与第二AGV之间处于第一不同步状态;或者如果第二距离与第三距离相同,则当第二距离在第一距离的第一阈值范围内时,确定第一AGV与第二AGV之间处于第二不同步状态,当第二距离在第一距离的第二阈值范围内时,确定第一AGV与第二AGV之间处于第三不同步状态,当第二距离与第一距离相同时,确定第一AGV与第二AGV之间处于第四不同步状态。In some embodiments, step 203 may include: if the second distance is different from the third distance, determining that the first out-of-sync state is between the first AGV and the second AGV; or if the second distance is the same as the third distance , then when the second distance is within the first threshold range of the first distance, it is determined that the first AGV and the second AGV are in a second asynchronous state, and when the second distance is within the second threshold range of the first distance , it is determined that the first AGV and the second AGV are in a third asynchronous state, and when the second distance is the same as the first distance, it is determined that the first AGV and the second AGV are in a fourth asynchronous state.
如图3所示,在正常情况(理想同步)下,AGV1和AGV2同步地移动,此时D 2=D 3=D 1-C 3,如果取梯形块的腰线为对准的特定位置,则C 3=(C 1+C 2)/2,H 1=H 2As shown in Figure 3, under normal conditions (ideal synchronization), AGV1 and AGV2 move synchronously, at this time D 2 =D 3 =D 1 -C 3 , if the waist line of the trapezoid block is taken as the specific position of alignment, Then C 3 =(C 1 +C 2 )/2, H 1 =H 2 .
如图4所示,当第二距离D 2不等于第三距离D 3时,表示AGV1相对于AGV2发生了倾斜,这是因为在没有倾斜的情况下,第一测距单元M1和第二测距单元M2对准的是梯形块斜面上的同一位置,由此D 2=D 3。因此,如果第二距离D 2与第三距离D 3不相同,可以确定AGV1与AGV2处于第一不同步状态,即表示相对成倾斜角α。 As shown in FIG. 4 , when the second distance D 2 is not equal to the third distance D 3 , it means that the AGV1 is tilted relative to the AGV2, because in the absence of tilt, the first distance measuring unit M1 and the second distance measuring unit M1 Aligned from cell M2 is the same position on the ramp of the trapezoidal block, whereby D2= D3 . Therefore, if the second distance D 2 is not the same as the third distance D 3 , it can be determined that the AGV1 and the AGV2 are in the first asynchronous state, which means that they are relatively inclined at an angle α.
如图5所示,当第二距离D 2等于第三距离D 3时,如果D 1-C 3<D 2<D 1-C 1,此时AGV1比AGV2移动更快。因此,当第二距离D 2在第一距离D 1的第一阈值范围内(例如,D 1-C 3<D 2<D 1-C 1)时,可以确定AGV1与AGV2处于第二不同步状态,即表示AGV1超前于AGV2,其中第一阈值范围可以由梯形块的参数(例如,上边长C 1和中间边长C 3)来确定。 As shown in FIG. 5 , when the second distance D 2 is equal to the third distance D 3 , if D 1 -C 3 <D 2 <D 1 -C 1 , the AGV1 moves faster than the AGV2 at this time. Therefore, when the second distance D 2 is within the first threshold range of the first distance D 1 (eg, D 1 -C 3 <D 2 <D 1 -C 1 ), it can be determined that AGV1 and AGV2 are in a second out-of-synch state, ie, indicating that AGV1 is ahead of AGV2, where the first threshold range can be determined by the parameters of the trapezoid block (eg, upper side length C 1 and middle side length C 3 ).
如图6所示,当第二距离D 2等于第三距离D 3时,如果D 1-C 2<D 2<D 1-C 3,此时AGV1比AGV2移动更慢。因此,当第二距离D 2在第一距离D 1的第二阈值范围内(例如,D 1-C 2<D 2<D 1-C 3)时,可以确定AGV1与AGV2处于第三不同步状态,即表示AGV1落后于AGV2,其中第二阈值范围可以由梯形块的参数(例如,下边长C 2和中间边长C 3)来确定。 As shown in FIG. 6 , when the second distance D 2 is equal to the third distance D 3 , if D 1 -C 2 <D 2 <D 1 -C 3 , the AGV1 moves slower than the AGV2 at this time. Therefore, when the second distance D 2 is within the second threshold range of the first distance D 1 (eg, D 1 -C 2 <D 2 <D 1 -C 3 ), it can be determined that AGV1 and AGV2 are in a third out-of-synch state, ie, indicating that AGV1 is behind AGV2, where the second threshold range can be determined by the parameters of the trapezoid block (eg, lower side length C2 and middle side length C3 ) .
然而,如果AGV1超前于AGV2过多或AGV1落后于AGV2过多,则 第一测距单元M1和第二测距单元M2不再对准AGV2上的梯形块的斜面上的位置,此时D 1=D 2=D 3,不能判断移动方向,此时AGV1与AGV2处于第四不同步状态。 However, if AGV1 is too much ahead of AGV2 or AGV1 is too far behind AGV2, the first ranging unit M1 and the second ranging unit M2 are no longer aligned with the position on the slope of the trapezoidal block on AGV2 , at this time D1 =D 2 =D 3 , the moving direction cannot be judged, and AGV1 and AGV2 are in the fourth asynchronous state at this time.
接着,方法200行进到步骤204。在步骤204中,当相对状态表示所述第一AGV与所述第二AGV之间不同步时,基于所述相对状态对所述第一AGV的移动进行调整。Next, the method 200 proceeds to step 204 . In step 204, when the relative state indicates that the first AGV and the second AGV are out of synchronization, the movement of the first AGV is adjusted based on the relative state.
在一些实施例中,步骤204可以包括:当相对状态为第一不同步状态时,基于第二距离和第三距离来估计第一AGV相对于第二AGV的倾斜角;以及基于所估计的倾斜角,驱动第一AGV改变移动方向以补偿倾斜角。In some embodiments, step 204 may include: when the relative state is the first asynchronous state, estimating a tilt angle of the first AGV relative to the second AGV based on the second distance and the third distance; and based on the estimated tilt angle, drive the first AGV to change the moving direction to compensate for the tilt angle.
如图4所示,当AGV1与AGV2处于第一不同步状态,即表示相对成倾斜角α时,可以根据以下等式(1)来估计倾斜角α:As shown in Figure 4, when AGV1 and AGV2 are in the first asynchronous state, that is, when the relative inclination angle α is represented, the inclination angle α can be estimated according to the following equation (1):
Figure PCTCN2020122482-appb-000001
Figure PCTCN2020122482-appb-000001
在估计出倾斜角α后,可以驱动AGV1改变移动方向(例如,旋转适当的角度)以补偿倾斜角α。After the tilt angle α is estimated, the AGV1 can be driven to change the moving direction (eg, rotate by an appropriate angle) to compensate for the tilt angle α.
在一些实施例中,步骤204可以包括:当相对状态为第二不同步状态或第三不同步状态时,基于第一距离和第二距离来估计第一AGV与第二AGV在移动方向上的相对位移;以及基于所估计的相对位移,驱动第一AGV改变移动速度以补偿相对位移。In some embodiments, step 204 may include: when the relative state is the second asynchronous state or the third asynchronous state, estimating the distance between the first AGV and the second AGV in the moving direction based on the first distance and the second distance relative displacement; and, based on the estimated relative displacement, driving the first AGV to change the moving speed to compensate for the relative displacement.
如图5所示,当AGV1与AGV2处于第二不同步状态,即表示AGV1超前于AGV2时,可以根据以下等式(2)来计算AGV1与AGV2在纵向上(即,移动方向上)的相对位移D:As shown in Figure 5, when AGV1 and AGV2 are in the second asynchronous state, that is, when AGV1 is ahead of AGV2, the relative relationship between AGV1 and AGV2 in the longitudinal direction (ie, in the moving direction) can be calculated according to the following equation (2). Displacement D:
D=H 1-(D 1-D 2-C 1)tanθ       (2) D=H 1 -(D 1 -D 2 -C 1 )tanθ (2)
在根据D 1、D 2和梯形块的参数计算出相对位移D后,可以驱动AGV1减速以补偿相对位移D。例如,可以计算相应的速度梯形曲线和减速时间,并自动减速移动以补偿相对位移D。 After the relative displacement D is calculated according to the parameters of D 1 , D 2 and the trapezoidal block, the AGV1 can be driven to decelerate to compensate for the relative displacement D. For example, the corresponding velocity trapezoidal curve and deceleration time can be calculated, and the movement can be automatically decelerated to compensate for the relative displacement D.
如图6所示,当AGV1与AGV2处于第三不同步状态,即表示AGV1落后于AGV2时,可以根据以下等式(3)来计算AGV1与AGV2在纵向上(即,移动方向上)的相对位移D:As shown in Figure 6, when AGV1 and AGV2 are in the third asynchronous state, which means that AGV1 lags behind AGV2, the relative relationship between AGV1 and AGV2 in the longitudinal direction (ie, in the moving direction) can be calculated according to the following equation (3). Displacement D:
D=(D 1-D 2-C 3)tanθ      (3) D=(D 1 -D 2 -C 3 )tanθ (3)
在根据D 1、D 2和梯形块的参数计算出相对位移D后,可以驱动AGV1 加速以补偿相对位移D。例如,可以计算相应的速度梯形曲线和加速时间,并自动加速移动以补偿相对位移D。 After the relative displacement D is calculated according to the parameters of D 1 , D 2 and the trapezoidal block, the AGV1 can be driven to accelerate to compensate for the relative displacement D. For example, the corresponding velocity trapezoidal curve and acceleration time can be calculated, and the movement can be automatically accelerated to compensate for the relative displacement D.
在一些实施例中,步骤204可以包括:当相对状态为第四不同步状态时,使第一AGV和第二AGV停止移动,并发出告警信息。In some embodiments, step 204 may include: when the relative state is the fourth asynchronous state, stopping the movement of the first AGV and the second AGV, and sending alarm information.
当AGV1与AGV2处于第四不同步状态,即表示AGV1超前或落后AGV2过多时,由于无法判断移动方向,因此需要使AGV1和AGV2停止移动,以免造成意外状况,并且发出告警信息(例如,通过声音、指示灯等)以提醒用户。例如,AGV1可以直接或通过工作站向AGV2发送停止移动的指示来使AGV2停止移动。When AGV1 and AGV2 are in the fourth asynchronous state, it means that when AGV1 is ahead or behind AGV2 too much, since the moving direction cannot be judged, it is necessary to stop AGV1 and AGV2 from moving to avoid unexpected situations, and send out alarm information (for example, by sound , indicator lights, etc.) to remind the user. For example, AGV1 may stop AGV2 from moving, either directly or through a workstation sending an instruction to stop moving to AGV2.
方法200还可以包括:判断移动任务是否结束(例如,根据导航判断是否已从第一位置移动到第二位置),如果移动任务没有结束,则重复上述步骤201-204以不断控制作为从AGV的第一AGV的移动来实现第一AGV与第二AGV之间的同步。The method 200 may also include: judging whether the moving task has ended (for example, judging whether it has moved from the first position to the second position according to the navigation), if the moving task has not ended, then repeating the above steps 201-204 to continuously control as the slave AGV. The movement of the first AGV achieves synchronization between the first AGV and the second AGV.
根据本公开的实施例,可以利用采样来容易地实现AGV同步,无需复杂的图像处理技术,有效地降低了现场成本,并可快速实现AGV同步以满足应用需求,并且具有高精度和智能同步机制设计,可灵活和可靠地适用于多AGV协同工作的场景。According to the embodiments of the present disclosure, AGV synchronization can be easily realized by sampling, no complex image processing technology is required, field costs are effectively reduced, AGV synchronization can be quickly realized to meet application requirements, and it has a high-precision and intelligent synchronization mechanism The design can be flexibly and reliably applied to scenarios where multiple AGVs work together.
图7示出了根据本公开的实施例的用于实现两个AGV之间同步的示例性装置700的框图,其中,两个AGV包括第一AGV和第二AGV,设置在第一AGV的一侧表面上的第一测距单元和第二测距单元分别初始地对准设置在第二AGV的一侧表面上的第一梯形块和第二梯形块上的特定位置,第一AGV与第二AGV被指定为间隔开第一距离,第一AGV跟从第二AGV的移动而移动。装置700包括第一测量模块701、第二测量模块702、状态确定模块703和调整模块704。FIG. 7 shows a block diagram of an exemplary apparatus 700 for implementing synchronization between two AGVs, wherein the two AGVs include a first AGV and a second AGV, arranged at a position of the first AGV, according to an embodiment of the present disclosure. The first ranging unit and the second ranging unit on the side surface are respectively initially aligned with specific positions on the first trapezoid block and the second trapezoid block provided on the side surface of the second AGV, the first AGV and the second The two AGVs are designated to be spaced apart by a first distance, the first AGV moving following the movement of the second AGV. The apparatus 700 includes a first measurement module 701 , a second measurement module 702 , a state determination module 703 and an adjustment module 704 .
第一测量模块701被配置为通过第一测距单元来测量第一AGV与第二AGV之间的第二距离。The first measurement module 701 is configured to measure the second distance between the first AGV and the second AGV through the first ranging unit.
第二测量模块702被配置为通过第二测距单元来测量第一AGV与第二AGV之间的第三距离。The second measurement module 702 is configured to measure a third distance between the first AGV and the second AGV through the second ranging unit.
状态确定模块703被配置为基于第一距离、第二距离和第三距离,确定第一AGV与第二AGV之间的关于同步的相对状态。The state determination module 703 is configured to determine the relative state of synchronization between the first AGV and the second AGV based on the first distance, the second distance and the third distance.
调整模块704被配置为当相对状态表示第一AGV与第二AGV之间不同步时,基于相对状态对第一AGV的移动进行调整。The adjustment module 704 is configured to adjust the movement of the first AGV based on the relative state when the relative state indicates that the first AGV and the second AGV are out of synchronization.
在一些实施例中,第一测量模块701可以被进一步配置为通过第一测距单元向第二AGV发射脉冲并从第二AGV接收反射脉冲来测量第一AGV与第二AGV之间的第二距离。In some embodiments, the first measurement module 701 may be further configured to measure the second distance between the first AGV and the second AGV by the first ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV distance.
在一些实施例中,第二测量模块702可以被进一步配置为通过第二测距单元向第二AGV发射脉冲并从第二AGV接收反射脉冲来测量第一AGV与第二AGV之间的第三距离。In some embodiments, the second measurement module 702 may be further configured to measure the third distance between the first AGV and the second AGV by the second ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV distance.
在一些实施例中,状态确定模块703可以被进一步配置为:如果第二距离与第三距离不相同,则确定第一AGV与第二AGV之间处于第一不同步状态,或者如果第二距离与第三距离相同,则当第二距离在第一距离的第一阈值范围内时,确定第一AGV与第二AGV之间处于第二不同步状态,当第二距离在第一距离的第二阈值范围内时,确定第一AGV与第二AGV之间处于第三不同步状态,当第二距离与第一距离相同时,确定第一AGV与第二AGV之间处于第四不同步状态。In some embodiments, the state determination module 703 may be further configured to: if the second distance is not the same as the third distance, determine that the first out-of-sync state is between the first AGV and the second AGV, or if the second distance The same as the third distance, then when the second distance is within the first threshold range of the first distance, it is determined that the first AGV and the second AGV are in a second asynchronous state, and when the second distance is within the first When the two thresholds are within the range, it is determined that the first AGV and the second AGV are in a third asynchronous state, and when the second distance is the same as the first distance, it is determined that the first AGV and the second AGV are in a fourth asynchronous state .
在一些实施例中,调整模块704可以被进一步配置为:当相对状态为第一不同步状态时,基于第二距离和第三距离来估计第一AGV相对于第二AGV的倾斜角;以及基于所估计的倾斜角,驱动第一AGV改变移动方向以补偿倾斜角。In some embodiments, the adjustment module 704 may be further configured to: estimate the tilt angle of the first AGV relative to the second AGV based on the second distance and the third distance when the relative state is the first asynchronous state; and based on Based on the estimated tilt angle, the first AGV is driven to change the moving direction to compensate for the tilt angle.
在一些实施例中,调整模块704可以被进一步配置为:当相对状态为第二不同步状态或第三不同步状态时,基于第一距离和第二距离来估计第一AGV与所述第二AGV在移动方向上的相对位移;以及基于所估计的相对位移,驱动第一AGV改变移动速度以补偿相对位移。In some embodiments, the adjustment module 704 may be further configured to: estimate the first AGV and the second AGV based on the first distance and the second distance when the relative state is the second asynchronous state or the third asynchronous state relative displacement of the AGV in the moving direction; and, based on the estimated relative displacement, driving the first AGV to change the moving speed to compensate for the relative displacement.
在一些实施例中,调整模块704可以被进一步配置为:当相对状态为第四不同步状态时,使第一AGV和第二AGV停止移动,并发出告警信息。In some embodiments, the adjustment module 704 may be further configured to stop the movement of the first AGV and the second AGV and issue an alarm message when the relative state is the fourth asynchronous state.
上面描述了如何实现两个AGV之间同步的过程,上述同步过程可以被灵活地应用于多个AGV的场景来实现多个AGV之间的同步,如下面结合图8-图10所描述的。The above describes how to realize the synchronization process between two AGVs. The above synchronization process can be flexibly applied to multiple AGV scenarios to realize synchronization between multiple AGVs, as described below in conjunction with FIGS. 8-10 .
图8示出了根据本公开的实施例的用于实现多个AGV之间同步的示例性方法800的流程图。图9示出了根据本公开的实施例的多个AGV之间的 相对移动的示意图900。下面结合图9来描述方法800。方法800可以应用于如图1所示的示例性场景100和如图13所示的示例性系统1300。例如,方法800可以由示例性系统1300中与AGV通信耦合的计算设备1303实现。FIG. 8 shows a flowchart of an exemplary method 800 for achieving synchronization between multiple AGVs, according to an embodiment of the present disclosure. Figure 9 shows a schematic diagram 900 of relative movement between multiple AGVs according to an embodiment of the present disclosure. The method 800 is described below in conjunction with FIG. 9 . The method 800 may be applied to the example scenario 100 shown in FIG. 1 and the example system 1300 shown in FIG. 13 . For example, method 800 may be implemented by computing device 1303 in example system 1300 that is communicatively coupled to the AGV.
如图9所示,多个AGV包括AGV1(第一AGV)、AGV2(第二AGV)和AGV3(第三AGV),AGV2和AGV3分别设置在AGV1的两侧,设置在AGV1的一侧表面上的第一测距单元M1和第二测距单元M2分别初始地对准设置在AGV2的一侧表面上的第一梯形块T1和第二梯形块T2上的特定位置,设置在AGV3的一侧表面上的第三测距单元M3和第四测距单元M4分别初始地对准设置在AGV1的另一侧表面上的第三梯形块T3和第四梯形块T4上的特定位置,AGV1与AGV2被指定为间隔开第一距离D 1,AGV1与AGV3被指定为间隔开另一距离D 1’。AGV1的一侧表面可以平行于AGV2的一侧表面,AGV1的另一侧表面可以平行于AGV3的一侧表面。 As shown in FIG. 9 , the plurality of AGVs include AGV1 (first AGV), AGV2 (second AGV) and AGV3 (third AGV), AGV2 and AGV3 are respectively arranged on both sides of AGV1 and on one side surface of AGV1 The first ranging unit M1 and the second ranging unit M2 are respectively initially aligned with specific positions on the first trapezoidal block T1 and the second trapezoidal block T2 arranged on one side surface of the AGV2, and are arranged on one side of the AGV3 The third ranging unit M3 and the fourth ranging unit M4 on the surface are initially aligned with specific positions on the third and fourth trapezoidal blocks T3 and T4 provided on the other side surface of the AGV1, AGV1 and AGV2, respectively. Designated to be separated by a first distance D 1 , AGV1 and AGV3 are designated to be separated by another distance D 1 ′. One side surface of AGV1 may be parallel to one side surface of AGV2, and the other side surface of AGV1 may be parallel to one side surface of AGV3.
参考图8,方法800开始于步骤801。在步骤801中,当第一AGV跟从第二AGV的移动而移动时,使用前述的方法200来实现第一AGV与第二AGV之间的同步。例如,将AGV2作为主AGV并将AGV1作为从AGV,从而可以使用方法200来实现AGV1与AGV2之间的同步。Referring to FIG. 8 , method 800 begins at step 801 . In step 801, when the first AGV moves following the movement of the second AGV, the aforementioned method 200 is used to achieve synchronization between the first AGV and the second AGV. For example, with AGV2 as the master AGV and AGV1 as the slave AGV, the method 200 can be used to achieve synchronization between AGV1 and AGV2.
接着,在步骤802中,当第三AGV跟从第一AGV的移动而移动时,使用前述的方法200来实现第三AGV与第一AGV之间的同步。例如,将AGV1作为主AGV并将AGV3作为从AGV,从而可以使用方法200来实现AGV3与AGV1之间的同步。Next, in step 802, when the third AGV moves following the movement of the first AGV, the aforementioned method 200 is used to achieve synchronization between the third AGV and the first AGV. For example, with AGV1 as the master AGV and AGV3 as the slave AGV, the method 200 can be used to achieve synchronization between AGV3 and AGV1.
图10示出了根据本公开的实施例的用于实现多个AGV之间同步的另一种示例性方法1000的流程图。图11示出了根据本公开的实施例的多个AGV之间的相对移动的示意图1100。下面结合图11来描述方法1000。方法1000可以应用于如图1所示的示例性场景100和如图13所示的示例性系统1300。例如,方法1000可以由示例性系统1300中与AGV通信耦合的计算设备1303实现。FIG. 10 shows a flowchart of another exemplary method 1000 for achieving synchronization among multiple AGVs according to an embodiment of the present disclosure. FIG. 11 shows a schematic diagram 1100 of relative movement between multiple AGVs according to an embodiment of the present disclosure. The method 1000 is described below in conjunction with FIG. 11 . The method 1000 may be applied to the example scenario 100 shown in FIG. 1 and the example system 1300 shown in FIG. 13 . For example, method 1000 may be implemented by computing device 1303 in example system 1300 that is communicatively coupled to the AGV.
如图11所示,多个AGV包括AGV1(第一AGV)、AGV2(第二AGV)和AGV3(第三AGV),AGV1和AGV3分别设置在AGV2的两侧,设置在AGV1的一侧表面上的第一测距单元M1和第二测距单元M2分别初始地对准设置在AGV2的一侧表面上的第一梯形块T1和第二梯形块T2上的特定 位置,设置在AGV3的一侧表面上的第三测距单元M3和第四测距单元M4分别初始地对准设置在AGV2的另一侧表面上的第三梯形块T3和第四梯形块T4上的特定位置,AGV1与AGV2被指定为间隔开第一距离D 1,AGV2与AGV3被指定为间隔开另一距离D 1’。AGV2的一侧表面可以平行于AGV1的一侧表面,AGV2的另一侧表面可以平行于AGV3的一侧表面。 As shown in FIG. 11 , the plurality of AGVs include AGV1 (first AGV), AGV2 (second AGV) and AGV3 (third AGV), AGV1 and AGV3 are respectively arranged on both sides of AGV2 and on one side surface of AGV1 The first ranging unit M1 and the second ranging unit M2 are respectively initially aligned with specific positions on the first trapezoidal block T1 and the second trapezoidal block T2 arranged on one side surface of the AGV2, and are arranged on one side of the AGV3 The third ranging unit M3 and the fourth ranging unit M4 on the surface are initially aligned with specific positions on the third trapezoidal block T3 and the fourth trapezoidal block T4 provided on the other side surface of the AGV2, respectively, AGV1 and AGV2 Designated to be separated by a first distance D 1 , AGV2 and AGV3 are designated to be separated by another distance D 1 ′. One side surface of AGV2 may be parallel to one side surface of AGV1, and the other side surface of AGV2 may be parallel to one side surface of AGV3.
参考图10,方法1000开始于步骤1001。在步骤1001中,当第一AGV跟从第二AGV的移动而移动时,使用前述的方法200来实现第一AGV与第二AGV之间的同步。例如,将AGV2作为主AGV并将AGV1作为从AGV,从而可以使用方法200来实现AGV1与AGV2之间的同步。Referring to FIG. 10 , method 1000 begins at step 1001 . In step 1001, when the first AGV moves following the movement of the second AGV, the aforementioned method 200 is used to achieve synchronization between the first AGV and the second AGV. For example, with AGV2 as the master AGV and AGV1 as the slave AGV, the method 200 can be used to achieve synchronization between AGV1 and AGV2.
接着,在步骤1002中,当第三AGV跟从第二AGV的移动而移动时,使用前述的方法200来实现第三AGV与第二AGV之间的同步。例如,将AGV2作为主AGV并将AGV3作为从AGV,从而可以使用方法200来实现AGV3与AGV2之间的同步。Next, in step 1002, as the third AGV moves following the movement of the second AGV, the aforementioned method 200 is used to achieve synchronization between the third AGV and the second AGV. For example, with AGV2 as the master AGV and AGV3 as the slave AGV, the method 200 can be used to achieve synchronization between AGV3 and AGV2.
图12示出了根据本公开的实施例的用于实现AGV同步的示例性AGV 1200。如图12所示,AGV 1200包括控制器1201,控制器1201可以被配置为实现前述的用于实现两个AGV之间同步的方法200。例如,当AGV的控制器具有足够的处理能力时,可以将用于实现AGV同步的方法集成到AGV中并由AGV的控制器来实现。FIG. 12 shows an exemplary AGV 1200 for implementing AGV synchronization according to an embodiment of the present disclosure. As shown in Figure 12, the AGV 1200 includes a controller 1201, which may be configured to implement the aforementioned method 200 for achieving synchronization between two AGVs. For example, when the AGV's controller has sufficient processing power, the method for achieving AGV synchronization can be integrated into the AGV and implemented by the AGV's controller.
图13示出了根据本公开的实施例的用于实现AGV同步的示例性系统1300。示例性系统1300包括多个AGV 1301、AGV 1302和计算设备1303。应当理解,图13中AGV的数量仅用于说明而非限制,系统1300可以包括更多个AGV(例如,三个、四个等)。多个AGV 1301、AGV 1302可以类似于图1的AGV 101、AGV 102。计算设备1303可以通信地耦合到多个AGV 1301和AGV 1302以实现信息交换。例如,计算设备1303可以通过有线或无线数据链路与多个AGV 1301和AGV 1302通信,以向多个AGV 1301和AGV 1302发送指令(例如,移动指令、停止指令、测量指令等)和从其获取数据(例如,各种距离(包括测量得的距离和已知的距离,例如,第一距离D 1、第二距离D 2、第三距离D 3、测距单元之间的距离H等),各种参数(例如,梯形块参数等),等等)。计算设备1303可以是计算机(PC)、工作站、可编程逻辑控制器(PLC)和/或任何适当的控制设备,以实现本公开的 实施例所述的用于实现AGV同步的方法(例如,前述的方法200、800或1000中的任何一个或多个步骤)。 FIG. 13 illustrates an exemplary system 1300 for implementing AGV synchronization in accordance with embodiments of the present disclosure. Exemplary system 1300 includes a plurality of AGVs 1301 , AGVs 1302 and computing devices 1303 . It should be understood that the number of AGVs in Figure 13 is for illustration and not limitation, and that system 1300 may include more AGVs (eg, three, four, etc.). The plurality of AGVs 1301 , AGVs 1302 may be similar to the AGVs 101 , AGVs 102 of FIG. 1 . Computing device 1303 may be communicatively coupled to multiple AGVs 1301 and AGVs 1302 for information exchange. For example, computing device 1303 may communicate with multiple AGVs 1301 and 1302 via wired or wireless data links to send instructions (eg, move instructions, stop instructions, measurement instructions, etc.) to and from multiple AGVs 1301 and AGVs 1302 Acquiring data (eg, various distances (including measured distances and known distances, eg, first distance D 1 , second distance D 2 , third distance D 3 , distance H between ranging units, etc.) , various parameters (eg, ladder block parameters, etc.) Computing device 1303 may be a computer (PC), workstation, programmable logic controller (PLC), and/or any suitable control device to implement the methods for implementing AGV synchronization described in embodiments of the present disclosure (eg, the aforementioned any one or more steps of methods 200, 800 or 1000).
图14示出了根据本公开的实施例的用于实现AGV同步的示例性计算设备1400的框图。计算设备1400包括处理器1401和与处理器1401耦合的存储器1402。存储器1402用于存储计算机可执行指令,当计算机可执行指令被执行时使得处理器1401执行以上实施例中的方法(例如,前述的方法200、800或1000中的任何一个或多个步骤)。14 shows a block diagram of an exemplary computing device 1400 for implementing AGV synchronization, in accordance with embodiments of the present disclosure. Computing device 1400 includes processor 1401 and memory 1402 coupled with processor 1401 . The memory 1402 is used to store computer-executable instructions that, when executed, cause the processor 1401 to perform the methods in the above embodiments (eg, any one or more steps of the aforementioned methods 200 , 800 or 1000 ).
此外,替代地,上述方法能够通过计算机可读存储介质来实现。计算机可读存储介质上载有用于执行本公开的各个实施例的计算机可读程序指令。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。Also, alternatively, the above-described method can be implemented by a computer-readable storage medium. The computer-readable storage medium carries computer-readable program instructions for carrying out various embodiments of the present disclosure. A computer-readable storage medium may be a tangible device that can hold and store instructions for use by the instruction execution device. The computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (non-exhaustive list) of computer readable storage media include: portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM) or flash memory), static random access memory (SRAM), portable compact disk read only memory (CD-ROM), digital versatile disk (DVD), memory sticks, floppy disks, mechanically coded devices, such as printers with instructions stored thereon Hole cards or raised structures in grooves, and any suitable combination of the above. Computer-readable storage media, as used herein, are not to be construed as transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (eg, light pulses through fiber optic cables), or through electrical wires transmitted electrical signals.
因此,在另一个实施例中,本公开提出了一种计算机可读存储介质,该计算机可读存储介质具有存储在其上的计算机可执行指令,计算机可执行指令用于执行本公开的各个实施例中的方法。Accordingly, in another embodiment, the present disclosure provides a computer-readable storage medium having computer-executable instructions stored thereon for performing various implementations of the present disclosure method in the example.
在另一个实施例中,本公开提出了一种计算机程序产品,该计算机程序产品被有形地存储在计算机可读存储介质上,并且包括计算机可执行指令,该计算机可执行指令在被执行时使至少一个处理器执行本公开的各个实施例中的方法。In another embodiment, the present disclosure presents a computer program product tangibly stored on a computer-readable storage medium and comprising computer-executable instructions that, when executed, cause At least one processor executes the methods in various embodiments of the present disclosure.
一般而言,本公开的各个示例实施例可以在硬件或专用电路、软件、固件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其他方面 可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本公开的实施例的各方面被图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。In general, the various example embodiments of the present disclosure may be implemented in hardware or special purpose circuits, software, firmware, logic, or any combination thereof. Certain aspects may be implemented in hardware, while other aspects may be implemented in firmware or software, which may be executed by a controller, microprocessor or other computing device. While aspects of the embodiments of the present disclosure are illustrated or described as block diagrams, flowcharts, or using some other graphical representation, it is to be understood that the blocks, apparatus, systems, techniques, or methods described herein may be taken as non-limiting Examples are implemented in hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controllers or other computing devices, or some combination thereof.
用于执行本公开的各个实施例的计算机可读程序指令或者计算机程序产品也能够存储在云端,在需要调用时,用户能够通过移动互联网、固网或者其他网络访问存储在云端上的用于执行本公开的一个实施例的计算机可读程序指令,从而实施依据本公开的各个实施例所公开的技术方案。Computer-readable program instructions or computer program products for executing various embodiments of the present disclosure can also be stored in the cloud, and when invoked, the user can access the data stored in the cloud for execution through the mobile Internet, fixed network or other network. The computer-readable program instructions of an embodiment of the present disclosure implement the technical solutions disclosed in accordance with various embodiments of the present disclosure.
虽然已经参考若干具体实施例描述了本公开的实施例,但是应当理解,本公开的实施例并不限于所公开的具体实施例。本公开的实施例旨在涵盖在所附权利要求的精神和范围内所包括的各种修改和等同布置。权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。Although embodiments of the present disclosure have been described with reference to several specific embodiments, it is to be understood that embodiments of the present disclosure are not limited to the specific embodiments disclosed. The embodiments of the present disclosure are intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. The scope of the claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.

Claims (20)

  1. 一种用于实现两个AGV之间同步的方法,所述两个AGV包括第一AGV和第二AGV,设置在所述第一AGV的一侧表面上的第一测距单元和第二测距单元分别初始地对准设置在所述第二AGV的一侧表面上的第一梯形块和第二梯形块上的特定位置,所述第一AGV与所述第二AGV被指定为间隔开第一距离,当所述第一AGV跟从所述第二AGV的移动而移动时,所述方法包括:A method for realizing synchronization between two AGVs, the two AGVs comprising a first AGV and a second AGV, a first ranging unit and a second ranging unit disposed on one side surface of the first AGV The distance unit is initially aligned with a specific position on a first trapezoidal block and a second trapezoidal block provided on one side surface of the second AGV, respectively, the first AGV and the second AGV are designated to be spaced apart A first distance, when the first AGV moves following the movement of the second AGV, the method includes:
    A.通过第一测距单元来测量所述第一AGV与所述第二AGV之间的第二距离;A. The second distance between the first AGV and the second AGV is measured by the first ranging unit;
    B.通过所述第二测距单元来测量所述第一AGV与所述第二AGV之间的第三距离;B. The third distance between the first AGV and the second AGV is measured by the second ranging unit;
    C.基于所述第一距离、所述第二距离和所述第三距离,确定所述第一AGV与所述第二AGV之间的关于同步的相对状态;以及C. determining a relative state of synchronization between the first AGV and the second AGV based on the first distance, the second distance, and the third distance; and
    D.当所述相对状态表示所述第一AGV与所述第二AGV之间不同步时,基于所述相对状态对所述第一AGV的移动进行调整。D. When the relative state indicates that the first AGV and the second AGV are out of synchronization, the movement of the first AGV is adjusted based on the relative state.
  2. 根据权利要求1所述的方法,其中,所述步骤A包括:The method according to claim 1, wherein said step A comprises:
    通过第一测距单元向所述第二AGV发射脉冲并从所述第二AGV接收反射脉冲来测量所述第一AGV与所述第二AGV之间的第二距离。The second distance between the first AGV and the second AGV is measured by the first ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV.
  3. 根据权利要求1所述的方法,其中,所述步骤B包括:The method according to claim 1, wherein said step B comprises:
    通过第二测距单元向所述第二AGV发射脉冲并从所述第二AGV接收反射脉冲来测量所述第一AGV与所述第二AGV之间的第三距离。A third distance between the first AGV and the second AGV is measured by a second ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV.
  4. 根据权利要求1所述的方法,其中,所述步骤C包括:The method according to claim 1, wherein said step C comprises:
    如果所述第二距离与所述第三距离不相同,则确定所述第一AGV与所述第二AGV之间处于第一不同步状态,或者If the second distance is not the same as the third distance, determining that the first AGV and the second AGV are in a first asynchronous state, or
    如果所述第二距离与所述第三距离相同,则If the second distance is the same as the third distance, then
    当所述第二距离在所述第一距离的第一阈值范围内时,确定所述第 一AGV与所述第二AGV之间处于第二不同步状态,When the second distance is within a first threshold range of the first distance, determining that the first AGV and the second AGV are in a second asynchronous state,
    当所述第二距离在所述第一距离的第二阈值范围内时,确定所述第一AGV与所述第二AGV之间处于第三不同步状态,When the second distance is within a second threshold range of the first distance, determining that the first AGV and the second AGV are in a third asynchronous state,
    当所述第二距离与所述第一距离相同时,确定所述第一AGV与所述第二AGV之间处于第四不同步状态。When the second distance is the same as the first distance, it is determined that the first AGV and the second AGV are in a fourth asynchronous state.
  5. 根据权利要求4所述的方法,其中,所述步骤D包括:The method according to claim 4, wherein said step D comprises:
    当所述相对状态为第一不同步状态时,基于所述第二距离和所述第三距离来估计所述第一AGV相对于所述第二AGV的倾斜角;以及when the relative state is a first asynchronous state, estimating a tilt angle of the first AGV relative to the second AGV based on the second distance and the third distance; and
    基于所估计的倾斜角,驱动所述第一AGV改变移动方向以补偿所述倾斜角。Based on the estimated tilt angle, the first AGV is driven to change the moving direction to compensate for the tilt angle.
  6. 根据权利要求4所述的方法,所述步骤D包括:The method according to claim 4, the step D comprises:
    当所述相对状态为第二不同步状态或第三不同步状态时,基于所述第一距离和所述第二距离来估计所述第一AGV与所述第二AGV在移动方向上的相对位移;以及When the relative state is the second asynchronous state or the third asynchronous state, the relative relationship between the first AGV and the second AGV in the moving direction is estimated based on the first distance and the second distance displacement; and
    基于所估计的相对位移,驱动所述第一AGV改变移动速度以补偿所述相对位移。Based on the estimated relative displacement, the first AGV is driven to change the moving speed to compensate for the relative displacement.
  7. 根据权利要求4所述的方法,所述步骤D包括:The method according to claim 4, the step D comprises:
    当所述相对状态为第四不同步状态时,使所述第一AGV和所述第二AGV停止移动,并发出告警信息。When the relative state is the fourth asynchronous state, the first AGV and the second AGV are stopped from moving, and alarm information is issued.
  8. 一种用于实现多个AGV之间同步的方法,所述多个AGV包括第一AGV、第二AGV和第三AGV,所述第二AGV和所述第三AGV分别设置在所述第一AGV的两侧,设置在所述第一AGV的一侧表面上的第一测距单元和第二测距单元分别初始地对准设置在所述第二AGV的一侧表面上的第一梯形块和第二梯形块上的特定位置,设置在所述第三AGV的一侧表面上的第三测距单元和第四测距单元分别初始地对准设置在所述第一AGV的另一侧表面上的第三梯形块和第四梯形块上的特定位置,所述第一AGV与 所述第二AGV被指定为间隔开第一距离,所述第一AGV与所述第三AGV被指定为间隔开另一距离,所述方法包括:A method for realizing synchronization between multiple AGVs, the multiple AGVs include a first AGV, a second AGV and a third AGV, the second AGV and the third AGV are respectively arranged in the first AGV On both sides of the AGV, the first ranging unit and the second ranging unit provided on one side surface of the first AGV are respectively initially aligned with the first trapezoid provided on the one side surface of the second AGV At specific positions on the block and the second trapezoidal block, the third ranging unit and the fourth ranging unit provided on one side surface of the third AGV are respectively initially aligned with the other one provided on the first AGV. Specific locations on the third and fourth trapezoidal blocks on the side surface, the first AGV and the second AGV are designated to be separated by a first distance, the first AGV and the third AGV are Specified as being separated by another distance, the method includes:
    当所述第一AGV跟从所述第二AGV的移动而移动时,使用根据权利要求1-7中任一项所述的方法来实现所述第一AGV与所述第二AGV之间的同步,以及When the first AGV moves following the movement of the second AGV, synchronization between the first AGV and the second AGV is achieved using the method according to any one of claims 1-7 ,as well as
    当所述第三AGV跟从所述第一AGV的移动而移动时,使用根据权利要求1-7中任一项所述的方法来实现所述第三AGV与所述第一AGV之间的同步。When the third AGV moves following the movement of the first AGV, synchronization between the third AGV and the first AGV is achieved using the method according to any one of claims 1-7 .
  9. 一种用于实现多个AGV之间同步的方法,所述多个AGV包括第一AGV、第二AGV和第三AGV,所述第一AGV和所述第三AGV分别设置在所述第二AGV的两侧,设置在所述第一AGV的一侧表面上的第一测距单元和第二测距单元分别初始地对准设置在所述第二AGV的一侧表面上的第一梯形块和第二梯形块上的特定位置,设置在所述第三AGV的一侧表面上的第三测距单元和第四测距单元分别初始地对准设置在所述第二AGV的另一侧表面上的第三梯形块和第四梯形块上的特定位置,所述第一AGV与所述第二AGV被指定为间隔开第一距离,所述第二AGV与所述第三AGV被指定为间隔开另一距离,所述方法包括:A method for realizing synchronization between multiple AGVs, the multiple AGVs include a first AGV, a second AGV and a third AGV, the first AGV and the third AGV are respectively arranged in the second AGV On both sides of the AGV, the first ranging unit and the second ranging unit provided on one side surface of the first AGV are respectively initially aligned with the first trapezoid provided on the one side surface of the second AGV At specific positions on the block and the second trapezoidal block, the third ranging unit and the fourth ranging unit provided on one side surface of the third AGV are respectively initially aligned with the other one provided on the second AGV. Specific locations on the third and fourth trapezoidal blocks on the side surfaces, the first AGV and the second AGV are designated to be spaced apart by a first distance, the second AGV and the third AGV are Specified as being separated by another distance, the method includes:
    当所述第一AGV跟从所述第二AGV的移动而移动时,使用根据权利要求1-7中任一项所述的方法来实现所述第一AGV与所述第二AGV之间的同步,以及When the first AGV moves following the movement of the second AGV, synchronization between the first AGV and the second AGV is achieved using the method according to any one of claims 1-7 ,as well as
    所述第三AGV跟从所述第二AGV的移动而移动时,使用根据权利要求1-7中任一项所述的方法来实现所述第三AGV与所述第二AGV之间的同步。When the third AGV moves following the movement of the second AGV, the method according to any one of claims 1-7 is used to achieve synchronization between the third AGV and the second AGV.
  10. 一种AGV,包括被配置为实现根据权利要求1-7中任一项所述的方法的控制器。An AGV comprising a controller configured to implement the method of any of claims 1-7.
  11. 一种用于实现两个AGV之间同步的装置,所述两个AGV包括第一AGV和第二AGV,设置在所述第一AGV的一侧表面上的第一测距单元 和第二测距单元分别初始地对准设置在所述第二AGV的一侧表面上的第一梯形块和第二梯形块上的特定位置,所述第一AGV与所述第二AGV被指定为间隔开第一距离,所述第一AGV跟从所述第二AGV的移动而移动,所述装置包括:A device for realizing synchronization between two AGVs, the two AGVs include a first AGV and a second AGV, a first ranging unit and a second ranging unit disposed on one side surface of the first AGV The distance unit is initially aligned with a specific position on a first trapezoidal block and a second trapezoidal block provided on one side surface of the second AGV, respectively, the first AGV and the second AGV are designated to be spaced apart For a first distance, the first AGV moves following the movement of the second AGV, and the device includes:
    第一测量模块,被配置为通过第一测距单元来测量所述第一AGV与所述第二AGV之间的第二距离;a first measurement module configured to measure a second distance between the first AGV and the second AGV through a first ranging unit;
    第二测量模块,被配置为通过所述第二测距单元来测量所述第一AGV与所述第二AGV之间的第三距离;a second measurement module configured to measure a third distance between the first AGV and the second AGV through the second ranging unit;
    状态确定模块,被配置为基于所述第一距离、所述第二距离和所述第三距离,确定所述第一AGV与所述第二AGV之间的关于同步的相对状态;以及a state determination module configured to determine a relative state of synchronization between the first AGV and the second AGV based on the first distance, the second distance, and the third distance; and
    调整模块,被配置为当所述相对状态表示所述第一AGV与所述第二AGV之间不同步时,基于所述相对状态对所述第一AGV的移动进行调整。An adjustment module configured to adjust the movement of the first AGV based on the relative state when the relative state indicates that the first AGV and the second AGV are out of synchronization.
  12. 根据权利要求11所述的装置,其中,所述第一测量模块被进一步配置为:The apparatus of claim 11, wherein the first measurement module is further configured to:
    通过第一测距单元向所述第二AGV发射脉冲并从所述第二AGV接收反射脉冲来测量所述第一AGV与所述第二AGV之间的第二距离。The second distance between the first AGV and the second AGV is measured by the first ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV.
  13. 根据权利要求11所述的装置,其中,所述第二测量模块被进一步配置为:The apparatus of claim 11, wherein the second measurement module is further configured to:
    通过第二测距单元向所述第二AGV发射脉冲并从所述第二AGV接收反射脉冲来测量所述第一AGV与所述第二AGV之间的第三距离。A third distance between the first AGV and the second AGV is measured by a second ranging unit transmitting pulses to the second AGV and receiving reflected pulses from the second AGV.
  14. 根据权利要求11所述的装置,其中,所述状态确定模块被进一步配置为:The apparatus of claim 11, wherein the state determination module is further configured to:
    如果所述第二距离与所述第三距离不相同,则确定所述第一AGV与所述第二AGV之间处于第一不同步状态,或者If the second distance is not the same as the third distance, determining that the first AGV and the second AGV are in a first asynchronous state, or
    如果所述第二距离与所述第三距离相同,则If the second distance is the same as the third distance, then
    当所述第二距离在所述第一距离的第一阈值范围内时,确定所述第 一AGV与所述第二AGV之间处于第二不同步状态,When the second distance is within a first threshold range of the first distance, determining that the first AGV and the second AGV are in a second asynchronous state,
    当所述第二距离在所述第一距离的第二阈值范围内时,确定所述第一AGV与所述第二AGV之间处于第三不同步状态,When the second distance is within a second threshold range of the first distance, determining that the first AGV and the second AGV are in a third asynchronous state,
    当所述第二距离与所述第一距离相同时,确定所述第一AGV与所述第二AGV之间处于第四不同步状态。When the second distance is the same as the first distance, it is determined that the first AGV and the second AGV are in a fourth asynchronous state.
  15. 根据权利要求14所述的装置,其中,所述调整模块被进一步配置为:The apparatus of claim 14, wherein the adjustment module is further configured to:
    当所述相对状态为第一不同步状态时,基于所述第二距离和所述第三距离来估计所述第一AGV相对于所述第二AGV的倾斜角;以及when the relative state is a first asynchronous state, estimating a tilt angle of the first AGV relative to the second AGV based on the second distance and the third distance; and
    基于所估计的倾斜角,驱动所述第一AGV改变移动方向以补偿所述倾斜角。Based on the estimated tilt angle, the first AGV is driven to change the moving direction to compensate for the tilt angle.
  16. 根据权利要求14所述的装置,所述调整模块被进一步配置为:The apparatus of claim 14, the adjustment module is further configured to:
    当所述相对状态为第二不同步状态或第三不同步状态时,基于所述第一距离和所述第二距离来估计所述第一AGV与所述第二AGV在移动方向上的相对位移;以及When the relative state is the second asynchronous state or the third asynchronous state, the relative relationship between the first AGV and the second AGV in the moving direction is estimated based on the first distance and the second distance displacement; and
    基于所估计的相对位移,驱动所述第一AGV改变移动速度以补偿所述相对位移。Based on the estimated relative displacement, the first AGV is driven to change the moving speed to compensate for the relative displacement.
  17. 根据权利要求14所述的装置,所述调整模块被进一步配置为:The apparatus of claim 14, the adjustment module is further configured to:
    当所述相对状态为第四不同步状态时,使所述第一AGV和所述第二AGV停止移动,并发出告警信息。When the relative state is the fourth asynchronous state, the first AGV and the second AGV are stopped from moving, and alarm information is issued.
  18. 计算设备,所述计算机备包括:Computing equipment, the computing equipment includes:
    处理器;以及processor; and
    存储器,其用于存储计算机可执行指令,当所述计算机可执行指令被执行时使得所述处理器执行根据权利要求1-9中任一项所述的方法。A memory for storing computer-executable instructions which, when executed, cause the processor to perform the method of any of claims 1-9.
  19. 计算机可读存储介质,所述计算机可读存储介质具有存储在其上的 计算机可执行指令,所述计算机可执行指令用于执行根据权利要求1-9中任一项所述的方法。A computer-readable storage medium having computer-executable instructions stored thereon for performing the method of any of claims 1-9.
  20. 计算机程序产品,所述计算机程序产品被有形地存储在计算机可读存储介质上,并且包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行根据权利要求1-9中任一项所述的方法。A computer program product tangibly stored on a computer-readable storage medium and comprising computer-executable instructions which, when executed, cause at least one processor to perform the execution according to claims 1-9 The method of any of the above.
PCT/CN2020/122482 2020-10-21 2020-10-21 Method and device for implementing synchronization between agvs WO2022082508A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202080106014.5A CN116323434A (en) 2020-10-21 2020-10-21 Method and device for achieving synchronization between AGVs
PCT/CN2020/122482 WO2022082508A1 (en) 2020-10-21 2020-10-21 Method and device for implementing synchronization between agvs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/122482 WO2022082508A1 (en) 2020-10-21 2020-10-21 Method and device for implementing synchronization between agvs

Publications (1)

Publication Number Publication Date
WO2022082508A1 true WO2022082508A1 (en) 2022-04-28

Family

ID=81291382

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/122482 WO2022082508A1 (en) 2020-10-21 2020-10-21 Method and device for implementing synchronization between agvs

Country Status (2)

Country Link
CN (1) CN116323434A (en)
WO (1) WO2022082508A1 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006232437A (en) * 2005-02-23 2006-09-07 Toyota Industries Corp Conveying method for article and article conveying system
JP2007161394A (en) * 2005-12-13 2007-06-28 Ishikawajima Harima Heavy Ind Co Ltd Cooperation conveying method and cooperation conveying device
CN102620712A (en) * 2012-04-12 2012-08-01 湖南路桥建设集团公司 Method and device for realizing synchronization by using laser distance meter
CN109677819A (en) * 2017-10-18 2019-04-26 北京京东尚科信息技术有限公司 Automated guided vehicle and cargo movement system
CN111028543A (en) * 2017-11-17 2020-04-17 南京视莱尔汽车电子有限公司 Multi-vehicle synchronous operation control method for automatic driving vehicle
CN111258275A (en) * 2018-11-30 2020-06-09 沈阳新松机器人自动化股份有限公司 Double-vehicle linkage control method for heavy-load AGV
CN111413988A (en) * 2020-04-10 2020-07-14 三一机器人科技有限公司 Multi-vehicle linkage method and multi-vehicle linkage system
CN111648237A (en) * 2019-11-27 2020-09-11 泰富重工制造有限公司 Follow-up following method for front and rear cranes of bridge girder erection machine

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006232437A (en) * 2005-02-23 2006-09-07 Toyota Industries Corp Conveying method for article and article conveying system
JP2007161394A (en) * 2005-12-13 2007-06-28 Ishikawajima Harima Heavy Ind Co Ltd Cooperation conveying method and cooperation conveying device
CN102620712A (en) * 2012-04-12 2012-08-01 湖南路桥建设集团公司 Method and device for realizing synchronization by using laser distance meter
CN109677819A (en) * 2017-10-18 2019-04-26 北京京东尚科信息技术有限公司 Automated guided vehicle and cargo movement system
CN111028543A (en) * 2017-11-17 2020-04-17 南京视莱尔汽车电子有限公司 Multi-vehicle synchronous operation control method for automatic driving vehicle
CN111258275A (en) * 2018-11-30 2020-06-09 沈阳新松机器人自动化股份有限公司 Double-vehicle linkage control method for heavy-load AGV
CN111648237A (en) * 2019-11-27 2020-09-11 泰富重工制造有限公司 Follow-up following method for front and rear cranes of bridge girder erection machine
CN111413988A (en) * 2020-04-10 2020-07-14 三一机器人科技有限公司 Multi-vehicle linkage method and multi-vehicle linkage system

Also Published As

Publication number Publication date
CN116323434A (en) 2023-06-23

Similar Documents

Publication Publication Date Title
CN106123908A (en) Automobile navigation method and system
JP6447863B2 (en) Moving body
JP2019021202A (en) Control device and control method for mobile robot
CN110703751B (en) Semi-autonomous formation and obstacle avoidance control method for multi-mobile robot system
KR101060988B1 (en) Apparatus and method for tracking moving objects using intelligent signal strength of Zigbee
CN104932502A (en) Short-distance obstacle avoiding method and short-distance obstacle avoiding system based on three-dimensional depth camera
Garcia et al. High-speed vision-based autonomous indoor navigation of a quadcopter
US20190152487A1 (en) Road surface estimation device, vehicle control device, and road surface estimation method
US20190137617A1 (en) Location of a target by a tracking vehicle
CN111857114A (en) Robot formation moving method, system, equipment and storage medium
JP2009110251A (en) Obstacle recognition device and autonomous traveling object having the same and its control method
WO2020207164A1 (en) Robot navigation method, apparatus and system, electronic device and storage medium
KR20200049390A (en) METHOD FOR CLUSTERING MULTI-LAYER DATE OF LiDAR, AND COMPUTING DEVICE USING THE SAME
CN109211260A (en) The driving path method and device for planning of intelligent vehicle, intelligent vehicle
WO2022082508A1 (en) Method and device for implementing synchronization between agvs
Csaba et al. Differences between Kinect and structured lighting sensor in robot navigation
WO2017167246A1 (en) Data processing method and device, and storage medium
Montero et al. Intelligent robotic system for autonomous crack detection and caracterization in concrete tunnels
CN201748918U (en) Electronic device with ranging function and ranging system
US11763492B1 (en) Apparatus and methods to calibrate a stereo camera pair
Piccinelli et al. Hybrid motion planner integrating global voronoi diagrams and local velocity obstacle method
CN112578404B (en) Method and device for determining driving path
US9448062B2 (en) Apparatus and method for determining reference elements of an environment
CN110857861A (en) Trajectory planning method and system
CN113408121B (en) High-steep slope dangerous rock movement track measurement and slope section parameter calculation method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20958091

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20958091

Country of ref document: EP

Kind code of ref document: A1