# US 12,111,621 B2 · Power tool including a machine learning block for controlling a seating of a fastener

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

- Number: US 12,111,621 B2
- Document ID: US12111621B2
- Status: Granted
- Kind: B2
- Application number: 17/056,489
- Filed: 2020-07-23
- Published: 2022-09-22
- Granted: 2024-10-08
- Earliest claimed: 2019-07-23
- Assignees: Milwaukee Electric Tool Corporation
- Applicants: Milwaukee Electric Tool Corporation
- Inventors: Jonathan E. Abbott; Justin A. Evankovich
- Web page: https://patentgrep.com/patent/US12111621B2

## CPC

- G05B 13/027: {using neural networks only}
- B25B 21/00: Portable power-driven screw or nut setting or loosening tools; (details or components, e.g. casings, bodies, of portable power-driven tools not particularly related to the operation performed B25F5/00; {for mounting or dismounting wheels B60B29/006}); Attachments for drilling apparatus serving the same purpose (machines B23P19/06)
- B25B 23/147: specially adapted for electrically operated wrenches or screwdrivers
- B25F 5/00: Details or components of portable power-driven tools not particularly related to the operations performed and not otherwise provided for
- G05B 13/0265: {the criterion being a learning criterion}
- G06N 3/044: Recurrent networks, e.g. Hopfield networks
- G06N 3/0442: characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
- G06N 3/0455: Auto-encoder networks; Encoder-decoder networks
- G06N 3/0464: Convolutional networks [CNN, ConvNet]
- G06N 3/08: Learning methods
- G06N 3/09: Supervised learning
- G06N 3/092: Reinforcement learning
- B23D 59/001: {Measuring or control devices, e.g. for automatic control of work feed pressure on band saw blade (measuring in general G01; controlling in general G05)}
- G05B 2219/45127: Portable, hand drill
- G06N 20/10: using kernel methods, e.g. support vector machines [SVM]
- 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)
- B25B: TOOLS OR BENCH DEVICES NOT OTHERWISE PROVIDED FOR, FOR FASTENING, CONNECTING, DISENGAGING, OR HOLDING
- B25F: COMBINATION OR MULTI-PURPOSE TOOLS NOT OTHERWISE PROVIDED FOR; DETAILS OR COMPONENTS OF PORTABLE POWER-DRIVEN TOOLS NOT PARTICULARLY RELATED TO THE OPERATIONS PERFORMED AND NOT OTHERWISE PROVIDED FOR {(machines or arrangements of machines for performing specified combinations of different metal-working operations not covered by a single other subclass B23P23/00 and subgroups)}
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- B23D: PLANING; SLOTTING; SHEARING; BROACHING; SAWING; FILING; SCRAPING; LIKE OPERATIONS FOR WORKING METAL BY REMOVING MATERIAL, NOT OTHERWISE PROVIDED FOR (making toothed gears or the like B23F; cutting metal by applying heat locally B23K; arrangements for copying or controlling B23Q)

## Abstract

A power tool is provided including a housing a motor supported by the housing, a sensor supported by the housing, and an electronic controller. The sensor is configured to generate sensor data indicative of an operational parameter of the power tool. The electronic controller includes an electronic processor, and a memory. The memory includes a machine learning control program for execution by the electronic processor. The electronic processor is configured to receive the sensor data, and process the sensor data, using the machine learning control program. The electronic processor is further configured to generate, using the machine learning control program, an output based on the sensor data, the output indicating a seating value associated with a fastening operation of the power tool. The electronic processor is further configured to control the motor based on the generated output.

## Claims

### Claim 1

A power tool comprising:
a housing;
a motor supported by the housing;
a sensor supported by the housing and configured to generate sensor data indicative of an operational parameter of the power tool;
an electronic controller, the electronic controller including an electronic processor and a memory, the memory including a machine learning control program for execution by the electronic processor, the electronic controller configured to:
receive the sensor data,
process the sensor data, using the machine learning control program,
generate, using the machine learning control program, an output based on the sensor data, the output indicating a seating value associated with a fastening operation of the power tool, wherein the seating value indicates a level of seating of the fastener, wherein the level represents a percentage that the fastener is seated within a workpiece, and
control the motor based on the generated output.

### Claim 2 (depends on 1)

