← Back to Patent Explorer
US4689541A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for controlling multiple motors

Assignee: United States Department of Energy
•
Filing: 1986-07-22
•
Granted: 1987-08-25
•
Expires: 2006-07-22
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus are provided for simultaneously controlling a plurality of stepper motors. Addressing circuitry generates address data for each motor in a periodic address sequence. Memory circuits respond to the address data for each motor by accessing a corresponding memory location containing a first operational data set functionally related to a direction for moving the motor, speed data, and rate of speed change. First logic circuits respond to the first data set to generate a motor step command. Second logic circuits respond to the command from the first logic circuits to generate a third data set for replacing the first data set in memory with a current operational motor status, which becomes the first data set when the motor is next addressed.

Inventors

  • 👤 Rollin G. Jones
  • 👤 Bert L. Kortegaard
  • 👤 David F. Jones

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 06:43
CPC Classifications
H; H02; H02P; H02P8/00; H02P8/40

Claims Analysis

Total Claims: 35
Claim 1
Independent Claim 202 words
A motor control system for sequentially controlling a plurality of stepper motors, including: addressing means for generating address data for each said motor in a periodic address sequence; memory means responsive to said address data for said each motor for accessing a memory location corresponding to said address data, said memory location containing a first data set functionally related to a direction for moving said motor, a number of steps remaining to move said motor, a speed for moving said number of steps, and a rate of change for said speed; first logic circuits for inputting said first data set and for outputting a second data set for commanding said motor to make a single step in a determined direction after a number of said periodic addresses; second logic circuits for inputting said second data set and for outputting a third data set funtionally related to a status of said motor is response to said second data set; and means for replacing said first data set with said third data set in said memory at said location corresponding to said address of said motor, said third data set becoming said first data set at a next said periodic addressing of said motor.
Claim 2
Dependent Claim 202 words
A motor control system for sequentially controlling a plurality of stepper motors, including: addressing means for generating address data for each said motor in a periodic address sequence; memory means responsive to said address data for said each motor for accessing a memory location corresponding to said address data, said memory location containing a first data set functionally related to a direction for moving said motor, a number of steps remaining to move said motor, a speed for moving said number of steps, and a rate of change for said speed; first logic circuits for inputting said first data set and for outputting a second data set for commanding said motor to make a single step in a determined direction after a number of said periodic addresses; second logic circuits for inputting said second data set and for outputting a third data set funtionally related to a status of said motor is response to said second data set; and means for replacing said first data set with said third data set in said memory at said location corresponding to said address of said motor, said third data set becoming said first data set at a next said periodic addressing of said motor.
Claim 3
Dependent Claim 126 words
A motor control system according to claim 1, wherein said first logic circuit includes: a skip counter for counting said number of said periodic addresses and having an overflow output to cause said motor to move one of said number of steps; a PROM for receiving a portion of said first data set functionally related to a minimum and a maximum speed for said motor and to a predetermined incremental rate of change for said steps and deriving an output for preloading said skip counter with a number funtionally related to a stepping speed for said motor; and skip count latch means for holding a new count of said skip counter after each said periodic address to form a first portion of said third data set.
Claim 4
Dependent Claim 41 words
A motor control system according to claim 2, further including PAL means for logically outputting data indicative of a next phase state for said motor from input data indicative of a present phase state and direction for movement of said motor.
Claim 5
Dependent Claim 42 words
A motor control system according to claim 3, further including phase latch means for latching said next phase state data to form a second portion of said third data set at a time related to said overflow output of said skip counter.
Claim 6
Dependent Claim 77 words
A motor control system according to claim 2, wherein said first logic circuit includes: a counter decoding PAL having inputs functionally related to the number of steps taken by said motor and to skip count data and having outputs to indicate a proximity of said motor to a start and a stop position, to enable said preload into said skip counter after said overflow, and to indicate completion of motor movement as indicated by empty counter contents.
Claim 7
Dependent Claim 99 words
A motor control system according to claim 5, further including: ramping means for accepting a portion of said first data set functionally related to a first ramp level number and outputting data indicative of the number of said steps taken by said motor at said first ramp level number; and a ramp level PAL for changing said first ramp level number after a predetermined number of said steps at said first ramp level and in functional relationship to said outputs from said counter decoding PAL to form a second ramp level as a portion of said third data set.
Claim 8
Dependent Claim 65 words
A motor control system according to claim 1, further including: data bus means for transferring data within said control system; and sequencing means responsive to each said motor address for reading said first data set from said memory onto said data bus, latching data inputs to said first and second logic circuits, and writing said third data set into said memory in a predetermined sequence.
Claim 9
Independent Claim 190 words
A method for simultaneously controlling a plurality of stepper motors, including the steps of: generating address data for each said motor in a periodic address sequence; accessing a memory location corresponding to said address data and containing a first data set functionally related to a direction for moving said motor, a number of steps remaining to move said motor, a speed for moving said number of steps, and a rate of change for said speed; inputting said first data set to first logic circuits; outputting from said first logic circuits a second data set for commanding said motor to make a single step in a determined direction after a number of said periodic addresses; inputting said second data set to second logic circuits; outputting from said second logic circuits a third data set functionally related to a status of said motor in response to said second data set; and replacing said first data set with said third data set in said memory at said location corresponding to said address of said motor, said third data set becoming said first data set at a next said periodic addressing of said motor.
Claim 10
Independent Claim 190 words
A method for simultaneously controlling a plurality of stepper motors, including the steps of: generating address data for each said motor in a periodic address sequence; accessing a memory location corresponding to said address data and containing a first data set functionally related to a direction for moving said motor, a number of steps remaining to move said motor, a speed for moving said number of steps, and a rate of change for said speed; inputting said first data set to first logic circuits; outputting from said first logic circuits a second data set for commanding said motor to make a single step in a determined direction after a number of said periodic addresses; inputting said second data set to second logic circuits; outputting from said second logic circuits a third data set functionally related to a status of said motor in response to said second data set; and replacing said first data set with said third data set in said memory at said location corresponding to said address of said motor, said third data set becoming said first data set at a next said periodic addressing of said motor.
Claim 11
Dependent Claim 139 words
A method according to claim 8, wherein said step of outputting said second data set includes the steps of: counting said number of said periodic addresses in a skip counter; generating a SKIP signal during said counting; generating an overflow output when said skip counter is full effective to move said motor one of said number of steps; inputting to a PROM a portion of said first data set functionally related to a minimum and a maximum speed for said motor and to a predetermined incremental rate of change for said steps; deriving in said PROM an output for preloading said skip counter with a number functionally related to a stepping speed for said motor; and latching a new count of said skip counter after each said periodic address to form a first portion of said third data set.
Claim 12
Dependent Claim 43 words
A method according to claim 9, further including: inputting data to a phase PAL indicative of a present phase state and direction for movement of said motor; and logically outputting data from said PAL indicative of a next phase state for said motor.
Claim 13
Dependent Claim 35 words
A method according to claim 10, further including latching said next phase state to form a second portion of said third data set at a time related to said overflow output of said skip counter.
Claim 14
Dependent Claim 84 words
A method according to claim 9, further including the steps of: inputting to a counter decoding PAL data functionally related to the number of steps taken by said motor and to skip count data; and outputting from said counter decoding PAL data indicative of a proximity of said motor to a start and a stop position, a signal enabling said preload number into said skip counter after said overflow, and a signal indicative of completion of motor movement as indicated by empty counter contents.
Claim 15
Dependent Claim 117 words
A method according to claim 12, further including: inputting to ramping circuit means a portion of said first data set functionally related to a first ramp level number; outputting from said ramping circuit means data indicative of the number of said steps taken by said motor at said first ramp level number; and inputting to a ramp level PAL said number of steps taken at said first ramp level number; and incrementing said first ramp level numer after a predetermined number of said steps at said first ramp level number and in functional relationship to said outputs from said counter decoding PAL to form a second ramp level number as a portion of said third data set.
Claim 16
Dependent Claim 66 words
A method according to claim 8, further including: transferring data on a data bus means; and sequencing said data bus means in response to each said motor address for reading said first data set from said memory onto said data bus, for latching data inputs to said first and second logic circuits, and for writing said third data set into said memory in a predetermined sequence.
Claim 17
Dependent Claim 116 words
A motor control system for simultaneously controlling a plurality of stepper motors, including: memory means defining a memory location for each of said plurality of motors for storing a first data set functionally related to an operational status of each said motor; a first plurality of PAL circuits for manipulating said first data set according to predetermined logic to derive a second data set for moving each said motor; logic means for combining said second data set with said first data set to derive a third data set functionally related to a revised operational status of each said motor; and writing means for replacing said first data set in said memory with said third data set.
Claim 18
Dependent Claim 116 words
A motor control system for simultaneously controlling a plurality of stepper motors, including: memory means defining a memory location for each of said plurality of motors for storing a first data set functionally related to an operational status of each said motor; a first plurality of PAL circuits for manipulating said first data set according to predetermined logic to derive a second data set for moving each said motor; logic means for combining said second data set with said first data set to derive a third data set functionally related to a revised operational status of each said motor; and writing means for replacing said first data set in said memory with said third data set.
Claim 19
Dependent Claim 72 words
A system according to claim 15, wherein said first plurality of PAL circuits includes: a ramp level PAL for deriving a subsequent ramp level number after a predetermined number of motor steps taken at a present ramp level number; a phase error PAL for deriving an error signal indicative of bad phase state data; and a next phase PAL for deriving motor phase state data for storage at said motor memory location.
Claim 20
Dependent Claim 52 words
A system according to claim 15, wherein said means for combining said second data set with said first data set includes: a plurality of data latches; and means for enabling said first plurality of PAL circuits and said plurality of data latches in a sequence effective to derive said third data set.
Claim 21
Dependent Claim 52 words
A system according to claim 16, wherein said means for combining said second data set with said first data set includes: a plurality of data latches; and means for enabling said first plurality of PAL circuits and said plurality of data latches in a sequence effective to derive said third data set.
Claim 22
Dependent Claim 46 words
A system according to claim 15, further including: means for sampling said control system for status and fault data; and a second plurality of PAL circuits for receiving said status and fault data and deriving command signals for said control system according to a predetermined logic.
Claim 23
Dependent Claim 34 words
A system according to claim 15, further including motor driver means responsive to said second data set for energizing a combination of motor phases to move said motor one step in a determined direction.
Claim 24
Dependent Claim 30 words
A system according to claim 16, further including a PROM for deriving motor speed data responsive to said ramp level number as a portion of said second set of data.
Claim 25
Dependent Claim 39 words
A system according to claim 21, further including counter means for outputting a proximity signal, functionally related to an end position of said motor, to said ramp level PAL to decrease said ramp level number and slow said motor.
Claim 26
Dependent Claim 132 words
In a control system for moving a stepping motor from a first position to a second position, an improved system for motor speed control, comprising; counter means having an output functionally related to the number of steps made by said stepping motor at a first motor speed; a ramp level PAL having at least said counter output as said input and generating a ramp level number functionally related to a position of said motor relative to said first position and to said second position; and a ramp PROM having at least said ramp level number as input and deriving an output functionally determining said first motor speed to accelerate said motor in a first proximity to said first position and to decelerate said motor in a second proximity to said second position.
Claim 27
Dependent Claim 132 words
In a control system for moving a stepping motor from a first position to a second position, an improved system for motor speed control, comprising; counter means having an output functionally related to the number of steps made by said stepping motor at a first motor speed; a ramp level PAL having at least said counter output as said input and generating a ramp level number functionally related to a position of said motor relative to said first position and to said second position; and a ramp PROM having at least said ramp level number as input and deriving an output functionally determining said first motor speed to accelerate said motor in a first proximity to said first position and to decelerate said motor in a second proximity to said second position.
Claim 28
Dependent Claim 63 words
A motor speed control system according to claim 23, further including: minimum motor speed input means for defining a starting speed for said ramp PROM; and maximum motor speed input means for defining a steady state speed for said motors and defining a data base for said PROM in deriving changes in said motor speed as a function of said ramp level number.
Claim 29
Dependent Claim 44 words
A motor speed control system according to claim 23, further including: overflow counter means for generating an action signal when said overflow counter is filled; and circuit means for preloading said overflow counter with a count level functionally related to said ramp PROM output.
Claim 30
Dependent Claim 26 words
A motor speed control system according to claim 25, further including: motor driver means responsive to said action signal for moving said stepping motor one step.
Claim 31
Dependent Claim 46 words
A motor speed control system according to claim 23, further including: a data decoding PAL having at least one input functionally related to a number of steps taken by said motor, and outputting at least one flag effective to increment or decrement said ramp level number.
Claim 32
Dependent Claim 215 words
In a control system for moving a stepping motor from a first position to a second position, an improved system for motor speed control, comprising; counter means having an output functionally related to the number of steps made by said stepping motor at a first motor speed; a ramp level PAL having at least said counter output as said input and generating a ramp level number functionally related to a position of said motor relative to said first position and to said second position; a ramp PROM having at least said ramp level number as input and deriving an output functionally determining said first motor speed to accelerate said motor in a first proximity to said first position and to decelerate said motor in a second proximity to said second position; overflow counter means for generating an action signal when said overflow counter is filled; circuit means for preloading said overflow counter with a count level functionally related to said ramp PROM output; minimum motor speed input means for defining a starting speed for said ramp PROM; and maximum motor speed input means for defining a steady state speed for said motors and defining a data base for said PROM in deriving changes in said motor speed as a function of said ramp level number.
Claim 33
Dependent Claim 215 words
In a control system for moving a stepping motor from a first position to a second position, an improved system for motor speed control, comprising; counter means having an output functionally related to the number of steps made by said stepping motor at a first motor speed; a ramp level PAL having at least said counter output as said input and generating a ramp level number functionally related to a position of said motor relative to said first position and to said second position; a ramp PROM having at least said ramp level number as input and deriving an output functionally determining said first motor speed to accelerate said motor in a first proximity to said first position and to decelerate said motor in a second proximity to said second position; overflow counter means for generating an action signal when said overflow counter is filled; circuit means for preloading said overflow counter with a count level functionally related to said ramp PROM output; minimum motor speed input means for defining a starting speed for said ramp PROM; and maximum motor speed input means for defining a steady state speed for said motors and defining a data base for said PROM in deriving changes in said motor speed as a function of said ramp level number.
Claim 34
Dependent Claim 46 words
A motor speed control system according to claim 28, further including: a data decoding PAL having at least one input functionally related to a number of steps taken by said motor, and outputting at least one flag effective to increment or decrement said ramp level number.
Claim 35
Dependent Claim 26 words
A motor speed control system according to claim 28, further including: motor driver means responsive to said action signal for moving said stepping motor one step.

References Cited (Backward Citations)

US3146386A Cited
US3268785A Cited
US3497778A Cited
US3757192A Cited
US4294552A Cited
US4401931A Cited
US4509114A Cited
US4481569A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1990-08-24 1991-02-23 1991-08-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1994-08-24 1995-02-23 1995-08-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1998-08-24 1999-02-23 1999-08-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag