Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
PACKING FACILITY AUTOMATION
Document Type and Number:
WIPO Patent Application WO/2021/237011
Kind Code:
A1
Abstract:
A system for coordination packaging machines in a packaging facility includes a computing device and packaging machines. The computing device includes a storage medium and a processing device. The packaging machines include a first packaging machine and a second packaging machine. Each of the plurality of packaging machines is communicatively coupled to the computing device. The storage medium has stored thereon instructions that, in response to execution of the instructions by the processing device, cause the computing device to receive object information from the first packaging machine about an object to be packaged and send a packaging instruction to the second packaging machine for forming at least a portion of a package to be used to package the object. The second packaging machine is configured to form the portion of the package in response to receiving the packaging instruction.

Inventors:
MARIO JOHN (US)
CHRISTMAN RUSSELL (US)
CENDELLA DAVID (US)
Application Number:
PCT/US2021/033535
Publication Date:
November 25, 2021
Filing Date:
May 21, 2021
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SEALED AIR CORP (US)
International Classes:
B65B57/00; G05B19/418; B65B59/04; B65B65/00; G06Q50/04; G06Q50/28
Domestic Patent References:
WO2018057706A12018-03-29
Foreign References:
US20180265228A12018-09-20
US20150096266A12015-04-09
US20100287879A12010-11-18
EP1544723A12005-06-22
US20140360141A12014-12-11
DE102017102989A12018-08-16
US20070067725A12007-03-22
Attorney, Agent or Firm:
ISAACSON, Jon M. (US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A system comprising: a computing device located in a packaging facility, wherein the computing device includes a storage medium and a processing device; and a plurality of packaging machines located in the packaging facility, wherein the plurality of packaging machines comprises a first packaging machine and a second packaging machine, and wherein each of the plurality of packaging machines is communicatively coupled to the computing device; wherein the storage medium has stored thereon instructions that, in response to execution of the instructions by the processing device, cause the computing device to: receive object information from the first packaging machine about an object to be packaged, and send a packaging instruction to the second packaging machine for forming at least a portion of a package to be used to package the object; wherein the second packaging machine is configured to form the portion of the package in response to receiving the packaging instruction.

2. The system of claim 1, wherein the instructions stored on the storage medium further comprise instructions that, in response to execution by the processing device, cause the computing device to: detect a new packaging machine at the packaging facility, and initiate communication with the new packaging machine.

3. The system of claim 2, wherein the instructions that cause the computing device to initiate communication with the new packaging machine further cause the computing device to: receive an identifier of the new packaging machine from the packaging machine; determine a communication protocol of the new packaging machine based on the identifier of the new packaging machine; and establish communication with the new packaging machine using the communication protocol of the new packaging machine.

4. The system of claim 3, wherein the instructions that cause the computing device to determine the communication protocol of the new packaging machine further cause the computing device to: determine that the communication protocol of the new machine was previously unknown to the computing device; and obtain instructions to communicate using the communication protocol of the new machine from a remote computing device via one or more networks. 5. The system of claim 1, wherein: the first packaging device includes a first module computing device configured to: receive a first signal from a port of the first packaging device, generate the object information based on the signal indicative of the object information, and send the obj ect information to the computing device.

6. The system of claim 5, wherein the first module computing device is further configured to receive a user input indicating that the first signal from the port of the first packaging device is indicative of the object information.

7. The system of claim 1, wherein: the second packaging device includes a second module computing device configured to: receive the packaging instruction from the computing device, generate a second signal that is indicative of the packaging instruction, and send the second signal to a port of the second packaging device.

8. The system of claim 7, wherein the second module computing device is further configured to receive a user input indicating that the second packaging device is configured to receive the second signal indicative of the packaging instruction via the port of the second packaging device.

9. The system of claim 1, wherein the packaging instruction includes at least one of: shipping label information, wherein the second packaging machine includes a printer configured to print the shipping label information on at least one of the package or a label; package formation information, wherein the second packaging machine includes a package formation machine configured to form the package based on the package formation information; or dunnage information, wherein the second packaging machine includes a dunnage machine configured to form dunnage for insertion into the package based on the dunnage information.

10. The system of claim 1, wherein the computing device is in communication with a remote computing device via one or more networks. 11. The system of claim 10, wherein the instructions stored on the storage medium further comprise instructions that, in response to execution by the processing device, cause the computing device to: send an indication of the object information from the first packaging machine to the remote computing device, and receive, from the remote computing device, an indication of the packaging instruction before the packaging instruction are sent to the second packaging machine.

12. The system of claim 11, wherein: the first packaging machine is configured to send the object information to the computing device using a first protocol; the remote computing device is configured to receive the indication of the object information from the computing device using a second protocol that is different from the first protocol; and the instructions stored on the storage medium further comprise instructions that, in response to execution by the processing device, cause the computing device to form the indication of the object information according to the second protocol based on the object information received from the first packaging machine in the first protocol.

13. The system of claim 12, wherein: the second packaging machine is configured to receive the packaging instruction from the computing device using the first protocol; the remote computing device is configured to send the indication of the packaging instruction to the computing device using the second protocol; and the instructions stored on the storage medium further comprise instructions that, in response to execution by the processing device, cause the computing device to form the packaging instruction according to the first protocol based on the indication of the packaging instruction received from the remote computing device in the second protocol.

14. The system of claim 12, wherein: the second packaging machine is configured to receive the packaging instruction from the computing device using a third protocol that is different from the first and second protocols; the remote computing device is configured to send the indication of the packaging instruction to the computing device using the second protocol; and the instructions stored on the storage medium further comprise instructions that, in response to execution by the processing device, cause the computing device to form the packaging instruction according to the third protocol based on the indication of the packaging instruction received from the remote computing device in the second protocol.

15. The system of claim 1, wherein the computing device is a separate device from each of the plurality of packaging machines.

16. The system of claim 1, wherein the computing device is integrally formed with one of the plurality of packaging machines.

17. The system of claim 1, wherein the first packaging machine includes one or more of a code scanning device, an imaging system, a dimensioning system, or a weighting system. 18. The system of claim 1, wherein the second packaging machine includes one or more of a box formation system, a form-fill-seal system, an automated bagging system, a dunnage formation system, a cushioning formation system, a computing device at a manual packaging station, a label printer, or a printer configured to print on the package.

19. The system of claim 1, wherein each of the plurality of packaging machines is communicatively coupled to the computing device via one or more of a Bluetooth connection, a

WiFi network, a communication bus, a serial connection, a local area network, or a cellular network.

20. A computer-readable storage medium having instructions stored thereon that are executable by a computing device, wherein the computing device is communicatively coupled to a plurality of packaging machines that includes a first packaging machine and a second packaging machine, wherein the instructions, in response to execution by the computing device, cause the computing device to: receive object information from the first packaging machine about an object to be packaged; and send a packaging instruction to a second packaging machine for forming at least a portion of a package to be used to package the object; wherein the second packaging machine is configured to form the portion of the package in response to receiving the packaging instruction.

21. The computer-readable storage medium of claim 20, wherein: the instructions that, in response to execution by the computing device, cause the computing device to receive the object information further cause the computing device to receive the object information from the first packaging machine using a first protocol; and the instructions that, in response to execution by the computing device, cause the computing device to send the packaging instruction further cause the computing device to send the packaging instruction to the second packaging machine using a second protocol that is different from the first protocol.

22. The computer-readable storage medium of claim 20, wherein: the computing device is communicatively coupled to a remote computing device via one or more networks; and the instructions further comprise instructions that, in response to execution by the computing device, cause the computing device to: send an indication of the object information from the first packaging machine to the remote computing device, and receive, from the remote computing device, an indication of the packaging instruction before the packaging instruction are sent to the second packaging machine.

23. The computer-readable storage medium of claim 22, wherein: the instructions that, in response to execution by the computing device, cause the computing device to receive the object information further cause the computing device to receive the object information from the first packaging machine using a first protocol; the instructions that, in response to execution by the computing device, cause the computing device to send the indication of the object information further cause the computing device to send the indication of the object information to the remote computing device using a second protocol that is different from the first protocol; and the instructions further comprise instructions that, in response to execution by the computing device, cause the computing device to form the indication of the object information according to the second protocol based on the object information received from the first packaging machine in the first protocol.

24. The computer-readable storage medium of claim 23, wherein: the instructions that, in response to execution by the computing device, cause the computing device to send the packaging instruction further cause the computing device to send the packaging instruction to the second packaging machine using one of the first protocol or a third protocol that is different from the first and second protocols; the instructions further comprise instructions that, in response to execution by the computing device, cause the computing device to form the packaging instruction according to the one of the first protocol or the third protocol based on the indication of the packaging instruction received from the remote computing device in the second protocol.

Description:
PACKING FACILITY AUTOMATION

SPECIFICATION

BACKGROUND

[0001] The present disclosure is in the technical field of automation in packing facilities. More particularly, the present disclosure is directed to enabling communication of between packaging machines in a packaging facility and communication between a remote server and the packaging machines in the packaging facility.

[0002] In some packaging facilities, objects are packaged and shipped to different recipients.

For example, in the e-commerce sector, goods ordered online are packaged and shipped to individual consumers. These packages must include the proper object or objects, be properly labeled for shipping, and shipped to the proper consumer. As demand increased for fast delivery of goods, such as those ordered by consumers online, packaging facilities are attempting to increase the throughput of packaging and shipping of objects. Many efforts have been attempted to increase the efficiency of packaging facilities, including improved organization of inventories in packaging facilities, increased automation of inventory delivery to packers on packaging lines, increased automation of package preparation and filling, reduced timing between receiving an order and initiating the packaging process, and the like. Further efforts continue to be made to increase the efficiency of packaging facilities.

SUMMARY

[0003] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.

[0004] In a first embodiment, a system includes a computing device located in a packaging facility and a plurality of packaging machines located in the packaging facility. The computing device includes a storage medium and a processing device. The plurality of packaging machines includes a first packaging machine and a second packaging machine. Each of the plurality of packaging machines is communicatively coupled to the computing device. The storage medium has stored thereon instructions that, in response to execution of the instructions by the processing device, cause the computing device to receive object information from the first packaging machine about an object to be packaged and send a packaging instruction to the second packaging machine for forming at least a portion of a package to be used to package the object. The second packaging machine is configured to form the portion of the package in response to receiving the packaging instruction.

[0005] In a second embodiment, the instructions stored on the storage medium further comprise instructions that, in response to execution by the processing device, cause the computing device to detect a new packaging machine at the packaging facility and initiate communication with the new packaging machine.

[0006] In a third embodiment, the instructions of the second embodiment that cause the computing device to initiate communication with the new packaging machine further cause the computing device to (i) receive an identifier of the new packaging machine from the packaging machine, (ii) determine a communication protocol of the new packaging machine based on the identifier of the new packaging machine, and (iii) establish communication with the new packaging machine using the communication protocol of the new packaging machine.

[0007] In a fourth embodiment, the instructions of the third embodiment that cause the computing device to determine the communication protocol of the new packaging machine further cause the computing device to determine that the communication protocol of the new machine was previously unknown to the computing device and obtain instructions to communicate using the communication protocol of the new machine from a remote computing device via one or more networks.

[0008] In a fifth embodiment, the first packaging device of any of the previous embodiments includes a first module computing device configured to receive a first signal from a port of the first packaging device, generate the object information based on the signal indicative of the object information, and send the object information to the computing device.

[0009] In a sixth embodiment, the first module computing device of the fifth embodiment is further configured to receive a user input indicating that the first signal from the port of the first packaging device is indicative of the object information.

[0010] In a seventh embodiment, the second packaging device of any of the previous embodiments includes a second module computing device configured to receive the packaging instruction from the computing device, generate a second signal that is indicative of the packaging instruction, and send the second signal to a port of the second packaging device.

[0011] In an eighth embodiment, the second module computing device of the eighth embodiment is further configured to receive a user input indicating that the second packaging device is configured to receive the second signal indicative of the packaging instruction via the port of the second packaging device.

[0012] In a ninth embodiment, the packaging instruction of any of the previous embodiments includes at least one of (i) shipping label information, where the second packaging machine includes a printer configured to print the shipping information on at least one of the package or a label, (ii) package formation information, where the second packaging machine includes a package formation machine configured to form the package based on the package formation information, or (iii) dunnage information, where the second packaging machine includes a dunnage machine configured to form dunnage for insertion into the package based on the dunnage information.

[0013] In a tenth embodiment, the computing device of any of the previous embodiments is in communication with a remote computing device via one or more networks. [0014] In an eleventh embodiment, the instructions of the stored on the storage medium of the tenth embodiment further comprise instructions that, in response to execution by the processing device, cause the computing device to send an indication of the object information from the first packaging machine to the remote computing device and receive, from the remote computing device, an indication of the packaging instruction before the packaging instruction are sent to the second packaging machine.

[0015] In a twelfth embodiment, the system of the eleventh embodiment is configured such that (i) the first packaging machine is configured to send the object information to the computing device using a first protocol; (ii) the remote computing device is configured to receive the indication of the object information from the computing device using a second protocol that is different from the first protocol; and (iii) the instructions stored on the storage medium further comprise instructions that, in response to execution by the processing device, cause the computing device to form the indication of the object information according to the second protocol based on the object information received from the first packaging machine in the first protocol.

[0016] In a thirteenth embodiment, the system of the twelfth embodiment is configured such that (i) the second packaging machine is configured to receive the packaging instruction from the computing device using the first protocol; (ii) the remote computing device is configured to send the indication of the packaging instruction to the computing device using the second protocol; and (iii) the instructions stored on the storage medium further comprise instructions that, in response to execution by the processing device, cause the computing device to form the packaging instruction according to the first protocol based on the indication of the packaging instruction received from the remote computing device in the second protocol.

[0017] In a fourteenth embodiment, the system of the twelfth embodiment is configured such that (i) the second packaging machine is configured to receive the packaging instruction from the computing device using a third protocol that is different from the first and second protocols; (ii) the remote computing device is configured to send the indication of the packaging instruction to the computing device using the second protocol; and (iii) the instructions stored on the storage medium further comprise instructions that, in response to execution by the processing device, cause the computing device to form the packaging instruction according to the third protocol based on the indication of the packaging instruction received from the remote computing device in the second protocol.

[0018] In a fifteenth embodiment, the computing device of any of the previous embodiments is a separate device from each of the plurality of packaging machines.

[0019] In a sixteenth embodiment, the computing device of any of the first to fourteenth embodiments is integrally formed with one of the plurality of packaging machines.

[0020] In a seventeenth embodiment, the first packaging machine of any of the previous embodiments includes one or more of a code scanning device, an imaging system, a dimensioning system, or a weighting system.

[0021] In an eighteenth embodiment, the second packaging machine of any of the previous embodiments includes one or more of a box formation system, a form-fill-seal system, an automated bagging system, a dunnage formation system, a cushioning formation system, a computing device at a manual packaging station, a label printer, or a printer configured to print on the package.

[0022] In a nineteenth embodiment, each of the plurality of packaging machines of any of the previous embodiments is communicatively coupled to the computing device via one or more of a Bluetooth connection, a WiFi network, a communication bus, a serial connection, a local area network, or a cellular network.

[0023] In a twentieth embodiment, a computer-readable storage medium has instructions stored thereon that are executable by a computing device. The computing device is communicatively coupled to a plurality of packaging machines that includes a first packaging machine and a second packaging machine. The instructions, in response to execution by the computing device, cause the computing device to receive object information from the first packaging machine about an object to be packaged and send a packaging instruction to a second packaging machine for forming at least a portion of a package to be used to package the object. The second packaging machine is configured to form the portion of the package in response to receiving the packaging instruction. [0024] In a twenty first embodiment, the computer-readable storage medium of the twentieth embodiment is configured such that (i) the instructions that, in response to execution by the computing device, cause the computing device to receive the object information further cause the computing device to receive the object information from the first packaging machine using a first protocol; and (ii) the instructions that, in response to execution by the computing device, cause the computing device to send the packaging instruction further cause the computing device to send the packaging instruction to the second packaging machine using a second protocol that is different from the first protocol.

[0025] In a twenty second embodiment, the computing device of any of the twentieth to twenty first embodiments is communicatively coupled to a remote computing device via one or more networks, the instructions further comprise instructions that, in response to execution by the computing device, cause the computing device to send an indication of the object information from the first packaging machine to the remote computing device and receive, from the remote computing device, an indication of the packaging instruction before the packaging instruction are sent to the second packaging machine.

[0026] In a twenty third embodiment, the computer-readable storage medium of the twenty second embodiment is configured such that (i) the instructions that, in response to execution by the computing device, cause the computing device to receive the object information further cause the computing device to receive the object information from the first packaging machine using a first protocol; (ii) the instructions that, in response to execution by the computing device, cause the computing device to send the indication of the object information further cause the computing device to send the indication of the object information to the remote computing device using a second protocol that is different from the first protocol; and (iii) the instructions further comprise instructions that, in response to execution by the computing device, cause the computing device to form the indication of the object information according to the second protocol based on the object information received from the first packaging machine in the first protocol.

[0027] In a twenty fourth embodiment, the computer-readable storage medium of the twenty third embodiment is configured such that (i) the instructions that, in response to execution by the computing device, cause the computing device to send the packaging instruction further cause the computing device to send the packaging instruction to the second packaging machine using one of the first protocol or a third protocol that is different from the first and second protocols, and (ii) the instructions further comprise instructions that, in response to execution by the computing device, cause the computing device to form the packaging instruction according to the one of the first protocol or the third protocol based on the indication of the packaging instruction received from the remote computing device in the second protocol.

BRIEF DESCRIPTION OF THE DRAWING

[0028] The foregoing aspects and many of the attendant advantages of the disclosed subject matter will become more readily appreciated as the same become better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:

[0029] Fig. 1 depicts an embodiment of a packaging facility;

[0030] Fig. 2 depicts a difficulty in concerted action between the different packaging machines in the packaging facility shown in Fig. 1;

[0031] Fig. 3 depicts an embodiment of the packaging facility that includes a computing device configured to facilitate communication between the packaging machines in the packaging facility, in accordance with the embodiments described herein;

[0032] Fig. 4 depicts another embodiment of the packaging facility with the computing device that facilitates communication between the packaging machines in the packaging facility, in accordance with the embodiments described herein;

[0033] Fig. 5 depicts an embodiment of a method that can be performed in a system that includes the computing device and the packaging machines, in accordance with the embodiments described herein;

[0034] Fig. 6 depicts an embodiment of the packaging facility when an additional packaging machine has been provisioned, in accordance with the embodiments described herein; [0035] Fig. 7 depicts an embodiment of a method of enabling communication between the computing device and the packaging machine as the packaging machine is being provisioned to operate in the packaging facility, in accordance with the embodiments described herein;

[0036] Fig. 8A depicts a system that includes a packaging machine and a computing device, where the packaging machine is not capable of communicating with the computing device, in accordance with the embodiments described herein;

[0037] Figs. 8B to 8D depict embodiments of a system where a module computing device enables communication between the packaging machine and the computing device, in accordance with the embodiments described herein;

[0038] Figs. 9A and 9B depict embodiments of methods of provisioning module computing devices to enable communication between a computing device and a packaging machine, in accordance with the embodiments described herein;

[0039] Fig. 10 depicts and embodiment of a method of using the module computing devices and for the computing device to communicate with the packaging machines, in accordance with the embodiments described herein;

[0040] Fig. 11 depicts an embodiment of a system that includes a packaging facility and a remote computing device, where a computing device in the packaging facility is configured to communicate with the remote computing device, in accordance with the embodiments described herein;

[0041] Fig. 12A depicts an embodiment of a method of the computing device communicating with the remote computing device to enable functionality in the packaging facility, in accordance with the embodiments described herein;

[0042] Fig. 12B depicts an embodiment of a method of both the computing device and the remote computing device providing functionality for the packaging machines in the packaging facility, in accordance with the embodiments described herein;

[0043] Fig. 13 depicts an example embodiment of a system that may be used to implement some or all of the embodiments described herein; and [0044] Fig. 14 depicts a block diagram of an embodiment of a computing device, in accordance with the embodiments described herein.

DETAILED DESCRIPTION

[0045] Fig. 1 depicts an embodiment of a packaging facility 10. In some embodiments, the packaging facility 10 is any facility where objects are packaged for shipment. For example, the packaging facility 10 can be a warehouse, a distribution center, a retail facility from which products are shipped, a manufacturing plant from which manufactured items are packaged for shipment, or any other type of packaging facility. A packaging facility can include a single building, a portion of a single building, multiple buildings in proximity with each other, or any other type of configuration.

[0046] Many packaging facilities include a packaging machine to aid in packaging objects in packages. As used herein, the term “object” includes a single item, multiple items of the same type, multiple items of a variety of types, or any other set of a single item or multiple items. In some embodiments, packaging machines can include machines that form outer packages, such as form-fill-seal machines that form and seal bags around objects (e.g., FLOWRAP automated mailer systems produced by Shanklin Corporation of Ayer, MA, and PRIORITYP AK automated packaging system produced by Sealed Air Corporation of Charlotte, NC), boxing machines that form and close boxes (e.g., cardboard boxes) around objects (e.g., ULTIPACK, E-CUBE, and I- PACK boxing systems produced by B+ Equipment of Gemenos, France), bagging machines that fill bags with objects and close the bags for shipping (e.g., AUTOBAG bagging systems produced by Automated Packaging Systems of Streetsboro, OH), and the like. In some embodiments, packaging machines can include machines that form void fill and/or cushioning material used to package objects in shipping containers, such as inflation machined for inflatable air cellular material (e.g., NEW AIR I.B.® inflatable cushioning and FILL-AIR® inflatable void fill produced by Sealed Air Corporation of Charlotte, NC), foam-in-bag machines (e.g.,

SPEED YP ACKER® and INSTAPACK QUICK® foam in bag systems produced by Sealed Air Corporation of Charlotte, NC), paper dunnage conversion machines (e.g., FASFIL® paper void fill systems produced by Sealed Air Corporation of Charlotte, NC), and the like. In some embodiments, packaging machines can include dimensioning systems that determine physical characteristics (e.g., height, width, length, weight, etc.) of objects and/or packages. In some embodiments, packaging machines can include scanning devices (e.g., barcode scanners, QR code scanners, cameras, etc.), user interface devices (e.g., mobile computing devices, tablet computing devices, laptop computing devices, etc.), conveyance devices (e.g., conveyor belts, rollers, etc.), printers (e.g., printers that print on labels, printers that print on packages, etc.), and the like.

[0047] In many cases, packaging facilities have multiple different types of packaging machines. For example, a packaging facility may include a form-fill-seal machine to package certain types of objects in flexible mailers and a boxing machine to package other types of objects in boxes.

In the depicted embodiment in Fig. 1, the packaging facility 10 includes a number of packaging machines 12, 14, 16, 18, and 20. In the depicted embodiment, the packaging machine 12 is a dimensioning system, the packaging machine 14 is a horizontal form-fill-seal system, the packaging machine 16 is a boxing machine, the packaging machine 18 is a bagging machine, and the packaging machine 20 is a foam-in-bag machine. Each of these machines may include a computing device (e.g., a controller, a tablet computing device, etc.) that controls at least some of the operation of the machine. In addition, the packaging facility 10 includes a manual packing station 22 at which a user places objects into shipping containers (e.g., boxes, envelopes, padded mailers, etc.). In the depicted embodiment, the manual packing station 22 includes packaging machine 24. In the depicted embodiment, the packaging machines include a computing device and a barcode scanner. In other embodiments, the packaging machines 12, 14, 16, 18, 20, and 24 can include any other packaging machines that are usable to aid in the packing of objects.

[0048] In some cases, different types of packaging machines can operate in concert to package objects. In one example, a dimensioning machine may determine one or more characteristics of the object to be packaged and communicate the dimension information to a machine that will form an exterior package (e.g., a mailer, a box, etc.). In another example, a scanning device may scan an identifier on an object (e.g., a barcode) and control a routing system so that the object is delivered to one a particular type of packaging machine based on how the object will be packaged. In another example, a dimensioning machine may determine one or more aspects of the size of the object to be packaged and send a signal to a void fill machine that enables the void fill machine to produce an amount of void fill for inclusion with the object in an exterior package. It will be understood that the different types of packaging machines in a packing facility may work in concert in any number of other ways to package objects for shipping.

[0049] Fig. 2 depicts one of the difficulties in concerted action between the different packaging machines in the packaging facility. In Fig. 2, each of the packaging machines 12, 14, 16, 18, 20, and 24 is communication with each of the other ones of the packaging machines 12, 14, 16, 18, 20, and 24 via an independent connection. Such connections may be made by a direct wired connection (e.g., a serial communication connection) or a wireless connection (e.g., a Bluetooth connection). These communication connections allow the packaging machines 12, 14, 16, 18,

20, and 24 to communicate with each other. However, these communication connections can be difficult to provision and maintain. For example, the various packaging machines 12, 14, 16, 18, 20, and 24 in the packaging facility 10 may not be designed to communicate with each other. In one example, some of the packaging machines may not be configured to communicate with any other machines without some modification (e.g., adding Bluetooth communication capabilities, WiFi communication capabilities, etc.). In another example, packaging machines made by different manufacturers may not be capable of commutating with each other without some type of modification. When direct communication connections are established between each pair of the packaging machines 12, 14, 16, 18, 20, and 24 in the packaging facility 10, each communication connection between one pair of the packaging machines 12, 14, 16, 18, 20, and 24 may be different from every other pair of the packaging machines 12, 14, 16, 18, 20, and 24. Provisioning a large number of unique communication connections, and then ensuring that such communication connections remain active, can be a time-consuming challenge for technicians.

[0050] Fig. 3 depicts an embodiment of the packaging facility 10 that includes a computing device 26 configured to facilitate communication between the packaging machines 12, 14, 16,

18, 20, and 24 in the packaging facility 10. The computing device 26 may be any type of computing device configured to communicate with the packaging machines 12, 14, 16, 18, 20, and 24. In some embodiments, the computing device 26 may be at least one of a server, a group of servers, a desktop computing device, a single-board computing device, or any other type of computing device. In the depicted embodiment, the computing device 26 is a separate device from each of the plurality of packaging machines 12, 14, 16, 18, 20, and 24. In other embodiments, the computing device 26 may be integrally formed with one of the packaging machines 12, 14, 16, 18, 20, and 24, such as a computing device manufactured into and configured to control the one of the packaging machines 12, 14, 16, 18, 20, and 24.

[0051] In the embodiment depicted in Fig. 3, the packaging facility 10 includes a communication bus 28. The computing device 26 is communicatively coupled to the communication bus 28 and the computing device 26 is configured to read data from and write data to the communication bus 28. Each of the packaging machines 12, 14, 16, 18, 20, and 24 is also communicatively coupled to the communication bus 28. The packaging machines 12, 14, 16, 18, 20, and 24 are configured to read data from and write data to the communication bus 28. As shown by the dashed lines in Fig. 3, each of the packaging machines 12, 14, 16, 18, 20, and 24 is configured to independently communicate with the computing device 26 via the communication bus 28. As described in greater detail below, the computing device 26 is capable of facilitating communication between the packaging machines 12, 14, 16, 18, 20, and 24. In this way, a single communication connection for each of the packaging machines 12, 14, 16, 18, 20, and 24 is sufficient to enable communication between any pair of the packaging machines 12, 14, 16, 18, 20, and 24 via the computing device 26. The lower number of communication connections in the packaging facility 10 shown in Fig. 3, as compared with the embodiment shown in Fig. 2, greatly reduces the burden on technicians for provisioning and maintaining the communication connections in the packaging facility 10.

[0052] Fig. 4 depicts another embodiment of the packaging facility 10 with the computing device 26 that facilitates communication between the packaging machines 12, 14, 16, 18, 20, and 24 in the packaging facility 10. In the depicted embodiment, the packaging facility includes a communication network 30. Each of the computing device 26 and the packaging machines 12, 14, 16, 18, 20, and 24 is communicatively coupled to the network 30. In some embodiments, the network 30 is a wired network, such as an ethemet-based network. In other embodiments, the network 30 is a wireless network, such as a WiFi network. The network 30 is configured to facilitate communication between the computing device 26 and each of the packaging machines 12, 14, 16, 18, 20, and 24. As shown by the dashed lines in Fig. 4, each of the packaging machines 12, 14, 16, 18, 20, and 24 is configured to independently communicate with the computing device 26 via the network 30. In this way, a single communication connection for each of the packaging machines 12, 14, 16, 18, 20, and 24 is sufficient to enable communication between any pair of the packaging machines 12, 14, 16, 18, 20, and 24 via the computing device 26. The lower number of communication connections in the packaging facility 10 shown in Fig. 4, as compared with the embodiment shown in Fig. 2, greatly reduces the burden on technicians for provisioning and maintaining the communication connections in the packaging facility 10.

[0053] The embodiments of the packaging facility 10 in Figs. 3 and 4 are examples of ways in which the computing device 26 can communicate with each of the packaging machines 12, 14,

16, 18, 20, and 24. It will be apparent that the computing device 26 can communicate with each of the packaging machines 12, 14, 16, 18, 20, and 24 using any number of other types of communication. In one example, the computing device 26 can be wirelessly coupled to each of the packaging machines 12, 14, 16, 18, 20, and 24 via a direct wireless connection, such as via a Bluetooth connection. In another example, the computing device 26 can be communicatively coupled to each of the packaging machines 12, 14, 16, 18, 20, and 24 via a direct wired connection, such as via a wired serial connection (e.g., a USB connection). In the remainder of this disclosure, the communications between computing devices and packaging machines is described as being accomplished via a network. It will be understood that the description of a network is merely an example of a form of communication and that, for each of the embodiments described herein, any other form of communication could be used in place of the network to facilitate communication between a computing device and a packaging machine.

[0054] As noted above, the computing device 26 can facilitate communication between any pair of the packaging machines 12, 14, 16, 18, 20, and 24. Fig. 5 depicts an embodiment of a method 40 that can be performed in a system 32 that includes the computing device 26 and the packaging machines 12 and 16. At block 42, the packaging machine 12 determines object data about an object. In some embodiments, the object data includes an identifier of the object (e.g., a SKU) and the packaging machine 12 includes a scanner (e.g., a barcode scanner, a camera, etc.) configured to read the identifier of the object. In some embodiments, the object data includes one or more characteristics about the object (e.g., a height, a length, a width, a weight, etc.) and the packaging machine 12 includes a dimensioning device configured to measure the one or more characteristics. At block 44, the packaging machine 12 sends object information to the computing device 26 via the network 30. In some embodiments, the object information includes the object data or the object information is based on the object data.

[0055] At block 46, the computing device 26 receives the object information from the packaging machine 12 via the network 30. At block 48, the computing device 26 generates a packaging instruction based on the object information received from the packaging machine 12. In some embodiments, generating the packaging instruction by the computing device 26 includes looking up the packing instructions for the object information in a database (e.g., a lookup table). In some embodiments, generating the packaging instruction by the computing device 26 includes determining one or more packaging machines that will create at least a portion of a shipping container for the object. In some embodiments, generating the packaging instruction by the computing device 26 includes determining one or more characteristics of a shipping container for the object, such as one or more of a material of the shipping container, a size of the shipping container, a type of cushioning or void fill to include in the shipping container, an amount of cushioning or void fill to include in the shipping container, or any other aspect of the shipping container. In some embodiments, generating the packaging instruction by the computing device 26 includes determining shipping information, such as a shipping method, a shipping rate, a shipping label, or any other type of shipping information. After the computing device generates the packaging instruction, the computing device 26 sends the packaging instruction to the packaging machine 16 via the network 30.

[0056] At block 52, the packaging machine 16 receives the packaging instruction from the computing device 26 via the network 30. At block 54, the packaging machine 16 forms at least a portion of a package for the object based on the packaging instruction. In the depicted embodiment, the packaging machine 16 includes a boxing machine and the packaging machine 16 may form a box for the object based on the packaging instruction received from the computing device 26. In other embodiments, the packaging machine 16 may be any other type of packaging machine. In some examples, the packaging machine 16 includes a packaging machine that forms the shipping container (e.g., a boxing machine, a form-fill-seal machine, a bagging machine, etc.), the packaging instruction includes package formation information, and the portion of the package formed by the packaging machine 16 may include the package formed based on the package formation information. In some embodiments, the packaging machine 16 includes a packaging machine that forms dunnage to be placed in a shipping container, the packaging instruction includes dunnage information, and the portion of the package formed by the packaging machine 16 may include dunnage for insertion into the package based on the dunnage information. In some examples, the packaging machine 16 includes a printer, the packaging instruction includes shipping label information, and the portion of the package formed by the packaging machine 16 may include a shipping label printed by the printer on the shipping container and/or on a label that can be adhered to the shipping container.

[0057] One of the benefits of the method 40 used in the system 32 is that the packaging machines 12 and 16 do not need to be able to communicate with each other directly. For example, the packaging machine 12 may be configured to communicate using one protocol and the packaging machine 16 may be configured to communicate using a different protocol. In this case, rather than configuring one of the packaging machines 12 and 16 to communicate in a different protocol, the computing device 26 can communicate with each of the packaging machines 12 and 16 in their native communication protocols. In some embodiments, the computing device 26 is more easily configurable than the packaging machines 12 and 16 to communicate in different protocols, which saves time and effort in establishing communication between the packaging machines 12 and 16.

[0058] Another benefit to the method 40 used in the system 32 is that the computing device 26 can add functionality that is not included on either of the packaging machines 12 and 16. In the depicted embodiment, the computing device 26 generates the packaging instruction for the packaging machine 16 based on the object information determined by the packaging machine 12. In this way, the packaging machines 12 and 16 do not need to be configured to generate the packaging instructions in order for the system 32 to be able to provide the functionality of generating the packaging instructions. In some embodiments, the computing device 26 is more easily configurable (e.g., programmable, capable of having hardware added, etc.) than the packaging machines 12 and 16, and configuring the computing device 26 to generate the packaging instruction may be easier than configuring either of the packaging machines 12 and 16 to generate the packaging instruction.

[0059] In some embodiments, the computing device 26 can provide additional functionality beyond the functionality shown in Fig. 5. For example, upon receiving the object information from the packaging machine 12, the computing device 26 can estimate final dimensions of the package for the object. If the object information includes sufficient information about the object, the computing device 26 may be able to estimate final dimensions of the package sufficiently accurately to search for shipping rates. For example, if the computing device 26 has accurate estimates of the weight of the final package (including the object) and the dimensions of the final package, the computing device can search for shipping rates among different carriers based on the actual weight and/or dimensional weight of the final package that will be created for the object (sometimes called “rate shopping”). In this way, the computing device 26 can send the packaging instructions to the packaging machine 16 that includes package formation information to make the package and shipping label information to print a shipping label with the lowest shipping rate. Additional embodiments of functionality that can be provided by the computing device 26 are discussed below.

[0060] One embodiment of functionality that can be provided by the computing device 26 is the provisioning of additional packaging machines. Fig. 6 depicts an embodiment of the packaging facility 10 when an additional packaging machine has been provisioned. In Fig. 6, a packaging machine 34 has been added to the packaging facility 10. In the depicted embodiment, the packaging machine 34 is in the form of an air cellular inflation machine. In other embodiments, the packaging machine 34 may be any other type of packaging machine. In the depicted embodiment, the packaging machine 34 has been communicatively coupled to the network 30.

[0061] Fig. 7 depicts an embodiment of a method 60 of enabling communication between the computing device 26 and the packaging machine 34 as the packaging machine 34 is being provisioned to operate in the packaging facility 10. At block 62, the packaging machine 34 is communicatively coupled to the network 30. In some embodiments, communicatively coupling the packaging machine 34 to the network 30 can include connecting the packaging machine 34 to a wired network (e.g. an ethemet network), connecting the packaging machine 34 to a wireless network (e.g., a WiFi network), or any other form of communicatively coupling the packaging machine 34 to the network 30. In some embodiments, once the packaging machine 34 is communicatively coupled to the network 30, the computing device 26 may, at block 64, detect the presence of the packaging machine 34 on the network 30.

[0062] At block 66, the packaging machine 34 can determine or receive an identifier of the packaging machine 34. In some embodiments, the identifier of the packaging machine 34 is a serial number of the packaging machine 34, any other unique identifier of the packaging machine 34, a model number of the packaging machine 34, a SKU of the packaging machine 34, any other type of identifier of the packaging machine 34, or any combination thereof. In some embodiments, the identifier of the packaging machine 34 is stored in memory on the packaging machine 34 and the packaging machine 34 is able to determine the identifier of the packaging machine 34 by looking up the identifier in memory. In some embodiments, the identifier of the packaging machine 34 is provided to the packaging machine 34, such as a user inputting the identifier to the packaging machine 34 as a user input. At block 68, the identifier of the packaging machine 34 is sent to the computing device 26. In the depicted embodiment, the packaging machine 34 sends the identifier of the packaging machine 34 to the computing device 26 via the network 30. In other embodiments, the identifier of the packaging machine 34 may be provided to the computing device 26 in other ways, such as a user inputting the identifier of the packaging machine 34 to the computing device 26, another computing device (e.g., a user’s mobile computing device) sending the identifier of the packaging machine 34 to the computing device 26, or any other method.

[0063] At block 70, the computing device 26 receives the identifier of the packaging machine 34. In the depicted embodiment, the computing device 26 receives the identifier of the packaging machine 34 from the packaging machine 34 via the network 30. In other embodiments, the computing device 26 receives the identifier of the packaging machine 34 from another source (e.g., a user input, a mobile computing device of a user, etc.). At block 72, the computing device 26 determines a communication protocol of the computing device 34. In some embodiments, the computing device 26 includes a lookup table and the computing device 26 is configured to look up the communication protocol in the lookup table based on the identifier of the packaging machine 34. In other cases, the computing device 26 can communicate with a remote computing device (e.g., a “cloud” server accessible via the internet) to determine the communication protocol of the packaging machine 34.

[0064] When the computing device 26 identifies the communication protocol, the communication protocol of the packaging machine 34 may or may not be known to the computing device 26. In the case where the communication protocol of the packaging machine 34 is not known to the computing device 26, then, at block 74, the computing device 26 can obtain instructions for communicating using the communication protocol of the packaging machine 34. In some embodiments, the computing device 26 can communicate with a remote computing device (e.g., a server accessible via the internet) to obtain instructions for communicating using the communication protocol of the packaging machine 34.

[0065] Whether the communication protocol was previously known to the computing device 26 or the computing device 26 obtained instructions for communicating using the communication protocol of the packaging machine 34 at block 74, the computing device 26 sends a communication, at block 76, to the packaging machine 34 using the communication protocol via the network 30. At block 78, the packaging machine 34 receives the communication from the computing device 26 via the network 30. In this way, the computing device 26 can initiate communication with the packaging machine 34 using the communication protocol of the packaging machine 34. At that point, the packaging machine 34 and the computing device 26 can communicate in similar ways to any of the other embodiments of communication between a computing device and a packaging machine described herein. In some embodiments, the communication between the packaging machine 34 and the computing device 26 can be initiated automatically without user input (e.g., when the packaging machine 34 determines the identifier) or with minimal user input (e.g., when the user inputs the identifier to the packaging machine 34 and/or the computing device 26).

[0066] One difficulty with establishing a communication system similar to the embodiments of communication system described above is that not all existing packaging machines are capable of communicating with computing devices without some modification. For example, existing packaging machines may not be capable of connecting to a WiFi network or communicating with a computing device via Bluetooth. It may be possible to add communication hardware to existing packaging machines (e.g., a Bluetooth communication card). However, adding such communication hardware can be difficult and time-consuming. Fig. 8A depicts a system that includes a packaging machine 120 and a computing device 126, where the packaging machine 120 alone is not capable of communicating with the computing device 126. In the depicted embodiment, the computing device 126 is communicatively coupled to the network 130. However, the packaging machine 120 is not capable of connecting to the network 130. For example, in the case where the network 130 is a WiFi network, the packaging machine 120 may not have WiFi communication capabilities.

[0067] In some embodiments, a module computing device can be coupled to a packaging machine to enable communication between the packaging machine and a computing device. Depicted in Figs. 8B to 8D are embodiments of a system where a module computing device enables communication between the packaging machine and the computing device. In Fig. 8B, a module computing device 121 is coupled to the packaging machine 120. In some embodiments, the module computing device is a single-card computing device (e.g., a RASPBERRY PI computing device produced by Raspberry Pi Foundation of Cambridge, UK) or any other type of computing device. In some embodiments, the module computing device 121 is directly coupled (e.g., via an electrical connection) to a port of the module computing device 121. The port may provide a signal indicative of information from the packaging machine 120 and/or the port may be configured to receive a signal for controlling the packaging machine 120. The module computing device is also capable of connecting to the network 130. In the depicted embodiment, the module computing device 121 is communicatively coupled to the network 130. In the depicted embodiment, the module computing device 121 enables communication between the port of the packaging machine 120 and the computing device 126.

[0068] The module computing device 121 is capable of being used in combination with any type of packaging machine. This versatility also means that the module computing device 121 may not be preconfigured to write any particular type of data to and/or read any particular type of data from the port of the packaging machine 120. In some embodiments, when a user connects the module computing device 121 to the packaging machine 120, the user may configure the module computing device 121 to write any particular type of data to and/or read any particular type of data from the port of the packaging machine 120. In particular, in some embodiments, the module computing device 121 is configured to receive a user input indicating that a signal from the port of the packaging device 120 is indicative of particular information and/or a user input indicating that the packaging device 120 is configured to receive a signal indicative of particular information via the port.

[0069] Fig. 8C depicts an embodiment of providing a user input to the module computing device 121. In the depicted embodiment, a mobile computing device 136 is communicatively coupled to the module computing device 121. In some embodiments, the mobile computing device 136 and the module computing device 121 are communicatively coupled via a short-range wireless communication connection, such as a Bluetooth connection, a near field communication (NFC) connection, and the like. With the mobile computing device 136 communicatively coupled to the module computing device 121, a user can provide a user input to the mobile computing device 136 that is then communicated to the module computing device 121. The user input can configure the module computing device 121 to read particular data from and/or write particular data to the port of the packaging machine 120. In this way, the user can use the mobile computing device 136 to configure or program the module computing device 121 for enabling communication between the packaging machine 120 the computing device 126.

[0070] In the embodiments shown in Figs. 8B and 8C, the module computing device 121 is located outside of the packaging machine 120. In some cases, a cord or wire can communicatively couple the module computing device 121 outside of the module computing device 121 to a port inside of the module computing device 121. In some embodiments, the module computing device 121 can be located inside of the packaging machine 120. Fig. 8D depicts an embodiment of the module computing device 121 located inside of the packaging machine 120. In some embodiments, the module computing device 121 can be placed in a housing of the packaging machine 120 that houses the port to which the module computing device 121 is coupled. As shown in the depiction in Fig. 8D, the mobile computing device 136 can be communicatively coupled to the module computing device 121 inside of the packaging machine 120 such that the module computing device 121 can be configured after the module computing device 121 is inside of the packaging machine 120.

[0071] Figs. 9A and 9B depict embodiments of methods of provisioning module computing devices to enable communication between a computing device and a packaging machine. Fig.

9A depicts a system 132 that includes the computing device 126, the network 130, a packaging machine 112, and a module computing device 113. Fig. 9A also depicts an embodiment of a method 140 of provisioning the module computing device 113 to enable communication between the computing device 126 and the packaging machine 112. In the depicted embodiment, the method 140 is performed with the aid of the mobile computing device 136.

[0072] In the method 140, at block 142, the module computing device 113 is connected to a port of the packaging machine 112. The connection of the module computing device 113 to the port of the packaging machine 112 may be a physical (e.g., wired) connection or a wireless connection. In the depicted embodiment, the mobile computing device 136 is communicatively coupled to the module computing device 113 via a wireless connection. At block 144, the mobile computing device 136 receives a user input indicating a type of signal that the module computing device 113 can read from the port of the packaging machine 112. For example, the user input can indicate that the module computing device 113 can read a signal indicative of object data from the port of the packaging machine 112. At block 146, the mobile computing device 136 sends, to the module computing device 113, instructions about the type of signal that the module computing device 113 can read from the port of the packaging machine 112. At block 148, the module computing device 113 receives the instructions about the type of signal that the module computing device 113 can read from the port of the packaging machine 112. After the module computing device 113 has received the instructions, the module computing device 113 can read data from the port of the packaging machine 112 based on the instructions.

[0073] At block 150, the packaging machine 112 determines object data. At block 152, the packaging machine 112 writes an object data signal to the port. The object data signal is indicative of the object data determined by the packaging machine 112. In some embodiments, the packaging machine 112 is configured to automatically write the object data signal to the port in response to determining the object data. In other embodiments, the data determined by the packaging machine 112 can be any other type of data other than object data.

[0074] At block 154, the module computing device 113 reads the object data signal from the port of the packaging machine 112. In some embodiments, module computing device 113 reads the object data signal from the port via a wired or wireless connection between the module computing device 113 and the packaging machine 112. At block 156, the module computing device 113 generates object information based on the object data signal read from the port of the packaging machine 112. At block 158, the module computing device 113 sends the object information from the computing device 126 via the network 130. In some embodiments, the module computing device 113 is configured to automatically generate the object information at block 156 and send the object information at block 158 in response to reading the object data signal from the port at block 154. At block 159, the computing device 126 receives the object information from the module computing device 113 via the network 130. The computing device 126 can perform any type of function using the object information received from the module computing device 113.

[0075] Fig. 9B depicts the system 132 that includes the computing device 126, the network 130, the packaging machine 120, and the module computing device 121. Fig. 9B also depicts an embodiment of a method 140 of provisioning the module computing device 121 to enable communication between the computing device 126 and the packaging machine 120. In the depicted embodiment, the method 160 is performed with the aid of the mobile computing device 136.

[0076] In the method 160, at block 162, the module computing device 121 is connected to a port of the packaging machine 120. The connection of the module computing device 121 to the port of the packaging machine 120 may be a physical (e.g., wired) connection or a wireless connection. In the depicted embodiment, the mobile computing device 136 is communicatively coupled to the module computing device 121 via a wireless connection. At block 164, the mobile computing device 136 receives a user input indicating a type of signal that the module computing device 121 can write to the port of the packaging machine 120. For example, the user input can indicate that the module computing device 121 can write a signal indicative of packaging instructions to the port of the packaging machine 120. At block 166, the mobile computing device 136 sends, to the module computing device 121, instructions about the type of signal that the module computing device 121 can write to the port of the packaging machine 120. At block 168, the module computing device 121 receives the instructions about the type of signal that the module computing device 121 can write to the port of the packaging machine 120. After the module computing device 121 has received the instructions, the module computing device 121 can write data to the port of the packaging machine 120 based on the instructions.

[0077] At block 170, the computing device 126 generates a packaging instruction for the packaging machine 120. In some embodiments, the computing device 126 generates the packaging instruction based on object data received from another packaging machine. At step 172, the computing device 126 sends the packaging instruction to the module computing device 121 via the network 130. At block 174, the module computing device 121 receives the packaging instruction via the network 130. At block 176, the module computing device 121 generates a signal indicative of the packaging instruction. At block 178, the module computing device 121 writes the signal indicative of the packaging instruction to the port of the packaging machine 120. In some embodiments, the module computing device 121 writes the signal indicative of the packaging instruction to the port of the packaging machine 120 via a wired or wireless connection between the module computing device 121 and the packaging machine 120. In some embodiments, the module computing device 121 is configured to automatically generate the signal indicative of the packaging instruction at block 176 and write the signal indicative of the packaging instruction to the port at block 178 in response to receiving the packaging instruction from the computing device 126.

[0078] At block 180, the packaging machine 120 reads the signal indicative of the packaging instruction from the port. At block 182, the packaging machine 120 forms a portion of a package for an object based on the signal indicative of the packaging instruction read from the port. In some embodiments, the packaging machine 120 is configured to automatically form the portion of the package in response to reading the signal indicative of the packaging instruction read from the port. While the computing device 126 sends a packaging instruction to the module computing device 121 and the module computing device 121 writes the signal indicative of the packaging instruction to the port in the depicted embodiment, the computing device 126 can send any type of information to the module computing device 121 and the module computing device can write a signal indicative of that information to the port of the packaging machine 120.

[0079] In some embodiments, a system can use multiple module computing devices for communication between a computing device and packaging machines. Fig. 10 depicts and embodiment of a method 190 of using the module computing devices 113 and 121 for the computing device 126 to communicate with the packaging machines 112 and 120. While the depicted embodiment shows some steps of the method performed below both the packaging machine 112 and the module computing device 113, those steps of the method are performed by the module computing device 113 in the embodiment of the method 190. Similarly, while the depicted embodiment shows some steps of the method performed below both the packaging machine 120 and the module computing device 121, those steps of the method are performed by the module computing device 121 in the embodiment of the method 190. The method 190 includes steps that are similar to some of the steps from each of the methods 140 and 160.

Where the steps of the method 190 are similar to the some of the steps from each of the methods 140 and 160, the same reference number has been used in the depicted embodiment to identify those steps.

[0080] At block 154, the module computing device 113 reads a signal from a port of the packaging machine 112. At block 158, the module computing device 113 sends object information to the computing device 126 via the network 130. In the depicted embodiment, the object information is based on the signal read from the port of the packaging machine 112. At block 159, the computing device 126 receives the object information from the module computing device 113 via the network. At block 170, the computing device 126 generates a packaging instruction based on the object information received from the module computing device 113. In some embodiments, the computing device 126 generates the packaging instruction for the packaging machine 126 to be able to execute the packaging instruction. At block 172, the computing device 126 sends the packaging instruction to the module computing device 121 via the network 130. At block 174, the module computing device 121 receives the packaging instruction from the computing device 126 via the network 130. At block 176, the module computing device 121 generates a signal indicative of the packaging instruction. At block 178, the module computing device 121 writes the signal indicative of the packaging instruction to the port of the packaging machine 120. After the packaging machine 120 receives the packaging instruction, the packaging machine 120 can form a part of a package for the object.

[0081] In embodiments discussed herein, a computing device in a packaging facility can facilitate communication between packaging machines. The computing device can also add functionality that is not otherwise provided by the packaging machines. For example, as described in a number of embodiments above, the computing device can generate packaging instructions for one packaging machine based on object data obtained by another packaging machine. In addition to the computing device providing additional functionality itself, the computing device may be able to provide additional functionality by serving as an intermediary between packaging machines and remote computing devices that are not in the packaging facility. As example of such a computing device is depicted in Fig. 11.

[0082] Fig. 11 depicts an embodiment of a system 200 that includes a packaging facility 210 and a remote computing device 236, where a computing device 226 in the packaging facility 210 is configured to communicate with the remote computing device 236. The packaging facility 210 includes packaging machines 212, 214, 216, 218, 220, and 224. In the depicted embodiment, the packaging machines 224 are located at a manual packing station 222. The packaging facility 210 include a network 230 to which each of the packaging machines 212, 214, 216, 218, 220, and 224 and the computing device 226 is communicatively coupled. In this arrangement, the computing device 226 can perform any of the functions of the computing devices in packaging facilities described in the embodiments above.

[0083] In the depicted embodiment, the system 226 includes a network 231 that is outside of the packaging facility 210. In some embodiments, the network 231 may be a private network or a public network (e.g., the internet). In the depicted embodiment, the remote computing device 236 is a set of servers located remotely from the packaging facility 210. In other embodiments, the remote computing device 236 may be any other type of computing device and may include any number of computing devices (including a single computing device). In some embodiments, the remote computing device 236 is configured to provide functionality to or on behalf of the computing device 226 (sometimes called “cloud” computing services). In the configuration shown in Fig. 11, the computing device 226 is able to communicate with the remote computing device 236 via the network 231 and can act as an intermediary between any of the packaging machines 212, 214, 216, 218, 220, and 224 and the remote computing device 236. In this way, the packaging machines 212, 214, 216, 218, 220, and 224 do not need to be configured or programmed to communicate with the remote computing device 236. For example, if an application programming interface (API) needs to be installed on a computing device that interacts with the remote computing device 236, an operator of the packaging facility 210 may install the API on the computing device 26 but may not need to install the API on the packaging machines 212, 214, 216, 218, 220, and 224. In this case, the computing device 226 can communicate with the packaging machines 212, 214, 216, 218, 220, and 224 even though they do not have the API and the computing device 226 can communicate with the remote computing device 236 because the computing device 226 has the API.

[0084] Fig. 12A depicts an embodiment of a method 240 of the computing device 226 communicating with the remote computing device 236 to enable functionality in the packaging facility 210. At block 242, the packaging machine 212 receives object data about an object to be packaged. At block 244, the packaging machine 212 sends the object information to the computing device 226 via the network 230 in the packaging facility 210. At block 226, the computing device 226 receives the object information from the packaging machine 212 via the network 230.

[0085] In the depicted embodiment, the computing device 226 may not have the ability to determining a packaging instruction for the packaging machine 216 based on the object data. However, the remote computing device 236 may be able to perform such a function in the depicted embodiment. At block 248, the computing device 226 sends an indication of the object data to the remote computing device 236 via the network 231. At block 250, the remote computing device 236 receives the indication of the object data from the computing device 226 via the network 231. At block 252, the remote computing device 236 generates an indication of a packaging instruction based on the indication of the object information. At block 254, the remote computing device 236 sends the indication of the packaging instruction to the computing device 226 via the network 231.

[0086] At block 256, the computing device 226 receives the indication of the packaging instruction from the remote computing device 236 via the network 231. At block 258, the computing device 226 sends a packaging instruction to the packaging machine 216 via the network 230. In the depicted embodiment, the computing device 226 determines the packaging instruction based on the indication of the packaging instruction received from the remote computing device 236. At block 260, the packaging machine 216 receives the packaging instruction from the computing device 226 via the network 230. At block 262, the packaging machine 216 forms at least a portion of a package for the object based on the packaging instruction received from the computing device 226.

[0087] The embodiment of the method 240 shows how the computing device 226 can enable data generated by the packaging machines 212, 214, 216, 218, 220, and 224 to communicated to the remote computing device 236 via the computing device 226 and how data generated by the remote computing device 236 can be communicated to the packaging machines 212, 214, 216, 218, 220, and 224 via the computing device 226. While particular types of data have been described in this embodiment (e.g., object information, packaging instruction, etc.), it will be apparent that the computing device 226 could be used to communicate any type of information between the remote computing device 236 and any of the packaging machines 212, 214, 216, 218, 220, and 224. Similarly, while the remote computing device 236 in the depicted embodiment provides the function of generating an indication of packaging instructions based on an indication of object information, it will be apparent that the remote computing device 236 could provide any number of other functions.

[0088] Fig. 12B depicts an embodiment of a method 270 of both the computing device 226 and the remote computing device 236 providing functionality for the packaging machines in the packaging facility 210. At block 272, the packaging machine determines object data for an object to be packaged. At block 274, the packaging machine 212 sends the object data to the computing device 226 via the network 230. [0089] At block 276, the computing device 226 determines packaging materials to be used to package the object based on the object data received from the packaging materials 212. In some embodiments, the packaging materials can include one or more of a type of an exterior package, a size of an exterior package, a type of dunnage, an amount of dunnage, and the like. In some embodiments, the determination of the packaging materials is based on one or more of a size of the object, a weight of the object, a predetermined type of exterior packaging for the product, and the like. At block 278, the computing device 226 estimates final package dimensions of the package that will be formed for the object. In some embodiments, the estimated final package dimensions include an estimated weight of the final package and/or an estimated length, width, and height of the final package. In some embodiments, the estimated final package dimensions are based on the object data received from the packaging machine 212.

[0090] At block 280, the computing device 226 sends the estimated final dimensions to the remote computing device 236 via the network 231. At block 282, the remote computing device 236 receives the estimated final dimensions from the computing device 226 via the network 231. At block 284, the remote computing device 236 identifies a specific shipping method for the packaged object. In some embodiments, the remote computing device 236 searches for shipping rates among different carriers based on the estimated weight and/or dimensional weight of the final package that will be created for the object (sometimes called “rate shopping”). In some embodiments, the remote computing device 236 searches for a shipping method with a particular characteristic, such as a lowest shipping rate, a fastest shipping time, a particular type of shipping transportation, and the like.

[0091] At block 286, the computing device 226 generates packaging instructions for one or more of the packaging machines 214, 216, 218, and 220 to produce the package for the object. In some embodiments, the packaging instructions are generated by the computing device 226 such that, when one or more of the packaging machines 214, 216, 218, and 220 produce the package, the final package is within a tolerance of the estimated final package dimensions. In the depicted embodiment, the identifying of the specific shipping method by the remote computing device 236 at block 284 and the generating of the packaging instructions by the computing device 226 at block 286 occur in parallel. This parallel operation by the computing device 226 and the remote computing device 236 may reduce the time required to produce the final package.

[0092] At block 288, the remote computing device 236 sends shipping label information to the computing device 226 via the network 231. The shipping label information includes information for printing a shipping label to ship the final package according to the specific shipping method identified at block 288. At block 290, the computing device 226 receives the shipping label information from the remote computing device 236 via the network 231. At block 292, the computing device 226 sends the packaging instructions generated at block 286 and the shipping label information received at block 290 to one or more of the packaging machines 214, 216, 218, and 220 that will produce the package for the object via the network 230.

[0093] At block 294, the one or more of the packaging machines 214, 216, 218, and 220 that will produce the package for the object receive the packaging instructions and the shipping label information from the computing device 226 via the network 230. At block 296, the one or more of the packaging machines 214, 216, 218, and 220 produce the package for the object based on the packaging instruction. The package can include an exterior packaging, a dunnage material, a cushioning material, or any other type of packaging material. At block 298, one or more of the packaging machines 214, 216, 218, and 220 prints a package shipping label based on the shipping label information. In some embodiments, the shipping label is printed directly on the exterior packaging. In some embodiments, the shipping label is printed on a substrate that has a pressure-sensitive adhesive that can be adhered to the exterior packaging.

[0094] The embodiments of the functionality of the computing device 226 and the remote computing device 236 shown in Figs. 12A and 12B are examples of the functionality that the computing device 226 and the remote computing device 236 can provide. In other embodiments, the computing device 226 and the remote computing device 236 can provide any other type of functionality in the system 200. In addition, the packaging facility 210 is only one embodiment of packaging facilities that can communicate with remote computing devices. It will be apparent that any of the various embodiments described herein (e.g., embodiments with module computing devices, embodiments with communication buses, etc.) can be used in combination with a remote computing device. [0095] Fig. 13 depicts an example embodiment of a system 310 that may be used to implement some or all of the embodiments described herein. In the depicted embodiment, the system 310 includes computing devices 320i, 3202, 3203, and 3204 (collectively computing devices 320). In the depicted embodiment, the computing device 320i is a tablet, the computing device 3202 is a mobile phone, the computing device 3203 is a desktop computer, and the computing device 3204 is a laptop computer. In other embodiments, the computing devices 320 include one or more of a desktop computer, a mobile phone, a tablet, a phablet, a notebook computer, a laptop computer, a distributed system, a gaming console (e.g., Xbox, Play Station, Wii), a watch, a pair of glasses, a key fob, a radio frequency identification (RFID) tag, an ear piece, a scanner, a television, a dongle, a camera, a wristband, a wearable item, a kiosk, an input terminal, a server, a server network, a blade, a gateway, a switch, a processing device, a processing entity, a set-top box, a relay, a router, a network access point, a base station, any other device configured to perform the functions, operations, and/or processes described herein, or any combination thereof.

[0096] The computing devices 320 are communicatively coupled to each other via one or more networks 330 and 332. Each of the networks 330 and 332 may include one or more wired or wireless networks (e.g., a 3G network, the Internet, an internal network, a proprietary network, a secured network). The computing devices 320 are capable of communicating with each other and/or any other computing devices via one or more wired or wireless networks. While the particular system 310 in Fig. 13 depicts that the computing devices 320 communicatively coupled via the network 330 include four computing devices, any number of computing devices may be communicatively coupled via the network 330.

[0097] In the depicted embodiment, the computing device 320 3 is communicatively coupled with a peripheral device 340 via the network 332. In the depicted embodiment, the peripheral device 340 is a scanner, such as a barcode scanner, an optical scanner, a computer vision device, and the like. In some embodiments, the network 332 is a wired network (e.g., a direct wired connection between the peripheral device 340 and the computing device 320 3 ), a wireless network (e.g., a Bluetooth connection or a WiFi connection), or a combination of wired and wireless networks (e.g., a Bluetooth connection between the peripheral device 340 and a cradle of the peripheral device 340 and a wired connection between the peripheral device 340 and the computing device 32O3). In some embodiments, the peripheral device 340 is itself a computing device (sometimes called a “smart” device). In other embodiments, the peripheral device 340 is not a computing device (sometimes called a “dumb” device).

[0098] Depicted in Fig. 14 is a block diagram of an embodiment of a computing device 400.

Any of the computing devices 320 and/or any other computing device described herein may include some or all of the components and features of the computing device 400. In some embodiments, the computing device 400 is one or more of a desktop computer, a mobile phone, a tablet, a phablet, a notebook computer, a laptop computer, a distributed system, a gaming console (e.g., an Xbox, a Play Station, a Wii), a watch, a pair of glasses, a key fob, a radio frequency identification (RFID) tag, an ear piece, a scanner, a television, a dongle, a camera, a wristband, a wearable item, a kiosk, an input terminal, a server, a server network, a blade, a gateway, a switch, a processing device, a processing entity, a set-top box, a relay, a router, a network access point, a base station, any other device configured to perform the functions, operations, and/or processes described herein, or any combination thereof. Such functions, operations, and/or processes may include, for example, transmitting, receiving, operating on, processing, displaying, storing, determining, creating/generating, monitoring, evaluating, comparing, and/or similar terms used herein. In one embodiment, these functions, operations, and/or processes can be performed on data, content, information, and/or similar terms used herein.

[0099] In the depicted embodiment, the computing device 400 includes a processing element 405, memory 410, a user interface 415, and a communications interface 420. The processing element 405, memory 410, a user interface 415, and a communications interface 420 are capable of communicating via a communication bus 425 by reading data from and/or writing data to the communication bus 425. The computing device 400 may include other components that are capable of communicating via the communication bus 425. In other embodiments, the computing device does not include the communication bus 425 and the components of the computing device 400 are capable of communicating with each other in some other way.

[0100] The processing element 405 (also referred to as one or more processors, processing circuitry, and/or similar terms used herein) is capable of performing operations on some external data source. For example, the processing element may perform operations on data in the memory 410, data receives via the user interface 415, and/or data received via the communications interface 420. As will be understood, the processing element 405 may be embodied in a number of different ways. In some embodiments, the processing element 405 includes one or more complex programmable logic devices (CPLDs), microprocessors, multi core processors, co processing entities, application-specific instruction-set processors (ASIPs), microcontrollers, controllers, integrated circuits, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), hardware accelerators, any other circuitry, or any combination thereof. The term circuitry may refer to an entirely hardware embodiment or a combination of hardware and computer program products. In some embodiments, the processing element 405 is configured for a particular use or configured to execute instructions stored in volatile or nonvolatile media or otherwise accessible to the processing element 405. As such, whether configured by hardware or computer program products, or by a combination thereof, the processing element 405 may be capable of performing steps or operations when configured accordingly.

