IP Library Granted Patent US 12,466,075
Granted Patent B2
US 12,466,075 · App. 17/805,101 · Granted Nov 11, 2025

Autonomous and teleoperated sensor pointing on a mobile robot

Inventors: Christopher Stathis (Bedford, MA); Dion Gonano (Somerville, MA); Robert Eugene Paolini (Cambridge, MA); Adam Komoroski (Westwood, MA)
Assignee: Boston Dynamics, Inc.
B25J9/1697B25J9/163B25J9/1653B25J9/1664
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 12,466,075
App. No.
17/805,101
Filed
Jun 2, 2022
Granted
Nov 11, 2025
Kind
B2
Art Unit
3657
USPC
700/252
Abstract

A computer-implemented method executed by data processing hardware of a robot causes the data processing hardware to perform operations. The operations include receiving a sensor pointing command that commands the robot to use a sensor to capture sensor data of a location in an environment of the robot. The sensor is disposed on the robot. The operations include determining, based on an orientation of the sensor relative to the location, a direction for pointing the sensor toward the location, and an alignment pose of the robot to cause the sensor to point in the direction toward the location. The operations include commanding the robot to move from a current pose to the alignment pose. After the robot moves to the alignment pose and the sensor is pointing in the direction toward the location, the operations include commanding the sensor to capture the sensor data of the location in the environment.

Claims (67)

1 . A computer-implemented method that when executed by data processing hardware of a legged robot causes the data processing hardware to perform operations comprising:

receiving, from a user computing device, a sensor pointing command that commands the legged robot to navigate to a waypoint and use a first sensor of the legged robot to capture sensor data of a target location in an environment of the legged robot by pointing the first sensor in a target direction toward the target location at the waypoint;

commanding a first movement of one or more legs of the legged robot to move the legged robot to the waypoint based on receiving the sensor pointing command, wherein the first movement of the one or more legs transitions the legged robot from a first pose of the legged robot to a second pose of the legged robot using a set of joints of the legged robot;

determining a first orientation of the first sensor relative to the target location based on the second pose of the legged robot;

obtaining, from a second sensor that is different than the first sensor, first image data;

determining, based on the sensor pointing command, the first image data obtained from the second sensor, and the first orientation of the first sensor relative to the target location, a third pose of the legged robot that points the first sensor in the target direction toward the target location, wherein each of the first pose, the second pose, and the third pose correspond to a respective set of positions of the set of joints;

commanding a second movement of the one or more legs based on receiving the sensor pointing command, wherein the second movement of the one or more legs transitions the legged robot from the second pose to the third pose using the set of joints; and

commanding the first sensor to capture the sensor data of the target location based on receiving the sensor pointing command.

2 . The method of claim 1 , wherein the sensor pointing command comprises one or more sensor data capture parameters, the one or more sensor data capture parameters comprising an angle of the first sensor, a height of the first sensor, a proximity of the first sensor relative to the target location, or a direction of the first sensor relative to the target location.

3 . The method of claim 1 , wherein the first sensor comprises a camera, wherein the sensor data of the target location comprises second image data of the target location, wherein the sensor pointing command comprises an identifier of an object, and wherein the operations further comprise:

detecting, using the second image data of the target location, the object within the environment based on the sensor pointing command.

4 . The method of claim 1 , wherein the first sensor comprises a pan-tilt-zoom (PTZ) sensor.

5 . The method of claim 4 , wherein the operations further comprise:

determining, based on the sensor pointing command and the first orientation of the first sensor relative to the target location, a second orientation of the first sensor relative to the target location for aligning a field of view of the PTZ sensor with the target direction; and

commanding a third movement of the PTZ sensor based on determining the second orientation of the first sensor relative to the target location, wherein a combination of the third movement of the PTZ sensor and the second movement of the one or more legs causes the first sensor to point in the target direction toward the target location.

6 . The method of claim 5 , wherein the operations further comprise:

receiving, from the PTZ sensor, feedback data indicating an error associated with the field of view of the PTZ sensor, wherein determining the third pose is further based on the feedback data.

