Manufacturing in today's economy relies heavily on automated, controlled elements such as robotic arms, conveyors, and the like. Frequently, such elements are utilized as part of an assembly line, where the manufactured product is moved along a path from start to finish, and the many manufacturing elements perform actions on the product. Some actions are minor such as a small rotation or movement; other actions are greater in magnitude such as cutting, milling, pressurizing, and packaging the product. Existing equipment that facilitates this method of production implements pulleys, screws, belts, and other mechanical equipment to push, pull, rotate, and otherwise manipulate a product as it moves along the assembly line.
It is commonly advantageous for elements in an assembly or packaging line to be capable of movement in more than one dimension. For example, to pick up a product and move it to another location, a belt is commonly used to move a hook or grapple along in one direction and position the hook above the product. Then, a series of pulleys is typically used to lower the hook to the product and grasp the product; the pulleys once again are used to raise the product, and finally the belt engages a second time to move the product. This is a simple illustration of how increasing degrees of motion increases the capabilities of an assembly or packaging line, while at the same time increases the complexity of such elements.
In addition to the increased complexity of multi-directional movement, there is an increased need for moving parts. The size of such systems can grow inordinately large, effectively limiting the effectiveness of such complex systems. Nevertheless, the increased demands on manufacturers of today has required many companies to implement multi-axis assembly equipment.
The following presents a simplified summary of the invention in order to provide a basic understanding of some aspects of the innovation. This summary is not an extensive overview of the innovation. It is intended to neither identify key or critical elements of the innovation nor delineate the scope of the innovation. Its sole purpose is to present some concepts of the innovation in a simplified form as a prelude to the more detailed description that is presented later.
A linear motor driven, linear positioning system is provided including a plurality of trucks that can move along a single rail. The rail and the trucks can comprise a linear motor. The trucks connect to a tool by a plurality of arms (e.g., a four-bar linkage, a scissor jack). Motion of the two trucks together in a global sense moves the tool along the path; relative motion of the trucks causes the tool to move in another direction, such as perpendicular to the path of the trucks. The angular position of the arms can be manipulated to cause tilting or other desirable (or to prevent undesirable) motion of the tool.
A control component can interact with sensors such as positional sensors and accelerometers and the like to control the global and relative motion of the trucks to prevent overrun. In addition, mechanical limiters can be employed to prevent the trucks from exceeding minimum or maximum safe distance limits. A spring, damper, or other energy absorbing device can be placed strategically to minimize damage in the event of a collision.
In an aspect, air bearings can be used to support the trucks upon the rail, providing a clean, substantially noise-free working environment in which the tool can operate. In an environment such as a food-packaging environment where oil and other contaminants are common but harmful, the subject disclosure provides an advantageous system. Maintenance of the system is minimal due to the ease with which the trucks can be replaced. Down-time is also minimized because of the ease of replacing the trucks.
To the accomplishment of the foregoing and related ends, the invention then, comprises the features hereinafter fully described and particularly pointed out in the claims. The following description and the annexed drawings set forth in detail certain illustrative aspects of the innovation. These aspects are indicative, however, of but a few of the various ways in which the principles of the innovation may be employed; the subject innovation is intended to include all such aspects and their equivalents. Other objects, advantages, and novel features of the innovation will become apparent from the following detailed description of the innovation when considered in conjunction with the drawings.
The various aspects of the subject innovation are now described with reference to the annexed drawings, wherein like numerals refer to like or corresponding elements throughout. It should be understood, however, that the drawings and detailed description relating thereto are not intended to limit the claimed subject matter to the particular form disclosed. Rather, the intention is to cover all modifications, equivalents and alternatives falling within the spirit and scope of the claimed subject matter.
As used in this application, the terms “component” and the like are intended to refer to a computer-related entity, either hardware, a combination of hardware and software, software, or software in execution. For example, a component may be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a server and the server can be a component. One or more components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers. Also, these components can execute from various computer readable media having various data structures stored thereon. The components may communicate via local and/or remote processes such as in accordance with a signal having one or more data packets (e.g., data from one component interacting with another component in a local system, distributed system, and/or across a network such as the Internet with other systems via the signal).
The word “exemplary” is used herein to mean serving as an example, instance or illustration. Any aspect or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs. Furthermore, examples are provided solely for purposes of clarity and understanding and are not meant to limit the subject innovation or relevant portion thereof in any manner. It is to be appreciated that a myriad of additional or alternate examples could have been presented, but have been omitted for purposes of brevity. Furthermore, all or portions of the subject innovation may be implemented as a method, apparatus or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computer to implement the disclosed innovation.
Each truck 104 and 106 contains an upper pivot 112, an arm 114, and a lower pivot 116. Tooling 118 connects to lower pivot 116, which can act upon payload 120. Tooling 118 and payload are herein described in generic terms; substantially any type of tooling 118 can be adapted for use with the subject innovation, and can be chosen to accommodate a payload 120 of varying size, shape, and weight, depending on the application (e.g., a hook, a mechanical hand, a loop, a suction cup, a bolt). Payload 120 is also represented in the general case; any object that tooling 116 can be directed to act upon can comprise the payload 120.
Conventional linear motors employ a single stage on a path, limiting motion to one-dimensional, back and forth movement. The subject disclosure employs a plurality of stages on a single rail 102, granting the system 100 the ability to move in the Z direction. In an aspect, upper pivots 112 allow free rotation of arms 114 with respect to trucks 104 and 106. Rail 102, trucks 104 and 106, and tooling 118, therefore comprise a four-bar linkage, whose mechanical operation and utility is well documented in the art. Rail 102 and trucks 104 and 106 provide an extra degree of freedom because of relative movement in the X-direction of trucks 104 and 106. Thus, motion in two dimensions is achieved with only controlled motion of two objects (trucks 104 and 106) in one direction. The result is a positioning system of reduced complexity and cost that nevertheless provides the benefits of a more complex device.
In an aspect, the subject innovation can employ various types of bearings between trucks 104 and 106 and rail 102, or between any other component of the system 100. Fluid bearings, such as air bearings, can be employed. Unlike contact-roller bearings, air bearings utilize a thin film of pressurized air to provide a near zero-friction load-bearing interface between surfaces. The fluid film of the bearing can be air that flows through the bearing itself to the bearing surface. The design of the air bearing can be such that, although the air constantly escapes from the bearing gap, the continual flow of pressurized air through the bearing is enough to support the working loads. Contact between the two surfaces is minimal or non-existent, avoiding the traditional bearing-related problems of friction, wear, particulates, and lubricant handling, and offer distinct advantages in precision positioning and high-speed applications. In particular, a clean packaging environment is easily contaminated by emissions and spillages that are the common by-product of oil or other fluid or contact bearings—air bearings avoid this problem altogether. Moreover, air bearings produce little or no appreciable noise during operation, which may be desirable or required for a given application. An additional benefit is the ease with which a faulty truck can be replaced with a new truck. In a matter of minutes the system 100 can be repaired and operational.
Data pertaining to the control and motion of trucks 202 and 204 can be stored in a data store 218, containing volatile memory or nonvolatile memory, or a combination thereof. In one example, nonvolatile memory can include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM), or flash memory. The memory can include removable memory such as Compact Flash cards, Secure Digital cards, and the like. Volatile memory can include random access memory (RAM), which acts as external cache memory. By way of illustration and not limitation, RAM is available in many forms such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), and direct Rambus RAM (DRRAM). The data store of the subject systems and methods is intended to comprise, without being limited to, these and any other suitable types of memory.
In an aspect of the subject innovation, an artificial intelligence component 220 can be employed to assist with controlling the global and relative position of the trucks 202 and 204, and therefore also the position of the tooling 210 and the payload 212. As used herein, the term “inference” refers generally to the process of reasoning about or inferring states of the system, environment, and/or user from a set of observations as captured via events and/or data. Inference can be employed to identify a specific context or action, or can generate a probability distribution over states, for example. The inference can be probabilistic—that is, the computation of a probability distribution over states of interest based on a consideration of data and events. Inference can also refer to techniques employed for composing higher-level events from a set of events and/or data. Such inference results in the construction of new events or actions from a set of observed events and/or stored event data, whether or not the events are correlated in close temporal proximity, and whether the events and data come from one or several event and data sources.
For example, in connection with controlling the position of the trucks 202 and 204, the subject innovation can employ various artificial intelligence schemes. A process for learning explicitly or implicitly the relative and/or global position of the trucks 202 and 204 can be facilitated via an automatic classification system and process. Classification can employ a probabilistic and/or statistical-based analysis (e.g., factoring into the analysis utilities and costs) to prognose or infer an action that a user desires to be automatically performed. For example, a support vector machine (SVM) classifier can be employed. Other classification approaches include Bayesian networks, decision trees, and probabilistic classification models providing different patterns of independence can be employed. Classification as used herein also is inclusive of statistical regression that is utilized to develop models of priority.
As will be readily appreciated from the subject specification, the subject innovation can employ classifiers that are explicitly trained (e.g., via a generic training data) as well as implicitly trained (e.g., via observing user behavior, receiving extrinsic information) so that the classifier is used to automatically determine according to a predetermined criteria which answer to return to a question. For example, with respect to SVM's that are well understood, SVM's are configured via a learning or training phase within a classifier constructor and feature selection module. A classifier is a function that maps an input attribute vector, x=(x1, x2, x3, x4, xn), to a confidence that the input belongs to a class—that is, f(x)=confidence(class). As shown in
While
A slightly more complex situation, involving a powered mechanism to drive the angular position of the arms, is also feasible and poses minimal cost increases while providing high flexibility and movement. Tilting can be advantageous at various stages of a packaging line: during product pick up, to maneuver through a tight area, or while dropping the product. As will be understood, tilting provides another degree of freedom, which can be judiciously exploited by an engineer of skill in the art. It is also to be appreciated that the tilting motion shown in
In addition to, or in place of a mechanical limiter 608, a control system 610 can be utilized to prevent trucks 602 and 604 from exceeding a safe distance. The global and relative position, velocity, acceleration of the trucks 602 and 604, as well as other characteristics such as mass, friction resistance, and the like can be communicated to the control system 610 through the communication path 612. Sensors such as accelerometers and piezoelectric sensors can be placed in the rail 614 and/or on the trucks 602 and 604 to help to gather the information needed to prevent overrun such as position on the rail 614, angular position of the arms 615, and the like. This data can be stored in a data store 616, and in conjunction with an artificial intelligence component 618, trucks 602 and 604 can be prevented from exceeding a safe relative distance. If the control component 610 detects (or infers) that one truck 602 or 604 is behaving erratically and will likely move beyond a safe distance from the other truck, relative motion can be prevented by braking one or both trucks, or by moving one or more trucks in a direction that will prevent overrun. It is to be appreciated that the mechanical limiter 608 and software-based limiters such as control system 610 can be used independently or in conjunction to prevent damage to the system 600, as required or prudent in a given application.
Besides relative distance between trucks, another potential danger is exceeding the length of the rail 614. A bumper 620, connected to a spring 622 or other energy-absorbing device, can be placed between the trucks 602 and 604 and the end 624 of the rail, and/or between the two trucks. The size and energy absorbing characteristics of the spring 622 can depend on the mass of the trucks 602 and 604, the tooling 606, and the payload 626, if any. It is to be appreciated that dampers and springs and their equivalents can be employed to prevent damage to the system 600 caused by a collision with the rail end 624, or between the two trucks. Moreover, control system 610 can also be utilized to prevent such a collision, as with relative distance control as described above. Further, other objects may appear along the path of the trucks 602 and 604 and similar mechanical and/or control-based techniques can be employed to avoid (or cause, as the case may be) contact with such objects.
The aforementioned systems, architectures and the like have been described with respect to interaction between several components. It should be appreciated that such systems and components can include those components or sub-components specified therein, some of the specified components or sub-components, and/or additional components. Sub-components could also be implemented as components communicatively coupled to other components rather than included within parent components. Further yet, one or more components and/or sub-components may be combined into a single component to provide aggregate functionality. Communication between systems, components and/or sub-components can be accomplished in accordance with either a push and/or pull model. The components may also interact with one or more other components not specifically described herein for the sake of brevity, but known by those of skill in the art.
Furthermore, as will be appreciated, various portions of the disclosed systems and methods may include or consist of machine learning, or knowledge or rule based components, sub-components, processes, means, methodologies, or mechanisms (e.g., support vector machines, neural networks, expert systems, Bayesian belief networks, fuzzy logic, data fusion engines, classifiers . . . ). Such components, inter alia, can automate certain mechanisms or processes performed thereby to make portions of the systems and methods more adaptive as well as efficient and intelligent.
In view of the illustrative systems described supra, methodologies that can be implemented in accordance with the disclosed subject matter will be better appreciated with reference to the flow charts of
Once the target information is obtained, at reference numeral 730 the stages can be directed to move in the X-direction toward the target. If the height of the target indicates that the current position of the stages (and therefore the current height of the tool) does not need to change, then the stages can be directed to move the same distance toward the target. If, on the other hand, there is some height adjustment required, the stages can be directed to move in the same direction, but to move different distances so as to arrive at the target at the appropriate height. A center-to-center distance can be calculated, and an accommodating height-adjustment X-direction separation distance can be added to the front stage's travel, and subtracted from the rear stage's travel, as described by the following equations:
T
front=(CD−∂1)+(∂2/2)
T
rear=(CD+∂1)−(∂2/2)
where Tfront is the travel distance of the front stage, and Trear is the travel of the rear stage, CD is the center distance between the initial center point of the stage and the target center, and ∂1 and ∂2 are the X-direction distances between the stages in the initial and target positions, respectively, according to the appropriate Z-direction position of the tool.
At reference numeral 740, further height adjustment may be necessary to acquire the target. For example, if the target is held within a box or other packaging that the tool must pass over to arrive at the target, but must descend into to act upon the target, the highest point of the packaging can be the height initially adjusted to; however, once the tooling is over the target, further lowering of the tool may be required before the tool comes into contact with the target. If this is not the case and the target is within the tool's range, at reference numeral 750 the target is acquired and the process repeats. If, on the other hand, there is additional vertical (Z-direction) movement that must be effectuated, at reference numeral 760 the X-direction position of the tool with respect to the target can be assessed. If centered, at reference numeral 770, the stages can be moved apart equally an appropriate distance until target is acquired at reference numeral 750, and the process can repeat. If the tool and target are not centered in the X-direction, the offset can be determined at reference numeral 780, and appropriate stage movement can be directed at reference numeral 790 after which the target can be acquired, and the process can repeat. The same or similar process can be performed during pick-up or delivery of an object. If the tool picks up an object, the height of the object can be included in the height calculations to ensure that the object does not strike (or, that the object does contact) other objects during motion.
However, if there is suspect movement, whether from excessive relative movement of the stages (toward or away from one another) or from approaching a rail limit, a more detailed assessment of the position, speed, and acceleration can be taken at reference numeral 830. A control system can determine whether this information indicates that a limit will be exceeded at reference numeral 840, and if no threat to the system is detected the assessment can cease until a new assessment is prudent. If the limit is or will be exceeded, at reference numeral 850 an assessment can be made of which stage, the front, the rear, or both stages, is appropriate to act upon. Depending on the circumstances, stopping one or both stages, or moving one or both stages, or any combination of stopping and moving can be implemented. For example, if a first stage is careening toward the second stage such that even with direct braking of the first stage contact between the two stages will occur due to the inertia of the first stage (and the tooling, payload, and any other component), in addition to braking the first stage, the second stage can nimbly move away from the first stage to avoid contact. It is to be appreciated by one of ordinary skill in the art that the particulars of an application of the subject methodology 800 will call for variations on the combination of braking and movement, and the like. At reference numeral 860, instructions to the front stage can be delivered; at reference numeral 870 instructions can be delivered to the rear stage, and the assessment can cease until initiated by another event.
The methods and systems of the subject innovation can be employed in association with many forms of control systems. In order to provide context for the various applications in which the aspects of the innovation may be carried out, an exemplary control system is now illustrated and described with respect to
The modules 914 within the rack 912A may include, for example, a power supply module 918, a processor module 926, two communication modules 924A and 924B and two I/O modules 920. A power supply module 918 receives an external source of power (not shown) and provides regulated voltages to the other modules 914 by means of conductors on the backplane 916A. The I/O modules 920 provide an interface between inputs from, and outputs to external equipment (not shown) via cabling 922 attached to the I/O modules 920 at terminals on their front panels. The I/O modules 920 convert input signals on the cables 922 into digital words for transmission on the backplane 916A. The I/O modules 920 also convert other digital words from the backplane 916A to the necessary signal levels for control of equipment.
The communication modules 924A and 924B provide a similar interface between the backplane 916A and one of two external high speed communication networks 927A and 927B. The high speed communication networks 927A and 927B may connect with other modules 914 or with remote racks of I/O modules 920, controller configuration tools or systems, or the like. In the example illustrated in
Referring also to
The internal bus 1034 joins the backplane interface 1032 with a memory 1036, a microprocessor 1028, front panel circuitry 1038, I/O interface circuitry 1039 (if the module is an I/O module 920) and communication network interface circuitry 1041 (if the module is a communication module 924). The microprocessor 1028 may be a general purpose microprocessor providing for the sequential execution of instructions included within the memory 1036 and the reading and writing of data to and from the memory 1036 and the other devices associated with the internal bus 1034. The microprocessor 1028 includes an internal clock circuit (not shown) providing the timing of the microprocessor 1028 but may also communicate with an external clock 1043 of improved precision. This clock 1043 may be a crystal controlled oscillator or other time standard including a radio link to an external time standard. The precision of the clock 1043 may be recorded in the memory 1036 as a quality factor. The panel circuitry 1038 includes status indication lights such as are well known in the art and manually operable switches such as for locking the module 1014 in the off state.
The memory 1036 may comprise control programs or routines executed by the microprocessor 1028 to provide control functions, as well as variables and data necessary for the execution of those programs or routines. For I/O modules 920, the memory 1036 may also include an I/O table holding the current state of inputs and outputs received from and transmitted to the industrial controller 910 via the I/O modules 920. The module 1014 may be adapted to perform the various methodologies of the innovation, via hardware configuration techniques and/or by software programming techniques.
Although the innovation has been shown and described with respect to certain illustrated aspects, it will be appreciated that equivalent alterations and modifications will occur to others skilled in the art upon the reading and understanding of this specification and the annexed drawings. In particular regard to the various functions performed by the above described components (assemblies, devices, circuits, systems, etc.), the terms (including a reference to a “means”) used to describe such components are intended to correspond, unless otherwise indicated, to any component which performs the specified function of the described component (e.g., that is functionally equivalent), even though not structurally equivalent to the disclosed structure, which performs the function in the herein illustrated exemplary aspects of the innovation. In this regard, it will also be recognized that the innovation includes a system as well as a computer-readable medium having computer-executable instructions for performing the acts and/or events of the various methods of the innovation.
What has been described above includes various exemplary aspects. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing these aspects, but one of ordinary skill in the art may recognize that many further combinations and permutations are possible. Accordingly, the aspects described herein are intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims. Furthermore, to the extent that the term “includes” is used in either the detailed description or the claims, such term is intended to be inclusive in a manner similar to the term “comprising” as “comprising” is interpreted when employed as a transitional word in a claim.