Scalable motion control system
First Claim
Patent Images
1. A control system comprising:
- 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;
a distributed control section including a cluster controller controlled by the master controller, wherein the cluster controller controls the activities of one or more second remote controllers;
wherein each of the first and second remote controllers are utilized to drive one or more axes.
7 Assignments
0 Petitions
Accused Products
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.
119 Citations
79 Claims
-
1. A control system comprising:
-
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;
a distributed control section including a cluster controller controlled by the master controller, wherein the cluster controller controls the activities of one or more second remote controllers;
wherein each of the first and second remote controllers are utilized to drive one or more axes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method of operating an axis of a control system comprising:
-
generating a trajectory for the axis in terms of a position, velocity, and acceleration for each point of a plurality of points on the trajectory; and
calculating an inverse dynamic model of the axis to determine a gain value and a feedforward term for each point. - View Dependent Claims (14, 15)
-
-
16. A method of synchronizing nodes on a network comprising:
-
issuing a start message including a time stamp indicating the time the message was sent;
updating a high resolution clock using the time stamp; and
compensating for a difference between a time indicated by the time stamp and a time the high resolution clock was updated. - View Dependent Claims (17)
-
-
18. A message set for communicating among nodes of a control system comprising:
-
an action message for exchanging commands and command responses;
an event message for reporting data relating to a predetermined event to a master controller;
a string message for providing a serial message channel between a remote controller and the master controller; and
a data port message for sending data to a network node. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
-
25. A method of obtaining axis data at the time of an event, comprising:
-
buffering data at one or more axis nodes;
recording time information of a triggering event occurring at a triggering event node of the one or more axis nodes; and
processing the buffered data to determine a set of values at a time period indicated by the recorded time information. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. A control system comprising:
-
a plurality of nodes organized in a clustered architecture; and
a wireless communication network through which two or more of the nodes communicate. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41)
-
-
42. A method for controlling an axis of a control system comprising:
-
calculating an operating parameter value for an end effector of the axis;
generating a motion profile for an individual joint of the axis such that a motion profile for the end effector does not exceed the operating parameter value. - View Dependent Claims (43, 44)
-
-
45. A method for controlling an axis comprising:
-
calculating a velocity and a torque for a position of the axis;
predetermining a first maximum time period during which an axis velocity may exceed the calculated velocity;
predetermining a second maximum time period during which an axis torque may exceed the calculated torque;
disabling the axis if the first or second maximum time period is exceeded. - View Dependent Claims (46, 47, 48, 49)
-
-
50. A method of verifying the integrity of data transmitted over a control system network comprising:
-
storing operating parameters at a node on the network; and
verifying that commands received through the network do not cause operations of the node that exceed the operating parameters. - View Dependent Claims (51, 52, 53, 54, 55, 56)
-
-
57. A method of verifying the integrity of a control system network comprising:
-
issuing a periodic message; and
disabling one or more nodes of the control system network if the message is not received within a time period. - View Dependent Claims (58, 59, 60, 61)
-
-
62. A method of maintaining the integrity of a control system network comprising:
-
assigning nodes of the network into zones such that motion in a first zone is isolated from motion in zones other than the first zone; and
controlling the zones so that events of the first zone do not effect the operation of zones other than the first zone. - View Dependent Claims (63)
-
-
64. A method of bringing an axis to a controlled stop comprising:
-
determining if power has been lost to a system including the axis;
applying a trajectory to the axis that brings the axis to a zero velocity within a predetermined time period; and
removing power from the axis at the end of the predetermined time period. - View Dependent Claims (65)
-
-
66. A method for compensating for synchronization delays in a control system comprising:
-
determining a delay between a network node issuing a message and a network node receiving the message; and
using the determined delay to adjust trajectory data for the receiving node. - View Dependent Claims (67, 68, 69)
-
-
70. A method of operating a robot comprising:
-
recording an idle time of the robot;
determining performance characteristics of the robot upon exceeding an idle time threshold;
directing the robot to perform a warm up exercise if the determined performance characteristics do not meet a specification.
-
-
71. An application program interface for a motion control system comprising:
-
a standardized set of interface conventions for exchanging information among components of the motion control system; and
a generalized command set that provides general commands to perform operations and specific arguments to identify particular components and actions for performing the operations. - View Dependent Claims (72, 73, 74, 75, 76, 77, 78, 79)
-
Specification