Material handling vehicle and method for performing path confirmation logic regarding a material handling vehicle
By integrating path confirmation tools on material handling vehicles, using multi-module collaborative work and environmental data, the problem of path verification and optimization of material handling vehicles is solved, and safer and more efficient traffic in warehouses is achieved.
Patent Information
- Application Number
- CN202210461211.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2016-08-26
- Filing Date
- 2017-08-25
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2037-08-25
AI Technical Summary
The prior art is difficult to effectively verify and optimize the path of material handling vehicles in warehouses, especially in avoiding obstacles and ensuring safe passage.
The path confirmation tool is adopted, which combines environmental layout data and kinematic data of the material handling vehicle through a coordinated driving unit, steering unit, positioning module and navigation module, and performs path confirmation logic to determine vehicle attitude, update dynamic vehicle boundaries, detect obstacle crossings and adjust paths to reduce collision possibility.
Accurate verification and optimization of the path of material handling vehicles, improve the safe and efficient passage of vehicles in the warehouse, and reduce the risk of collision with obstacles.
Smart Images

Figure CN114756031B_ABST
Abstract
Description
[0001] This application is a divisional application of the patent application for "Material Handling Vehicle and Method for Performing Path Confirmation Logic on a Material Handling Vehicle", with an international filing date of August 25, 2017, an international application number of PCT / US2017 / 048669, and a national application number of 201780064005.2.
[0002] Cross - reference to related applications
[0003] This application claims the benefit of priority of U.S. Provisional Application Serial Nos. 62 / 380,060 and 62 / 380,089, both filed on August 26, 2016. Technical field
[0004] The present invention relates to a material handling vehicle and a method for performing path confirmation logic on a material handling vehicle. Background art
[0005] The present disclosure relates to tools for verifying the path of a material handling vehicle, and more particularly to path confirmation tools for verifying the path of a material handling vehicle in a warehouse. For purposes of defining and describing the concepts and scope of the present disclosure, it should be noted that a "warehouse" includes any indoor or other covered facility in which a material handling vehicle transports goods, including but not limited to a warehouse primarily used for storing goods (such as a warehouse in which multi - level warehouse racks are arranged in aisles), and a production facility in which a material handling vehicle transports goods around the facility for one or more production processes. Summary of the invention
[0006] According to the subject matter of the present disclosure, a material handling vehicle includes a vehicle body, material handling hardware, one or more wheels, a drive unit, a steering unit, a positioning module, a navigation module, and a path confirmation tool. The drive unit, the steering unit, the positioning module, and the navigation module cooperate to guide the material handling vehicle along a travel path in a warehouse. The path confirmation tool includes environmental layout data of the warehouse, a recommended travel path within the warehouse, the kinematics of the material handling vehicle, and the dynamic vehicle boundary of the material handling vehicle. The dynamic vehicle boundary of the material handling vehicle is proximate to the physical outer perimeter of the material handling vehicle. The path confirmation tool executes path confirmation logic to (i) determine a vehicle pose along the recommended travel path; (ii) update the dynamic vehicle boundary to account for changes in vehicle speed and steering angle; (iii) determine whether the dynamic vehicle boundary of the vehicle is likely to cross an obstacle represented in the environmental layout data based on the determined vehicle pose at a candidate position along the recommended travel path; (iv) determine a likelihood of collision at the candidate position by referencing the dynamic vehicle boundary of the material handling vehicle and the obstacle data represented in the environmental layout data; and (v) modify the recommended travel path to reduce the likelihood of collision. The drive unit, the steering unit, the positioning module, and the navigation module cooperate to guide the material handling vehicle along the modified recommended travel path.
[0007] In an embodiment, the dynamic vehicle boundary of the path confirmation tool includes a dynamic outer boundary of the material handling vehicle and a dynamic clearance boundary of the material handling vehicle, and the dynamic clearance boundary is enlarged relative to at least a portion of the dynamic outer boundary of the material handling vehicle to define an enlarged boundary around at least a portion of the material handling vehicle. The path confirmation tool may execute path confirmation logic to (i) determine whether the dynamic clearance boundary of the material handling vehicle is likely to cross an obstacle represented in the environmental layout data based on the determined vehicle pose at a candidate position along the recommended travel path, (ii) associate possible intersection points along the recommended travel path with the vehicle pose at the candidate position along the recommended travel path to create a list of possible intersection candidates along the recommended travel path; and (iii) determine a likelihood of collision at the candidate position by referencing the list of possible intersection candidates, the dynamic outer boundary of the material handling vehicle, and the obstacle data represented in the environmental layout data. The path confirmation tool may execute path logic to determine the vehicle pose along one of the recommended travel path and the modified recommended travel path at predetermined intervals. The kinematics of the material handling vehicle may at least include a center of motion C of the material handling vehicle, data regarding the material handling vehicle (including outer dimensions, turning radius, and pose data).
[0008] A material handling vehicle may include a towing device and one or more trailers coupled to the towing device, and the attitude data is attitude data respectively indicating the towing device and the one or more trailers. A material handling vehicle may include a towing device and one or more trailers coupled to the towing device, the dynamic vehicle boundary is close to the physical outer periphery of the towing device of the material handling vehicle, and the possible crossing obstacle is a trailer among the one or more trailers coupled to the towing device. A material handling vehicle may include a towing device and one or more trailers coupled to the towing device, the dynamic vehicle boundary is close to the physical outer periphery of one trailer among the one or more trailers of the material handling vehicle, and the possible crossing obstacle is another trailer among the one or more trailers coupled to the towing device. A material handling vehicle may include a towing device and one or more trailers coupled to the towing device, the dynamic vehicle boundary is close to the physical outer periphery of the towing device and one of the one or more trailers of the material handling vehicle, while the possible crossing obstacle is an obstacle represented in the environmental layout data that is separated from the material handling vehicle.
[0009] In other embodiments, a path confirmation tool executes path confirmation logic to (i) determine the vehicle attitude along a modified recommended travel path as the drive unit, steering unit, positioning module, and navigation module cooperate to guide the material handling vehicle along the modified recommended travel path; (ii) determine whether the dynamic vehicle boundary of the material handling vehicle is likely to cross an obstacle represented in the environmental layout data based on the determined vehicle attitude at a candidate position along the modified recommended travel path; (iii) determine the probability of a collision at the candidate position by referring to the dynamic vehicle boundary of the material handling vehicle and the obstacle data represented in the environmental layout data; (iv) dynamically modify the modified recommended travel path to reduce the probability of a collision and establish a dynamically modified travel path configured to branch off from and merge into the modified recommended travel path; and (v) navigate the material handling vehicle along the dynamically modified travel path. The establishment of the dynamically modified travel path configured to branch off from and merge into the modified recommended travel path may include matching a connection path to the modified recommended travel path, the connection path including a series of three clothoid curves and a merge path length, the merge path length being configured to vary until a tight match including a minimum connection error is determined. The optimization towards the minimum connection error may include an initial recommended merge path, where the ratio of the clothoid curve length, the total length of the initial recommended merge path, and the curvature at the end of the first clothoid curve includes a length ratio of 1:1:1. The total length of the recommended merge path may include the Euclidean distance between a pair of connection points. The curvature selection regarding the curvature may include an average distribution between a maximum allowable positive curvature and a maximum negative path curvature, the average distribution being based on one or more steering angle limits.
[0010] In an embodiment, a path confirmation tool executes path confirmation logic to identify a likelihood of a collision at candidate locations of one or more problem areas as at least one recommended travel path and a configuration of the material handling vehicle relative to the recommended travel path. The likelihood of a collision can include a collision distance, which is an overlap distance at the candidate location, indicating an overlap between a dynamic vehicle boundary of the material handling vehicle and obstacle data.
[0011] According to one embodiment of the present disclosure, a material handling vehicle includes a vehicle body, material handling hardware, one or more wheels, a drive unit, a steering unit, a positioning module, a navigation module, and a path confirmation tool, wherein the drive unit, the steering unit, the positioning module, and the navigation module cooperate to guide the material handling vehicle along a travel path within a warehouse. The path confirmation tool includes environmental layout data of the warehouse, a recommended travel path within the warehouse, kinematics of the material handling vehicle, a dynamic outer boundary of the material handling vehicle, and a dynamic clearance boundary of the material handling vehicle. The dynamic outer boundary of the material handling vehicle is proximate to a physical outer perimeter of the material handling vehicle. The dynamic clearance boundary is enlarged relative to at least a portion of the dynamic outer boundary of the material handling vehicle to define an enlarged boundary around at least a portion of the material handling vehicle. The path confirmation tool executes path confirmation logic to (i) determine a vehicle pose along the recommended travel path; (ii) based on the determined vehicle pose at a candidate location along the recommended travel path, determine whether the dynamic clearance boundary of the material handling vehicle is likely to cross an obstacle represented in the environmental layout data; (iii) associate possible intersection points along the recommended travel path with the vehicle pose at the candidate location along the recommended travel path to create a list of possible intersection candidates along the recommended travel path; (iv) determine a likelihood of a collision at the candidate location by referring to the list of possible intersection candidates, the dynamic outer boundary of the material handling vehicle, and the obstacle data represented in the environmental layout data; and (v) modify the recommended travel path to reduce the likelihood of a collision. The drive unit, the steering unit, the positioning module, and the navigation module cooperate to guide the material handling vehicle along the modified recommended travel path.
[0012] In an embodiment, a path confirmation tool executes path confirmation logic to update a dynamic outer boundary and a dynamic clearance boundary to account for changes in vehicle speed and steering angle. The likelihood of a collision can include a collision distance that is the overlap distance between a potential crossing candidate and the dynamic outer boundary. A material handling vehicle can include a towing device and one or more trailers coupled to the towing device, and the potential crossing candidate is one of the towing device, a trailer, and an obstacle represented by obstacle data in environmental layout data. The potential crossing candidate can be a trailer, and the overlap distance is defined between the dynamic outer boundary of the towing device of the material handling vehicle and the trailer. The potential crossing candidate can be a trailer, and the overlap distance is defined between the trailer and the dynamic outer boundary of another trailer among the one or more trailers of the material handling vehicle. The potential crossing candidate can be an obstacle, and the overlap distance is defined between the obstacle and the dynamic outer boundary of the material handling vehicle.
[0013] According to another embodiment of the present disclosure, a method for executing path confirmation logic for a material handling vehicle is provided. The material handling vehicle includes a vehicle body, material handling hardware, one or more wheels, a drive unit, a steering unit, a positioning module, a navigation module, and a path confirmation tool. The drive unit, the steering unit, the positioning module, and the navigation module cooperate to guide the material handling vehicle along a travel path in a warehouse. The method includes receiving a plurality of inputs input into the path confirmation tool, the plurality of inputs including environmental layout data of the warehouse, a recommended travel path within the warehouse, the kinematics of the material handling vehicle, and a dynamic vehicle boundary of the material handling vehicle that is close to the physical outer periphery of the material handling vehicle. The method further includes determining, by the path confirmation tool, a vehicle pose along the recommended travel path, updating, by the path confirmation tool, the dynamic vehicle boundary to account for changes in vehicle speed and steering angle, determining, by the path confirmation tool, whether the dynamic boundary of the vehicle is likely to cross an obstacle represented in the environmental layout data based on the determined vehicle pose at a candidate position along the recommended travel path, determining, by the path confirmation tool, the likelihood of a collision at the candidate position with reference to the dynamic vehicle boundary of the material handling vehicle and the obstacle data represented in the environmental layout data, modifying, by the path confirmation tool, the recommended travel path to reduce the likelihood of a collision, and navigating, by the cooperation of the drive unit, the steering unit, the positioning module, and the navigation module, the material handling vehicle along the modified recommended travel path.
[0014] Another embodiment according to the present invention discloses a method for performing path confirmation logic for a material handling vehicle, the material handling vehicle including a vehicle body, material handling hardware, one or more wheels, a drive unit, a steering unit, a positioning module, a navigation module, and a path confirmation tool, the drive unit, the steering unit, the positioning module, and the navigation module cooperating to guide the material handling vehicle along a travel path within a warehouse, the method including receiving a plurality of inputs input into the path confirmation tool, the plurality of inputs including environmental layout data of the warehouse, a recommended travel path within the warehouse, the kinematics of the material handling vehicle, the dynamic outer boundary of the material handling vehicle, and the dynamic clearance boundary of the material handling vehicle. The dynamic outer boundary of the material handling vehicle is close to the physical outer periphery of the material handling vehicle. The dynamic clearance boundary is enlarged relative to at least a portion of the dynamic outer boundary of the material handling vehicle to define an enlarged boundary around at least a portion of the material handling vehicle. The method further includes determining a vehicle pose along the recommended travel path by the path confirmation tool, determining by the path confirmation tool whether the dynamic clearance boundary of the material handling vehicle is likely to cross an obstacle represented in the environmental layout data based on the determined vehicle pose at a candidate location along the recommended travel path, associating by the path confirmation tool possible intersection points along the recommended travel path with the vehicle pose at the candidate location along the recommended travel path to create a list of possible intersection candidates along the recommended travel path, determining by the path confirmation tool the probability of collision at the candidate location by referring to the list of possible intersection candidates, the dynamic outer boundary of the material handling vehicle, and the obstacle data represented in the environmental layout data, modifying by the path confirmation tool the recommended travel path to reduce the probability of collision, and navigating the material handling vehicle along the modified recommended travel path through the cooperation of the drive unit, the steering unit, the positioning module, and the navigation module. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] The embodiments illustrated in the drawings are illustrative and are not intended to limit the subject matter defined by the claims. The following detailed description of the illustrative embodiments can be understood when read in conjunction with the drawings, in which the same structures are indicated by the same reference numerals, wherein:
[0016] Figure 1 and 1A 1B show top views of a material handling vehicle according to one or more embodiments shown and described herein;
[0017] Figure 1C shows a top view of another material handling vehicle according to one or more embodiments shown and described herein;
[0018] Figure 1D shows Figure 1C a side view of the material handling vehicle;
[0019] Figure 2 Shows a top view of another embodiment of a material handling vehicle according to one or more embodiments shown and described herein;
[0020] Figure 3 Shows a computing environment according to one or more embodiments shown and described herein;
[0021] Figure 4 Shows a towing device according to one or more embodiments shown and described herein;
[0022] Figure 5 Shows a trailer according to one or more embodiments shown and described herein;
[0023] Figure 6 Shows another embodiment of a trailer according to one or more embodiments shown and described herein;
[0024] Figure 7 Shows another embodiment of a trailer according to one or more embodiments shown and described herein;
[0025] Figure 8 Shows a towing device and a trailer according to one or more embodiments shown and described herein;
[0026] Figure 9 Shows another embodiment of a towing device and a trailer according to one or more embodiments shown and described herein;
[0027] Figure 10 Shows another embodiment of a towing device and one or more trailers according to one or more embodiments shown and described herein;
[0028] Figure 11 Shows an intersection calculation along a path within a warehouse according to one or more embodiments shown and described herein;
[0029] Figure 12 Shows one or more steps for verifying a path according to one or more embodiments shown and described herein;
[0030] Figure 13 Shows a process for updating a dynamic vehicle boundary according to one or more embodiments shown and described herein;
[0031] Figure 14 Shows a path modification process for reducing the likelihood of collision based on a dynamic clearance boundary and a dynamic external boundary according to one or more embodiments shown and described herein;
[0032] Figure 15Illustrated is a material handling vehicle disposed in a path and including a dynamic vehicle boundary around a towing device and a plurality of trailers, according to one or more embodiments described and claimed herein;
[0033] Figure 16 Illustrated is a material handling vehicle located on a path that dynamically translates from a nominal path, according to one or more embodiments shown and described herein;
[0034] Figure 17 Illustrated is a process for path optimization for a material handling vehicle, according to one or more embodiments shown and described herein; and
[0035] Figure 18 Graphically illustrated is the result of modifying a path to avoid an obstacle, according to one or more embodiments shown and described herein. DETAILED DESCRIPTION
[0036] A broad description of a number of different embodiments of the present disclosure is set forth below. The description should be understood as being merely exemplary, and since it is not practical to describe every possible embodiment, not every possible embodiment is described, and it will be understood that any feature, characteristic, component, composition, ingredient, product, step, or method described herein may be deleted, combined, or substituted, in whole or in part, with any other feature, characteristic, component, step, or method described herein. It should be understood that numerous combinations of the embodiments shown and described are contemplated, and a particular emphasis on the description of one embodiment does not exclude its inclusion in a combination with other described embodiments. Numerous alternative embodiments may also be implemented using prior art or technology developed after the filing date of this patent, which will still fall within the scope of the claims.
[0037] Referring Figures 1 to 1D , material handling vehicles 10, 10' are illustrated as including a vehicle body 11, material handling hardware 15, 15', one or more wheels 16, a drive unit D, a steering unit S, a positioning module L, a navigation module N, and a path confirmation tool P. At least one wheel 16 may be part of the steering unit S. Figures 1C to 1DShown is a material handling vehicle 10' in the form of a lift truck, which includes conventional material handling vehicle hardware, such as a steering unit S, a positioning module L, a navigation module N, material handling hardware 15', and a drive unit D. The details of these components are beyond the scope of the present disclosure and can be obtained according to the conventional teachings and still-to-be-developed teachings in the material handling vehicle literature, examples of which include U.S. Patent Nos. 6,135,694, No. RE37215, No. 7,017,689, No. 7,681,963, No. 8,131,422, and No. 8,718,860, each belonging to Crown Equipment Corporation.
[0038] Reference Figure 1D , the material handling vehicle 10' may include one or more user interfaces that allow an operator to perform control functions of the material handling vehicle. By way of example and not limitation, suitable user interfaces include, but are not limited to, conventional or still-to-be-developed operator compartment control devices, such as a manual control device 43 for controlling the material handling hardware 15', a foot-operated vehicle speed control device 45 operatively coupled to the vehicle drive mechanism, a touchscreen hardware control interface that may be integrated with or separate from an operator compartment display device 47, a steering control device 44 operatively coupled to the steering wheel of the material handling vehicle 10, or a combination thereof. The material handling hardware 15' may be any type of conventional or still-to-be-developed hardware configured to handle materials, typically configured to assist in storing and retrieving goods, and may include, but are not limited to, fork sets, container handlers, turrets with forks, scales, telescopic handlers, etc.
[0039] In one embodiment, the user interface may include an antenna 42 or other type of automated interface having an external or remote control device, which may be used to issue commands to or otherwise remotely control the material handling vehicle 10'. The antenna 42 may be configured to wirelessly communicatively couple the material handling vehicle 10' to a remote computer. As an alternative or in addition, other types of automated interfaces may be provided, such as, by way of example, input / output ports, such as RS-232 connectors, USB ports, etc. These types of interfaces may be provided to facilitate a hardwired connection between the material handling vehicle 10' and a remote computer, such as a laptop computer.
[0040] In Figure 1In the embodiment shown, the material handling hardware 15 includes storage and retrieval hardware in the form of vertically movable articulated forks, and one or more wheels 16, at least one of which is steerable and is thus part of the steering unit. It is contemplated that although the drive unit D, the steering unit S, the positioning module L, the navigation module N, and the path confirmation tool P are schematically shown as separate components of the material handling vehicle, these components can be configured in various ways, either as completely separate units or as units that partially or fully share hardware and / or software.
[0041] Referring jointly to Figure 1 、 1A and 1B, the physical periphery of the material handling vehicle 10 can be approximated by two different types of dynamic vehicle boundaries: a dynamic outer boundary 13 and a dynamic clearance boundary 19. As described in more detail herein, the dynamic outer boundary 13 is a relatively close approximation of the physical periphery of the vehicle and can be represented, for example, by a simple or irregular polygon, by a shape including a combination of curved and linear portions, or by a complex non-geometric shape, each shape being designed to approximate the coverage area of the vehicle. Although the dynamic outer boundary 13 can be defined at a position having an arbitrary offset distance d from the physical periphery of the material handling vehicle 10, it is contemplated that this offset is relatively close to the vehicle body 11 of the vehicle 10 and, like the physical periphery, can vary between vehicles depending on various factors. Figure 1A and 1B shows the dynamic clearance boundary 19, which is offset from the dynamic outer boundary 13 of the vehicle by a distance d', which can be substantially uniform, for example 0.5 m. Although Figure 1 、 1A and 1B show the dynamic outer boundary 13 and the dynamic clearance boundary 19 deviating from the physical periphery of the vehicle 10 in a substantially uniform manner, it is contemplated that these boundaries can deviate from the physical periphery of the vehicle to different degrees along different portions of the physical periphery. For example, it may be advantageous to include a significantly greater boundary offset at the front side of the vehicle compared to the rear side of the vehicle. In any case, the respective functions and dynamic characteristics of the dynamic outer boundary 13 and the dynamic clearance boundary 19 are described in more detail below.
[0042] It should be noted that many material handling vehicles 10 will include hardware that articulates or otherwise moves to change the coverage area of the vehicle. Referring to Figure 1 , examples of such hardware include, for example, vehicle forks or other storage and retrieval hardware 15 that can extend and / or rotate, operator compartment doors that open and close, robotic arms, etc. With this in mind, as shown in Figure 1 , the dynamic outer boundary 13 can also include portions that are close to the articulated boundary 17 of the vehicle.
[0043] Although Figure 1 the dynamic outer boundary 13 in Figure 1 is shown as a relatively complex shape including a combination of curved and linear portions, it is contemplated that in many cases it would be advantageous to present the dynamic outer boundary as an irregular polygon by eliminating the curved portion. By doing so, a person skilled in the art implementing the concepts of the present disclosure will still have a more accurate representation of the vehicle's outer contour compared to a simple rectangular boundary, but will enjoy a significantly reduced computational load compared to the complex shape of Figure 1 . Figure 1 the complex shape of Figure 1 . Figure 1A FIG. shows an example of the dynamic outer boundary 13 in the form of an irregular polygon without using the curved boundary portion of Figure 1 . Figure 1 the curved boundary portion of Figure 1 . Figure 1B FIG. shows an example of an expanded dynamic outer boundary 13 in the form of an irregular polygon without using the curved boundary portion of Figure 1 . Figure 1 the curved boundary portion of Figure 1 .
[0044] Figure 2 FIG. shows another embodiment of the material handling vehicle 10, which includes a vehicle body 11, the aforementioned drive unit D, steering unit S, positioning module L, navigation module N, and path confirmation tool P, one or more wheels 16, and a coupling device 18, wherein at least one wheel 16 is steerable and is part of the steering unit. In the embodiment shown in Figure 2 , the material handling hardware may be provided on the vehicle body 11, or may be provided as engagement hardware on a material-carrying surface or one or more trailers connected via the coupling device 18, and the coupling device may be a hitch, hook, buckle, towing eye, ball hook, and the same type of towing connector. It should be understood that although embodiments of the material handling vehicles 10, 10' are shown in Figures 1 to 2 , any type of material handling vehicle may be used, including, for example, forklifts, cranes, tractors, tow tractor-trailer trains, etc.; including but not limited to those motorized material handling vehicles recognized by the Occupational Safety and Health Administration (OSHA) of the United States, namely Class I - electric motor-driven trucks, Class II - electric narrow aisle trucks, Class III - electric hand trucks or hand push / drive trucks, Class IV - internal combustion engine trucks (solid / cushion tires), Class V - internal combustion engine trucks (pneumatic tires), Class VI - electric and internal combustion engine tractors, and Class VII - rough terrain forklifts. Figure 2 the embodiment shown in Figure 2 , the material handling hardware may be provided on the vehicle body 11, or may be provided as engagement hardware on a material-carrying surface or one or more trailers connected via the coupling device 18, and the coupling device may be a hitch, hook, buckle, towing eye, ball hook, and the same type of towing connector. It should be understood that although embodiments of the material handling vehicles 10, 10' are shown in Figures 1 to 2 , any type of material handling vehicle may be used, including, for example, forklifts, cranes, tractors, tow tractor-trailer trains, etc.; including but not limited to those motorized material handling vehicles recognized by the Occupational Safety and Health Administration (OSHA) of the United States, namely Class I - electric motor-driven trucks, Class II - electric narrow aisle trucks, Class III - electric hand trucks or hand push / drive trucks, Class IV - internal combustion engine trucks (solid / cushion tires), Class V - internal combustion engine trucks (pneumatic tires), Class VI - electric and internal combustion engine tractors, and Class VII - rough terrain forklifts. Figures 1 to 2 embodiments of the material handling vehicles 10, 10' are shown in Figures 1 to 2 , any type of material handling vehicle may be used, including, for example, forklifts, cranes, tractors, tow tractor-trailer trains, etc.; including but not limited to those motorized material handling vehicles recognized by the Occupational Safety and Health Administration (OSHA) of the United States, namely Class I - electric motor-driven trucks, Class II - electric narrow aisle trucks, Class III - electric hand trucks or hand push / drive trucks, Class IV - internal combustion engine trucks (solid / cushion tires), Class V - internal combustion engine trucks (pneumatic tires), Class VI - electric and internal combustion engine tractors, and Class VII - rough terrain forklifts.
[0045] It should be noted that Figure 3And the related discussion provides a simple basic description of a suitable computing environment in which the present disclosure can be implemented. Although not required, aspects of the software are described in the broad context of computer-executable instructions, such as programs executed by a general-purpose computer (e.g., fixed and portable computers). Those skilled in the relevant art will recognize that the software can implement other communication, data processing, or computer system architectures, including: Internet devices, handheld devices (including personal digital assistants (PDAs)), wearable computers, various portable or mobile phones, multiprocessor systems, microprocessor-based or programmable consumer electronics, set-top boxes, network personal computers, microcomputers, mainframe computers, server computers, etc. In fact, terms such as "computer" are used herein essentially interchangeably and refer to any of the above devices and systems and any data processor. Aspects of the software can be embodied as a special-purpose computer or data processor that is specifically programmed, configured, or constructed to execute one or more of the computer-executable instructions detailed herein. Aspects of the software can also be implemented in a distributed computing environment in which tasks or modules are executed by remote processing devices that are linked by a communication network (e.g., a local area network (LAN), a wide area network (WAN), or the Internet). In a distributed computing environment, program modules can be located in both local and remote memory storage devices. In fact, computer-executable instructions, data structures, screen displays, and other data under aspects of the software can be distributed over the Internet or other networks (including wireless networks), located on propagated signals on a propagation medium (e.g., electromagnetic waves, sound waves, etc.) over a period of time, or they can be disposed on any analog or digital network (packet-switching, circuit-switching, or other schemes).
[0046] The path confirmation tool P can be embodied as hardware and / or software (including firmware, resident software, microcode, etc.). In one embodiment, the path confirmation tool P is embodied as software and hardware. For example, referring to Figure 3 , the path confirmation tool P can include a program embodied as a computing device 200, which can include a vehicle controller having at least one processor 205 and a computer-readable medium 210 communicatively coupled via a local interface 215. Alternatively, suitable path confirmation tool software can be stored in a computer-usable or computer-readable medium 210 accessible by the vehicle controller (e.g., on a network). The computer-usable or computer-readable medium 210 can be any non-transitory medium that can contain, store, communicate, propagate, or transport software used by or associated with the computing device 200.
[0047] A computer-usable or computer-readable medium 210 can be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific examples (a non-exhaustive list) of the computer-usable or computer-readable medium 210 will include the following volatile or non-volatile examples: an electrical connection having one or more wires, a computer disk, a random access memory (RAM) (including SRAM, DRAM, and / or other types of RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a secure digital (SD) memory, a register, one or more optical fibers, a compact disc read-only memory (CD-ROM), and / or a digital versatile disc read-only memory (DVD-ROM). It should be noted that the computer-usable or computer-readable medium 210 can even be paper or other suitable medium on which a program is printed, because the program can be electronically obtained, for example, via optical scanning of the paper or other medium, and then, if necessary, compiled, translated, or otherwise processed in a suitable manner and then stored in a computer memory. In other words, the non-transitory computer-usable or computer-readable medium 210 can include those computer-usable or computer-readable media that are not signals themselves. According to a particular embodiment, these non-transitory computer-usable or computer-readable media can be located in and / or external to the computing device 200.
[0048] The computer program code for implementing the path confirmation tool of the present disclosure can be written in a high-level programming language (such as C or C++) for ease of development. In addition, the computer program code for implementing the path confirmation tool of the present disclosure can also be written in other programming languages (e.g., but not limited to compiled languages). Some modules and programs can be written in assembly language or even microcode to enhance performance and / or storage usage. However, the software embodiments of the present disclosure do not depend on the implementation using a specific programming language. It will also be appreciated that the functionality of any or all program modules can also be implemented using discrete hardware components, one or more application-specific integrated circuits (ASICs), or a programmed digital signal processor, or a microcontroller.
[0049] In addition, the computer-usable or computer-readable medium 210 can be configured to store an operating logic 230 and an executable logic 235. The operating logic 230 can include an operating system for operating the computing device 200, a basic input / output system (BIOS), and / or other hardware, software, and / or firmware. The executable logic 235 includes a path confirmation logic 240, each of which can include a plurality of different logic components, and as a non-limiting example, each of which can be embodied as a computer program, firmware, and / or hardware. The local interface 215 can include a bus or other communication interface to assist in communication between the components of the computing device 200.
[0050] The processor 205 may include any processing component operable to receive and execute instructions (such as from the data memory 245 and / or the computer-readable medium 210). The input / output hardware 220 may include and / or be configured to connect to monitors, positioning systems, keyboards, mice, printers, image capture devices, loudspeakers, speakers, sensors, gyroscopes, compasses, and / or other devices for receiving, sending, and / or presenting data. The network interface hardware 225 may include and / or be configured to communicate with any wired or wireless network hardware, including antennas, modems, LAN ports, Wi-Fi cards, WiMax cards, mobile communication hardware, and / or other hardware for communicating with other networks and / or devices. Based on this connection, communication between the computing device 200 and other computing devices can be facilitated. In one embodiment, the processor 205 may include and / or be coupled to a graphics processing unit (GPU).
[0051] The computing device 200 may include a data memory 245. The data memory may be a subset of the computer-usable or computer-readable medium 210, or it may be a separate and distinct component within the computing device 200. The data memory 245 may include one or more data sets used by the operation logic 230 and / or the executable logic 235. The data sets may include configuration data 250, environmental data 255, and vehicle data 260.
[0052] It should be understood that Figure 3 the components shown are merely exemplary and are not intended to limit the scope of the present disclosure. As a non-limiting example, although Figure 3 the components are shown as being located within the computing device 200, this is merely an example, and in some embodiments, one or more components may be located outside the computing device 200. It should also be understood that although the computing device 200 is shown as a single device, this is also merely an example, and in some embodiments, the path confirmation logic 240 may be located on different devices. Additionally, although the computing device 200 is shown as the path confirmation logic 240 being a single logic piece, in some embodiments, the path confirmation logic 240 may include two or more independent logic components to perform the function.
[0053] Figure 4 A towing device 20 is shown as an embodiment of a material handling vehicle. The towing device 20 may include a towing device body 25, one or more steering wheels 22, one or more fixed wheels 24, and a coupling device 18. Figure 4 A dynamic outer boundary 13 of the towing device 20 is also shown. The dynamic outer boundary 13 may be a simple polygon, such as Figure 4as shown, or can be a more complex shape that more closely follows the physical perimeter of the towing device body 25, i.e., it can include hardware protrusions (such as racks, devices, attachment points, etc.) mounted to the towing device body 25, or include one or more articulated connection boundaries as shown in Figure 1 . By way of example and not limitation, the dynamic outer boundary 13 can be represented by a polygon (such as a box, square, circle, trapezoid, triangle, etc.). Figure 4 An embodiment is shown where the dynamic outer boundary 13 is a rectangle that encloses the towing device body 25 and any hardware protrusions mounted to the towing device body 25, such as racks, devices, attachment points, articulated connection boundaries, etc. The coupling device 18 is removably coupled to the towing device coupling device 26 of the trailer 50 ( Figure 5 ), and the trailer 50 is shown in Figure 5 . The towing device 20 and the trailer 50 together form a material handling vehicle.
[0054] The proprietary features of the towing device 20 can be identified and recorded in the vehicle data 260 ( Figure 3 ) for use by the path confirmation tool. Referring to Figure 4 , the vehicle data can include the towing device type, wheel type (such as the number and position of the steerable wheels 22 and the fixed wheels 24), the wheelbase dimension between one or more wheels of the towing device 20 (such as the dimension between the steerable wheels 22 and the fixed wheels 24), the rear hitch dimension, the center of movement C of the towing device 20, etc. It should be noted that the rear hitch dimension includes the distance D measured from the distal end 23 of the coupling device 18 to the center of movement C rear_hitch . The configuration data 250 ( Figure 3 ) can include data representing the clearance boundary data, which can be the offset distance from the dynamic outer boundary 13 of the towing device 20.
[0055] Referring to Figure 5 , an embodiment of the trailer 50 is shown, specifically a caster-steered trailer including one or more fixed wheels 24, one or more casters 27, and one or more towing device coupling devices 26. The features of the trailer 50 can include the trailer type (such as a caster-steered trailer), wheel type (such as the number and position of the casters 27 and the fixed wheels 24), the wheelbase dimension between one or more wheels of the trailer 50 (such as the dimension between the casters 27 and the fixed wheels 24), the rear hitch dimension, the front hitch dimension, the center of movement C of the trailer 50, etc. It should be noted that the rear hitch dimension includes the distance D measured from the distal end 23 of the rear towing device coupling device 26a to the center of movement C rear_hitch , and the front hitch dimension includes the distance D measured from the distal end 23 of the front trailer coupling device 26b to the center of movement C front_hitch。Configuration data 250( Figure 3 ) may include data representing dynamic clearance boundary data, which may be an offset distance from the dynamic outer boundary 13 of the trailer 20.
[0056] Figure 6 is an embodiment of the trailer 50, specifically a two-wheel steering trailer including one or more fixed wheels 24, one or more steering wheels 22, a towing device coupling 26, and a steering coupling 28. The characteristics of the trailer 50 may include the trailer type (e.g., two-wheel steering trailer), the wheel type (e.g., the number and position of the steering wheels 22 and fixed wheels 24), the wheelbase dimension between one or more wheels of the trailer 50 (e.g., the dimension between the steering wheels 22 and fixed wheels 24), the rear hitch size, the front hitch size, the center of motion C of the trailer 50, the maximum steering angle of the steering coupling 28 (θ steer_max ) etc. It should be noted that the rear hitch size includes the distance D measured from the distal end 23 of the rear towing device coupling 26a to the center of motion C rear_hitch , and the front hitch size includes the distance D measured from the distal end 23 of the steering coupling 28 to the steering pivot point 29 front_hitch . The maximum steering angle is measured with respect to the rotation of the distal end 23 of the steering coupling 28 about the steering pivot point 29. Configuration data 250( Figure 3 ) may include clearance polygon data, which may be an offset distance from the dynamic outer boundary 13 of the trailer 50.
[0057] Figure 7 is an embodiment of the trailer 50, specifically a four-wheel steering trailer including one or more steering wheels 22, a towing device coupling 26, and a steering coupling 28. The characteristics of the trailer 50 may include the trailer type (e.g., four-wheel steering trailer), the wheel type (e.g., the number and position of the steering wheels 22), the wheelbase dimension between one or more wheels of the trailer 50 (e.g., half of the distance between the steering wheels 22), the rear hitch size, the front hitch size, the center of motion C of the trailer 50, the maximum steering angle of the steering coupling 28, etc. It should be noted that the rear hitch size is measured from the distal end 23 of the rear towing device coupling 26a to the center of motion C, and the front hitch size is measured from the distal end 23 of the steering coupling 28 to the steering pivot point 29. The maximum steering angle is measured with respect to the rotation of the distal end 23 of the steering coupling 28 about the steering pivot point 29. Configuration data 250( Figure 3 ) may include data representing the dynamic outer boundary and the dynamic clearance boundary, both of which are offset from the physical outer periphery of the trailer 50.
[0058] Return reference Figure 3, a path confirmation tool models a material handling vehicle and one or more trailers to define the movement of the material handling vehicle and one or more trailers around a path within a warehouse. The path confirmation tool predicts the position of the material handling vehicle and one or more trailers (if coupled to the material handling vehicle) at any point along a path in the warehouse. The material handling vehicle (including each trailer) is defined by a dynamic outer boundary 13( Figures 4 to 7 ), together with its center of motion C( Figures 4 to 7 ), by path confirmation logic 240 and by data stored in data memory 245. The path confirmation tool periodically determines, at a predetermined interval (i.e., at fixed distance intervals along the path), the attitude (i.e., orientation, position, and heading) of the material handling vehicle (including one or more trailers) relative to the path, and identifies whether there are any protruding intersections between each trailer, between the trailer and the material handling vehicle, and / or between the material handling vehicle and any obstacles in the warehouse. By way of example and not limitation, the path confirmation tool may calculate the attitude of the material handling vehicle (including the trailer) every 5 cm of travel distance along the path. Additionally, in an embodiment, the material handling vehicle 10 may include towing equipment 20 and one or more trailers 50 coupled to the towing equipment 20. The dynamic vehicle boundary may be proximate to the physical outer perimeter of the towing equipment 20 of the material handling vehicle 10, and a possible intersecting obstacle is one of the one or more trailers 50 coupled to the towing equipment 20. Alternatively, the dynamic vehicle boundary may be proximate to the physical outer perimeter of one of the one or more trailers 50 of the material handling vehicle 10, and a possible intersecting obstacle is another of the one or more trailers 50 coupled to the towing equipment 20. In another embodiment, the dynamic vehicle boundary may be proximate to the physical outer perimeter of the towing equipment 20 of the material handling vehicle 10 and one of the one or more trailers 50, and a possible intersecting obstacle is an obstacle represented in the environmental layout data that is separate from the material handling vehicle.
[0059] For each fixed distance interval along the path, the pose of the material handling vehicle (including each trailer, if coupled to the material handling vehicle) is calculated based on the prior state or prior pose at the prior fixed distance interval along the path. For each pose of the material handling vehicle 10 and one or more trailers 50, their corresponding external polygons and clearance polygons are calculated for that pose and intersections with any obstacles in the quadtree are verified. Obstacle viewing will be maintained in the quadtree to allow efficient spatial queries and will be large enough to cover the entire path plus the range of the laser scanner including its position offset. The quadtree can include obstacles in the form of points and lines or any other required form. The quadtree provides an efficient lookup of nearby obstacles for intersection verification. The quadtree returns a final list of candidate intersections, thus greatly reducing the number of intersection verifications. It should be noted that spatial queries based on quadtrees are well documented in the prior art and it is envisioned that a large number of different quadtree constructs can be implemented within the scope of the present disclosure.
[0060] Each polygon of the material handling vehicle and all attached trailers (such as Figure 1 the dynamic vehicle boundary shown in) is verified for intersections (i.e., collisions or incursions) with other polygons or obstacles in the warehouse. This allows for early exit and return or output of a fault condition when an intersection is detected. If an intersection is found, the path confirmation tool will provide the location along the path, the material handling vehicle, the trailer and / or the obstacle affected by the intersection, and the collision distance. The collision distance is the overlapping distance of two or more polygons and / or one or more polygons with one or more obstacles and can be used to modify or correct the path to avoid obstacles or to modify the turning radius or hitch length of each trailer to avoid pinching between trailers or between a trailer and the material handling vehicle. Thus, the collision likelihood can include the collision distance, which is the overlapping distance at the candidate location indicating the overlap between the dynamic vehicle boundary of the material handling vehicle and the obstacle data. Obstacles that intersect any clearance polygon or the swept path of the material handling vehicle and trailer will need to be verified for their distance along the path and their collision distance. This will allow for feedback path modification and warning of dangerous areas. The swept path is the area covered by any part of the towing equipment and trailer as it moves along the path and is the combination of all towing equipment and trailer polygons at all footfalls along the path.
[0061] Refer to Figures 1A to 1B, for each calculation at a fixed distance d along the path, two polygons will be used: (i) a dynamic outer boundary 13 polygon that is offset from the physical outer perimeter of the vehicle by a distance d, and (ii) a dynamic clearance boundary 19 polygon that is expanded from the dynamic outer boundary 13 by an offset distance d’, e.g., 0.5 meters or any distance appropriate in practice. In embodiments where the total dynamic clearance boundary 19 is greater than the total dynamic outer boundary 13, each calculation performed by the path confirmation tool at fixed distance intervals can first use the clearance polygon. If no intersection is identified using the dynamic clearance boundary, a second calculation using the dynamic outer boundary is not performed.
[0062] The dynamic outer boundary 13 can be a polygon that encompasses the physical extent of all valid scan regions, where the valid scan regions are configured to match the regions included on one or more sensors coupled to the material handling vehicle 10. For example, the one or more sensors can include cameras configured to produce valid scan regions, 3D cameras (e.g., time-of-flight TOF technology), 2D and / or 3D laser scanners, radar arrays, ultrasonic arrays, or other scanning system devices such that an obstacle impinging on a valid scan region will cause the vehicle to stop. The scanning system described herein can refer to a vehicle-mounted device of the material handling vehicle 10 that is configured to quickly and reliably stop the material handling vehicle 10 when any valid scan region contains an obstacle. The device can select a valid scan region from a list of possible scan regions based on the speed and steering angle of the material handling vehicle 10. As used herein, a valid scan region can be a physical region relative to the industrial vehicle that is monitored by the scanning system for a given speed and steering angle of the material handling vehicle 10. The dynamic outer boundary 13 described herein can refer to a dynamic shape that encompasses the physical profile of the material handling vehicle 10 as well as any valid scan regions and can include slightly larger dimensions to provide an error tolerance. For example, in one embodiment, reference Figure 11 , there is a valid scan region 38 that protrudes from the leading edge of the material handling vehicle 10 and is configured to identify one or more obstacles located in front of or to the side of the material handling vehicle 10 along a physical sweep region 39 disposed around the travel path 37. The physical sweep region 39 can be wide enough to encompass the width of the material handling vehicle 10 as well as changes to the travel path 37 that occur in response to obstacle detection. In embodiments, the dynamic outer boundary 13 and / or the travel path 37 can be generated or modified based on obstacles identified by at least the valid scan region 38.
[0063] The dynamic clearance boundary 19 can be a polygon generated relative to the perimeter of the material handling vehicle 13. The dynamic clearance boundary 19 described herein can refer to a dynamic shape that encompasses the physical profile of the material handling vehicle 10 and an expansion region defined by a constant clearance distance, and can also include a slightly larger size to provide an error tolerance. In an embodiment, the dynamic clearance boundary 19 can impinge in a danger zone such that continued navigation of the vehicle is permitted as long as the dynamic outer boundary 13 does not impinge. Additionally, in an embodiment, a portion of the dynamic outer boundary 13 can be larger than a portion of the dynamic clearance boundary 19. For example, one or more portions of the dynamic outer boundary 13 can be larger than a portion of the dynamic clearance boundary 19, while other portions of the dynamic outer boundary 13 can be smaller than a portion of the dynamic clearance boundary 19. In embodiments where a portion of the dynamic outer boundary 13 can be larger than the dynamic clearance boundary 19, each calculation performed by the path confirmation tool at regular distance intervals can use both the clearance polygon and the outer polygon. For example, the left side portion of the vehicle can have a dynamic outer boundary 13 that is larger than the dynamic clearance boundary 19, while the right side portion of the vehicle can have a dynamic outer boundary 13 that is smaller than the dynamic clearance boundary 19. Whenever a crossing or collision is detected relative to the dynamic outer boundary 13 at any portion, the vehicle will stop. Additionally, while in some cases the vehicle can stop or perform obstacle avoidance when a crossing is detected for a portion of the dynamic clearance boundary 19 rather than the dynamic outer boundary 13; in other cases the vehicle can continue to be navigated if it is in a danger zone when a crossing of a portion of the dynamic clearance boundary 19 is confirmed. Thus, as a non-limiting example, a crossing may not be recognized for the left side portion of the vehicle where the dynamic outer boundary 13 is larger than the dynamic clearance boundary 19, whereas a crossing of the dynamic clearance boundary 19 for the right side portion of the vehicle where the dynamic outer boundary 13 is smaller than the dynamic clearance boundary 19 can be recognized (instead of recognizing the dynamic outer boundary 13). In such a detection scenario, an obstacle can be avoided. However, if the vehicle is in a danger zone during such a detection scenario, the obstacle scanning tool may not employ obstacle avoidance and may instead continue to navigate the vehicle along the travel path. The danger zone as described herein can refer to an area in a warehouse where pinch points are permitted to occur. Such areas can include warning signals and may not permit pedestrian entry and access.
[0064] The intersection of any polygon will result in the calculation of the collision distance, and for each intersection, the intersection will be added to the data list. The data for each intersection includes, but is not limited to, the intersection type, intersection distance, intersection angle, and the distance along the path where the intersection occurs. In an embodiment, the pinch point, as referred to herein, refers to a position where any physical part of the material handling vehicle 10 (e.g., one or more towing devices and / or trailer parts) approaches any fixed physical object in the warehouse within a specified clearance distance. The specified clearance distance can be, for example, 0.5 meters. Such a clearance distance represents, for example, the position clearance that allows pedestrians to approach.
[0065] Now referring to Figure 8 , the path confirmation tool calculates the steering wheel speed V of the material handling vehicle 10 S and the steering angle θ S , to indicate the linear speed V of the material handling vehicle 10 A (Equation 1) and the rotational speed ω A (Equation 2).
[0066] V A = V S ·cosθ s Equation 1
[0067]
[0068] These speeds of the material handling vehicle 10 are used to determine the linear speed V of the rear trailer 50 (i.e., the first trailer 50 coupled to the material handling vehicle 10) B (Equation 3) and the rotational speed ω B (Equation 4). By the same method, the linear speed V B and the rotational speed ω B of each trailer are used to determine the corresponding linear speed and rotational speed of the subsequent trailer 50 (i.e., the second trailer, the third trailer, etc.).
[0069] V B = V A ·cosθ hitchB - ω A ·D rearHitchA ·sinθ hitchB Equation 3
[0070]
[0071] Now referring to Figure 9 , the steering trailer 50 is modeled as a group of two basic trailers (e.g., the trailers shown in Figure 8 ), where the first "trailer" is modeled using the characteristics of the front hitch bar 51 with the rear hitch distance set to zero, and the "second" trailer is modeled as referred to above in Figure 8The basic trailer shown and described. The steerable trailer is modeled as two basic trailers in line, where the first trailer has a wheelbase of zero.
[0072] Figure 10 Another embodiment of the path confirmation tool is shown, where instead of using linear velocity and rotational velocity to model a material handling vehicle and / or trailer along a path, changes in direction and distance along the path are used. Further calculations will no longer include the integration of time steps. This can be seen as dividing the pose change by one second to obtain velocity, and then integrating over one second to obtain the same pose change.
[0073] Integrating the velocity of the material handling vehicle 10 provides the pose of the material handling vehicle 10 at each time step. Integrating the rotational velocity of each trailer 50 relative to the previous trailer gives the relative angle of each trailer 50. It should be noted that for steerable trailers, they are modeled as two trailers as described above.
[0074] θ hitchB = θ hitchB + t s (ω B - ω A ) Equation 5
[0075] θ hitchC = θhitchc + t s (ω C - ω B ) Equation 6
[0076] These angles are sufficient to fully define the trailer pose by performing backward processing from the material handling vehicle pose at each time step. Still referring to Figure 10 , the state is defined by the pose (x, y, θ) of A and a list of relative angles. Given the trailer details (hitch length and wheelbase), B is calculated as:
[0077]
[0078]
[0079] Then, all subsequent poses are calculated sequentially as discussed above.
[0080] Figure 11An embodiment of a path confirmation tool is basically shown to confirm the operation of a material handling vehicle along a path in a warehouse. The path confirmation tool basically includes environmental layout data of the warehouse, a recommended path in the warehouse corresponding to the environmental layout data, data about the material handling vehicle (including external dimensions, turning radius), data for each trailer (if one or more trailers are part of the vehicle), obstacle data in the warehouse, etc. The path confirmation tool will cover the clearance space around the external dimensions of the material handling vehicle (including trailers), and evaluate whether the clearance space intersects with obstacles in the warehouse, indicating pinch points and collisions. The path confirmation tool will also cover collisions between various moving parts of the material handling vehicle (such as one or more trailers and towing equipment). The path confirmation tool can highlight problem areas regarding the construction of the material handling vehicle or the recommended path in the warehouse. Thus, the path confirmation tool can execute path confirmation logic to identify the probability of collision at candidate locations of one or more problem areas as at least one recommended travel path and the construction of the material handling vehicle relative to the recommended travel path. Existing paths (taught and created) can be verified by the path confirmation tool before implementation in a warehouse, for example, by an automated guided vehicle (AGV). Various embodiments of the path confirmation tool and the operation of the path confirmation tool are described in detail herein.
[0081] For example, referring to Figure 11 , with respect to the movement of the material handling vehicle and one or more trailers 50 (if used) in the warehouse 40, an intersection calculated by the path confirmation tool is shown. Figure 11 A first position 33 and a second position 34 of the material handling vehicle 10 and one or more trailers 50 around a turning point along a path 37 in the warehouse 40 are shown. The first position 33 and the second position 34 are positions along the path 37 before and after the turning point 35, respectively. The path confirmation tool is used to confirm the path in the warehouse (such as, for example, the warehouse 40), and ensure that the clearance polygons of the material handling vehicle 10 and the trailers 50 will not intersect and that there will be no pinch points between the material handling vehicle 10 and the trailers 50 and / or between the trailers 50, and report where such a situation occurs. It is contemplated that the path can be modified to overcome any path-related problems identified by the path confirmation tool. A pinch point is a location in the warehouse where the material handling vehicle (such as one or more trailers and / or two vehicles) approaches a structure, equipment, or obstacle within a defined distance. By way of example and not limitation, the defined distance can be 0.5 meters. A danger zone is an area in the warehouse where the pinch point is located. The path confirmation tool can use the danger zones defined in the warehouse map and disregard reports of clearance collisions occurring in these zones. Additionally, the path confirmation tool can define the speed, turning radius, etc. of the material handling vehicle for one or more zones to maintain clearance and prevent collisions in these one or more zones.
[0082] Environmental data 255( Figure 3 ) and configuration data 250( Figure 3 ) are filled in and used by the path confirmation tool to represent the operating conditions of the material handling vehicle 10 and one or more trailers 50 (if used) within the warehouse 40.
[0083] The aforementioned dynamic outer boundary 13 and dynamic clearance boundary 19 of the material handling vehicle 10 (including the trailer 50) can be shown in a Cartesian coordinate system relative to the vehicle's center of motion. These boundaries have the vehicle's effective steering range therein. The steering range is defined by the minimum and maximum steering angles of the material handling vehicle 10 (including any trailer 50). It is contemplated that the aforementioned dynamic outer boundary 13 and dynamic clearance boundary 19 will change according to the vehicle speed and steering angle. Further, as the material handling vehicle 10 (including any trailer 50) progresses along a path, especially where collisions are more likely to occur, the corresponding shapes of the outer boundary 13 and clearance boundary 19 can change.
[0084] It is contemplated that in some embodiments, for all steering angles of the material handling vehicle 10 (including any trailer 50), the dynamic outer boundary 13 will deviate from the vehicle's physical outer perimeter by a minimum distance d. In other embodiments, there will be a minimum speed scan range represented by the outer boundary 13 and clearance boundary 19, and this minimum scan range will be required regardless of the steering angle. The material handling vehicle 10 (including any trailer 50) will decelerate as it approaches an obstacle. In such a case, higher vehicle speeds need not be considered, and the minimum speed scan range will be a limiting factor in vehicle travel planning. In most cases, it will be advantageous to ensure that the dynamic outer boundary 13 is configured to match the operating parameters of the particular material handling vehicle used for optimal operation of the path confirmation tool of the present disclosure.
[0085] A path is an ordered set of path segments including straight, arc, and spiral curve types. A path can be formed or received in the path confirmation tool, and / or a path can be obtained from data acquired from sensors on a material handling vehicle driven along a path in a warehouse. By way of example and not limitation, a positioning system of a material handling vehicle can be used to track the progress of a material handling vehicle manually driven through a warehouse, and subsequent data is loaded into the path confirmation tool.
[0086] The obstacles are defined in the Cartesian absolute coordinate system of the warehouse. The obstacles are point obstacles that can be marked as fixed infrastructure (i.e., cannot be deleted from the quadtree). The path confirmation tool can also accept Simultaneous Localization and Mapping (SLAM) recorded data, data from environmental laser scans, and will insert obstacles using the resulting path by repeatedly applying the single laser scan method. By way of example and not limitation, the laser scan data will be passed to the path confirmation tool along with the laser scanner parameter data, which will result in obstacles being inserted into the quadtree. Any unobserved obstacles will be deleted when the laser scan should have detected but did not detect an obstacle. This addresses the problem of pedestrians and vehicles entering and then leaving the laser scan range.
[0087] In the case of a defined path, the speed is not available and the movement is a series of direct changes in attitude. The calculations are the same, except that distance is used instead of speed and the integration time step is set to one. A smaller distance step will result in better accuracy of the trailer path.
[0088] It is envisioned that the path can be modified by using segments. If the calling function divides the nominal path into shorter lengths, the calling function can obtain the result of the modified path more quickly. Since the end point of the path is determined, this will prevent recalculation of earlier unchanged segments. Each of these segments should store all alternatives and their results, because the apparently best segment may not be the best if it leads to problems further along the path. The number of pinch points for the entire path should be minimized. Additionally, checking shorter path segments will provide faster iteration. The segments should not be split at turns, or if splitting is possible it should be concentrated at the turns. In any case, in some situations the path confirmation tool may need to backtrack a significant distance to handle a long trailer train. If there is a collision at any point, the path confirmation tool should be able to be set to exit early. In such a case, it is still important to complete the analysis of pinching the path, as it may be the optimal path and the danger zone is necessary.
[0089] It is envisioned that one or more inputs to the path confirmation tool are but not limited to: towing device type, scan area settings, trailer type, number of trailers, initial (starting) angle of the trailers, AGV path, and / or list of obstacles. It is envisioned that one or more outputs of the path confirmation tool are but not limited to determining: any intrusion area or whether any part of the towing device and trailer will cross an obstacle, whether any part of the towing device and trailer will be within the pinch point distance of any obstacle, the maximum steering angle of the towing device or any trailer beyond any distance along the path; whether any towing device and trailer cross each other; and for each obstacle impacting in the pinch point gap, reporting the distance along the path and the collision distance; and showing the resulting danger zone.
[0090] Figure 12 Process 1000 shows in detail one or more steps 1001 - 1005 to confirm a path using a path confirmation tool. It should be noted that although the functions are enumerated and described as being performed in a specific order according to the described embodiments, the functions can be performed in an alternative order without departing from the scope of the present disclosure. It should also be noted that one or more functions can be omitted without departing from the scope of the embodiments described herein.
[0091] As Figure 12 shown, to confirm the path of one or more vehicles using a path confirmation tool, a user can first input details regarding one or more material handling vehicles, such as the hook length or wheelbase or other suitable details as shown in module 1001. Next, the user can input details related to suitable external dimensions as shown in module 1002. Optionally, the user can input details regarding the warehouse location or factory location as shown in module 1003. As shown in module 1004, the required path can be driven, and laser data can be recorded during the drive. In module 1005, a path confirmation is run on the entered data, and the results are output to one or more screens.
[0092] In an embodiment, and as referenced above Figures 1 to 2 described, the material handling vehicle 10 can include a vehicle body 11, material handling hardware 15, one or more wheels 16, a drive unit D, a steering unit S, a positioning module L, a navigation module N, and a path confirmation tool P, such that the drive unit D, the steering unit S, the positioning module L, and the navigation module N cooperate to guide the material handling vehicle 10 along a travel path 37 in the warehouse 40 ( Figure 11 ).
[0093] In an embodiment, and with reference to Figure 13 process 1300, the path confirmation tool P includes environmental layout data of the warehouse, recommended travel paths in the warehouse, the kinematics of the material handling vehicle 10, and the dynamic vehicle boundaries of the material handling vehicle 10. In module 1302, process 1300 begins the path confirmation.
[0094] A method of performing path confirmation logic may include receiving a plurality of inputs into a path confirmation tool P. One or more inputs 1304-1310 are received by the path confirmation tool P. For example, one or more inputs include environmental layout data as input 1304, a recommended travel path as input 1306, a dynamic vehicle boundary as input 1308, and vehicle kinematics as input 1310. In an embodiment, the kinematics of the material handling vehicle 10 includes at least the center of motion C of the material handling vehicle 10, data regarding the material handling vehicle 10 (including external dimensions, turning radius, and attitude data). The material handling vehicle 10 may include a towing device 20 and one or more trailers 50 coupled to the towing device 20, and the attitude data may respectively indicate the attitude data of the towing device 20 and the one or more trailers 50. Additionally, the dynamic vehicle boundary of the material handling vehicle 10 is adjacent to the physical outer perimeter of the material handling vehicle 10.
[0095] The method may further include determining a vehicle attitude, such as determining the vehicle attitude along the recommended travel path in module 1312 as the path confirmation tool P performs path confirmation logic. The method may include updating the dynamic vehicle boundary. For example, logic may also be executed to update the dynamic vehicle boundary in module 1324 to account for a change in vehicle speed received as input 1320 and a change in steering angle received as input 1322. Logic may be executed to determine in module 1314 whether the dynamic vehicle boundary of the vehicle is likely to cross an obstacle represented in the environmental layout data based on the determined vehicle attitude at a candidate location along the recommended travel path. Subsequently, further logic may be executed to determine the likelihood of a collision at the candidate location by referencing the dynamic vehicle boundary of the material handling vehicle and the obstacle data represented in the environmental layout data. In an embodiment, the likelihood of a collision includes a collision distance that is the overlapping distance between a possible crossing candidate and the dynamic outer boundary 13. Additionally, the material handling vehicle 10 may include a towing device 20 and one or more trailers 50 coupled to the towing device 20, and the possible crossing candidate is one of the towing device 20, the trailer 50, and an obstacle 52 represented by the obstacle data in the environmental layout data. For example, the possible crossing candidate may be the trailer 50. The overlapping distance may be defined between the trailer 50 and the dynamic outer boundary 13 of the towing device 20 of the material handling vehicle 10. Alternatively, the overlapping distance may be defined between one trailer 50 and the dynamic outer boundary 13 of another trailer 50 among the one or more trailers 50 of the material handling vehicle 10. In another embodiment, the possible crossing candidate may be the obstacle 52, and the overlapping distance is defined between the obstacle 52 and the dynamic outer boundary 13 of the material handling vehicle 10.
[0096] In module 1316, logic can be executed to modify the recommended travel path to reduce the likelihood of a collision. In module 1318, the drive unit D, steering unit S, positioning module L, and navigation module N cooperate to guide the material handling vehicle 10 along the modified recommended travel path. The method can also include guiding the material handling vehicle 10 along the modified recommended travel path through the cooperation of the drive unit, steering unit, positioning module, and navigation module.
[0097] In an embodiment, the dynamic vehicle boundary of the path confirmation tool can include the dynamic outer boundary 13 of the material handling vehicle 10 and the dynamic clearance boundary 19 of the material handling vehicle 10. Refer Figures 1B to 1C , the dynamic clearance boundary 19 is enlarged relative to at least a portion of the dynamic outer boundary 13 of the material handling vehicle 10 to define an enlarged boundary around at least a portion of the material handling vehicle 10. The path confirmation tool P can execute path confirmation logic to determine, in module 1314, whether the dynamic clearance boundary 19 of the material handling vehicle 10 is likely to cross an obstacle represented in the environmental layout data at a candidate position along the recommended travel path. Logic can also be executed to associate possible crossing points along the recommended travel path with the vehicle pose at the candidate position along the recommended travel path to create a list of possible crossing candidates along the recommended travel path; and determine the likelihood of a collision at the candidate position by referring to the list of possible crossing candidates, the dynamic outer boundary 13 of the material handling vehicle 10, and the obstacle data represented in the environmental layout data of the input 1304.
[0098] In one embodiment, and referring Figure 14 to process 1400, the path confirmation tool P includes the environmental layout data of the warehouse, the recommended travel path in the warehouse, the kinematics of the material handling vehicle 10, the dynamic outer boundary 13 of the material handling vehicle 10, and the dynamic clearance boundary 19 of the material handling vehicle 10. The dynamic outer boundary 13 of the material handling vehicle 10 is close to the physical outer perimeter of the material handling vehicle 10. The dynamic clearance boundary 19 is enlarged relative to at least a portion of the dynamic outer boundary 13 of the material handling vehicle 10 to define an enlarged boundary around at least a portion of the material handling vehicle 10.
[0099] Processing 1400 starts path confirmation in module 1402. One or more inputs 1404 - 1410 are received by path confirmation tool P. For example, one or more inputs include environmental layout data in module 1404, a recommended travel path in module 1406, a dynamic clearance boundary 19 as input 1409, a dynamic outer boundary 13 as input 1408, and vehicle kinematics as input 1410. Path confirmation tool P may execute path confirmation logic to confirm the vehicle pose along the recommended travel path in module 1412. In module 1414, logic may be executed to determine whether the dynamic clearance boundary 19 of the material handling vehicle 10 is likely to cross an obstacle represented in the environmental layout data based on the determined vehicle pose at candidate positions along the recommended travel path. Thus, a method of executing path confirmation logic may include associating possible intersection points along the recommended travel path with the vehicle pose at candidate positions along the recommended travel path to create a list of possible intersection candidates along the recommended travel path by the path confirmation tool.
[0100] For example, in module 1416, a list of intersection candidates is created. For example, logic may be executed to associate possible intersection points along the recommended travel path with the vehicle pose at candidate positions along the recommended travel path to create a list of possible intersection candidates along the recommended travel path. In module 1418, the probability of a collision at the candidate position is determined by referring to the list of possible intersection candidates, the dynamic outer boundary 13 of the material handling vehicle 10, and the obstacle data represented in the environmental layout data. In module 1420, the recommended travel path is modified to reduce the probability of a collision. In module 1422, the drive unit D, the steering unit S, the positioning module L, and the navigation module N cooperate to guide and navigate the material handling vehicle 10 along the modified recommended travel path. The method may also include guiding the material handling vehicle 10 along the modified recommended travel path through the cooperation of the drive unit, the steering unit, the positioning module, and the navigation module.
[0101] In an embodiment, and as referred to below Figures 15 to 18More particularly, after receiving an error and modifying a recommended travel path to resolve the error through the path confirmation step, the path confirmation tool may further include a path optimization tool that dynamically changes, optimizes, and reduces errors relative to the navigated travel path of the material handling vehicle. For example, the recommended travel path may be set to the nominal travel path navigated by the material handling vehicle. The path optimization tool is configured to dynamically modify the nominal travel path during navigation of the material handling vehicle based on path segment error reduction. As the material handling vehicle is navigated along the nominal travel path, the path optimization tool may modify the nominal travel path based on detecting an obstacle. Subsequently, the material handling vehicle may be guided to a translated and modified travel path that branches off from and merges into the nominal path to avoid the obstacle.
[0102] Now referring to Figure 15 and 16 , it is contemplated that a material handling vehicle (i.e., a tractor and any number of trailers) traveling in an autonomous mode should maintain a clearance distance from all obstacles, not trigger a laser range regarding known obstacles, and not cause a towed trailer to collide with another towed trailer or with a known obstacle. A nominal path as shown in Figure 16 will be given to the material handling vehicle for traveling in an autonomous mode. While the material handling vehicle follows the nominal path, an obstacle (such as Figure 16 one of the obstacles 52 in
[0103] Figure 16 Figure 16As shown. If this is not feasible due to other obstacles or infrastructure on the road, the path optimization tool will attempt to try again. However, for the second attempt, the path optimization tool will not consider the clearance area and will attempt to operate the material handling vehicle as if it were driving in a danger zone. The danger zone is a marked area in the warehouse where the autonomous vehicle speed is restricted. If a translation path still has not been created, the material handling vehicle will stop and wait for manual intervention.
[0104] For example, in an embodiment, after modifying the recommended travel path in module 1316 of Figure 13 , the path confirmation tool P can dynamically modify the recommended travel path to establish a dynamically modified travel path. The path confirmation tool P executes path confirmation logic to determine the vehicle pose along the modified recommended travel path while the drive unit, steering unit, positioning module, and navigation module cooperate to guide the material handling vehicle 10 along the modified recommended travel path, and to determine whether the dynamic vehicle boundary of the material handling vehicle 10 is likely to cross an obstacle represented in the environmental layout data based on the determined vehicle pose at candidate positions along the modified recommended travel path. The path confirmation tool also executes path confirmation logic to determine the probability of a collision at candidate positions by referring to the dynamic vehicle boundary of the material handling vehicle 10 and the obstacle data represented in the environmental layout data, dynamically modify the modified recommended travel path to reduce the probability of a collision, and create a dynamically modified travel path configured to branch out from and merge into the modified recommended travel path, and navigate the material handling vehicle 10 along the dynamically modified travel path.
[0105] If a possible translation is needed to avoid an obstacle, a modified path is created by combining the incorporation path from the nominal path (or the current material handling vehicle position) into the translation path segment and then combining another incorporation path from the translation path segment back into the nominal path, as Figure 16as shown in). Both "diverging" and "merging" are obtained by matching connection paths, for example, the connection path can include a series of three clothoid curves. The combined path length can be varied until a tight match is found. For the three-clothoid connection case, optimization towards the lowest connection error is started with a length ratio of clothoid length, total length, and the bend at the end of the first clothoid curve of 1:1:1, such that the matching proceeds. The initial total length is the Euclidean distance between the connection points, and the bend selection is evenly distributed between the maximum allowable positive path bend and the maximum negative path bend (substantially the steering angle limit). Thus, in an embodiment, the establishment of a dynamically modified travel path configured to diverge from and merge into a modified recommended travel path can include matching a connection path to the modified recommended travel path, the connection path including a series of three clothoid curves and a merge path length, the merge path length being configured to vary until a tight match including the lowest connection error is determined. Optimization towards the lowest connection error can include an initial recommended merge path starting with a length ratio of 1:1:1 with respect to the clothoid length, the total length of the initial recommended merge path, and the bend at the end of the first clothoid curve. The total length of the recommended merge path can include the Euclidean distance between a pair of connection points, and the bend selection with respect to the bend can include an even distribution between the maximum allowable positive bend and the maximum negative path bend. The even distribution can be based on one or more steering angle limits.
[0106] This replanning can occur as often as needed. For example, as a material handling vehicle travels around an obstacle and discovers additional obstacles added to the obstacle map, an existing modified path may become blocked and thus be replanned. The vehicle can be configured to produce only modified paths that never observe an obstacle and return to the original path. The vehicle can also be configured to produce modified paths where an obstacle is observed and does not fully return to the original path, in which case the vehicle can produce additional modified paths that avoid subsequently discovered obstacles as the vehicle travels along the modified path. If there are no valid modified paths back to the nominal path based on the current obstacle map data, the material handling vehicle will stop and wait for manual intervention.
[0107] In one embodiment, the path confirmation steps applied by the path confirmation tool will return errors in the nominal path and the location of each error occurrence along the nominal path. The path optimization tool will attempt to minimize each error as much as possible by gradually adjusting the distance of the nominal path to the error occurrence. The adjustment includes changing the length of each path segment and adding path segments. The path segments can be smoothly connected, with a maximum allowable curvature and within an allowable sharpness limit. The path optimization tool will identify any locations where the lowest error causes a pinch point. Nearby pinch points can be combined into a single area. These pinches are highlighted for the user to see and be aware of, except for pinch points located in existing hazardous areas on the warehouse map.
[0108] If the nominal path is obtained from a user manually driving a material handling vehicle within a warehouse, the resulting manual path can be presented as a series of shallow arcs and spiral curves. The path optimization tool will smooth these series of shallow arcs and spiral curves so that the final nominal path includes straight segments where a straight path is required and smooth continuous curves where a turn is required.
[0109] In this embodiment, the path optimization tool will provide an output including the error vector, type, and the distance to the error occurrence. If the error is of the collision type (i.e., the intersection between the dynamic boundary and an obstacle), a translational path to avoid the obstacle will be found; or if such a translational path cannot be found, the tool returns an optimization failure. If the error is of the pinch point type (i.e., the intersection between the dynamic clearance area and an obstacle), a translational path will be found, or if such a translational path cannot be found, the tool will record the pinch point at the error point along the nominal path.
[0110] The path optimization tool will recursively apply corrective or alternative translational paths until a valid translational path is found. The path optimization tool will attempt to enhance convergence by allowing changes in the path bifurcation (the distance between the nominal path and the translational path along the direction of travel) up to a maximum path bifurcation threshold. The path optimization tool will also use a maximum iteration threshold for pinch point avoidance planning as it may not be able to avoid pinch points in tight locations.
[0111] At a first path distance where an intersection with an obstacle occurs, the path optimization tool will confirm whether the current pose of the material handling vehicle can move away from the obstacle to avoid the intersection without causing additional intersections with the same or other obstacles. If possible, a translation path is formed and the translation path is smoothed. The path optimization tool will smooth the translation path by identifying the minimum change amount in the translation path to obtain the desired final pose. Basically, this will lengthen or shorten the path segments of the translation path or change the sharpness (change the curvature of the translation path). In some embodiments, it may be necessary to add segments to the translation path to smooth it. Path smoothing will attempt to leave the nominal path earlier and then re-enter the nominal path further away so as not to change the nominal path due to the translation path. The path optimization tool will attempt to confirm the translation path again and verify whether the intersection distance is before or after the translation path. If the intersection distance is before the translation path, the path optimization tool will recursively correct the translation path. The path optimization tool will use a recursive correction threshold to stop creating the translation path as it may not be able to avoid pinch points in some positions.
[0112] Together with the nominal path, a swept profile is used to identify the path of one or more trailers following a towing vehicle along the nominal path. Since the translation path is added, the shape of the swept profile of the material handling vehicle may change. Simply extending a straight segment of the nominal path using the translation path should not change the shape of the swept profile, which makes it easier to predict the translation path. Changing the arc length of the nominal path using the translation path may cause inconsistencies in the swept profile, and changing the curvature of the nominal path using the translation path may cause greater inconsistencies. If the inconsistent changes are too large between path adjustments, smaller adjustments will be needed to allow for convergence.
[0113] In another embodiment, and referring to Figure 17 , as by Figure 17The path confirmation step shown in modules 101 - 104 will return errors in the nominal path (i.e., where the nominal path crosses a known obstacle) and the location where the error occurs along the nominal path. The path optimization tool will locate contiguous segments (i.e., path segments from start to end distance) with the same type of error in module 105. However, if there are multiple errors along the nominal path, the path optimization tool will select the first occurring error, regardless of its type, and the path optimization tool will prioritize in the following order: excessive maximum steering in module 106, self - collision (i.e., between trailers and / or between trailers and the towing vehicle) in module 107, crossing with an obstacle indicating a collision in module 108, and finally any pinch point error in module 109. The cases of excessive maximum steering and self - collision in modules 106 - 107 may be caused by overly sharp turns at an earlier point in the nominal path. In module 110, the offset of the affected trailer connection from the towing vehicle is used to retroactively move the affected nominal path area. In module 113, the sharp portions are gradually smoothed to have a smaller curvature. This is iterative until no more excessive steering or self - collision warnings occur and the path is verified in module 114 and the problem is solved in module 112. For collision and pinch point cases, the combined series of swept profiles in modules 111 - 121 will be minimally changed so that there are no collisions or pinch points. If a pinch point cannot be avoided in module 115, the path optimization tool will attempt to keep the affected side of the trailer unpinched and continue moving forward. If pinch points on both sides of the affected trailer cannot be avoided, the collision distances on each side are kept equidistant. For example, in module 124, the dangerous area in such a case can be marked. However, as determined in module 123, collisions must be avoided, and failure to do so will result in a "no feasible path" result for the path optimization tool in module 122.
[0114] After any change to the nominal path, the translated path needs to be incorporated into the nominal path and verified for the operation of the material handling vehicle. The self - incorporated path may result in additional verification failures. Multiple translated paths can be tried for each error, and various incorporation distances will be attempted until a good incorporation between the translated path and the nominal path is found. Departure incorporations will go through the same process, but it is acceptable for departure incorporations to have errors. A bad departure incorporation will lead to subsequent path changes. If the attempted changes do not work, different changes to the translated path will be tried. A slight rotation of the translated path may be sufficient to pass the verification.
[0115] Contiguous distance refers to the range of distance along the path from start distance to end distance where similar obstacles appear near each other.
[0116] To attempt a change, the path segments are separated from the path, forming a start path, a middle path, and an end path. Subsequently, the middle path is changed such that the obstacle is completely avoided. Depending on the change, there are two necessary connections: from the start to the middle, and from the middle to the end. The connection starts at a point before the end of the first path and ends at a point after the start of the second path. The distance replaced on the path will vary depending on how much discontinuity the change has introduced. Various changes will be attempted until an unobstructed path is obtained.
[0117] There can be a function to connect two arbitrary poses in the most direct way possible without exceeding a maximum curvature limit or a maximum sharpness limit. The connection is a series of three clothoids, but other types of connections are also feasible. The path optimization tool can plan many valid connections and select the best connection, which is defined as the first connection planned to have an error within a configurable connection tolerance. Also, in one embodiment, the first result is the shortest connection because the connection length increases for each subsequent optimization step.
[0118] To identify a suitable clothoid, the following data is used: the start curvature value, the end curvature value, the angle change value, the maximum curvature value, the maximum sharpness value, the minimum sharpness value, and the initial length estimate. Based on this data, the length and intermediate curvature of each segment can be optimized to identify the best-matching three-clothoid. The calculation is restricted such that a solution is found once the end pose (x, y, and θ) is within a preconfigured tolerance of the target (e.g., 1 centimeter and 1 degree).
[0119] Once a connection is found, a path confirmation step can be performed by the path optimization tool to ensure that the original problem of crossing an object is solved and no new problems are added. If problems still exist, perhaps changing the connection distance is what is needed to solve the problem. It is conceivable that a greater connection distance can result in a smoother transition. That is, the path optimization tool can start at the nominal path and work forward, but try to always end at the start of the translational path to ensure a consistent swept area. Thus, each time the path is modified by a candidate connection, a path confirmation step can be performed on the path. Additionally, the path distance at which the connection starts or ends can be changed until a suitable or optimal connection is found.
[0120] Figure 18Graphically shows changes to and from a nominal path. The first figure shows a top view in which the nominal path has been modified. The translation path segment has been moved slightly up and to the left from the nominal path. Two connections have been matched so that the nominal path smoothly transitions to and from the translation path segment. The following two figures show details of the three clothoid curves that make up each connection. It should be noted that the curvature is continuous, which allows the material handling vehicle to smoothly follow the path without stopping to change the steering angle.
[0121] The path optimization tool can be used on a computer to verify the nominal path in a warehouse and identify any issues related to obstacles before enabling and operating an automated vehicle along the path; or it can be used on the automated vehicle to dynamically modify the nominal path to avoid newly identified obstacles by a laser scanner. It is envisioned that the automated vehicle can approach an obstacle up to a maximum length before a reconnection of the nominal path is required. For all identified pinch points, the path optimization tool can still allow the automated vehicle to operate because the vehicle operator can operate the automated vehicle at a slower speed through the pinched area with the pinch point.
[0122] The path optimization tool directly verifies that the actual towing vehicle, trailer, and clearance range geometry will not collide with obstacles, rather than using potentially sub-optimal approximation methods. The path optimization tool takes into account the trailer train added to the towing vehicle, while other methods have so far only considered the AGV itself. Clothoid curve connections are used instead of splines, and arguably, the clothoid curve sections are smoother and more suitable for a material handling vehicle to follow. The path optimization tool enhances the continuous path curvature, maximum path curvature, and maximum path sharpness to ensure that the translation path can physically be followed. As new laser scan data is received and objects are identified, the path optimization tool updates the obstacle map, while some other methods require complete information in advance. The path optimization tool can also take into account the trailer path located behind the towing vehicle during obstacle avoidance.
[0123] For simplicity, only some terms are used in this disclosure, and this is not restrictive. Terms such as "left", "right", "front", "rear", "up", "down", etc. refer to the directions in the referenced figures. The terms include the above-mentioned terms and their derivatives and words with similar meanings.
[0124] It should also be noted that the recitation herein of "at least one" component, element, etc. should not be used to infer that the alternative use of the articles "a", "an" should be limited to a single component, element, etc.
[0125] It should be noted that the description herein of components of the present disclosure that are "configured" or "programmed" in a particular manner to embody a particular property or to function in a particular way is a description of structure, not of intended use. More specifically, the manner in which the components are "configured" or "programmed" herein refers to the existing physical condition of the components and should thus be regarded as a clear description of the structural features of the components.
[0126] It should be noted that, as used herein, terms such as "preferably", "generally", and "normally" are not used to limit the scope of the claimed invention or to imply that a particular feature is decisive, essential, or even important to the structure or function of the claimed invention. Rather, these terms are merely intended to identify particular aspects of embodiments of the present disclosure, or to emphasize alternative or additional features that may or may not be utilized in a particular embodiment of the present disclosure.
[0127] For purposes of describing and defining the present invention, it should be noted that the terms "substantially" and "approximately" are used herein to represent the inherent degree of uncertainty that may be attributable to any quantitative comparison, value, measurement, or other representation. The terms "substantially" and "approximately" are also used herein to represent the degree to which a quantitative representation can vary from a stated reference value without causing a fundamental change in the basic function of the subject matter being discussed.
[0128] Although specific embodiments have been shown and described herein, it should be understood that various other changes and modifications may be made without departing from the spirit and scope of the claimed subject matter. Moreover, although various aspects of the claimed subject matter have been described herein, such aspects need not be used in combination. Accordingly, it is intended that the appended claims cover all such changes and modifications that fall within the scope of the claimed subject matter.
[0129] It should be noted that one or more of the following claims use the term "wherein" as a transitional phrase. For purposes of defining the present invention, it should be noted that the introduction of this term in a claim as an open transitional phrase is used to introduce a description of a series of structural features and should be understood in a manner similar to the more commonly used open preamble term "comprising".
Claims
1. A material handling vehicle, comprising a vehicle body, material handling hardware, one or more wheels, a drive unit, a steering unit, a positioning module, a navigation module, and a path confirmation tool, wherein: The drive unit, the steering unit, the positioning module, and the navigation module cooperate to guide the material handling vehicle along a travel path in a warehouse; The path confirmation tool includes environmental layout data of the warehouse, a recommended travel path in the warehouse, the kinematics of the material handling vehicle, the dynamic outer boundary of the material handling vehicle, and the dynamic clearance boundary of the material handling vehicle; The dynamic clearance boundary is enlarged relative to at least a part of the dynamic outer boundary of the material handling vehicle to define an enlarged boundary around at least a part of the material handling vehicle; The path confirmation tool executes path confirmation logic to (i)determine the vehicle pose along the recommended travel path, (ii)based on the determined vehicle pose and the collision likelihood at a candidate position along the recommended travel path, determine whether the dynamic outer boundary or the dynamic clearance boundary of the material handling vehicle is likely to cross an obstacle represented in the environmental layout data, to respectively identify an obstacle collision error or a pinch point error, where a pinch point refers to a position in the warehouse where a physical part of the material handling vehicle is close to a fixed physical object in the warehouse within a specified clearance distance, (iii)eliminate the obstacle collision error, the pinch point error, or both by modifying the recommended travel path, where the obstacle collision error is eliminated prior to the pinch point error, (iv)when the recommended travel path cannot be modified to eliminate the obstacle collision error, the pinch point error, or both, reduce the obstacle collision error, the pinch point error, or both to avoid a collision, where the obstacle collision error is reduced prior to the pinch point error, and The drive unit, the steering unit, the positioning module, the navigation module, and the path confirmation tool cooperate to guide the material handling vehicle along the modified recommended travel path.
2. The material handling vehicle according to claim 1, further comprising one or more sensors configured to generate an effective scanning area, the one or more sensors including a camera, a 3D camera, a 2D lidar scanner, a 3D lidar scanner, a radar array, an ultrasonic array, or a combination thereof, wherein: The dynamic outer boundary of the material handling vehicle is close to the physical outer periphery of the material handling vehicle and is defined at a position offset from the physical outer periphery of the material handling vehicle and includes the effective scanning area; The collision likelihood includes a collision distance, which is an overlap distance at a candidate position, and the overlap distance indicates the overlap between the dynamic outer boundary or the dynamic clearance boundary of the material handling vehicle and the obstacle data; and The path confirmation tool executes path confirmation logic to (i)based on the determined vehicle pose and the collision likelihood at a candidate position along the recommended travel path, determine whether the dynamic outer boundary of the material handling vehicle is likely to cross an obstacle represented in the environmental layout data, to respectively identify an obstacle collision error within the effective scanning area, and (ii)Stop the material handling vehicle when it is determined that an obstacle may collide with the effective scanning area and the recommended travel path cannot be modified to eliminate the obstacle collision error to avoid a collision.
3. The material handling vehicle according to claim 1, wherein, The path confirmation tool executes path logic to determine the vehicle pose along one of the recommended travel path and the modified recommended travel path at a predetermined interval.
4. The material handling vehicle according to claim 1, wherein, The kinematics of the material handling vehicle includes the center of motion C of the material handling vehicle, the external dimensions of the material handling vehicle, the turning radius of the material handling vehicle, and the pose data of the material handling vehicle.
5. The material handling vehicle according to claim 4, wherein, The material handling vehicle includes a towing device and one or more trailers coupled to the towing device, and the pose data is the pose data respectively indicating the towing device and the one or more trailers.
6. The material handling vehicle according to claim 1, wherein: The material handling vehicle includes a towing device and one or more trailers coupled to the towing device; The dynamic outer boundary approaches the physical outer periphery of the towing device of the material handling vehicle; The possible cross obstacle is one of the one or more trailers coupled to the towing device; and The obstacle collision error includes a trailer self-collision error.
7. The material handling vehicle according to claim 1, wherein: The material handling vehicle includes a towing device and one or more trailers coupled to the towing device; The dynamic outer boundary approaches the physical outer periphery of one of the one or more trailers of the material handling vehicle; The possible cross obstacle is another one of the one or more trailers coupled to the towing device; and The obstacle collision error includes a trailer self-collision error.
8. The material handling vehicle according to claim 1, wherein: The material handling vehicle includes a towing device and one or more trailers coupled to the towing device; The dynamic outer boundary approaches the physical outer periphery of one of the one or more trailers and the towing device of the material handling vehicle; and The possible cross obstacle is an obstacle separated from the material handling vehicle and represented in the environmental layout data.
9. The material handling vehicle according to claim 1, wherein, The path confirmation tool executes path confirmation logic to: (i)Determine the vehicle pose along the modified recommended travel path as the drive unit, steering unit, positioning module, and navigation module cooperate to guide the material handling vehicle along the modified recommended travel path, (ii)Dynamically modify the modified recommended travel path to reduce the probability of collision, and establish a dynamically modified travel path configured to branch off from and merge into the modified recommended travel path, (iii)Navigate the material handling vehicle along the dynamically modified travel path.
10. The material handling vehicle according to claim 9, wherein, A dynamically modified travel path is established by at least matching a connection path to a modified recommended travel path, the connection path including a series of three clothoids and an incorporation path length, the incorporation path length being configured to be varied until a close match with a minimum connection error is determined.
11. The material handling vehicle according to claim 10, wherein, the total length of the initially recommended incorporation path includes the Euclidean distance between a pair of connection points.
12. The material handling vehicle according to claim 10, wherein, the bend at the end of the first clothoid in the series of clothoids includes a bend selected from a bend distribution between a maximum allowable positive bend and a maximum negative path bend based on one or more steering angle limits.
13. The material handling vehicle according to claim 1, wherein, a path confirmation tool executes path confirmation logic to: (i) identify a maximum steering angle exceedance error, a self-collision error when a possible crossing obstacle is part of the material handling vehicle, or a combination thereof; and (ii) consider error elimination or reduction in the order of priority of maximum steering angle exceedance error, self-collision error, obstacle collision error, and pinch point error.
14. The material handling vehicle according to claim 13, wherein, the path confirmation tool executes path confirmation logic so that: when a maximum steering angle exceedance error, a self-collision error, or a combination thereof is identified, the recommended travel path is modified by iteratively smoothing the recommended travel path until the identified error is eliminated.
15. The material handling vehicle according to claim 1, wherein, the path confirmation tool executes path confirmation logic to: (i) eliminate an obstacle collision error, a pinch point error, or both on both sides of the material handling vehicle by modifying the recommended travel path if possible; (ii) reduce an obstacle collision error, a pinch point error, or both by eliminating an obstacle collision error, a pinch point error, or both on at least one side of the material handling vehicle when the recommended travel path cannot be modified to eliminate an obstacle collision error, a pinch point error, or both on both sides of the material handling vehicle.
16. The material handling vehicle according to claim 15, wherein, the path confirmation tool executes path confirmation logic to: (i) when the recommended travel path cannot be modified and an obstacle collision error, a pinch point error, or both on at least one side of the material handling vehicle is eliminated to reduce an obstacle collision error, a pinch point error, or both, a collision distance is set equidistantly on each side and the area of the recommended travel path including an obstacle collision error, a pinch point error, or both is marked as a dangerous area, where the probability of collision includes the collision distance as the overlap distance at a candidate location, the overlap distance indicating the overlap between the dynamic outer boundary or dynamic clearance boundary of the material handling vehicle and the obstacle data; and (ii) when the recommended travel path cannot be modified and an obstacle collision error, a pinch point error, or both on at least one side of the material handling vehicle is eliminated to reduce an obstacle collision error, a pinch point error, or both and the collision is unavoidable, the material handling vehicle is automatically stopped to avoid a collision.
17. A method for performing path confirmation logic of a material handling vehicle, the material handling vehicle including a vehicle body, material handling hardware, one or more wheels, a drive unit, a steering unit, a positioning module, a navigation module, and a path confirmation tool, the drive unit, the steering unit, the positioning module, and the navigation module cooperating to guide the material handling vehicle along a travel path in a warehouse, the method comprises: receiving a plurality of inputs input to the path confirmation tool, the plurality of inputs including environmental layout data of the warehouse, a recommended travel path in the warehouse, kinematics of the material handling vehicle, a dynamic outer boundary of the material handling vehicle, and a dynamic clearance boundary of the material handling vehicle, the dynamic clearance boundary being enlarged relative to at least a part of the dynamic outer boundary of the material handling vehicle to define an enlarged boundary around at least a part of the material handling vehicle; determining, by the path confirmation tool, a vehicle pose along the recommended travel path; based on the determined vehicle pose and the likelihood of collision at a candidate position along the recommended travel path, determining whether the dynamic outer boundary or the dynamic clearance boundary of the material handling vehicle is likely to cross an obstacle represented in the environmental layout data to respectively identify an obstacle collision error or a pinch point error, wherein a pinch point refers to a position in the warehouse where a physical part of the material handling vehicle is close to a fixed physical object in the warehouse within a specified clearance distance; eliminating the obstacle collision error, the pinch point error, or both by modifying the recommended travel path, wherein, when both the obstacle collision error and the pinch point error are identified, the obstacle collision error is eliminated prior to the pinch point error; when it is not possible to modify the recommended travel path by the path confirmation tool to eliminate the obstacle collision error, the pinch point error, or both, reducing the obstacle collision error, the pinch point error, or both to avoid a collision, wherein, when both the obstacle collision error and the pinch point error are identified, the obstacle collision error is reduced prior to the pinch point error; and navigating the material handling vehicle along the modified recommended travel path through the cooperation of the drive unit, the steering unit, the positioning module, the navigation module, and the path confirmation tool.
18. The method according to claim 17, further comprises: identifying a maximum steering angle exceedance error, a self-collision error when a possible crossing obstacle is part of the material handling vehicle, or a combination thereof; and considering error elimination or reduction in the order of priority of the maximum steering angle exceedance error, the self-collision error, the obstacle collision error, and the pinch point error.
19. The method according to claim 18, further comprises modifying the recommended travel path by iteratively smoothing the recommended travel path until the identified error is eliminated when the maximum steering angle exceedance error, the self-collision error, or a combination thereof is identified.
20. The method according to claim 17, further comprises: eliminating the obstacle collision error, the pinch point error, or both on both sides of the material handling vehicle by modifying the recommended travel path when it is possible to modify. When the recommended travel path cannot be modified to eliminate obstacle collision errors, pinch point errors, or both on both sides of the material handling vehicle, reduce obstacle collision errors, pinch point errors, or both by eliminating obstacle collision errors, pinch point errors, or both on at least one side of the material handling vehicle; When the recommended travel path cannot be modified and obstacle collision errors, pinch point errors, or both are reduced by eliminating obstacle collision errors, pinch point errors, or both on at least one side of the material handling vehicle, set a collision distance equidistantly on each side and mark the area of the recommended travel path that includes obstacle collision errors, pinch point errors, or both as a danger zone even though the collision is avoidable, where the collision probability includes the collision distance as the overlapping distance at the candidate location, and the overlapping distance indicates the overlap between the dynamic outer boundary or dynamic clearance boundary of the material handling vehicle and the obstacle data; and When the recommended travel path cannot be modified and obstacle collision errors, pinch point errors, or both are reduced by eliminating obstacle collision errors, pinch point errors, or both on at least one side of the material handling vehicle, and the collision is unavoidable, automatically stop the material handling vehicle to avoid a collision.
Citation Information
Patent Citations
Travel and fork lowering speed control based on fork load weight / tilt cylinder operation
US6135694A
Electrical steering assist for material handling vehicles
US7017689B2
Braking system for a lift truck
US7681963B2
Slip control for a materials handling vehicle
US8131422B2
Vehicle control limits
US8718860B2