# US 12,007,746 B2 · Methods and systems for enabling and scheduling 3D printing-based fabrication

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,007,746 B2
- Document ID: US12007746B2
- Status: Granted
- Kind: B2
- Application number: 16/670,274
- Filed: 2019-10-31
- Published: 2020-04-30
- Granted: 2024-06-11
- Earliest claimed: 2017-06-25
- Assignees: Strong Force Vcn Portfolio 2019, LLC
- Applicants: Strong Force VCN Portfolio 2019, LLC
- Inventors: Teymour El-Tahry; Charles Cella
- Web page: https://patentgrep.com/patent/US12007746B2

## CPC

- G05B 19/4099: Surface or curve machining, making three-dimensional [3D] objects, e.g. desktop manufacturing
- A23P 20/20: Making of laminated, multi-layered, stuffed or hollow foodstuffs, e.g. by wrapping in preformed edible dough sheets or in edible food containers
- B29C 64/393: for controlling or regulating additive manufacturing processes
- B33Y 50/02: for controlling or regulating additive manufacturing processes
- G06Q 10/06311: {Scheduling, planning or task assignment for a person or group}
- G06Q 30/06: Buying, selling or leasing transactions
- G06Q 50/04: Manufacturing
- A23P 2020/253: {Coating food items by printing onto them; Printing layers of food products}
- G05B 2219/49023: 3-D printing, layer of powder, add drops of binder in layer, new powder
- Y02P 80/40: Minimising material used in manufacturing processes
- Y02P 90/30: Computing systems specially adapted for manufacturing
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)
- A23P: SHAPING OR WORKING OF FOODSTUFFS, NOT FULLY COVERED BY A SINGLE OTHER SUBCLASS
- B29C: SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING (making preforms B29B11/00; making laminated products by combining previously unconnected layers which become one product whose layers will remain together B32B37/00 - B32B41/00)
- B33Y: ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- Y02P: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS

## Abstract

The present disclosure includes a three-dimensional design and integrated fabrication system that includes a data system in a computing environment. The system includes a manufacturing section including a pre-processing section and a post-processing section. The system also includes a material selection system and a control system that integrates the data system, manufacturing section, and material selection system with an intelligence system that includes artificial intelligence in the computing environment.

## Claims

### Claim 1

A three-dimensional (3D) printing system comprising:
a non-transitory computer readable medium storing computer readable instructions; and
a processing system having one or more processors that execute the computer readable instructions, wherein the computer readable instructions cause the processing system to:
receive a print job request corresponding to a requested print job, the print job request indicating an item to be 3D printed;
determine a plurality of print job attributes corresponding to the requested print job, including: (i) determining a first amount of time to complete the requested print job once printing begins; and (ii) determining a second amount of time corresponding to an expected delivery time when the item is to be provided to a requestor, wherein the plurality of print job attributes includes the first amount of time and the second amount of time;
determine a priority score of the requested print job based on the plurality of print job attributes, wherein the priority score is further based on a third amount of time corresponding to a storage time between when the requested print job is completed and the expected delivery time;
order a 3D print job queue based on the priority score of the requested print job and other priority scores of one or more other print jobs stored in the 3D print job queue; and
initiate a new 3D print job by a 3D printer of one or more 3D printers based on the 3D print job queue.

### Claim 2 (depends on 1)

The 3D printing system of claim 1, further comprising the one or more 3D printers.

### Claim 3 (depends on 2)

The 3D printing system of claim 2, wherein the one or more 3D printers print industrial items.

### Claim 4 (depends on 2)

The 3D printing system of claim 2, wherein the one or more 3D printers print food items.

### Claim 5 (depends on 2)

The 3D printing system of claim 2, wherein the one or more 3D printers print biomedical items.

### Claim 6 (depends on 1)

