IP Library Granted Patent US 12669138
Granted Patent B2
US 12669138 · App. 18/738,150 · Granted Jun 30, 2026

Systems and methods for processing ultrasonic signals to detect the position of a piston

Inventors: Eloise Lafitte-Houssat (Clamart, FR); Remi Didier Robutel (Clamart, FR)
Assignee: SCHLUMBERGER TECHNOLOGY CORPORATION
F15B15/2884
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12669138
App. No.
18/738,150
Granted
Jun 30, 2026
Kind
B2
Abstract

A position detection system comprising a hydraulic actuator including a cylinder and piston adapted to move within the cylinder; an ultrasonic transducer adapted to detect an ultrasonic signal indicative of a position of the piston within the cylinder; and a controller. The controller is adapted to receive the ultrasonic signal from the ultrasonic transducer, implement a cross-correlation function to identify a first echo and a second echo in the ultrasonic signal, determine a velocity of first echo and the second echo, and determine the position of the piston within the cylinder in response to determining that the difference between the velocity of the first echo and the second echo and a theoretical velocity is less than a threshold.

Claims (78)

1 . A position detection system, comprising:

a hydraulic actuator including a cylinder and a piston adapted to move linearly within the cylinder, the piston having a first surface and a second surface that is displaced from the first surface by a known distance;

an ultrasonic transducer adapted to detect an ultrasonic signal indicative of a position of the piston within the cylinder; and

a controller coupled to the ultrasonic transducer, the controller is adapted to:

receive the ultrasonic signal from the ultrasonic transducer;

implement a cross-correlation function to identify a first echo and a second echo in the ultrasonic signal;

determine a velocity of the first echo and the second echo;

determine whether a difference between the velocity of the first echo and the second echo and a theoretical velocity is less than a threshold; and

in response to determining that the difference between the velocity of the first echo and the second echo and a theoretical velocity is less than a threshold, determine the position of the piston within the cylinder based in part on the known distance.

2 . The position detection system of claim 1 , wherein to generate the ultrasonic signal, the ultrasonic transducer is further adapted to emit an ultrasonic pulse in a first direction towards the piston.

3 . The position detection system of claim 2 , wherein the first echo is a reflection of the ultrasonic pulse off the first surface of the piston and the second echo is a reflection of the ultrasonic pulse off the second surface of the piston.

4 . The position detection system of claim 1 , wherein the controller is further adapted to:

determine a time of flight of the first echo based on the ultrasonic signal; and

store the time of flight of the first echo in a memory.

5 . The position detection system of claim 1 , wherein to determine the position of the piston within the cylinder based in part on the known distance, the controller is further adapted to:

determine a time of flight of the first echo based on the ultrasonic signal;

determine a time shift between the first echo and the second echo based on the ultrasonic signal; and

determine the position of the piston within the cylinder based on the known distance, the time of flight of the first echo, and the time shift between the first echo and the second echo.

6 . The position detection system of claim 5 , wherein in response to determining that the difference between the velocity of the first echo and the second echo and a theoretical velocity exceeds the threshold, the controller is further adapted to:

implement a Hilbert envelope method to identify the first echo and the second echo in the ultrasonic signal; and

determine the position of the piston within the cylinder based on the known distance and at least one characteristic of the first echo and the second echo, the time of flight of the first echo, and the time shift between the first echo and the second echo.

7 . The position detection system of claim 1 , wherein to determine the velocity of the first echo and the second echo, the controller is further adapted to:

determine a time shift between the first echo and the second echo; and

determine the velocity of the first echo and the second echo based on the known distance and the time shift between the first echo and the second echo.

8 . The position detection system of claim 1 , wherein the controller is further adapted to:

receive a second ultrasonic signal from the ultrasonic transducer;

implement the cross-correlation function to identify a first echo in the second ultrasonic signal and a second echo in the second ultrasonic signal;

determine at least one characteristic of the first echo in the second ultrasonic signal;

determine whether a difference between the at least one characteristic of the first echo in the second ultrasonic signal and a characteristic of the first echo in the ultrasonic signal passes a physical check; and

in response to determining that the difference between the at least one characteristic of the first echo in the second ultrasonic signal and the characteristic of the first echo in the ultrasonic signal passes the physical check, determine an updated position of the piston within the cylinder based in part on the at least one characteristic of the first echo in the second ultrasonic signal.

9 . The position detection system of claim 8 , wherein the at least one characteristic of the first echo in the second ultrasonic signal is a time of flight of the first echo in the second ultrasonic signal.

10 . The position detection system of claim 8 , wherein in response to determining that the difference between the at least one characteristic of the first echo in the second ultrasonic signal and the characteristic of the first echo in the ultrasonic signal does not pass the physical check, the controller is further adapted to:

implement a Hilbert envelope method to identify the first echo in the second ultrasonic signal and the second echo in the ultrasonic signal;

determine at least one updated characteristic of the first echo in the second ultrasonic signal; and

determine the updated position of the piston within the cylinder based in part on the known distance and the at least one updated characteristic of the first echo in the second ultrasonic signal.