[0101] The memory 410 in the computing device 400 is configured to store data, computer- executable instructions, and/or any other information. In some embodiments, the memory 410 includes volatile memory (also referred to as volatile storage, volatile media, volatile memory circuitry, and the like), non-volatile memory (also referred to as non-volatile storage, non volatile media, non-volatile memory circuitry, and the like), or some combination thereof.

[0102] In some embodiments, volatile memory includes one or more of random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), fast page mode dynamic random access memory (FPM DRAM), extended data-out dynamic random access memory (EDO DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), double data rate type two synchronous dynamic random access memory (DDR2 SDRAM), double data rate type three synchronous dynamic random access memory (DDR3 SDRAM), Rambus dynamic random access memory (RDRAM), Twin Transistor RAM (TTRAM), Thyristor RAM (T-RAM), Zero- capacitor (Z-RAM), Rambus in-line memory module (RIMM), dual in-line memory module (DIMM), single in-line memory module (SIMM), video random access memory (VRAM), cache memory (including various levels), flash memory, any other memory that requires power to store information, or any combination thereof.

[0103] In some embodiments, non-volatile memory includes one or more of hard disks, floppy disks, flexible disks, solid-state storage (SSS) (e.g., a solid state drive (SSD)), solid state cards (SSC), solid state modules (SSM), enterprise flash drives, magnetic tapes, any other non- transitory magnetic media, compact disc read only memory (CD ROM), compact disc-rewritable (CD-RW), digital versatile disc (DVD), Blu-ray disc (BD), any other non-transitory optical media, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory (e.g., Serial, NAND, NOR, and/or the like), multimedia memory cards (MMC), secure digital (SD) memory cards, Memory Sticks, conductive-bridging random access memory (CBRAM), phase-change random access memory (PRAM), ferroelectric random-access memory (FeRAM), non-volatile random access memory (NVRAM), magneto resistive random access memory (MRAM), resistive random-access memory (RRAM), Silicon Oxide-Nitride-Oxide-Silicon memory (SONOS), floating junction gate random access memory (FJG RAM), Millipede memory, racetrack memory, any other memory that does not require power to store information, or any combination thereof.

