The presently preferred embodiment of the innovations described herein relate generally to software applications. More specifically, the presently preferred embodiment relates to directly recognize and unfold linear bends in a sheet metal part.
The progressive die industry is a pillar industry for automotive, consumer electronics, computer manufacture, etc. With the rapid changes of products in those industries, product companies need die and tooling capabilities with significantly shortened die tool lead time. Critical to the progressive die design is the ability to import a non-sheet metal filed into a CAD application, and then to be able to quickly convert it into a sheet-metal part for folding operations without any parameters from the original imported file. Once converted to a sheet-metal part, the user can then generate a flattened shape of a sheet metal part (or blank) and its intermediate states. Concomitantly, the product company will apply its own standards and design requirements into the process.
Unfolding of a sheet metal part is the first and most important step to design a progressive die. Unfolding methods vary based in part on different shapes of the sheet metal part. For example, for free-form sheet metal, one can make use of known CAE-FEM methods to perform unfolding. For a straight-break part, if it is an imported model or designed using generic features, one could convert it into sheet metal self-formable feature-based model. Known art includes the ability to re-build the part by using sheet metal features, another one is to re-build it automatically, the first method is very time-consuming and requires that a die designer have high sheet metal skill, other limitations exist where there are no “mapped” features.
What is needed is a system and method not currently supported in the known prior art for direct sheet metal unfolding of an imported non-sheet-metal part into various bending forms.
To achieve the foregoing, and in accordance with the purpose of the presently preferred embodiment as described herein, the present application provides a computer implemented method, comprising selecting a planar face on a part design; identifying a plurality of linear bends associated with said planar face; calculating a plurality of bend parameters corresponding to each of said linear bends; and converting said part design having said linear bends to a sheet metal part. The method, wherein said plurality of bend parameters includes one of a bend angle, an inside bend radius, and a part thickness. The method, further comprising calculating a developed length from said bend angle, said inside bend radius, said part thickness, and a calculated K factor. The method, further comprising assigning a plurality of blend attributes to said planar face. The method, further comprising merging a plurality of coaxial blends with a first radius and angle into a merged bend. The method, further comprising decomposing a merged bend into a plurality of step blends. The method, further comprising defining an over-bend as necessary. The method, further comprising unfolding said sheet metal part into a form. The method, further comprising outputting a blank part from said form, wherein said form status is a flatten status. The Method, further comprising extracting a solid body part from said form, wherein said form status is an intermediate status.
An advantage of the presently preferred embodiment is to provide a computer-program product tangibly embodied in a machine readable medium to perform a computer implemented method, comprising instructions operable to cause a computer to select a planar face on a part design; identify a plurality of linear bends associated with said planar face; calculate a plurality of bend parameters corresponding to each of said linear bends; and convert said part design having said linear bends to a sheet metal part. The computer-program product, wherein said plurality of bend parameters includes one of a bend angle, an inside bend radius, and a part thickness. The computer-program product, further comprising instructions to calculate a developed length from said bend angle, said inside bend radius, said part thickness, and a calculated K factor. The computer-program product, further comprising instructions to assign a plurality of blend attributes to said planar face. The computer-program product, further comprising instructions to merge a plurality of coaxial blends with a first radius and angle into a merged bend. The computer-program product, further comprising instructions to decompose a merged bend into a plurality of step blends. The computer-program product, further comprising instructions to define an over-bend as necessary. The computer-program product, further comprising instructions to unfold said sheet metal part into a form. The computer-program product, further comprising instructions to output a blank part from said form, wherein said form status is a flatten status. The computer-program product, further comprising instructions to extract a solid body part from said form, wherein said form status is an intermediate status.
And another advantage of the presently preferred embodiment is to provide a data processing system having at least a processor and accessible memory to implement a method, comprising means for selecting a planar face on a part design; means for identifying a plurality of linear bends associated with said planar face; means for calculating a plurality of bend parameters corresponding to each of said linear bends; and means for converting said part design having said linear bends to a sheet metal part.
Other advantages of the presently preferred embodiment will be set forth in part in the description and in the drawings that follow, and, in part will be learned by practice of the presently preferred embodiment. The presently preferred embodiment will now be described with reference made to the following Figures that form a part hereof. It is understood that other embodiments may be utilized and changes may be made without departing from the scope of the presently preferred embodiment.
A presently preferred embodiment will hereinafter be described in conjunction with the appended drawings, wherein like designations denote like elements, and:
The numerous innovative teachings of the present application will be described with particular reference to the presently preferred embodiments. It should be understood, however, that this class of embodiments provides only a few examples of the many advantageous uses of the innovative teachings herein. The presently preferred embodiment provides, among other things, a system and method directly recognize and unfold linear bends in a sheet metal part. Now therefore, in accordance with the presently preferred embodiment, an operating system executes on a computer, such as a general-purpose personal computer.
Referring to
The computer 900 further includes a drive interface 950 that couples at least one storage device 955 and/or at least one optical drive 960 to the bus. The storage device 955 can include a hard disk drive, not shown, for reading and writing to a disk, a magnetic disk drive, not shown, for reading from or writing to a removable magnetic disk drive. Likewise the optical drive 960 can include an optical disk drive, not shown, for reading from or writing to a removable optical disk such as a CD ROM or other optical media. The aforementioned drives and associated computer-readable media provide non-volatile storage of computer readable instructions, data structures, program modules, and other data for the computer 900.
The computer 900 can communicate via a communications channel 965 with other computers or networks of computers. The computer 900 may be associated with such other computers in a local area network (LAN) or a wide area network (WAN), or it can be a client in a client/server arrangement with another computer, etc. Furthermore, the presently preferred embodiment 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 computing environment, program modules may be located in both local and remote memory storage devices. All of these configurations, as well as the appropriate communications hardware and software, are known in the art.
Software programming code that embodies the presently preferred embodiment is typically stored in the memory 945 of the computer 900. In the client/server arrangement, such software programming code may be stored with memory associated with a server. The software programming code may also be embodied on any of a variety of non-volatile data storage device, such as a hard-drive, a diskette or a CD-ROM. The code may be distributed on such media, or may be distributed to users from the memory of one computer system over a network of some type to other computer systems for use by users of such other systems. The techniques and methods for embodying software program code on physical media and/or distributing software code via networks are well known and will not be further discussed herein.
The methods of automatically unfolding a sheet metal part without prior knowledge or data defining the parameters or sheet metal features to get a part blank and associated intermediate stages in accordance with the presently preferred embodiment are set forth in more detail below.
The computer user typically starts with either a part file created by a third party computer aided design (CAD) program or the user intends to use a native file created with the CAD application in current use where the part file lacks sufficient details necessary to accomplish a sheet metal fold. Utilizing techniques well understood in the art, the user imports the part file into the CAD application that can define a solid body or other part-state, e.g., a solid model, that lacks sufficient details to perform a sheet metal operation.
Now, the part design 200 is converted into a sheet metal part as understood and known by the native CAD application (Step 120). The sheet metal part conversion is well understood in the CAD industry and will not be discussed further with the understanding that the presently preferred embodiment assigns the necessary bend attributes to the associated bend faces so that the recognized bends are identified and properly utilized in a downstream unbend/rebend operation of the CAD application.
The user also has the option to define an over bend for any of the recognized bends. The user may define the over bend by either angle or radius (among others), for example, defining a 90 degree bend that may have a final shape of 83 degrees because of 7 degrees of material spring back. Example methods to accomplish the over-bend technique include keeping the bend radius constant with the change of the bend angle so that the bend region will change accordingly; and maintaining a constant bend region, resulting in the bend radius changes when the bend angle is changed accordingly.
From Step 1 through Step 5, the presently preferred embodiment has disclosed a complete solution to directly and automatically unform an un-parameterized model to enable generation of an associative blank or intermediate shape for a sheet metal part. Now that the user has created either the blank or the intermediate status, the sheet metal part is outputted as an individual blank part for use in a CAD application or other known way to utilize sheet metal parts. Alternatively, the solid body of any of the bends in the intermediate status may be extracted as an intermediate stage for use in a CAD application or other known way to utilize sheet metal parts.
The presently preferred embodiment may be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations thereof. An apparatus of the presently preferred embodiment may be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a programmable processor; and method steps of the presently preferred embodiment may be performed by a programmable processor executing a program of instructions to perform functions of the presently preferred embodiment by operating on input data and generating output.
The presently preferred embodiment may advantageously be implemented in one or more computer programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device. The application program may be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language if desired; and in any case, the language may be a compiled or interpreted language.
Generally, a processor will receive instructions and data from a read-only memory and/or a random access memory. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of nonvolatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks. Any of the foregoing may be supplemented by, or incorporated in, specially-designed ASICs (application2-specific integrated circuits).
A number of embodiments have been described. It will be understood that various modifications may be made without departing from the spirit and scope of the presently preferred embodiment, such as the ability to apply the over-bend feature to multiple bends at one time. Also it is contemplated that the recognition of bends occurs on not only an imported file from another CAD system, but also on any solid model with or without feature/parameters. Therefore, other implementations are within the scope of the following claims.
This Application claims priority to pending Provisional U.S. Application Ser. No. 60/896,702, filed on Mar. 23, 2007, which application is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
60896702 | Mar 2007 | US |