System and Method for Mover Self-Navigation in an Independent Cart System

A system for controlling movers in a linear drive system includes a plurality of movers and a track providing segments along which the movers may travel and holding driver coils and a segment controller controlling the driver coils. Some of the segments having switches forming branches between segments. A central controller communicates operates with the segment controllers to route the movers along the track by distributing routing decisions for a given mover to a segment controller for a track on which a given mover is currently traveling.

BACKGROUND INFORMATION

The present invention relates to motion control systems and, more specifically, to providing improved navigation of movers in an independent cart system.

Motion control systems utilizing movers and linear drives in an independent cart system can be used in a wide variety of processes (e.g., packaging, manufacturing, and machining) and can provide an advantage over conventional conveyor belt systems with enhanced flexibility, extremely high-speed movement, and mechanical simplicity. The motion control system includes a set of independently controlled “movers” each supported on a track for motion along the track.

The track is made up of a number of track segments that, in turn, hold individually controllable electric coils. Successive activation of the coils establishes a moving electromagnetic field that interacts with magnets or similar structures on the movers and causes the mover to travel along the track in the manner of a linear electric motor. Each of the movers may be independently moved and positioned along the track in response to the moving electromagnetic field generated by the coils. Each track segment may have a separate controller that handles the low level sequencing of the coils in response to instructions from a central controller.

In a simple system, the track forms a path over which each mover circulates. At certain destinations along the track other actuators may interact with each mover. For example, the mover may pass or stop at a loading station at which a first actuator places a product on the mover. The mover may then be moved along a process segment of the track where various other actuators may fill, machine, position, or otherwise interact with the product on the mover. The mover may be programmed to stop at various destinations or to move at a controlled speed past a destination. After the destination is achieved, the mover returns to the starting position or proceeds to a new destination.

Often, a track may include multiple branches joined together by switches that allow the movers to move between the branches. The process of controlling the switches, and hence routing the movers, may be performed by the central controller which has knowledge of the track topology and can track the location of the movers to provide signals to the switches. Current and anticipated independent cart systems may have hundreds of movers operating at high speed and requiring rapid routing decisions at switches, a process that can severely tax the central controller's ability to monitor the position and determine the necessary routing of each of the movers.

Thus, it would be desirable to provide an improved system for routing movers in tracks having complex topologies with many movers.

BRIEF DESCRIPTION

In one embodiment, the invention provides a system for controlling movers in a linear drive system having a plurality of movers associated with mover records and having a track providing a plurality of segments along which the movers may travel, each segment holding at least one electrically controllable driver coil and a segment controller executing a stored program to energize and deenergize the at least one driver coil for movement of the movers on the segment; wherein at least some of the segments include a switch forming branches between segments to provide switchably controllable alternate routes for the movers. The segment controllers operate to: (a) circulate mover records among the segment controllers according to physical proximity of a given mover associated with a given record to a given segment controller; and (b) at each segment controller associated with a switch, control a switch position according to a data of the mover record and its presence at a track of the segment controller.

According to another embodiment of the invention, a system for controlling movers in a linear drive system includes a plurality of movers and a track providing a plurality of segments along which the movers may travel, each segment holding driver coils and a segment controller controlling the driver coils for movement of the movers on the segment and some of the segments having switches forming branches between segments. A central controller communicates with the segment controllers and the segment controllers and central controller operate together to route the movers along the track by distributing routing decisions for a given mover to a segment controller for a track on which a given mover is currently traveling.

DETAILED DESCRIPTION

The present invention recognizes that the track controllers associated with each track section provide a simple and intuitive method of distributing the processing demands of navigation, to both reduce the demand on the central processor for routing supervision and to reduce the demands on the communication bus between the track controller and the central controller or even between track controllers. Specific route information described by route listings can be offloaded to a mover record or specific track controllers allowing self-navigation of the movers on the tracks without necessary intervention of the central controller.

Referring now toFIG.1, an independent cart technology (ICT) system10may provide a set of track segments12including, for example, straight segments12a, curved segments12b, and switch segments12cwhich may be assembled, in one example, into a track14providing multiple loops joined at respective switch segments12cand12c′.

