IP Library Granted Patent US 7,904,182
Granted Patent B2
US 7,904,182 · App. 11/178,615 · Granted Mar 8, 2011

Scalable motion control system

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 7,904,182
App. No.
11/178,615
Granted
Mar 8, 2011
Kind
B2
Abstract

A control system includes a clustered architecture having a master controller, a central control section including one or more first remote controllers under direct control of the master controller, and a distributed control section including a cluster controller controlled by the master controller. The cluster controller controls the activities of one or more second remote controllers. Each of the first and second remote controllers are utilized to drive one or more axes.

Claims (74)

1. A clustered architecture motion control system comprising:

a master controller;

a central control section including one or more first remote controllers utilized to drive one or more first axes of motion under direct control of the master controller, wherein control and feedback loops are closed between the master controller and the one or more first remote controllers;

a distributed control section including:

a cluster controller controlled by the master controller;

one or more second remote controllers utilized to drive one or more second axes of motion, controlled by the cluster controller, wherein control and feedback loops are closed between the cluster controller and the one or more second remote controllers;

wherein at least one of the master controller, first remote controllers, and second remote controllers includes a processor configured for:

calculating an operating parameter value for an end effector of the one or more first or second axes of motion; and

generating a motion profile for an individual joint of the one or more first or second axes of motion for which the operating parameter value was calculated, such that a motion profile for the end effector does not exceed the operating parameter value.

2. The system of claim 1 , further comprising:

circuitry for synchronizing nodes of the clustered architecture motion control system by issuing a start message including a time stamp indicating a time the start message was sent to each node; and

circuitry for compensating for a difference between a time indicated by the time stamp and a time a high resolution clock was updated at each node.

3. The system of claim 1 , further comprising a non-transitory computer usable medium including a communication protocol with extensions for communicating among the master controller, the first remote controllers, the cluster controller and the second remote controllers, wherein the extensions provide a specific usage scheme and message format.

4. The system of claim 3 , wherein at least one of the first or second remote controllers include a control port and a data port, wherein messages received by the control port identify a type of message received by the data port.

5. The system of claim 1 , further comprising a distributed event capture capability, wherein one or more first or second remote controllers operate to record and notify other first or second remote controllers of a time of a trigger event.

6. The system of claim 5 , wherein the other first or second remote controllers comprise a memory for buffering predetermined data points and a processor for interpolating among the buffered data points to determine a value at the trigger event time.

7. The system of claim 1 , further comprising a wireless communication network through which two or more network nodes communicate.

8. The system of claim 1 , wherein at least one of the master controller, first remote controllers, and second remote controllers of the clustered architecture motion control system operates to issue a periodic message and another first remote controller or second remote controller of the control system is disabled if the periodic message is not received within a time period.

9. The system of claim 1 , wherein circuitry of the clustered architecture motion control system operates to:

determine if power has been lost to the one or more first or second axes;

apply a trajectory to the one or more first or second axes for which power has been lost that brings the one or more first or second axes for which power has been lost to a zero velocity within a predetermined time period; and

remove power from the one or more first or second axes for which power has been lost at an end of the predetermined time period.

10. The system of claim 1 , wherein the master controller operates to issue a start message including a time stamp indicating a time the message was sent, and each network node of the clustered architecture motion control system operates to update a clock using the time stamp, and compensate for a difference between a time indicated by the time stamp and a time the clock was updated.

11. The system of claim 1 further comprising circuitry for generating a trajectory for the one or more second axes of motion in terms of a position, velocity, and acceleration for each point of a plurality of points on the trajectory, and for calculating inverse dynamic models of the second axes to determine a gain value and a feedforward term for each point on the trajectory for each second axis.

12. The system of claim 1 , further comprising circuitry for generating a trajectory for the one or more first axes of motion in terms of a position, velocity, and acceleration for each point of a plurality of points on the trajectory, and for calculating inverse dynamic models of the first axes to determine a gain value and a feedforward term for each point on the trajectory for each first axis.

