Electric motor controller
First Claim
Patent Images
1. A method for adapting a controller for use with a motor, the method comprising:
- applying a control signal that causes the motor to change position over a period of time;
recording the control signal over a period of time;
recording position information of the motor over a period of time resulting from the application of the control signal;
estimating a plurality of derivatives of position based on the recorded position information, wherein the plurality of derivatives includes both a first order derivative and a second order derivative;
computing a motor model comprising the step of fitting the plurality of derivatives of position into a motor model equation that relates the control signal to motion of the motor;
and supplying the motor model to the controller.
0 Assignments
0 Petitions
Accused Products
Abstract
A control system for any type of electric motor that automatically learns the characteristics of the motor and computes a motor model for the motor. The control system uses the computed motor model to produce a closed-loop control design that achieves a particular resolution. The control system also uses the motor model to automatically construct efficient motion profiles for a variety of motion commands. The control system may also include an encoder interface device that provides highly accurate motor position information.
-
Citations
66 Claims
-
1. A method for adapting a controller for use with a motor, the method comprising:
-
applying a control signal that causes the motor to change position over a period of time;
recording the control signal over a period of time;
recording position information of the motor over a period of time resulting from the application of the control signal;
estimating a plurality of derivatives of position based on the recorded position information, wherein the plurality of derivatives includes both a first order derivative and a second order derivative;
computing a motor model comprising the step of fitting the plurality of derivatives of position into a motor model equation that relates the control signal to motion of the motor;
and supplying the motor model to the controller. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A method for controlling a motor with a controller, wherein a motor model that relates a motor control signal applied by the controller to the motor to the motion of the motor is predetermined and a maximum feedforward signal has also been predetermined, the method comprising the machine-implemented steps of:
-
receiving a command to perform a motor function from a user; and
accessing the predetermined motor model and maximum feedforward signal; and
determining a set of motion profile parameters that specify a motor control signal based on the predetermined motor model such that a motor control signal specified by the motion profile parameters does not exceed the maximum feedforward signal; and
supplying the motion profile parameters to a controller to generate the motor control signal specified by the motion profile parameters. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
-
-
45. A method for determining a plurality of gains associated with a plurality of variables of a closed-loop controller, the method comprising the computer-implemented steps of:
-
assigning a gain associated with one of the controller variables to a desired resolution value;
calculating a frequency value for the gain set to the desired resolution value;
computing the remaining gains of the controller;
supplying the computed gains to the closed-loop controller. - View Dependent Claims (46, 47, 48, 49, 50)
-
-
51. A method for designing a closed-loop controller having a state variable and a gain associated the state variable, the method comprising the computer-implemented steps of:
-
selecting a desired resolution value for the state variable; and
computing a gain associated with the state variable that achieves the desired resolution. - View Dependent Claims (52, 53)
-
-
54. A method for calculating a derivative term in a closed-loop controller that receives position error information at each servo processing interval, the method comprising the computer-implemented steps of:
-
recording three or more position error readings at different servo processing intervals;
computing a derivative estimate by;
summing two or more of the position error readings; and
subtracting an equal number of different position error readings than were used in the summing step; and
thencomputing the derivative term based on the derivative estimate. - View Dependent Claims (55)
-
-
56. A method for determining acceleration of a motor based on position information of a motor received from a position measuring device, the method comprising:
-
receiving position information from the position measuring device;
recording an indication of motor position when a change in the position information is sensed;
recording an indication of the time at which the change in position information occurred; and
calculating acceleration based on at least three position recordings and the corresponding time recordings. - View Dependent Claims (57, 58, 59)
-
-
60. A method for determining jerk of a motor based on position information of a motor received from a position measuring device, the method comprising:
-
receiving position information from the position measuring device;
recording an indication of motor position when a change in the position information is sensed;
recording an indication of the time at which the change in position information occurred; and
calculating jerk based on at least four position recordings and the corresponding time recordings. - View Dependent Claims (61)
-
-
62. A controller for an electric motor having a position-feedback device that provides position feedback information to the controller, the controller comprising:
-
a motor model computation module configured to compute a motor model equation that relates controller output to motion of the motor; and
a trajectory planning module configured to receive a motion function command and, in response to receiving a motion function command, compute a set of motion profile parameters based on the motor model equation and a predetermined maximum feedforward signal, such that the motion profile parameters describe a motion having a planned peak feedforward signal approximately equal to a predetermined maximum feedforward signal. - View Dependent Claims (63, 64, 65, 66)
-
Specification