# US 10,499,609 B2 · Vision system for teat detection

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

- Number: US 10,499,609 B2
- Document ID: US10499609B2
- Status: Granted
- Kind: B2
- Application number: 15/448,821
- Filed: 2017-03-03
- Published: 2018-02-22
- Granted: 2019-12-10
- Earliest claimed: 2016-08-17
- Assignees: Technologies Holdings Corp.
- Applicants: Technologies Holdings Corp.
- Inventors: Mark A. Foresman; Marijn Van Anart; Peter Willem van der Sluis
- Web page: https://patentgrep.com/patent/US10499609B2

## CPC

- A01J 5/0175: {Attaching of clusters}
- A01J 5/007: Monitoring milking processes; Control or regulation of milking machines
- A01K 1/12: Milking stations
- B25J 9/1697: {Vision controlled systems}
- B25J 19/022: {using lasers}
- A01J: MANUFACTURE OF DAIRY PRODUCTS
- A01K: ANIMAL HUSBANDRY; AVICULTURE; APICULTURE; PISCICULTURE; FISHING; REARING OR BREEDING ANIMALS, NOT OTHERWISE PROVIDED FOR; NEW BREEDS OF ANIMALS
- B25J: MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES ({manipulators specially adapted for use in surgery A61B34/70; manipulators used in cleaning hollow articles B08B9/04}; manipulators associated with rolling mills B21B39/20; manipulators associated with forging machines B21J13/10; {manipulators associated with picking-up and placing mechanisms B23P19/007}; means for holding wheels or parts thereof B60B30/00; {vehicles with ground-engaging propulsion means, e.g. walking members B62D57/02, B62D57/032; devices for picking-up and depositing articles or materials between conveyors B65G47/90, B65G47/91; manipulators with gripping or holding means for transferring packages B65H67/065}; cranes B66C; {manipulators used in the protection or supervision of pipe-line installations F17D5/00; walking equipment adapted for nuclear steam-generators F22B37/006}; manipulators specially adapted for, or associated with, nuclear reactors G21C; {apparatus used for handling wafers during manufacture or treatment of semiconductor H10P72/50})

## Abstract

A system includes a robotic arm, a laser, and a processor. The processor is configured to determine whether a first teat of a diary livestock is found in a first scan of the dairy livestock by the laser, and if so, command the robotic arm to move to a location corresponding to the location of the first teat. The processor is further configured to increment a counter associated with the first teat and then determine whether the counter equals a predetermined number. If the counter equals the predetermined number, the processor commands the robotic arm to attach a teat cup to the first teat. If the counter does not equal the predetermined number, the processor determines whether the first teat is found in a second scan by the laser. If the first teat is found in the second scan, the processor commands the robotic arm to attach the teat cup to the first teat.

## Claims

### Claim 1

A vision system comprising:
a robotic arm configured to attach a teat cup to a dairy livestock;
a laser configured to generate a plurality of profile signals, each profile signal comprising information associated with a relative distance between the laser and at least a portion of the dairy livestock;
one or more memory devices operable to store the plurality of profile signals; and
a processor communicatively coupled to the laser and the one or more memory devices, the processor configured to:
access a first profile signal generated by the laser from a first scan;
determine that a first teat is found in the first profile signal, the first teat located at a first scan location within the first profile signal;
in response to determining that the first teat is found in the first profile signal, command the robotic arm to move to a first location corresponding to the first scan location;
increment a counter corresponding to the first teat;
determine whether the counter equals a predetermined number;
in response to determining that the counter equals the predetermined number, command the robotic arm to attach the teat cup to the first teat; and
in response to determining that the counter does not equal the predetermined number:
access a second profile signal generated by the laser from a second scan;
determine that the first teat is found in the second profile signal; and
in response to determining that the first teat is found in the second profile signal, command the robotic arm to attach the teat cup to the first teat.

### Claim 2 (depends on 1)

The vision system of claim 1, wherein the predetermined number is three.

### Claim 3 (depends on 1)

The vision system of claim 1, wherein the processor is further configured to:
determine that the first teat is not found in the first profile signal;
in response to determining that the first teat is not found in the first profile signal, command the robotic arm to move up a predetermined amount; and
after the robotic arm moves up the predetermined amount, command the laser to perform the first scan of the dairy livestock again.

### Claim 4 (depends on 3)