13. A clustered architecture robotic control system comprising:

a master controller;

a central control section including one or more autonomous remote controllers utilized to drive one or more first axes of motion under direct control of the master controller, wherein control and feedback loops are closed over a network between the master controller and the one or more autonomous remote controllers;

a distributed control section including:

one or more cluster controllers controlled by the master controller;

one or more cluster remote controllers utilized to drive one or more second axes of motion, controlled by each cluster controller, wherein control and feedback loops are closed over the network between the one or more cluster remote controllers and their cluster controller,

wherein a network node of the clustered architecture motion control system operates to:

calculate an operating parameter value for an end effector of a first or second axis of motion; and

generate a motion profile for an individual joint of the first or second axis of motion for which the value was calculated, such that a motion profile for the end effector does not exceed the operating parameter value.

14. The system of claim 13 , wherein the autonomous remote controllers are configured to receive frames for the one or more first axes of motion and execute algorithms to determine torque commands for the one or more first axes of motion in a set point mode.

15. The system of claim 13 , wherein the cluster controllers are configured to receive frames for the one or more second axes of motion and utilize dynamic models for multi-input-multi-output control of the cluster remote controllers.

16. The system of claim 13 , further comprising:

circuitry for synchronizing nodes of the clustered architecture motion control system by issuing a start message including a time stamp indicating a time the start message was sent to each node; and

circuitry for compensating for a difference between a time indicated by the time stamp and a time a high resolution clock was updated at each node.

17. The system of claim 13 , further comprising extensions to a communication protocol for communicating among the master controller, the autonomous remote controllers, the cluster controller and the cluster remote controllers, wherein the extensions provide a specific usage scheme and message format.

18. The system of claim 17 , wherein at least one of the autonomous or cluster remote controllers include a control port and a data port, wherein messages received by the control port identify a type of message received by the data port.

19. The system of claim 13 , further comprising a distributed event capture capability, wherein one or more of the autonomous or cluster remote controllers operate to record and notify other autonomous or cluster remote controllers of a time of a trigger event.

20. The system of claim 19 , wherein the other autonomous or cluster remote controllers buffer predetermined data points and interpolate among the buffered data points to determine a value at the trigger event time.

21. The system of claim 13 , wherein a first network node of the control system operates to issue a periodic message and a second network node of the control system is disabled if the periodic message is not received within a time period.

22. The system of claim 13 , wherein circuitry of the control system operates to:

determine if power has been lost to the one or more first or second axes;

apply a trajectory to the one or more first or second axes for which power has been lost that brings the one or more first or second axes for which power has been lost to a zero velocity within a predetermined time period; and

remove power from the one or more first or second axes for which power has been lost at an end of the predetermined time period.

23. The system of claim 13 , wherein the master controller operates to issue a start message including a time stamp indicating a time the start message was sent, and each network node of the control system operates to update a clock using the time stamp, and compensate for a difference between a time indicated by the time stamp and a time the clock was updated.

24. The system of claim 13 , wherein the master controller includes circuitry for calculating a trajectory for the one or more first or second axes of motion and for communicating the trajectory over the network as frames specific for each individual axis of motion.

25. A method of operating a clustered architecture motion control system comprising:

utilizing one or more first remote controllers to drive one or more first axes of motion under direct control of a master controller; wherein control and feedback loops are closed over a network between the master controller and the one or more first remote controllers;

utilizing one or more second remote controllers to drive one or more second axes of motion under control of a cluster controller controlled by the master controller, wherein control and feedback loops are closed over the network between the cluster controller and the one or more second remote controllers;

calculating an operating parameter value for an end effector of at least one of the first or second axes of motion; and

generating a motion profile for an individual joint of the one or more first or second axes of motion for which the operating parameter value was calculated, such that a motion profile for the end effector does not exceed the operating parameter value.

