A device and method of iterative motion control is described using a non-linear table in a feedback loop to convert a desired acceleration input to motor drive outputs, where the motor is part of a controlled motion system. The table may be a two- or three-dimensional table additionally responsive to the current system state, such as shaft speed, position, or phase angle. The motor may be a two-coil stepper motor where the corrected non-linearity serves the purpose of maintaining desired toque. Inputs may be waypoints comprising both a target position and target velocity. The motion system may use an inverted SCARA arm. Up to three non-linear correction tables may be used: a first corrects motor steps to a more accurate shaft angle; a second corrects motor drive signals to achieve desired torque; a third correct motor drive signals responsive to shaft speed. Tables may be generated by a series of motion passes using a fixed shaft offset angle for each pass.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for iterative motion control comprising the steps: (i) accepting an input desired acceleration; (ii) looking up in a first, non-linear table, one or more first table outputs responsive to the input desired acceleration; (iii) outputting one or more motor drive outputs to a motor, wherein the one or more motor drive outputs are responsive to the one or more first table outputs; wherein the one or more motor drive outputs are adapted to control the motor; wherein system state data responsive to the motor is fed back to an iterative real-time controller; and wherein the iterative real-time controller outputs an updated desired acceleration; (iv) iterating steps (i) through (iii) wherein the updated desired acceleration from step (iii) is the desired acceleration in step (i) for each next iteration; wherein the first, non-linear table is additionally responsive to a real-time motor phase angle of the motor.
2. The method of claim 1 comprising the additional step: (v) accepting a real-time speed of the motor; and wherein the first, non-linear table is additionally responsive to the real time speed of the motor.
3. The method of claim 1 wherein: the first, non-linear table maps the input desired acceleration to the one or more first table outputs such that the motor generates a torque linearly proportional to the input desired acceleration.
4. The method of claim 1 wherein: the motor is a two-coil stepper motor and the one or more first table outputs comprise two phase angles for the two-coil stepper motor.
5. The method of claim 1 comprising the additional step: (vi) characterizing the motor so as to generate entries in the first, non-linear table; wherein step (vi) is performed prior to step (i).
6. The method of claim 5 wherein: the characterizing the motor step comprises a sequence of motor movements, wherein each motor movement in the sequence comprises a fixed phase offset angle for that movement; wherein acceleration of the motor during each motor movement in the sequence is recorded; and wherein each motor movement in the sequence comprises a different fixed phase offset angle.
7. The method of claim 1 comprising the additional step: (vii) accepting a real-time motor shaft angle indication; (viii) looking up in a second, angular position correction table, a second table output: a corrected shaft angle, responsive to the real-time motor shaft angle indication; (ix) computing a motor shaft angular velocity responsive to the corrected shaft angle.
8. The method of claim 7 wherein: the motor is a stepper motor; the real-time motor shaft angle indication is a step number of the stepper motor.
9. The method of claim 7 wherein: the second, angular position correction table correct for an eccentricity between the real-time motor shaft angle indication and actual motor shaft angle.
10. The method of claim 1 wherein: the iterative real-time controller is adapted to accept a sequence of goal waypoints wherein each waypoint in the sequence comprises a goal position and a goal velocity.
11. A device implementing the method of claim 1 .
12. A system implementing the method of claim 1 ; further comprising the motor and the iterative real-time controller.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
April 26, 2017
November 26, 2019
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.