Claims
- 1. A method for using a computer for controlling the interpolated motion of automated machine tools, industrial robots, and other motion control systems having a plurality of axes, over a non deterministic serial network, comprising:
A. inputting into a computer a Master Control Program; B. specifying coordinate data points which define a path of at least two Motor means axes; inputting into the computer and Master Control Program the specified coordinate data points; C. executing the Master Control Program and generating from the Master Control Program a control set point data stream; outputting from the computer and Master Control Program the control set point data stream to one or a plurality of control modules (5); D. outputting from the one or a plurality of control modules one or a plurality of motor means control signal means to one or a plurality of motor means.
- 2. The method of claim 1 further comprising:
A. the coordinate data points composed of a stream of position set points or of a stream of velocity set points of any integer number of encoder counts.
- 3. The method of claim 2 further comprising:
A. motor means provided by servo or step motors; drive means provided by a servo drive (11) or a step motor drive 13; B. a motor data communication means provided by a motor power cable 14, providing power to the one or a plurality of servo or step motors 16, 19; C. the motor means control signal means, including, where Motor means is by servo motors 16, a ±10 VDC analog torque/velocity signal 10, that controls the voltage/current transmitted by the servo drive to the motor; where the Motor means is by a step motor 19, the motor means control signal means is a step and direction pulse 9 generated by an internal voltage controlled oscillator 8 coupled to the Control Module 5 analog output which interfaces with the Control Module 5 to the step motor drives 13 which require a step and direction pulse 9 for control of step motors 19; D. memory or buffer means composed of a Set Point Buffer (101), and memory or buffer control means is by a buffer control (102); E. outputting the control set point data stream via an RS-485 multi-drop parallel connection (3); F. each of the one or a plurality of motor means composed of the combination of a drive means, a motor data communication means, a motor, a commutation data line 12, an encoder 15 and an encoder feedback line 17; G. inputting the encoder feedback line (17) to the Control Module 5; the one or a plurality of control modules (5) having memory or buffer means and memory or buffer control means.
- 4. The method of claim 3 further comprising:
A. the Master Control Program having a Master Control Software function; the control set point data stream sent by the Master Control Software function, where positional values are used, is: “1 X1 TAx ET1 2 Y1 TAy ET1” where:
1=Unique X axis identifier 2=Unique Y axis identifier X1=X axis absolute coordinate position (or incremental distance) Y1=Y axis absolute coordinate position (or incremental distance) TAx=X axis acceleration time TAy=Y axis acceleration time ET1=total segment motion time for the given point segment B. where coordinate data points are composed of a stream of position set points, specifying for each position set point a value, expressed in clock ticks, of a specific elapsed time the exact transition of which determines when a trajectory acceleration must be accomplished; specifying for each position set point a value, expressed in clock ticks, of a specific elapsed time the exact transition of which determines when a set point position must be reached or crossed; C. memory or buffer means composed of a Set Point Buffer (101), and memory or buffer control means composed of a buffer control (102).
- 5. The method of claim 3 further comprising:
A. the Master Control Program having a Master Control Software function; the control set point data stream sent by the Master Control Software function, where velocity based segment values are used, is “X1 TAx ET1 Y1 TAy ET1 where
X1=X axis velocity to be maintained during motion Y1=Y axis velocity to be maintained during motion TAx=X axis acceleration time to velocity X1 TAy=Y axis acceleration time to velocity Y1 ET1=total segment motion time for the given velocity segment B. where coordinate data points are composed of a stream of velocity set points consisting of any integer number of encoder counts per clock tick units; specifying from each velocity set point a value expressed in clock ticks of a specific elapsed time the exact transition of which determines where the velocity acceleration must be accomplished; specifying for each velocity set point a value expressed in clock ticks of a specific elapsed time the exact transition of which determines when the set point velocity must transition to the next velocity set point; inputting into the computer and Master Control Program the specified velocity data points; C. memory or buffer means composed of a Set Point Buffer (101), and memory or buffer control means composed of a buffer control (102).
- 6. A method in accordance with claim 1 wherein interpolated motion is initiated to provide the synchronization required for interpolated motion between the separate components of a distributed control network using a digital signal transition.
- 7. A method in accordance with claim 1 wherein interpolated motion synchronization is maintained across a non deterministic distributed network using pulsed digital signal transitions.
- 8. An apparatus in accordance with claim 4 wherein the said means for controlling a digital signal transition in a manner which initiates and maintains synchronized interpolated motion across a distributed motion system.
- 9. An apparatus in accordance with claim 5 wherein the said means for controlling a digital signal transition in a manner which initiates and maintains synchronized interpolated motion across a distributed motion system.
- 10. An apparatus in accordance with claim 4 wherein information required to process a data stream of set points and to maintain synchronized interpolated motion, is formatted for transmittal over a serial network
- 11. An apparatus in accordance with claim 5 wherein information required to process a data stream of set points and to maintain synchronized interpolated motion, is formatted for transmittal over a serial network
- 12. A method in accordance with claim 1 wherein a Master Control Program enables a computer to transmit data in a format and manner which maintains synchronized interpolated motion across a distributed motion system.
- 13. A method in accordance with claim 12 wherein there is means for processing a position set point data stream into a synchronized interpolated trajectory control of non specialized servo and step motor drives and motors across a distributed motion system.
- 13A. A method in accordance with claim 12 wherein there is means for controlling synchronized, interpolated motion across a distributed motion system without requiring specialized servo and step motor drive hardware.
- 14. A method in accordance of claim 13, wherein one or a plurality of control modules, each having a memory buffer, compensates for an indeterminate nature of a computers' operating system as it relates to controlling interpolated motion.
- 15. A method in accordance of claim 13 wherein one or a plurality of control modules, having a memory buffer, compensates for the indeterminate nature of a low bandwidth serial network as it relates to controlling interpolated motion.
- 16. A method in accordance of claim 13 wherein digital Input and Output processing within the one or a plurality of control modules, compensates for the indeterminate nature of a low bandwidth serial network as it relates to controlling interpolated motion.
- 17. An apparatus in accordance of claim 4 wherein a micro processor based control module processes a position set point data stream for synchronized trajectory control of non specialized servo and step motor drives and motors across a distributed motion system.
- 18. An apparatus in accordance of claim 5 wherein there is there is means for processing a velocity set point data stream into synchronized velocity control of non specialized servo and step motor drives and motors across a distributed motion system in a manner which maintains interpolated motion.
- 19. An apparatus in accordance of claim 5 wherein a micro processor based control module processes a velocity set point data stream for synchronized velocity control of non specialized servo and step motor drives and motors across a distributed motion system in a manner which maintains interpolated motion.
- 20. An apparatus in accordance of claim 3 where in a voltage controlled oscillator is coupled in a manner to the analog control signal of the distributed control module that enables step motor drives to be controlled, in place of servo drives.
- 21. A method in accordance of claim 13 wherein a Master Control Software function enables the computer to calculate the elapsed time parameters required to maintain the motion trajectory in conformance to path geometry.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] U.S. Pat. No. 5,892,345 (Olsen), U.S. Pat. No. 5,508,596 (Olsen), U.S. Pat. No. Re. 30,132 (Irie)