A set of movers16may be positioned on the track14to move, for example, between a starting position (A) and a destination position (B) each being arbitrarily designated by an application program according to a particular application of the ICT system10and as will be described below.

Generally each of the track segments12will function as a stator of a linear motor having a set of electromagnetic coils18spaced along an extent of the track segment12interacting with permanent magnets20or a similar salient structure within the mover16. In this regard the mover16acts like a motor “rotor” to be moved or positioned by the selected energization of the coils18. When permanent magnets20are employed, they may be arranged with alternating polarity and rotation to form a so-called Halbach array to better interact with the magnetic fields generated by the coils18in which generally magnetic axes are directed toward the mover16.

Each track segment12may also include multiple sensors25, for example, Hall effect sensors, magneto-diodes, an anisotropic magnetoresistive (AMR) device, fluxgate sensor, or other devices operating to generate an electrical signal corresponding to the presence of a magnetic field. The sensors allow the position of the mover16to be determined to provide for feedback control of mover motion. In one embodiment, the cart may be supported mechanically by rollers22held within a guide channel24of the track segment12and may be constrained laterally to stay on the track, for example, by a retaining wall on the track segment12or other guides.

Each track segment12may be associated with a segment controller26providing a set of electrical switches28for controlling the current to the coils18according to a desired sequencing of the coils18for moving or positioning the mover16, for example, making use of position information from the sensors25in a feedback loop or the like allowing precise motion profiles in acceleration and deceleration, rapid stopping, collision detection and the like to be implemented by the segment controller26on a local basis. The electrical switches28may be solid-state devices including, but not limited to, transistors, thyristors, or silicon-controlled rectifiers.

In order to properly sequence the switches28to move or position the mover16, the segment controller26, for example, may include one or more processing elements32communicating via interface circuitry (not shown) with the switches28and the sensors25. The processing elements32may further communicate with an electronic memory34holding an operating program36and data files38whose operations will be discussed below. Multiple segment controllers (e.g.,26,26′) associated with different segments12may intercommunicate by an electronic data bus40, for example, using the Ethernet protocol for the transmission of electronic data whose structure as will be discussed in greater detail below.

The bus40may also communicate with a central controller42, for example, having one or more processors44communicating with its own electronic memory46holding an operating program48and various data files50for the configuration and supervision of the ICT system10. In this regard, the central controller42may communicate with a user terminal52(for example, including a graphics monitor, keyboard, mouse or the like) to allow a programming and configuration of the ICT system10including, for example, defining the various destinations and starting points of the movers16. In addition, the central controller42may receive position information to monitor cart traffic and may provide programming rules and motion profiles to the segment controllers26; however, the central controller42will generally not handle the instantaneous control of the mover16with respect to implementing motion profile or collision detection. In some embodiments, the central controller42may be a programmable logic controller (PLC) configured to control other elements of a process line integrated with the ICT system10and in this respect may provide I/O lines47, for example, controlling actuators such as pneumatic or magnetic actuators or motors for receiving the sensor signals, for example, from limit switches, cameras, temperature monitors, and the like.

It will be appreciated that the ICT system10is fundamentally modular, allowing track segments12to be assembled together for a variety of topologies and the segment controllers26associated with each track segment12interconnected by the bus40. This is in keeping with the fact that the ICT system10is intended to work in a variety of manufacturing and production environments.

Elements of the above described ICT technology10, suitable for use with the present invention are commercially available from Rockwell Automation, Inc having offices throughout the world under the trade names of MagneMover and QuickStick and are described in multiple US and international patents assigned to the assignee of the present application and hereby incorporated by reference including US patent applications 2021/0213984 and 2020/0379439 and U.S. Pat. Nos. 10,985,685 and 11,190,086.

Referring now also toFIG.2, per process block60, in operation, use of the ICT system10may begin with a configuration step in which the topology of the ICT system10is entered into the central controller42, for example, as a file describing each segment12in order and their interconnections and providing an address for each segment controller26associated with the listed segments. For example, the mapping may be implemented as a table, graph or linked list identifying each segment12its neighbors, branches, and the like as well as the length of the segment12.