7 . The method of claim 6 , wherein the error indicates that a difference between the field of view of the PTZ sensor and a field of view associated with pointing in the target direction toward the target location is greater than or equal to a threshold difference.

8 . The method of claim 1 , wherein receiving the sensor pointing command comprises receiving a user input indicating a selection of a ray or a point relative to a coordinate frame of the legged robot.

9 . The method of claim 1 , wherein the sensor pointing command comprises a model of an object, and wherein the operations further comprise:

obtaining second image data;

identifying, using the model of the object, the object within the second image data; and

determining the target direction based on identifying the object.

10 . The method of claim 1 , wherein the sensor pointing command comprises an output of an object detector, and wherein the operations further comprise:

obtaining second image data;

identifying, using the output of the object detector, an object within the second image data; and

determining the target direction based on the object and a field of view of the first sensor.

11 . The method of claim 1 , wherein the first sensor is fixed to the legged robot.

12 . The method of claim 1 , wherein the operations further comprise:

determining inverse kinematics associated with the legged robot, wherein determining the third pose is further based on determining the inverse kinematics associated with the legged robot.

13 . The method of claim 1 , wherein the operations further comprise:

coordinating a movement of the first sensor and the second movement of the one or more legs to align the first sensor with the target direction.

14 . The method of claim 1 , wherein the first orientation of the first sensor relative to the target location is updated based on the second movement of the one or more legs, and wherein commanding the first sensor to capture the sensor data is further based on the first orientation of the first sensor relative to the target location.

15 . A system comprising:

data processing hardware; and

memory hardware in communication with the data processing hardware, the memory hardware storing instructions that when executed by the data processing hardware cause the data processing hardware to:

receive, from a user computing device, a sensor pointing command that commands a legged robot to navigate to a waypoint and use a first sensor disposed on the legged robot to capture sensor data of a target location in an environment of the legged robot by pointing the first sensor in a target direction toward the target location at the waypoint;

command a first movement of one or more legs of the legged robot to move the legged robot to the waypoint based on receiving the sensor pointing command, wherein the first movement of the one or more legs transitions the legged robot from a first pose of the legged robot to a second pose of the legged robot using a set of joints of the legged robot;

determine a first orientation of the first sensor relative to the target location based on the second pose of the legged robot;

obtain, from a second sensor that is different than the first sensor, first image data;

determine, based on the sensor pointing command, the first image data obtained from the second sensor, and the first orientation of the first sensor relative to the target location, a third pose of the legged robot that points the first sensor in the target direction toward the target location, wherein each of the first pose, the second pose, and the third pose correspond to a respective set of positions of the set of joints;

command a second movement of the one or more legs based on receiving the sensor pointing command, wherein the second movement of the one or more legs transitions the legged robot from the second pose to the third pose using the set of joints; and

command the first sensor to capture the sensor data of the target location based on receiving the sensor pointing command.

16 . The system of claim 15 , wherein the sensor pointing command comprises one or more sensor data capture parameters, the one or more sensor data capture parameters comprising an angle of the first sensor, a height of the first sensor, a proximity of the first sensor relative to the target location, or a direction of the first sensor relative to the target location.

17 . The system of claim 15 , wherein the first sensor comprises a camera, wherein the sensor data of the target location comprises second image data of the target location, wherein the sensor pointing command comprises an identifier of an object, and wherein execution of the instructions by the data processing hardware further causes the data processing hardware to:

detect, using the second image data of the target location, the object within the environment based on the sensor pointing command.

18 . The system of claim 15 , wherein the first sensor comprises a pan-tilt-zoom (PTZ) sensor.

19 . The system of claim 18 , wherein execution of the instructions by the data processing hardware further causes the data processing hardware to:

determine, based on the sensor pointing command and the first orientation of the first sensor relative to the target location, a second orientation of the first sensor relative to the target location for aligning a field of view of the PTZ sensor with the target direction; and

