Claims
- 1. The method of controlling the velocity and changing position and a member movable along an axis in accordance with numerical command data designating the desired velocity V, said method comprising:
- a. measuring off successive periods .DELTA.T in actual time, the durations of such periods normally being .DELTA.TN but being adjustable,
- b. deriving from said command data first signals representing a velocity number PRXC designating said velocity V in units of distance per .DELTA.TN,
- c. producing second signals representing a theoretical position which said member should occupy along the axis, and changing said second signals by the represented amount PRXC once during each period .DELTA.T,
- d. utilizing said second signals during each period .DELTA.T to produce third signals representing the then-existing error XERR between the theoretical position of said member and the actual position of said member,
- e. driving said member along the axis at a velocity which is a function of both the velocity number PRXC and the error XERR as represented by said first and third signals, and
- f. changing the durations of the periods .DELTA.T measured off according to step (a) in response to predetermined conditions which are dependent upon the magnitude of the error XERR as represented by said third signals.
- 2. The method of controlling the velocity and position of a member movable along an axis X in accordance with a block of numerical command data designating the desired velocity V, said method comprising:
- a. measuring off successive periods in actual time, each period having a duration .DELTA.T which is adjustable but normally having a duration .DELTA.TN,
- b. deriving from said command data first electric signals representing a velocity number PRXC designating said velocity V in units of distance per .DELTA.TN,
- c. deriving from said command data second electrical signals representing a theoretical desired position number XTC and changing such second signals with said first signals to increment the represented number XTC by the amount PRXC during each time period, such that XTC.sub.i = XTC.sub.i.sub.-1 + PRXC,
- d. sensing and signaling the actual instantaneous position XIN of said member,
- e. driving said member along the axis at a velocity which is proportional to the sum of (A) the number PRXC represented by said electric signals and (B) a term proportional to the difference between the instantaneous desired position XTC represented by said electrical signals and the sensed instantaneous actual position XIN, and
- f. increasing the durations .DELTA.T of the succeeding periods measured off by said step (a) when during any given period said difference exceeds a predetermined threshold value TH1.
- 3. The method set forth in claim 2 further including:
- g. decreasing the durations .DELTA.T of the succeeding periods measured off by said step (a) when during any given period said difference does not exceed said predetermined threshold value.
- 4. The method set forth in claim 3 further characterized in that said steps (f) or (g) are respectively inhibited when the duration of the given period is at a pre-established maximum or minimum value.
- 5. The method of controlling the velocity and position of a member movable along an axis X in accordance with a block of numerical command data designating the desired velocity V.sub.x, said method comprising:
- a. measuring off successive time periods in actual time, each period having a duration .DELTA.T with the value of the normal duration being .DELTA.TN,
- b. deriving from said command data first electric signals digitally representing a number PRXC which designates said velocity V.sub.x in units of distance per .DELTA.TN,
- c. representing by second digital electrical signals a number XTC to designate the theoretical instantaneous position of said member and adding the number PRXC thereto to form a new value of XTC once during each time period, such that XTC.sub.i = XTC.sub.i.sub.-1 + PRXC,
- d. creating third digital electrical signals dynamically representing the actual instantaneous position XIN of said member as such actual position changes,
- e. utilizing said second and third signals representing XTC and XIN to compute and to represent, by fourth digital electricals, the position error XERR = XTC - XIN once during each time period,
- f. utilizing said first and fourth signals to drive said member along the X axis at a speed proportional to the sum of the then-existing numbers PRXC and XTRIM.sup.. XERR, where XTRIM is a predetermined gain factor, and
- g. incrementally increasing the next time period .DELTA.T measured off when in any given time period the error XERR is lagging and greater in magnitude than a predetermined threshold value, whereby the velocity of the member is reduced to reduce the error.
- 6. The method set forth in claim 5 further including:
- h. producing fifth digital electric signals representing a number CLBFR which designates the desired duration .DELTA.T of the successive time periods,
- i. effecting said step (a) by applying said fifth signals representing the number CLBFR to means which measure off successive time periods of durations proportional to the then-existing value of that number, and
- j. effecting said step (g) by modifying said fifth signals to increase said number CLBFR by a predetermined increment CLINC during any period .DELTA.T when said lagging error exceeds a predetermined value and said number CLBFR is not greater than a predetermined maximum value, such that when those conditions exist CLBFR.sub.i = CLBFR.sub.i.sub.-1 + CLINC.
- 7. The method of controlling the movement of a member along an X axis in accordance with a block of numerical command data designating the desired velocity V.sub.x, said method comprising:
- a. measuring off successive time periods .DELTA.T in actual time, each such period having a normal duration of .DELTA.TN,
- b. deriving from said command data first electric signals digitally representing a velocity number PRXC tantamount to the velocity V.sub.x but expressed in distance per .DELTA.TN,
- c. creating second digital electrical signals representing a number XTC to designate the dynamically changing theoretical position of said member and utilizing said first signals to add the number PRXC thereto and form a new value of XTC once during each time period .DELTA.T,
- d. sensing said member to create third digital electrical signals representing a number XIN dynamically designating the changing actual instantaneous position of the member,
- e. employing said second and third signals to subtract the two numbers XTC and XIN and create fourth electrical signals digitally representing an error number XERR = XTC - XIN once during each period .DELTA.T,
- f. causing the duration of the next period .DELTA.T to be increased by a predetermined amount in response to said number XERR exceeding a predetermined threshold value during any given period, and
- g. applying a velocity servo coupled to said member an input signal proportional to the sum (PRXC + G.sub.2.sup.. XERR), where G.sub.2 is a preselected gain factor.
- 8. The method set forth by claim 7 further characterized in that said block of command data also designates a distance D to be traveled, and further including
- h. creating from said command data fifth signals digitally representing a quantity LOOPP of periods .DELTA.TN which elapse during the time T.sub.p for the member to travel the distance D at the velocity V.sub.x,
- i. counting the .DELTA.T periods as they pass in actual time to produce sixth signals representing the number NLOOP of elapsed periods, and
- j. terminating said step (c) after said sixth signals indicate that the number NLOOPS has become equal to the number LOOPP represented by said fifth signals.
- 9. The method set forth in claim 7 further including:
- g. deriving from said first signals, fifth digital electrical signals representing a threshold number LERRX which is a monotonic function of the number PRXC, and
- h. effecting said step (f) by comparing the number XERR represented by said fourth signal with the number LERRX represented by said fifth signals, once during each period .DELTA.T.
- 10. The method set forth in claim 7 further including:
- g. causing the durations of the succeeding time periods .DELTA.T to be decreased by a predetermined amount whenever the time period duration is greater than .DELTA.TN and said number XERR is less than a predetermined value during any given period.
- 11. The method of controlling the velocity of and position of a member movable along an axis X in accordance with a block of command data designating the desired velocity V, said method comprising:
- a. producing from said command data first electric signals representing a velocity number PRXC designating said velocity V in units of distance per .DELTA.TN, where .DELTA.TN is a preselected duration of a time period,
- b. measuring off successive time periods .DELTA.T in actual time with the normal duration of each period being .DELTA.TN,
- c. representing by second electrical signals a number XTC to designate the desired theoretical position of said member and utilizing said first signals to change the second signals to increment the number XTC by the amount PRXC during each time period,
- d. sensing the actual instantaneous position XIN of said member, and creating, from said second signals, third electrical signals representing the error XERR between the desired and actual positions of said member,
- e. utilizing said first signals representing PRXC and said third signals representing XERR to drive said member along the axis at a velocity proportional to the sum (PRXC + G.sub.2.sup.. XERR) where G.sub.2 is a factor of proportionality,
- f. increasing the durations of the time periods .DELTA.T measured off by said step (b) when, in any given period, the error signals XERR represent a lagging error of greater than a predetermined threshold value TH1, and
- g. decreasing the durations of the time periods .DELTA.T measured off by said step (b) when, in any given period, the error signals XERR represent a lagging error of less than said threshold value and the time periods are greater than said normal duration .DELTA.TN.
- 12. The method of relatively moving a member simultaneously along two or more axes X and Y over a path lying between first and second coordinate points P.sub.n.sub.-1 and P.sub.n in accordance with numerical command data designating the points and the desired velocity V.sub.n of travel, said method comprising:
- a. measuring off successive periods .DELTA.T in actual time by means which are adjustable to vary the duration of the periods, the normal duration being .DELTA.TN,
- b. deriving from said command data first and second sets of electric signals digitally representing numbers PRXC and PRYC which are equal to the distance which the member must move along the X and Y axes during each time period of duration .DELTA.TN to travel at axis velocities V.sub.x and V.sub.y producing the resultant path velocity V.sub.n,
- c. converting said first and second sets of signals representing PRXC and PRYC into corresponding analog signals E.sub.x and E.sub.y,
- d. applying said analog signals E.sub.x and E.sub.y to respective velocity servos respectively including motors to drive said member relatively along the X and Y axes at speeds directly related to the magnitudes of such signals,
- e. producing third and fourth sets of digital signals numerically representing the instantaneous theoretical desired positions XTC and YTC of the member along the X and Y axes,
- f. changing said third and fourth sets of signals during each measured-off time period by utilizing said first and second sets of signals to perform the algebraic additions XTC.sub.i = XTC.sub.i.sub.-1 + PRXC and YTC.sub.i = YTC.sub.i.sub.-1 + PYRC,
- g. physically sensing, and numerically representing by fifth and sixth sets of signals during each time period, the actual relative positions XIN and YIN of said member along the X and Y axes, and
- h. modifying said analog signals E.sub.x and E.sub.y by amounts proportional to the error differences XERR = XTC - XIN and YERR = YTC - YIN to cause corrective changes in velocities when position errors exist, and
- i. adjusting said measuring-off means to increase the durations of said time periods .DELTA.T being measured off by a predetermined incremental amount whenever during any given period either of said error differences represents a lagging error of greater than a predetermined threshold value.
- 13. The method defined in claim 12 further including:
- j. adjusting said measuring-off means to decrease the durations of said time periods being measured off by a predetermined decremental amount whenever during any given period neither of said error differences represents a lagging error greater than said predetermined threshold value.
- 14. The method defined in claim 13 further including:
- k. preventing the incremental increase of step (i) when the said given period has a duration equal to or greater than a pre-established maximum value, and
- l. preventing the decremental decrease of step (j) when the said given period has a duration no greater than a pre-established minimum value.
- 15. In a system for controlling the velocity and changing position of a member movable along an axis in accordance with numerically signaled command data designating the desired velocity V, said system comprising in combination:
- a. means for measuring off successive periods .DELTA.T in actual time, such periods having normal durations .DELTA.TN,
- b. means responsive to said command data signals for producing first signals representing a velocity number PRXC designating said velocity V in units of distance per .DELTA.TN,
- c. means for producing second signals representing a theoretical position which said member should occupy along the axis, and for changing such signals by the represented amount PRXC during each period .DELTA.T,
- d. means responsive to said second signals during each period .DELTA.T for producing third signals representing the then-existing error XERR between the theoretical position of said member and the actual position of said member,
- e. means responsive to said first and third signals for driving said member along the axis at a velocity which is a function of both the number PRXC and the error XERR, and
- f. means responsive to said third signals for modifying the operation of said means (a) and changing the durations of said time periods .DELTA.T in response to the occurrence of predetermined conditions dependent upon the nature of the error XERR.
- 16. In a system for controlling the movement of a member along an axis X in accordance with a block of command data numerically signaled to directly or indirectly designate the desired velocity V.sub.x, said system comprising in combination:
- a. means for measuring off successive periods .DELTA.T in actual time, with each period normally having a duration .DELTA.TN,
- b. means responsive to said signaled command data for producing first electric signals digitally representing a number PRXC which designates said velocity V.sub.x in units of distance per .DELTA.TN,
- c. means for producing second electric signals digitally representing a number XTC denoting the theoretical instantaneous position of said member and modifying such signals once during each period .DELTA.T to add the represented number PRXC, such that XTC.sub.i = XTC.sub.i.sub.-1 + PRXC,
- d. means for producing third electric signals dynamically representing the actual instantaneous position XIN of said member as such position changes,
- e. means responsive to said second and third signals for determining and creating, during each period .DELTA.T, fourth electric signals representing the position error XERR = XTC - XIN,
- f. means responsive to said first and fourth signals for driving said member along the X axis at a speed proportional to the sum of the then-existing numbers PRXC and XTRIM.sup.. XERR, where XTRIM is a predetermined gain factor, and
- g. means responsive to said fourth signals for modifying the operation of said means (a) to incrementally lengthen the following periods .DELTA.T when in any given time period the error XERR is lagging and exceeds a magnitude greater than a predetermined threshold value TH1.
- 17. The combination set forth in claim 16 further including
- h. means for producing fifth electric signals digitally representing a number CLBFR which designates the desired duration of the successive time periods, and
- i. said means (a) includes means responsive to said fifth signals for measuring off periods .DELTA.T which are in duration proportional to the then-existing value of the number CLBFR, and
- j. said means (g) includes means responsive to said fourth signals for incrementally increasing said fifth signals and the number CLBFR by a predetermined amount CLINC during any period .DELTA.T when the error XERR is lagging and exceeds a predeterined threshold magnitude TH1, such that when those conditions exist CLBFR.sub.i = CLBFR.sub.i.sub.-1 + CLINC.
- 18. The combination set forth in claim 16 further including
- h. means responsive to said first signals for producing fifth electric signals digitally representing a threshold number LERRX which is a monotonic function of the number PRXC, and
- i. said means (g) includes means for comparing said fourth and fifth signals during each period .DELTA.T and for lengthening the following periods .DELTA.T when, in any given period .DELTA.T, the error XERR exceeds the number LERRX.
- 19. The combination set forth in claim 16, further including
- h. means operative for incrementally shortening the following periods .DELTA.T when, in any given period .DELTA.T, said means (g) do not produce an incremental lengthening and the then-established durations of the periods is not less than a predetermined minimum value.
- 20. In a system for relatively moving a member simultaneously along two or more axes X and Y along a path D.sub.n lying between first and second coordinate points P.sub.n.sub.-1 and P.sub.n in accordance with numerical command data signals designating the points and the desired velocity V.sub.n of travel, said system comprising in combination
- a. means for measuring off successive periods .DELTA.T in actual time, the normal durations of such periods being .DELTA.TN,
- b. means responsive to said command data signals for producing first and second sets of electric signals digitally representing velocity numbers PRXC and PRYC respectively equal to the distances which the member must move along the X and Y axes during each time period .DELTA.TN to travel at axis velocities V.sub.x and V.sub.y producing the resultant vector path velocity V.sub.n,
- c. means for converting said first and second sets of signals into analog signals E.sub.x and E.sub.y corresponding to the numbers PRXC and PRYC,
- d. two velocity servo systems respectively coupled to drive said member along the X and Y axes,
- e. means for applying said analog signals E.sub.x and E.sub.y as inputs to respective ones of said velocity servo systems,
- f. means for producing third and fourth sets of electric signals digitally representing the instantaneous theoretical positions XTC and YTC which said member should occupy along the X and Y axes,
- g. means responsive to said first and second signal sets and to said third and fourth signal sets for changing the latter once during each period .DELTA.T, such that XTC.sub.i = XTC.sub.i.sub.-1 + PRXC and YTC.sub.i = YTC.sub.i.sub.-1 + PRYC,
- h. means physically coupled to said member for producing fifth and sixth sets of electric signals digitally representing the actual positions XIN and YIN of said member along the X and Y axes,
- i. means responsive to said third, fourth, fifth and sixth signal sets for modifying said analog signals E.sub.x and E.sub.y by amounts proportional to the error differences XERR = XTC - XIN and YERR = YTC - YIN to effect trimming adjustments in the axes velocities when position errors arise, and
- j. means for adjusting said means (a) to incrementally lengthen the following time periods .DELTA.T when, in any given period .DELTA.T, either of said error differences XERR and YERR represents a lagging error of greater than a predetermined threshold value.
- 21. The combination set forth in claim 20 further including
- k. means for adjusting said means (a) to incrementally shorten the following time periods .DELTA.T when, in any given period .DELTA.T, neither of said error differences XERR and YERR represents a lagging error greater than a predetermined threshold value.
- 22. The combination set forth in claim 21 further including
- l. means for preventing the operation of said means (j) when said periods .DELTA.T have been lengthened to a predetermined maximum value, and
- m. means for preventing the operation of said means (k) when said periods .DELTA.T have durations equal to a predetermined minimum value.
- 23. The method of controlling the velocity and the dynamically changing position of a member movable along an axis X in accordance with a block of numerical command data designating the desired velocity V, said method comprising:
- a. measuring off successive periods .DELTA.T in actual time, with each period normally having a duration .DELTA.TN,
- b. deriving, from said command data, first electric signals numerically representing a velocity number PRXC expressing said velocity V in dimensions of distance per time period .DELTA.TN,
- c. creating second electric signals numerically representing the theoretical desired position XTC of said member and utilizing said first signals to change such second signals once during each period .DELTA.T by the amount of the velocity number PRXC,
- d. creating third electric signals dynamically and numerically representing the actual position XIN of said member as it moves along the axis,
- e. utilizing said second and third signals to create, by subtraction once during each period .DELTA.T, fourth electric signals dynamically and numerically representing the then-existing error XERR = XTC - XIN between the theoretical and actual positions of said member,
- f. creating fifth electric signals numerically representing an adjustment number XBIAS,
- g. utilizing said first, fourth and fifth signals to compute, once during each period .DELTA.T, and to produce sixth electric signals numerically representing the then-existing value of a speed number XDAC = PRXC + G.sub.2.sup.. XERR + XBIAS, where G.sub.2 is a preselected gain constant,
- h. energizing a velocity servo in accordance with said sixth signals to drive said member at a velocity theoretically proportional to the XDAC number to make the member theoretically travel the distance PRXC during each period .DELTA.T,
- i. comparing, during each period .DELTA.T, the number XERR represented by said fourth signals with a predetermined threshold value, and when the former exceeds the latter in any given period, incrementally increasing the durations of those .DELTA.T periods which follow, and
- j. comparing, curing each period .DELTA.T, the number XERR represented by said fourth signals with a second predetermined value, and when the former exceeds the latter, incrementally changing said fifth signals to represent a new value for XBIAS, such that XBIAS.sub.i = XBIAS.sub.i.sub.-1 .+-. XKBIAS, where XKBIAS is a predetermined increment number.
- 24. In a system for controlling the movement of a member along an axis X in accordance with a block of command data numerically signaled to directly or indirectly designate a desired velocity V, said apparatus comprising the combination of:
- a. means for measuring off successive periods .DELTA.T in actual time, with the normal duration of each period being .DELTA.TN,
- b. means responsive to said signaled command data for creating first signals numerically representing a velocity number PRXC expressing said velocity V in dimensions of distance per .DELTA.TN,
- c. means for creating second signals representing a number XBIAS,
- d. means for deriving from said first and second signals, during each period .DELTA.T, third signals numerically representing a speed number XDAC = G[PRXC + XBIAS], where G is a predetermined gain factor,
- e. a velocity servo system coupled to drive said member along the axis, and means responsive to said third signals for supplying an input to the servo system which corresponds to the number XDAC,
- f. means for producing fourth signals numerically and dynamically representing during each period .DELTA.T any error XERR between the theoretical position which the member should occupy and the position it actually occupies, and
- g. means responsive to said fourth and second signals for incrementally changing the second signals to change the number XBIAS by an amount XKBIAS during any period .DELTA.T when the represented error XERR exceeds in magnitude a predetermined value.
- 25. The combination set forth in claim 24 further characterized in that said means (g) include (i) means for changing said second signals to incrementally increase said number XBIAS when the represented error XERR is positive, and (ii) means for changing said second signals to incrementally decrease said number XBIAS when the represented error is negative.
- 26. The combination set forth in claim 24 wherein said predetermined value is zero.
- 27. In a system for controlling the velocity and dynamically changing position of a member movable along an axis X in accordance with a block of numerically signaled command data designating the desired velocity V, said system comprising the combination of:
- a. means for measuring off successive periods .DELTA.T in actual time, with each period normally having a duration .DELTA.TN,
- b. means responsive to said signaled command data for producing first electric signals numerically representing a velocity number PRXC expressing said velocity V in dimensions of distance per period .DELTA.TN,
- c. means for creating second electric signals representing the theoretical desired position XTC of said member, and means responsive to said first signals for modifying said second signals to change the number XTC by the amount PRXC once during each period .DELTA.T,
- d. means for creating third electric signals representing dynamically the changing actual position XIN of said member as it moves along the axis,
- e. means responsive to said second and third signals to produce, by subtraction once during each period .DELTA.T fourth electric signals dynamically representing the then-existing error XERR = XTC - XIN between the theoretical and actual positions of said member,
- f. means for creating fifth electric signals representing an adjustment number XBIAS,
- g. means responsive to said first, fourth and fifth signals for producing anew during each period .DELTA.T sixth electrical signals numerically representing a speed number XDAC, where XDAC is equal to PRXC + G.sub.2.sup.. +XBIAS and G.sub.2 is a preselected gain constant,
- h. a velocity servo coupled to drive said member along the axis, and means responsive to said sixth signals for energizing said servo in accordance with the value of the number XDAC,
- i. means for comparing said fourth signals with a predetermined threshold TH1 and for modifying the operation of said means (a) to incrementally increase the durations of the following periods .DELTA.T when, during any given period .DELTA.T, the magnitude of said error XERR exceeds the threshold TH1, and
- j. means responsive to said fourth signals, during any period .DELTA.T when said number XERR exceeds a predetermined magnitude, for incrementally changing said fifth signals to represent a new value of XBIAS, such that XBIAS.sub.i = XBIAS.sub.i.sub.-1 .+-. XKBIAS, where XKBIAS is a predetermined constant.
- 28. The method of controlling the velocity and dynamically changing position of a member movable along an axis X according to a block of command data numerically designating the desired velocity V and distance DX to be traveled, said method comprising:
- a. measuring off in actual time successive period .DELTA.T which normally have a standard duration .DELTA.TN,
- b. deriving from said command data and producing first digital signals numerically representing a velocity number PRXC expressing said velocity V in dimensions of distance per .DELTA.TN,
- c. creating second digital signals numerically representing the theoretical instantaneous position XTC of said member,
- d. utilizing said first and second signals to algebraically add once during each period .DELTA.T to change said second signals and change the position number XTC, such that XTC.sub.i = XTC.sub.i.sub.-1 + PRXC,
- e. creating third digital signals numerically and dynamically representing the changeable actual position XIN of said member,
- f. utilizing said second and third signals to algebraically subtract once during each period .DELTA.T to produce fourth digital signals numerically representing changing values of a position error number XERR = XTC - XIN,
- g. creating fifth and sixth digital signals numerically representing a changeable adjustment number XBIAS and a predetermined increment number XKBIAS,
- h. utilizing said first, fourth and fifth signals to compute, once during each period .DELTA.T, and produce seventh signals representing a speed number XDAC = G(G.sub.1.sup.. PRXC + XTRIM.sup.. XERR + XBIAS), where G is an overall gain factor, and G.sub.1 and XTRIM are individual term gain factors,
- i. energizing a velocity servo in accordance with said XDAC signals to drive said member along the axis theoretically at a speed equal to the XDAC number,
- j. comparing said fourth signals numerically with a predetermined error threshold value TH1 during each .DELTA.T, and in response to the number XERR representing a lag greater than said threshold, incrementally increasing the duration of the succeeding periods .DELTA.T which are measured off according to step (a), and
- k. comparing said fourth signals with a predetermined constant during each .DELTA.T, and in response to the former exceeding the latter in magnitude, changing said fifth signal by said sixth signals to increment or decrement the signaled number XBIAS, such that XBIAS.sub.i = XBIAS.sub.i.sub.-1 .+-. XKBIAS.
- 29. The method defined in claim 28 wherein said step (j) further includes
- j1. in response to the XERR signals numerically neither exceeding the threshold value TH1 nor representing a lag, incrementally decreasing the duration of the succeeding periods which are measured off according to said step (a).
- 30. In a system for controlling the velocity and dynamically changing position of a member movable along an axis X according to a block of command data signals numerically designating the desired velocity V and the distance DX to be traveled, said apparatus comprising in combination:
- a. means for measuring off successive periods .DELTA.T in actual time, with such periods normally having a duration .DELTA.TN,
- b. means responsive to said command data signals for producing first digital signals numerically representing a velocity number PRXC expressing said velocity V in dimensions of distance per .DELTA.TN,
- c. means for creating second digital signals numerically representing the theoretical position XTC of said member XTC, including means responsive to said first signals for changing said second signals during each period .DELTA.T such that XTC.sub.i = XTC.sub.i.sub.-1 + PRXC,
- d. means for creating third digital signals numerically representing the changeable actual position XIN of said member as it moves along the axis,
- e. means responsive to said second and third signals to produce during each period .DELTA.T fourth digital signals numerically representing the error XERR between the theoretical and actual positions, such that XERR = XTC - XIN,
- f. means for creating fifth and sixth digital signals numerically and respectively representing a changeable adjustment number XBIAS and a predetermined increment number XKBIAS,
- g. means responsive to said first, fourth and fifth signals to produce anew during each period .DELTA.T seventh digital signals numerically representing a speed number XDAC, where XDAC = G[G.sub.1.sup.. PRXC + XTRIM.sup.. XERR + XBIAS] where G is an overall gain factor, and G.sub.1 and XTRIM are individual term gain factors,
- h. a velocity servo coupled to drive said member along the axis, and means responsive to said seventh signals for energizing said servo in accordance with the value of the number XDAC,
- i. means responsive to said fourth signals for modifying the operation of said means (a) to incrementally lengthen the periods .DELTA.T which follow any given .DELTA.T in which the error XERR represents a lag exceeding in magnitude a predetermined threshold value TH1, and
- j. means responsive to said fourth and sixth signals to change said fifth signals to increment or decrement the number XBIAS during any period .DELTA.T in which the error XERR exceeds a predetermined value, such that XBIAS.sub.i = XBIAS.sub.i.sub.-1 .+-. XKBIAS.
- 31. The combination set forth in claim 30, further including
- k. means responsive to said fourth signals for modifying the operation of said means (a) to decrementally shorten the periods .DELTA.T which follow any given .DELTA.T in which the error XERR neither represents a lag nor exceeds said predetermined threshold value TH1.
- 32. The combination set forth in claim 30, further characterized by
- k. means for creating eighth digital signals numerically representing an adjustable number PER designating a desired feed rate override percentage number greater or less than 1.0 when the desired velocity V is to be greater or less than the commanded velocity,
- l. said means (g) includes means to employ said signaled eighth number as the said gain factor G.sub.1, thereby to make the first term in the expression for XDAC consist of PER.sup.. PRXC, and
- m. means included in said means (a) for causing the normal period duration .DELTA.TN to be inversely proportional to said eighth number, such that .DELTA.TN is proportional to C/PER, where C is a constant of proportionality.
- 33. The combination set forth in claim 32 further including
- n. means for selectively placing the system in a holding status, including means to set said eighth signals such that the number PER is zero while leaving the normal durations .DELTA.TN at the value existing prior to PER becoming zero.
- 34. The method of controlling the movement of a member along an axis X in accordance with a block of command data numerically designating the desired velocity V and extent DX of motion, said method comprising:
- a. measuring off successive time periods .DELTA.T in actual time,
- b. deriving from said command data electric signals digitally representing a number PRXC equal to DX/.DELTA.T and representing the desired velocity V in distance per .DELTA.T period,
- c. converting said electrical signals into a corresponding analog signal,
- d. applying said analog signal as an input to a velocity servo which includes a motor coupled to said member to drive the latter along said axis at a speed corresponding to that signal,
- e. deriving from said command data electrical signals digitally representing a number LOOPC corresponding to (DX/V.sup.. .DELTA.T) and representing the number of time periods .DELTA.T required for said member to travel the distance DX at the velocity V,
- f. producing electrical signals digitally representing a number NLOOP which begins at zero and changing such signals to increase such number by 1 each time a period .DELTA.T elapses while said member is being driven by said motor, and
- g. continuing the driving of said motor according to steps (b), (c) and (d) until the signaled number NLOOP becomes equal to the signaled number LOOPC.
- 35. The method defined in claim 34 wherein said step (c) is performed by converting electrical signals representing numerically a sum value XDAC, and further including
- h. producing during each of said periods .DELTA.T electrical signals numerically representing the then-existing error XERR between the theoretical position which the member should then occupy and its actual position, and
- i. utilizing the signals from said step (b) and said step (h) to create the XDAC signals, such that XDAC = G.sub.1.sup.. PRXC + G.sub.2.sup.. XERR, where G.sub.1 and G.sub.2 are predetermined gain factors, thereby to impart a trimming adjustment to the actual velocity of said member if the term G.sub.1.sup.. PRXC results in position errors.
- 36. The method set forth by claim 35 further characterized in that said step (h) includes
- h1. producing signals during each period .DELTA.T which numerically represent the theoretical position XTC of said member, where in any period n, XTC.sub.n = XTC.sub.n.sub.-1 + PRXC,
- h2. producing signals during each period .DELTA.T which numerically represent the actual position XIN of said member,
- h3. utilizing said XTC and XIN signals during each period .DELTA.T to produce further signals representing the error XERR, where XERR = XTC - XIN,
- and with the additional step
- j. lengthening the periods .DELTA.T which follow any given period in which the error represented by said signals XERR exceeds a predetermined threshold value.
- 37. The method set forth by claim 36 further characterized in that said step (a) is carried out absent any effect of said step (j) to make said periods have a normal duration .DELTA.TN, and including
- k. shortening the periods .DELTA.T which follow any given period in which the error represented by said signals XERR does not exceed said threshold value and the duration of that given period is greater than the normal value .DELTA.TN.
- 38. The method of controlling the movement of a member along an axis in accordance with successive blocks of command data each numerically designating desired velocity and extent of motion, said method comprising:
- a. measuring off successive time periods .DELTA.T in actual time,
- b. deriving from said command data for a given block electrical signals digitally representing the distance PRXC which the member must move during each of the time periods .DELTA.T to travel at the desired velocity,
- c. converting said electrical signals into an analog servo input signal representing desired velocity,
- d. applying said servo input signal to a velocity servo which includes a motor coupled to drive said member along said axis at a speed corresponding to the input signal,
- e. deriving from said command data for said given block digital electrical signals representing a number LOOPC equal to (D/V.sup.. .DELTA.T) where D is the desired extent and V is the desired velocity designated by said given block,
- f. counting and representing by digital electric signals the number NLOOP of periods .DELTA.T actually elapsed while said member is being driven by said motor pursuant to said given block, and
- g. utilizing the command data for the next block to perform said steps (b)-(f) after said signaled numbers NLOOP and LOOPC become equal.
- 39. The method of controlling the movement of a member along plural axes X and Y in accordance with successive blocks of command data each numerically designating directly or indirectly desired path velocity V and extent of motion D, said method comprising:
- a. measuring of successive time periods .DELTA.T in actual time,
- b. deriving from said command data for a given block B.sub.n first and second sets of signals numerically representing axis velocity numbers PRXC and PRYC, said numbers expressing distances per .DELTA.T for velocities V.sub.x and V.sub.y which are the vector components of said velocity V,
- c. converting said first and second sets of signals into corresponding analog signals E.sub.x and E.sub.y proportional to the numbers PRXC and PRYC,
- d. applying said analog signals E.sub.x and E.sub.y as inputs to two corresponding velocity servos which respectively include motors coupled to drive said member along the X and Y axes,
- e. deriving from said command data for the block B.sub.n a third set of signals numerically representing a quantity LOOPC of time periods required for the member to travel the distance D at the velocity V, such that ##EQU16## f. producing signals numerically representing a number NLOOP which begins at zero and changing such signals to increase such number by 1 each time a period .DELTA.T elapses while said member is being driven by said motors, and
- g. comparing said signals representing LOOPC and NLOOPS, and when the two numbers represented thereby become equal, setting the NLOOPS signals to zero and continuing said steps (b)-(f) with data from the next block B.sub.n.sub.+1.
- 40. The method set forth in claim 39 further characterized in that said numbers PRXC and PRYC are in value proportional to DX.sup.. V/D.sup.. .DELTA.T and DY.sup.. V/D.sup.. .DELTA.T, where DX and DY are the vector components of the distance D for each block.
- 41. The method set forth in claim 40 further including the steps
- h. signaling during each period .DELTA.T the positions XTC and YTC which said member should theoretically occupy if it had moved through the distances PRXC and PRYC during each of the previously elapsed periods along the respective X and Y axes,
- i. signaling the actual position XIN and YIN in which said member resides along the respective X and Y axes,
- j. adding to said first and second sets of signals, before the conversion thereof according to step (c), a term proportional to the respective axis position errors, such that the analog signals E.sub.x and E.sub.y are respectively proportional to [PRXC + G.sub.2 (XTC-XIN)] and [PRYC + G.sub.2 (YTC-YIN)], where G.sub.2 is a gain factor, and
- k. lengthening the periods .DELTA.T which follow any given period in which the difference XTC-XIN or the difference YTC-YIN exceeds a predetermined threshold value TH1.
- 42. In a system for controlling the movement of a member along an X axis in accordance with a block of command data numerically signaled to directly or indirectly designate the desired velocity V.sub.x and extent DX of motion, said system comprising in combination:
- 1. means for measuring off successive periods .DELTA.T in actual time,
- 2. means responsive to said command data signals for creating a first set of digital signals numerically representing a number PRXC equal to DX/.DELTA.T and expressing the desired velocity V.sub.x in distance per .DELTA.T period,
- 3. means for converting said first set of signals into an analog signal E.sub.x,
- 4. a velocity servo system coupled to drive said member, and means for applying said analog signal as the input thereto,
- 5. means responsive to said command data signals for producing a second set of signals digitally representing the quantity LOOPC of periods .DELTA.T which are within a time span DX/V.sub.x,
- 6. means for producing a third set of signals digitally representing a number NLOOP which begins at zero and increases by 1 as each successive time period .DELTA.T elapses, and
- 7. means responsive to said second and third sets of signals for continuing said steps (2)-(6) until said number NLOOP equals or exceeds said number LOOPC.
- 43. Apparatus as set forth in claim 42 further characterized by:
- 8. means for producing a fourth set of signals digitally representing the then-existing error XERR between the theoretical X position which said member should occupy and the actual position it occupies during each period .DELTA.T,
- 9. means responsive to said first and fourth sets of signals for producing a fifth set of signals digitally representing a changeable number XDAC equal to G.sub.1.sup.. PRXC + G.sub.2.sup.. XERR, where G.sub.1 and G.sub.2 are chosen gain factors, and
- 10. said means (3) is coupled to receive said fifth set of signals instead of said first set.
- 44. Apparatus as set forth in claim 43, further characterized in that:
- 11. said means (8) includes means for producing a sixth set of signals digitally representing a theoretical position number XTC which is changed once each period .DELTA.T, such that XTC.sub.i = XTC.sub.i.sub.-1 + PRXC, and
- 12. means responsive to said fourth set of signals for modifying the operation of said means (1) to lengthen the periods which are measured off after any given period in which said error XERR exceeds a predetermined threshold value TH1.
- 45. In a system for controlling the movement of a member along plural axes X and Y in accordance with successive blocks B.sub.n, B.sub.n.sub.+1, B.sub.n.sub.+2 . . . of command data each numerically signaled to directly or indirectly designate the desired path velocity V.sub.n, V.sub.n.sub.+1 . . . and extent D.sub.n, D.sub.n.sub.+1 . . . of motion, said system comprising, in combination:
- 1. means for measuring off successive periods .DELTA.T in actual time,
- 2. means responsive to the command data signals of block B.sub.n for creating first and second sets of digital signals numerically representing numbers PRXC and PRYC respectively expressing distances per .DELTA.T for velocities V.sub.x and V.sub.y which are vector components of said velocity V,
- 3. means for converting said first and second sets of signals into analog signals E.sub.x and E.sub.y,
- 4. two velocity servo systems coupled to drive said member respectively along the X and Y axes, and means for applying said analog signals E.sub.x and E.sub.y as the respective inputs thereto,
- 5. means responsive to said command data signals for producing a third set of signals digitally representing the quantity LOOPC of periods .DELTA.T which will make up a time span T.sub.p equal to D.sub.n /V.sub.n,
- 6. means for producing a fourth set of signals representing a number NLOOP which begins as zero and responsive to said means (1) for increasing the represented number by 1 as each period .DELTA.T elapses, and
- 7. means for comparing said third and fourth sets of signals and for (a) setting said number NLOOP to zero and (b) transmitting the next block B.sub.n.sub.+1 command data signals to said means (2) and (5) after said number NLOOP has equaled or exceeded said number LOOPC.
- 46. Apparatus as defined in claim 45 wherein said means (2) comprises means for producing first and second sets of signals representing said velocity numbers PRXC and PRYC which are respectively proportional to DX.sup.. V/D.sup.. .DELTA.T and DY.sup.. V/D.sup.. .DELTA.T, where DX and DY are vector components of the distance D.sub.n designated by the data signals for block B.sub.n.
- 47. Apparatus as defined in claim 46 further including
- 8. means responsive to the command data signals of block B.sub.n and said first and second sets of signals for producing during each period .DELTA.T fifth and sixth sets of signals numerically representing the theoretical X and Y positions XTC and YTC of said member, such that XTC.sub.i = XTC.sub.i.sub.-1 + PRXC and YTC.sub.i = YTC.sub.i.sub.-1 + PRYC,
- 9. means coupled to said member for producing seventh and eighth sets of signals dynamically representing the actual X and Y positions XIN and YIN of said member,
- 10. means for supplying to said converting means (3) two respective sets of input signals which make the analog signals E.sub.x and E.sub.y respectively proportional to [PRXC + G.sub.2 (XTC-XIN)] and [PRYC + G.sub.2 (YTC-YIN)] where G.sub.2 is a gain factor, and
- 11. means acting upon said means (1) for lengthening the periods .DELTA.T which follow any given period in which the difference XTC-XIN or the difference YTC-YIN exceeds a predetermined threshold value TH1.
- 48. The method of controlling the velocity and the dynamically changing position of a member movable along an axis X in accordance with a block of numerical command data designating the desired velocity V, said method comprising:
- a. measuring off successive periods .DELTA.T in actual time with the normal duration of each period being .DELTA.TN,
- b. deriving from said command data first digital signals numerically representing a velocity number PRXC expressing said velocity V in dimensions of distance per time period .DELTA.TN,
- c. creating second digital signals numerically representing a number XBIAS,
- d. computing from said first and second signals, once during each period .DELTA.T, and creating third digital signals numerically representing a speed command number XDAC = G[PRXC + XBIAS], where G is a predetermined gain factor,
- e. energizing a velocity servo in accordance with said XDAC signals to drive said member at a velocity theoretically corresponding to the number represented by such signals,
- f. sensing and representing by fourth digital signals the numerical value of any error XERR between the theoretical position which the member should occupy during each period .DELTA.T and the position it actually occupies, and
- g. utilizing said fourth signals to cause said second signals to be incrementally changed to increment the number XBIAS by a predetermined amount XKBIAS during any period .DELTA.T when the represented error exceeds a predetermined value, whereby said XBIAS signals progressively change the XDAC signals to bring the position error progressively toward zero if the PRXC signals fail to keep the position error zero.
- 49. The method defined in claim 48 further characterized in that said second signals are incrementally increased to increase the XBIAS number during any period .DELTA.T when said fourth signals represent an error XERR which is negative, and are incrementally decreased to decrease the XBIAS number during any period .DELTA.T when said fourth signals represent an error XERR which is positive.
- 50. The method set forth in claim 48 wherein said predetermined value is zero.
Parent Case Info
This application is a continuation-in-part of my copending U.S. application Ser. No. 394,242 filed Sept. 4, 1973 (and which is to be expressly abandoned).
US Referenced Citations (6)
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
394242 |
Sep 1973 |
|