# US 11,442,454 B2 · Adaptive sensor array system and method

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

- Number: US 11,442,454 B2
- Document ID: US11442454B2
- Status: Granted
- Kind: B2
- Application number: 16/825,406
- Filed: 2020-03-20
- Published: 2020-09-24
- Granted: 2022-09-13
- Earliest claimed: 2019-03-21
- Assignees: SharkNinja Operating LLC
- Applicants: Sharkninja Operating LLC
- Inventors: Alex Irkliy; Charles Fiebig; Isaku D. Kamada; Xavier F. Cullere; Charles S. Brunner; Brian Burke
- Web page: https://patentgrep.com/patent/US11442454B2

## CPC

- G01S 17/89: for mapping or imaging
- G05D 1/0212: {with means for defining a desired trajectory (involving a plurality of land vehicles G05D1/0287)}
- G01C 21/005: {with correlation of navigation data from several sources, e.g. map or contour matching (G01C21/30 takes precedence)}
- G01C 21/206: {specially adapted for indoor navigation}
- G01C 25/00: Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass (testing, calibrating or compensating compasses G01C17/38)
- G01S 7/4873: {by deriving and controlling a threshold value}
- G01S 7/493: Extracting wanted echo signals
- G01S 7/497: Means for monitoring or calibrating
- G01S 17/04: Systems determining the presence of a target
- G01S 17/93: for anti-collision purposes
- G01S 17/931: of land vehicles
- A47L 2201/04: Automatic control of the travelling movement; Automatic obstacle detection
- G01S 7/4091: {during normal radar operation}
- G01S 13/881: {for robotics}
- G01S 2007/4975: {of sensor obstruction by, e.g. dirt- or ice-coating, e.g. by reflection measurement on front-screen}
- G01S: RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G05D: SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G01C: MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY (measuring liquid level G01F; radio navigation, determining distance or velocity by use of propagation effects, e.g. Doppler effects, propagation time, of radio waves, analogous arrangements using other waves G01S)
- A47L: DOMESTIC WASHING OR CLEANING (brushes A46B; cleaning quantities of bottles or of other hollow articles of one kind B08B9/00; laundry D06F); SUCTION CLEANERS IN GENERAL (cleaning in general B08)

## Abstract

An adaptive sensor array system and method includes receiving one or more signals from a sensor array and compare the received signals to one or more object detection threshold values, determining if the robotic cleaner was moving along a travel path for a predetermined period of time, window W, in response to a determination that the robotic cleaner was operating in straight-line motion during the window W, calculating a value of the received detected signals from the sensor array during one or more calibration periods C of the window W, and adjusting one or more of the object detection threshold values based on the calculated value during the window W. A sum of all the calibration periods C during window W is less than a length of the window W. One of the calibration periods C may start at a beginning of the window W.

## Claims

### Claim 1

A sensor array controller for a robotic cleaner comprising:
circuitry configured to:
receive one or more signals from a sensor array and compare said received signals to one or more object detection threshold values;
determine if said robotic cleaner was moving along a travel path for a predetermined period of time, window W;
in response to a determination that said robotic cleaner was moving along said travel path during said window W, calculate a value of said received signals from said sensor array during a plurality of calibration periods C of said window W, wherein a sum of all said calibration periods C during window W is less than a length of said window W; and
adjust one or more of said object detection threshold values based on said calculated value during said window W.

### Claim 2 (depends on 1)

The sensor array controller of claim 1, wherein in response to said determination that said robotic cleaner was not moving along said travel path during said window W, said sensor array controller is further configured to use one or more current object detection threshold values.

### Claim 3 (depends on 1)

The sensor array controller of claim 1, wherein said value of said received signals from the sensor array during the plurality of calibration periods C of the window W is calculated based, at least in part, on an average of said received signals from said sensor array during the plurality of calibration periods C of said window W.

### Claim 4 (depends on 1)

The sensor array controller of claim 1, wherein said robotic cleaner is determined to have been moving along said travel path during window W if said robotic cleaner does not detect a bump and does not initiate a turn.

### Claim 5 (depends on 1)

The sensor array controller of claim 1, wherein said circuitry is further configured to:
determine whether said received signals from said sensor array meet or exceed one or more of said object detection thresholds for greater than or equal to a predetermined amount of time Tfalse; and
in response to a determination that said received signals from said sensor array meet or exceed one or more of said object detection thresholds for greater than or equal to a predetermined amount of time Tfalse, cause said robotic cleaner to engage forward motion.

### Claim 6 (depends on 5)

The sensor array controller of claim 5, wherein said determining whether said received signals from said sensor array meet or exceed one or more of said object detection thresholds for greater than or equal to said predetermined amount of time Tfalse comprises determining whether said received signals from said sensor array meet or exceed a far object detection threshold for greater than or equal to said predetermined amount of time Tfalse.

### Claim 7 (depends on 5)

The sensor array controller of claim 5, wherein engaging forward motion comprises one or more of:
setting one or more of the object detection thresholds to a maximum value;
setting one or more of the object detection thresholds to an elevated value;
disable one or more of the object detection thresholds; and/or
ignoring one or more of the object detection thresholds.

### Claim 8 (depends on 1)

The sensor array controller of claim 1, wherein at least one of said calibration periods C starts at a beginning of said window W.

### Claim 9 (depends on 1)

The sensor array controller of claim 1, wherein said travel path comprises substantially linear movement.

### Claim 10 (depends on 1)

The sensor array controller of claim 1, wherein said travel path comprises a curvilinear movement.

### Claim 11