11 . A method for detecting the position of a piston within a cylinder of a hydraulic actuator, the method comprising:

providing the hydraulic actuator including the cylinder and the piston adapted to move linearly within the cylinder, the piston having a first surface and a second surface that is displaced from the first surface by a known distance, and an ultrasonic transducer adapted to detect an ultrasonic signal indicative of a position of the piston within the cylinder;

receiving, from the ultrasonic transducer, an ultrasonic signal indicative of the position of the piston within the cylinder;

implementing a cross-correlation function to identify a first echo and a second echo in the ultrasonic signal;

determining a velocity of the first echo or the second echo;

determining whether a difference between the velocity of the first echo or the second echo and a theoretical velocity is less than a threshold; and

in response to determining that the difference between the velocity of the first echo or the second echo and a theoretical velocity is less than a threshold, determining the position of the piston within the cylinder based in part on a time shift between the first echo and the second echo in the ultrasonic signal.

12 . The method of claim 11 , wherein determining the position of the piston within the cylinder based in part on the time shift between the first echo and the second echo in the ultrasonic signal comprises:

determining a time of flight of the first echo based on the ultrasonic signal;

determining a known distance between the first surface of the piston off which the first echo was reflected and the second surface of the piston off which the second echo was reflected; and

determining the position of the piston within the cylinder based on the time shift between the first echo and the second echo in the ultrasonic signal, the time of flight of the first echo, and the known distance.

13 . The method of claim 11 , further comprising in response to determining that the difference between the velocity of the first echo and the second echo and a theoretical velocity exceeds the threshold:

implementing a Hilbert envelope method to identify the first echo and the second echo in the ultrasonic signal; and

determining the position of the piston within the cylinder based in part on a time shift between the first echo and the second echo that were identified in the ultrasonic signal with the Hilber envelope method.

14 . The method of claim 11 , wherein to generate the ultrasonic signal, the method further comprises:

emitting, via the ultrasonic transducer, an ultrasonic pulse in a first direction towards the piston;

detecting the first echo, wherein the first echo is a reflection of the ultrasonic pulse off the first surface of the piston; and

detecting the second echo, wherein the second echo is a reflection of the ultrasonic pulse off the second surface of the piston.

15 . The method of claim 11 , further comprising:

determining a time of flight of the first echo based on the ultrasonic signal; and

storing the time of flight of the first echo in a memory.

16 . The method of claim 11 , further comprising:

receiving a second ultrasonic signal from the ultrasonic transducer;

implementing the cross-correlation function to identify a first echo in the second ultrasonic signal and a second echo in the second ultrasonic signal;

determining at least one characteristic of the first echo in the second ultrasonic signal;

determining whether a difference between the at least one characteristic of the first echo in the second ultrasonic signal and a characteristic of the first echo in the ultrasonic signal passes a physical check; and

in response to determining that the difference between the at least one characteristic of the first echo in the second ultrasonic signal and the characteristic of the first echo in the ultrasonic signal passes the physical check, determining an updated position of the piston within the cylinder based in part on the at least one characteristic of the first echo in the second ultrasonic signal.

17 . The method of claim 16 , wherein in response to determining that the difference between the at least one characteristic of the first echo in the second ultrasonic signal and the characteristic of the first echo in the ultrasonic signal does not pass the physical check, the method further comprises:

implementing a Hilbert envelope method to identify the first echo in the second ultrasonic signal and the second echo in the ultrasonic signal;

determining at least one updated characteristic of the first echo in the second ultrasonic signal; and

determining the updated position of the piston within the cylinder based in part on the at least one updated characteristic of the first echo in the second ultrasonic signal.

18 . A hydraulic actuator, comprising:

a cylinder having a base portion;

a piston adapted to move within an interior of the cylinder, the piston having a first surface and a second surface that is indented relative to the first surface by a known distance;

an ultrasonic transducer disposed on the base portion and adapted to detect an ultrasonic signal indicative of a position of the piston within the cylinder; and

a controller coupled to the ultrasonic transducer, the controller is adapted to:

receive the ultrasonic signal from the ultrasonic transducer;

implement a cross-correlation function to identify a first echo and a second echo in the ultrasonic signal;

determine a velocity of the first echo and the second echo;

determine whether a difference between the velocity of the first echo and the second echo and a theoretical velocity is less than a threshold; and

in response to determining that the difference between the velocity of the first echo and the second echo and a theoretical velocity is less than a threshold, determine a distance between the base portion and the first surface of the piston independent of a pressure or a temperature within the interior of the cylinder.

19 . The hydraulic actuator of claim 18 , wherein to determine the distance between the base portion and the first surface of the piston independent of the pressure or the temperature within the interior of the cylinder, the controller is further adapted to determine the distance between the base portion and the first surface of the piston based on the known distance.

20 . The hydraulic actuator of claim 18 , wherein the first echo is a reflection of an ultrasonic pulse off the first surface of the piston and the second echo is a reflection of the ultrasonic pulse off the second surface of the piston.