The vision system of claim 3, wherein the predetermined amount is less than or equal to 5 mm.

### Claim 5 (depends on 1)

The vision system of claim 1, wherein the processor is further configured to:
determine that the first teat is not found in the second profile signal; and
in response to determining that the first teat is not found in the second profile signal, command the robotic arm to move back to the first location corresponding to the expected teat position.

### Claim 6 (depends on 1)

The vision system of claim 1, wherein the laser is coupled to the robotic arm.

### Claim 7 (depends on 1)

The vision system of claim 1, wherein the dairy livestock is in a stall.

### Claim 8

A method, comprising:
accessing, by a processor, a first profile signal generated by a laser from a first scan of a dairy livestock;
determining, by the processor, that a first teat of the dairy livestock is found in the first profile signal, the first teat located at a first scan location within the first profile signal;
in response to determining that the first teat is found in the first profile signal, commanding, by the processor, a robotic arm to move to a first location corresponding to the first scan location;
incrementing, by the processor, a counter corresponding to the first teat;
determining, by the processor, whether the counter equals a predetermined number;
in response to determining that the counter equals the predetermined number, commanding, by the processor, the robotic arm to attach a teat cup to the first teat; and
in response to determining that the counter does not equal the predetermined number:
accessing, by the processor, a second profile signal generated by the laser from a second scan;
determining, by the processor, that the first teat is found in the second profile signal; and
in response to determining that the first teat is found in the second profile signal, commanding, by the processor, the robotic arm to attach the teat cup to the first teat.

### Claim 9 (depends on 8)

The method of claim 8, wherein the predetermined number is three.

### Claim 10 (depends on 8)

The method of claim 8, further comprising:
determining, by the processor, that the first teat is not found in the first profile signal;
in response to determining that the first teat is not found in the first profile signal, commanding, by the processor, the robotic arm to move up a predetermined amount; and
after the robotic arm moves up the predetermined amount, commanding, by the processor, the laser to perform the first scan of the dairy livestock again.

### Claim 11 (depends on 10)

The method of claim 10, wherein the predetermined amount is less than or equal to 5 mm.

### Claim 12 (depends on 8)

The method of claim 8, further comprising:
determining, by the processor, that the first teat is not found in the second profile signal; and
in response to determining that the first teat is not found in the second profile signal, commanding, by the processor, the robotic arm to move back to the first location corresponding to the expected teat position.

### Claim 13 (depends on 8)

The method of claim 8, wherein the laser is coupled to the robotic arm.

### Claim 14 (depends on 8)

The method of claim 8, wherein the dairy livestock is in a stall.

### Claim 15

One or more computer-readable non-transitory storage media comprising software that is executable by one or more processors to:
access a first profile signal generated by a laser from a first scan of a dairy livestock;
determine that a first teat of the dairy livestock is found in the first profile signal, the first teat located at a first scan location within the first profile signal;
in response to determining that the first teat is found in the first profile signal, command a robotic arm to move to a first location corresponding to the first scan location;
increment a counter corresponding to the first teat;
determine whether the counter equals a predetermined number;
in response to determining that the counter equals the predetermined number, command the robotic arm to attach a teat cup to the first teat; and
in response to determining that the counter does not equal the predetermined number:
access a second profile signal generated by the laser from a second scan;
determine that the first teat is found in the second profile signal; and
in response to determining that the first teat is found in the second profile signal, command the robotic arm to attach the teat cup to the first teat.

### Claim 16 (depends on 15)

The one or more computer-readable non-transitory storage media of claim 15, wherein the predetermined number is three.

### Claim 17 (depends on 15)

The one or more computer-readable non-transitory storage media of claim 15, the software further executable by the one or more processors to:
determine that the first teat is not found in the first profile signal;
in response to determining that the first teat is not found in the first profile signal, command the robotic arm to move up a predetermined amount; and
after the robotic arm moves up the predetermined amount, command the laser to perform the first scan of the dairy livestock again.

### Claim 18 (depends on 17)

The one or more computer-readable non-transitory storage media of claim 17, wherein the predetermined amount is less than or equal to 5 mm.

### Claim 19 (depends on 15)

The one or more computer-readable non-transitory storage media of claim 15, the software further executable by the one or more processors to:
determine that the first teat is not found in the second profile signal; and
in response to determining that the first teat is not found in the second profile signal, command the robotic arm to move back to the first location corresponding to the expected teat position.
