US20150338213A1 - Adaptive Manufacturing System - Google Patents
Adaptive Manufacturing System Download PDFInfo
- Publication number
- US20150338213A1 US20150338213A1 US14/717,742 US201514717742A US2015338213A1 US 20150338213 A1 US20150338213 A1 US 20150338213A1 US 201514717742 A US201514717742 A US 201514717742A US 2015338213 A1 US2015338213 A1 US 2015338213A1
- Authority
- US
- United States
- Prior art keywords
- flexible part
- positioner
- frames
- scan
- unconstrained
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000004519 manufacturing process Methods 0.000 title description 6
- 230000003044 adaptive effect Effects 0.000 title description 3
- 238000013461 design Methods 0.000 claims abstract description 46
- 238000000034 method Methods 0.000 claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 30
- 230000008569 process Effects 0.000 claims abstract description 13
- 239000012636 effector Substances 0.000 claims description 22
- 238000003860 storage Methods 0.000 claims description 8
- 239000011159 matrix material Substances 0.000 claims description 7
- 238000005553 drilling Methods 0.000 claims description 5
- 238000003801 milling Methods 0.000 claims description 5
- 238000009966 trimming Methods 0.000 claims description 5
- 239000000523 sample Substances 0.000 claims description 4
- 239000013598 vector Substances 0.000 claims description 3
- 238000007689 inspection Methods 0.000 description 13
- 230000015654 memory Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000011960 computer-aided design Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 239000003562 lightweight material Substances 0.000 description 1
- 238000003754 machining Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000000465 moulding Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B21/00—Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant
- G01B21/02—Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring length, width, or thickness
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23Q—DETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
- B23Q3/00—Devices holding, supporting, or positioning work or tools, of a kind normally removable from the machine
- B23Q3/02—Devices holding, supporting, or positioning work or tools, of a kind normally removable from the machine for mounting on a work-table, tool-slide, or analogous part
- B23Q3/06—Work-clamping means
- B23Q3/062—Work-clamping means adapted for holding workpieces having a special form or being made from a special material
- B23Q3/065—Work-clamping means adapted for holding workpieces having a special form or being made from a special material for holding workpieces being specially deformable, e.g. made from thin-walled or elastic material
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
- B25J19/021—Optical sensing devices
- B25J19/023—Optical sensing devices including video camera means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B29—WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
- B29C—SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
- B29C67/00—Shaping techniques not covered by groups B29C39/00 - B29C65/00, B29C70/00 or B29C73/00
- B29C67/0048—Local deformation of formed objects
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/404—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
-
- G06F17/50—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B29—WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
- B29L—INDEXING SCHEME ASSOCIATED WITH SUBCLASS B29C, RELATING TO PARTICULAR ARTICLES
- B29L2031/00—Other particular articles
- B29L2031/772—Articles characterised by their shape and not otherwise provided for
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4097—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by using design data to control NC machines, e.g. CAD/CAM
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/49—Nc machine tool, till multiple
- G05B2219/49184—Compensation for bending of workpiece, flexible workpiece
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10T—TECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
- Y10T408/00—Cutting by use of rotating axially moving tool
- Y10T408/03—Processes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10T—TECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
- Y10T408/00—Cutting by use of rotating axially moving tool
- Y10T408/55—Cutting by use of rotating axially moving tool with work-engaging structure other than Tool or tool-support
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10T—TECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
- Y10T409/00—Gear cutting, milling, or planing
- Y10T409/30—Milling
- Y10T409/303752—Process
- Y10T409/303808—Process including infeeding
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10T—TECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
- Y10T409/00—Gear cutting, milling, or planing
- Y10T409/30—Milling
- Y10T409/304144—Means to trim edge
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10T—TECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
- Y10T409/00—Gear cutting, milling, or planing
- Y10T409/30—Milling
- Y10T409/306664—Milling including means to infeed rotary cutter toward work
- Y10T409/307448—Milling including means to infeed rotary cutter toward work with work holder
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10T—TECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
- Y10T83/00—Cutting
- Y10T83/02—Other than completely through work thickness
- Y10T83/0304—Grooving
Definitions
- a flexible part is a non-rigid body that has a portion, portions or the entire body of the part that deforms due to a relatively light force, such as but not limited to the force of gravity, applied thereto.
- the flexible part is made from a flexible material and/or the material is thin, which prevents the flexible part from retaining a solid rigid body.
- flexible parts made from a molding process can change shape, at least partially, when the parts are removed from the mold. In other words, the flexible part often does not retain the exact shape of the mold, but rather, takes a different shape when unconstrained by the mold.
- FIG. 1 illustrates an exemplary 3-dimensional portion of a flexible part 10 that includes a U-shaped center section 12 and opposed flange portions 14 .
- the width of the U-shaped center section 12 can vary along its length.
- variance can particularly exist where a top portion of the center section 12 joins to the side portions, as represented by double arrow 16 .
- the angle at which the flange 14 extends from the center section represented by double arrow 24 can vary or can change along its length.
- the part 10 is flexible, such flexible parts are often mounted or secured to another body (not shown) whereupon when mounted, the flexible part 10 and the body together may yield a substantially rigid, or at least less flexible overall structure.
- the flexible part 10 must be processed so as to have a specific shape of features, which without limitation, can include recesses 17 , by way of example, apertures, cut outs, desired thickness at selected portions of the flexible part, etc. all pursuant to exact specifications.
- Such processing can include but is not limited to drilling, milling, trimming, scribing, chamfering and using any manufacturing technique such as but not limited to machining, waterjet cutting, laser or plasma cutting, etc.
- processing of the flexible part 10 can also include inspecting the flexible part 10 to see if the flexible part 10 meets the desired specifications. Inspection can include use of any form of inspection or measuring device such as but not limited to profilometers, offset lasers, probes and cameras to list just a few.
- known techniques for processing or manufacturing flexible parts include mounting each flexible part in a jig having holder(s) that hold the flexible part in the desired shape and position so as, for example, to replicate mounting of the flexible part to the other body.
- the flexible part is “constrained” by the jig or holder.
- constraining the flexible part for and during processing typically requires a unique jig constructed for each flexible part to be processed.
- mounting of the flexible part on the jig can be time consuming and be prone to positional errors.
- a first aspect of the invention includes a system for processing a flexible part comprising a holder configured to hold the flexible part securely in an unconstrained position and an end effector configured to process the flexible part when held by the holder in the unconstrained position.
- At least one positioner is configured to support the holder or the end effector for movement.
- a controller is configured to control the positioner to provide relative movement between the end effector and the holder to process the flexible part, wherein movements of the positioner have been compensated based on a comparison of a shape and/or position of the flexible part in the unconstrained position with design specifications of the part not in the unconstrained position.
- a second aspect of the invention is a method for processing a flexible part comprising holding the flexible part securely in an unconstrained position; and controlling a positioner to process the flexible part based on a comparison of a shape and/or position of the flexible part in the unconstrained position with design specifications of the part not in the unconstrained position.
- a storage device can be included having the design specifications stored on a computer readable medium of the storage device and accessed.
- the shape and/or position of the flexible part in the unconstrained position can be ascertained and stored data on a computer readable medium.
- the shape and/or position is obtained using a profilometer, such as a laser, camera system and/or measuring probe.
- the shape and/or position data can be in the form of a plurality of scan frames, each portion corresponding to a different portion of the flexible part.
- the scan frames can comprise a geometric parameter with respect to a coordinate system such as value(s) alone and/or with respect to shape(s), for example, distances, such as distances between reference points; angles, such as angles represented by intersecting vectors or line segments; and/or a series of points or mathematical expression that define a geometric parameter(s) such as line segment, intersecting line segments, arcs, circles or other curved lines.
- the scan frames are associated with different portions of the flexible part and each scan frame corresponds to a portion at a different position with respect to the flexible part such as along a reference direction.
- a controller is configured to control the positioner and can include controlling the positioner based on a comparison of one or more scan frames with one or more reference frames, the reference frames preferably based on the design specification.
- controlling the positioner includes determining a control path to move the positioner.
- the system and method can be used for processing of the flexible comprises at least one of drilling, milling, trimming, scribing, chamfering or inspecting. It should be noted the positioner can be coupled to the end effector to control movement thereof or coupled to the holder to control movement thereof.
- FIG. 1 is a perspective view of an exemplary part for processing.
- FIG. 2 is a schematic diagram of a system for processing the part of FIG. 1 .
- FIG. 3 is a visual representation of a virtual part defined by design specifications.
- FIG. 4 is a flow diagram illustrating a method for processing the part.
- FIG. 5 is a schematic diagram pictorially illustrating processing of the part.
- FIG. 6 is a schematic diagram of a reference frame and scan frames.
- FIG. 7 is a flow diagram illustrating inspecting a part.
- FIG. 8 is a schematic illustration of a computing environment.
- the system includes a jig or holder 102 that holds the flexible part 10 in an “unconstrained” manner.
- “unconstrained” means that the flexible part 10 is not held in a specific and accurate manner to maintain a specific shape throughout the body of the flexible part 10 , but rather held in a less exacting manner, where the shape can differ from design specifications, and typically where the extent of difference from design specification can vary throughout the flexible part 10 , typically without repeatability from part to part although the parts are to be the same.
- Design specifications as used herein refer to the shape, dimensions, etc. of the flexible part 10 as used in the manner for which it intended.
- the flexible part 10 it is desired to process the flexible part 10 such that when used in the manner for which it intended, the flexible part 10 will change its shape, for example, so as to be mounted to another part, or in other words it changes its shape to match the design specifications such that it will properly mount to the other part.
- the jig or holder 102 is shown schematically since the design will vary considerably depending on the part 10 to be formed or inspected. Many types of holders are known and can be used with the system and method herein described. Specific features of the holder 102 are not needed for purposes of understanding of the present invention other than that it holds the part 10 securely in any known manner, for example, via the use of clamps, fasteners, vacuum cups, magnets, fixed and/or adjustable support elements to name just a few.
- FIG. 3 represents a view of the part 10 ′ meeting design specifications.
- the design specifications are often stored electronically in or on computer readable media.
- the design specifications of the part 10 ′ comprise desired dimensions of the actual part 10 and are represented herein by the illustration of FIG. 3 , which could correspond to a computer aided design (CAD) file or the like, viewable on a computer display or through the use of other rendering devices such as from a 2 or 3 dimensional printer, plotter, etc.
- CAD computer aided design
- the design specifications of the flexible part 10 ′ requires recesses 17 ′ cut in each of the opposed flanges 14 ′ to be a selected distance 19 apart from each other when fasteners are used to mount the actual flexible part 10 to another part.
- the design specifications require that the center section 12 ′ joins to the flange portions 14 ′ at a certain angle, as represented by double arrow 16 , and that a certain angle is provided at which the flanges 14 ′ extend from the center section 12 ′ represented by double arrow 24 .
- the position of each of the recesses 17 must be accurate.
- Using this known processing technique only after achieving the proper constrained position of the flexible part 10 are the recesses 17 , for example, then made in each of the flanges 14 .
- aspects of the present invention enable a flexible part 10 to be processed accurately even though the flexible part 10 is being held in an unconstrained manner by holder 102 (i.e. held at least in a position that does not match the design specifications as represented by part 10 ′).
- unconstrained does not mean that the flexible part 10 is not held securely.
- an unconstrained flexible part 10 means the flexible part 10 is held in a manner to the extent necessary for the type of processing being performed on the flexible part 10 to be done.
- the flexible part when the flexible part is held in an unconstrained manner, it does not mean that it is held within certain tolerances that allows work or other processes to be performed on the flexible part that without further regard to its shape on the jig or holder will yield an acceptable flexible part.
- aspects of the system and method herein described allows a flexible part 10 to be held securely in an unconstrained manner, but any work upon or inspection of the flexible part 10 , is performed only after taking into account the shape of the flexible part 10 on the jig or holder as it is being held in the unconstrained manner; and in particular, the variances present in the shape as it is being held due to the flexibility of at least some portions of the flexible part 10 .
- the flexible part 10 processed where processing takes into account the unconstrained shape of the flexible part 10 .
- the formation of the recesses 17 in the flanges 14 , or inspection thereof, may be at a distance 21 from each other that does not match the distance 19 of the recesses 17 when the part is mounted to the other part.
- the distance 21 between the recesses 17 may be greater, narrower and/or out of alignment when formed when the flexible part 10 is held by the holder in an unconstrained manner, but nevertheless when the flexible part 10 is mounted in the constrained position to the other part, the recesses 17 are at the distance 19 from each other as required by the design specifications such that the required angles 16 and 24 on each side of the flexible part 10 are obtained.
- the illustration of FIG. 2 depicts the part 10 as being severely out of alignment with respect to the design specifications for purposes of understanding.
- the system also generally includes a controller 150 that controls a positioner 152 (typically movable in multiple degrees of freedom), where the positioner 152 commonly supports an end effector 154 for controlled movement as needed to process the flexible part 10 as desired.
- the end effector 154 can comprise device(s) to perform drilling, milling, trimming, chamfering, etc. on or inspection of the flexible part 10 as described in the background section above.
- the controller 150 provides control signals to the positioner 152 such that the end effector 154 attached thereto moves about the flexible part 10 typically according to a defined path 156 (herein also referred to as a “tool path”), a portion of which is illustrated.
- the controller 150 , positioner 152 and end effector 154 attached to the positioner 152 are well known devices.
- the controller 150 can comprise analog and/or digital circuitry and is typically computer-based wherein a processor executes instructions stored therein so as to generate control signals for the positioner 152 and end effector 154 .
- the positioner 152 can take numerous well known forms such as but not limited to a multi-degree of freedom robotic arm or a gantry system having the end effector 154 mounted to a robotic arm or other support that is fixed or moves relative to a bridge that in turn is moveable on one or more rails.
- a plurality of holders 102 can be used to hold a larger part 10 where each of the holders 102 hold a portion of the part 10 .
- a particular advantageous embodiment of a configurable system having a plurality of multi-degree of freedom arms for holding a variety of different parts is described in U.S. patent application Ser. No. 14/213,398, filed on Mar. 14, 2013 and entitled “MULTI-AXIS CONFIGURABLE FIXTURE”, which is incorporated herein by reference in its entirety.
- positioner 152 to support the end effector 154 for controlled movement thereof relative to the flexible part 10 being held by the holder 102 held in a stationary position
- a positioner 153 could be used to move the holder 102 and thus the flexible part 10 relative to the end effector 154 held in a stationary position.
- separate positioners 152 , 153 can be used to move both the end effector 154 and the holder 102 , respectively, if desired.
- the system and method herein described process the flexible part 10 with the desired end effector 154 mounted to the positioner 152 , where the positioner 152 is controlled so as to account for the unconstrained manner in which the flexible part 10 is held by the holder 102 in order to process the part 10 and obtain, or compare the actual part 10 to the design specifications (represented by part 10 ′).
- the system and method alter the actual tool path 156 to take into account the unconstrained manner in which the part 10 is held.
- tool path 156 ′ is a calculated or otherwise generated or a known tool path that would be taken by the end effector 154 for a part 10 ′ to meet the design specifications when the part is ideally held. Since the part 10 ′ is a virtual part defined by the desired design specifications, the tool path 156 ′ is not the actual tool path but rather a reference tool path that is used to obtain the actual tool path 156 .
- FIG. 4 illustrates inputs or types of information needed and the processing to obtain the tool path 156 for processing the part 10 when held in an unconstrained manner.
- a first portion of information comprises the reference (nominal) tool path 156 ′ of the part 10 ′.
- the reference tool path 156 ′ is derived based on the desired (nominal) design specifications, indicated at 202 , which can be, for example embodied in a CAD file or the like.
- the reference tool path 156 ′ can be derived from computer aided manufacturing programs or systems as indicated at 204 .
- the tool path 156 ′ is then processed to generate motion control commands 206 in a form suitable to be used by or to control the positioner 152 .
- the reference tool path 156 ′ is illustrated in FIG. 5 where the part 10 ′ again is illustrative of the design specifications.
- a second type of information needed for obtaining the tool path 156 are reference frames based on the nominal design specifications of the part 10 ′.
- a “frame” is a portion of the part 10 ′ or part 10 that is used as the basis of comparison between the part 10 ′ as defined by the design specifications with the same portion found in the part 10 .
- the frame can be any geometric parameter that is used to define a portion of the part 10 ′ and part 10 .
- Such parameters include but are not limited to value(s) by themselves and/or with respect to shape(s), for example, distances, such as distances between reference points; angles, such as angles represented by intersecting vectors; and/or a series of points or mathematical expression that define a geometric parameter(s) such as line segment, intersecting line segments, arcs, circles, etc.
- the frame comprises geometric parameter(s) related to a cross-section of the part 10 ′ or 10 along a referenced direction.
- the reference frames 208 comprise line segments 210 , joined together at one end on each side of the part 10 ′ (herein illustrated on one side by way of example) that represent the center section 12 ′ joined to each of the opposed flanges 14 ′. As such, the frames are also indicative of the angles 16 and 24 of the respective portion of the part 10 ′.
- the fact that the frames 208 comprise joined line segments should not be considered limiting in that if desired the line segments or other geometric parameters can be unconnected but otherwise associated with each other.
- each frame comprises pairs of connected line segments on each side of the center section 12 ′ as illustrated in FIG. 3 .
- the plurality of reference frames 208 Taken along a reference direction of the part 10 ′, such as a longitudinal axis, the plurality of reference frames 208 define the part 10 ′.
- the plurality of reference frames 208 can be generated or derived (e.g. calculated) based on the design specifications embodied for example in the CAD file using CAD macro programming 212 or similar processing of the design specifications 202 .
- the plurality of reference frames 208 comprise spaced apart individual frames along the reference direction of the part 10 ′. The spacing between adjacent frames can be selected based on the accuracy desired and/or the flexibility of the actual part 10 .
- a third type of information needed for obtaining the tool path 156 are frames based on the unconstrained part 10 being held.
- the frames 220 based on the unconstrained the part 10 are referred to as “scan frames”.
- a plurality of scan frames 220 are best illustrated in FIG. 2 . In FIG. 5 only the plurality of scan frames 220 are shown since the part 10 ′ is illustrated rather than the actual unconstrained part 10 .
- the scan frames 220 do not depart as significantly from the reference frames 208 as that illustrated in FIG. 5 , which is done so for purposes of understanding.
- the scan frames 220 are obtained from measured data of the unconstrained part 10 .
- Typical measurement devices include profilometers such as but not limited to probes, offset lasers, cameras or the like.
- the reference frame(s) will not coincide with an actual scan frame as measured directly from the profilometer with the desired accuracy or correspondence.
- the higher resolution scan data allows an interpolated scan frame to be obtained, which can then be associated with the corresponding reference frame.
- individual reference frames of the plurality of reference frames 208 are each illustrated with a corresponding scan frame (actual or interpolated) of the plurality of scan frames 220 . Processing corresponding to associating scan frames 220 with reference frames 208 in order to ascertain if interpolation is needed is indicated by double arrow 221 in FIG. 4 .
- a portion of a reference frame 208 A associated with one side of the part 10 ′ is illustrated with a series of portions of scan frames 220 A, 220 B, 220 C and 220 D.
- the reference frame 208 A does not coincide with either of the scan frames 220 B and 220 C, but rather is disposed between them.
- a scan frame coinciding with the reference frame 208 A can be obtained through known interpolation calculations of the data associated with scan frames 220 B and 220 C.
- an interpolated scan frame can be obtained so as to be compared with an existing reference frame, or an interpolated reference frame can be obtained so as to be compared with an existing scan frame, or both an interpolated reference frame and an interpolated scan frame can be obtained so as to be compared with each other.
- the part 10 to be processed can include one or more registration elements (markings or characteristic physical portions such as a known point on the part), for example, as illustrated in FIG. 2 at 240 , while the design specifications include a similar registration element(s) 240 ′.
- the scan frames 220 B and 220 C where the reference frame 208 would be disposed can be ascertained, because the series of scan frames 220 are obtained at known intervals.
- the registration element can take many forms.
- the registration element(s) 240 need only be quality and/or quantity to provide the requisite information so as to understand the differences between the unconstrained actual part 10 relative to the design part 10 ′ to enable the interpolation calculations for any and all interpolated scan lines to be accurate.
- a transform matrix with respect to a suitable coordinate system can be obtained for each pair of associated reference and scan frames of part 10 .
- Each transform matrix represents the spatial difference between each associated reference and scan frame, and thus the spatial difference of the corresponding portion of part 10 with respect to the same portion of the design specifications represented by part 10 ′.
- the motion commands 206 for the reference tool path 156 ′ are spatially adjusted so as to provide motion control commands 250 that correspond to that of tool path 156 , which when the end effector 154 is applied to the unconstrained part 10 , will yield or correspond to an actual part meeting the design specifications for any of the exemplary adaptive manufacturing processes indicated at 252 .
- the unique transform matrices can be applied to the reference tool path 156 ′, whereupon the tool path 156 for the unconstrained part 10 is then obtained.
- the motion commands for the positioner 152 can then be obtained from the tool path 156 .
- FIG. 7 illustrates an example of application of the foregoing to part inspection in detail.
- inspection points and Dimensional Measuring Interface Standard (DMIS) requirements 300 of nominal design specifications of a part are provided to Dimensional Measuring Interface Standard software 302 .
- the nominal inspection locations and the reference frames corresponding to the design specifications of the part, as discussed above, are provided to a machine controller 304 .
- scan frames for the part 10 to be inspected are obtained and associated with corresponding reference frames so as to obtain a plurality of unique transform matrices that in turn are used to transform the nominal inspection locations so that they can be compared with corresponding measured inspection locations as should be found on the unconstrained part 10 .
- the measured inspection locations are then compared to calculated measured inspection locations so to realize a unique “Inverse” transformation matrix, which is returned with the measurement results to the Dimensional Measuring Interface Standard software 302 .
- DMIS issues an inspection report 306 for the actual part.
- controller 150 can be performed on controller 150 or on a separate computing device remote from or connected to controller 150 . Likewise, portions of the processing can be performed on different computing devices connected or unconnected to each other.
- the computing environment for the controller 150 , positioner 152 or the other computing devices mentioned above can be implemented on a digital and/or analog computer. Although not required, portions of the controller 150 , positioner 152 or the other computing devices mentioned above can be implemented at least in part, in the general context of computer-executable instructions, such as program modules, being executed by a computer 470 illustrated in FIG. 8 .
- program modules include routine programs, objects, components, data structures, etc., which perform particular tasks or implement particular abstract data types.
- the computer 470 comprises a conventional computer having a central processing unit (CPU) 472 , memory 474 and a system bus 476 , which couples various system components, including memory 474 to the CPU 472 .
- the system bus 476 may be any of several types of bus structures including a memory bus or a memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
- the memory 474 includes read only memory (ROM) and random access memory (RAM).
- ROM read only memory
- RAM random access memory
- Storage devices 478 such as a hard disk, a floppy disk drive, an optical disk drive, etc., are coupled to the system bus 476 and are used for storage of programs and data. It should be appreciated by those skilled in the art that other types of computer readable media that are accessible by a computer, such as magnetic cassettes, flash memory cards, digital video disks, random access memories, read only memories, and the like, may also be used as storage devices. Commonly, programs are loaded into memory 474 from at least one of the storage devices 478 with or without accompanying data.
- Input devices such as a keyboard 480 and/or pointing device (mouse) 44 , or the like, allow the user to provide commands to the computer 470 .
- a monitor 484 or other type of output device is further connected to the system bus 476 via a suitable interface and provides feedback to the user. If the monitor 484 is a touch screen, the pointing device 82 can be incorporated therewith.
- the monitor 484 and typically an input pointing device 482 such as mouse together with corresponding software drivers form a graphical user interface (GUI) 486 for computer 470 .
- GUI graphical user interface
- Interfaces 488 on each of the controller 150 , positioner 152 or other computing devices mentioned above allow communication between controller 150 , positioner 152 and/or other computing devices mentioned above.
- circuitry comprises digital-to-analog (D/A) and analog-to-digital (A/D) converters as is well known in the art.
- D/A digital-to-analog
- A/D analog-to-digital
- Functions of controller 150 and/or positioner 152 can be combined into one computer system.
- each of the controller 150 and/or positioner 152 is a single board computer operable on a network bus of another computer, such as a supervisory computer.
- the schematic diagram of FIG. 8 is intended to generally represent these and other suitable computing environments.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- General Physics & Mathematics (AREA)
- Robotics (AREA)
- Theoretical Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Numerical Control (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Aviation & Aerospace Engineering (AREA)
- Power Engineering (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Architecture (AREA)
- Software Systems (AREA)
- Shaping Of Tube Ends By Bending Or Straightening (AREA)
- Structure Of Printed Boards (AREA)
Abstract
Description
- The present application claims the benefit of U.S. Provisional Patent Application Ser. No. 62/000,635, filed May 20, 2014, which is hereby incorporated reference in its entirety.
- The manufacturing or processing of flexible workpieces (herein referred to also as “parts”) is often a difficult task. A flexible part is a non-rigid body that has a portion, portions or the entire body of the part that deforms due to a relatively light force, such as but not limited to the force of gravity, applied thereto. Often the flexible part is made from a flexible material and/or the material is thin, which prevents the flexible part from retaining a solid rigid body. For instance, flexible parts made from a molding process can change shape, at least partially, when the parts are removed from the mold. In other words, the flexible part often does not retain the exact shape of the mold, but rather, takes a different shape when unconstrained by the mold.
- By way of example,
FIG. 1 illustrates an exemplary 3-dimensional portion of aflexible part 10 that includes a U-shapedcenter section 12 and opposedflange portions 14. Being formed of a relatively thin or lightweight material, the width of the U-shapedcenter section 12 can vary along its length. In this exemplary part, variance can particularly exist where a top portion of thecenter section 12 joins to the side portions, as represented bydouble arrow 16. Likewise, the angle at which theflange 14 extends from the center section represented bydouble arrow 24 can vary or can change along its length. These variances are merely illustrative in that an actual flexible part can experience variances in any or all degrees of freedom. - Although the
part 10 is flexible, such flexible parts are often mounted or secured to another body (not shown) whereupon when mounted, theflexible part 10 and the body together may yield a substantially rigid, or at least less flexible overall structure. However, before theflexible part 10 can be secured to the body, often theflexible part 10 must be processed so as to have a specific shape of features, which without limitation, can includerecesses 17, by way of example, apertures, cut outs, desired thickness at selected portions of the flexible part, etc. all pursuant to exact specifications. Such processing can include but is not limited to drilling, milling, trimming, scribing, chamfering and using any manufacturing technique such as but not limited to machining, waterjet cutting, laser or plasma cutting, etc. In addition, processing of theflexible part 10 can also include inspecting theflexible part 10 to see if theflexible part 10 meets the desired specifications. Inspection can include use of any form of inspection or measuring device such as but not limited to profilometers, offset lasers, probes and cameras to list just a few. - Commonly, known techniques for processing or manufacturing flexible parts include mounting each flexible part in a jig having holder(s) that hold the flexible part in the desired shape and position so as, for example, to replicate mounting of the flexible part to the other body. As used herein, when the flexible part is held or supported in a specific and accurate manner to maintain a specific shape throughout, the flexible part is “constrained” by the jig or holder. As appreciated by those skilled in the art, constraining the flexible part for and during processing typically requires a unique jig constructed for each flexible part to be processed. Furthermore, mounting of the flexible part on the jig can be time consuming and be prone to positional errors.
- This Summary and the Abstract herein are provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary and Abstract are not intended to identify key features or essential features of the claimed subject matter, nor are they intended to be used as an aid in determining the scope of the claimed subject matter. The claimed subject matter is not limited to the implementations that solve any or all disadvantages noted in the background.
- A first aspect of the invention includes a system for processing a flexible part comprising a holder configured to hold the flexible part securely in an unconstrained position and an end effector configured to process the flexible part when held by the holder in the unconstrained position. At least one positioner is configured to support the holder or the end effector for movement. A controller is configured to control the positioner to provide relative movement between the end effector and the holder to process the flexible part, wherein movements of the positioner have been compensated based on a comparison of a shape and/or position of the flexible part in the unconstrained position with design specifications of the part not in the unconstrained position.
- A second aspect of the invention is a method for processing a flexible part comprising holding the flexible part securely in an unconstrained position; and controlling a positioner to process the flexible part based on a comparison of a shape and/or position of the flexible part in the unconstrained position with design specifications of the part not in the unconstrained position.
- One or more of the following features can be included in the system or method above in further embodiments thereof.
- A storage device can be included having the design specifications stored on a computer readable medium of the storage device and accessed.
- The shape and/or position of the flexible part in the unconstrained position can be ascertained and stored data on a computer readable medium. Commonly, the shape and/or position is obtained using a profilometer, such as a laser, camera system and/or measuring probe. The shape and/or position data can be in the form of a plurality of scan frames, each portion corresponding to a different portion of the flexible part. The scan frames can comprise a geometric parameter with respect to a coordinate system such as value(s) alone and/or with respect to shape(s), for example, distances, such as distances between reference points; angles, such as angles represented by intersecting vectors or line segments; and/or a series of points or mathematical expression that define a geometric parameter(s) such as line segment, intersecting line segments, arcs, circles or other curved lines. The scan frames are associated with different portions of the flexible part and each scan frame corresponds to a portion at a different position with respect to the flexible part such as along a reference direction.
- A controller is configured to control the positioner and can include controlling the positioner based on a comparison of one or more scan frames with one or more reference frames, the reference frames preferably based on the design specification. Typically, controlling the positioner includes determining a control path to move the positioner.
- A spatial difference can exist between reference frames and scan frames. In other words, one or more reference frames will not coincide with the scan lines enough so that a comparison can be made. In such cases, an interpolation must be made of to obtain one or more interpolated reference frames and/or one or more interpolated scan frames. In such embodiments, obtaining the comparison comprises obtaining an interpolated reference frame for comparison with an existing scan frame, comparing an interpolated scan frame with an existing reference frame or comparing an interpolated reference frame and with an interpolated scan frame. A unique matrix based on associated reference frames and scan frames where either can be interpolated as discussed above.
- The system and method can be used for processing of the flexible comprises at least one of drilling, milling, trimming, scribing, chamfering or inspecting. It should be noted the positioner can be coupled to the end effector to control movement thereof or coupled to the holder to control movement thereof.
-
FIG. 1 is a perspective view of an exemplary part for processing. -
FIG. 2 is a schematic diagram of a system for processing the part ofFIG. 1 . -
FIG. 3 is a visual representation of a virtual part defined by design specifications. -
FIG. 4 is a flow diagram illustrating a method for processing the part. -
FIG. 5 is a schematic diagram pictorially illustrating processing of the part. -
FIG. 6 is a schematic diagram of a reference frame and scan frames. -
FIG. 7 is a flow diagram illustrating inspecting a part. -
FIG. 8 is a schematic illustration of a computing environment. - An adaptive flexible part processing system and method are described herein. Referring to
FIG. 2 , the system includes a jig orholder 102 that holds theflexible part 10 in an “unconstrained” manner. As used herein, “unconstrained” means that theflexible part 10 is not held in a specific and accurate manner to maintain a specific shape throughout the body of theflexible part 10, but rather held in a less exacting manner, where the shape can differ from design specifications, and typically where the extent of difference from design specification can vary throughout theflexible part 10, typically without repeatability from part to part although the parts are to be the same. “Design specifications” as used herein refer to the shape, dimensions, etc. of theflexible part 10 as used in the manner for which it intended. It is desired to process theflexible part 10 such that when used in the manner for which it intended, theflexible part 10 will change its shape, for example, so as to be mounted to another part, or in other words it changes its shape to match the design specifications such that it will properly mount to the other part. - It should be noted that the jig or
holder 102 is shown schematically since the design will vary considerably depending on thepart 10 to be formed or inspected. Many types of holders are known and can be used with the system and method herein described. Specific features of theholder 102 are not needed for purposes of understanding of the present invention other than that it holds thepart 10 securely in any known manner, for example, via the use of clamps, fasteners, vacuum cups, magnets, fixed and/or adjustable support elements to name just a few. -
FIG. 3 represents a view of thepart 10′ meeting design specifications. The design specifications are often stored electronically in or on computer readable media. In other words, the design specifications of thepart 10′ comprise desired dimensions of theactual part 10 and are represented herein by the illustration ofFIG. 3 , which could correspond to a computer aided design (CAD) file or the like, viewable on a computer display or through the use of other rendering devices such as from a 2 or 3 dimensional printer, plotter, etc. - As a simple, non-limiting example suppose the design specifications of the
flexible part 10′ requiresrecesses 17′ cut in each of theopposed flanges 14′ to be a selecteddistance 19 apart from each other when fasteners are used to mount the actualflexible part 10 to another part. In addition, suppose that the design specifications require that thecenter section 12′ joins to theflange portions 14′ at a certain angle, as represented bydouble arrow 16, and that a certain angle is provided at which theflanges 14′ extend from thecenter section 12′ represented bydouble arrow 24. Since the location of therecesses 17 relative to each other control at least in part theangles 16 on each side of the actualflexible part 10 when theflexible part 10 is mounted to the other part, the position of each of therecesses 17 must be accurate. However, as indicated above it is costly and time consuming to create a special jig or holder to hold theflexible part 10 in a constrained position matching the design specifications such that the spacing between theflanges 14 match the mounting of theflexible part 10 on the other part. Using this known processing technique, only after achieving the proper constrained position of theflexible part 10 are therecesses 17, for example, then made in each of theflanges 14. - In contrast, aspects of the present invention enable a
flexible part 10 to be processed accurately even though theflexible part 10 is being held in an unconstrained manner by holder 102 (i.e. held at least in a position that does not match the design specifications as represented bypart 10′). In other words, unconstrained does not mean that theflexible part 10 is not held securely. To the contrary, an unconstrainedflexible part 10 means theflexible part 10 is held in a manner to the extent necessary for the type of processing being performed on theflexible part 10 to be done. - It should also be noted when the flexible part is held in an unconstrained manner, it does not mean that it is held within certain tolerances that allows work or other processes to be performed on the flexible part that without further regard to its shape on the jig or holder will yield an acceptable flexible part. As will be described below, aspects of the system and method herein described allows a
flexible part 10 to be held securely in an unconstrained manner, but any work upon or inspection of theflexible part 10, is performed only after taking into account the shape of theflexible part 10 on the jig or holder as it is being held in the unconstrained manner; and in particular, the variances present in the shape as it is being held due to the flexibility of at least some portions of theflexible part 10. Only after the shape of theflexible part 10 as it is being held is known, is theflexible part 10 processed where processing takes into account the unconstrained shape of theflexible part 10. Using by way of the simple example referenced above, the formation of therecesses 17 in theflanges 14, or inspection thereof, may be at adistance 21 from each other that does not match thedistance 19 of therecesses 17 when the part is mounted to the other part. For example, thedistance 21 between therecesses 17 may be greater, narrower and/or out of alignment when formed when theflexible part 10 is held by the holder in an unconstrained manner, but nevertheless when theflexible part 10 is mounted in the constrained position to the other part, therecesses 17 are at thedistance 19 from each other as required by the design specifications such that the required angles 16 and 24 on each side of theflexible part 10 are obtained. It should be noted, the illustration ofFIG. 2 depicts thepart 10 as being severely out of alignment with respect to the design specifications for purposes of understanding. - The system also generally includes a
controller 150 that controls a positioner 152 (typically movable in multiple degrees of freedom), where thepositioner 152 commonly supports anend effector 154 for controlled movement as needed to process theflexible part 10 as desired. For example, theend effector 154 can comprise device(s) to perform drilling, milling, trimming, chamfering, etc. on or inspection of theflexible part 10 as described in the background section above. - The
controller 150 provides control signals to thepositioner 152 such that theend effector 154 attached thereto moves about theflexible part 10 typically according to a defined path 156 (herein also referred to as a “tool path”), a portion of which is illustrated. Thecontroller 150,positioner 152 andend effector 154 attached to thepositioner 152 are well known devices. Thecontroller 150 can comprise analog and/or digital circuitry and is typically computer-based wherein a processor executes instructions stored therein so as to generate control signals for thepositioner 152 andend effector 154. Likewise, thepositioner 152 can take numerous well known forms such as but not limited to a multi-degree of freedom robotic arm or a gantry system having theend effector 154 mounted to a robotic arm or other support that is fixed or moves relative to a bridge that in turn is moveable on one or more rails. In addition, a plurality ofholders 102 can be used to hold alarger part 10 where each of theholders 102 hold a portion of thepart 10. A particular advantageous embodiment of a configurable system having a plurality of multi-degree of freedom arms for holding a variety of different parts is described in U.S. patent application Ser. No. 14/213,398, filed on Mar. 14, 2013 and entitled “MULTI-AXIS CONFIGURABLE FIXTURE”, which is incorporated herein by reference in its entirety. - It should be noted although it is common for the
positioner 152 to support theend effector 154 for controlled movement thereof relative to theflexible part 10 being held by theholder 102 held in a stationary position, in a further embodiment, apositioner 153 could be used to move theholder 102 and thus theflexible part 10 relative to theend effector 154 held in a stationary position. In yet another embodiment,separate positioners end effector 154 and theholder 102, respectively, if desired. Hereinafter, the embodiment where theholder 102 andflexible part 10 are held stationary while thepositioner 152 supports and moves theend effector 154 will be further described, nevertheless this should not be considered limiting, but rather aspects of the present invention can be applied to the other embodiments described above as well. - Generally, the system and method herein described process the
flexible part 10 with the desiredend effector 154 mounted to thepositioner 152, where thepositioner 152 is controlled so as to account for the unconstrained manner in which theflexible part 10 is held by theholder 102 in order to process thepart 10 and obtain, or compare theactual part 10 to the design specifications (represented bypart 10′). As will be described below, the system and method alter theactual tool path 156 to take into account the unconstrained manner in which thepart 10 is held. InFIG. 3 ,tool path 156′ is a calculated or otherwise generated or a known tool path that would be taken by theend effector 154 for apart 10′ to meet the design specifications when the part is ideally held. Since thepart 10′ is a virtual part defined by the desired design specifications, thetool path 156′ is not the actual tool path but rather a reference tool path that is used to obtain theactual tool path 156. -
FIG. 4 illustrates inputs or types of information needed and the processing to obtain thetool path 156 for processing thepart 10 when held in an unconstrained manner. A first portion of information comprises the reference (nominal)tool path 156′ of thepart 10′. Commonly, thereference tool path 156′ is derived based on the desired (nominal) design specifications, indicated at 202, which can be, for example embodied in a CAD file or the like. Using the desireddesign specifications 202, thereference tool path 156′ can be derived from computer aided manufacturing programs or systems as indicated at 204. Commonly, thetool path 156′ is then processed to generate motion control commands 206 in a form suitable to be used by or to control thepositioner 152. Thereference tool path 156′ is illustrated inFIG. 5 where thepart 10′ again is illustrative of the design specifications. - A second type of information needed for obtaining the
tool path 156 are reference frames based on the nominal design specifications of thepart 10′. As used herein a “frame” is a portion of thepart 10′ orpart 10 that is used as the basis of comparison between thepart 10′ as defined by the design specifications with the same portion found in thepart 10. The frame can be any geometric parameter that is used to define a portion of thepart 10′ andpart 10. Such parameters include but are not limited to value(s) by themselves and/or with respect to shape(s), for example, distances, such as distances between reference points; angles, such as angles represented by intersecting vectors; and/or a series of points or mathematical expression that define a geometric parameter(s) such as line segment, intersecting line segments, arcs, circles, etc. In one advantageous embodiment, the frame comprises geometric parameter(s) related to a cross-section of thepart 10′ or 10 along a referenced direction. - Referring to
FIG. 5 , thereference frames 208 compriseline segments 210, joined together at one end on each side of thepart 10′ (herein illustrated on one side by way of example) that represent thecenter section 12′ joined to each of theopposed flanges 14′. As such, the frames are also indicative of theangles part 10′. The fact that theframes 208 comprise joined line segments should not be considered limiting in that if desired the line segments or other geometric parameters can be unconnected but otherwise associated with each other. In one embodiment, each frame comprises pairs of connected line segments on each side of thecenter section 12′ as illustrated inFIG. 3 . Taken along a reference direction of thepart 10′, such as a longitudinal axis, the plurality ofreference frames 208 define thepart 10′. The plurality ofreference frames 208 can be generated or derived (e.g. calculated) based on the design specifications embodied for example in the CAD file usingCAD macro programming 212 or similar processing of thedesign specifications 202. Typically, the plurality ofreference frames 208 comprise spaced apart individual frames along the reference direction of thepart 10′. The spacing between adjacent frames can be selected based on the accuracy desired and/or the flexibility of theactual part 10. - A third type of information needed for obtaining the
tool path 156 are frames based on theunconstrained part 10 being held. As used herein theframes 220 based on the unconstrained thepart 10 are referred to as “scan frames”. A plurality of scan frames 220 are best illustrated inFIG. 2 . InFIG. 5 only the plurality of scan frames 220 are shown since thepart 10′ is illustrated rather than the actualunconstrained part 10. Typically, the scan frames 220 do not depart as significantly from thereference frames 208 as that illustrated inFIG. 5 , which is done so for purposes of understanding. - Referring to
FIG. 4 , the scan frames 220 are obtained from measured data of theunconstrained part 10. Typical measurement devices include profilometers such as but not limited to probes, offset lasers, cameras or the like. - In many instances of processing a part, the reference frame(s) will not coincide with an actual scan frame as measured directly from the profilometer with the desired accuracy or correspondence. In one embodiment, it is advantageous to obtain scan frame data at a higher resolution in the same reference direction than that of the spacing of the reference frames 208. The higher resolution scan data allows an interpolated scan frame to be obtained, which can then be associated with the corresponding reference frame. In
FIG. 5 , individual reference frames of the plurality ofreference frames 208 are each illustrated with a corresponding scan frame (actual or interpolated) of the plurality of scan frames 220. Processing corresponding to associating scan frames 220 withreference frames 208 in order to ascertain if interpolation is needed is indicated bydouble arrow 221 inFIG. 4 . - Referring to
FIG. 6 , a portion of areference frame 208A associated with one side of thepart 10′ (not shown inFIG. 6 ) is illustrated with a series of portions of scan frames 220A, 220B, 220C and 220D. As illustrated, thereference frame 208A does not coincide with either of the scan frames 220B and 220C, but rather is disposed between them. In order to obtain a scan frame with the desired accuracy of association with thereference frame 208A (which will be used later), a scan frame coinciding with thereference frame 208A can be obtained through known interpolation calculations of the data associated withscan frames - At this point it should be noted that there is commonly registration existing between the design specifications (represented by 10′) and
part 10. For example, thepart 10 to be processed can include one or more registration elements (markings or characteristic physical portions such as a known point on the part), for example, as illustrated inFIG. 2 at 240, while the design specifications include a similar registration element(s) 240′. Using a comparison of the registration element(s) 240 of thepart 10 with the registration element(s) 240′ of thedesign specifications 10′, the scan frames 220B and 220C where thereference frame 208 would be disposed can be ascertained, because the series of scan frames 220 are obtained at known intervals. It should be noted that theregistration elements 240 illustrated inFIG. 2 are only illustrative in that the registration element can take many forms. Generally, the registration element(s) 240 need only be quality and/or quantity to provide the requisite information so as to understand the differences between the unconstrainedactual part 10 relative to thedesign part 10′ to enable the interpolation calculations for any and all interpolated scan lines to be accurate. - Referring back to
FIG. 4 , a transform matrix with respect to a suitable coordinate system (Cartesian, Polar, etc.) can be obtained for each pair of associated reference and scan frames ofpart 10. Each transform matrix represents the spatial difference between each associated reference and scan frame, and thus the spatial difference of the corresponding portion ofpart 10 with respect to the same portion of the design specifications represented bypart 10′. By applying each unique transform matrix to appropriate motion commands 206, the motion commands 206 for thereference tool path 156′ are spatially adjusted so as to provide motion control commands 250 that correspond to that oftool path 156, which when theend effector 154 is applied to theunconstrained part 10, will yield or correspond to an actual part meeting the design specifications for any of the exemplary adaptive manufacturing processes indicated at 252. Although illustrated inFIG. 4 where the unique transform matrices are applied to the motion commands 206, it should be understood that the unique transform matrices can be applied to thereference tool path 156′, whereupon thetool path 156 for theunconstrained part 10 is then obtained. The motion commands for thepositioner 152 can then be obtained from thetool path 156. -
FIG. 7 illustrates an example of application of the foregoing to part inspection in detail. For eachactual part 10 to be inspected, inspection points and Dimensional Measuring Interface Standard (DMIS)requirements 300 of nominal design specifications of a part, are provided to Dimensional MeasuringInterface Standard software 302. The nominal inspection locations and the reference frames corresponding to the design specifications of the part, as discussed above, are provided to amachine controller 304. In the manner discussed above, scan frames for thepart 10 to be inspected are obtained and associated with corresponding reference frames so as to obtain a plurality of unique transform matrices that in turn are used to transform the nominal inspection locations so that they can be compared with corresponding measured inspection locations as should be found on theunconstrained part 10. The measured inspection locations are then compared to calculated measured inspection locations so to realize a unique “Inverse” transformation matrix, which is returned with the measurement results to the Dimensional MeasuringInterface Standard software 302. Using the foregoing information, DMIS issues aninspection report 306 for the actual part. - The processing described above can be performed on
controller 150 or on a separate computing device remote from or connected tocontroller 150. Likewise, portions of the processing can be performed on different computing devices connected or unconnected to each other. Generally, the computing environment for thecontroller 150,positioner 152 or the other computing devices mentioned above can be implemented on a digital and/or analog computer. Although not required, portions of thecontroller 150,positioner 152 or the other computing devices mentioned above can be implemented at least in part, in the general context of computer-executable instructions, such as program modules, being executed by acomputer 470 illustrated inFIG. 8 . Generally, program modules include routine programs, objects, components, data structures, etc., which perform particular tasks or implement particular abstract data types. Those skilled in the art can implement the description herein as computer-executable instructions storable on a computer readable medium. Moreover, those skilled in the art will appreciate that the invention may be practiced with other computer system configurations, including multi-processor systems, networked personal computers, mini computers, main frame computers, and the like. Aspects of the invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computer environment, program modules may be located in both local and remote memory storage devices. - The
computer 470 comprises a conventional computer having a central processing unit (CPU) 472,memory 474 and asystem bus 476, which couples various system components, includingmemory 474 to theCPU 472. Thesystem bus 476 may be any of several types of bus structures including a memory bus or a memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. Thememory 474 includes read only memory (ROM) and random access memory (RAM). A basic input/output (BIOS) containing the basic routine that helps to transfer information between elements within thecomputer 470, such as during start-up, is stored in ROM.Storage devices 478, such as a hard disk, a floppy disk drive, an optical disk drive, etc., are coupled to thesystem bus 476 and are used for storage of programs and data. It should be appreciated by those skilled in the art that other types of computer readable media that are accessible by a computer, such as magnetic cassettes, flash memory cards, digital video disks, random access memories, read only memories, and the like, may also be used as storage devices. Commonly, programs are loaded intomemory 474 from at least one of thestorage devices 478 with or without accompanying data. - Input devices such as a
keyboard 480 and/or pointing device (mouse) 44, or the like, allow the user to provide commands to thecomputer 470. Amonitor 484 or other type of output device is further connected to thesystem bus 476 via a suitable interface and provides feedback to the user. If themonitor 484 is a touch screen, the pointing device 82 can be incorporated therewith. Themonitor 484 and typically aninput pointing device 482 such as mouse together with corresponding software drivers form a graphical user interface (GUI) 486 forcomputer 470.Interfaces 488 on each of thecontroller 150,positioner 152 or other computing devices mentioned above allow communication betweencontroller 150,positioner 152 and/or other computing devices mentioned above. Commonly, such circuitry comprises digital-to-analog (D/A) and analog-to-digital (A/D) converters as is well known in the art. Functions ofcontroller 150 and/orpositioner 152 can be combined into one computer system. In another computing environment, each of thecontroller 150 and/orpositioner 152 is a single board computer operable on a network bus of another computer, such as a supervisory computer. The schematic diagram ofFIG. 8 is intended to generally represent these and other suitable computing environments. - Although the subject matter has been described in language directed to specific environments, structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not limited to the environments, specific features or acts described above as has been held by the courts. Rather, the environments, specific features and acts described above are disclosed as example forms of implementing the claims.
Claims (29)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/717,742 US20150338213A1 (en) | 2014-05-20 | 2015-05-20 | Adaptive Manufacturing System |
US16/535,864 US11460294B2 (en) | 2014-05-20 | 2019-08-08 | Adaptive manufacturing system |
US17/950,504 US11733036B2 (en) | 2014-05-20 | 2022-09-22 | Adaptive manufacturing system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462000635P | 2014-05-20 | 2014-05-20 | |
US14/717,742 US20150338213A1 (en) | 2014-05-20 | 2015-05-20 | Adaptive Manufacturing System |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/535,864 Continuation US11460294B2 (en) | 2014-05-20 | 2019-08-08 | Adaptive manufacturing system |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150338213A1 true US20150338213A1 (en) | 2015-11-26 |
Family
ID=53298615
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/717,742 Abandoned US20150338213A1 (en) | 2014-05-20 | 2015-05-20 | Adaptive Manufacturing System |
US16/535,864 Active 2036-09-12 US11460294B2 (en) | 2014-05-20 | 2019-08-08 | Adaptive manufacturing system |
US17/950,504 Active US11733036B2 (en) | 2014-05-20 | 2022-09-22 | Adaptive manufacturing system |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/535,864 Active 2036-09-12 US11460294B2 (en) | 2014-05-20 | 2019-08-08 | Adaptive manufacturing system |
US17/950,504 Active US11733036B2 (en) | 2014-05-20 | 2022-09-22 | Adaptive manufacturing system |
Country Status (3)
Country | Link |
---|---|
US (3) | US20150338213A1 (en) |
EP (1) | EP3146397A1 (en) |
WO (1) | WO2015179521A1 (en) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5307282A (en) * | 1989-09-22 | 1994-04-26 | Hewlett-Packard Company | Method of computer-aided prediction of collisions between objects including fabrication tools and parts to be fabricated |
US5715166A (en) * | 1992-03-02 | 1998-02-03 | General Motors Corporation | Apparatus for the registration of three-dimensional shapes |
US6167607B1 (en) * | 1981-05-11 | 2001-01-02 | Great Lakes Intellectual Property | Vision target based assembly |
US6278457B1 (en) * | 1998-01-15 | 2001-08-21 | International Business Machines Corporation | Methods and apparatus for performing sampling based synthesis of three-dimensional geometric models |
US20040129756A1 (en) * | 2000-10-06 | 2004-07-08 | Elke Zakel | Device for positioning a tool in relation to a workpiece |
US20050107920A1 (en) * | 2003-11-18 | 2005-05-19 | Fanuc Ltd | Teaching position correcting device |
US20090025199A1 (en) * | 2007-07-23 | 2009-01-29 | Fanuc Ltd | Flexible workpiece assembling method |
US8620627B2 (en) * | 2009-10-13 | 2013-12-31 | The Boeing Company | Composite information display for a part |
US20140012416A1 (en) * | 2011-03-24 | 2014-01-09 | Canon Kabushiki Kaisha | Robot control apparatus, robot control method, program, and recording medium |
US20140172152A1 (en) * | 2012-12-19 | 2014-06-19 | The Boeing Company | Method and Apparatus for Customizing Tool Paths |
US20140277713A1 (en) * | 2013-03-15 | 2014-09-18 | Kabushiki Kaisha Yaskawa Denki | Robot system and method for producing to-be-worked material |
US20150336271A1 (en) * | 2014-05-20 | 2015-11-26 | GM Global Technology Operations LLC | System and method for fixtureless component location in assembling components |
US20160167247A1 (en) * | 2014-12-12 | 2016-06-16 | Ford Motor Company | System and method for forming holes onto a sheet-metal assembly |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4947666A (en) * | 1988-09-16 | 1990-08-14 | The Boeing Company | Method and apparatus for bending an elongate workpiece |
JP2919127B2 (en) * | 1991-09-25 | 1999-07-12 | 松下電工株式会社 | Off-line teaching method of 3D laser beam machine |
US6256546B1 (en) * | 1998-09-28 | 2001-07-03 | General Electric Company | System and method for numerical control processing of an in-processing part |
DE10240307A1 (en) * | 2002-08-31 | 2004-03-11 | Carl Zeiss | Coordinate measuring device and method for measuring a workpiece |
JP4221014B2 (en) * | 2006-06-20 | 2009-02-12 | ファナック株式会社 | Robot controller |
US9969131B2 (en) * | 2011-06-22 | 2018-05-15 | The Boeing Company | Automated ply layup system |
KR101668765B1 (en) * | 2015-06-04 | 2016-10-25 | 한국생산기술연구원 | Method for detecting standard point of worksheet |
JP6964989B2 (en) * | 2017-02-09 | 2021-11-10 | キヤノン株式会社 | Control methods, robot systems, article manufacturing methods, programs, and recording media |
DE102018208203B4 (en) * | 2018-05-24 | 2020-02-13 | Carl Zeiss Industrielle Messtechnik Gmbh | Target body, arrangement with target body and method for determining a position and / or an orientation of a target body |
US10869489B2 (en) * | 2018-08-31 | 2020-12-22 | John Bean Technologies Corporation | Portioning accuracy analysis |
-
2015
- 2015-05-20 WO PCT/US2015/031779 patent/WO2015179521A1/en active Application Filing
- 2015-05-20 US US14/717,742 patent/US20150338213A1/en not_active Abandoned
- 2015-05-20 EP EP15727517.3A patent/EP3146397A1/en not_active Ceased
-
2019
- 2019-08-08 US US16/535,864 patent/US11460294B2/en active Active
-
2022
- 2022-09-22 US US17/950,504 patent/US11733036B2/en active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6167607B1 (en) * | 1981-05-11 | 2001-01-02 | Great Lakes Intellectual Property | Vision target based assembly |
US5307282A (en) * | 1989-09-22 | 1994-04-26 | Hewlett-Packard Company | Method of computer-aided prediction of collisions between objects including fabrication tools and parts to be fabricated |
US5715166A (en) * | 1992-03-02 | 1998-02-03 | General Motors Corporation | Apparatus for the registration of three-dimensional shapes |
US6278457B1 (en) * | 1998-01-15 | 2001-08-21 | International Business Machines Corporation | Methods and apparatus for performing sampling based synthesis of three-dimensional geometric models |
US20040129756A1 (en) * | 2000-10-06 | 2004-07-08 | Elke Zakel | Device for positioning a tool in relation to a workpiece |
US20080300723A1 (en) * | 2003-11-18 | 2008-12-04 | Fanuc Ltd | Teaching position correcting device |
US20050107920A1 (en) * | 2003-11-18 | 2005-05-19 | Fanuc Ltd | Teaching position correcting device |
US20090025199A1 (en) * | 2007-07-23 | 2009-01-29 | Fanuc Ltd | Flexible workpiece assembling method |
US8620627B2 (en) * | 2009-10-13 | 2013-12-31 | The Boeing Company | Composite information display for a part |
US20140012416A1 (en) * | 2011-03-24 | 2014-01-09 | Canon Kabushiki Kaisha | Robot control apparatus, robot control method, program, and recording medium |
US20140172152A1 (en) * | 2012-12-19 | 2014-06-19 | The Boeing Company | Method and Apparatus for Customizing Tool Paths |
US20140277713A1 (en) * | 2013-03-15 | 2014-09-18 | Kabushiki Kaisha Yaskawa Denki | Robot system and method for producing to-be-worked material |
US20150336271A1 (en) * | 2014-05-20 | 2015-11-26 | GM Global Technology Operations LLC | System and method for fixtureless component location in assembling components |
US20160167247A1 (en) * | 2014-12-12 | 2016-06-16 | Ford Motor Company | System and method for forming holes onto a sheet-metal assembly |
Non-Patent Citations (3)
Title |
---|
(Par.com-Passive, Active and Robotic Fixtures); © 2017 PaR Systems, Inc. * |
Adaptive Manufacturing Solution and Benefits; © 2017 PaR Systems, Inc. * |
Flexible and reconfigurable manufacturing systems paradigms; Springer Science+Business Media, LLC 2006 * |
Also Published As
Publication number | Publication date |
---|---|
US20230012519A1 (en) | 2023-01-19 |
US20190360801A1 (en) | 2019-11-28 |
WO2015179521A8 (en) | 2016-02-04 |
WO2015179521A1 (en) | 2015-11-26 |
EP3146397A1 (en) | 2017-03-29 |
US11733036B2 (en) | 2023-08-22 |
US11460294B2 (en) | 2022-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111660290B (en) | Automatic calibration of optical sensors for robots | |
US11642747B2 (en) | Aligning parts using multi-part scanning and feature based coordinate systems | |
KR101126808B1 (en) | Error estimation method and device for multi-axis controlled machines | |
JP6295070B2 (en) | Geometric error identification method for multi-axis machine tools and multi-axis machine tools | |
CN107608314B (en) | Method and apparatus for unit of work and plant level automation | |
CN110125455B (en) | Method for optimizing drill bit pose in robot drilling | |
JP6570957B2 (en) | Geometric error identification method for mechanical structure, numerical control method using the geometric error identification method, numerical control apparatus, and machining center | |
US20160305777A1 (en) | Cmm probe path controller and method | |
EP1990605A2 (en) | Method of determining geometric errors in a machine tool or measuring machine | |
US11673275B2 (en) | Through-beam auto teaching | |
JP5968749B2 (en) | Geometric error identification method and numerical control method, numerical control apparatus and machining center using the geometric error identification method | |
JP6606054B2 (en) | Machine tool motion error identification method | |
US20160139587A1 (en) | System and Method for Adaptive Positioning of a Work Piece | |
JP2017037460A (en) | Machining system and machining method | |
US20250164227A1 (en) | Implementing specific hardware to follow an efficient measurement protocol | |
Barnfather et al. | Development and testing of an error compensation algorithm for photogrammetry assisted robotic machining | |
CN113950650B (en) | Adjustment amount estimation device, adjustment amount estimation method and recording medium | |
KR101809473B1 (en) | Geometric error measuring method and computer readable record medium having program recorded for executing same | |
US11733036B2 (en) | Adaptive manufacturing system | |
JP6786255B2 (en) | Shape measuring method, shape measuring device, and data processing method | |
WO2025024988A1 (en) | Method and system for determining a path for processing a workpiece | |
Pedersen et al. | A self-calibrating robot based upon a virtual machine model of parallel kinematics | |
Laspas | Modeling and measurement of geometric error of machine tools: Methodology and implementation | |
Wong et al. | A new position feedback method for manufacturing equipment | |
Vladimir et al. | Laser measurements based for volumetric accuracy improvement of multi-axis systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: PAR SYSTEMS, INC., MINNESOTA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HABERMANN, CHARLES J.;LAVALLE, DEAN R.;MARRINAN, THOMAS E.;REEL/FRAME:035904/0949 Effective date: 20150624 |
|
AS | Assignment |
Owner name: THE PRUDENTIAL INSURANCE COMPANY OF AMERICA, AS CO Free format text: SECURITY INTEREST;ASSIGNOR:PAR SYSTEMS, INC.;REEL/FRAME:044011/0932 Effective date: 20171031 |
|
AS | Assignment |
Owner name: PAR SYSTEMS, LLC, MINNESOTA Free format text: CERTIFICATE OF CONVERSION;ASSIGNOR:PAR SYSTEMS, INC.;REEL/FRAME:045680/0151 Effective date: 20171103 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |