# US 11,797,652 B2 · Cloud controlled laser fabrication

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

- Number: US 11,797,652 B2
- Document ID: US11797652B2
- Status: Granted
- Kind: B2
- Application number: 17/350,789
- Filed: 2021-06-17
- Published: 2021-10-07
- Granted: 2023-10-24
- Earliest claimed: 2015-02-12
- Assignees: Glowforge Inc.
- Applicants: Glowforge Inc.
- Inventors: Daniel Shapiro; Mark Gosselin; Anthony Wright; Dean Putney; Timothy Ellis; Lauren Banka
- Web page: https://patentgrep.com/patent/US11797652B2

## CPC

- B23K 26/032: {using optical means}
- B23K 10/006: {Control circuits therefor}
- B23K 26/08: Devices involving relative movement between laser beam and workpiece
- B23K 26/082: Scanning systems, i.e. devices involving movement of the laser beam relative to the laser head
- B23K 26/0853: {Devices involving movement of the workpiece in at least two axial directions, e.g. in a plane}
- B23K 26/0876: {in at least two axial directions}
- B23K 26/38: by boring or cutting
- B23K 37/0211: {travelling on a guide member, e.g. rail, track}
- B23K 37/0235: {the guide member forming part of a portal}
- B23K 37/0408: {for planar work}
- B23Q 17/22: for indicating or measuring existing or desired position of tool or work {(B23Q16/005 takes precedence)}
- G05B 19/18: Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of program data in numerical form (G05B19/418 takes precedence)
- G05B 19/402: characterised by control arrangements for positioning, e.g. centring a tool relative to a hole in the workpiece, additional detection means to correct position (G05B19/19 takes precedence)
- G05B 19/406: characterised by monitoring or safety (G05B19/19 takes precedence)
- G06F 21/121: {Restricting unauthorised execution of programs}
- B27M 1/08: by multi-step processes
- B29C 64/393: for controlling or regulating additive manufacturing processes
- B33Y 50/00: Data acquisition or data processing for additive manufacturing
- G05B 2219/31186: TCP-IP internet protocol
- G05B 2219/32001: Computer assisted machining, signals guide operator to manual machine object
- G05B 2219/36053: Adapt, modify program in real time as function of workpiece configuration
- G05B 2219/36199: Laser cutting
- G05B 2219/37359: Contour, to sense corners, edges of surface
- G05B 2219/37555: Camera detects orientation, position workpiece, points of workpiece
- G05B 2219/42307: Compare actual feedback with predicted, simulated value to detect run away
- G05B 2219/45041: Laser cutting
- G05B 2219/45212: Etching, engraving, sculpturing, carving
- Y02P 80/40: Minimising material used in manufacturing processes
- Y02P 90/80: Management or planning
- B23K: SOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
- B23Q: DETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING (tools of the kind used in lathes or boring machines B23B27/00); MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
- 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)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- B27M: WORKING OF WOOD NOT PROVIDED FOR IN SUBCLASSES B27B - B27L; MANUFACTURE OF SPECIFIC WOODEN ARTICLES
- 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
- Y02P: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS

## Abstract

An execution plan segment of an execution plan can be received at a control unit of a computer numerically controlled machine from a general purpose computer. The execution plan segment can define operations for causing movement of a moveable head of the computer numerically controlled machine to deliver electromagnetic energy to effect a change in a material within an interior space of the computer numerically controlled machine. The execution plan segment can include a predefined safe pausing point from which the execution plan can be restarted while minimizing a difference in appearance of a finished work-product relative to if a pause and restart are not necessary. Operations of the computer numerically controlled machine can be commenced only after determining that the execution plan segment has been received up to and including the predefined safe pausing point by the computer numerically controlled machine.

## Claims

### Claim 1

