IP Library Granted Patent US 12,690,421
Granted Patent B2
US 12,690,421 · App. 15/897,525 · Granted Jul 21, 2026

Material-handling robot trajectory control

Inventors: Martin Hosek (Lowell, MA); Scott Wilkas (Lexington, MA); Jacob Lipcon (Arlington, MA)
Assignee: Persimmon Technologies Corporation
H10P72/7602B25J9/0021B25J9/0084B25J9/042B25J9/043B25J9/046B25J9/104B25J9/1664B25J11/0095B25J17/02H10P72/3302H10P72/3402Y10S901/02Y10S901/15Y10S901/16Y10S901/19Y10S901/29Y10S901/30
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,690,421
App. No.
15/897,525
Filed
Feb 15, 2018
Granted
Jul 21, 2026
Kind
B2
Art Unit
3656
USPC
700/251
Abstract

A method including, based upon a desired path of a reference point from a start position to an end position, where the reference point is on an end effector on a robot arm, determine an included angle that corresponds to the start position and the end position, calculating a trajectory in radial coordinates of the reference point on the end effector at least partially based upon the included angles; calculating corresponding angular coordinates of the reference point on the end effector, based on the calculated radial coordinates, so that the reference point follows the desired path; using a modified formulation of inverse kinematics, converting the radial and angular coordinates supplemented with the included angles of the trajectory and corresponding angular velocity and acceleration of the end effector to form motion setpoints for the robot arm; and controlling the motors of the robot drive.

Claims (12)

1 . A method comprising:

determining by a controller a path of a reference point on an end effector of a robot arm between a first position and a different second position of the reference point, where the robot arm is connected to a robot drive having motors for moving the robot arm, and where the controller comprises at least one processor and at least one non-transitory memory having computer code;

the controller selecting a movement control mode from a plurality of different movement control modes, where the different movement control modes comprise:

a first movement control mode based upon determining that the path between the first position and the different second position passes outside a predetermined threshold distance from a kinematic singularity of the robot arm, and using a Cartesian trajectory generation scheme to move the robot arm, and

a different second movement control mode based upon determining that the path between the first position and the different second position passes within the predetermined threshold distance from the kinematic singularity of the robot arm, where the second movement control mode comprises, for at least a portion of the path, determining a first included angle between two links of the robot arm, and, for at least a portion of the path, determining a second different included angle between the two links of the robot arm, and calculating a trajectory of the reference point from the first position to the different second position, where the trajectory is expressed including the included angles; and

the controller controlling movement of the motors of the robot arm based upon the selected movement control mode, wherein controlling movement of the motion by the controller in the second movement control mode comprises using inverse kinematics of cylindrical coordinates, supplemented with the included angles, to determine motion set points.

2 . A method as in claim 1 , the second movement control mode further comprising evaluating the trajectory in a selected grid of points to determine if the trajectory violates at least one motion constraint expressed in Cartesian coordinates.

3 . A method as in claim 2 where the at least one motion constraint comprises a maximum linear velocity and a maximum acceleration of the reference point.

4 . A method as in claim 2 where, when the at least one motion constraint is determined to be violated, the method further comprises calculating a time scale factor for moving at least one of the motors and slowing down the movement of the robot arm to meet the at least one motion constraint.

5 . A non-transitory program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine for performing operations, the operations comprising the method as claimed in claim 1 .

6 . The method as in claim 1 , where the plurality of different movement control modes comprises:

a third movement control mode based upon determining that the path between the first position and the different second position intersects a kinematic singularity of the robot arm, and not executing a move of the robot arm with the path.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2018
From: HOSEK, MARTIN; WILKAS, SCOTT; LIPCON, JACOB
To: PERSIMMON TECHNOLOGIES, CORP.
Reel/Frame 045548/0965 →
Continuity (2)
Provisional Application 62459135 · Feb 15, 2017
Related Publication 20180229361A1 · Aug 16, 2018
References Cited (36)
US 6121743A · Genov et al. · 2000 [cited by applicant]
US 6547510B1 · Beaulieu · 2003 [cited by applicant]
US 6643563B2 · Hosek et al. · 2003 [cited by applicant]
US 9149936B2 · Hosek et al. · 2015 [cited by applicant]
US 10065311B1 · Buschmann · 2018 [cited by examiner]
US 20010033788A1 · Pietrantonio · 2001 [cited by applicant]
US 20030223853A1 · Caveney et al. · 2003 [cited by applicant]
US 20050067995A1 · Weinhofer · 2005 [cited by examiner]
US 20100135752A1 · Imai · 2010 [cited by examiner]
US 20120201641A1 · Matsuzaki et al. · 2012 [cited by applicant]
US 20140150592A1 · Kremerman · 2014 [cited by applicant]
US 20140205416A1 · Hosek et al. · 2014 [cited by applicant]
US 20150352729A1 · Hosek et al. · 2015 [cited by applicant]
US 20160064263A1 · Hosek et al. · 2016 [cited by applicant]
US 20160167229A1 · Hosek · 2016 [cited by applicant]
US 20160172224A1 · Heo et al. · 2016 [cited by applicant]
US 20160263742A1 · Hosek et al. · 2016 [cited by applicant]
US 20170028546A1 · Wilkas et al. · 2017 [cited by applicant]
US 20170315517A1 · da Silva · 2017 [cited by examiner]
US 20170348856A1 · Nakaya · 2017 [cited by examiner]
CN 103476551A · 2013 [cited by applicant]
CN 104552289A · 2015 [cited by applicant]
CN 104965517A · 2015 [cited by applicant]
JP 2000237988A · 2000 [cited by applicant]
JP 2005509277A · 2005 [cited by applicant]
JP 2007012720A · 2007 [cited by applicant]
JP 2008135630A · 2008 [cited by applicant]
JP 2009050986A · 2009 [cited by applicant]
JP 2012045641A · 2012 [cited by applicant]
JP 2012161858A · 2012 [cited by applicant]
JP 201566668A · 2015 [cited by applicant]
JP 2016016471A · 2016 [cited by applicant]
KR 20100006207A · 2010 [cited by applicant]
WO WO2010080983A2 · 2010 [cited by applicant]
WO WO2016127160A1 · 2016 [cited by applicant]
Japanese Office Action dated Nov. 7, 2025, JP Application No. 2024-191279. [cited by applicant]