CONVEYOR SYSTEM WITH MULTIPLE SINGULATING ROBOTS
Patent Information
- Application Number
- MX2022015996
- Authority / Receiving Office
- MX · MX
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-05-20
- Filing Date
- 2022-12-13
- Publication Date
- 2026-02-25
- Estimated Expiration
- 2041-05-21
AI Technical Summary
Existing conveyor systems face inefficiencies in transforming bulk flows of packages into a single stream due to overload and incomplete separation, leading to interference with further processing, and single-picking robot systems struggle with throughput limitations.
A conveyor system with multiple singling robots and a vision and control subsystem that uses cameras to determine package locations and orientations, enabling simultaneous package transfer and indexing, reducing downtime through optimized robot selection and image acquisition.
The system significantly improves package transfer throughput by allowing simultaneous package handling and reducing downtime, achieving a 25% increase in package processing rate compared to single-robot systems.
Smart Images

Figure MX431139B0
Abstract
Description
The present invention relates to the handling of packages within a sorting facility or similar installation. In particular, the present invention relates to a conveyor system that includes multiple single-separator robots for transferring packages from a bulk flow to a single-separated flow of packages. In a parcel sorting facility, parcels are unloaded from trucks or other vehicles at unloading areas, sorted, and then loaded onto trucks or other vehicles at loading areas for delivery to their intended recipients. Therefore, within the sorting facility, there is typically a complex system of conveyors and equipment that facilitates the transport and sorting of parcels within the facility. When first introduced into the conveyor system and equipment, the packages are randomly placed on a conveyor in a bulk flow. Therefore, within the sorting facility, the first step is typically to transform the bulk flow into a single-package flow in which the packages are placed at substantially equal intervals and aligned (i.e., in a single file) along a conveyor for processing. you Prior art. A wide variety of singulators exist in the art, many of which employ various combinations of conveyor belts and / or roller conveyors to achieve the desired singulation of the packages. However, there are certain shortcomings in such prior art systems. For example, an increase in package volume can overload the mechanical systems, and the packages may not be fully separated. Unseparated packages can then interfere with downstream processing, including subsequent sorting. U.S. Patent No. 10,646,898, incorporated herein by reference, describes a system and method for identifying and transferring packages from a bulk flow of packages on the first conveyor (or picking conveyor) to a single stream of packages on the second conveyor (or placing conveyor). Specifically, a singulator robot (or robot) receives packages via the picking conveyor, engages each package, and then places it onto the placing conveyor. However, due to cycle time limitations (i.e., the time required for each iterative transfer of a package from the picking conveyor to the placing conveyor), conveyor systems that include a single singulator robot cannot always efficiently handle large volumes of packages. Consequently, there remains a need for improved systems to transfer packets from a bulk flow to a single stream of packets. The present invention is a conveyor system, which includes multiple singulator robots (or robots) for transferring packages from a bulk flow to a singulated flow of packages. An exemplary conveyor system made in accordance with the present invention includes: a picking conveyor that defines a picking area for a bulk flow of packages; a placing conveyor located downstream of the picking area; a first singulating robot (or first robot) and a second singulating robot (or second robot), working in parallel to transfer packages within the picking area to a singulated stream on the placing conveyor; and a vision and control subsystem that is operatively connected to the first robot and the second robot, such that the vision and control subsystem can communicate instructions to control the operation of such components. The vision and control subsystem includes a first camera (or lens) configured to acquire one or more images of a predetermined region of interest (i.e., the collection area) and any packages located within it. u <£ In some embodiments, the target camera is positioned so that its field of view includes the picking area as well as at least a portion of the sorting conveyor located upstream of the picking area. Each image acquired by the target camera is processed within the vision and control subsystem to determine the location of any packages placed within the picking area and, in some embodiments, the proximity of these packages to each other and / or the position of one or more packages located upstream of the picking area. Based on the determined location of the packages within the picking area, the vision and control subsystem communicates instructions that cause the first robot and the second robot to successively transfer the packages within the picking area to the placement conveyor. In some embodiments, after a package is transferred from the picking area to the placement conveyor, the control and vision subsystem communicates instructions that index the placement conveyor, thereby creating space on the placement conveyor for other packages to be delivered. Since it is not necessary for a package to be completely transferred from the picking area to the placement conveyor before the transfer process of another package begins within the picking area, the package transfer throughput rate exhibited by the system of the present invention is improved relative to that of known conveyor systems that include a single-robot ... To reduce system downtime associated with transferring packages from the picking area to the placement conveyor, in some modalities, the system includes a package transfer routine, which includes a robot selection subroutine that causes the vision and control subsystem to select either the first or second robot to transfer a package within the picking area based on a priority queue that includes one or more inputs that assign priority to either the first or second robot, also taking into account the availability of the first and second robots.In cases where multiple packages are placed in the picking area, the robot's selection subroutine can also have the control and vision subsystem select one package from the multiple packages for the selected robot to transfer, based on the proximity of the packages within the multiple packages to the selected robot. To reduce system downtime associated with image acquisition and processing, in some modalities, the control and vision subsystem limits the number of times the target camera is selectively activated to acquire images of a group of multiple packages located within the picking area at any given time, based on the spacing of those packages from each other. In some embodiments, the package transfer routine includes a package indexing and selection subroutine that runs selectively to reduce system downtime associated with transferring packages from upstream of the pick conveyor's collection area to the collection area. The selection and indexing subroutine reduces this downtime by indexing the pick conveyor a calculated distance to move a package located upstream of the collection area to the collection area immediately after (i.e., substantially simultaneously with) another package being removed from the collection area by either the first or second robot. In some embodiments, the calculated distance is based on image data corresponding to an image acquired by the target camera.In some configurations, the system may also include a sensor configured to acquire readings regarding the presence of packages within the sorting conveyor's collection area. In some configurations, the sorting conveyor's indexing may be stopped in response to the sensor obtaining readings indicating the presence of one or more packages within the collection area. In some configurations, the vision and control subsystem also includes a second (or confirmation) camera configured to acquire images of an area of the placement conveyor (or placement area) where packages transferred from the collection area are delivered. Each image acquired by the confirmation camera is processed within the vision and control subsystem to confirm the proper transfer of a package to the placement conveyor. To determine whether a package was successfully transferred to the placement conveyor, in some configurations, the vision and control subsystem can be configured to determine whether the first or second robot simultaneously transferred multiple packages at a single time and / or whether a package transferred to the placement conveyor is oriented in a way that satisfies one or more predetermined criteria. In some configurations, the placement conveyor includes multiple conveyors. In some configurations, the system includes an upstream conveyor configured to receive and transport a bulk flow of packages downstream to the collection area. In some configurations, the upstream conveyor includes multiple conveyors. BRIEF DESCRIPTION OF THE DRAWINGS FIGURE 1 is a schematic diagram of an exemplary conveyor system, including multiple singulator robots, made in accordance with the present invention; FIGURE 2 is a perspective view of the exemplary conveyor system of FIGURE 1; FIGURE 3 is a top view of a selection conveyor of the exemplary conveyor system of FIGURE 1; FIGURE 4 is a diagram illustrating the motion cycles performed by a first singulator robot and a second singulator robot of the exemplary conveyor system of FIGURE 1 to transfer packages from the picking conveyor to a placing conveyor in the exemplary conveyor system of FIGURE 1; FIGURE 5 is a schematic diagram of a vision and control subsystem for use in the exemplary conveyor system of FIGURE 1; FIGURE 6 is a flowchart of an exemplary routine for initializing the exemplary conveyor system of FIGURE 1 for packet transfer; FIGURE 7 is a flowchart of an exemplary routine for hooking and transferring packages in the exemplary conveyor system of FIGURE 1; FIGURE 8 is a flowchart of an exemplary routine for confirming the transfer of packages in the exemplary conveyor system of FIGURE 1; FIGURE 9 is an exemplary subroutine for evaluating and transferring packets in the exemplary conveyor system of FIGURE 1; FIGURE 10 is another top view of the selection conveyor of the exemplary conveyor system of FIGURE 1; FIGURE 11 is an exemplary subroutine for indexing the selection conveyor of the exemplary conveyor system of FIGURE 1; FIGURE 12 is a perspective view of another exemplary conveyor system made in accordance with the present invention, which includes multiple singulator robots; FIGURE 13 is a perspective view of another exemplary conveyor system made in accordance with the present invention, which includes multiple singulator robots; FIGURE 14 is a schematic view of another exemplary conveyor system made in accordance with the present invention, which includes multiple singulator robots; FIGURE 15 is a schematic view of another exemplary conveyor system made in accordance with the present invention, which includes multiple singulator robots; FIGURE 16 is a schematic view of another exemplary conveyor system made according to the present invention, which includes multiple singulator robots; and FIGURE 17 is a schematic view of another exemplary conveyor system made according to the present invention, which includes multiple singulator robots. The present invention is a conveyor system, which includes multiple singulator robots (or robots) for transferring packages from a bulk flow to a singulated flow of packages. FIGURE 1 is a schematic diagram of an exemplary conveyor system 10, which includes multiple singulator robots, made in accordance with the present invention. FIGURE 2 is a perspective view of system 10, an example of FIGURE 1; FIGURE 3 is a top view of a selection conveyor 14 of the exemplary conveyor system of FIGURE 1; FIGURE 5 is a schematic diagram of a vision and control subsystem 30 for use in the system 10 example of FIGURE 1. With reference now to FIGURES 1-3 and 5, the exemplary conveyor system 10 (or system 10) generally includes: a picking conveyor 14 configured to receive a bulk flow of packages, such as from an upstream conveyor 12; a placement conveyor 16 located downstream of the picking conveyor 14; a first singulator robot 20 (or first robot 20) and a second singulator robot (or second robot 22) working in parallel to successively transfer packages from the picking conveyor 14 to a singulated flow on the placement conveyor 16; and a vision and control subsystem 30 that is operatively connected to the picking conveyor 14, the first robot 20, and the second robot 22, so that the vision and control subsystem 30 can communicate instructions to control the operation of such components. It is important to recognize that, in the analysis that follows and in the claims of this application, the term package is not intended to be limiting and may include any article, item or object that can be transported, loaded and / or unloaded in the manner specified in this description. It is also important to recognize that, in the analysis that follows and in the claims of this application, the term sorting conveyor is not intended to be limiting and may include any form of conduit, conveyor or transport surface, whether static or moving, that defines a collection area where packages can be acquired and transferred to the placement conveyor. FIGURE 4 is a diagram illustrating the motion cycles performed by the first robot 20 and the second robot 22 to transfer packages from the selection conveyor 14 to the placement conveyor 16 of system 10. With reference now to FIGURES 1-5, the vision and control subsystem includes a first camera 34 (or lens) that can be selectively activated to acquire one or more images of a predetermined region of interest (i.e., the collection area) of the selection conveyor 14 and any packages located thereon (e.g., packages 50a, 50b, and 50c in FIGURE 3). In this exemplary embodiment, the lens camera 34 is positioned such that its field of view includes the collection area 15 as well as at least a portion of the selection conveyor 14 located upstream of the collection area 15. The collection area 15 of the selection conveyor 14, in this exemplary embodiment, is defined by, and can therefore be characterized as including, two separate areas: a first area 15a and a second area 15b, as shown in FIGURES 1 and 3.Each image acquired by the target camera 34 is processed within the vision and control subsystem 30 to determine the location of any packages placed within the picking area 15. In some configurations, the proximity of multiple packages located within the picking area 15 at any given time to each other and / or the distance of packages located upstream of the picking area 15 can also be evaluated using an image acquired by the target camera 34, as described later. Based on the determined location of the packages within the picking area 15, the vision and control subsystem 30 communicates instructions to either the first robot 20 or the second robot 22 to successively transfer the packages within the picking area 15 to the placement conveyor 16.Unlike known construction conveyor systems that employ a single robot, in the system 10 of the present invention, it is not necessary for a package to be completely transferred from the picking area 15 to the placement conveyor 16 before the transfer process of another package begins within the picking area 15. Rather, by using two robots 20, 22, a package in the picking area 15 can be engaged for transfer by one robot (e.g., the second robot 22 in FIGURE 2) while the other robot (e.g., the first robot 20 in FIGURE 2) is transferring another package to the placement conveyor 16 or returning from such a transfer, as shown in FIGURES 2 and 4.The package processing rate (i.e., the rate at which packages are transferred to the placement conveyor 16 in a single stream) is therefore improved in relation to that of known construction conveyor systems employing only a single-robot single-robot simply by virtue of the use of multiple robot single-robots 20, 22.As described in more detail below, to further improve the package production rate, the vision and control subsystem 30 also uses the determined location of packages within the collection area 15 and the proximity of packages to each other to selectively activate the target camera 34, the first and second robots 20, 22, and, in certain modes, the selection conveyor 14 in a way that reduces the downtime associated with image acquisition and processing, transferring packages to the placement conveyor 16 (i.e., package singulation), and delivering packages to the collection area 15, respectively. With reference to Figures 1, 2, and 5, in this exemplary configuration, the vision and control subsystem 30 further includes a second (or confirmation) camera 36, which can be selectively activated to acquire one or more images of a placement area 17 of the placement conveyor 16 and any packages located therein. The placement area 17 of the placement conveyor 16 corresponds to the area of the placement conveyor 16 where the packages transferred by the first robot 20 and the second robot 22 are delivered. Each image acquired by the confirmation camera 36 is processed within the vision and control subsystem 30 to confirm the transfer of a package to the placement conveyor 16, as described later with reference to Figure 8. With reference again to FIGURES 1 and 2, in u In this exemplary embodiment, system 10 includes an upstream conveyor 12 comprising multiple conveyors, each configured to receive and convey a bulk flow of packages downstream to the sorting conveyor 14. Specifically, in this exemplary embodiment, the upstream conveyor 12 includes a feed conveyor 12a that initially receives a bulk flow of packages and a destacking conveyor 12b, as described in U.S. Patent Application Serial Number 17 / 092,660, which is incorporated herein by reference. The destacking conveyor 12b is positioned to receive packages discharged from the feed conveyor 12a and is oriented at a predetermined angle to separate vertically stacked packages before discharging them onto the sorting conveyor 14, as perhaps best shown in Figure 2.In some embodiments, the feed conveyor 12a can act as a containment conveyor, as also described in U.S. Patent Application Serial Number 17 / 092,660, which can be selectively activated and deactivated (or indexed) to regulate the discharge of packages onto the destacking conveyor 12b. As best shown in FIGURE 2, in this exemplary embodiment, a proximal end of the sorting conveyor 14 is positioned below a distal end of the destacking conveyor 12b so that packages discharged from the distal end of the destacking conveyor 12b fall a predetermined distance onto the sorting conveyor 14 to further promote the separation of packages stacked on top of one another. With reference now to FIGURES 1, 2, and 5, in this exemplary embodiment, both the first robot 20 and the second robot 22 are in the form of a robotic arm. More specifically, in this exemplary embodiment, the first robot 20 and the second robot 22 are each a six-axis articulated robotic arm. A suitable robot that can be used as the first robot 20 and the second robot 22 is the M-LOID / 12 robot manufactured and available from FANUC America of Rochester Hills, Michigan. The first robot 20 and the second robot 22 each include an end effector 20a, 22a that is configured to engage and hold a package in association with the robot 20, 22 to which the end effector 20a, 22a corresponds during transfer from the picking conveyor 14 to the placing conveyor 16.For example, the end effectors 20a, 22a of the first robot 20 and the second robot 22 may include one or more suction cups in fluid communication with a vacuum source and configured to engage with a package. In this regard, suitable end effectors that may be used as end effectors 20a, 22a of the first robot 20 and the second robot 22 include, but are not limited to, those described in U.S. Patent Application Publication No. 2020 / 0262069, which is incorporated herein by reference. With reference to FIGURES 1, 2, 4, and 5, to transfer packages from the picking area 15 of the sorting conveyor 14 to the placement area 17 of the placement conveyor 16, the first robot 20 and the second robot 22 are positioned in close proximity to the picking area 15. In this regard, and in this exemplary embodiment, the first robot 20 and the second robot 22 are each mounted on a structure 25 to support the first robot 20 and the second robot 22 in an inverted (or suspended) orientation above the picking area 15. Of course, the first robot 20 and the second robot 22 can be positioned or mounted alternatively without departing from the spirit or scope of the present invention, as demonstrated, for example, by the conveyor systems 300, 500, 600, 700, and 800 described below with reference to FIGURES 11 and 13-16.As shown in FIGURE 4, in the transfer of packages from collection area 15 to placement area 17, the first robot 20 and the second robot 22 each follow the same general movement cycle, which, in this case, includes three movements: a first movement from a predetermined initial (or starting) position to a destination package within collection area 15 to initiate the transfer of the package. <£ destination package; a second movement from the attachment point with the target package to a position above placement area 17 of the placement conveyor 16 to deliver the target package; and a third movement from the position above placement area 17 of the placement conveyor 16 back to the starting position. In this exemplary embodiment, when in the starting position, the first robot 20 is located in the center with respect to the first area 15a of the collection area 15 and the second robot 22 is located in the center with respect to the second area 15b of the collection area 15. With reference now again to FIGURES 1, 2 and In this exemplary embodiment, the vision and control subsystem 30 generally includes a first vision unit 31, a second vision unit 35, and a controller 40. The first vision unit 31 and the second vision unit 35 are operatively connected to the controller 40, so that the controller 40 can communicate instructions and receive data from the first vision unit 31 and the second vision unit 35. The first vision unit 31 includes the target camera 34, which is positioned so that the collection area 15 is within the field of view of the target camera 34 and is configured to acquire two-dimensional and / or three-dimensional images of the collection area 15. In this exemplary embodiment, although not visible in Figure 2, the target camera 34 is mounted on the structure 25 and positioned directly above the collection area 15.The second vision unit 35 includes the confirmation camera 36, which is positioned so that the placement area 17 of the placement conveyor 16 is within the field of view of the confirmation camera 36 and is configured to acquire two-dimensional and / or three-dimensional images of the placement conveyor 16. In this exemplary embodiment, the confirmation camera 36 is positioned above the placement conveyor 16 and is also mounted on the structure 25. A person skilled in the art will readily appreciate that the objective camera 34 and / or the confirmation camera 36 may be mounted or positioned alternatively without departing from the spirit or scope of the present invention. Cameras suitable for use in the first vision unit 31 and the second vision unit 35 include three-dimensional image sensors manufactured and distributed by ifm Effector Inc. of Malvern, Pennsylvania. With reference now specifically to FIGURE 5, in this exemplary configuration, the images of the collection area 15 acquired by the target camera 34 are processed locally in the first vision unit 31. To this end, the first vision unit 31 further includes a processor 32 configured to execute instructions (routines) stored in a memory component 33 or other machine-readable medium. <£ computer for processing images acquired by the target camera 34. Although the target camera 34 is generally referred to herein and illustrated in the drawings as comprising a single camera, embodiments in which the target camera 34 comprises multiple cameras are contemplated. Of course, the processor 32 of the first vision unit 31 may also comprise multiple processors. For example, in some embodiments, each respective camera of the first vision unit 31 may have an associated processor for processing the images acquired by the camera. Likewise, in this exemplary embodiment, the images of the placement conveyor 16 acquired by the confirmation camera 36 are processed locally in the second vision unit 35.For this purpose, the second vision unit 35 further includes a processor 37 configured to execute instructions (routines) stored in a memory component 38 or other computer-readable medium to process the images acquired by the confirmation camera 36. Although the confirmation camera 36 is generally referred to herein and illustrated in the drawings as comprising a single camera, configurations are contemplated in which the confirmation camera 36 comprises multiple cameras. Of course, the processor 37 of the second vision unit 35 may also comprise multiple processors. For example, in some configurations, each respective camera of the second vision unit 35 may have a processor. <£ Associated processor for processing the images acquired by the camera. Suitable processors for use in the first vision unit 31 and the second vision unit 35 include the one provided inside the Jetson Nano computer manufactured and distributed by Nvidia Corporation of Santa Clara, California, although alternatively other suitable processors may be used to perform the operations described herein. Although it is generally preferred that the objective camera 34 and the confirmation camera 36 each be provided with their own processors 32, 37, a person skilled in the art will appreciate that, in alternative embodiments, a single processor can be used to perform the respective operations for the processor 32 of the first vision unit 31 and the processor 37 of the second vision unit 35 described herein. In this respect, in some embodiments, the system 10 may include only a single vision unit in which both the objective camera 34 and the confirmation camera 36 are components. Still referring to FIGURE 5, the controller 40 includes a processor 42 configured to execute instructions stored in a memory component 43 or other computer-readable medium. In this exemplary embodiment, the controller 40 is a programmable logic controller or other industrial controller. The controller 40 is connected to the first vision unit 31 and the second vision unit 35 to facilitate data transmission from the first vision unit 31 and the second vision unit 35 to the controller 40 and instruction communication from the controller 40 to the first vision unit 31 and the second vision unit 35, either by wired connection (e.g., Ethernet connection) or by wireless connection (e.g., via a network) using known interfaces and protocols. Although it is generally preferred that the controller 40, the first vision unit 31, and the second vision unit 35 each be provided with their own processors 32, 37, 42, in alternative modes, a single processor may be used to carry out the respective operations described for the processor 32 of the first vision unit 31, the processor 37 of the second vision unit 35, and the processor 42 of the controller 40. In this respect, in some modes, the first vision unit 31 and the second vision unit 35 may be components of the controller 40 or may be characterized by including only the objective camera 34 and the confirmation camera 36, respectively. With reference to Figure 5, in some embodiments, the system 10 may also include a rejection mechanism 60 that is positioned and configured to push packages across the surface of the selection conveyor 14. For example, the rejection mechanism may be mounted on the selection conveyor 14 so that, when activated, it moves across the picking area 15 to push packages determined by the vision and control subsystem 30 to be non-transportable (e.g., packages that exceed certain predetermined dimensions or have a specific shape) off the selection conveyor 14. As such, and as shown in Figure 5, the rejection mechanism 60 may be operatively connected to the controller 40 so that it can be selectively activated in response to instructions (or signals) communicated from the controller 40.Additionally, in some cases, controller 40 can communicate instructions that cause the rejection mechanism 60 to lightly move (or bump) one or more packages located in the collection area 15 to reposition those packages. In other cases, controller 40 can communicate instructions that cause the rejection mechanism 60 to move completely through (or fully sweep) the collection area 15 to push one or more packages located in the collection area 15 completely off the selection conveyor 14. In some implementations, whether the rejection mechanism 60 is selectively activated, or whether it is activated to bump or fully sweep packages, may rely on controller 40 of the vision and control subsystem 30 to determine one or more packages located in area 15. <£ collection does not meet one or more predetermined criteria (e.g., weight or package size criteria). Suitable rejection mechanisms that may be used within the system include those described in U.S. Patent Application Publication No. 2020 / 0377309, which is incorporated herein by reference. With reference again to FIGURES 1-3 and 5, in this exemplary embodiment, the system 10 further includes a sensor 62, such as a photoelectric sensor, positioned at a predetermined distance from a distal end of the sorting conveyor 14. The sensor 62 is configured to detect the presence of packages within the picking area 15 (as indicated by the dashed lines in FIGURE 10) and to obtain readings against them. As shown in FIGURE 5, the sensor 62 is operatively connected to the controller 40 of the vision and control subsystem 30, so that the readings obtained by the sensor 62 are transmitted to the controller 40 for further processing. The sensor 62 can be selectively activated to obtain readings in response to instructions (or signals) communicated from the controller 40 or to obtain readings on a substantially continuous basis.As described in more detail below, in some modes, the readings obtained by sensor 62 are processed by controller 40 during a selection and indexing subroutine to identify when the indexing of the selection conveyor 14 should be stopped, as described later with reference to FIGURES 7 and 10. FIGURE 6 is a flowchart of an exemplary routine for initializing the exemplary conveyor system for package transfer. It should be noted that the routines and subroutines described here correspond to a set of instructions that are stored in memory component 43 and can be executed by the processor 42 of controller 40, unless otherwise specified. With reference to Figures 5 and 6, to ensure that the respective components of system 10 are operational and / or positioned to facilitate the package transfer operations described herein, in this exemplary modality, the vision and control subsystem 30 first executes a system initialization routine before the first robot 20 and the second robot 22 transfer any packages from the picking conveyor 14 to the placing conveyor 16. As indicated in Decision 102 in Figure 6, in this exemplary modality, the system initialization routine begins with the vision and control subsystem 30 determining whether each of the feed conveyors 12a, the destacking conveyor 12b, the picking conveyor 14 (in certain modalities), the placing conveyor 16, the first robot 20, the second robot 22, the target camera 34, and the confirmation camera 36 (if in use) are operational.In this regard, the controller 40's processor 42 can execute instructions that cause the controller 40 to determine whether the aforementioned components are activated (e.g., as indicated by whether the controller 40 is receiving feedback (or signals) from the respective components in general) and / or satisfy one or more predetermined criteria (e.g., as indicated by the nature of the feedback (or signals) received from such components). In some modes, the vision and control subsystem 30 can also determine whether the rejection mechanism 60 and / or the sensor 62 are operational as part of decision 102. If a component verified by the vision and control subsystem 30 is found to be malfunctioning, in this exemplary mode, the controller 40 will generate an alarm to notify an operator of the malfunction of that component, as shown in block 104 in FIGURE 6.In some modes, the alarm generated by controller 40 may take the form of a visual indication displayed on a screen (not shown) that is operatively connected to controller 40 and / or an audible signal projected from a speaker (not shown) that is operatively connected to controller 40. With reference now to FIGURES 4-6, after it is determined that the first robot 20 and the second robot 22 u <£ are operational, the vision and control subsystem 30 evaluates whether the first robot 20 and the second robot 22 are in the starting position, as indicated by decision 106 in FIGURE 6. For each robot determined not to be in the starting position, the controller 40 will communicate instructions (or signals) that will cause the robot to perform a search sequence that returns it to its starting position, as indicated by block 108. Once the search sequence is completed for each robot initially determined not to be in the starting position, the vision and control subsystem 30 re-evaluates the positioning of the first robot 20 and the second robot 22 to determine whether both are in the starting position, as indicated by decision 110 in FIGURE 6.In this sense, and in some modes, the controller 40 can process information (e.g., coordinate data) received from the first robot 20 and the second robot 22 to determine the positioning of the first robot 20 and the second robot 22. In this implementation, if, after completing the search sequence, it is again determined that either of the robots is not in the starting position, the controller 40 will generate an alarm to notify an operator that the first robot 20 and / or the second robot 22 are not correctly positioned, as indicated by block 112 in FIGURE 6. With reference now to FIGURES 5-6, if, afterwards > you After the search sequence is completed, and it is determined that both the first robot 20 and the second robot 22 are in their starting positions, the controller 40 communicates instructions (or signals) that cause the placement conveyor 16 to index to a predetermined distance, as indicated by block 114 in FIGURE 6. In doing so, any packages located on the placement conveyor 16 are moved further down, thus providing additional space in the placement area 17 where packages transferred from the picking area 15 by the first robot 20 or the second robot 22 can be delivered. As indicated by block 116 in FIGURE 6, in this implementation, the controller 40 determines whether the placement conveyor 16 has finished indexing (e.g., based on signals or other information received from the placement conveyor 16, the passage of a predetermined time duration, etc.).) before the first robot 20 or the second robot 22 transfers any packages from the picking area 15. In this exemplary mode, once the controller 40 determines that the placement conveyor 16 has finished indexing, a picking (or package transfer) routine is executed by system 10, as indicated by block 118 in FIGURE 6 and as described below. FIGURE 7 is a flowchart of an exemplary routine for hooking and transferring packages on the exemplary conveyor system 10. With reference now to FIGURES 1-3, 5, and 7, in this exemplary implementation, to begin transferring packages from the selection conveyor 14 to the placement conveyor 16, the target camera 34 is selectively activated in response to instructions (or signals) communicated from the controller 40 to acquire an image of the collection area 15 within the field of view of the target camera 34 and any packages located therein, such as packages 50a, 50b, and 50c in FIGURE 3, as indicated by block 120 in FIGURE 7. Then, in this exemplary mode, the image is processed by the processor 32 of the first vision unit 31. The first vision unit 31 then transmits image data to controller 40. Based on the image data received from the first vision unit 31, controller 40 determines if there are packets located in collection area 15, as indicated by decision 122 in FIGURE 7.In this exemplary mode, if no packages are detected within collection area 15, controller 40 communicates instructions that cause the upstream conveyor 12, which, again in this case, is defined by the feed conveyor 12a and the destack conveyor 12b, and the pick conveyor 14 to index a predetermined distance to move downstream packages into collection area 15 from pick conveyor 14, as indicated by block 124 in FIGURE 7. Once the upstream conveyor 12 and pick conveyor 14 have been indexed to a predetermined distance, the target camera 34 acquires another image to determine if there are any packages located within collection area 15. The above process is repeated until the target camera 34 acquires an image indicating that one or more packages are located in collection area 15. With reference to Figures 1, 2, 5, and 7, once the vision and control subsystem 30 determines that one or more packages are located within the picking area 15 of the sorting conveyor 14, the controller 40 communicates instructions that cause the first robot 20 and the second robot 22 to successively transfer packages located within the picking area 15 of the sorting conveyor 14 to the placement conveyor 16. To reduce the downtime associated with transferring packages from the picking area 15 to the placement conveyor 16 and thus improve the package processing rate, in this exemplary mode, the controller 40 selectively communicates the package transfer instructions to the first robot 20 and the second robot 22 following a robot selection subroutine, as indicated by decisions 126, 128, 130 and blocks 132, 134 in FIGURE 7. When executed, or The robot selection subroutine causes the controller 40 to determine which of the first robot 20 and the second robot 22 should be selected for package transfer, and which package within the collection area 15 should be transferred by the selected robot in cases where multiple packages are in the collection area 15 at any given time. In this exemplary mode, the selections resulting from the execution of the robot selection subroutine are based on a priority queue, the availability of each robot, and / or the proximity of the packages to a selected robot, as described later. With reference to Figures 1, 2, 5, and 7, the robot selection subroutine begins when controller 40 determines whether the first robot 20 or the second robot 22 has priority to pick up and transfer a package from collection area 15, as indicated by decision 126 in Figure 7. In this example, whether the first robot 20 or the second robot 22 has priority to pick up and transfer a package at any given time is dictated by a priority queue, which, at any given time, contains one or more entries corresponding to the order in which the first robot 20 and / or the second robot 22 will have initial priority to pick up and transfer packages from the selection conveyor 14. To reduce processing times, in this example, at least the initial entry of the priority queue is predetermined and corresponds to which robot will be the first to pick up and transfer a package within collection area 15.Subsequent priority queue entries can be predetermined or populated and assigned by controller 40 during the packet transfer process. With reference to Figures 1, 2, 4, 5, and 7, once the priority is determined, controller 40 subsequently determines whether the priority robot is actually available to transfer a package to the placement conveyor 16, as indicated by decisions 128 and 130 in Figure 7. If the priority robot is available, controller 40 will select that robot to perform the transfer of a package from the picking area 15 to the placement conveyor 16. However, if the priority robot is busy or unavailable to transfer a package to the placement conveyor 16, controller 40 will assess whether the non-priority robot is available to transfer the package and will instead select that robot to perform the transfer, provided the non-priority robot is not also busy or otherwise unavailable.For example, using FIGURE 2 as an example, if the first robot 20 has priority but is returning from transferring the first package 50a to the placement conveyor 16, and the second robot 22 is in the starting position, then controller 40 will select the second robot 22 to perform the transfer of a selected package (in this case, package 50b) in the picking area 15 to the placement conveyor 16. By determining and selecting the first available robot to perform the transfer of a package, the robot selection subroutine effectively reduces or eliminates instances where the transfer of a selected package is delayed due to the unavailability of a single-robot robot, thereby reducing or eliminating the downtime associated with transferring packages from the picking area 15 of the picking conveyor 14 to the placement area 17 of the placement conveyor 16. With reference now to FIGURES 1-3, 5, and 7, after controller 40 selects either the first robot 20 or the second robot 22, controller 40 determines which package in the picking area 15 of the picking conveyor 14 will be transferred to the placing conveyor 16 by the selected robot. In cases where the image data received from the first vision unit 31 indicates that only a single package is located within the picking area 15, controller 40 will instruct the selected robot to engage and transfer that package to the placing conveyor 16.However, in cases where the image data received by controller 40 from the first vision unit 31 indicates that multiple packages are located within the collection area 15 (for example, as shown in FIGURE 3), controller 40, in this example mode, will select one of the packages to be transferred to the placement conveyor 16 based on the package's proximity to the selected robot. Specifically, in this example mode, controller 40 is configured to select the package closest to the robot selected for transfer, as indicated by blocks 132 and 134 in FIGURE 7. In this example mode, the location data associated with each respective package corresponds to the coordinates (for example, x-coordinate values and y-coordinate values) of the package within the collection area 15.In some modes, the location data may also include an indication of whether each respective package is located within the first area 15a or the second area 15b of collection area 15. In such modes, the controller 40 can determine which package is closest to the selected robot based on the coordinates of each respective package, in which area of collection area 15 the packages are located, or a combination of both. With reference now to FIGURES 3, 5 and 7, in the modes, the location data of each respective package within the collection area 15 can be initially generated by the first vision unit 31 while processing the image acquired by the objective camera 34 and subsequently transmitted to the controller 40. The coordinates of the package determined as the closest to the selected robot are included in the instructions communicated from the controller 40 to the selected robot, which cause the selected robot to engage and transfer the selected package to the placement conveyor 16, as indicated by blocks 136, 138 in FIGURE 7.As perhaps best indicated by the delimiting squares 13a and 13b surrounding packages 50a and 50b, respectively, in FIGURE 3, in this exemplary embodiment, the first vision unit 31 is configured to identify and generate location data for only two packages located within the collection area 15 at a time. However, it is apparent that, in alternative embodiments, the first vision unit 31 can be configured to identify and generate location data for more than two packages located within the collection area 15 without departing from the spirit or scope of the present invention. With reference now to FIGURES 5 and 7, once the controller 40 has communicated instructions to the selected robot to engage and transfer the selected package, the vision and control subsystem 30 verifies whether the selected package was successfully engaged and transferred out of the picking area 15 by the selected robot. To this end, in this exemplary mode, the > tu NCNNC ü 36 g σ Controller 40 determines whether both the selected package and the selected robot are outside the field of view of the target camera 34, as indicated by decisions 140, 142 in FIGURE 7. In this regard, controller 40 communicates instructions that cause the first vision unit 31 to evaluate whether both the selected robot and the selected package are outside the field of view of the target camera 34 and communicates the results of this evaluation to controller 40. To initiate this process, in some modes, controller 40 may communicate instructions that cause the target camera 34 to acquire another image of the collection area 15.In such modes, the processor 32 of the first vision unit 31 then processes the image and transmits image data to the controller 40, which indicates whether the selected robot and the selected package are outside the field of view of the target camera 34. This indicates that the selected package was successfully attached and transferred out of the collection area 15. If the controller 40 determines that the selected robot or the selected package is not outside the field of view of the target camera 34, the above process can be repeated after a predetermined period of time to provide the selected robot with additional time to transfer the selected package.In this exemplary mode, if the selected robot or the selected package is not out of the field of view of the target camera 34 after a predetermined period of time or after a predetermined number of iterations of acquiring and processing additional images of the collection area 15, then the controller 40 will communicate instructions to restart the package transfer routine (the start of which is indicated by block 120 in FIGURE 7). Conversely, if the controller 40 determines that the selected robot and the selected package are out of the field of view of the target camera 34, in this exemplary mode, the controller 40 will proceed with an additional verification step (as indicated by decisions 144, 146 in FIGURE 7), as well as communicate instructions to restart the package transfer routine to initiate the transfer and singulation of additional packages. With reference now to FIGURES 2, 5, and 7, in this exemplary embodiment, to further verify the successful coupling of the selected robot with the selected package, the controller 40 also determines whether the selected robot is pneumatically engaged with the selected package, as indicated by decisions 144 and 146 in FIGURE 7. Accordingly, in some embodiments, the end effector 20a of the first robot 20 and the end effector 22a of the second robot 22 each include a vacuum sensor (not shown). The vacuum sensor of each robot is operatively connected to the controller 40, such that the vacuum sensor provides vacuum pressure feedback to the controller 40, which the controller 40, in turn, uses to determine whether the end effector of the selected robot is pneumatically engaged with the selected package.If controller 40 determines that the selected robot's end effector is not pneumatically coupled to the selected package, then controller 40 will issue instructions that will cause the package transfer routine described above to be repeated. Otherwise, system 10 will proceed to verify whether the selected package was successfully transferred and delivered to the placement conveyor 16 by executing a confirmation (or package placement) routine, as indicated in block 148 in FIGURE 7 and described later. With reference to Figures 1, 2, 5, and 8, to begin verifying the placement of the selected package on the placement conveyor 16, the confirmation camera 36 is selectively activated in response to instructions (or signals) communicated from controller 40 to acquire an image of the placement area 17 of the placement conveyor 16, as indicated by block 150 in Figure 8. The image of the placement area 17 is then processed by the processor 37 of the second vision unit 35. The second vision unit 35 then transmits image data to controller 40. Based on the image data received from the second vision unit 35, controller 40 initially determines whether the selected package was delivered to the placement conveyor 16, as indicated by decision 152 in Figure 8.If controller 40 determines that the selected package has not been delivered to the placement conveyor 16, controller 40 communicates instructions (or signals) that cause the confirmation camera 36 to acquire another image of the placement area 17 and effectively restart the confirmation routine. Otherwise, system 10 continues with the next step of the confirmation routine. Still with reference to FIGURES 1, 2, 5, and 8, in this exemplary mode, before indexing the placement conveyor 16 to provide space for subsequent packets to be delivered, system 10 executes a singulation confirmation subroutine to confirm that the packet is correctly singulated, as indicated by decisions 154, 156, 162, 164 and blocks 158, 160, 166, 168 in FIGURE 8. As indicated by decision 154 in FIGURE 8, in this exemplary mode, the singulation confirmation subroutine includes controller 40, which determines whether multiple, inadvertently, selected robots simultaneously transferred packets from the selection conveyor 14 to the placement conveyor 16 based on image data received from the second vision unit 35.If controller 40 determines that multiple packages were transferred, then controller 40 subsequently determines whether the first robot 20 or the second robot 22 is available, as indicated by decision 156 in FIGURE 8. Again, the availability of each robot can be determined based on whether the robot is in its starting position. Based on the determined availability of the first robot 20 and the second robot 22, controller 40 communicates instructions that cause either the first robot 20 or the second robot 22 to engage and hold one of the previously detected packages within the placement area 17, as indicated by blocks 158 and 160 in FIGURE 8. In some modes, the engaged package can be selected based on its position on the placement conveyor 16. For example, in some modes, the package placed closest to the center of the placement area 17 can be engaged and held.After grasping one of the packages, controller 40 sends instructions (or signals) that cause confirmation camera 36 to acquire another image of placement area 17 and effectively restart the confirmation routine. The robot continues to grasp the package until placement conveyor 16 is indexed, at which point the grasping robot delivers the package back into placement area 17 of the placement conveyor 16, as indicated by blocks 176 and 178 in Figure 8. Still with reference to FIGURES 1, 2, 5 and 8, in this exemplary mode, the singulation confirmation subroutine further includes that controller 40 determines whether a packet transferred by the first robot 20 or the second robot 22 during the packet transfer routine is oriented on the placement conveyor 16 in a manner that satisfies one or more predetermined criteria (e.g., placed at a certain angle, placed vertically, etc.) based on image data received from the second vision unit 35, as indicated in decision 162. If controller 40 determines that the packet is not oriented to satisfy the predetermined criteria, then controller 40 subsequently determines whether the first robot 20 or the second robot 22 is available, as indicated in decision 164 in FIGURE 8.Based on the determined availability of the first robot 20 and the second robot 22, the controller 40 then communicates instructions that cause either the first robot 20 or the second robot 22 to engage and reorient the package in a manner that satisfies predetermined criteria, as indicated by blocks 166, 168 in FIGURE 8. Once the package is reoriented, the controller 40 communicates instructions that cause the confirmation camera 36 to acquire another image of the placement area and effectively restart the confirmation routine to confirm that the package is correctly oriented. With reference to Figures 1, 2, 5, and 8, after verifying the absence of multiple packages in placement area 17 and that the package within placement area 17 is correctly oriented, controller 40 issues instructions that cause placement conveyor 16 to be indexed to a predetermined distance, as indicated by block 174 in Figure 8. As a result, any package on placement conveyor 16 is moved further down to create space in placement area 17 for transferring another package. As previously stated, after the placement conveyor 16 is indexed, if applicable, the package held by the first robot 20 or the second robot 22 is transferred back to placement conveyor 16.Accordingly, in this exemplary mode, after the indexing of the placement conveyor 16, the controller determines whether the first robot 20 or the second robot 22 is holding a package, as indicated in decisions 173, 177 in FIGURE 8. If the controller 40 determines that one of the robots is holding a package, the controller 40 then communicates instructions that cause the robot holding the package to deliver the package onto the placement conveyor 16, as indicated in blocks 176, 178 in FIGURE 8. After such delivery, the controller 40 communicates instructions that cause the confirmation camera 36 to acquire another image of the placement area 17 of the placement conveyor 16 and effectively restart the confirmation routine to confirm that the delivered package is correctly oriented.If the placement conveyor 16 is indexed and the first robot 20 or the second robot 22 does not hold any packages, system 10 will proceed to transfer any remaining packages that need to be transferred to the placement conveyor 16 by running a package evaluation subroutine, as indicated by block 179 in FIGURE 8 and described below with respect to FIGURE 9. With reference to Figures 7 and 9, the packet evaluation subroutine described in Figure 9 is preferably implemented within and defines a portion of the packet transfer routine described above with reference to Figure 7, which occurs after the execution of the confirmation routine described above. As shown in Figure 9, in this exemplary mode, the packet evaluation subroutine begins when controller 40 determines whether there are any remaining packets within system 10 that need to be transferred to the placement conveyor 16, as indicated in decision 180 in Figure 9. To this end, processor 42 of controller 40 evaluates whether the latest image data received from the first vision unit 31 indicates the presence of more than one packet within the collection area 15, as indicated by decision 182 in Figure 9.If controller 40 determines that the latest image data received from the first vision unit 31 does not indicate the presence of more than one packet, controller 40 will communicate instructions that will cause a new cycle of the packet transfer routine described above (the start of which is indicated by block 120 in FIGURE 7), as indicated by block 192 in FIGURE 9. In some modes, if no packets are detected within the collection area 15 of the selection conveyor 14 within a predetermined period of time and / or after a predetermined number of upstream conveyor 12 and selection conveyor 14 indices, controller 40 may determine that no packets remain during decision 180 and communicate instructions that stop the operation of system 10. Conversely, and with reference now to FIGURES 1-3, 5, and 9, if controller 40 determines that the latest image data received from the first vision unit 31 indicates the presence of multiple packets, then controller 40 will process the image data to determine whether the packets are spaced at a predetermined distance from each other (e.g., 200 mm), as indicated in decision 184 in FIGURE 9. As perhaps best evidenced by viewing FIGURES 2 and 3 in reverse sequence, in cases where the image data does not indicate the presence of multiple packets, the image data will include data relating to a first packet 50a that has already been engaged and transferred to the placement conveyor 16 and a second packet 50b that is still in the collection area 15 and needs transfer.The default distance can be selected based on the minimum amount of space between packets required for the first vision unit 31 to distinguish the first packet 50a from the second packet 50b and provide accurate location data with respect to the location of the second packet 50b that remains in the collection area 15. With reference to Figures 1-3, 5, and 9, if controller 40 determines that the first packet 50a and the second packet 50b were not separated by the predetermined distance, to facilitate the generation of more accurate location data for the remaining second packet 50b within collection area 15, controller 40 will issue instructions that initiate a new cycle of the packet transfer routine described above. This will cause the target camera 34 to acquire an additional image of the second packet 50b within collection area 15, and the first vision unit 31 to process it. If, on the other hand, controller 40 determines that the first packet 50a and the second packet 50b were separated by the predetermined distance, system 10 avoids these additional image acquisition and processing steps.Rather, controller 40 will determine which robot has priority with respect to attaching and transferring the second package 50b and then communicate instructions that give the determined robot priority to attach and transfer the second package 50b to the placement conveyor 16, as indicated by decision 186 and blocks 188, 190 in FIGURE 9. After the transfer of the second package 50b to placement conveyor 16, controller 40 will communicate instructions to restart the confirmation routine (the start of which is indicated by block 150 in FIGURE 8). The package transfer and confirmation routines described in FIGURES 7, 8, and 9, respectively, can be repeated to transport any remaining packages within system 10 that need to be transferred to placement conveyor 16. By conditioning the coupling of the first vision unit 31 to acquire and process additional images of collection area 15 in the manner described above, instead of acquiring and processing a new image before transferring each packet placed in collection area 15, system 10 can significantly reduce the downtime associated with image acquisition and processing and increase packet transfer throughput. For example, assuming the first vision unit 31 takes approximately 250 milliseconds (ms) to acquire and process an image of collection area 15 and the packets located within it, and there are 50 instances per hour where the packets within the collection area meet the separation conditions described above, then system 10 will save approximately 12,500 ms (12.5 seconds) of image acquisition and processing time per hour.If it is assumed that it takes an average of approximately two seconds for the packet transfer and confirmation routines described above to be carried out, then system 10 will be able to transfer approximately 6.25 more packets per hour than if the first vision unit 31 were required to acquire and process an image every time a packet needed to be transferred. FIGURE 10 is another top view of the selection conveyor of the exemplary conveyor system 10 of FIGURE 1. FIGURE 11 is an example subroutine, which can be executed by system 10 to pick up a package from collection area 15 and index the selection conveyor 14 during the package transfer routine. With reference to Figures 7, 9, and 11, in this exemplary embodiment, the system 10 selectively employs a package indexing and selection subroutine during the package transfer process from the selection conveyor 14 to the placement conveyor 16 to reduce the downtime associated with transferring packages to the collection area 15 from the selection conveyor 14. Specifically, the collection and indexing subroutine reduces this downtime by indexing the selection conveyor 14 a calculated distance to move a package located upstream of the collection area 15 (e.g., package 50d in Figure 10) into the collection area 15 immediately after (i.e., substantially simultaneously with) another package (e.g., package 50c in Figure 10) being removed from the collection area 15 by the first robot 20 or the second robot 22.Since the calculated distance is determined before indexing the selection conveyor 14 to move the package upstream to the collection area 15, the calculated distance can also be characterized as a predetermined distance. In this exemplary embodiment, this selection and indexing subroutine is carried out by the vision and control subsystem 30, which executes the selection and indexing subroutine outlined in FIGURE 11. This subroutine is preferably implemented within and defines a portion of the package transfer routine described above with reference to FIGURE 7. As such, it should be appreciated that the respective actions and determinations performed during the selection and indexing subroutine shown in FIGURE 11 can occur at different times within the package transfer routine outlined in FIGURE 7.It should also be noted that the respective actions and determinations outlined in FIGURE 11 may not necessarily occur immediately after each other, but in some cases, they may be temporally separated from each other by the occurrence of certain actions or determinations within the packet transfer routine outlined in FIGURE 7. Furthermore, it should be noted that certain actions of the subroutine outlined in FIGURE 11 may coincide or correspond with actions within the packet transfer routine outlined in FIGURE 7. With reference now specifically to FIGURES 10 and 11, the selection and indexing subroutine begins when the target camera 34 is selectively activated in response to instructions (or signals) communicated from the controller 40 to acquire an image of the collection area 15 and any packets located therein, such as packets 50c and 50d in FIGURE 10, as indicated by block 196 in FIGURE 11. Although indicated by separate reference numbers, it is noticeable that, in some modes, the selective activation of the target camera 34 indicated by block 196 in FIGURE 11 may correspond to the selective activation of the target camera 34 indicated by block 120 in FIGURE 7.Based on the image data received from the first vision unit 31 after processing the image acquired by the objective camera 34, the controller 40 proceeds to identify the location of a package to be transferred to the placement conveyor 16 (e.g., in the manner described above with reference to decisions 126, 128, 130 and blocks 132, 134 in FIGURE 7) and calculates the total distance (as indicated by the double-headed arrow, d, in FIGURE 10) that the picking conveyor 14 must index to move a package located upstream of the collection area 15 (e.g., package 50d in FIGURE 10) into the collection area 15, as indicated by block 198 in FIGURE 11. In this exemplary mode, the total distance, d, calculated by the controller 40 is based, at least in part, on the image data received by the controller 40 corresponding to an image obtained by the camera lens 34. Still with reference to FIGURES 10 and 11, before indexing the selection conveyor 14 the total calculated distance, d, the controller 40 determines whether one or more packages should be transferred from the collection area 15 before indexing the selection conveyor 14, as indicated by decision 200 in FIGURE 11. If the controller 40 determines that only one package currently needs to be transferred (for example, as shown in FIGURE 10), the controller 40 will communicate instructions that will cause that package to be hooked up and transferred out of the collection area 15 by the first robot 20 or the second robot 22, as well as instructions that cause the selection conveyor to index the total calculated distance, d, immediately after the package is removed from the collection area 15.However, if controller 40 determines that the packet did not successfully engage and transfer out of collection area 15 (e.g., in the manner described above with reference to decisions 140, 142, 144, 146 in FIGURE 7), the pick and move routine will be canceled. With reference still to FIGURES 10 and 11, if controller 40 determines that several packets need transfer, controller 40 will proceed to determine if the packets are separated by a predetermined distance from each other (for example, 200 mm), as indicated by decision 202 in figure 11. If it is determined that the packets are not separated from each other by the predetermined distance, then the selection and indexing subroutine is aborted.Conversely, if controller 40 determines that the packages are separated from each other by a predetermined distance, controller 40 will communicate instructions that will cause each of the packages to be hooked up and transferred out of the picking area 15 by the first robot 20 or the second robot 22, and also cause the picking conveyor 14 to index the calculated total distance, d, immediately after the transfer of the last package into the picking area 15, as indicated by blocks 204, 206, 208 in the. FIGURE 11. However, if controller 40 determines that any of the packets did not successfully engage and transfer out of collection area 15 (e.g., in the manner described above with reference to decisions 140, 142, 144 and 146 in FIGURE 7), the pick and move routine will be aborted. Although not reflected in the subroutine outlined in FIGURE 11, in some configurations, the indexing of the selection conveyor 14 may be prematurely stopped if, during its indexing, controller 40 receives readings from sensor 62 indicating that one or more packages are located within the collection area 15 to prevent package overflow (for example, packages being conveyed outside the selection conveyor 14 and / or onto the placement conveyor 16). In this regard, upon receiving readings from sensor 62 indicating the presence of one or more packages in the collection area 15, controller 40 will issue instructions that will stop the indexing of the placement conveyor 16. Additionally, configurations are also contemplated in which the upstream conveyor 12 is indexed concurrently with the selection conveyor 14 during the selection and indexing subroutine. As an example of the improved package throughput rate, during an initial evaluation of the throughput generated by the system 10 described above, running the routines and subroutines as described above for a predetermined time interval, compared to the throughput data generated by a system employing only a single-robot separator to transfer packages from one conveyor to another during the same time interval, it was found that the system 10 of the present invention was able to separate and transfer a total of approximately 2,000 packages, while the single-robot separator was only able to separate and transfer a total of approximately 1,500 packages. Based on the above data, the system 10 of the present invention thus exhibited an improved package transfer throughput rate of approximately 25% compared to the single-robot separator system. It should also be noted that the first robot 20, the second robot 22, and the vision and control subsystem 30 can be used in conjunction with alternative conveyor arrangements and with some or all of the routines and subroutines described above executed in a similar manner to suit different sorting applications and / or further improve the package transfer throughput rate. In this regard, Figures 12-17 show various alternative conveyor systems 300, 400, 500, 600, 700, and 800 that also utilize multiple singulator robots to transfer and single-serve packages. Throughout this application, similar components are provided with similar part numbers. Although not shown in Figures 12-17, it is apparent that the various conveyor systems 300, 400, 500, 600, 700, and 800 shown in those figures would also include and utilize the vision and control subsystem 30 described above.Furthermore, to avoid unnecessary repetition, it is noted that modalities are contemplated in which some or all of the respective conveyors mentioned in the analysis of systems 300, 400, 500, 600, 700 and 800 below are operationally connected to the controller 40 of the vision and control subsystem 30, so that the controller 40 can communicate instructions to control the operation of said conveyors. With reference now to FIGURE 12, this conveyor system 300 (or system 300) includes the picking conveyor 14, the first robot 20, and the second robot 22. Unlike the system 10 described above with reference to FIGURES 1 and 2, however, the placing conveyor in this system 300 is defined by, and can therefore be characterized as including, multiple conveyors. Specifically, in this exemplary embodiment, the placing conveyor of system 300 includes: a first placing conveyor 316, which receives packages from the first robot 20; and a second placing conveyor 318, which receives packages from the second robot 22 and is placed side-by-side with the first placing conveyor 316.Because the first robot 20 and the second robot 22 deliver packages to separate conveyors, the package transfer rate from the picking conveyor 14 is further increased, as two separate packages (one by the first robot 20 and the other by the second robot 22) can be transferred simultaneously or in close temporal proximity without the risk of the two packages stacking on top of each other or being otherwise positioned in a non-individualized manner. Furthermore, unlike the system 10 described above with reference to Figures 1 and 2, in this system 300, the first robot 20 and the second robot 22 are mounted on a floor surface in an upright rather than inverted position. With reference now to FIGURE 13, just like the system 300 described above with reference to FIGURE 12, this conveyor system 400 (or system 400) also includes a placement conveyor 416, 418, which is defined by, and can therefore be characterized as including: a first placement conveyor 416, which receives packages from the first robot 20; and a second placement conveyor 418, which receives packages from the second robot 22. However, unlike the system 300 described above with reference to FIGURE 12, in this system 400, the first placement conveyor 416 and the second placement conveyor 418 are arranged linearly, so that a package transferred to the first placement conveyor 416 is subsequently conveyed downstream for eventual reception by the second placement conveyor 418.In this exemplary modality, the 400 system also includes an intermediate conveyor 420 placed between the first placement conveyor 416 and the second placement conveyor 418, which can be selectively indexed to regulate the rate at which packages unloaded by the first placement conveyor 416 are subsequently transferred to the second placement conveyor 418. Still referring to FIGURE 13, in this system 400, the upstream conveyor 412 is a hopper that defines an inclined path along which a flow of bulk packages can slide down (under the force of gravity) to the picking conveyor 14. As such, in this exemplary embodiment, the upstream conveyor 412 does not need to be indexed for the packages loaded onto it to be delivered to the picking conveyor 14. The above arrangement can serve to improve package transfer throughput by reducing the downtime associated with the picking conveyor 14, and therefore, the first robot 20 and the second robot 22 expect to receive packages from the upstream conveyor 412. u <£ With reference now to FIGURE 14, this conveyor system 500 (or system 500) includes the same components as the system 300 described above with reference to FIGURE 12, and further includes the upstream conveyor 12 of the system 10 described above with reference to FIGURES 1, 2, and 5, a first downstream conveyor 520 positioned downstream of the first conveyor 316, and a second downstream conveyor 522 positioned downstream of the second conveyor 318. In this exemplary embodiment, the second downstream conveyor 522 is defined by a first induction conveyor that receives the packages discharged from both the second placement conveyor 318 and the first downstream conveyor 520. In this exemplary embodiment, the first downstream conveyor 520 is defined and can therefore be characterized by including a second induction conveyor 520a and a fusion conveyor 520b.The second induction conveyor 520a is positioned downstream of the first placement conveyor 316 so that packets discharged from the first placement conveyor 316 are directed to the second induction conveyor 520. The fusion conveyor 520b has a proximal end located downstream of the second induction conveyor 520a to receive packets discharged from it and a distal end positioned adjacent to the second induction conveyor 522u. <£ downstream, so that the packets unloaded from the fusion conveyor 520b are directed to the second conveyor 522 downstream. With reference now to FIGURE 15, this conveyor system 600 (or system 600) includes: the conveyor 12 upstream of system 10 described above with reference to FIGURES 1, 2 and 5; the first and second placement conveyors 316, 318 of systems 300 and 500 described above with reference to FIGURES 12 and 14, respectively; a first induction conveyor 620; a second induction conveyor 622; and a pass-through and catch conveyor 624. Unlike the systems 10, 300, 400, and 500 described above, in this system 600, the sorting conveyor is defined by, and can therefore be characterized as including, a first sorting conveyor 613 and a second sorting conveyor 614. The first sorting conveyor 613 is positioned immediately downstream of the upstream conveyor 12, and the second sorting conveyor 614 is positioned immediately downstream of the first sorting conveyor 613. As such, in this exemplary embodiment, packages that are not transferred off the first sorting conveyor 613 are subsequently directed to the second sorting conveyor 614.In this exemplary configuration, the first robot 20 is configured to hook and transfer packages from the first selection conveyor 613 to the first placement conveyor 316, and the second robot 22 is configured to hook and transfer packages from the second selection conveyor 614 to the second placement conveyor 318. Still referring to FIGURE 15, the first induction conveyor 620 is placed immediately downstream of the first placement conveyor 316, so that packages unloaded from the first placement conveyor 316 are directed to the first induction conveyor 620. Similarly, the second induction conveyor 622 is placed immediately downstream of the second placement conveyor 318 so that packages unloaded from the second placement conveyor 318 are directed to the second induction conveyor 622. The pass-through and catch conveyor 624 is placed immediately downstream and carries the package in a different direction, which in this case is generally perpendicular to the direction in which the first induction conveyor 620 and the second induction conveyor 622 carry packages.As a result of this change in direction, packages unloaded from the first induction conveyor 620 or the second induction conveyor 622 onto the pass-through and catch conveyor 624 are automatically reoriented in a way that may be more suitable for downstream sorting processes. For example, in some implementations, the pass-through and catch conveyor 624 can be used to reorient packages unloaded from the first induction conveyor 620 and the second induction conveyor 622 in a way that makes these packages fit more easily onto a tilting tray conveyor (not shown) located downstream of the pass-through and catch conveyor 624.The automatic reorientation facilitated by the pass-through and capture conveyor 624 can thus serve to reduce or alleviate the need for the first robot 20 and the second robot 22 to reorient the packages transferred to the first placement conveyor 316 and the second placement conveyor 318, respectively. With reference to FIGURE 16, this conveyor system 700 (or system 700) includes the same conveyor arrangement as the system 600 described above with reference to FIGURE 15, except for the conveyors located downstream of the first placement conveyor 316 and the second placement conveyor 318. In this respect, system 700 includes a first conveyor belt strip 720 located immediately downstream of the first placement conveyor 316 and a second conveyor belt strip 722 located immediately downstream of the second placement conveyor 318.The first conveyor belt strip 720 and the second conveyor belt strip 722 comprise a plurality of belts, which can be driven at different speeds to reorient the packages in the desired manner while they are being transported by the first conveyor belt strip 720 and the second conveyor belt strip 722. This system further includes a center-fusion conveyor 724 which is positioned immediately downstream of the first conveyor belt strip 720 and the second conveyor belt strip 722 and is configured to center packages unloaded from said conveyors.The automatic reorientation facilitated by the first conveyor belt 720, the second conveyor belt 722, and the central fusion conveyor 724 can reduce or alleviate the need for the first robot 20 and the second robot 22 to reorient packages transferred to the first and second placement conveyors 316 and 318, respectively. In this exemplary embodiment, the 700 system further includes an induction conveyor 726 positioned immediately downstream of the central fusion conveyor 724 to transport packages unloaded from the central fusion conveyor 724 for further processing. With reference now to FIGURE 17, this conveyor system 800 (or system) includes the same conveyor arrangement as the system 700 described above with reference to FIGURE 16, except that the center fusion conveyor 724 and the induction conveyor 726 are removed and replaced by the pass-through and catch conveyor 624 of the system 600 described above with reference to FIGURE 15. The automatic reorientation facilitated by the first conveyor belt strip 720, the second conveyor belt strip 722, and the pass-through and catch conveyor 624 can serve to reduce or alleviate the need for the first robot 20 and the second robot 22 to reorient packages transferred to the first conveyor 316 and the second conveyor 318, respectively. A person skilled in the art will recognize that further embodiments and implementations are also possible without departing from the teachings of the present invention. This detailed description, and in particular the specific details of the exemplary embodiments and implementations described herein, is provided primarily to facilitate understanding, and no unnecessary limitations should be inferred from it, as the modifications will be obvious to those skilled in the art upon reading this description and can be made without departing from the spirit or scope of the invention.
Claims
1. A conveyor system, characterized in that it comprises: a first singulator robot; a second singulator robot; a collection area from which packages from a bulk flow of packages can be picked up and transferred by the first singulator robot or the second singulator robot; a placement conveyor located downstream of the collection area and including a placement area for receiving packages transferred by the first singulator robot or the second singulator robot;and a vision and control subsystem operatively connected to the first singulator robot, the second singulator robot, the vision and control subsystem including a first camera for acquiring one or more images of the picking area and any packages located in the picking area, and a controller including a processor for executing instructions stored in a memory component to (i) receive and process image data corresponding to an initial image of the picking area acquired by the first camera, and (ii) selectively communicate instructions to the first singulator robot and the second singulator robot that cause the first singulator robot and the second singulator robot to successively engage and transfer packages from the bulk flow, from packages placed in the picking area to the placement area of the placement conveyor.
2. The conveyor system according to claim 1, characterized in that the controller selectively communicates instructions to the first singulator robot and the second singulator robot to engage and transfer packets within the collection area based on a priority queue that includes one or more inputs that assign priority to either the first singulator robot or the second singulator robot and the availability of the first singulator robot and the second singulator robot.
3. The conveyor system according to claim 2, characterized in that the availability of the first singulator robot and the second singulator robot is based on the positioning of the first singulator robot and the second singulator robot, respectively.
4. The conveyor system according to claim 2, characterized in that the memory component further includes instructions that, when executed by the processor, cause the controller to (iii) select one of the first singulator robot and the second singulator robot and (iv) select one of the packets from the bulk packet flow placed in the collection area for the selection of the first singulator robot or the second singulator robot to engage and transfer, based on the proximity of the packets from the bulk packet flow placed in the collection area, to the selected packets from the first singulator robot and the second singulator robot.
5. The conveyor system according to claim 1, characterized in that the memory component further includes instructions that, when executed by the processor, cause the controller to (iii) determine whether multiple packages from the bulk flow of packages placed in the collection area are spaced apart from each other by a predetermined distance based on the image data corresponding to the initial image of the selection area and (iv) selectively communicate instructions that cause the first camera to acquire an additional image of the collection area based on the determined spacing of the multiple packages 6. The conveyor system according to claim 1, characterized in that the collection area is defined by a sorting conveyor with a transport surface that can be indexed and advanced forward, and wherein the memory component further includes instructions that, when executed by the processor, cause the controller to communicate instructions that cause the sorting conveyor to index a predetermined distance 66 to move a package from the bulk package flow to the collection area of the sorting conveyor immediately after removing another package from the bulk package flow from the collection area of the sorting conveyor.
7. The conveyor system according to claim 6, characterized in that it further comprises a sensor configured to obtain readings indicating the presence of one or more packages from the bulk package flow within the picking area of the sorting conveyor, wherein the memory component further includes instructions which, when executed by the processor, cause the controller to communicate instructions causing the placing conveyor to stop indexing in response to receiving a sensor reading indicating one or more packages within the picking area.
8. The conveyor system according to claim 1, characterized in that the placement conveyor is operatively connected to the control and vision subsystem, wherein the control and vision subsystem further includes a second camera for acquiring an image of the placement area of the placement conveyor and any package located in the placement area, and wherein the memory component further includes instructions that, when executed by the processor, cause the controller (iv) to receive and process image data corresponding to an initial image of the placement area of the placement conveyor acquired by the second camera to confirm the placement of each individual package transferred to the placement conveyor by the first guiding robot and the second singulating robot.
9. The conveyor system according to claim 8, characterized in that the memory component further includes instructions that, when executed by the processor, cause the controller (v) to determine whether the first singulator robot or the second singulator robot simultaneously transferred multiple packages to the placement conveyor at a given time and (vi) to selectively communicate instructions that cause a selected one of the first singulator robot or the second singulator robot to engage and remove one of the packages from the multiple packages in the placement area of the placement conveyor.
10. The conveyor system according to claim 9, characterized in that the memory component further includes instructions that, when executed by the processor, cause the controller (vii) to selectively communicate instructions that cause the placement conveyor to be indexed and (viii) to selectively communicate instructions that cause the selected first singulator robot or the second singulator robot to transfer the removed package 68 back to the placement conveyor.
11. The conveyor system according to claim 8, characterized in that the memory component further includes instructions that, when executed by the processor, cause the controller (v) to determine whether a package from the bulk flow of packages transferred to the placement conveyor by the first singulator robot or the second singulator robot is oriented in a manner that satisfies one or more predetermined criteria and (vi) to selectively communicate instructions that cause a selected one of the first singulator robot or the second singulator robot to reorient the package on the placement conveyor in a manner that satisfies one or more predetermined criteria.
12. The conveyor system according to claim 1, characterized in that it further comprises a rejection mechanism operatively connected to the control and vision subsystem and configured to push packages across a surface in the collection area, and wherein the memory component further includes instructions that, when executed by the processor, cause the controller (iv) to selectively communicate instructions that cause the rejection mechanism to push one or more packages from the bulk flow of packages placed within the collection area.
13. The conveyor system according to claim 1, characterized in that it further comprises a structure for supporting the first singulator robot and the second singulator robot, and wherein the first singulator robot and the second singulator robot are each mounted on the structure in an inverted orientation over the collection area.
14. The conveyor system according to claim 1, characterized in that the placement conveyor comprises multiple conveyors.
15. The conveyor system according to claim 1, characterized in that it further comprises an upstream conveyor for conveying the bulk flow of packages to the collection area, wherein the upstream conveyor includes a destacker conveyor oriented at a predetermined angle for separating vertically stacked packages within the bulk flow of packages, and wherein the collection area is located below a distal end of the destacker conveyor.
16. The conveyor system according to claim 1, characterized in that the first singulator robot and the second singulator robot are each a six-axis robotic arm.
17. A conveyor system, characterized in that it comprises: a first singulator robot; a second singulator robot; a collection area from which packages from a bulk flow of packages can be picked up and transferred by the first singulator robot or the second singulator robot; a placement conveyor located downstream of the collection area and including a placement area for receiving packages transferred by the first singulator robot or the second singulator robot; and a vision and control subsystem operatively connected to the first singulator robot and the second singulator robot, the vision and control subsystem including a first camera for acquiring one or more images of the collection area and any packages located in the collection area,and a controller including a processor for executing instructions stored in a memory component to (i) receive and process image data corresponding to an initial image of the collection area acquired by the first camera, (ii) determine whether multiple packets from the bulk stream of packets placed in the collection area are separated from each other by a predetermined distance based on the image data corresponding to the initial image of the collection area, (iii) selectively communicate instructions causing the first camera to acquire an additional image of the collection area based on the determined spacing > s N c NNC ü 71 σ of the multiple packets,and (iv) selectively communicating instructions to the first singulator robot and the second singulator robot causing the first singulator robot and the second singulator robot to engage and successively transfer packages from the bulk flow of packages placed in the pickup area of the placement conveyor.
18. The conveyor system according to claim 17, characterized in that the memory component further includes instructions that, when executed by the processor, cause the controller (v) to select one of the first singulator robot and the second singulator robot based on a priority queue including one or more inputs that assign priority to the first singulator robot or the second singulator robot and the availability of the first singulator robot and the second singulator robot and (vi) to select one of the packages from the bulk flow of packages placed in the collection area for the first singulator robot or the second singulator robot to engage and transfer based on the proximity of the packages from the bulk flow of packages placed in the collection area to the selected package of the first singulator robot and the second singulator robot.
19. A conveyor system, characterized in that it comprises: a first singulator robot; a second singulator robot; a sorting conveyor for transporting a bulk flow of packages and including a collection area from which packages from the bulk flow of packages can be picked up and transferred by the first singulator robot or the second singulator robot; a placement conveyor located downstream of the sorting conveyor and including a placement area for receiving packages transferred by the first singulator robot or the second singulator robot; and a vision and control subsystem operatively connected to the first singulator robot, the second singulator robot, and the sorting conveyor.the vision and control subsystem comprising a first camera for acquiring one or more images of the picking area of the sorting conveyor and any packages located in the picking area, and a controller comprising a processor for executing instructions stored in a memory component to (i) receive and process image data corresponding to an initial image of the picking area of the sorting conveyor acquired by the first camera, (ii) selectively communicate instructions to the first singulator robot and the second singulator robot causing the first singulator robot and the second singulator robot to engage and successively transfer packages from the bulk package flow placed in the picking area of the sorting conveyor to the placement area of the placement conveyor,(iii) selectively indexing the selection conveyor a predetermined distance to move a package from the bulk package flow to the selection conveyor's collection area immediately after the removal of another package from the bulk package flow from the selection conveyor's collection area.