The 3D printing system of claim 1, wherein determining a priority score of the requested print job based on the plurality of print job attributes includes inputting the plurality of print job attributes to a scoring model, wherein the scoring model outputs a priority score of the requested print jobs based on the plurality of print job attributes.

### Claim 7 (depends on 1)

The 3D printing system of claim 1, wherein the priority score of the requested print job is determined based on a rules-based approach.

### Claim 8 (depends on 1)

The 3D printing system of claim 1, wherein the plurality of print job attributes includes a location of a requestor, and wherein determining the second amount of time is based on the distance of the requestor from a location of the one or more 3D printers.

### Claim 9 (depends on 1)

The 3D printing system of claim 1, wherein the second amount of time is indicated by a requested pickup time received in the request.

### Claim 10 (depends on 1)

The 3D printing system of claim 1, wherein determining the first amount of time includes:
retrieving a design record from a design library corresponding to the item to be 3D printed;
determining a completion time of the item to be 3D printed from the design record; and
determining the first amount of time based on the completion time.

### Claim 11 (depends on 10)

The 3D printing system of claim 10, wherein the completion time indicates an amount of time needed to 3D print the item.

### Claim 12 (depends on 10)

The 3D printing system of claim 10, wherein the completion time indicates an amount of time needed to pre-process the requested print job, 3D print the item, and post-process the item.

### Claim 13 (depends on 1)

The 3D printing system of claim 1, wherein determining the first amount of time includes:
receiving a 3D model of the item to be printed;
estimating a completion time based on the model; and
determining the first amount of time based on the completion time.

### Claim 14 (depends on 1)

The 3D printing system of claim 1, wherein the print job attributes of the requested print job include a loyalty attribute corresponding to a requestor of the print job.

### Claim 15 (depends on 1)

The 3D printing system of claim 1, wherein the print job attributes of the requested print job include a price attribute indicating a price paid to have the item 3D printed.

### Claim 16

A method for controlling a three-dimensional (3D) printing system comprising:
receiving, by a processing system having one or more processors, a print job request corresponding to a requested print job, the print job request indicating an item to be 3D printed;
determining, by the processing system, a plurality of print job attributes corresponding to the requested print job, including:
determining a first amount of time to complete the requested print job once printing begins; and
determining a second amount of time corresponding to an expected delivery time when the item is to be provided to a requestor
wherein the plurality of print job attributes includes the first amount of time and the second amount of time;
determining, by the processing system, a priority score of the requested print job based on the plurality of print job attributes, wherein the priority score is further based on a third amount of time corresponding to a storage time between when the requested print job is completed and the expected delivery time;
ordering, by the processing system, a 3D print job queue based on the priority score of the requested print job and other priority scores of one or more other print jobs stored in the 3D print job queue; and
initiating, by the processing system, a new 3D print job by a 3D printer of one or more 3D printers based on the 3D print job queue.

### Claim 17 (depends on 16)

The method of claim 16, wherein the one or more 3D printers print industrial items.

### Claim 18 (depends on 16)

The method of claim 16, wherein the one or more 3D printers print food items.

### Claim 19 (depends on 16)

The method of claim 16, wherein the one or more 3D printers print biomedical items.

### Claim 20 (depends on 16)

The method of claim 16, wherein determining a priority score of the requested print job based on the plurality of print job attributes includes inputting the plurality of print job attributes to a scoring model, wherein the scoring model outputs a priority score of the requested print jobs based on the plurality of print job attributes.

### Claim 21 (depends on 16)

The method of claim 16, wherein the priority score of the requested print job is determined based on a rules-based approach.

### Claim 22 (depends on 16)

The method of claim 16, wherein the plurality of print job attributes includes a location of a requestor, and wherein determining the second amount of time is based on the distance of the requestor from a location of the one or more 3D printers.

### Claim 23 (depends on 16)

The method of claim 16, wherein the second amount of time is indicated by a requested pickup time received in the request.

### Claim 24 (depends on 16)