command a third movement of the PTZ sensor based on determining the second orientation of the first sensor relative to the target location, wherein a combination of the third movement of the PTZ sensor and the second movement of the one or more legs causes the first sensor to point in the target direction toward the target location.

20 . The system of claim 19 , wherein the execution of the instructions by the data processing hardware further causes the data processing hardware to:

receive, from the PTZ sensor, feedback data indicating an error associated with the field of view of the PTZ sensor, wherein determining the third pose is further based on the feedback data.

21 . The system of claim 20 , wherein the error indicates that a difference between the field of view of the PTZ sensor and a field of view associated with pointing in the target direction toward the target location is greater than or equal to a threshold difference.

22 . The system of claim 15 , wherein to receive the sensor pointing command, execution of the instructions by the data processing hardware further causes the data processing hardware to:

receive a user input indicating a selection of a ray or a point relative to a known coordinate frame of the legged robot.

23 . The system of claim 15 , wherein the sensor pointing command comprises a model of an object, and wherein execution of the instructions by the data processing hardware further causes the data processing hardware to:

obtain second image data;

identify, using the model of the object, the object within the second image data; and

determine the target direction based on identifying the object.

24 . The system of claim 15 , wherein the sensor pointing command comprises an output of an object detector, and wherein execution of the instructions by the data processing hardware further causes the data processing hardware to:

obtain second image data;

identify, using the output of the object detector, an object within the second image data; and

determine the target direction based on the object and a field of view of the first sensor.

25 . The system of claim 15 , wherein the first sensor is fixed to the legged robot.

26 . The system of claim 15 , wherein execution of the instructions by the data processing hardware further causes the data processing hardware to:

determine inverse kinematics associated with the legged robot, wherein determining the third pose is further based on determining the inverse kinematics associated with the legged robot.