[0104] In some embodiments, memory 410 is capable of storing one or more of databases, database instances, database management systems, data, applications, programs, program modules, scripts, source code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, or any other information. The term database, database instance, database management system, and/or similar terms used herein may refer to a collection of records or data that is stored in a computer-readable storage medium using one or more database models, such as a hierarchical database model, network model, relational model, entity relationship model, object model, document model, semantic model, graph model, or any other model.

[0105] The user interface 415 of the computing device 400 is in communication with one or more input or output devices that are capable of receiving inputs into and/or outputting any outputs from the computing device 400. Embodiments of input devices include a keyboard, a mouse, a touchscreen display, a touch sensitive pad, a motion input device, movement input device, an audio input, a pointing device input, a joystick input, a keypad input, peripheral device 340, foot switch, and the like. Embodiments of output devices include an audio output device, a video output, a display device, a motion output device, a movement output device, a printing device, and the like. In some embodiments, the user interface 415 includes hardware that is configured to communicate with one or more input devices and/or output devices via wired and/or wireless connections.

[0106] The communications interface 420 is capable of communicating with various computing devices and/or networks. In some embodiments, the communications interface 420 is capable of communicating data, content, and/or any other information, that can be transmitted, received, operated on, processed, displayed, stored, and the like. Communication via the communications interface 420 may be executed using a wired data transmission protocol, such as fiber distributed data interface (FDDI), digital subscriber line (DSL), Ethernet, asynchronous transfer mode (ATM), frame relay, data over cable service interface specification (DOCSIS), or any other wired transmission protocol. Similarly, communication via the communications interface 420 may be executed using a wireless data transmission protocol, such as general packet radio service (GPRS), Universal Mobile Telecommunications System (UMTS), Code Division Multiple Access 2000 (CDMA2000), CDMA2000 IX (lxRTT), Wideband Code Division Multiple Access (WCDMA), Global System for Mobile Communications (GSM), Enhanced Data rates for GSM Evolution (EDGE), Time Division-Synchronous Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), Evolved Universal Terrestrial Radio Access Network (E-UTRAN), Evolution-Data Optimized (EVDO), High Speed Packet Access (HSPA), High-Speed Downlink Packet Access (HSDPA), IEEE 802.11 (WiFi), WiFi Direct, 802.16 (WiMAX), ultra wideband (UWB), infrared (IR) protocols, near field communication (NFC) protocols, Wibree, Bluetooth protocols, wireless universal serial bus (USB) protocols, or any other wireless protocol.

