FIELD OF INVENTIONThe invention generally relates to conveyor systems, and more specifically to conveyor systems in the form of modular linear motors having multiple moving elements under independent control.
BACKGROUND OF INVENTIONThere are a number of fundamental limitations with well-known conventional conveyor systems which employ a belt for transporting pallets between processing stations. First, the speed of the belt is typically quite limited. This is largely due to the fact that the pallets are typically stopped, e.g., in order to be processed at a processing station, by mechanical stop mechanisms. Thus, if the belt conveyor is operated at a high speed, the strong impact between a pallet and mechanical stop is likely to jar whatever parts the pallet may be carrying for processing. Second, it is generally not possible to vary the acceleration and velocity profiles for individual pallets. For instance, if a first pallet is empty and a second pallet is loaded with delicate parts, it is generally not possible to aggressively accelerate the first pallet to a high speed while controlling the second pallet using more gentle acceleration and velocity profiles. This limitation affects the latency and possibly the throughput of the manufacturing line. Third, belt conveyor is typically not bidirectional, which may result in a suboptimal design of the manufacturing line. Fourth, the belt conveyor typically provides limited flexibility or programmability, such as being able to very quickly change the positions of processing stations. Finally, the data acquisition capabilities provided by the belt conveyor are typically quite limited. For example, it is typically not possible to know where the pallets and their constituent loads are located along the conveyor at all times. Thus, for instance, it may be difficult to know how many pallets are queued at a particular processing station. For these and other reasons, a conveyor system having multiple moving elements or pallets under substantially independent control may be desirable for various types of applications.
Conveyor systems having multiple pallets under substantially independent control are known in the art, but suffer from a variety of limitations. For example, U.S. Pat. No. 4,841,869 issued Jun. 27, 1989 to Takeuchi et al. discloses a conveyor system utilizing a linear induction motor, comprising a conveyor cart and a guide rail for movably supporting the conveyor cart. The guide rail includes primary coils, and the conveyor cart includes a flexible secondary conductor extending longitudinally of the cart so as to follow the guide rail. The primary coils comprise a station primary coil disposed at each loading and unloading station for stopping and starting the conveyor cart, two primary coils adjacent opposite ends of the station primary coil for decelerating the conveyor cart that is to be stopped at the stat ion by the station primary coil and for accelerating the conveyor cart having started from the station to a target running speed, and a plurality of intermediate accelerating primary coils disposed between two adjacent stations for accelerating the conveyor cart to maintain the latter at the target running speed.
A major shortcoming with the Takeuchi et al. system is that the carts or pallets thereof cannot be positioned to stop at any point along the conveyor, but only where the linear motors thereof are disposed. This makes changing the location of a station a troublesome endeavour. In addition, the system is not capable of pinpointing the location of a moving pallet at any time. In view of these limitations, the Takeuchi et al. system does not feature truly independent and total control of multiple moving elements.
U.S. Pat. No. 5,023,495 issued Jun. 11, 1991 to Ohsaka et al. discloses a moving-magnet type linear d.c. brushless motor having plural moving elements disposed for motion along a track. The track includes a coreless stator armature having a plurality of contiguously arranged coils thereon. Each moving element includes a thrust-generating field magnet having P contiguous magnetic poles of alternating N and S polarity (i.e. polypolar magnet) having one side facing the stator armature. Each moving element may also include a polypolar position-detecting magnet. The track includes a row of position/commutation sensors, each row of position/commutation sensors being provided for detecting the magnetic poles of only the position-detecting magnet of a corresponding moving element. The position/commutation sensors are used in control circuitry for generating an electric current in the stator armature to move the moving elements in predetermined directions separately and independently.
The Ohsaka et al. system also has a number of shortcomings, particularly with respect to the modularity or scaling properties of the system. First, due to the fact that a separate track of position/commutation sensors is required for each moving element, the system can only accommodate a relatively small number of moving elements. Second, the length of the linear motor is limited by a servocontrol mechanism, described as a single microcomputer, which can only process and accommodate a limited number of the position/commutation sensors and associated electric current generating control circuitry. Third, use of the magnetic position-detecting elements provides a relatively poor resolution for measuring the position of the moving element. Fourth, the winding arrangement of the stator armature is essentially that of a linear stepper motor, which presents an uneven magnetic reluctance along the stator armature resulting in relatively noticeable cogging effects and a jerky thrust production. Finally, the, coreless design of the stator armature also results in a relatively low average thrust production which may not be suitable for typical conveyor system applications.
SUMMARY OF INVENTIONThe invention seeks to avoid many of the limitations of the prior art in order to provide a conveyor system having multiple moving elements under independent control, and particularly such a conveyor system which can be constructed out of discrete, self-contained, modular track sections, with little practical restriction on the length of the conveyor system or the number of pallets controlled thereby.
One aspect of the invention relates to apparatus for detecting the positions of plural moving elements, such as pallets, relative to a stationary element, such as a track. This apparatus comprises a plurality of linear encoder readers spaced at fixed positions along the stationary element. A device, such as a reflective optical or magnetic strip, readable by the linear encoder readers is mounted on each moving element, with each readable device having a length which is greater than the spacing between any given pair of adjacent linear encoder readers. Guide means align the readable devices in order to interact with the linear encoder readers. Plural processing means, such as a digital signal processor connected to each linear encoder reader, associates any given readable device with only one linear encoder reader at any time and resolves the position of the corresponding moving element based on the fixed position of the associated linear encoder reader and a relative position of the given readable device in relation to the associated linear encoder reader.
Another aspect of the invention relates to a moving-magnet type linear motor, comprising a plurality of moving elements traveling along a track, and a stator armature provided substantially along the entire traveling track of moving elements. Each moving element travels separately and independently and comprises n permanent magnets disposed face to face with the stator armature, the magnets being arranged in alternating North and South sequence and having a pole pitch P. The stator armature comprises a plurality of individual coils arranged in a substantially contiguous sequence of individual polyphase-like sets, each set comprising p overlapping coils having centers thereof spaced apart by a distance P/p, where p>=2. A servocontrol system is provided for regulating and commutating the coils so as to produce a separate moving MMF for each moving element in order to independently control each moving element.
A further aspect of the invention relates to a modular linear motor, comprising:
n interconnected track sections, forming a continuous track, wherein each track section comprises a stator armature having a plurality of individually controllable coils disposed substantially along the entire length of the track section;
a plurality of moving elements traveling separately and independently along the continuous track, each moving element having at least two thrust producing magnets arranged in alternating North and South sequence and disposed face to face with the stator armatures of the track sections;
n track section controllers, one per track section, for regulating and commutating the coils of the corresponding stator armature in order to produce a separate moving MMF for each moving element located in the corresponding track section and independently control each moving element located therein; and
communication means for interfacing the section controllers of adjacent track sections, wherein a given section controller is operative to utilize the communication means in order to transfer a servo responsibility for resolving the position of a given moving element to an adjacent section controller when the given moving element straddles the corresponding track sections, and wherein each of the given and adjacent section controller pair provides at least one coil regulating signal to the other of said pair in the event any portion of the magnets of the given moving element spans any portion of at least one coil situated in the track section corresponding to the other of said pair, provided that the responsibility for resolving the position of the given moving element has not yet been transferred to the other of said pair.
A still further aspect of the invention relates to a modular conveyor system, comprising:
n interconnected track sections, forming a continuous track, wherein each track section comprises a stator armature having a plurality of individually controllable coils disposed substantially along the entire length of the track section, and wherein each track section comprises a plurality of linear encoder readers spaced at fixed positions therealong;
a plurality of moving elements traveling separately and independently along the continuous track, each moving element having a plurality of thrust producing magnets arranged in alternating North and South sequence and disposed face to face with the stator armatures of the track sections, each moving element including a linear encoder strip having a length greater than the spacing between any given pair of adjacent linear encoder readers, the length of each moving element being sized to prevent linear encoder strips from adjacent moving elements to interact with the same linear encoder readers;
n track section controllers, one per track section, each section controller providing (a) position-detection processing means for associating any given linear encoder strip of any moving element located in the corresponding track section with only one linear encoder reader located therein at any time and for resolving the position of such moving element based on the fixed position of the associated linear encoder reader and a relative position of the given linear encoder strip in relation to the associated linear encoder reader, and (b) servo means, connected to the position-detection processing means, for regulating and commutating the coils of the corresponding stator armature in order to produce a separate moving MMF for each moving element located in the corresponding track section to thereby independently control each such moving element; and
communication means for interfacing the section controllers of adjacent track sections, wherein a given section controller is operative to utilize the communication means in order to transfer a responsibility of resolving the position of a given moving element to an adjacent section controller when the given moving element straddles the corresponding track sections, and wherein each of the given and adjacent section controller pair provides at least one coil regulating signal to the other of said pair in the event any portion of the magnets of the given moving element spans any portion of at least one coil situated in the track section corresponding to the other of said pair, provided that the responsibility for resolving the position of the given moving element has not yet been transferred to the other of said pair.
In the preferred embodiment of the conveyor system, the magnets of each moving elements have a pole pitch P; the electrical pole pitch of each of the coils is P; and the coils of each track section stator armature are arranged in a substantially contiguous sequence of individual polyphase-like sets, each set comprising p overlapping coils having centers thereof spaced apart by a distance P/p, where p>=2, and where coils associated with one track section do not overlap onto an adjacent track section. This enables the track sections to be self contained and modular in nature.
In the preferred embodiment of the conveyor system, the transfer of the responsibility for resolving the position of a given moving element to an adjacent section controller when the given moving element straddles the corresponding track sections occurs when an aforesaid linear encoder strip is associated with a first linear encoder reader and simultaneously begins to interact with a second, adjacent linear encoder in a second, adjacent track section. The position-detection processing means of each section controller, in combination with the transfer between section controllers of the responsibility for detecting the position of moving elements which cross track sections, enables multiple elements to be tracked along the entirety of the track without requiring any further infrastructure, thereby not posing any undue limits on the number of moving elements which can be tracked. In addition, it will be appreciated that the moving elements are passive devices which, due to not being tethered in any way, have unrestricted mobility along the track.
In the preferred embodiment of the conveyor system, the section controllers are operative to transfer static data concerning the straddling moving element, such as its destination, to the adjacent section controller prior to the transfer of the responsibility for resolving the position of the straddling moving element. Furthermore, the section controllers are operative to transfer dynamic or memory based servocontrol data concerning the straddling moving element to the adjacent section controller substantially simultaneously with the transfer of the responsibility for resolving the position of the straddling moving element. In this manner, a distributed servocontrol system is presented which enables multiple moving elements to be controlled over a long track.
In the preferred embodiment of the conveyor system, the sections controllers are connected to a central controller which initializes the system and performs a diagnostic monitoring function. In addition, each section controller is directly connected to a station controller, such as a programming logic controller. The station controllers instruct the track section controllers for the purpose of carrying out station-specific tasks and coordinating the movement of the moving elements with other station machinery. The station controllers can also provide the section controllers with the next destinations for the moving elements, thereby alleviating the central controller from this task. The distributed control architecture provided by these additional components further enhance the scaling properties of the system.
BRIEF DESCRIPTION OF THE DRAWINGSThe foregoing and other aspects of the invention are discussed in greater detail below with reference to the drawings, provided for the purpose of description and not limitation, where like objects are referenced by like reference numbers, and wherein:
FIG. 1 is an isometric view of a portion of a modular conveyor system, in accordance with the preferred embodiment, wherein multiple pallets move over a track;
FIGS. 2a and 2b are exploded views of the system shown inFIG. 1;
FIG. 3 is a cross-sectional view of the conveyor system taken along line III—III inFIG. 1;
FIG. 4 is a plan view of an individual poly phase-like coil set employed in the conveyor system in accordance with the preferred embodiment;
FIG. 5 depicts a conduction cycle of an individual coil shown inFIG. 4 in relation to the corresponding movement of a pallet thereover, in accordance with the preferred embodiment;
FIG. 6 is a system block diagram of a preferred distributed control architecture for controlling the conveyor system of FIG.1 and each section thereof;
FIG. 7 is a hardwire block diagram of preferred electronic circuitry used to control each conveyor system section shown inFIG. 6;
FIG. 8 is an electronic schematic diagram illustrating various portions of the electronic circuitry shown inFIG. 7 in greater detail;
FIG. 9 is a system block diagram illustrating a servocontrol system according to the preferred embodiment for controlling pallets in each conveyor system section;
FIG. 10 is a flow chart of a digital p.i.d. position control loop employed in the servocontrol system ofFIG. 9;
FIG. 11 is a flow chart relating to a commutation controller employed in the servocontrol system ofFIG. 9;
FIG. 12 is a digram of a preferred scheme employed by the servocontrol system ofFIG. 9 for demultiplexing linear encoders spaced along each conveyor system section in order to resolve the position of a given pallet therein;
FIG. 13 is a state transition diagram in relation to the demultiplexing scheme ofFIG. 12;
FIG. 14 is a diagram of a preferred scheme for synchronizing the servocontrol systems (each shown inFIG. 9) of adjacent conveyor system sections in order to smoothly control the movement of a pallet thereacross; and
FIG. 15 is a state transition diagram in relation the synchronization scheme of FIG.14.
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTSFIG. 1 illustrates a portion of amodular conveyor system20, in accordance with the preferred embodiment. Thesystem20 features multiple pallets or moving elements22 (only one is illustrated) which are constrained to ride or travel along a continuous, stationary,track24.
The description of theconveyor system20 is organized as follows: (1) an introduction to the operating principles thereof; (2) brief description of the physical structure of the system, which comprises a plurality of track sections orunits26; (3) description of the preferred electromagnetic structure of the system; (4) introduction to a preferred distributed control architecture for control of the system; (5) detailed description of a preferred servocontrol system for eachtrack unit26; (6) detailed description of a preferred servocontrol subsystem for detecting the position of eachpallet22 along eachtrack unit26; (7) detailed description of a method according to the preferred embodiment for synchronizing the servocontrol system ofadjacent track sections26 when any givenpallet22 crosses therebetween.
Principle of Operation
Referring additionally toFIGS. 2 and 3, eachpallet22, as explained in greater detail below, houses a plurality ofpermanent magnets28 disposed to provide a magnetic flux depicted by vectors (30 and31) orientated normal to thetrack24. Thetrack24, as explained in greater detail below, houses astator armature32 comprising a plurality of embeddedcoils35 which are individually excited so that an electrically-induced magnetic flux (depicted byvectors36 and37) produced by thestator armature32 is located only beneath a givenpallet22 to be controlled, in a direction normal thereto, without affecting adjacent pallets. The motive force for translating eachpallet22 arises from the magnetomotive (MMF) force produced by each pallet and the stator armature, i.e., by the tendency of the corresponding magnetic fluxes provided by the stator and pallet to align. Servocontrol means, as described in greater detail below, enable separate and independent moving MMFs to be produced along the length of thetrack24 for each pallet so that eachpallet22 can be individually controlled with a trajectory profile that is independent of any other pallet. The servocontrol means employs a contactless pallet position-detecting subsystem, as described in greater detail below. Structurally, theconveyor20 may thus be broadly classified as a moving-magnet type linear brushless motor having multiple moving elements.
Physical Structure
Mechanically, thetrack24 is composed of a plurality of track sections orunits26 which are mechanically self-contained and quickly and easily separable from one another so as to be modular in nature. In the preferred embodiment, thetrack units26 are mounted on a substrate (not shown) so as to merely align and abut one another in order to form thecontinuous track24. This preferred feature requires that stator armature coils35 from one track unit not overlap or project onto the stator armature of an adjacent track unit, as explained in greater detail below. Also, eachtrack unit26 houses all of theelectronic circuitry38 required to control the track unit.
As seen best inFIGS. 2 and 3, eachpallet22 includes anextension40 onto which is mounted a relatively long, graduated, opticallyreflective strip45. Theextension40 is disposed such that thereflective strip45 interacts with contactless, optical linear encoder read heads50 mounted to acorresponding extension46 depending from aside wall48 of thetrack24. With the aid offlap52, this interengaging structure protects theoptical components45 and50 from the traffic on the track and assists in precluding ambient light, i.e., light interference or noise, from falsely triggering the optical linear encoder read heads50. Theoptical components45 and50 are employed in the pallet position-detecting subsystem explained in greater detail below. At this point, it should be appreciated that by placing the read heads50 ontrack24 and not onpallets22, the pallets are riot tethered in any way and thus their mobility is not restricted.
Eachpallet22 features load-bearingwheels54 which ride along rails56 oftrack24. Each pallet also features spring-loadedbearings58 for constraining the pallet to stay on therails56 and maintain the alignment betweenoptical components45 and50.
Electromagnetic Structure
The magnetic structure of eachpallet22 comprises at least two thrust-producing permanent magnets arranged in alternating North-South sequence. The permanent magnet material, which may include Neodymium-Iron-Boron, Alnico and ceramic (ferrite) base magnets, is selected on the basis of air gap flux densities required and the physical dimensions of the pallet magnetic structure. In the preferred embodiment, eachpallet22 carries two Neodymium-Iron-Boronpermanent magnets28 spaced apart by pole pitch P. This provides each pallet with a permanentmagnet pole pair60 which providesmagnetic flux vectors30 and31 pointing in opposite directions. For reasons explained shortly below, and referring additionally toFIG. 5, the pole pitch P is preferably approximately equal to 2D/3, where D is the overall width of the permanent magnet poles pair, and the width W, of eachmagnet28 is preferably approximately D/3. The permanentmagnet pole pair60 abuts a magnetic backplate (FIG. 2) and these components are preferably mounted in acavity64 ofpallet22 such thatend portions66 of the pallet body function as dead poles which magnetically isolate the pallet permanentmagnet pole pair60 from the permanent magnet pole pair of any adjacent pallet.
The magnetic structure of thestator armature32 comprises ayoke68, constructed out of electrical steel, which features a plurality of substantially equidistantly spacedslots70 disposed in relative close proximity to one another. A representative slot spacing is 3 mm and representative slot dimensions are 1.5×7×75 mm. The turns of the stator armature coils35 are mounted in the yoke slots.
The turns of each coil are formed (FIG. 4) into twolegs72 and72′ which are spatially distributed over a specified number ofyoke slots70. Thecoil legs72 and72′ provide electrically induced, magnetic flux producing pole pairs that producemagnetic flux vectors36 and37 pointing in opposite directions. The spatial distribution ofcoil legs72 or72′ reduces cogging effects caused by uneven reluctance and, in comparison to a non-spatially distributed coil leg or electrically induced pole, enables a smoother thrust production along thestator armature32.
The electrical pole pitch (FIG. 5) of eachcoil35 is substantially equal to the mechanical pole pitch, P, of each pallet permanentmagnet pole pair60. In the preferred embodiment, the width of eachcoil leg72 or72′ is approximately equal to the width, W, of each palletpermanent magnet28, whereby the overall width of eachcoil35 approximately equals the overall width, D, of pallet permanentmagnet pole pair60.
Thecoils35 are arranged as a sequence of individual polyphase-like windings or coil sets, wherein coils in each set are overlapped such that the coil centres are spaced apart a distance P/p, where p is the number of quasi-phases. The preferred embodiment, as seen in FIG.2 and inFIG. 4 (which is a plan view of a coil set taken in isolation), features a two phase-like arrangement, wherein each polyphase-like winding or coil set (hereinafter “coil pair75”) comprises two overlappingcoils35 having theircentres76,77 spaced apart by a distance P/2. Since the width, W, of theleg72 or72′ of eachcoil35 is D/3, and the width of the empty inner space of the coil is also D/3, it will be seen fromFIGS. 2 and 4 that one of thelegs72 or72′ of eachcoil35 incoil pair75 substantially occupies the emptyinner space78 of the counterpart coil such that there are nounfilled yoke slots70 spanned by the coil pair. In addition, the coil pairs75 are arranged to be immediately adjacent to one another such that there are nounfilled yoke slots70 in an inter-coil pair region. This arrangement, in combination with the spatial distribution of the turns of each coil leg, enables thestator armature32 to present a relatively uniform reluctance in order to minimize cogging effects.
Another advantage provided by the individual polyphase-like windings or coil sets lies in the fact that thetrack24 can be modularly constructed in discrete sections as described above such that no coil from one stator section overlaps, projects or otherwise encroaches upon an adjacent stator section. In contrast, a conventional convolute polyphase a.c. stator winding has an essentially endless coil overlapping arrangement such that turns cannot be mechanically separated.
In alternative embodiments, a coil set may comprise a short segment of a conventional polyphase a.c. winding, preferably provided that length of each segment is approximately equal to the length of the magnetic structure of the pallet. Thus, a stator armature according to this embodiment comprises a series of individually controlled polyphase a.c. windings.
The magnetic circuit provided by the pallet and stator armature is as follows (FIG.2): the magnetic flux circulates through thepallet backplate62, through thepermanent magnets28, across an air gap to and through the stator armature poles (i.e. coils35), through theyoke68, back through the stator poles, and back through thepermanent magnets28, returning to thepallet backplate62.
FIG.5(b) illustrates aconduction cycle80 for asingle coil35 of any givencoil pair75. FIG.5(a) indicates that theconduction cycle80 begins just as a leadingedge82 of pallet permanent magnet pole pair60 (shown in solid lines) reaches a leading outer turn of thecoil35 and terminates just as a trailing edge84 of the pallet pole pair60 (shown in stippled lines) passes over a receding outer winding of the coil. Distances along the position axis of FIG.5(b) correspond to the relative distance between acentre point86 ofcoil35 and acentre point87 of thepallet pole pair60. Theconduction cycle80 corresponds to a 540 degree electrical cycle. It should also be noted that the preferred conduction cycle illustrated in FIG.5(b), in association with the design of thestator armature32 as described above, yields a relatively constant MMF, having a ripple of only about 5-10%.
Distributed Control Architecture
FIG. 6 is a high level abstraction of a preferred control architecture employed in theconveyor system20. Architecturally, theconveyor system20 is partitioned into a plurality of control zones, each of which corresponds to onetrack section unit26, which is placed under the control of alocal section controller90. Thesection controllers90 are connected to one another in a peer-to-peer communications network such that eachsection controller90 is connected to a preceding and following section controller through high speed communications links92.
Eachsection controller90 is also connected to acentral controller94, such as a computer workstation, through a supervisory network employing amulti-drop bus96. Thecentral controller94 and supervisory network provides an efficient means for initializing the section controllers. The central controller may also communicate destination data to the section controllers for the pallets (which are preferably uniquely addressed) and receive acknowledgement messages in return when pallets have reached their destinations. As such, the central controller may be used for process (i.e. manufacturing-line) control. The central controller also fulfils a supervisory diagnostic role by monitoring the section controllers (e.g. by engaging in a continuous polling process) in order to determine whether any section controller has failed.
Eachsection controller90 may also (but does not necessarily) include acell port98 for interfacingsection controller90 to a e station controller such as an external programmable logic controller (PLC)100. The PLCs provide manufacturing-line station-processing instructions to thetrack24, such as directing the next destination for a pallet along the track, or providing station-specific motion instructions in respect of a given pallet stopped adjacent to or in a processing station (not shown). For instance, a typical two-axis station controller or PLC operates by providing pulse signals in order to synchronize the motion of a pallet along the track with the motion of a station end effector or dispenser moving along a transverse axis, whereby each pulse represents an incremental pallet move command. It will be appreciated that the provision of the station controller or PLC reduces the amount of bandwidth that would otherwise be required to communicate this information to thecentral controller94, thereby substantially eliminating a potential limitation on the length and processing capabilities of the conveyor system.
As illustrated, eachsection controller90 is connected to all of the stator armature coils35 in thecorresponding track unit26 and, as described in greater detail below, is responsible for commutating the coils in the control zone in accordance with an independent trajectory or “move” command for each pallet located therein. However, unlike a conventional convolute two phase stator armature winding, the commutation is complicated by the fact that a given pallet, (such as illustratedpallet22′) may straddle two coil pairs75 whereby both coil pairs have to be simultaneously excited in order to produce a suitable moving MMF along thetrack24.
Eachsection controller90 is also connected to all of the optical read heads50 situated in its control zone. The section controller is responsible for resolving the absolute position of eachpallet22 located in its control zone, as described in greater detail below.
Servocontrol System
FIG. 7 is a hardware block diagram illustrating the major components of a givensection controller90 which, in accordance with the preferred embodiment, physically comprises acontrol board102 and twopower boards104. Thecontrol board102 includes an ADSP2181 digital signal processor (DSP)105, commercially available from Advanced Micro Devices of Norwood, Mass. U.S.A., and associatedprogram memory106. TheDSP105 includes two on-chipserial ports108 for providing the communication link interfaces92 to adjacent preceding and following section controllers. Aseparate micro-controller110 provides an interface to thesupervisory network96 which links thesection controller90 to thecentral controller94. A field programmable gate array (FPGA)112 is used to interface thecell port98 with thelocal PLC100. TheFPGA112 is also used to interface the optical read heads50 with theDSP105.
Thepower boards104 comprises a plurality ofcurrent amplifiers114, one for eachcoil35 controlled by the section controller. (There are eighteen coils in the illustrated embodiment.) Eachcurrent amplifier114 comprises an inverter such as a two phase or H-bridge116,drivers118 for converting logic level signals to analog level signals in order to drive the power switches of the H-bridge, andcurrent sensing circuitry120 for sensing the coil current. Each power board also includes anFPGA122 which is used to interface theDSP105 with thecurrent amplifiers114. More particularly, as shown inFIG. 8 which illustrates a given current amplifier and its associated FPGA circuitry, theFPGA122 provides a latch124 (for eachcoil35 controlled by a given power board), addressable by theDSP105, for storing a pulse-width modulated (PWM) duty cycle value used to drive the H-bridge116. Thelatch124 is connected to a fixedfrequency PWM generator126 which operates by comparing the value stored in thelatch124 with a continuously cyclingcounter128 and setting anoutput signal130 accordingly. Theoutput signal130 and acomplementary signal132 are connected to thedrivers118 so as to control the base inputs ofpower MOSFET devices134 employed as switching elements in the H-bridge116.
Thecurrent sensing circuitry120 comprises acurrent sensor136 which is used to measure the current flowing through a givencoil35 for all commutation phases of the H-bridge. A suitable current sensor is disclosed for instance in co-pending U.S. Ser. No. 08/873,158, filed Jun. 11, 1997, by Derek C. Schuurman and assigned to an assignee of the instant application. A variety of alternative current sensing devices may be used, such as current transformers or open and closed loop Hall effect devices. The output of thecurrent sensor136 is connected to ananalog filter138 which is connected to an analog multiplexer140 (not shown in FIG.7). Theanalog multiplexer140 multiplexes the current sensing signals from multiple current sensors associated with the othercurrent amplifiers114 located on thepower board104 and provides these signals to an analog to digital converter (A/D)142 which is connected to alatch144 addressable by theDSP105. TheFPGA122 provides a channel selection means146 for continuously sampling the current sensing signals from eachcurrent amplifier114. TheFPGA122 also providescircuitry148 for generating the appropriate control signals to the A/D142. It will be noted (FIG. 7) that since eachsection controller90 comprises twopower boards104 each carrying A/D142, theDSP105 can operate in a pipelined manner so that two coil current readings can occur substantially simultaneously.
Eachpower board104 also includes atemperature sensor147 and avoltage sensor149 which are connected to the A/D142 and interfaced to theDSP105 by theFPGA122. Thecentral controller94 periodically polls eachsection controller90 in order to obtain diagnostics data provided by these sensors.
TheDSP105 of eachsection controller90 is used to implement a closed-loop digital servocontrol system which is shown in systemic form in FIG.9. The servocontrol system comprises atrajectory generator150, as known in the art per se, for computing a pallet position set point vector {right arrow over (S)} (S1, S2, . . . , SK), where component or signal represents the position set point for a given pallet located in the control zone serviced by the given section controller and K is the number of pallets in the control zone at any given time. Thetrajectory generator150 produces set points for each pallet in accordance with pre-specified acceleration and velocity profiles for the pallets which are downloaded by thecentral controller94 to thesection controller90 during system initialization. For example, thetrajectory generator150 may employ a trapezoidal acceleration profile to smoothly accelerate the pallet from an initial rest position to a terminal velocity and then smoothly de-accelerate the pallet to a destination position. In the preferred embodiment, the pallet position set point vector {right arrow over (S)} is computed at a rate of approximately 1 KHz.
The pallet set points are compared against the measured positions, {right arrow over (X)} (X1, X2, . . . , XK), of the pallets as determined by a palletposition feedback subsystem152 which also samples pallet positions at a rate of approximately 1 KHz. This comparison results in the computation of a pallet position error vectors Δ{right arrow over (S)} (ΔS1, ΔS2, . . . , ΔSK). The pallet position error vectors Δ{right arrow over (S)} is fed into aposition compensator154 which computes a force vector, {right arrow over (F)} (F1, F2, . . . , FK), specifying the force required to be applied to each pallet in order to minimize the pallet position error. The force vector {right arrow over (F)} is also computed at a rate of about 1 KHz.
In the preferred embodiment, theposition compensator154 employs a well-known proportional, integral, derivative (p.i.d.) control law, however, alternative control methods such as the state space technique may employed.FIG. 10 shows pseudocode for implementing a digital p.i.d. control loop in respect of one pallet. It will be seen that in order to compute a derivative term, D_term, of the p.i.d. control law, the p.i.d. control loop employs an error history buffer or array E[1 . . . q] for retaining a set {ΔSi[T], ΔSi[T−1], ΔSi[T−2], . . . , ΔSi[T−q]} of position errors where T represents a latest received pallet position error and q corresponds to the size of the buffer. In addition, the p.i.d. control loop employs an accumulator, I_term, for storing the integral term of the p.i.d. control law. This data assumes special significance when a pallet moves across control zones, as discussed in greater detail below.
The force vector {right arrow over (F)} and pallet position vector {right arrow over (X)} are fed (FIG. 9) into acommutation controller155 which provides current set point data for thecoils35.FIG. 11 illustrates a preferred commutation control algorithm executed by thecommutation controller155. Processing steps158 and162 set up nested loops. The inner loop is executed N times, where N is the number ofcoils35 controlled bysection controller90. The outer loop executes the inner loop K times, where K is the number of pallets presently located in the current control zone. At processingstep160 in the outer loop, thecommutation controller155 computes the centre point, CPP(i), of permanentmagnet pole pair60 for pallet(i), 1<≦K. (See additionally FIG.5). This computation is based on (a) input parameter or signal Xi, the measured position of pallet(i), which, as described in greater detail below, is measured at a different reference point than the pallet polepair centre point87; and (b) a constant which is dependent upon the physical dimensions of pallet(i). At processingstep164 in the inner loop (FIG.11), thecommutation controller155 computes the relative distance, RD(j), between centre point CPP(i) of pallet(i) and the centre point, CPC(j), of a given coil, coil(j), 1<j≦N. Atstep166, a check is made whether or not-D≦RD(j)≦D. This, as described above with reference toFIG. 5, indicates whether or not thepole pair60 of pallet(i) is situated above coil (j). If thepole pair60 of pallet(i) is not situated above coil(j), flow control is passed to the next iteration of the inner loop. If thepole pair60 of pallet(i) is situated above coil(j), then (FIG. 11) atsteps168,170 and172 the commutation controller respectively reads a table180 corresponding to the conduction cycle80 (FIG. 5) to extract a nominal current set point; scales the nominal current set point by input parameter Fi, the required force for pallet(i); and updates a current set point table182. This process is repeated for each pallet in the control zone in order to provide a current set point vector {right arrow over (I)}S(IS1, IS2, IS3, . . . , ISN). The current set point vector {right arrow over (I)}Sis computed or updated at a 20 KHz rate.
The current set point vector {right arrow over (I)}Sis compared (FIG. 9) to an actual or measured coil current vector {right arrow over (I)}A(IA1, IA2, IA3, . . . , IAN) generated by thecurrent sensing circuitry120 in order to compute a current error vector Δ{right arrow over (I)} (ΔI1, ΔI2, ΔI3, . . . , ΔIN) at a 20 KHz rate. The current error vector Δ{right arrow over (I)} is fed into acurrent compensator184 which computes a PWM duty cycle value for eachcurrent amplifier114 of eachcoil35 using a proportional, integral (p.i.) control law well known in this art. In the foregoing manner, thecommutation controller155 applies theconduction cycle80 to the necessary stator armature coils35 in order to provide a moving MMF for a given pallet in the control zone, even when the pallet straddles two coil pairs75.
Parallel Position Feedback Subsystem
The palletposition feedback subsystem152 which supplies measured pallet position data to thetrajectory generator150,position compensator154 andcommutation controller155 is now discussed in greater detail. Referring toFIGS. 6,7 and12, when thereflective strip45 of a givenpallet22 moves over a givenoptical read head50, two 90° out-of-phase signals are produced andquadrature decoding circuitry186 causes a counter or register188 associated therewith to count up or down in accordance with the direction of travel of thereflective strip45. For example, if a 400 lines-per-inch graded reflective strip moves one inch through a givenoptical read head50, such movement will cause the associatedcounter188 to change by +/−400, depending on the direction of travel. Theoptical read head50 anddecoding circuitry186 and188 (hereinafter “encoder”) as well as the associatedreflective strip45 are commercially available, for instance, from the Hewlett Packard Company of Santa Clara, Calif., U.S.A.
As depicted inFIG. 6, each control zone features a plurality, M, of the optical read heads50 which are substantially equidistantly spaced at a distance, E, along everytrack unit26. The length R, of thereflective strip45 is such that R is greater than E by a pre-determined amount, XR. Thus, the reflective strip associated with any given pallet can engage or trigger two encoders simultaneously at various points along the track. In addition, the length, L, of the pallet itself is at least equal to or greater than R in order to ensure that a reflective strip associated with an adjacent pallet does not interfere with the given pallet. In other words, the length L is chosen to ensure that no two reflective strips can trigger the same encoder.
As shown inFIG. 7, theFPGA112 of eachsection controller90 interfaces the linear encoders with theDSP105 thereof. The DSP provides a parallel processing means for sampling the encoders and resolving the position of each pallet located in the associated track unit at a rate of approximately 1 KHz. Broadly speaking, the processing means associates thereflective strip45 of any given pallet with only one encoder at any time so that the absolute position of the given pallet can be calculated based on a fixed position of the associated encoder (or more specifically its read head50) and a relative position of the reflective strip in relation to the associated encoder. In addition, when the reflective strip simultaneously engages two encoders, at some point, as described in greater detail below, the processing means transfers or hands-off the association or “ownership” of the pallet from the current encoder to the adjacent engaged encoder. In this manner, the position of a given pallet can be continuously tracked across the control zone. When a pallet crosses control zones, a similar process occurs, with the addition that the adjacent section controller creates a data structure to keep track of the position of the given pallet, and at some point as described in greater detail below, once the hand-off is completed, the data structure for the pallet in the (now) previous control zone is deleted.
FIGS. 12 and 13 depict a method according to the preferred embodiment for accomplishing the hand-off or transfer of the ownership of a given pallet between adjacent encoders. More particularly,FIG. 12 depicts how a given encoder may assume various control states, andFIG. 13 is a diagram of an associated state transition table. In the illustrated embodiment, thereflective strip45features 3300 graduations, i.e. 3300 counts from start to finish, and a control zone features seven encoders (addressed from enc=0 to enc=6).
A “zone 2”state200 represents a steady state condition wherein the reflective strip of a given pallet i engages a given encoder, encoder(n), and is not yet near encoder(n−1) or encoder(n+1). Considering the situation where the given pallet moves to the right inFIG. 12, at some point (i.e. when count=3060) the leading right edge of the associated reflective strip moves right into a “right-reset”state202 where the adjacent right encoder(n+1) is continuously reset to zero in preparation for the hand-off. The reflective strip then enters a “zone 3” state204 (at count=3120). At some point in this state, the leading edge of the reflective strip engages encoder (n+1) which begins its count reflecting the distance the leading edge of the reflective strip has passed therethrough. However, encoder(n) still owns the given pallet. The ownership continues until the leading edge of the reflective strip reaches a “right hand-off” state206 (at count=3240). Somewhere in this state, depending on the rate theDSP105 samples the encoders, the ownership of the given pallet is handed-off to encoder(n+1). The transfer of ownership is shown in the changing state of table220 (FIG. 12) before and after the hand-off (where i represents the given pallet).
A similar process occurs when the given pallet moves leftward. “Reset-left”, “zone 1”, and “left hand-off” states208,210 and212 are the respective counterparts to the “reset-right”, “zone 3”, and “right hand-off” states202,204 and206.
The preferred method provides a hysteresis effect when the given pallet backtracks soon after the hand-off is accomplished. The extra distance XR by which the length R of each reflective strip exceeds the encoder spacing E enables thecontrol state patterns215 and215′ (FIG. 12) associated with each encoder to overlap and be partially temporarily conterminous, as illustrated. The relative lengths and positions of the control states or zones are selected such that when the hand-off is effected, encoder(n+1) is in the “zone 1”control state210. If during this state the given pallet backtracks, it must traverse at least a minimum hysteresis distance H backwards before the ownership of the given pallet is transferred back to encoder(n). The hysteresis effect provides for a more stable pallet position feedback system by preventing the oscillation or flip-flopping of hand-offs when a pallet straddles two encoders and is commanded to move relatively small distances to and fro. Such a condition could occur, for instance, when the pallet is located at a processing station and the motion of the pallet along the axis oftrack24 is coordinated by thePLC100 with the motion of a station end effector or dispenser moving along a transverse axis.
The preferred method is carried out by eachsection controller90 for each pallet located in the corresponding control zone.
Those skilled in the art will appreciate that devices other than the opticallinear encoder reader50 and thereflective strip45 may be used in alternative embodiments. For example, the passive readable device can be a magnetic strip and the linear encoder readers can be corresponding magnetic detectors. Such an alternative embodiment could provide very fine resolution, e.g. graduations of about a micron, however the cost of such linear encoders is typically very high and may not be required for most applications given the good resolution, typically a thousandth of inch, provided by the optically reflective strips.
Synchronizing Servocontrol Systems
The length oftrack24 that a givensection controller90 can control is limited by various practical considerations, thereby complicating the production of moving MMFs for the pallets, which have to cross control zones. Accordingly, the preferred embodiment provides a means for synchronizing the servocontrol systems of adjacent section controllers and for passing control of a pallet crossing therebetween.
FIGS. 14 and 15 depict a method and protocol according to the preferred embodiment for synchronizing the servo control systems of adjacent section controllers and for passing control of a given pallet i crossing control zones.FIG. 14 depicts various control states assumed by section controller(n) of track section or control zone N and section controller(n+1) of track section or control zone N+1 as a given pallet crosses from zone N into zone N+1, and vice versa.FIG. 15 illustrates an associated state transition table followed by each of controller(n) and controller(n+1). A “Solo Pallet”state250 represents a steady state condition when the given pallet is fully under the control of one section controller.
When the given pallet moves to the right inFIG. 14 from zone N to zone N+1, the leading right edge of the associated reflective strip reaches a point t1which is considered to be near to zone N+1. Upon the occurrence of this event, a message, termed PM_CREATE, is transmitted by controller (n) to controller(n+1) over the peer to peercommunication link92 using a predetermined handshaking protocol (for ensuring reliable communication), and controller(n) enters a “Pallet Struct”state252. Correspondingly, controller(n+1) receives the PM_CREATE message and enters a “Pallet Ready”state260. During the time period t1-t2represented by the substantially conterminous states of the section controllers, the following events occur: (1) controller(n+1) creates or initializes a data structure for the given pallet; and (2) controller(n) passes various static data from its data structure representing the given pallet to controller(n+1) over the peer-to-peer communications link92 in accordance with a predetermined communications protocol. This data includes information such as the pallet destination point, current velocity and acceleration, maximum permissible velocity and acceleration, length, number of magnets and offset data, and envelope or buffer space data for collision avoidance purposes.
At point t2, the leading edge of the pallet permanentmagnet pole pair60 reaches the leading turn of a border coil pair located in zone N+1. (See, for example, FIG.5(a).) Upon the occurrence of this event, a message, termed PM_COILSTART, is transmitted by controller(n) to controller(n+1), and controller(n) enters a “Send Coil Control”state256. Correspondingly, controller(n+1) receives the PM_COILSTART message and enters a “Receive Coil Control”state258. During the time period t2-t3represented by the conterminous states of the section controllers, controller(n) is still responsible for executing the position control loop for the given pallet, which includes computing a force set point component Fifor the given pallet and measuring the position Xithereof. Controller(n) uses this data as described above to regulate theborder coil pair75 in zone N. The force set point Fiand position Xiare also communicated to controller(n+1) at a rate of approximately 1 KHz over the peer-to-peer communication link92. Controller(n+1) uses this data in itscommutation controller155 andcurrent compensator184 in order to produce current step point components I1and I2in zone N+1 and regulate theborder coil pair75 in zone N+1 so as to properly servocontrol the given pallet. In this manner, controller(n) and controller(n+1) are synchronized to cooperatively execute the current control loop for the given pallet by regulating the border coil pairs in their respective zones.
At point t2, the leading edge of the reflective strip of the given pallet reaches a point, as described above, where the ownership of the given pallet should be handed-off from a border encoder in zone N to a border encoder in zone N+1. Upon the occurrence of this event, a message, termed EM_CHANGE_ACTIVE_ENCODER, is transmitted by controller(n) to controller(n+1), and controller(n) enters the “Receive Coil Control”state258. Correspondingly, controller(n+1) receives the EM_CHANGE_ACTIVE_ENCODER message and enters the “Send Coil Control”state256. During the time period t3-t4represented by the substantially conterminous states of the section controllers, a number of steps occur:
- (1) The dynamic or memory-based data used by controller (n) for the position control loop of the given pallet is transferred over to controller(n+1). In the preferred embodiment this comprises (a) the accumulator, I_term; and (b) a portion of the error history buffer E[2 . . . q] in respect of the set {ΔSi[T−1], ΔSi[T−2], . . . , ΔSi[T−q]} of position errors for calculating the derivative term of the p.i.d. control law.
- (2) The dynamic or memory-based data used by controller (n) to generate the trajectory of the given pallet is transferred over to controller(n+1). In the preferred embodiment this comprises up-to-date velocity, acceleration, position and time base data.
- (3) Controller(n) sends controller(n+1) a message effective to transfer the ownership of the given pallet from the border encoder in zone N to the border encoder in zone N+1. This change of state is also shown inFIG. 13 where, for instance, when the border encoder (enc=6) is in the “zone 3”state204 and moves right into a hand-off zone, the border encoder enters into a “Right Hand-off Message”state216 where the zone-crossing, controller ownership transfer message is transmitted.
- (4) Once step (3) is effected, controller(n+1) becomes responsible for executing the position control loop for the given pallet, which includes computing the force set point component Fifor the given pallet and measuring the position Xithereof. Controller(n+1) uses this data as described above to regulate the border coil pair in zone N+1. Now, controller(n+1) communicates the force set point Fiand measured position Xito controller (n) at a rate of approximately 1 KHz over the peer-to-peer communication link92. Controller(n) now uses this data in itscommutation controller155 andcurrent compensator184 in order to produce current step point components INand IN-1in zone N and regulates the border coil pair in zone N so as to properly servocontrol the given pallet. In this manner, controller(n) and controller(n+1) remain synchronized to continue to cooperatively execute the current control loop for the given pallet.
 