27 . The system of claim 15 , wherein the first orientation of the first sensor relative to the target location is updated based on the second movement of the one or more legs, and wherein commanding the first sensor to capture the sensor data is further based on the first orientation of the first sensor relative to the target location.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2022
From: STATHIS, CHRISTOPHER; GONANO, DION; PAOLINI, ROBERT EUGENE; KOMOROSKI, ADAM
To: BOSTON DYNAMICS, INC.
Reel/Frame 060724/0372 →
Continuity (2)
Provisional Application 63202291 · Jun 4, 2021
Related Publication 20220388174A1 · Dec 8, 2022
References Cited (111)
US 6904334B2 · Asano · 2005 [cited by examiner]
US 8060344B2 · Stathis · 2011 [cited by applicant]
US 8410732B2 · Kassow et al. · 2013 [cited by applicant]
US 8594844B1 · Gal · 2013 [cited by examiner]
US 8614559B2 · Kassow et al. · 2013 [cited by applicant]
US 8725273B2 · Lenser · 2014 [cited by examiner]
US 8779715B2 · Kassow et al. · 2014 [cited by applicant]
US 8874261B2 · Hein et al. · 2014 [cited by applicant]
US 8929603B1 · Maali · 2015 [cited by examiner]
US 9592912B1 · Michini et al. · 2017 [cited by applicant]
US 9747698B2 · Stathis · 2017 [cited by applicant]
US 9770823B2 · Huang · 2017 [cited by examiner]
US 9858712B2 · Stathis · 2018 [cited by applicant]
US 9876993B2 · Sablak · 2018 [cited by examiner]
US 10155166B1 · Taylor · 2018 [cited by examiner]
US 10410328B1 · Liu · 2019 [cited by examiner]
US 11331799B1 · Shafer · 2022 [cited by examiner]
US 11372408B1 · Webster · 2022 [cited by examiner]
US 11416003B2 · Whitman et al. · 2022 [cited by applicant]
US 11537130B2 · Gaschler · 2022 [cited by applicant]
US 11712802B2 · Chestnutt et al. · 2023 [cited by applicant]
US 11787050B1 · Kaehler · 2023 [cited by examiner]
US 11797016B2 · Seifert et al. · 2023 [cited by applicant]
US 12304083B2 · Zheng · 2025 [cited by examiner]
US 20020169733A1 · Peters, II et al. · 2002 [cited by applicant]
US 20020183896A1 · Ogure · 2002 [cited by examiner]
US 20040193321A1 · Anfindsen et al. · 2004 [cited by applicant]
US 20040199302A1 · Pillar · 2004 [cited by examiner]
US 20050041839A1 · Saitou · 2005 [cited by examiner]
US 20050126144A1 · Koselka et al. · 2005 [cited by applicant]
US 20050222713A1 · Kawabe · 2005 [cited by examiner]
US 20090052740A1 · Sonoura · 2009 [cited by examiner]
US 20100036527A1 · Matsunaga · 2010 [cited by examiner]
US 20110231016A1 · Goulding · 2011 [cited by examiner]
US 20110264265A1 · Kanemoto · 2011 [cited by examiner]
US 20120121161A1 · Eade · 2012 [cited by examiner]
US 20120155775A1 · Ahn · 2012 [cited by examiner]
US 20120158183A1 · Lim · 2012 [cited by examiner]
US 20120197464A1 · Wang et al. · 2012 [cited by applicant]
US 20120280087A1 · Coffman et al. · 2012 [cited by applicant]
US 20130231779A1 · Purkayastha · 2013 [cited by examiner]
US 20130338525A1 · Allen · 2013 [cited by examiner]
US 20140129027A1 · Schnittman · 2014 [cited by applicant]
US 20140336848A1 · Saund · 2014 [cited by examiner]
US 20150269439A1 · Versace · 2015 [cited by examiner]
US 20150273684A1 · Huang et al. · 2015 [cited by applicant]
US 20150296142A1 · Cappel-Porter · 2015 [cited by examiner]
US 20160188977A1 · Kearns · 2016 [cited by examiner]
US 20170329347A1 · Passot et al. · 2017 [cited by applicant]
US 20170358201A1 · Govers · 2017 [cited by examiner]
US 20180141562A1 · Singhal · 2018 [cited by applicant]
US 20180181137A1 · Choi · 2018 [cited by examiner]
US 20180236654A1 · Mozeika · 2018 [cited by examiner]
US 20180364045A1 · Williams et al. · 2018 [cited by applicant]
US 20190086894A1 · Tenorth · 2019 [cited by applicant]
US 20190184572A1 · Hayashi · 2019 [cited by examiner]
US 20190185186A1 · Li · 2019 [cited by applicant]
US 20190307106A1 · Hartung · 2019 [cited by examiner]
US 20200012239A1 · Yamamoto · 2020 [cited by applicant]
US 20200070343A1 · Thomaz et al. · 2020 [cited by applicant]
US 20200174484A1 · Eoh · 2020 [cited by examiner]
US 20200206918A1 · Sun · 2020 [cited by examiner]
US 20210041243A1 · Fay et al. · 2021 [cited by applicant]
US 20210041878A1 · Seifert et al. · 2021 [cited by applicant]
US 20210181750A1 · Gogna et al. · 2021 [cited by applicant]
US 20210318687A1 · Seifert et al. · 2021 [cited by applicant]
US 20210346557A1 · Brooks · 2021 [cited by examiner]
US 20220083061A1 · Xie · 2022 [cited by examiner]
US 20220083076A1 · Maeda · 2022 [cited by examiner]
US 20220113745A1 · Panigrahi · 2022 [cited by examiner]
US 20220138612A1 · Vengertsev et al. · 2022 [cited by applicant]
US 20220139027A1 · Luo · 2022 [cited by examiner]
US 20220187828A1 · Miyagawa · 2022 [cited by examiner]
US 20220194245A1 · Gonana et al. · 2022 [cited by applicant]
US 20220237910A1 · Hirai · 2022 [cited by examiner]
US 20220258356A1 · Chi · 2022 [cited by examiner]
US 20220305657A1 · Hong · 2022 [cited by examiner]
US 20220388170A1 · Merewether · 2022 [cited by applicant]
US 20220388174A1 · Stathis et al. · 2022 [cited by applicant]
US 20220390950A1 · Yamauchi · 2022 [cited by applicant]
US 20230015335A1 · Gao et al. · 2023 [cited by applicant]
US 20230016514A1 · Zheng · 2023 [cited by examiner]
US 20230055206A1 · Zheng · 2023 [cited by examiner]
US 20230087057A1 · Wang · 2023 [cited by examiner]
US 20230107289A1 · Maeda · 2023 [cited by examiner]
US 20230125422A1 · Tsuzaki · 2023 [cited by examiner]
US 20230215024A1 · Huang · 2023 [cited by examiner]
US 20230297118A1 · Yanks et al. · 2023 [cited by applicant]
US 20230400863A1 · Chen · 2023 [cited by examiner]
US 20230418302A1 · Seifert et al. · 2023 [cited by applicant]
US 20230418305A1 · Chestnutt et al. · 2023 [cited by applicant]
US 20240061436A1 · Tsuzaki · 2024 [cited by examiner]
US 20240087738A1 · Wang · 2024 [cited by examiner]
US 20240377843A1 · Ryde et al. · 2024 [cited by applicant]
WO WO2008060689 · 2008 [cited by applicant]
WO WO2021211251 · 2021 [cited by applicant]
WO WO2022256818 · 2022 [cited by applicant]
WO WO2023140928 · 2023 [cited by applicant]
Gulalkari et al., Object Following Control of Six-legged Robot Using Kinect Camera, IEEE, 2014, pp. 758-764 (Year: 2014). [cited by examiner]
Lakrouf et al., Moving Obstacles Detection and Camera Pointing for Mobile Robot Applications, Feb. 8-12, 2017, ICMRE'17, Association for Computing Machinery, pp. 57-62 (Year: 2017). [cited by examiner]
Scheper K.Y.W, “Behavior Trees for Evolutionary Robotics: Reducing the Reality Gap.” Jun. 18, 2014, 197 pages. [cited by applicant]
International Search Report and Written Opinion received in Application No. PCT/US2021/022928, mailed Jun. 1, 2021, 10 pages. [cited by applicant]
International Search Report and Written Opinion received in Application No. PCT/US2022/051064, mailed Mar. 29, 2023, 10 pages. [cited by applicant]
Echegoyen et al., “Visual Servoing of Legged Robots”, Journal of Mathematical Imaging and Vision, Kluwer Academic Publishers, vol. 42, No. 2-3, dated Apr. 29, 2011, pp. 196-211. [cited by applicant]
Girshick, R., “Fast R-CNN” Computer Vision and Pattern Recognition, arXiv:1504.08083 [cs.CV] version 2 dated Sep. 27, 2015 in 9 pages. [cited by applicant]
Hosoda et al., “Vision-Based Servoing Control for Legged Robots”. Proceedings of the 1997 IEEE International Conference on Robotics and Automation Albuquerque, New Mexico, dated Apr. 1997, vol. 4, pp. 3154-3159. [cited by applicant]
Hutchinson, et al., “A Tutorial on Visual Servo Control” IEEE Transactions on Robotics and Automation, vol. 12, No. 5, Oct. 1996 in 20 pages. [cited by applicant]
International Search Report and Written Opinion for International Application No. PCT/US2022/072714 dated Sep. 19, 2022 in 18 pages. [cited by applicant]
Rublee et al., “ORB: an efficient alternative to SIFT or SURF” IEEE, 2011 International Conference on Computer Vision, 2011, pp. 2564-2571. [cited by applicant]
International Search Report and Written Opinion received in Application No. PCT/US2023/084269, mailed May 7, 2024, 15 pages. [cited by applicant]
European Communication Rule 114(2) EPC—Third Party Observations received in Application No. EP 22740724.4 filed Dec. 23, 2024, mailed Jan. 9, 2025, 6 pages. [cited by applicant]
Cited By (1)
US 12,638,859