26. The method of claim 25 , further comprising:

synchronizing nodes of the clustered architecture motion control system by issuing a start message including a time stamp indicating a time the start message was sent to each node; and

compensating for a difference between a time indicated by the time stamp and a time a high resolution clock was updated at each node.

27. The method of claim 25 , further comprising providing a specific usage scheme and message format for communicating among the master controller, the first remote controllers, the cluster controller and the second remote controllers.

28. The method of claim 25 , further comprising capturing events on the network utilizing the one or more first or second remote controllers to record and notify other first or second remote controllers of a time of a trigger event.

29. The method of claim 25 , further comprising buffering predetermined data points and interpolating among the buffered data points to determine a value at a trigger event time, utilizing the second first or second remote controllers.

30. The method of claim 25 , further comprising communicating among network nodes through a wireless communication network.

31. The method of claim 25 , further comprising issuing a periodic message over the network and disabling the cluster controller, one or more of the first remote controllers, or one or more second remote controllers if the periodic message is not received within a time period.

32. The method of claim 25 , further comprising:

determining if power has been lost to the one or more first or second axes;

applying a trajectory to an axis for which power has been lost that brings the one or more first or second axes for which power has been lost to a zero velocity within a predetermined time period; and

removing power from the one or more first or second axes for which power has been lost at an end of the predetermined time period.

33. The method of claim 25 , further comprising:

issuing a start message over the network, the start message including a time stamp indicating the start message was sent;

updating a clock at each network node of the control system using the time stamp; and

compensating for a difference between a time indicated by the time stamp and a time the clock was updated at each network node.

34. The method of claim 25 , further comprising:

generating a trajectory for the one or more first axes of motion in terms of a position, velocity, and acceleration for each point of a plurality of points on the trajectory; and

calculating inverse dynamic models of the first axes to determine a gain value and a feedforward term for each point on the trajectory for each first axis.

Assignments (9)
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 038891/0765 Recorded Nov 4, 2025
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: AZENTA, INC. (F/K/A BROOKS AUTOMATION, INC.); AZENTA USA, INC. (F/K/A BIOSTORAGE TECHNOLOGIES, INC.)
Reel/Frame 073446/0080 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 044142/0258 Recorded Nov 4, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: AZENTA, INC. (F/K/A BROOKS AUTOMATION, INC.); AZENTA US, INC. (F/K/A BROOKS LIFE SCIENCES, INC., F/K/A BIOSTORAGE TECHNOLOGIES, INC.)
Reel/Frame 073514/0609 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Feb 2, 2022
From: BROOKS AUTOMATION US, LLC
To: BARCLAYS BANK PLC
Reel/Frame 058950/0146 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Feb 2, 2022
From: BROOKS AUTOMATION US, LLC
To: GOLDMAN SACHS BANK USA
Reel/Frame 058945/0748 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2021
From: BROOKS AUTOMATION HOLDING, LLC
To: BROOKS AUTOMATION US, LLC
Reel/Frame 058482/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2021
From: BROOKS AUTOMATION,INC
To: BROOKS AUTOMATION HOLDING, LLC
Reel/Frame 058481/0740 →
SECURITY INTEREST Recorded Oct 6, 2017
From: BROOKS AUTOMATION, INC.; BIOSTORAGE TECHNOLOGIES, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 044142/0258 →
SECURITY AGREEMENT Recorded May 31, 2016
From: BROOKS AUTOMATION, INC.; BIOSTORAGE TECHNOLOGIES
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 038891/0765 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2006
From: HOSEK, MARTIN; BEALE, STUART; BOTEV, ROUMEN; COADY, MATTHEW; HOFMEISTER, CHRISTOPHER; IVES, MARK; MOURA, JAIRO; CAVENEY, ROBERT
To: BROOKS AUTOMATION, INC.
Reel/Frame 017852/0140 →