A method carried out by a computing system comprising at least one processor, the method comprising:
receiving, by the computing system, a source file describing a pattern to be fabricated by a computer numerically controlled machine of the computing system;
determining, by the computing system, that the source file has associated with it a predetermined limit to a number of instances of the pattern that can be fabricated;
creating, by the computing system, a first motion plan from the source file;
causing, by the computing system, the computer numerically controlled machine to fabricate a first instance of the pattern based on the first motion plan;
receiving, by the computing system, a command to fabricate a second instance of the pattern based on a second motion plan;
determining, by the computing system, that fabricating the second instance of the pattern would result in a count of the number of instances of the pattern being fabricated that would exceed the predetermined limit; and
after determining that fabricating the second instance of the pattern would result in the count of the number of instances of the pattern being fabricated that would exceed the predetermined limit, refusing to create, by the computing system, the second motion plan from the source file.

### Claim 2 (depends on 1)

The method of claim 1, wherein the computer numerically controlled machine is a first computer numerically controlled machine, and wherein receiving, by the computing system, the command to fabricate the second instance of the pattern based on the second motion plan comprises:
receiving, by the computing system, a command for a second computer numerically controlled machine of the computing system to fabricate the second instance of the pattern based on the second motion plan.

### Claim 3 (depends on 1)

The method of claim 1, wherein the first motion plan defines a movement of a moveable head of the computer numerically controlled machine and control commands for operation of one or more other components of the computer numerically controlled machine, and wherein the one or more other components comprise one or more of a laser, a power supply, a fan, a thermal control system, an air filter, a coolant pump, a light source, a camera mounted on the moveable head, and a camera mounted inside an interior space of the computer numerically controlled machine but not on the moveable head.

### Claim 4 (depends on 3)

The method of claim 3, wherein the first motion plan further defines a temporal element indicating times or time offsets at which actions of the one or more other components necessary to fabricate the first instance of the pattern should occur.

### Claim 5 (depends on 1)

The method of claim 1, wherein causing, by the computing system, the computer numerically controlled machine to fabricate the first instance of the pattern based on the first motion plan increases the count of the number of instances of the pattern being fabricated by 1.

### Claim 6

A non-transitory computer-readable medium, wherein the non-transitory computer-readable medium is provisioned with program instructions that, when executed by at least one processor cause a computing system to:
receive a source file describing a pattern to be fabricated by a computer numerically controlled machine of the computing system;
determine that the source file has associated with it a predetermined limit to a number of instances of the pattern that can be fabricated;
create a first motion plan from the source file;
cause the computer numerically controlled machine to fabricate a first instance of the pattern based on the first motion plan;
receive a command to fabricate a second instance of the pattern based on a second motion plan;
determine that fabricating the second instance of the pattern would result in a count of the number of instances of the pattern being fabricated that would exceed the predetermined limit; and
after determining that fabricating the second instance of the pattern would result in the count of the number of instances of the pattern being fabricated that would exceed the predetermined limit, refusing to create the second motion plan from the source file.

### Claim 7 (depends on 6)

The non-transitory computer-readable medium of claim 6, wherein the computer numerically controlled machine is a first computer numerically controlled machine, and wherein the program instructions that, when executed by at least one processor, cause the computing system to receive the command to fabricate the second instance of the pattern based on the second motion plan comprise program instructions that, when executed by at least one processor, cause the computing system to receive a command for a second computer numerically controlled machine of the computing system to fabricate the second instance of the pattern based on the second motion plan.

### Claim 8 (depends on 6)

The non-transitory computer-readable medium of claim 6, wherein the first motion plan defines a movement of a moveable head of the computer numerically controlled machine and control commands for operation of one or more other components of the computer numerically controlled machine, and wherein the one or more other components comprise one or more of a laser, a power supply, a fan, a thermal control system, an air filter, a coolant pump, a light source, a camera mounted on the moveable head, and a camera mounted inside an interior space of the computer numerically controlled machine but not on the moveable head.

### Claim 9 (depends on 8)

The non-transitory computer-readable medium of claim 8, wherein the first motion plan further defines a temporal element indicating times or time offsets at which actions of the one or more other components necessary to fabricate the first instance of the pattern should occur.

### Claim 10 (depends on 6)

