Method and system for mapping carton locations
By assigning unique identifiers to cartons and generating 3D diagrams, the problems of cumbersome carton location recording and unstable load in the logistics system are solved, and higher position accuracy and handling efficiency are achieved.
Patent Information
- Application Number
- CN202080024332.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-03-26
- Filing Date
- 2020-03-26
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2040-03-26
AI Technical Summary
In existing logistics systems, the location records of cartons in hybrid pallets and containers are cumbersome, load unstable, lost and/or damaged, and autonomous or semi-autonomous carton handling systems have challenges in the palletization and depalletization process.
Accurate positioning and traceability of carton positions is achieved by assigning unique identifiers to each carton, determining its physical characteristics, and generating a 3D diagram of the pallet or container based on these characteristics and locations.
Improves the accuracy and traceability of carton position records, enhances load stability, reduces the risk of cargo loss and damage, and simplifies autonomous or semi-autonomous carton handling process.
Smart Images

Figure CN113632116B_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This patent application claims the benefit of U.S. Patent Application No. 16 / 365,215, filed on March 26, 2019, which is incorporated herein by reference for all purposes. Technical Field
[0003] The present disclosure relates to mapping the positions of cartons in pallets and containers, and more particularly, to generating 3D maps of pallets and containers based on determined identification and location positions of cartons in pallets and containers. Background Art
[0004] Pallets and containers are widely used in logistics operations in many industries. For example, in the retail supply chain, goods to be sold in stores and on the Internet are packed into cartons, which are then palletized onto pallets and loaded onto containers. Pallets and containers are then transported from the production site to intermediate locations such as ports, rail and freight terminals, and supply and distribution centers. During transportation between different locations in the logistics supply chain, pallets and containers may be transferred from one facility to another or from one vehicle to another. In the case of sales over the Internet, the final destination may be the consumer's home or place of business. In the case of a retail store as the final destination of the cartons, the cartons are unloaded from the pallet or unloaded from the container in order to display the goods for sale to the consumer.
[0005] For mixed pallets and containers - that is, for pallets and containers with non-homogeneous loads, including cartons of different shapes, sizes, orientations, weights, and cargo - haphazard placement of cartons, cumbersome record keeping, unstable loads, lost and / or damaged cargo, and other inefficiencies are common problems in currently known logistics systems and methods. In at least some known systems and methods, the above inefficiencies may be exacerbated over time as some cartons are removed and new cartons are loaded at different transportation points. At various steps in the logistics supply chain, it has been challenging to implement autonomous or semi-autonomous (including robot-based) carton handling systems and methods in the palletizing and depalletizing of pallets and the loading and unloading of containers. The problems in known systems and methods are at least partially due to the amount of information that needs to be obtained, tracked, traced, and effectively processed and the number of transfer steps in the supply chain. Therefore, there is a need for improved pallet- and container-based logistics supply chain methods and systems to provide accurate, traceable, and traceable information about the location, contents, identification, and other attributes of pallets, containers, and cartons present thereon. Summary of the invention
[0006] One aspect of the present disclosure is a method for mapping carton locations during construction and depalletizing of a pallet with cartons or loading and unloading of a container with cartons. For a first carton, the method includes: (i) assigning a first identifier to the first carton, the first carton being received to be positioned in: a pallet space of a pallet, or a container space of a container; (ii) determining one or more physical characteristics of the first carton; (iii) associating the one or more physical characteristics of the first carton with the first identifier; (iv) determining a location of the first carton in the pallet space or the container space; and (v) generating a three-dimensional (3D) map of the pallet space or the container space based on the determined one or more physical characteristics of the first carton and the determined location of the first carton in the pallet space or the container space.
[0007] Another aspect of the present disclosure is a system for mapping carton locations. The system includes one or more memory devices, and one or more processors in communication with the one or more memory devices. For a first carton, the one or more processors are programmed to: (i) assign a first identifier to the first carton, the first carton being received to be positioned in: a pallet space of a pallet, or a container space of a container; (ii) determine one or more physical characteristics of the first carton; (iii) associate one or more physical characteristics of the first carton with the first identifier; (iv) determine a location of the first carton in the pallet space or the container space; and (v) generate a three-dimensional (3D) map of the pallet space or the container space based on the determined one or more physical characteristics of the first carton and the determined location of the first carton in the pallet space or the container space.
[0008] Another aspect of the present disclosure is a non-transitory computer-readable storage medium storing processor-executable instructions for mapping carton locations. When executed by one or more processors, the processor-executable instructions cause the one or more processors to, for a first carton: (i) assign a first identifier to the first carton, the first carton being received to be positioned in: a pallet space of a pallet, or a container space of a container; (ii) determine one or more physical characteristics of the first carton; (iii) associate the one or more physical characteristics of the first carton with the first identifier; (iv) determine a location of the first carton in the pallet space or the container space; and (v) generate a 3D map of the pallet space or the container space based on the determined one or more physical characteristics of the first carton and the determined location of the first carton in the pallet space or the container space.
[0009] From the following detailed description and the accompanying drawings, additional and alternative aspects and features of the disclosed principles will be understood. It should be understood that the principles disclosed herein related to the system, method and software for mapping carton positions can be implemented in other different embodiments and can be modified in various aspects. Therefore, it should be understood that the above general description and the following detailed description are only exemplary and illustrative and do not limit the scope of the appended claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Figure 1 is a block diagram of a system for mapping locations of cartons in a pallet or container according to an embodiment of the present disclosure.
[0011] Figure 2 is a flow chart of a method for mapping locations of cartons in a pallet or container according to an embodiment of the present disclosure.
[0012] Figure 3A is a perspective view of a pallet during palletizing according to an embodiment of the present disclosure.
[0013] Figure 3B is a stereogram of the carton with a specified coordinate frame and local origin.
[0014] Figure 4 is a block diagram of a data structure according to an embodiment of the present disclosure, which data structure can be used Figure 1 systems and Figure 2 method.
[0015] Figure 5 is a perspective view of pallets that have been stacked according to an embodiment of the present disclosure.
[0016] Figure 6 is a perspective view of a loaded container according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0017] Reference will now be made in detail to specific embodiments or features, examples of which are shown in the accompanying drawings. Where possible, corresponding or similar reference numerals will be used in all drawings to refer to the same or corresponding parts. In addition, when there may be more than one element of the same type, the various elements described herein may be referenced together or individually. However, such references are merely exemplary in nature. It may be noted that, unless expressly set forth in the appended claims, any reference to an element in the singular may also be interpreted as relating to the plural form, and vice versa, without limiting the scope of the present disclosure to the exact number or type of such element.
[0018] Figure 1 is a block diagram of a system 6 for mapping the position of cartons 3 in a pallet 1 or container 90 according to the present disclosure, Figure 2Flowchart of method 2 for mapping the position of cartons 3 in pallets 1 or containers 90. As used herein, "carton" refers to any physical object suitable for storage, transportation, accommodation, shipping and / or display in or on a pallet or container. Such physical objects can take many forms in terms of shape, dimensions, materials, weight, quantity and / or value (monetary or other). Such physical objects can be solid, hollow, symmetrical in shape and / or mass distribution, or can be asymmetrical in these aspects. Such physical objects can enclose or contain other objects or materials (e.g., a cardboard box containing one or more articles), including isolating such articles from external space in order to protect such articles from external elements, and / or facilitate handling.
[0019] exist Figure 2 In the illustrated embodiment, the example method 2 is at least partially implemented and executed by a system 6. The system 6 includes a computing device 4. The computing device 4 includes hardware and software components that are operably coupled to each other in communication. The computing device 4 is also operably coupled to a power source ( Figure 1 4). As used herein, the term "operably communicatively coupled" means that two or more hardware components of the disclosed system (e.g., system 6) are capable of sending and / or receiving electrical and / or optical signals 27 to each other. Such sending and / or receiving includes using wired, wireless, or both types of data connections and / or data communication protocols. Such sending and / or receiving also includes sending and / or receiving electrical and / or optical signals 27 over very short distances (e.g., within the range of computing device 4) and / or over distances that span continents (e.g., sending and / or receiving data via the Internet or via satellite).
[0020] The computing system 4 includes one or more processors 18 operatively coupled to one or more memory devices 17 in communication. The memory devices 17 include a non-transitory computer-readable storage medium 19 storing instructions executable by the processors 18 for mapping the positions of cartons 3 during palletizing of a pallet 1 with cartons 3 or loading of a container 90 with cartons 3. When the program instructions are executed by the one or more processors 18, the program instructions cause the one or more processors 18 to perform the disclosed method (e.g., method 2) for mapping the positions of cartons 3 in a pallet 1 or a container 90, including by using the disclosed system (e.g., system 6). The processor 18 executable instructions are encoded as software 16 and stored in the non-transitory computer-readable storage medium 19.
[0021] Memory device(s) 17 include one or more data structures 21. Data structures 21 in memory device(s) 17 store data received directly or indirectly from processor 18. Data received and stored in data structures 21 include data input from user 7 of system 6. Data from user 7 is input directly into computing device 4 via user interface 14. Data from user 7 is input into client device(s) 23 communicatively coupled to computing device 4 via communication interface 24.
[0022] System 6 includes one or more sensors 8. The data stored in data structure 21 may include data received from the one or more sensors 8. Sensor 8 is located in computing device 4, or is located outside computing device 4 or remote from computing device 4, or both. In one example, sensor 8 is located in facility 25 defined by facility space 26. Sensor 8 is positioned in facility 25 as a fixed or mobile sensor 8, or both. Sensor 8 is located in facility 25, near one or more loading areas 29 of pallet 1 or container 90. In one example, (multiple) sensor 8 moves relative to (multiple) fixed pallet 1 (or (multiple) container 90). In another example, (multiple) pallet 1 (or (multiple) container 90) moves relative to (multiple) fixed sensor 8. Facility 25 includes warehouse, receiving and / or distribution center or other internal and external facilities for logistics operations. In another example, sensor 8 is located in or on a transport vehicle defined by a transport vehicle space. Examples of transport vehicles are tractor trailers or other trucks, trucks, container ships, freight trains, cargo planes or other aircraft, space travel ships (such as space shuttles), etc.
[0023] The system includes one or more servers 11 located in a facility 25 or in or on a transport. In one example, the sensor 8 is communicatively coupled to the server 11, and the server 11 is communicatively coupled to the communication interface 24 of the computing device 4. In these examples, data from the sensor 8 is received by the communication interface 24 via the server 11. In another example, the computing device 4 is included in the server 11. In other examples, at least some of the system 6 is distributed between one or more computing devices 4, one or more sensors 8, and / or one or more servers 11. Therefore, the system 6 is a networked system 6 based on a distributed computing, communication, and / or sensing architecture.
[0024] Figure 3A is a perspective view of a pallet 1 during palletizing according to an embodiment of the present disclosure. Figure 3B It is a stereoscopic view of the carton 3 with a specified coordinate frame 53 and a local origin 51. Figure 4 The embodiment of the present disclosure is used according to Figure 1 systems and Figure 2A block diagram of a data structure (e.g., data structure 21) of the method. Figure 5 is a perspective view of a pallet 85 that has been stacked according to an embodiment of the present disclosure, Figure 6 is a perspective view of a loaded container 97. Now refer to Figure 1-6 , method 2 is used to map the position of cartons 3 during palletizing cartons 3 onto a pallet 1 (or loading a container 90 with cartons 3). Method 2 includes, for a first carton (e.g., first carton 10), assigning 41 a first identifier to the first carton 10, which is received to be positioned in: a pallet space 5 of a pallet 1, or a container space 96 of a container 90. Method 2 includes determining 42 one or more physical characteristics of the first carton 10.
[0025] The method 2 includes associating 44 one or more physical characteristics of the first carton 10 with a first identifier (e.g., a first carton 10 identifier). The method 2 includes determining 46 a location of the first carton 10 in the pallet space 5 or the container space 96. The method 2 includes generating 47 a three-dimensional (3D) map of the pallet space 5 or the container space 96 based on the determined 42 one or more physical characteristics of the first carton 10 and the determined 46 location of the first carton 10 in the pallet space 5 or the container space 96.
[0026] In one embodiment, method 2 includes, for at least a second carton (e.g., second carton 20), assigning at least a second identifier to the second carton 20 received to be positioned in the pallet space 5 or the container space 96. In this embodiment, method 2 includes determining one or more physical characteristics of the second carton 20 and associating the one or more physical characteristics of the second carton 20 with the second identifier. In this embodiment, method 2 includes determining the positioning position of the second carton 20 in the pallet space 5 or the container space 96. In one example, generating 47 the 3D map includes generating a 3D map of the pallet space 5 or the container space 96 based on: the determined one or more physical characteristics of the (multiple) second carton 20, the determined 46 positioning position of the first carton 10, and the determined positioning position of the (multiple) second carton 20. The three steps of method 2 of determining the positioning position of the (multiple) second carton 20 and / or generating 47 the 3D map based on the positioning position of the first carton 10 and at least the second carton 20 may include determining whether the carton is positioned in the pallet space 5 or the container space 96 in an interlocking configuration.
[0027] The one or more physical characteristics of the first carton 10 and / or the second carton 20 may include one or more of the following: (multiple) identifications, (multiple) dimensions, (multiple) weights, and (multiple) robotic manipulation capability attributes of the corresponding carton (e.g., the first carton 10 and / or at least the second carton 20). In one example, the method 2 step of determining 42 the (multiple) physical characteristics of the first carton 10 and / or the method 2 step of determining the (multiple) physical characteristics of the second carton 20 includes capturing at least one image of at least a portion of the corresponding carton (10 and / or 20) by the (multiple) sensor 8. In another example, the method 2 step of determining 42 the (multiple) physical characteristics of the first carton 10 and / or the method 2 step of determining the (multiple) physical characteristics of the second carton 20 includes analyzing (b) at least one image to extract one or more physical characteristics of the corresponding carton 10 and / or 20. In yet another example, the method 2 step of determining 42 the physical characteristics of the first carton 10 and / or determining the physical characteristics of the second carton 20 includes receiving (c) a signal 27 encoding data including one or more physical characteristics of the corresponding carton (10 and / or 20) from a transmitter device 40 located in or on the corresponding carton (10 and / or 20). In yet another example, the method 2 step of determining 42 the physical characteristics (multiple) of the first carton 10 and / or determining the physical characteristics (multiple) of the second carton (20) includes decoding (d) the signal 27 received from the transmitter device 40 to extract the one or more physical characteristics of the corresponding carton (10 and / or 20). In another example, the method 2 step of determining 42 the physical characteristics (multiple) of the first carton 10 and / or determining the physical characteristics (multiple) of the second carton (20) includes receiving (e) a signal 27 encoding data including one or more physical characteristics of the corresponding carton 10 and / or 20 from a commissioning system 88. In yet another example, the method 2 step of determining 42 the physical characteristics of the first carton 10 and / or determining the physical characteristics of the second carton 20 includes decoding (f) the signal 27 received from the commissioning system 88 to extract one or more physical characteristics of the corresponding carton (10 and / or 20). In yet another example, the method 2 step of determining 42 the physical characteristics of the first carton 10 and / or determining the physical characteristics of the second carton 20 includes any combination of the aforementioned processes (a, b, c, d, e, and / or f).
[0028] In one example, the sensor 8 includes at least one camera or other imaging device. In this example, the method 2 step of determining 42 the physical characteristics of the first carton 10 and / or determining the physical characteristics of the second carton 20 includes capturing an image of at least a portion of the corresponding carton (e.g., 10 and / or 20) by the imaging sensor 8. At least a portion of the corresponding carton (10 and / or 20) includes identification information 50 about the corresponding carton (10 and / or 20). The identification information 50 is provided in any suitable form, such as a barcode, QR code, etc., and the (multiple) processors 18 and / or the imaging sensor 8 interpret it as the identification information 50 of the carton (10 and / or 20) and other information about the contents of the carton, such as origin or source, shelf life, nature of the goods, number of cartons in a batch, fragility of the contents, and other information that can be retrieved by a local or remote database, each of which can further constitute (multiple) physical attributes.
[0029] In one embodiment, the method 2 step of determining 42 the physical characteristics of the first carton 10 (multiple) and / or determining the physical characteristics of the second carton (multiple) 20 (multiple) includes analyzing the captured image (multiple) to extract the identification of the corresponding carton (10 and / or 20). Alternatively, or in addition, the sensor 8 may include other types of sensors, such as RFID readers or detectors, for detecting RFID tags carried on or in the carton (multiple) (10 and / or 20) or products stored in the carton (10 and / or 20). In one example, the method 2 step of associating 44 the physical characteristics of the first carton 10 with the first carton 10 identifier and / or associating the physical characteristics of the second carton (multiple) 20 includes associating the extracted identification with the corresponding carton (10 and / or 20) and / or its contents (e.g., with at least a second identifier of at least the second carton 20).
[0030] In one embodiment, the method 2 step of associating 44 the physical characteristics of the first carton 10 with the first carton 10 identifier and / or associating the second identifier and / or physical characteristics of the second carton 20 includes associating at least one of the extracted identification, extracted one or more dimensions, extracted weight, and extracted robotic manipulation capability attributes of the corresponding carton with the corresponding identifier of the first and at least second identifier. In one embodiment, the method 2 step of generating 47 the 3D map also includes generating a 3D map of the pallet space 5 or container space 96 further based on at least one of the extracted identification, extracted one or more dimensions, extracted weight, and extracted robotic manipulation capability attributes of the corresponding carton (e.g., 10 and / or 20). In one embodiment, method 2 also includes determining whether the corresponding carton (e.g., 10 and / or 20) is capable of robotic manipulation without human intervention.
[0031] In one embodiment, method 2 includes determining an available footprint area 70 of a floor 60 of a pallet 1 or container 90. In this embodiment, method 2 includes determining a volume available for positioning a first carton 10 and at least a second carton 20 in a pallet space 5 or a container space 96, respectively. In this embodiment, method 2 includes assigning a global coordinate system 12 ("pc") to the pallet space 5 or the container space 96. In one example, the global coordinate system 12 is assigned based on at least the determined available footprint area 70 and the available volume. The global coordinate system 12 has a global origin 15 that is defined or at least approximated as a global point on the floor 60, where the global point is defined as x pc =0,y pc =0 and z pc = 0. In this embodiment, method 2 comprises associating the allocated global coordinate system 12 with the pallet 1 or container 90 .
[0032] refer to Figure 3B , determining 46 the location of a first carton 10 in a pallet space 5 or a container space 96 and / or determining the location of at least a second carton 20 includes assigning a coordinate frame 53 ("f") to the corresponding carton (e.g., 10 and / or 20). In one example, the coordinate frame 53 has a local origin 51 that is defined or at least approximated as a frame point on or near an outer surface 45 of the corresponding carton (e.g., 10 and / or 20), wherein the frame point is defined as x f =0,y f =0 and z f = 0. In this case, method 2 may include determining the effective volume 75 of the corresponding carton (e.g., 10 and / or 20) relative to at least one assigned coordinate frame 53 ("f"). In such an embodiment, method 2 may also include determining the frame coordinates of the local origin 51 of the corresponding carton (10 and / or 20) in the assigned global coordinate system 12 of the pallet space 5 or container space 96 for the corresponding positioned carton (e.g., 10 and / or 20).
[0033] In this embodiment, the method 2 step of generating 47 the 3D map may further include associating the determined effective volume 75 and the determined local origin 51 of the corresponding carton (10 and / or 20) with the unavailable partial volume of the pallet space 5 or the container space 96. In this case, the unavailable partial volume in the pallet space 5 or the container space 96 may correspond to the location position of the corresponding carton (10 and / or 20) in the pallet space 5 or the container space 96. In these embodiments, the method 2 may also include the step of determining an available position of a subsequent carton 3 (e.g., a third carton 30) in the pallet space 5 or the container space 96 based on the unavailable partial volume of the pallet space 5 or the container space 96.
[0034] In one embodiment, the method 2 step of generating 47 a 3D map of a pallet space 5 or a container space 96 includes first mapping a first carton 10 to a first position in the pallet space 5 or the container space 96. In one example, the first carton 10 is first mapped to the first position based on at least one of an associated extracted identification, an associated extracted one or more dimensions, an associated extracted weight, and an associated extracted robot manipulation capability attribute of the first carton 10. In this embodiment, the method 2 may also include second mapping at least a second carton 20 to a second position in the pallet space 5 or the container space 96. In the method 2, the second carton 20 may be second mapped to the second position only, or in addition to mapping the first carton 10 to the first position, the second carton 20 may be second mapped to the second position. In one example, the second mapping of the second carton 20 to the second position is based on at least one of the following: an associated extracted identification, an associated extracted one or more dimensions, an associated extracted weight, and an associated extracted robot manipulation capability attribute of at least the second carton 20. In this embodiment, method 2 may also include at least one of the following steps: updating the generated 47 3D map of the pallet space 5 or container space 96 for a subsequent carton (e.g., the third carton 30) located at a subsequent position in the pallet space 5 or container space 96 based on the associated extracted identification, the associated extracted one or more dimensions, the associated extracted weight, and the associated extracted robotic manipulation capability attributes of the subsequent carton.
[0035] In one embodiment, method 2 further includes assigning an identifier to the pallet 1 or container 90 and associating the generated 47 3D map with the identifier of the palletized pallet 85 or loaded container 97. In this embodiment, method 2 may further include determining an unloading protocol for the palletized pallet 85 or loaded container 97. In one example, the method 2 step of associating the generated 47 3D map with the palletized pallet 85 or loaded container 97 includes storing the generated 47 3D map in the memory device 17 in association with the determined unloading protocol for the palletized pallet 85 or loaded container 97. In this embodiment, method 2 may further include sending the generated 47 3D map of the pallet space 5 or container space 96 to a receiving facility for the palletized pallet 85 or loaded container 97.
[0036] In this embodiment, method 2 may include determining a loading protocol for a plurality of pallets 85 or a plurality of loaded containers 97 placed on a freight mode. Freight modes include one or more of a truck, a van, a tractor-trailer, a freight train, an airplane, a spacecraft, a tugboat, a barge, and a container ship. In one example, the method 2 step of associating the generated 47 3D maps with the pallets 85 or loaded containers 97 may include associating each of the generated 47 plurality of 3D maps with each of the plurality of pallets 85 or loaded containers 97. In this example, method 2 may also include storing the generated 47 plurality of 3D maps of each of the plurality of pallet spaces 5 or container spaces 96 of each of the plurality of pallets 85 or loaded containers 97 in association with the determined loading protocol for the plurality of pallets 85 or loaded containers 97 in the memory device 17. In this embodiment, the method 2 may further comprise the step of sending the generated 47 3D map of each of the plurality of pallet spaces 5 or container spaces 96 to the freight model.
[0037] To further illustrate the above embodiments, Figure 1-6 Give and discuss the following use cases.
[0038] Example 1
[0039] refer to Figure 1-6 In a first use case, a pallet 1 (or container 90) is palletized in a loading area 29 of a facility 25. A sensor 8 is in a line of sight 9 with a first carton 10 to be positioned on the pallet 1 (or container 90). The sensor 8 includes a camera or other imaging device or computer vision device that captures one or more images or obtains other information of at least a portion of the first carton 10 including identification information 50. Figure 3A As shown, the identification information 50 is text (the word "BOX") printed or otherwise presented (e.g., a label) on the outer surface 45 of the first carton 10. Before or after positioning the first carton 10 on the pallet 1 (or container 90), the sensor 8 captures one or more images of the word "BOX" and sends the image data to the processor 18. The processor 18 analyzes the captured image including the identification information 50 using a text recognition algorithm for processing images. Figure 3AThe example shown shows the English word "BOX". The processor 18 can be programmed to use a text recognition algorithm to perform image processing on images containing words in languages other than English. The processor 18 analyzes the captured image to extract the identification of the first carton 10. In order to analyze the captured image to extract the identification of the first carton 10, the processor 18 runs program instructions stored as software 16 in the identification determination module 62. When the identification of the first carton 10 is extracted as "BOX", the processor 18 associates 44 the extracted identification along with the physical characteristics determined 42 in addition to the identifier of the first carton 10, and sends the identification and physical characteristics of the first carton 10 to the data structure 21 to be stored in the memory device 17 as ID1 of the first carton 10.
[0040] The sensor 8 includes a barcode reader that scans a barcode 80 printed or otherwise presented (e.g., as a label) on at least a portion of the outer surface 45 of the second carton 20. The barcode 80 includes identification information 50 for and about the second carton 20. Before or after the second carton 20 is positioned on the pallet 1 (or container 90), the sensor 8 scans the barcode 80 and sends the data encoded thereby to the processor 18. The processor 18 analyzes the barcode 80 data including the identification information 50 using a barcode 80 decoding algorithm. The processor 18 analyzes the scanned barcode 80 to extract the identification of the second carton 20. To analyze the scanned barcode 80 to extract the identification of the second carton 20, the processor 18 runs program instructions stored in the identification determination module 62 as software 16. When the identification of the second carton 20 is extracted as "CAN", the processor 18 associates the extracted identification together with the additional determined physical characteristics with the second carton 20, and sends the identification and physical characteristics of the second carton 20 to the data structure 21 to be stored in the memory device 17 as ID2 of the second carton 20.
[0041] The sensor 8 includes a QR code reader that scans a QR (Quick Response) code 92 that is printed or otherwise presented (e.g., as a label) on at least a portion of the outer surface 45 of the third carton 30. The QR code 92 includes identification information 50 for and about the third carton 30. Before or after the third carton 30 is positioned on the pallet 1 (or container 90), the sensor 8 scans the QR code 92 and sends the data encoded thereby to the processor 18. The processor 18 analyzes the QR code 92 data including the identification information 50 using a QR code 92 decoding algorithm. The processor 18 analyzes the scanned QR code 92 to extract the identification of the third carton 30. In order to analyze the scanned QR code 92 to extract the identification of the third carton 30, the processor 18 runs program instructions stored in the identification determination module 62 as software 16. When the identification of the third carton 30 is extracted as a chair, the processor 18 associates the extracted identification together with the additional determined (multiple) physical characteristics with the third carton 30, and sends the identification and (multiple) physical characteristics of the third carton 30 to the data structure 21 to be stored in the memory device 17 as ID3 of the second carton 20.
[0042] For situations where the QR code 92 is obscured and not in the line of sight 9 of the sensor 8, or where the QR code 92 is erased or unreadable, the camera or other imaging sensor 8 captures one or more images of at least a portion of the third carton 30 including identification information 50. The identification information 50 is in the form of an image, such as a photograph, graphic artwork, etc., printed or otherwise presented (e.g., as a label) on the outer surface 45 of the third carton 30. Figure 3A As shown, the identification information 50 is a picture of a chair. Before or after the third carton 30 is positioned on the pallet 1 (or container 90), the sensor 8 captures one or more images of the chair picture and sends the image data to the processor 18. The processor 18 analyzes the captured (multiple) images including the identification information 50 using an image recognition algorithm for processing images. The processor 18 analyzes the captured (multiple) images to extract the identification of the third carton 30. For analyzing the captured (multiple) images to extract the identification of the third carton 30, the processor 18 runs program instructions stored in the identification determination module 62 as software 16. When the identification of the third carton 30 is extracted as a chair, the processor 18 associates the extracted identification with the third carton 30 together with the additionally determined (multiple) physical characteristics, and sends the identification and physical characteristics of the third carton 30 to the data structure 21 to be stored in the memory device 17 as ID3 of the third carton 30.
[0043] In one example, the sensor(s) 8 include at least one receiver, including but not limited to an antenna, for receiving signals from a transmitter device 40 located within or on an outer surface 45 of the corresponding carton (10 and / or 20). In this example, method 2 includes receiving (e.g., by the processor 18 via the sensor(s) 8) one or more signals encoding identification information 50 and physical characteristics of the corresponding carton (10 and / or 20). In this example, the method 2 step of associating the physical characteristics 50 of the first carton 10 with the first identifier 44 and / or associating the physical characteristics 50 of the second carton (multiple) 20 with the second identifier includes decoding the received signal to extract the identification and physical characteristics of the corresponding carton (10 and / or 20). In this example, the method 2 step of associating the physical characteristics 50 of the first carton 10 with the first identifier 44 and / or associating the physical characteristics 50 of the second carton (multiple) 20 with the second identifier includes associating the extracted identification with the corresponding carton (10 and / or 20). Based on this example, the following reference is made to Figure 1-6 Let's discuss the second use case.
[0044] Example 2
[0045] refer to Figure 1-6 In a second use case, a pallet 1 (or container 90) is palletized in a loading area 29 of a facility 25. A sensor 8 is in a line of sight 9 with a first carton 10 to be positioned on the pallet 1 (or container 90). The sensor 8 includes a receiver that receives a signal from a transmitter device 40 located inside the first carton 10 or on an outer surface 45 thereof. The transmitter device 40 transmits an RFID (radio frequency identification) signal that encodes identification information 50 for and about the first carton 10. Before or after the first carton 10 is positioned on the pallet 1 (or container 90), the sensor 8 receives the RFID signal from the transmitter device 40 and sends the RFID data to the processor 18. The processor 18 uses an RFID signal decoding algorithm to analyze the received RFID data including the identification information 50. The processor 18 analyzes the received RFID data to extract the identity of the first carton 10. For analyzing the received RFID data to extract the identity of the first carton 10, the processor 18 runs program instructions stored as software 16 in the identity determination module 62. When the identification of the first carton 10 is extracted as a box, the processor 18 associates 44 the extracted identification (multiple) physical characteristics with the identification of the first carton 10, and sends the identification and physical characteristics of the first carton 10 to the data structure 21 to be stored in the memory device 17 as ID1 of the first carton 10.
[0046] In one example, the computing device 4 and / or the server 11 are operably coupled to the debugging system 88 in communication. In this example, the method 2 step of determining 42 the physical characteristics of the first carton 10 and / or determining the physical characteristics of the second carton 20 includes receiving information about the corresponding carton (10 and / or 20) from the debugging system 88. The information about the corresponding carton 3 is sent by the debugging system 88 and received by the user 7, the client device 23, the server 11 and / or the processor 18 on a carton-by-carton basis and in a sequence corresponding to the order in which the corresponding carton 3 will be positioned on the pallet 1 (or container 90). Alternatively, the information about the corresponding carton 3 can be sent by the debugging system 88 and received by the user 7, the client device 23, the server 11 and / or the processor 18 in batches for all cartons 3 to be positioned on the pallet 1 (or container 90). The batch data set can be sorted in order according to the order in which the corresponding cartons 3 will be positioned on the pallet 1 (or container 90). In this example, the method 2 step of determining 42 the physical characteristics of the first carton 10 (multiple) and / or determining the physical characteristics of the second carton (multiple) 20 includes determining the identification and physical characteristics of the corresponding carton (10 and / or 20) based at least in part on information received from the commissioning system 88. Based on this example, the following reference Figure 1-6 Let's discuss the third use case.
[0047] Example 3
[0048] refer to Figure 1-6In a third use case, a pallet 1 (or container 90) is palletized in a loading area 29 of a facility 25. An operator in the facility 25 communicates with a commissioning system 88. The operator is a user 7 of the system 6. In this case, the user 7 includes a human or an autonomous or semi-autonomous robot and / or an artificial intelligence system. The user 7 receives information about a first carton 10 from the commissioning system 88. In the case of a human user 7, the commissioning system 88 sends the first carton 10 information to the client device 23. In the case of a robotic system user 7, the commissioning system 88 sends the first carton 10 information to the robotic system directly or indirectly (e.g., via a server 11, a client device 23, and / or a communication interface 24). The first carton 10 information received from the commissioning system 88 includes identification information 50 and physical characteristics about the first carton 10. The first carton 10 information received from the commissioning system 88 includes a time / date stamp of when the user 7 in the facility 25 received the first carton 10 information. When the first carton 10 information is received from the debugging system 88, the user 7 sends the first carton 10 information to the processor 18 through the communication interface 24. The processor 18 assigns 41 a first identifier to the first carton 10. Before or after the first carton 10 is positioned on the pallet 1 (or container 90), the processor 18 directly receives the first carton 10 information (e.g., directly from the debugging system 88 to the processor 18) or indirectly receives the first carton 10 information (e.g., first from the debugging system 88 to the client device 23 and / or the server 11, and then to the processor 18), and then performs any necessary analysis on the received first carton 10 information and (multiple) physical characteristics. For example, the first carton 10 information including the identification information 50 and (multiple) physical characteristics received from the debugging system 88 is encoded, and the processor 18 decodes the received first carton 10 information using an RFID signal decoding algorithm. The processor 18 analyzes the first carton 10 information received from the commissioning system 88, including the identification information 50 and the physical characteristics, to extract the identification and physical characteristics of the first carton 10. To analyze the received data to extract the identification of the first carton 10 and / or determine 42 the identification and physical characteristics of the first carton 10 based at least in part on the first carton 10 information received from the commissioning system 88, the processor 18 executes program instructions stored as software 16 in the identification determination module 62. Once the identification and physical characteristics of the first carton 10 are extracted as boxes, the processor 18 associates 44 the extracted identification data with the first carton 10 identifier and sends the identification and physical characteristics of the first carton 10 to the data structure 21 for storage in the memory device 17 as ID1 of the first carton 10.
[0049] After the user 7 receives information for and about the first carton 10 from the commissioning system 88, the user 7 receives information about the second carton 20 from the commissioning system 88. The second carton 20 information received from the commissioning system 88 includes identification information 50 and physical characteristics (multiple) about the second carton 20. The second carton 20 information received from the commissioning system 88 includes a time / date stamp of when the second carton 20 information was received by the user 7 in the facility 25. In a third use case, the first carton 10 is located before the second carton 20 on the pallet 1 (or container 90). Therefore, the order in which the information for or about the corresponding cartons (10 and / or 20) is received from the commissioning system 88 corresponds to the order in which the corresponding cartons (e.g., first carton 10, second carton 20, third carton 30, n-1 carton, nth carton) are positioned on the pallet 1 (or container 90). The processor 18 assigns a second identifier to the second carton (multiple) 20. Before or after the second carton 20 is positioned on the pallet 1 (or container 90), the processor 18 receiving the second carton 20 information performs any necessary analysis to extract the identity of the second carton 20 and / or determine the identity of the second carton 20 based at least in part on the first carton 10 information and (multiple) physical characteristics received from the commissioning system 88. To extract the identity of the second carton 20 and / or determine the identity of the second carton 20, the processor 18 runs program instructions stored as software 16 in the identity determination module 62. When the identity of the second carton 20 is extracted as a CAN, the processor 18 associates the extracted identification data with the second carton 20 and sends the identity and (multiple) physical characteristics of the second carton 20 to the data structure 21 to be stored in the memory device 17 as the ID2 of the second carton 20.
[0050] The debugging system 88 continues to send information in the same manner as described above for the first carton 10 and the second carton 20, including identification information 50 for any subsequent cartons to be positioned on the pallet 1 (or container 90). The processor 18 receives the corresponding carton information directly or indirectly from the debugging system 88 and extracts and / or determines the identity of the corresponding carton 3, including performing any required analysis by running program instructions stored in the identity determination module 62 as software 16. The (multiple) processors assign (multiple) subsequent identifiers to the received subsequent cartons. When extracting the identity of the last (nth) carton to be positioned on the pallet 1 (or container 90), the processor 18 associates the extracted identification data and physical characteristics with the nth carton and sends the identity and (multiple) physical characteristics of the nth carton to the data structure 21 as the ID of the nth carton. n Stored in the memory device 17.
[0051] In one example, method 2 includes determining an orientation attribute of at least one of a first carton 10 and at least a second carton 20. The orientation attribute includes whether the position state of the corresponding carton (10 and / or 20) is right side up, sideways, or inverted. Determining the orientation attribute includes determining the orientation of a symbol of identification information 50 of the corresponding carton. Determining the orientation attribute includes receiving information of the orientation attribute from a debugging system 88, and determining the orientation attribute of the corresponding carton (10 and / or 20) based at least in part on the information received from the debugging system 88. Based on this example, the following reference Figure 1-6 Let’s discuss the fourth use case.
[0052] Example 4
[0053] refer to Figure 1-6 In a fourth use case, before or after the second carton 20 is positioned on the pallet 1 (or container 90), a sensor 8 of the camera or other imaging device type captures an image of at least a portion of the second carton 20. The image data is sent to the processor 18. The processor 18 analyzes the captured image to determine the orientation attribute of the second carton 20. In order to determine the orientation attribute of the second carton 20, the processor 18 runs program instructions stored in the attribute determination module 63 as software 16. The processor 18 determines the orientation attribute of the second carton 20 by performing an image processing analysis that is capable of determining the orientation of a symbol of identification information 50 printed or otherwise presented on the outer surface 45 of the second carton 20. As shown in FIG. Figure 3A As shown, the identification information 50 for or about the second carton 20 is the word "CAN". The processor 18 determines that the orientation of the letters in "CAN" is inverted, and therefore determines that the orientation attribute of the second carton 20 is also inverted. When the orientation attribute of the second carton 20 is determined to be inverted, the processor 18 associates the determined orientation attribute data with the second carton 20 and sends the orientation attribute of the second carton 20 to the data structure 21 to be stored in the memory device 17 as the value 2 of the second carton 20.
[0054] In one example, method 2 includes determining the shape attributes of at least one of the first carton 10 and at least the second carton 20. The determined shape attributes include the relative arrangement of the faces of the outer surface 45 of the corresponding carton (10 and / or 20) relative to each other. For example, the corresponding carton (10 and / or 20) has a determined shape attribute, which is one of the following shapes: a square cube shape, a rectangular cube shape, a polyhedron shape, a cylindrical shape, and other three-dimensional shapes. In one example, method 2 includes determining at least one dimensional attribute of at least one of the first carton 10 and at least the second carton 20. For example, for the corresponding carton (10 and / or 20) having a rectangular cube shape, the determined dimensional attributes include the values of the length, width, and height of the corresponding carton (10 and / or 20). For example, for the corresponding carton (10 and / or 20) having a cylindrical shape, the determined dimensional attributes include the values of the height and bottom diameter of the corresponding carton (10 and / or 20). In one example, method 2 includes determining the effective volume 75 of at least one of the first carton 10 and at least the second carton 20. For example, for a corresponding carton (10 and / or 20) having a rectangular cube shape, the determined effective volume 75 is calculated by the processor 18 as the product of determined values of the length, width, and height of the corresponding carton (10 and / or 20). For example, for a corresponding carton (10 and / or 20) having a cylindrical shape, the determined effective volume 75 is calculated by the processor 18 based on approximating the cylindrical carton (10 and / or 20) to a rectangular cube shape, wherein the cylindrical bottom is approximated as a square having a side length equal to the determined bottom diameter. In one example, method 2 includes determining a weight attribute of at least one of the first carton 10 and at least the second carton 20. In one example, determining at least one of the shape attribute, dimensional attribute, effective volume 75, and weight attribute of at least one of the first carton 10 and at least the second carton 20 includes receiving information from a debugging system 88, and determining the corresponding attributes of the corresponding carton (10 and / or 20) based at least in part on the information received from the debugging system 88. Based on these examples, the following reference is made to Figure 1-6 Let’s discuss the fifth use case.
[0055] Example 5
[0056] refer to Figure 1-6In a fifth use case, a pallet 1 (or container 90) is palletized in a loading area 29 of a facility 25. A sensor 8 includes a camera or other imaging device that is in a line of sight 9 with a first carton 10 to be positioned on the pallet 1 (or container 90). The sensor 8 captures an image of at least a portion of the first carton 10 before or after the first carton 10 is positioned on the pallet 1 (or container 90). The image data is sent to a processor 18. The processor 18 analyzes the captured image to determine 42 a shape attribute of the first carton 10. To determine 42 the shape attribute of the first carton 10, the processor 18 executes program instructions stored as software 16 in an attribute determination module 63. Upon determining 42 that the shape attribute of the first carton 10 is a rectangular cube, the processor 18 associates the determined 42 shape attribute data with a first carton 10 identifier and sends the shape attribute of the first carton 10 to a data structure 21 to be stored in a memory device 17 as a value 1 for the first carton 10.
[0057] The sensor 8 includes a 3D scanner that is in a line of sight 9 with the third carton 30 to be positioned on the pallet 1 (or container 90). The sensor 8 scans at least a portion of the third carton 30 before or after the third carton 30 is positioned on the pallet 1 (or container 90). The 3D scanner sensor 8 generates a plurality of pairs of data points for the third carton 30. Each pair of data points generated by the 3D scanner includes a point from the 3D scanner sensor 8 to the outer surface 45 of the third carton 30, and an angle between the 3D scanner sensor 8 and the corresponding point. The 3D scanner data including a plurality of data pairs is sent to the processor 18. The processor 18 analyzes the plurality of data pairs to determine the shape attributes, at least one dimensional attribute (e.g., length, width, height) and / or effective volume 75 attributes of the third carton 30. In order to determine the shape attributes, at least one dimensional attribute (e.g., length, width, height) and / or effective volume 75 attributes of the third carton 30, the processor 18 runs program instructions stored in the attribute determination module 63 as software 16. The shape and dimensional attributes of the third carton 30 are determined as a side length of 140 cm and an effective volume 75 of 2.744×10 3 cm 3 When the determined shape, dimension and effective volume 75 attribute data are associated with the third carton 30, the processor 18 sends the shape, dimension and effective volume 75 attribute data of the third carton 30 to the data structure 21 to be stored in the memory device 17 as the value 3 of the third carton 30.
[0058] The sensor 8 includes a scale for determining the weight of the pallet 1 (or container 90) and its contents (e.g., cartons 3). The scale sensor 8 is located in the loading area 29 of the facility 25 and is calibrated to zero using the pallet 1 (or container 90) to be loaded. The first carton 10, the second carton 20, and the third carton 30 are positioned on the pallet 1 (or container 90), and the scale sensor 8 determines their weight attributes as 120kg, 34kg, and 95kg, respectively. For each of the corresponding cartons 3 from the first carton 10 to the last (nth) carton positioned on the pallet 1 (or container 90), the scale sensor 8 sends a respective weight value or a signal encoding it to the processor 18. In order to determine the weight attribute, the processor 18 runs program instructions stored in the attribute determination module 63 as software 16. When determining the weight attribute of the corresponding carton 3 positioned on the pallet 1 (or container 90), the processor 18 associates the determined weight attribute with the corresponding carton 3 and sends the weight attribute data to the data structure 21 as value 1, ..., value 95kg for the corresponding carton 3. n-1 ,value n Stored in the memory device 17.
[0059] In one example, method 2 includes determining a robotic manipulation capability attribute of at least one of a first carton 10 and at least a second carton 20. In this example, determining the robotic manipulation capability attribute of the corresponding carton (10 and / or 20) includes determining whether the corresponding carton (10 and / or 20) is capable of robotic manipulation without human intervention. In one example, determining the robotic manipulation capability attribute of the corresponding carton (10 and / or 20) and determining whether the corresponding carton (10 and / or 20) is capable of robotic manipulation without human intervention includes receiving information from a debugging system 88, and determining the corresponding attribute of the corresponding carton (10 and / or 20) based at least in part on the information received from the debugging system 88. Based on these examples, reference is made below to Figure 1-6 Discuss the sixth use case.
[0060] Example 6
[0061] refer to Figure 1-6In the sixth use case, the processor 18 determines 42 whether the first carton 10 of the fifth use case is capable of robotic manipulation with (semi-autonomous) or without (autonomous) human intervention (e.g., the robotic manipulation capability attribute of the corresponding carton 3). The weight attribute of the positioned first carton 10 is determined 42 to be 120 kg, and the available robotic system is only used to lift, move, and otherwise manipulate cartons 3 weighing no more than 105 kg. Therefore, based on the determination 42 of the weight attribute of the first carton 10, the processor 18 determines 42 that the first carton 10 is not capable of robotic manipulation with or without human intervention. In order to determine 42 the shape attributes, at least one dimensional attribute (e.g., length, width, height), and / or the effective volume 75 attribute of the third carton 30, the processor 18 runs program instructions stored in the attribute determination module 63 as software 16. When it is determined 42 that the robot manipulation capability attribute of the first carton 10 is incapable with or without human intervention, the processor 18 associates the robot manipulation capability attribute data determined 42 with the first carton 10 identifier and sends the robot manipulation capability attribute data of the first carton 10 to the data structure 21 to be stored in the memory device 17 as value 1 for the first carton 10.
[0062] For the second carton 20, the processor 18 reads the orientation attribute data (e.g., determined in the fourth use case) from the data structure 21 of the second carton 20 (e.g., from value 2). The processor 18 runs program instructions stored in the attribute determination module 63 as software 16, and based on the determined inverted orientation attribute of the second carton 20, determines that the second carton 20 is capable of robotic manipulation, but only through human intervention. In the facility 25, the robotic system requires the carton 3 to have a right-side-up orientation attribute in order to be manipulated. Otherwise, the robotic system requires a human (e.g., a human user 7) to reorient the corresponding carton 3 to a right-side-up orientation before robotic manipulation.
[0063] For the third carton 30, the processor 18 receives image data from a sensor 8 of the type of a camera or other imaging device, which captures an image of a portion of the third carton 30 proximate to the base surface 60 of the pallet 1 (or container 90). Figure 3AAs shown, the third carton 30 includes a carton support located between the third carton 30 and the base surface 60 of the pallet 1 (or container 90). The carton support facilitates lifting, moving, or manipulation by a robotic system in the facility 25. In this case, the carton 3 with the carton support associated therewith can certainly be manipulated by the robotic system without human intervention. Before or after the third carton 30 is positioned on the pallet 1 (or container 90), the sensor 8 captures one or more images of the third carton 30 (including a portion thereof), the portion also showing the carton support of the third carton 30 in the image. The processor 18 uses an image recognition algorithm for processing images to analyze the captured image including the carton support. The processor 18 analyzes the captured image to determine the carton support ( Figure 3A In order to analyze the captured image to determine whether a carton holder for the third carton 30 exists, the processor 18 runs program instructions stored as software 16 in the attribute determination module 63. Based at least in part on determining that a carton holder for the third carton 30 exists in the captured image, the processor 18 determines that the robotic manipulation capability attribute of the third carton 30 is capable of robotic manipulation without human intervention. Upon determining that the robotic manipulation capability attribute of the third carton 30 is capable of robotic manipulation without human intervention, the processor 18 associates the determined robotic manipulation capability attribute with the third carton 30. The processor 18 sends the robotic manipulation capability attribute of the third carton 30 to the data structure 21 to be stored in the memory device 17 as value 3 for the third carton 30.
[0064] In one example, method 2 includes determining an available footprint area 70 of a base surface 60 of a pallet 1 (or container 90). In this example, method 2 includes assigning a global coordinate system (pc) 12 to the pallet space 5 (or container space 96) based at least on the determined available footprint area 70. In this example, the global coordinate system 12 has a global origin 15 that is defined or at least approximated as a point x on the base surface 60 of the pallet 1 (or container 90). pc =0,y pc =0 and z pc = 0. In this example, method 2 includes determining the position of the global origin 15 in the pallet space 5 (or container space 96). In this example, method 2 includes associating the assigned global coordinate system 12 with the pallet 1 (or container 90).
[0065] In this example, at least one of the steps of determining 46 the positioning position of the first carton 10 in the pallet space 5 (or container space 96), and determining the positioning position of at least the second carton 20 in the pallet space 5 (or container space 96) includes assigning at least one point on or near the outer surface 45 of the corresponding carton (10 and / or 20) (e.g., assigning a first point 13 for the first carton 10 and assigning at least a second point 22 for at least the second carton 20). In this case, the first 13 point and the second 22 point are used as local origins 51 in method 2. In this example, at least one of these determination steps includes determining the effective volume 75 of the corresponding carton (10 and / or 20) relative to the allocation point (13 and / or 22). In this example, at least one of these determination steps includes determining, for each positioned carton (10 and / or 20), the coordinates of the allocation point (13 and / or 22) of the corresponding carton (10 and / or 20) in the assigned global coordinate system 12 of the pallet space 5 (or container space 96). The effective volume 75 of the carton (10 and / or 20) is determined with reference to the assigned coordinate frame 53. In this example, the method comprises associating the determined effective volume 75 of at least one allocation point (13 and / or 22) and the corresponding carton (10 and / or 20) with the unusable partial volume of the pallet space 5 (or container space 96).
[0066] In this example, determining 46 the located position of the first carton 10 in the pallet space 5 (or container space 96) includes assigning a point 13 on the outer surface 45 of the first carton 10. In this case, the point 13 is used as the local origin 51 in the method 2. In this example, determining 46 the located position of the first carton 10 in the pallet space 5 (or container space 96) includes determining the effective volume 75 of the first carton 10 relative to its assigned point 13. In this example, determining 46 the located position of the first carton 10 in the pallet space 5 (or container space 96) includes determining the coordinates of the assigned point 13 of the located first carton 1 in the assigned global coordinate system 12 of the pallet space 5 (or container space 96) relative to the global origin 15. In this example, determining 46 the located position of the first carton 10 in the pallet space 5 (or container space 96) includes associating the assigned point 13 of the first carton 10 and the determined effective volume 75 with the first unusable partial volume of the pallet space 5 (or container space 96). In this example, determining 46 the location of the first carton 10 in the pallet space 5 (or container space 96) includes allocating a first unusable partial volume to the generated 47 3D map of the pallet space 5 (or container space 96), wherein the allocated first unusable partial volume corresponds to the location of the first carton 10 in the pallet space 5 (or container space 96). In this example, method 2 includes determining one or more available locations of at least a second carton 20 in the pallet space 5 (or container space 96) based at least in part on the allocated first unusable partial volume of the first carton 10 in the pallet space 5 (or container space 96).
[0067] In this example, determining the located position of at least the second carton 20 in the pallet space 5 (or container space 96) includes allocating a point 22 on the outer surface 45 of the at least second carton 20. In this example, determining the located position of at least the second carton 20 in the pallet space 5 (or container space 96) includes determining the effective volume 75 of the at least second carton 20 relative to its allocation point 22. In this example, determining the located position of at least the second carton 20 in the pallet space 5 (or container space 96) includes determining the coordinates of the allocation point 22 of the located at least second carton 20 in the allocated global coordinate system 12 of the pallet space 5 (or container space 96) relative to the global origin 15. In this example, determining the located position of at least the second carton 20 in the pallet space 5 (or container space 96) includes associating the allocation point 22 and the determined effective volume 75 of at least the second carton 20 with at least a second unusable partial volume of the pallet space 5 (or container space 96). In this example, determining the location of at least the second carton 20 in the pallet space 5 (or container space 96) includes allocating at least a second unavailable volume to the 3D map of the pallet space 5 (or container space 96) generated 47, wherein the allocated at least a second unavailable volume corresponds to the location of the at least second carton 20 in the pallet space 5 (or container space 96). Based on these examples, the following reference Figure 1-6 Discuss the seventh use case.
[0068] Example 7
[0069] refer to Figure 1-6 In a seventh use case, the sensor 8 includes a sensor 8 of the type of a camera or other imaging device that is in a line of sight 9 with the first carton 10. Before or during positioning the first carton 10 on the pallet 1 (or container 90), the sensor 8 captures an image of at least a portion of the outer surface 45 of the first carton 10 and sends the captured image to the processor 18. The processor 18 performs image processing analysis on the image of at least a portion of the outer surface 45 of the first carton 10 to assign a first point 13 thereon, which is used as the local origin 51 in method 2. In the case where the image processing analysis is performed by the processor 18 on the captured image of the first carton 10 during and after positioning the first carton 10 on the pallet 1 (or container 90), for example, when the first carton 10 is being transported to the pallet 1 (or container 90) and / or in the process of being positioned on the pallet 1 (or container 90), the image processing performed by the processor 18 includes tracking the assigned first point 13 until the first carton 10 is positioned on the pallet 1 (or container 90). Figure 3AIn the example shown, the image processing analysis performed by the processor 18 locates an indicia 82 printed or otherwise presented on the outer surface 45 of the first carton 10 that uniquely identifies its location as the first point 13. To assign and / or track the first point 13 of the first carton 10, the processor 18 executes program instructions stored as software 16 in the location determination module 64.
[0070] In the case where the first point 13 is assigned to the first carton 10, the processor 18 determines the effective volume 75 of the first carton 10 relative to the assigned first point 13 (e.g., including but not limited to, using the processing described above with reference to the fifth use case). When determining the effective volume 75 attribute of the first carton 10 relative to the assigned first point 13, the processor 18 associates 44 the determined effective volume 75 attribute data with the first carton 10 identifier and sends the effective volume 75 attribute data of the first carton 10 to the data structure 21 to be stored in the memory device 17 as value 1 for the first carton 10.
[0071] Before, after, or substantially simultaneously with the processor 18 determining the effective volume 75 attribute of the first carton 10 relative to the assigned first point 13, the processor 18 determines the coordinates (e.g., x1, y1, z1) of the assigned first point 13 in the assigned global coordinate system 12 in the pallet space 5 (container space 96). Figure 3A In the example shown, for a pallet 1 having a square base surface 60 with a side length of 2 m, and a first carton 10 located on the pallet 1 and in contact with the base surface 60, the processor 18 determines the coordinates of the first point 13 to be (x pc1 =1.3m,y pc1 =1.4m, z pc1=0m). In order to determine the coordinates of the assigned first point 13 in the assigned global coordinate system 12 in the pallet space 5 (container space 96), the processor 18 runs program instructions stored as software 16 in the position determination module 64. The processor 18 associates the assigned first point 13 and the determined effective volume 75 attribute data of the located first carton 10 with the first unavailable volume of the pallet space 5 (or container space 96). In order to define the first unavailable volume of the first carton 10, in addition to the assigned first point 13, the processor 18 also assigns one or more additional points to the outer surface 45 of the first carton 10. Therefore, for the first carton 10, the determined positioning position of the first carton 10 in the pallet space 5 (or container space 96) is defined by the coordinates of the first point 13 and the determined first unavailable partial volume and one or more additional points assigned to the outer surface 45. The processor 18 assigns the determined first unusable partial volume to the 3D map of the pallet space 5 (or container space 96) generated 47, wherein the assigned first unusable partial volume corresponds to the location of the first carton 10 in the pallet space 5 (or container space 96). The processor 18 sends the determined first point 13 coordinate data of the first carton 10 and the determined first unusable volume to the data structure 21 to be stored as LOC1 of the first carton 10 in the memory device 17.
[0072] Before or during positioning of at least a second carton 20 on the pallet 1 (or container 90), the processor 18 determines one or more available positions for at least the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the allocated first unusable partial volume of the first carton 10 in the pallet space 5 (or container space 96). To determine the one or more available positions for at least the second carton 20 in the pallet space 5 (or container space 96), the processor 18 runs program instructions stored as software 16 in the available position determination module 69.
[0073] Before or during positioning the second carton 20 on the pallet 1 (or container 90), the sensor 8 captures an image of at least a portion of the outer surface 45 of the second carton 20 and sends the captured image to the processor 18. The processor 18 performs image processing analysis on the image of at least a portion of the outer surface 45 of the second carton 20 and determines that its shape attribute is a cylinder. In the image processing algorithm, the processor 18 approximates the bottom surface of the cylinder as a square with a side length equal to the bottom surface diameter determined by the processor 18. Therefore, for the second carton 20, the image processing performed by the processor 18 is based on the cylindrical second carton 20 approximating the rectangular cubic second carton 20, such as Figure 3ATo determine the shape attributes and approximate the base of the cylinder as a square, the processor 18 executes program instructions stored as software 16 in the attribute determination module 63 .
[0074] like Figure 3A and 3B As shown, the processor 18 assigns the second point 22 to a corner of the approximately square bottom surface of the cylindrical second carton 20 as the local origin 51. In the case where the processor 18 performs image processing analysis on the captured image of the second carton 20 during and after the second carton 20 is positioned on the pallet 1 (or container 90), for example, when the second carton 20 is being transported to the pallet 1 (or container 90) and / or is in the process of being positioned on the pallet 1 (or container 90), the image processing performed by the processor 18 includes tracking the assigned second point 22 until the second carton 20 is positioned on the pallet 1 (or container 90). To assign and / or track the second point 22 of the second carton 20, the processor 18 runs program instructions stored in the position determination module 64 as software 16.
[0075] Using the second point 22 assigned to the second carton 20, the processor 18 determines an effective volume 75 of the second carton 20 relative to the assigned second point 22. In this case, the processor 18 determines an effective volume 75 attribute of the second carton 20 that is approximately in the shape of a rectangular cube. When determining the effective volume 75 attribute of the second carton 20 relative to the assigned second point 22, the processor 18 associates the determined effective volume 75 attribute data with the second carton 20 and sends the effective volume 75 attribute data of the second carton 20 to the data structure 21 to be stored in the memory device 17 as a value 2 for the second carton 20.
[0076] Before, after, or substantially simultaneously with the processor 18 determining the effective volume 75 attribute of the second carton 20 relative to the assigned second point 22, the processor 18 determines the coordinates (e.g., x ) of the second point 22 in the assigned global coordinate system 12 in the pallet space 5 (container space 96). pc ,y pc , z pc ).exist Figure 3A In the example shown, for a pallet 1 having a square base 60 with a side length of 2 m, and a second carton 20 located on top of the first carton 10 on the pallet 1, the processor 18 determines the coordinates of the second point 22 to be (x pc =1.4m,y pc =1.5m, z pc=0.1m). In order to determine the coordinates of the assigned second point 22 in the assigned global coordinate system 12 in the pallet space 5 (container space 96), the processor 18 runs program instructions stored as software 16 in the position determination module 64. The processor 18 associates the assigned second point 22 and the determined effective volume 75 attribute data of the located second carton 20 with at least the second unusable partial volume of the pallet space 5 (or container space 96). In this case, the at least second unusable partial volume of the second carton 20 is determined based on the second carton 20 that is approximately in the shape of a rectangular cube. In order to define at least the second unusable partial volume of the second carton 20, in addition to the assigned second point 22, the processor 18 also assigns one or more additional points to the outer surface 45 of the second carton 20 (for example, points 55 and 57, as shown in FIG. 5 ). Figure 3B As shown). Therefore, for the second carton 20, the determined positioning position of the second carton 20 in the pallet space 5 (or container space 96) is defined by the coordinates of the second point 22 and the determined at least second unavailable partial volume and one or more additional points assigned to the outer surface 45. The processor 18 sends the determined second point 22 coordinate data and at least the second unavailable partial volume of the second carton 20 to the data structure 21 to be stored in the memory device 17 as LOC2 of the second carton 20. When assigning corresponding points and determining corresponding unavailable volumes (one or more additional points of which are assigned to the corresponding outer surface 45), the processor 18 associates the assigned points and the determined unavailable volumes with the corresponding carton 3 (for example, the third carton 30, ..., the n-1th carton, the nth carton). The processor 18 sends these data to the data structure 21 as LOC1, ..., LOC n-1 、LOC n Stored in the memory device 17.
[0077] In this example, determining the coordinates of the distribution point 22 for positioning at least the second carton 20 in the assigned global coordinate system 12 of the pallet space 5 (or container space 96) includes determining the coordinates of the distribution point 22 for positioning at least the second carton 20 in the assigned global coordinate system 12 of the pallet space 5 (or container space 96) relative to the global origin 15.
[0078] In this example, determining the coordinates of the distribution point 22 of the at least second carton 20 located in the assigned global coordinate system 12 of the pallet space 5 (or container space 96) includes determining the coordinates of the distribution point 22 of the at least second carton 20 located in the assigned global coordinate system 12 of the pallet space 5 (or container space 96) relative to the distribution point 13 of the first carton 10. Based on these examples, the following reference Figure 1-6 Discuss the eighth use case.
[0079] Example 8
[0080] refer to Figure 1-6 In the eighth use case, the sensor 8 is in a line of sight 9 with the global origin 15, and the processor 18 determines the coordinates (e.g., x ) of the assigned second point 22 in the assigned global coordinate system 12 in the pallet space 5 (container space 96) relative to the global origin 15. pc2 =1.4m,y pc2 =1.5m, z pc2 =0.1 m, determined in the seventh use case). To determine the coordinates of the assigned second point 22 in the assigned global coordinate system 12 in the pallet space 5 (container space 96 ) relative to the global origin 15 , the processor 18 runs program instructions stored as software 16 in the position determination module 64 .
[0081] For the third carton 30, the sensor 8 is not in a line of sight 9 with the global origin 15. For the third carton 30, the sensor 8 is indeed in a line of sight 9 with the second point 22, and the processor 18 determines the coordinates (x ) of the assigned third point 32 in the assigned global coordinate system 12 in the pallet space 5 (container space 96) relative to the second point 22. pc3 ,y pc3 , z pc3 ). In this case, in method 2, the third point 32 is used as the local origin 51 of the third carton 30. To determine the coordinates of the assigned third point 32 of the third carton 30 in the assigned global coordinate system 12 in the pallet space 5 (container space 96) relative to the second point 22, the processor 18 runs program instructions stored as software 16 in the position determination module 64. Figure 3A In the example shown, the processor 18 determines (e.g., based on analysis based on image processing) that the third point 32 is located 1.3 m in the negative x direction, 1.4 m in the positive y direction, and 0.1 m in the negative z direction away from the second point 22. Using this data, the processor 18 determines that the coordinates of the third point 32 in the global coordinate system 12 in the pallet space 5 (or container space 96) relative to the global origin 15 are x pc3 =0.01m,y pc3 =0.01m, z pc3 =0m. The processor 18 determines the effective volume 75 attribute of the third carton 30 and the third unavailable volume of the third carton 30 in a similar manner as described above for the seventh use case of the first carton 10 and the second carton 20. The processor 18 sends the determined third point 32 coordinate data and the determined third unavailable volume of the third carton 30 to the data structure 21 to be stored in the memory device 17 as LOC3 of the third carton 30.
[0082] In another example, determining 46 the location of the first carton 10 in the pallet space 5 (or container space 96) includes, for the first carton 10 positioned in the pallet space 5 (or container space 96), first scanning at least a portion of the pallet space 5 (or container space 96), including at least a portion of the positioned first carton 10 and at least a portion of the base surface 60 of the pallet 1 (or container 90). In this example, the first scan includes acquiring location data of a first plurality of points on the outer surface 45 of the first carton 10. In this example, determining 46 the location of the first carton 10 in the pallet space 5 (or container space 96) includes determining the effective volume 75 of the first carton 10 based at least in part on the acquired location data of the first plurality of points. In this example, the determining 46 step includes determining the location of the first carton 10 in the pallet space 5 (or container space 96) based at least in part on the acquired location data of the first plurality of points. In this example, the determining 46 step includes associating the acquired position data of the first plurality of points and the determined available volume 75 of the first carton 10 with a first unavailable partial volume of the pallet space 5 (or container space 96). In this example, the determining 46 step includes assigning the first unavailable partial volume to the 3D map of the pallet space 5 (or container space 96) generated 47. The assigned first unavailable partial volume corresponds to the location of the first carton 10 in the pallet space 5 (or container space 96). In this example, the method 2 includes determining one or more available positions of at least a second carton 20 in the pallet space 5 (or container space 96) based at least in part on the assigned first unavailable partial volume of the first carton 10 in the pallet space 5 (or container space 96).
[0083] In this example, determining the location of at least the second carton 20 in the pallet space 5 (or container space 96) includes, for at least the second carton 20 positioned in the pallet space 5 (or container space 96), a second scan of at least a portion of the pallet space 5 (or container space 96), including at least a portion of the positioned at least second carton 20 and at least a portion of the base surface 60 of the pallet 1 (or container 90). In this example, the second scan includes acquiring location data of a second plurality of points on the outer surface 45 of at least the second carton 20. In this example, determining the location of at least the second carton 20 in the pallet space 5 (or container space 96) includes determining the effective volume 75 of at least the second carton 20 based at least in part on the acquired location data of the second plurality of points. In this example, the determining step includes determining the location of at least the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the acquired location data of the second plurality of points. In this example, the determining step includes associating the acquired position data of the second plurality of points and the determined effective volume 75 of at least the second carton 20 with at least a second unusable partial volume of the pallet space 5 (or container space 96). In this example, the determining step includes allocating the at least second unusable partial volume to the 3D map of the pallet space 5 (or container space 96) generated 47. The allocated at least second unusable partial volume corresponds to the positioning position of at least the second carton 20 in the pallet space 5 (or container space 96). In this example, the determining step includes determining the positioning position of at least the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the acquired position data of the second plurality of points.
[0084] In the present example, method 2 includes determining a shape attribute of at least one of the first carton 10 and at least the second carton 20 based at least in part on position data obtained for at least one of the first and second multiple points, respectively. In the present example, method 2 includes determining at least one dimensional attribute of at least one of the first carton 10 and at least the second carton 20 based at least in part on position data obtained for at least one of the first and second multiple points, respectively. In the present example, method 2 includes determining an effective volume 75 attribute of at least one of the first carton 10 and at least the second carton 20 based at least in part on position data obtained for at least one of the first and second multiple points, respectively. In the present example, method 2 includes determining a robot manipulation capability attribute of at least one of the first carton 10 and at least the second carton 20 based at least in part on position data obtained for at least one of the first and second multiple points, respectively. In the present example, determining the robot manipulation capability attribute includes determining whether the corresponding carton (10 and / or 20) is capable of robot manipulation without human intervention based at least in part on position data obtained for at least one of the first and second multiple points, respectively. Based on these examples, reference is made below. Figure 1-6 Discuss the ninth use case.
[0085] Example 9
[0086] refer to Figure 1-6 In a ninth use case, a pallet 1 (or container 90) is palletized in a loading area 29 of a facility 25. A sensor 8 includes a 3D scanner that is in a line of sight 9 with at least a portion of a first carton 10 and at least a portion of a base surface 60 of the pallet 1 (or container 90). The sensor 8 scans at least a portion of the pallet space 5 (or container space 96), including at least a portion of the positioned first carton 10 and at least a portion of the base surface 60 of the pallet 1 (or container 90). At least a portion of the base surface 60 of the pallet 1 (or container 90) includes at least one corner 83 of the base surface 60. The 3D scanner sensor 8 acquires position data of a first plurality of points on an outer surface 45 of the first carton 10 and the base surface 60. The acquired position data includes a plurality of pairs of data points of the first carton 10 and the base surface 60. Each pair of data points generated by the 3D scanner for position data includes the range from the 3D scanner sensor 8 to a point on the outer surface 45 of the first carton 10 (or the base surface 60 of the pallet 1 or container 90) and the angle between the 3D scanner sensor 8 and each point.
[0087] The 3D scanner data including a plurality of data pairs is sent to the processor 18. The processor 18 analyzes the plurality of data pairs to determine a location on the base surface 60 to be assigned a global origin 15 (e.g., one of the corners 83). The processor 18 analyzes the plurality of data points to determine 46 a positioning position of the first carton 10 in the pallet space 5 (or container space 96) relative to the determined location of the global origin 15. The processor 18 runs program instructions stored as software 16 in the position determination module 64 for determining 46 the positioning position of the first carton 10 in the pallet space 5 (or container space 96) based at least in part on the acquired position data of the first plurality of points on the outer surface 45 and the base surface 60 of the first carton 10. Before, during, or after determining 46 the positioning position of the first carton 10, the processor 18 determines the effective volume 75 of the first carton 10 based at least in part on the acquired position data of the first plurality of points. Before, during, or after determining 46 the located position of the first carton 10, the processor 18 associates the acquired position data of the first plurality of points and the determined effective volume 75 of the first carton 10 with a first unusable partial volume of the pallet space 5 (or container space 96). The processor 18 assigns the first unusable partial volume to the generated 47 3D map of the pallet space 5 (or container space 96). The assigned first unusable partial volume corresponds to the located position of the first carton 10 in the pallet space 5 (or container space 96). Once the located position of the first carton 10 in the pallet space 5 (or container space 96) is determined 46 based at least in part on the acquired position data of the first plurality of points on the outer surface 45 and the base surface 60 of the first carton 10, the processor 18 associates the determined 46 position (e.g., defined as the first unusable partial volume in a manner substantially similar to that described above with reference to the seventh use case) with the first carton 10. The processor 18 assigns the determined first unusable partial volume to the generated 47 3D map of the pallet space 5 (or container space 96), wherein the assigned first unusable partial volume corresponds to the location position of the first carton 10 in the pallet space 5 (or container space 96). The processor 18 sends the determined 46 location position of the first carton 10 to the data structure 21 for storage in the memory device 17 as LOC1 of the first carton 10.
[0088] Before or during positioning of at least a second carton 20 on the pallet 1 (or container 90), the processor 18 determines one or more available positions for at least the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the allocated first unusable partial volume of the first carton 10 in the pallet space 5 (or container space 96). To determine the one or more available positions for at least the second carton 20 in the pallet space 5 (or container space 96), the processor 18 runs program instructions stored as software 16 in the available position determination module 69.
[0089] When the first carton 10 is positioned on the pallet 1 (or container 90), the sensor 8 including the 3D scanner is in a line of sight 9 with at least a portion of the second carton 20 and at least a portion of the base surface 60 of the pallet 1 (or container 90). The sensor 8 scans at least a portion of the pallet space 5 (or container space 96), including at least a portion of the positioned second carton 20 and at least a portion of the base surface 60 of the pallet 1 (or container 90). At least a portion of the base surface 60 of the pallet 1 (or container 90) includes at least one corner 83 of the base surface 60. The 3D scanner sensor 8 acquires position data of a second plurality of points on the outer surface 45 and the base surface 60 of the second carton 20. The acquired position data includes a plurality of pairs of data points of the second carton 20 and the base surface 60. Each pair of data points generated by the 3D scanner includes a range from the 3D scanner sensor 8 to a point on the outer surface 45 of the second carton 20 (or the base surface 60 of the pallet 1 or container 90) and an angle between the 3D scanner sensor 8 and each point.
[0090] The 3D scanner data including the plurality of data pairs is sent to the processor 18. The processor 18 analyzes the plurality of data points to determine the location of the second carton 20 in the pallet space 5 (or container space 96) relative to the determined location of the global origin 15. To determine the location of the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the acquired location data of the second plurality of points on the outer surface 45 and the base surface 60 of the second carton 20, the processor 18 runs program instructions stored in the location determination module 64 as software 16. The processor 18 determines the effective volume 75 of at least the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the acquired location data of the second plurality of points. The processor 18 associates the acquired location data of the second plurality of points and the determined effective volume 75 of at least the second carton 20 with at least a second unusable partial volume of the pallet space 5 (or container space 96). The processor 18 allocates at least a second unusable partial volume to the 3D map of the pallet space 5 (or container space 96) generated 47, wherein the allocated at least a second unusable partial volume corresponds to the location of the at least second carton 20 in the pallet space 5 (or container space 96). The processor 18 sends the determined location of the second carton 20 to the data structure 21 to be stored in the memory device 17 as LOC2 of the second carton 20.
[0091] During the process of palletizing the pallet 1 (or loading the container 90), the third carton 30 is located on its base surface 60. The 3D scanner sensor 8 scans at least a portion of the pallet space 5 (or container space 96), including at least a portion of the positioned third carton 30 and at least a portion of the base surface 60 of the pallet 1 (or container 90). The 3D scanner sensor 8 obtains position data of a third plurality of points on the outer surface 45 and the base surface 60 of the third carton 30. The acquired position data includes multiple pairs of data points of the third carton 30 and the base surface 60. Each pair of data points generated by the 3D scanner includes a range from the 3D scanner sensor 8 to a point on the outer surface 45 of the third carton 30 (or the base surface 60 of the pallet 1 or container 90) and an angle between the 3D scanner sensor 8 and each point.
[0092] The 3D scanner data including a plurality of data pairs is sent to the processor 18. The processor 18 analyzes the plurality of data pairs to determine the shape attributes, at least one dimensional attribute (e.g., length, width, height), and / or effective volume 75 attributes of the third carton 30. To determine the shape attributes, at least one dimensional attribute (e.g., length, width, height), and / or effective volume 75 attributes of the third carton 30, the processor 18 runs program instructions stored in the attribute determination module 63 as software 16. After determining the shape and dimensional attributes of the third carton 30 as having a side length of 140 cm and an effective volume 75 of 2.744×10 3 cm 3 When the determined shape, dimension and effective volume 75 attribute data are associated with the third carton 30, the processor 18 sends the shape, dimension and effective volume 75 attribute data of the third carton 30 to the data structure 21 to be stored in the memory device 17 as the value 3 of the third carton 30.
[0093] For the third carton 30, the processor 18 analyzes the plurality of data pairs to determine, based at least in part on the acquired position data of the third plurality of points, that the processor 18 determines that the robotic manipulation capability attribute of the third carton 30 is capable of robotic manipulation without human intervention. Upon determining that the robotic manipulation capability attribute of the third carton 30 is capable of robotic manipulation without human intervention, the processor 18 associates the determined robotic manipulation capability attribute with the third carton 30. The processor 18 sends the robotic manipulation capability attribute of the third carton 30 to the data structure 21 to be stored in the memory device 17 as value 3 for the third carton 30.
[0094] In another example, determining 46 the location of the first carton 10 in the pallet space 5 (or container space 96) includes, for the first carton 10 positioned in the pallet space 5 (or container space 96), first imaging at least a portion of the pallet space 5 (or container space 96), including at least a portion of the positioned first carton 10 and at least a portion of the base surface 60 of the pallet 1 (or container 90). In this example, the first imaging includes acquiring image data of at least a portion of the positioned first carton 10. In this example, the determining 46 step includes determining the location of the first carton 10 in the pallet space 5 (or container space 96) based at least in part on the acquired image data of at least a portion of the first carton 10.
[0095] In this example, determining the location of at least the second carton 20 in the pallet space 5 (or container space 96) includes, for at least the second carton 20 positioned in the pallet space 5 (or container space 96), second imaging at least a portion of the pallet space 5 (or container space 96), including at least a portion and at least a portion of the base surface 60 positioned on the pallet 1 (or container 90). In this example, the second imaging includes acquiring image data of at least a portion of the positioned at least second carton 20. In this example, the determining step includes determining the location of at least the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the acquired image data of at least a portion of the at least second carton 20.
[0096] In this example, method 2 includes determining a shape attribute of at least one of the first carton 10 and at least the second carton 20 based at least in part on the image data of the corresponding carton (10 and / or 20) obtained. In this example, method 2 includes determining at least one dimensional attribute of at least one of the first carton 10 and at least the second carton 20 based at least in part on the image data of the corresponding carton (10 and / or 20) obtained. In this example, method 2 includes determining an effective volume 75 attribute of at least one of the first carton 10 and at least the second carton 20 based at least in part on the image data of the corresponding carton (10 and / or 20) obtained. In this example, method 2 includes determining a robot manipulation capability attribute of at least one of the first carton 10 and at least the second carton 20 based at least in part on the image data of the corresponding carton (10 and / or 20) obtained. In this example, determining the robot manipulation capability attribute includes determining whether the corresponding carton (10 and / or 20) can be robotically manipulated without human intervention based at least in part on the image data of the corresponding carton (10 and / or 20) obtained. Based on these examples, the following reference Figure 1-6 Discuss the tenth use case.
[0097] Example 10
[0098] refer to Figure 1-6 In a tenth use case, a pallet 1 (or container 90) is palletized in a loading area 29 of a facility 25. A sensor 8 includes a camera or other imaging device type sensor 8 that is in a line of sight 9 with at least a portion of a first carton 10 and at least a portion of a base surface 60 of the pallet 1 (or container 90). The sensor 8 captures an image of at least a portion of the pallet space 5 (or container space 96), including at least a portion of the positioned first carton 10 and at least a portion of the base surface 60 of the pallet 1 (or container 90). At least a portion of the base surface 60 of the pallet 1 (or container 90) includes at least one corner 83 of the base surface 60. The camera or other imaging type sensor 8 acquires image data of the positioned first carton 10 and at least a portion of the base surface 60.
[0099] The image data is sent to the processor 18. The processor 18 analyzes the image data using an image processing algorithm to determine a location on the base surface 60 to be assigned the global origin 15 (e.g., one of the corners 83). The processor 18 analyzes the image data to determine 46 the positioning position of the first carton 10 in the pallet space 5 (or container space 96) relative to the determined location of the global origin 15. In order to determine 46 the positioning position of the first carton 10 in the pallet space 5 (or container space 96) based at least in part on the acquired image data of the first carton 10 and the base surface 60, the processor 18 runs program instructions stored as software 16 in the position determination module 64. When determining 46 the positioning position of the first carton 10 in the pallet space 5 (or container space 96) based at least in part on the acquired image data of the first carton 10 and the base surface 60, the processor 18 associates the determined position (e.g., defined as a first unusable partial volume in a manner substantially similar to that described above with reference to the seventh use case) with the first carton 10. The processor 18 sends the determined 46 location of the first carton 10 to the data structure 21 for storage in the memory device 17 as LOC1 for the first carton 10 .
[0100] When the first carton 10 is positioned on the pallet 1 (or container 90), the sensor 8 including a camera or other imaging device is in a line of sight 9 with at least a portion of the second carton 20 and at least a portion of the base surface 60 of the pallet 1 (or container 90). The sensor 8 captures an image of at least a portion of the pallet space 5 (or container space 96), including at least a portion of the positioned second carton 20 and at least a portion of the base surface 60 of the pallet 1 (or container 90). At least a portion of the base surface 60 of the pallet 1 (or container 90) includes at least one corner 83 of the base surface 60. The camera or other imaging sensor 8 acquires image data of the second carton 20 and the base surface 60.
[0101] The image data is sent to the processor 18. The processor 18 analyzes the image data to determine the location of the second carton 20 in the pallet space 5 (or container space 96) relative to the determined location of the global origin 15. To determine the location of the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the acquired image data of the second carton 20 and the base surface 60, the processor 18 runs program instructions stored as software 16 in the location determination module 64. When determining the location of the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the acquired image data of the second carton 20 and the base surface 60, the processor 18 associates the determined location (e.g., defined as a first unusable partial volume in a manner substantially similar to that described above with reference to the seventh use case) with the second carton 20. The processor 18 sends the determined location of the second carton 20 to the data structure 21 to be stored in the memory device 17 as LOC2 of the second carton 20.
[0102] During the process of palletizing the pallet 1 (or loading the container 90), the third carton 30 is located on its base surface 60. The camera or other imaging sensor 8 captures an image of at least a portion of the pallet space 5 (or container space 96), including at least a portion of the positioned third carton 30 and at least a portion of the base surface 60 of the pallet 1 (or container 90). The camera or other imaging sensor 8 acquires image data of the third carton 30 and the base surface 60.
[0103] The image data is sent to the processor 18. The processor 18 analyzes the image data using an image processing algorithm to determine the shape attributes, at least one dimensional attribute (e.g., length, width, height), and / or effective volume 75 attributes of the third carton 30 based at least in part on the acquired image data. To determine the shape attributes, at least one dimensional attribute (e.g., length, width, height), and / or effective volume 75 attributes of the third carton 30, the processor 18 runs program instructions stored in the attribute determination module 63 as software 16. After determining the shape and dimensional attributes of the third carton 30 as having a side length of 140 cm and an effective volume 75 of 2.744×10 3 cm 3 When the determined shape, dimension and effective volume 75 attribute data are associated with the third carton 30, the processor 18 sends the shape, dimension and effective volume 75 attribute data of the third carton 30 to the data structure 21 to be stored in the memory device 17 as the value 3 of the third carton 30.
[0104] For the third carton 30, the processor 18 analyzes the image data using an image processing algorithm to determine that the robotic manipulation capability attribute of the third carton 30 is capable of robotic manipulation without human intervention based at least in part on the acquired image data of the positioned third carton 30 and the base surface 60. Upon determining that the robotic manipulation capability attribute of the third carton 30 is capable of robotic manipulation without human intervention, the processor 18 associates the determined robotic manipulation capability attribute with the third carton 30. The processor 18 sends the robotic manipulation capability attribute of the third carton 30 to the data structure 21 to be stored in the memory device 17 as value 3 for the third carton 30.
[0105] In another example, the computing device 4 (e.g., the processor 18 via the communication interface 24) and / or the server 11 is operably coupled to the array 77 of pressure sensors 78 located on the upper surface 79 of the base surface 60 of the pallet 1 (or container 90). In this example, determining 46 the location of the first carton 10 in the pallet space 5 (or container space 96) includes, for the first carton 10 located in the pallet space 5 (or container space 96), first sensing a pressure change on at least one pressure sensor 78 of the array 77. In this example, the determining 46 step includes first determining the position of at least one pressure sensor 78 in the array 77 of pressure sensors 78 that sensed the pressure change in the first sensing step on the base surface 60. In this example, the determining 46 step includes determining the location of the first carton 10 in the pallet space 5 (or container space 96) based at least in part on at least one of the first sensed pressure change and the first determined position of at least one pressure sensor 78 of the array 77.
[0106] In this example, determining the location of at least the second carton 20 in the pallet space 5 (or container space 96) includes, for at least the second carton 20 positioned in the pallet space 5 (or container space 96), a pressure change on at least one pressure sensor 78 of the second sensing array 77. In this example, the determining step includes a second determination of the position of at least one pressure sensor 78 in the array 77 of pressure sensors 78 that sensed the pressure change in the second sensing step on the base surface 60. In this example, the determining step includes determining the location of at least the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the second sensed pressure change and at least one of the second determined positions of at least one pressure sensor 78 of the array 77.
[0107] In another example, the computing device 4 (e.g., the processor 18 via the communication interface 24) and / or the server 11 is operably coupled to an accelerometer sensor array (not shown) located on the upper surface 79 of the base surface 60 of the pallet 1 (or container 90). In this example, determining 46 the location of the first carton 10 in the pallet space 5 (or container space 96) includes, for the first carton 10 located in the pallet space 5 (or container space 96), first detecting an acceleration and / or a vibration disturbance on at least one accelerometer sensor of the accelerometer sensor array. In this example, the determining 46 step includes first determining the location of at least one accelerometer sensor of the accelerometer sensor array on the base surface 60 at which the first detecting step sensed the acceleration and / or the vibration disturbance. In this example, the determining 46 step includes determining the location of the first carton 10 in the pallet space 5 (or container space 96) based at least in part on at least one of the first detected acceleration and / or vibration disturbance and the first determined location of at least one accelerometer sensor of the accelerometer sensor array. In this example, the magnitude of the first detected acceleration and / or vibration disturbance detected by the at least one accelerometer sensor is proportional to the weight of the first carton 10. In this example, the greater the weight of the first carton 10 positioned on the pallet 1 (or container 90), the greater the magnitude of the acceleration and / or vibration disturbance detected by the accelerometer sensor for the first time.
[0108] In yet another example, determining the location of at least the second carton 20 in the pallet space 5 (or container space 96) includes, for at least the second carton 20 positioned in the pallet space 5 (or container space 96), second detecting an acceleration and / or a vibration disturbance on at least one accelerometer sensor of the accelerometer sensor array. In this example, the determining step includes second determining the position of at least one accelerometer sensor of the array on the base surface 60, at which position the acceleration and / or the vibration disturbance is sensed in the second detecting step. In this example, the determining step includes determining the location of at least the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the second detected acceleration and / or vibration disturbance and at least one of the second determined positions of at least one accelerometer sensor of the array. In this example, the magnitude of the second detected acceleration and / or vibration disturbance detected by the at least one accelerometer sensor is proportional to the weight of the second carton 20. In this example, the greater the weight of the second carton 20 positioned on the pallet 1 (or container 90), the greater the magnitude of the second detected acceleration and / or vibration disturbance of the accelerometer sensor.
[0109] In this example, method 2 includes determining a weight attribute of at least one of the first carton 10 and the at least second carton 20 based at least in part on at least one of the following: (i) at least one of a first sensed pressure change and a first determined position of at least one pressure sensor 78 of the array 77, and (ii) at least one of a second sensed pressure change and a second determined position of at least one pressure sensor 78 of the array 77. Based on these examples, reference is made below to Figure 1-6 Discuss the eleventh use case.
[0110] Example 11
[0111] refer to Figure 1-6 In the eleventh use case, pallets 1 (or containers 90) are palletized in the loading area 29 of the facility 25. At least one pressure sensor 78 in the array 77 of pressure sensors 78 positioned on the upper surface 79 of the base 60 of the pallet 1 (or container 90) senses a first pressure change caused by the first carton 10 being positioned on the base 60. The magnitude of the pressure change sensed for the first time by the at least one pressure sensor 78 is proportional to the weight of the first carton 10. In this case, the greater the weight of the corresponding carton 3 positioned on the pallet 1 (or container 90), the greater the magnitude of the pressure change sensed by the pressure sensor 78. Each pressure sensor 78 of the array 77 has a unique ID and a known position on the upper surface 79 of the base 60, so that each of them is mapped by an (x, y) coordinate on the base 60 relative to the assigned global origin 15.
[0112] The pressure sensors 78 of the array 77 sense the pressure changes caused by the first carton 10 being positioned on the base surface 60 of the pallet 1 (or container 90), and send their respective sensed pressure change magnitudes and their respective IDs and / or x, y coordinates in the base surface 60 to the processor 18. The processor 18 analyzes these data to determine the positions of the pressure sensors 78 on the base surface 60 that sensed the pressure changes due to the first carton 10 being positioned on the base surface 60. In this case, the processor 18 receives unique identifiers from the accelerometer sensors 8 that sensed the pressure changes due to the first carton 10 being positioned on the base surface 60, and associates each of them with its respective x, y coordinates (e.g., by reading these data from a lookup table stored in the memory device 17). The processor 18 determines the position of the first carton 10 in the pallet space 5 (or container space 96) relative to the global origin 15 based at least in part on the determined positions of the pressure sensors 78 that sensed the pressure changes due to the first carton 10 being positioned on the base surface 60. To determine 46 the located position of the first carton 10 in the pallet space 5 (or container space 96) based at least in part on the determined position of the pressure sensor 78 that detected the pressure change, the processor 18 executes program instructions stored as software 16 in the position determination module 64. When determining 46 the located position of the first carton 10 in the pallet space 5 (or container space 96) based at least in part on the determined position of the pressure sensor 78 that detected the pressure change, the processor 18 associates the determined 46 position with the first carton 10. The processor 18 sends the determined 46 position of the first carton 10 to the data structure 21 to be stored in the memory device 17 as LOC1 for the first carton 10.
[0113] The processor 18 receives the magnitude of the pressure change including the unique identifier from the pressure sensor 78, the pressure change being sensed as a result of the positioning of the first carton 10 on the base surface 60. The processor 18 analyzes the data to determine a weight attribute of the first carton 10 based at least in part on the first sensed pressure change and / or the first determined position of the pressure sensor 78 that sensed the pressure change as a result of the positioning of the first carton 10 on the base surface 60. To determine the weight attribute of the positioned first carton 10 based at least in part on the first sensed pressure change and / or the first determined position of the pressure sensor 78 that sensed the pressure change as a result of the positioning of the first carton 10 on the base surface 60, the processor 18 executes program instructions stored in the attribute determination module 63 as software 16. When determining the weight attribute of the positioned first carton 10 based at least in part on the first sensed pressure change and / or the first determined position of the pressure sensor 78 that sensed the pressure change as a result of the positioning of the first carton 10 on the base surface 60, the processor 18 associates the determined weight attribute with the first carton 10 identifier 44. The processor 18 sends the determined weight attribute of the first carton 10 to the data structure 21 to be stored in the memory device 17 as value 1 for the first carton 10 .
[0114] In this example, the pressure sensor 78 is disposed on the base surface 60 for determining the z height of the carton 3 placed on the pallet 1 (or in the container 90) (e.g., directly on the base surface (e.g., z pc =0), or placed on top of other cartons 3 (z pc >0))) on the base surface 60 (e.g., relative to the global origin 15 (x and y positions) pc ,y pc )). If the previously positioned cartons 3 are so accurately measured and the 3D map accurately generated 47, then when determining the (x, y) position of the added carton 3 from the pressure sensor 78, the processor 18 is able to infer the z position based on the historical positions of the other cartons 3 (e.g., by running program instructions stored in the position determination module 64 as software 16). For example, if there is a 12-inch high box in the front left corner of the base surface 60, and the pressure sensor 78 indicates that placing another carton 3 on top of the previously positioned carton 3 results in the center of force being on the footprint of the previously positioned 12-inch high box, the processor 18 can use the readings of the pressure sensor 78 to indirectly determine that the new box is on top of it.
[0115] This form of indirect determination of the position of the carton 3 by the processor 18 may easily cause stacking errors in the generated map 47, and may not allow more than one carton 3 to be moved at a time. If the operator needs to reposition the carton 3, as long as the carton 3 is removed one at a time and replaced one at a time, the system 6 should be able to use data from the pressure sensor 78 to determine which carton 3 was removed based on the total mass of the removed cartons 3 and the force center of the removed weight. However, the reliability and robustness of determining the positioning position of the carton 3 in the pallet space 5 or container space 96 can be enhanced by performing some form of direct measurement or confirmation of the z height and carton placement. This can be achieved by an external camera or imaging sensor 8. Although the use of such a vision system and / or external sensor 8 to confirm the position of the carton 3 is simple and inexpensive, operational scenarios may occur where external confirmation is difficult or impossible.
[0116] To account for these unexpected situations and ensure continuous, uninterrupted, high throughput operation with minimal human user 7 interaction, the disclosed method 2 and system 6 may include redundant carton 3 position sensing modes to provide flexibility and continuity to accurately determine the location of the cartons 3. In this case, the processor 18 may utilize all potential sources of carton 3 position information to arrive at the best estimate based on the available data. In this way, the generated 47 3D map of the pallet 5 or container 96 may include information about which carton 3 position sensing data source has been used to determine the location of each carton 3, so that when additional locations and / or other carton 3 related information sources are discovered, a confidence score for carton 3 placement and a priority map of which carton 3 locations should be evaluated again are created.
[0117] In one example, generating 47 a 3D map of a pallet space 5 (or container space 96) includes first mapping a first carton 10 to a first position in the pallet space 5 (or container space 96) based on a determined identification (e.g., via step 41) and a location position (e.g., via step 42) of the first carton 10 in the pallet space 5 (or container space 96). In this example, generating step 47 includes secondly mapping at least a second carton 20 to a second position in the pallet space 5 (or container space 96) based on a determined identification and a location position (e.g., via step 46) of at least the second carton 20 in the pallet space 5 (or container space 96). In this example, generating step 47 includes updating the generated 3D map of the pallet space 5 (or container space 96) for an additional carton (e.g., a third carton 30) based on the determined identification and location position of the additional carton 3 in the pallet space 5 (or container space 96). Based on these examples, reference is made below to Figure 1-6 Discuss the twelfth use case.
[0118] Example 12
[0119] refer to Figure 1-6 In a twelfth use case, during or after positioning the first carton 10 on the pallet 1 (or container 90), the processor 18 first maps the first carton 10 to a first position in the pallet space 5 (or container space 96). The processor 18 first maps the first carton 10 to the first position during or after reading the determined identification of the first carton 10 and the determined 46 positioning position from the memory device 17. To first map the first carton 10 in the pallet space 5 (or container space 96) based at least in part on the determined identification of the first carton 10 and the determined 46 positioning position, the processor 18 executes program instructions stored as software 16 in the 3D map generation module 66. When first mapping the first carton 10 in the pallet space 5 (or container space 96), the processor 18 generates 47 a 3D map of the pallet space 5 (or container space 96) including the first mapped first carton 10, and sends data representing the generated 3D map to the memory device 17 for storage therein.
[0120] During or after first mapping the first carton 10, the processor 18 secondarily maps the second carton 20 to a second location in the pallet space 5 (or container space 96). The processor 18 secondarily maps the second carton 20 to the second location during or after reading the determined identification and location position of the second carton 20 from the memory device 17. To secondarily map the second carton 20 in the pallet space 5 (or container space 96) based at least in part on the determined identification and location position of the second carton 20, the processor 18 executes program instructions stored as software 16 in the 3D map generation module 66. When secondarily mapping the second carton 20 in the pallet space 5 (or container space 96), the processor 18 updates the 3D map of the pallet space 5 (or container space 96) including the second mapped second carton 20, and sends data representing the updated 3D map to the memory device 17 for storage therein.
[0121] During or after the second mapping of the second carton 20, and for any additional cartons 3 beyond the second carton 20 (e.g., the third carton 30, ..., the n-1th carton, and the nth carton), the processor 18 continues to map the subsequent cartons 3 to subsequent locations in the pallet space 5 (or container space 96). The processor 18 maps the additional cartons 3 to the subsequent locations during or after reading the determined identification and location positions of the additional cartons 3 from the memory device 17. In order to perform the subsequent mapping of the additional cartons 3 in the pallet space 5 (or container space 96) based at least in part on the determined identification and location positions of the additional cartons 3, the processor 18 runs program instructions stored as software 16 in the 3D map generation module 66. When mapping the additional cartons 3 into the pallet space 5 (or container space 96), the processor 18 updates the 3D map of the pallet space 5 (or container space 96) including the mapped additional cartons 3, and sends data representing the updated 3D map to the memory device 17 for storage therein.
[0122] During or after mapping the last carton (e.g., the nth carton) to its corresponding position in the pallet space 5 (or container space 96), the processor 18 executes program instructions stored as software 16 in the 3D map generation module 66, based on commands from, for example, a user 7 of the system 6, to read data representing the updated 3D map from the memory device 17 and present the updated 3D map in a human-readable form to an output device (e.g., a display and / or printer) that communicates with the computing device 4. The output device is located at the facility 25, the transport vehicle, and / or a remote location. Similarly, during the process of removing (e.g., unloading) the positioned carton 3 from the pallet 1 (or container 90), the processor 18 updates the 3D map. To update the 3D map during the process of removing the carton 3 from the pallet 1 (or container 90), the processor 18 executes program instructions stored as software 16 in the 3D map generation module 66 and utilizes data obtained from the sensor 8 and / or the pressure sensor 78 (e.g., as described in the aforementioned use case example).
[0123] In one example, method 2 includes determining an identity of a palletized pallet 85 (or loaded container 97). In this example, associating the generated 47 3D map with the palletized pallet 85 (or loaded container 97) includes storing the generated 47 3D map of the pallet space 5 (or container space 96) in the memory device 17 (e.g., in the data structure 21) in association with the determined identity of the palletized pallet 85 (or loaded container 97). In this example, method 2 includes sending the generated 47 3D map of the pallet space 5 (or container space 96) to a receiving facility for the palletized pallet 85 (or loaded container 97). Based on these examples, reference is made below to Figure 1-6 Let’s discuss the thirteenth use case.
[0124] Example 13
[0125] refer to Figure 1-6 In the thirteenth use case, during or after positioning the first carton 10 and any additional cartons 3 (e.g., the third carton 30, ..., the n-1th carton and the nth carton) on the pallet 1 (or container 90), the processor 18 determines the identity of the palletized pallet 85 (or loaded container 97) using data obtained from the sensor 8, including by reading, receiving and / or decoding identification information 50, barcode 80, QR code 92 and / or signals received from a transmitter device 40 located on or in the pallet 1 (or container 90). During or after identifying the palletized pallet 85 (or loaded container 97), the processor 18 associates the generated 47 3D map and / or the updated 3D map with the palletized pallet 85 (or loaded container 97). To associate the generated 47 3D map and / or the updated 3D map with the palletized pallet 85 (or loaded container 97 ), the processor 18 executes program instructions stored as software 16 in the 3D map association module 68 .
[0126] During or after associating the generated 47 3D map and / or the updated 3D map with the palletized pallet 85 (or loaded container 97), the processor 18 sends data representing the generated and / or updated 3D map to the memory device 17 for storage in association with the determined identification of the palletized pallet 85 (or loaded container 97) in the memory device 17. In addition, during or after associating the generated 47 3D map and / or the updated 3D map with the palletized pallet 85 (or loaded container 97), the processor 18 sends the generated 47 3D map and / or the updated 3D map of the pallet space 5 (or container space 96) to a receiving facility (not shown) for the palletized pallet 85 (or loaded container 97).
[0127] In one example, the palletized pallet 85 (or loaded container 97) is one of a plurality of palletized pallets 85 (or loaded containers 97) for positioning in a facility 25 (or a transport). In this example, method 2 includes determining an identity of each of the plurality of palletized pallets 85 (or each of the plurality of loaded containers 97) for positioning in a facility space 26 (or a transport space). In this example, method 2 includes determining an identity of the facility 25 (or a transport). In this example, method 2 includes determining a loading position of each of the plurality of palletized pallets 85 (or each of the plurality of loaded containers 97) in the facility space 26 (or a transport space).
[0128] In this example, method 2 includes generating a facility 3D map (or a transport 3D map) of the facility space 26 (or the transport space) based on the determined identification and loaded position of each of the plurality of pallets 85 (or each of the plurality of loaded containers 97) in the facility space 26 (or the transport space). In this example, method 2 includes associating the generated facility 3D map (or the generated transport 3D map) with the loaded facility (or the loaded transport).
[0129] In this example, associating the generated facility 3D map (or generated transport 3D map) with the loaded facility (or loaded transport) includes storing the generated facility 3D map (or generated transport 3D map) in association with the determined identification of the facility 25 (or transport) in the memory device 17 (e.g., in the data structure 21). In this example, the method 2 includes the processor 18 sending the generated facility 3D map (or generated transport 3D map) to the loading facility or the receiving facility of the loaded transport.
[0130] The various embodiments disclosed herein should be considered illustrative and explanatory, and should not be construed as limiting the present disclosure in any way.
[0131] Although aspects of the present disclosure have been specifically shown and described with reference to the above embodiments, it will be understood by those skilled in the art that various additional embodiments may be envisioned by modifying the disclosed machines, systems, and methods without departing from the spirit and scope of the disclosure. These embodiments should be understood to fall within the scope of the present disclosure as defined by the claims and any equivalents thereof.
Claims
1. A method for mapping carton locations, comprising: For the first carton: (i) assigning a first identifier to the first carton, the first carton being received to be positioned in: a pallet space of a pallet, or a container space of a container; (ii) determining one or more physical characteristics of the first carton; (iii) associating the one or more physical characteristics of the first carton with the first identifier; (iv) determining the location of the first carton in the pallet space or the container space, wherein determining the location of the first carton in the pallet space or the container space comprises: The first carton is assigned a coordinate frame (f) having a local origin defined or at least approximated as a frame point on or near an outer surface of the first carton, the frame point being defined as x f =0,y f =0 and z f =0; determining an effective volume of said first carton relative to at least one assigned said coordinate frame (f); and determining, for the positioned first carton, frame coordinates of the local origin of the first carton in an assigned global coordinate system of the pallet space or the container space; and (v) generating a three-dimensional (3D) map of the pallet space or the container space based on the determined one or more physical characteristics of the first carton and the determined positioning position of the first carton in the pallet space or the container space.
2. The method according to claim 1, further comprising: For at least the second carton: (vi) assigning at least a second identifier to the at least a second carton received for positioning in the pallet space or the container space; (vii) determining one or more physical characteristics of the at least second carton; (viii) associating the one or more physical characteristics of the at least second carton with the at least second identifier; as well as (ix) determining the location of the at least second carton in the pallet space or the container space, wherein determining the location of the at least second carton in the pallet space or the container space comprises: The at least second carton is assigned a coordinate frame (f) having a local origin defined or at least approximated as a frame point on or near an outer surface of the at least second carton, the frame point being defined as x f =0,y f =0 and z f =0; determining an effective volume of said at least a second carton relative to at least one assigned said coordinate frame (f); and determining, for the positioned at least second carton, frame coordinates of the local origin of the at least second carton in the assigned global coordinate system of the pallet space or the container space, Generating the 3D map further includes: generating the 3D map of the pallet space or the container space based on the one or more physical properties determined of the at least second carton and the determined positioning positions of the first carton and the at least second carton in the pallet space or the container space.
3. The method according to claim 2, further comprising: (A) determining the usable floor area of the floor of the pallet or container; (B) determining a volume available for positioning a corresponding carton of the first carton and the at least second carton in the pallet space or the container space; (C) a global coordinate system (pc) assigned to the pallet space or the container space based at least on the determined available surface area and available volume, the global coordinate system (pc) having a global origin defined or at least approximated as a global point on the surface, the global point being defined as x pc =0,y pc =0 and z pc = 0; and (D) Associating the allocated global coordinate system with the pallet or the container.
4. The method according to claim 2, wherein generating the 3D map further comprises: The determined effective volume of the respective carton and the determined local origin are associated with an unusable partial volume of the pallet space or the container space.
5. The method according to claim 4, wherein the unusable partial volume in the pallet space or the container space corresponds to the location of the corresponding carton in the pallet space or the container space, the method further comprising: Based on the unusable partial volume of the pallet space or the container space, available positions in the pallet space or the container space for subsequent cartons are determined.
6. The method of claim 2, wherein the one or more physical characteristics include at least one of: an identification, one or more dimensions, a weight, and a robot manipulability attribute of a corresponding carton in the first carton and the at least second carton, and wherein at least one of the following steps: (ii) determining the one or more physical characteristics of the first carton, and (vii) determining the one or more physical characteristics of the at least second carton, comprises at least one of the following: (a) capturing, by a sensor, at least one image of at least a portion of the respective carton; (b) analyzing the at least one image to extract the one or more physical characteristics of the corresponding carton; (c) receiving a signal from a transmitter device positioned in or on the respective carton, the signal encoding data comprising the one or more physical characteristics of the respective carton; (d) decoding the signal received from the transmitter device to extract the one or more physical characteristics of the corresponding carton; (e) receiving a signal encoding data including the one or more physical characteristics of the corresponding carton from a commissioning system; as well as (f) decoding the signal received from the commissioning system to extract the one or more physical characteristics of the corresponding carton.
7. The method of claim 6, wherein generating the 3D map of the pallet space or the container space further comprises at least one of: first mapping the first carton to a first location in the pallet space or the container space based on at least one of: an associated extracted identification, an associated extracted one or more dimensions, an associated extracted weight, and an associated extracted robotic manipulation capability attribute of the first carton; and Secondly, the at least second carton is mapped to a second position in the pallet space or the container space based on at least one of the following: the associated extracted identification, the associated extracted one or more dimensions, the associated extracted weight and the associated extracted robotic manipulation capability attributes of the at least second carton.
8. The method of claim 7, further comprising updating the generated 3D map of the pallet space or the container space for subsequent cartons positioned at subsequent locations in the pallet space or the container space based on at least one of: an associated extracted identification, an associated extracted one or more dimensions, an associated extracted weight, and an associated extracted robotic manipulation capability attribute of the subsequent carton.
9. A system for mapping carton locations, comprising: one or more memory devices; as well as one or more processors in communication with the one or more memory devices, wherein the one or more processors are programmed to: For the first carton: (i) assigning a first identifier to the first carton, the first carton being received to be positioned in: a pallet space of a pallet, or a container space of a container; (ii) determining one or more physical characteristics of the first carton; (iii) associating the one or more physical characteristics of the first carton with the first identifier; (iv) determining a location of the first carton in the pallet space or the container space, the pallet space or the container space having an assigned global coordinate system, and wherein the location of the first carton in the assigned global coordinate system of the pallet space or the container space comprises: frame coordinates of a local origin of the first carton of a coordinate frame assigned to the first carton (f), wherein the local origin is defined or at least approximated as a frame point on or near an outer surface of the first carton, the frame point being defined as x f =0,y f =0 and z f = 0; and the determined effective volume relative to the assigned coordinate frame (f); (v) generating a three-dimensional (3D) map of the pallet space or the container space based on the determined one or more physical characteristics of the first carton and the determined positioning position of the first carton in the pallet space or the container space.
10. The system of claim 9, wherein the one or more processors are further programmed to: For at least the second carton: (vi) assigning at least a second identifier to the at least a second carton received for positioning in the pallet space or the container space; (vii) determining one or more physical characteristics of the at least second carton; (viii) associating the one or more physical characteristics of the at least second carton with the at least second identifier; as well as (ix) determining a location of the at least second carton in the pallet space or the container space, wherein the location of the at least second carton in the assigned global coordinate system of the pallet space or the container space comprises: frame coordinates of a local origin of the at least second carton of a coordinate frame assigned to the at least second carton (f), wherein the local origin is defined or at least approximated as a frame point on or near an outer surface of the at least second carton, the frame point being defined as x f =0,y f =0 and z f = 0; and the effective volume determined relative to the assigned coordinate frame (f), In order to generate the 3D map, the one or more processors are also programmed to: further generate the 3D map of the pallet space or the container space based on the one or more physical characteristics of the at least second carton determined, and the positioning positions of the first carton and the at least second carton determined in the pallet space or the container space.
11. The system of claim 10, wherein the one or more physical characteristics include at least one of: an identification, one or more dimensions, a weight, and a robotic manipulability attribute of a corresponding carton in the first carton and the at least second carton, and wherein for at least one of: (ii) determining the one or more physical characteristics of the first carton, and (vii) determining the one or more physical characteristics of the at least second carton, the one or more processors are further programmed to perform at least one of: (a) capturing, by at least one sensor in communication with the one or more processors, at least one image of at least a portion of the respective carton; (b) analyzing the at least one image to extract the one or more physical characteristics of the corresponding carton; (c) receiving a signal from a transmitter device positioned in or on the respective carton and in communication with the one or more processors, the signal encoding data comprising the one or more physical characteristics of the respective carton; (d) decoding the signal received from the transmitter device to extract the one or more physical characteristics of the corresponding carton; (e) receiving a signal from a debugging system in communication with the one or more processors, the signal encoding data comprising the one or more physical characteristics of the corresponding carton; and (f) decoding a signal received from the debugging system to extract the one or more physical characteristics of the corresponding carton.
12. The system of claim 11, wherein for at least one of: (iii) associating the one or more physical characteristics of the first carton with the first identifier, and (viii) associating the one or more physical characteristics of the at least second carton with the at least second identifier, the one or more processors are further programmed to: (g) associating at least one of the extracted identification, the extracted one or more dimensions, the extracted weight and the extracted robot manipulation capability attributes of the corresponding carton with a corresponding identifier among the first identifier and the at least second identifier.
13. A system according to claim 11, wherein, with respect to generating the 3D map, the one or more processors are further programmed to: generate the 3D map of the pallet space or the container space further based on at least one of the extracted identification, the extracted one or more dimensions, the extracted weight, and the extracted robot manipulation capability attributes of the corresponding carton.
14. The system of claim 11, wherein the one or more processors are further programmed to determine whether the corresponding carton is capable of robotic manipulation without human intervention.
15. The system of claim 10, wherein the one or more processors are further programmed to: assigning an identifier to the pallet or the container; and The generated 3D image is associated with an identifier of the stacked pallet or loaded container.
16. The system of claim 15, wherein the one or more processors are further programmed to: determine an unloading protocol for the palletized or loaded container, and wherein: With respect to associating the generated 3D map with the palletized pallet or the loaded container, the one or more processors are further programmed to: store the generated 3D map of the pallet space or the container space in the one or more memory devices in a manner associated with the determined unloading protocol of the palletized pallet or the loaded container, respectively.
17. The system of claim 16, wherein the one or more processors are further programmed to: send the generated 3D map of the pallet space or the container space to a receiving facility for the palletized pallets or loaded containers, respectively.
18. The system of claim 15, wherein the one or more processors are further programmed to: for placing in freight mode, determine a loading protocol for a plurality of pallets stacked or a plurality of loaded containers, and wherein for associating the generated 3D map with the pallets stacked or loaded containers, wherein the one or more processors are further programmed to: associating each of the generated plurality of 3D images with each of the plurality of pallets that have been palletized or each of the plurality of loaded containers; and The generated 3D map of each pallet space of the plurality of pallets, each container space of the plurality of loaded containers is stored in the one or more memory devices in association with the determined loading protocol of the plurality of pallets or the plurality of loaded containers, respectively.
19. The system of claim 18, wherein the one or more processors are further programmed to: send the generated 3D map of each of the pallet spaces of the plurality of pallets or each of the container spaces of the plurality of loaded containers to the freight model.
20. A non-transitory computer readable storage medium storing processor executable instructions for mapping carton locations, the processor executable instructions, when executed by one or more processors, causing the one or more processors to: For the first carton: (i) assigning a first identifier to the first carton, the first carton being received to be positioned in: a pallet space of a pallet, or a container space of a container; (ii) determining one or more physical characteristics of the first carton; (iii) associating the one or more physical characteristics of the first carton with the first identifier; (iv) determining the location of the first carton in the pallet space or the container space, wherein determining the location of the first carton in the pallet space or the container space comprises: The first carton is assigned a coordinate frame (f) having a local origin defined or at least approximated as a frame point on or near an outer surface of the first carton, the frame point being defined as x f =0,y f =0 and z f =0; determining an effective volume of said first carton relative to at least one assigned said coordinate frame (f); and determining, for the positioned first carton, frame coordinates of the local origin of the first carton in an assigned global coordinate system of the pallet space or the container space; and (v) generating a three-dimensional (3D) map of the pallet space or the container space based on the determined one or more physical characteristics of the first carton and the determined positioning position of the first carton in the pallet space or the container space.
Citation Information
Patent Citations
Generation of plans for loading and unloading a container
TW201307175A
Method and system of optimized sequencing and configuring of items for packing in a bounded region
US6876958B1