[0107] As will be appreciated by those skilled in the art, one or more components of the computing device 400 may be located remotely from other components of the computing device 400 components, such as in a distributed system. Furthermore, one or more of the components may be combined and additional components performing functions described herein may be included in the computing device 400. Thus, the computing device 400 can be adapted to accommodate a variety of needs and circumstances. The depicted and described architectures and descriptions are provided for exemplary purposes only and are not limiting to the various embodiments described herein.

[0108] Embodiments described herein may be implemented in various ways, including as computer program products that comprise articles of manufacture. A computer program product may include a non-transitory computer-readable storage medium storing applications, programs, program modules, scripts, source code, program code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, and/or the like (also referred to herein as executable instructions, instructions for execution, computer program products, program code, and/or similar terms used herein interchangeably). Such non-transitory computer-readable storage media include all computer-readable media (including volatile and non-volatile media).

[0109] As should be appreciated, various embodiments of the embodiments described herein may also be implemented as methods, apparatus, systems, computing devices, and the like. As such, embodiments described herein may take the form of an apparatus, system, computing device, and the like executing instructions stored on a computer readable storage medium to perform certain steps or operations. Thus, embodiments described herein may be implemented entirely in hardware, entirely in a computer program product, or in an embodiment that comprises combination of computer program products and hardware performing certain steps or operations.