At point t4, the trailing edge of the pallet permanentmagnet pole pair60 passes the last turn of the border coil located in zone N. Upon the occurrence of this event, a message, termed PM_COILSTOP, is transmitted by controller(n+1) to controller(n), whereby controller(n+1) enters into a “Pallet Control”state254 and controller(n) enters into the “Pallet Ready”state26. As soon as this point is reached, position control loop set point data is no longer transferred from controller(n+1) to controller(n). Since there is no longer any need to regulate the border coil in Zone N. At point t5controller(n+1) enters into the steady “Solo Pallet” state, wherein a message, termed PM_DESTROY, is sent to controller(n) to terminate its data structure for the given pallet.
In the preferred method, the point at which any of the above described section controller states is triggered or entered into differs depending upon the direction the given pallet is moving. This provides a hysteresis effect, similar to that described above, for enabling a more stable control system by preventing the inefficient oscillation or flip-flopping between states when a pallet straddles two track sections and is commended to move relatively small distances to and fro.
The above process has been described a tone border between track units. A similar process can simultaneously occur at the opposite border between track units when a pallet travels thereacross.
It will be appreciated by those skilled in the art that while the preferred embodiment passes a position error minimizing signal such as Fibetween adjacent section controllers when a pallet crosses control zones, an alternative embodiment may instead compute the current set points for the coil pair in an adjacent control zone which are spanned by a crossing pallet, and pass this data to the adjacent section controller. The current set point signals are linearly related to the position error minimizing set point or signal, and both types of signals can be viewed as instances of coil regulating signals. The advantage of the preferred embodiment is that less information has to be passed over the relative slow (compared to the processing speed of the DSP105)serial communication link92.
Thepreferred conveyor system20 provides a number of advantages over the herein-disclosed prior art. For instance, the electromagnetic structure of the conveyor system provides relatively smooth thrust production capabilities, and the conveying speed is much improved over typical belt conveyor systems. For example, in a prototype system developed by the applicants, the pallets attained a 2 g acceleration and steady velocity of 2 m/s. In addition, the pallet position-detecting subsystem enables the absolute position of each pallet to be determined at high resolution at all times anywhere along the track, thereby enabling the pallets to be precisely positioned to any point along the track. Furthermore, the preferred distributed control system enables each pallet to be individually and separately controlled yet interface with manufacturing process controllers. Finally, these elements, in combination with the physical structure of the conveyor system, enable it to be constructed out of discrete, self-contained, modular track sections, with little practical restriction on the length of the conveyor system or the number of pallets controlled thereby.
The preferred embodiment has been disclosed with a certain degree of particularity for the purpose of description but not of limitation. Those skilled in the art will appreciate that numerous modifications and variation can be made to the preferred embodiment without departing from the spirit and scope of the invention.