The method of claim 16, wherein determining the first amount of time includes:
retrieving a design record from a design library corresponding to the item to be 3D printed;
determining a completion time of the item to be 3D printed from the design record; and
determining the first amount of time based on the completion time.

### Claim 25 (depends on 24)

The method of claim 24, wherein the completion time indicates an amount of time needed to 3D print the item.

### Claim 26 (depends on 24)

The method of claim 24, wherein the completion time indicates an amount of time needed to pre-process the requested print job, 3D print the item, and post-process the item.

### Claim 27 (depends on 16)

The method of claim 16, wherein determining the first amount of time includes:
receiving a 3D model of the item to be printed;
estimating a completion time based on the model; and
determining the first amount of time based on the completion time.

### Claim 28 (depends on 16)

The method of claim 16, wherein the print job attributes of the requested print job include a loyalty attribute corresponding to a requestor of the print job.

### Claim 29 (depends on 16)

The method of claim 16, wherein the print job attributes of the requested print job include a price attribute indicating a price paid to have the item 3D printed.

### Claim 30

A non-transitory computer readable storage medium having a plurality of instructions stored thereon, which, when executed by one or more processors associated with a three-dimensional (3D) printing system, cause the one or more processors to perform operations comprising:
receiving a print job request corresponding to a requested print job, the print job request indicating an item to be 3D printed;
determining a plurality of print job attributes corresponding to the requested print job, including: (i) determining a first amount of time to complete the requested print job once printing begins; and (ii) determining a second amount of time corresponding to an expected delivery time when the item is to be provided to a requestor, wherein the plurality of print job attributes includes the first amount of time and the second amount of time;
determining a priority score of the requested print job based on the plurality of print job attributes, wherein the priority score is further based on a third amount of time corresponding to a storage time between when the requested print job is completed and the expected delivery time;
ordering a 3D print job queue based on the priority score of the requested print job and other priority scores of one or more other print jobs stored in the 3D print job queue; and
initiating a new 3D print job by a 3D printer of one or more 3D printers based on the 3D print job queue.

### Claim 31 (depends on 30)

The computer readable storage medium of claim 30, further comprising the one or more 3D printers.

### Claim 32 (depends on 31)

The computer readable storage medium of claim 31, wherein the one or more 3D printers print industrial items.

### Claim 33 (depends on 30)

The computer readable storage medium of claim 30, wherein determining the priority score of the requested print job based on the plurality of print job attributes includes inputting the plurality of print job attributes to a scoring model, wherein the scoring model outputs a priority score of the requested print jobs based on the plurality of print job attributes.

### Claim 34 (depends on 30)

The computer readable storage medium of claim 30, wherein the priority score of the requested print job is determined based on a rules-based approach.

### Claim 35 (depends on 30)

The computer readable storage medium of claim 30, wherein the plurality of print job attributes includes a location of a requestor, and wherein determining the second amount of time is based on the distance of the requestor from a location of the one or more 3D printers.

### Claim 36 (depends on 30)

The computer readable storage medium of claim 30, wherein the second amount of time is indicated by a requested pickup time received in the request.

### Claim 37 (depends on 30)

The computer readable storage medium of claim 30, wherein determining the first amount of time includes:
retrieving a design record from a design library corresponding to the item to be 3D printed;
determining a completion time of the item to be 3D printed from the design record; and
determining the first amount of time based on the completion time.

### Claim 38 (depends on 37)

The computer readable storage medium of claim 37, wherein the completion time indicates an amount of time needed to 3D print the item.

### Claim 39 (depends on 30)

The computer readable storage medium of claim 30, wherein determining the first amount of time includes:
receiving a 3D model of the item to be printed;
estimating a completion time based on the model; and
determining the first amount of time based on the completion time.

### Claim 40 (depends on 30)

The computer readable storage medium of claim 30, wherein the print job attributes of the requested print job include a loyalty attribute corresponding to a requestor of the print job.