An adaptive sensor array for a robotic cleaner method comprising:
receiving one or more signals from a sensor array and comparing said received signals to one or more object detection threshold values;
determining if said robotic cleaner was moving along a travel path for a predetermined period of time, window W;
in response to said determination that said robotic cleaner was moving along said travel path during said window W, calculating a value of said received signals from said sensor array during a plurality of calibration periods C of said window W, wherein a sum of all said calibration periods C during window W is less than a length of said window W; and
adjusting one or more of said object detection threshold values based on said calculated value during said window W.

### Claim 12 (depends on 11)

The method of claim 11, wherein in response to a determination that said robotic cleaner was not moving along said travel path during said window W, said method further comprises using one or more current object detection threshold values.

### Claim 13 (depends on 11)

The method of claim 11, wherein said calculating said value of said received signals from the sensor array during the plurality of calibration periods C of the window W comprises calculating said value based, at least in part, on an average of said received signals from said sensor array during the plurality of calibration periods C of said window W.

### Claim 14 (depends on 11)

The method of claim 11, determining said robotic cleaner was moving along said travel path during window W if said robotic cleaner does not detect a bump and does not initiate a turn.

### Claim 15 (depends on 11)

The method of claim 11, further comprising:
determining whether said received signals from said sensor array meet or exceed one or more of said object detection thresholds for greater than or equal to a predetermined amount of time Tfalse; and
in response to said determining that said received signals from said sensor array meet or exceed one or more of said object detection thresholds for greater than or equal to a predetermined amount of time Tfalse, causing said robotic cleaner to engage forward motion.

### Claim 16 (depends on 15)

The method of claim 15, wherein said determining whether said received signals from said sensor array meet or exceed one or more of said object detection thresholds for greater than or equal to said predetermined amount of time Tfalse comprises determining whether said received signals from said sensor array meet or exceed a far object detection threshold for greater than or equal to said predetermined amount of time Tfalse.

### Claim 17 (depends on 15)

The method of claim 15, wherein engaging forward motion comprises one or more of:
setting one or more of the object detection thresholds to a maximum value;
setting one or more of the object detection thresholds to an elevated value;
disable one or more of the object detection thresholds; and/or
ignoring one or more of the object detection thresholds.

### Claim 18 (depends on 11)

The method of claim 11, wherein at least one of said calibration periods C starts at a beginning of said window W.

### Claim 19 (depends on 11)

The method of claim 11, wherein said travel path comprises substantially linear movement.

### Claim 20 (depends on 11)

The method of claim 11, wherein said travel path comprises a curvilinear movement.

### Claim 21

One or more non-transitory computer readable memories which store, in combination or singularly, instructions that, when executed by one or more processors, cause of the following operations:
receiving one or more signals from a sensor array for a robotic cleaner and comparing said received signals to one or more object detection threshold values;
determining if said robotic cleaner was moving along a travel path for a predetermined period of time, window W;
in response to said determination that said robotic cleaner was moving along said travel path straight-line motion during said window W, calculating a value of said received signals from said sensor array during a plurality of calibration periods C of said window W, wherein a sum of all said calibration periods C during window W is less than a length of said window W; and
adjusting one or more of said object detection threshold values based on said calculated value during said window W.

### Claim 22 (depends on 21)

The one or more non-transitory computer readable memories of claim 21, wherein in response to a determination that said robotic cleaner was not moving along said travel path during said window W, said operations further comprise using one or more current object detection threshold values.

### Claim 23 (depends on 21)

The one or more non-transitory computer readable memories of claim 21, wherein said calculating said value of said received signals from the sensor array during the plurality of calibration periods C of the window W comprises calculating said value based, at least in part, on an average of said received signals from said sensor array during the plurality of calibration periods C of said window W.

### Claim 24 (depends on 21)

The one or more non-transitory computer readable memories of claim 21, determining said robotic cleaner was moving along said travel path during window W if said robotic cleaner does not detect a bump and does not initiate a turn.

### Claim 25 (depends on 21)

The one or more non-transitory computer readable memories of claim 21, further comprising the operations of:
determining whether said received signals from said sensor array meet or exceed one or more of said object detection thresholds for greater than or equal to a predetermined amount of time Tfalse; and
in response to said determining that said received signals from said sensor array meet or exceed one or more of said object detection thresholds for greater than or equal to a predetermined amount of time Tfalse, causing said robotic cleaner to engage forward motion.

### Claim 26 (depends on 25)

The one or more non-transitory computer readable memories of claim 25, wherein said determining whether said received signals from said sensor array meet or exceed one or more of said object detection thresholds for greater than or equal to said predetermined amount of time Tfalse comprises determining whether said received signals from said sensor array meet or exceed a far object detection threshold for greater than or equal to said predetermined amount of time Tfalse.

### Claim 27 (depends on 25)

The one or more non-transitory computer readable memories of claim 25, wherein engaging forward motion comprises one or more of:
setting one or more of the object detection thresholds to a maximum value;
setting one or more of the object detection thresholds to an elevated value;
disable one or more of the object detection thresholds; and/or
ignoring one or more of the object detection thresholds.

### Claim 28 (depends on 21)

The one or more non-transitory computer readable memories of claim 21, wherein at least one of said calibration periods C starts at a beginning of said window W.

### Claim 29 (depends on 21)

The one or more non-transitory computer readable memories of claim 21, wherein said travel path comprises substantially linear movement.

### Claim 30 (depends on 21)

The one or more non-transitory computer readable memories of claim 21, wherein said travel path comprises a curvilinear movement.
