US 12,257,718 B2
System and method for controlling a motion of a robot
Chungwei Lin, Arlington, MA (US); Yebin Wang, Cambridge, MA (US); Rien Quirynen, Somerville, MA (US); Devesh Jha, Cambridge, MA (US); Bingnan Wang, Belmont, MA (US); William Vetterling, Cambridge, MA (US); Siddarth Jain, Cambridge, MA (US); and Scott Bortoff, Brokline, MA (US)
Assigned to Mitsubishi Electric Research Laboratories, Inc., Cambridge, MA (US)
Filed by Mitsubishi Electric Research Laboratories, Inc., Cambridge, MA (US)
Filed on Apr. 14, 2022, as Appl. No. 17/659,246.
Prior Publication US 2023/0330853 A1, Oct. 19, 2023
Int. Cl. B25J 9/16 (2006.01); B25J 5/00 (2006.01); B62D 15/02 (2006.01)
CPC B25J 9/1664 (2013.01) [B25J 5/007 (2013.01); B25J 9/1653 (2013.01); B62D 15/0285 (2013.01)] 10 Claims
OG exemplary drawing
 
1. A controller for controlling a motion of a robot from a starting point to a target point within a bounded space with a floorplan including one or multiple obstacles, the controller comprising: at least one processor; and memory having instructions stored thereon that, when executed by the at least one processor, cause the controller to:
solve for an electric potential in a bounded virtual space formed by scaling the floorplan of the bounded space including the one or multiple obstacles, and applying charge to at least one bound of the bounded virtual space while treating the scaled obstacles as metallic surfaces with a constant potential value, wherein the electric potential provides multiple equipotential curves within the bounded virtual space;
locate the starting point, the target point, and surfaces of the scaled obstacles in the bounded virtual space to determine a potential value of the starting point, a potential value of the target point, and a potential value of an obstacle equipotential curve closest to the surfaces of the scaled obstacles;
select an equipotential curve with a potential value different from the potential value of the obstacle equipotential curve;
determine a first path from the starting point to a first point on the selected equipotential curve and a second path from the target point to a second point on the selected equipotential curve, such that each segment of the first path and the second path either follows a current equipotential curve or moves between the current equipotential curve and a next equipotential curve in a direction perpendicular to the current equipotential curve towards the potential value of the selected equipotential curve when the next equipotential curve differs from the obstacle equipotential curve;
determine a motion path as a combination of the first path connecting the starting point and the first point, the second path connecting the target point and the second point, and a third path connecting the first point and the second point along the selected equipotential curve; and
control the motion of the robot based on the determined motion path.