The non-transitory computer-readable medium of claim 6, wherein the program instructions that, when executed by at least one processor, cause the computing system to cause the computer numerically controlled machine to fabricate the first instance of the pattern based on the first motion plan comprise program instructions that, when executed by at least one processor, cause the computing system to increase the count of the number of instances of the pattern being fabricated by 1.

### Claim 11 (depends on 6)

The non-transitory computer-readable medium of claim 6, wherein the non-transitory computer-readable medium is also provisioned with program instructions that, when executed by at least one processor, cause the computing system to select the computer numerically controlled machine from a plurality of computer numerically controlled machines.

### Claim 12 (depends on 6)

The non-transitory computer-readable medium of claim 6, wherein the non-transitory computer-readable medium is also provisioned with program instructions that, when executed by at least one processor, cause the computing system to optimize the first motion plan based on one or both of a measured attribute and an observed behavior of the computer numerically controlled machine.

### Claim 13

A computing system comprising:
at least one processor;
non-transitory computer-readable medium; and
program instructions stored on the non-transitory computer-readable medium that are executable by the at least one processor such that the computing system is configured to:
receive a source file describing a pattern to be fabricated by a computer numerically controlled machine of the computing system;
determine that the source file has associated with it a predetermined limit to a number of instances of the pattern that can be fabricated;
create a first motion plan from the source file;
cause the computer numerically controlled machine to fabricate a first instance of the pattern based on the first motion plan;
receive a command to fabricate a second instance of the pattern based on a second motion plan;
determine that fabricating the second instance of the pattern would result in a count of the number of instances of the pattern being fabricated that would exceed the predetermined limit; and
after determining that fabricating the second instance of the pattern would result in the count of the number of instances of the pattern being fabricated that would exceed the predetermined limit, refuse to create the second motion plan from the source file.

### Claim 14 (depends on 13)

The computing system of claim 13, wherein the computer numerically controlled machine is a first computer numerically controlled machine, and wherein the program instructions that are executable by the at least one processor such that the computing system is configured to receive the command to fabricate the second instance of the pattern based on the second motion plan comprise program instructions that are executable by the at least one processor such that the computing system is configured to receive a command for a second computer numerically controlled machine of the computing system to fabricate the second instance of the pattern based on the second motion plan.

### Claim 15 (depends on 13)

The computing system of claim 13, wherein the first motion plan defines a movement of a moveable head of the computer numerically controlled machine and control commands for operation of one or more other components of the computer numerically controlled machine, and wherein the one or more other components comprise one or more of a laser, a power supply, a fan, a thermal control system, an air filter, a coolant pump, a light source, a camera mounted on the moveable head, and a camera mounted inside an interior space of the computer numerically controlled machine but not on the moveable head.

### Claim 16 (depends on 15)

The computing system of claim 15, wherein the first motion plan further defines a temporal element indicating times or time offsets at which actions of the one or more other components necessary to fabricate the first instance of the pattern should occur.

### Claim 17 (depends on 13)

The computing system of claim 13, wherein the program instructions that are executable by the at least one processor such that the computing system is configured to cause the computer numerically controlled machine to fabricate the first instance of the pattern based on the first motion plan comprise program instructions that are executable by the at least one processor such that the computing system is configured to increase the count of the number of instances of the pattern being fabricated by 1.

### Claim 18 (depends on 13)

The computing system of claim 13, further comprising program instructions that are executable by the at least one processor such that the computing system is configured to select-the computer numerically controlled machine from a plurality of computer numerically controlled machines.

### Claim 19 (depends on 13)

The computing system of claim 13, further comprising program instructions that are executable by the at least one processor such that the computing system is configured to optimize the first motion plan based on one or both of a measured attribute and an observed behavior of the computer numerically controlled machine.

### Claim 20 (depends on 13)

The computing system of claim 13, wherein the program instructions that are executable by the at least one processor such that the computing system is configured to receive the source file comprise program instructions that are executable by the at least one processor such that the computing system is configured to receive the source file from a cloud-based server.