[0110] Embodiments described herein may be made with reference to block diagrams and flowchart illustrations. Thus, it should be understood that blocks of a block diagram and flowchart illustrations may be implemented in the form of a computer program product, in an entirely hardware embodiment, in a combination of hardware and computer program products, or in apparatus, systems, computing devices, and the like carrying out instructions, operations, or steps. Such instructions, operations, or steps may be stored on a computer readable storage medium for execution buy a processing element in a computing device. For example, retrieval, loading, and execution of code may be performed sequentially such that one instruction is retrieved, loaded, and executed at a time. In some exemplary embodiments, retrieval, loading, and/or execution may be performed in parallel such that multiple instructions are retrieved, loaded, and/or executed together. Thus, such embodiments can produce specifically configured machines performing the steps or operations specified in the block diagrams and flowchart illustrations. Accordingly, the block diagrams and flowchart illustrations support various combinations of embodiments for performing the specified instructions, operations, or steps.

[0111] For purposes of this disclosure, terminology such as “upper,” “lower,” “vertical,” “horizontal,” “inwardly,” “outwardly,” “inner,” “outer,” “front,” “rear,” and the like, should be construed as descriptive and not limiting the scope of the claimed subject matter. Further, the use of “including,” “comprising,” or “having” and variations thereof herein is meant to encompass the items listed thereafter and equivalents thereof as well as additional items. Unless limited otherwise, the terms “connected,” “coupled,” and “mounted” and variations thereof herein are used broadly and encompass direct and indirect connections, couplings, and mountings. Unless stated otherwise, the terms “substantially,” “approximately,” and the like are used to mean within

5% of a target value.

[0112] The principles, representative embodiments, and modes of operation of the present disclosure have been described in the foregoing description. However, aspects of the present disclosure which are intended to be protected are not to be construed as limited to the particular embodiments disclosed. Further, the embodiments described herein are to be regarded as illustrative rather than restrictive. It will be appreciated that variations and changes may be made by others, and equivalents employed, without departing from the spirit of the present disclosure. Accordingly, it is expressly intended that all such variations, changes, and equivalents fall within the spirit and scope of the present disclosure, as claimed.