As part of this process, the particular destinations A and B may be identified either as absolute positions on a given segment12or as a distance along a path, where a path is a contiguous length of track between two switches and identified by a path ID. For example, the track ofFIG.1provides for three different paths. In this case, the destination location is given as a distance on a given path measured from the upstream end of the path to the destination. This latter path formulation may be chosen to provide a more compact storage of destination information as will be discussed below, because all destinations on a path can be routed with a single path ID. In all cases, the distance between destinations A and B may be readily determined from this mapping information.

In addition, at this time, the number of movers16is entered and unique identifiers assigned to the movers16. In this latter step, the movers made be circulated around the track14, for example, past an RFID tag reader so that each mover16may be given a unique identification number retained in association with that mover16by a persistent tracking of the mover16after configuration. In the same way, each mover16will be assigned to a mover record62that will pass along the bus40in synchrony with a respective mover16to effectively carry information associated with the mover16to the various track controllers26.

This approach eliminates any need for electronics on the mover16, such as data memory, to hold the data of the mover record62, greatly simplifying the movers16and increasing their versatility; however, it will be appreciated that in an alternate embodiment the mover record62may be held all or in part on the mover16as a data file, for example, using wireless communication of that information to the proximate segment controller26or even directly to the bus40for the central controller42. After or contemporaneously with the configuration process of process block60, an application program64may be loaded into the central controller42describing the desired operation of the movers16in a particular application, for example, for manufactured product. As is generally understood in the art, the invention contemplates being used with a variety of different manufacturing processes (e.g., packaging, manufacturing, and machining) and in this respect anticipates user developed programs that will provide high-level commands to the movers16as the process dictates and will generally be developed specifically for an application. The application program64may communicate via an ICT program portion66a set of movement commands67each identifying particular movers16and may communicate over the bus40to either directly or via the mover record62with a given segment controller26having responsibility for the mover16, generally determined by whether the mover is on the track segment12associated with the segment controller26.

In one embodiment, these commands are implemented by modifying the mover records62of the mover16by writing a destination value being a location to which the movers16should move. This approach (as with the other approaches that will be described) allows a “set and forget” mode of operation in which the central controller42, after issuing the move command, may relinquish control of the mover16until the mover16reaches the destination. In this way, traffic on the bus40is greatly reduced compared to what would otherwise be required if constant communication from the central controller42were required. In addition, the processing power necessary to route the movers16is automatically distributed to the multiple segment controllers26in a simple and intuitive way, with the position of the movers16serving as a proxy for how processing should be shared. This proxy sharing approach also assures that any given segment controller26is not overloaded by virtue of the limitations of the maximum density of the number of movers16that can be on a given track segment associated with that segment controller26and requiring routing.

Referring still toFIG.2, using instruction information from the application program60, sent directly to the segment controllers26and/or indirectly to the segment controllers26via the mover record62, the segment controllers26automatically move the movers16to the destination as indicated by process block68as will be discussed in more detail below. Once a destination is reached, as determined by decision block70a signal may be communicated over the bus40to the central controller42and the application program64to trigger a new instruction. Typically, an arrival at the destination will be determined by the segment controller26having a track segment12embracing the indicated destination location.

Referring now toFIGS.2and3, in a first embodiment, the set-and-forget instruction67per process block68loads the mover record62for the particular mover16(per its unique identifier71established during configuration) with the mover's currents destination73, for example, identified as a particular track segment12and location on the track segment12. In this case, the segment controllers26each include a destination-specific routing table74that may be received at the time of configuration60and thereafter can remain unchanged during the operation of the ICT system10with the exception of managing traffic problems as will be discussed below. This routing table74, will provide a logical table linking each possible mover destination (as indicated by a first column) to a switch state or switch position determining the direction which determines the direction in which the mover16will be routed to reach that destination (indicated in simplified form as “left” or “right”). Using the routing table74, each segment controller26identifies the destination of the mover16from the mover record62and sets the switch state on the associated track segment12to move the switch to the correct position to route the mover16to its indicated destination. Because the processing required by the central controller42for this routing is in most cases limited to the configuration step60, the time that otherwise would be devoted to routing by the central controller42can be used for other tasks, for example, sophisticated routing algorithms that predict or simulate movement of other movers16to prevent congestion or minimize distance or acceleration and deceleration required by the mover16and the like.