The power tool of claim 1, wherein the machine learning control program is generated on an external system device through training based on exemplary sensor data and associated outputs, and is received by the power tool from the external system device.

### Claim 3 (depends on 2)

The power tool of claim 2, wherein the machine learning control program is one of a static machine learning control program and a trainable machine learning control program.

### Claim 4 (depends on 1)

The power tool of claim 1, wherein the electronic controller is configured to reduce a speed of the motor based on the seating value indicating that the fastener has started seating.

### Claim 5 (depends on 1)

The power tool of claim 1, wherein the electronic controller is configured to stop the motor of the power tool based on the seating value indicating that the fastener is fully seated.

### Claim 6

A method of operating a power tool to control fastener fastening, the method comprising:
generating, by a sensor of the power tool, sensor data indicative of an operational parameter of the power tool;
receiving, by an electronic controller of the power tool, the sensor data, the electronic controller including an electronic processor and a memory, wherein the memory includes a machine learning control program for execution by the electronic processor;
processing the sensor data using a machine learning control program of the electronic controller;
generating, using the machine learning control program, an output based on the sensor data, wherein the output indicates a fastening value associated with a fastening operation of the power tool, wherein the fastening value indicates a level of seating of the fastener, wherein the level represents a depth that the fastener is seated within a workpiece; and
controlling, by the electronic controller, a motor of the power tool based on the output.

### Claim 7 (depends on 6)

The method of claim 6, wherein the machine learning control program is generated on an external system device based on exemplary sensor data and associated outputs, and is received by the power tool from the external system device.

### Claim 8 (depends on 7)

The method of claim 7, wherein the machine learning control program is one of a static machine learning control program and a trained machine learning control program.

### Claim 9 (depends on 7)

The method of claim 7, further comprising reducing a speed of the motor based on the fastening value indicating that the fastener is approaching a target fastening torque.

### Claim 10 (depends on 7)

The method of claim 7, further comprising stopping the motor based on the fastening value indicating that the fastener is torqued to a target fastening torque.

### Claim 11 (depends on 7)

The method of claim 7, wherein the operational parameters include one or more of a number of rotations, a measured torque, a characteristic speed, a voltage of the power tool, a current of the power tool, a power of the power tool, a selected operating mode, a fluid temperature, and tool movement information.

### Claim 12 (depends on 11)

The method of claim 11, wherein the power tool includes a gyroscope configured to provide data indicative of a tool movement.

### Claim 13

A power tool comprising:
a housing;
a motor supported by the housing;
a sensor supported by the housing and configured to generate sensor data indicative of an operational parameter of the power tool;
an electronic controller, the electronic controller including an electronic processor and a memory, the memory including a machine learning control program for execution by the electronic processor, the electronic controller configured to:
receive the sensor data,
process the sensor data using the machine learning control program,
generate, using the machine learning control program, an output based on the sensor data and a confidence level associated with the output, the output associated with one or more operational functions of the power tool, and
control a speed of the motor based on the generated output and the confidence level associated with the generated output,
wherein the machine learning control program is configured to process the sensor data using a neural network.

### Claim 14 (depends on 13)

The power tool of claim 13, wherein the one or more operational functions include a torquing operation.

### Claim 15 (depends on 13)

The power tool of claim 13, wherein the electronic controller is configured to reduce the speed of the motor based on the sensor data indicating that a fastener is approaching a specified torque value.

### Claim 16 (depends on 13)

The power tool of claim 13, wherein the neural network is configured to generate multiple outputs corresponding to a desired speed of the motor.

### Claim 17 (depends on 13)

The power tool of claim 13, wherein the machine learning control program is generated on an external system device through training based on exemplary sensor data and associated outputs, and is received by the power tool from the external system device.

### Claim 18 (depends on 13)

The power tool of claim 13, wherein the machine learning control program is one of a static machine learning control program, and a trained machine learning control program.

### Claim 19 (depends on 1)

The power tool of claim 1, wherein the sensor data includes torque data associated with the fastener.

### Claim 20 (depends on 1)

The power tool of claim 1, wherein the level is a value of a range of values, wherein a lowest value in the range of values is associated with 0 percent indicating that the fastener has not started seating and a highest value in the range of values is associated with 100 percent indicating that the fastener is fully seated.
