US 12,070,857 B2
Robot programming
Jingyi Fang, Cupertino, CA (US)
Assigned to Intrinsic Innovation LLC, Mountain View, CA (US)
Filed by Intrinsic Innovation LLC, Mountain View, CA (US)
Filed on Mar. 21, 2022, as Appl. No. 17/700,133.
Prior Publication US 2023/0294275 A1, Sep. 21, 2023
Int. Cl. B25J 9/16 (2006.01); G06F 3/04845 (2022.01); G06F 3/04847 (2022.01); G06T 13/40 (2011.01)
CPC B25J 9/1605 (2013.01) [B25J 9/1664 (2013.01); G06F 3/04845 (2013.01); G06F 3/04847 (2013.01); G06T 13/40 (2013.01); G05B 2219/32128 (2013.01); G05B 2219/39001 (2013.01); G06T 2200/24 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method comprising:
generating an interactive user interface that includes an illustration of a first virtual robot, the first virtual robot having an initial pose that defines respective joint angles of one or more joints of the first virtual robot;
receiving, within the interactive user interface, user input data specifying a target pose of the first virtual robot; and
generating, within the interactive user interface, an animation of the first virtual robot transitioning between the initial pose and the target pose, including:
computing a plurality of intermediate points between the initial pose and the target pose,
repeatedly performing an inverse kinematics process to compute respective joint angles for each of the plurality of intermediate points between the initial pose and the target pose, wherein repeatedly performing the inverse kinematics process comprises:
setting a timeout value for each invocation of the inverse kinematics process;
automatically terminating the inverse kinematics process whenever the inverse kinematics process takes longer than the timeout value; and
whenever an invocation of the inverse kinematics process for an intermediate point is terminated, invoking the inverse kinematics process for a next intermediate point without computing a solution for the intermediate point that was terminated, and
repeatedly updating the illustration of the first virtual robot according to the computed joint angles for each of the plurality of intermediate points between the initial pose and the target pose.