Also at the time of configuration60, each segment controller26may receive a destination location table75providing a list of destinations, typically only for destinations on the track segment12of the segment controller26and proximate to that segment controller26, and listing either distance to that destination or absolute location of that destination from which distance can be derived. The destination location table75allows for motion control by the segment controllers26by providing the distance to the destination necessary for deceleration and absolute destination location to determine where the mover16stops. This information changes, typically, only if destination changes but can be used when there is rerouting in a detour, for example, without involvement of the central controller42.

Thus, although the present system eliminates the need for the central controller42to be involved in routing, the central controller42may nevertheless receive information about the mover positions, for example, at a modest update rate below that which would be required for real-time control of the movers16. This low-bandwidth information allows the central controller42to assess traffic conditions, and in response to that assessment, the central controller42updates the routing table74appropriately to manage traffic at a high level. The management of traffic is particularly helpful when there are parallel paths between destinations and for that reason traffic can be routed to reduce congestion. At other times, the segment controllers26use their operating program36to handle routing decisions as well as the intercommunication between the segment controllers26and adjacent segment controllers26for handing off control of the movers16as they travel between segments12and to manage motion control including, for example, acceleration, deceleration, and braking with a tight feedback loop with sensors25and coils18.

Referring now toFIG.4, in an alternative embodiment, the routing instructions67may be implemented as a switch-specific routing table74in the mover record62as opposed to the segment controller. This routing table74provides a first logical column identifying a switch on the ICT system10, and a second logical column indicates a switch state (shown generically as left or right) needed to route the particular mover16associated with this mover record62to its intended destination. In this case, the segment controller26requires only a simple rules-based program that identifies each mover16from the mover ID71in the mover record62per process block76, identifies itself (as a switch) in the routing table74to determine the correct switch state for the mover16from the switch routing table74per process block78, and then controls the switch to move the mover16in the indicated direction per process block80. An advantage to this approach is that the routing requires only a writing to the mover record62of the intended mover16by the central controller42at the time of issuance of instruction per process block66without the need to update the programming of each segment controller26. The ability of the central controller42to quickly change the routing of movers16to handle traffic control issues is largely unaffected to the extent that destinations can be changed in the mover record62at any time.

Referring now toFIG.5, in an alternative embodiment, the routing table74is implemented as a mover-specific routing table74held in the segment controllers26in which a first logical column indicates a mover16on the ICT system10per the mover ID71and the second logical column indicates a switch state (shown generically as left or right). In this case, each segment controller26reads the mover identification71from an arriving mover record62of the physically arriving mover16and controls its associated switch according to the linked switch state in the routing table74. This approach greatly simplifies the mover record62, requiring as little as a mover ID71, raising the possibility that this information can be contained in an RFID tag or the like without the need to transmit an extensive mover record62. Again the ability of the central controller42to quickly handle traffic control issues is largely unaffected to the extent that routing table74can be changed dynamically during the routing process. Segment controllers26associate with track segments12having a destination will indicate that destination73in the routing table74in order to provide a destination identification per decision block70ofFIG.2. In this respect for all of the embodiments described, the segment controllers26without associated switches will provide information or use information necessary to identify destinations.

The use of destination information in routing the movers16, as described above, allows for the implementation of a special “jog move” command in which the destination field contains a nonexistent destination or is left blank. In the example ofFIG.3, routing table74may be given a default routing for blank or nonexistent destinations, and in the example ofFIG.5, a switch position will be provided for that mover subject to a jog move command for all switches. When this instruction is implemented, the mover16will indefinitely circulate on the track until such time as a destination is entered, for example, allowing the mover16to avoid obstruction of other movers16, when it is otherwise unutilized.

It will be recognized that generally the processors32and44and the memory device34and46may be implemented with a variety of different technologies including on a field programmable array (FPGA) or an application specific integrated circuit (ASIC). It is contemplated that the processors and memory may each be a single electronic device or formed from multiple devices. The memory device34may include volatile memory, non-volatile memory, or a combination thereof.