This application claims priority to Chinese Patent Application No. 201310479822.8 filed on Oct. 15, 2013, the contents of which are incorporated by reference herein.
The subject matter herein generally relates to computer aided control.
Inspectors can determine whether computer numerical control (CNC) production capability of a CNC machine is qualified by manually detecting products produced by the CNC machine based on experience. The determination may be unreliable and inaccurate. Therefore, reliable and accurate validation of CNC production capability is desirable.
Implementations of the present technology will now be described, by way of example only, with reference to the attached figures.
It will be appreciated that for simplicity and clarity of illustration, where appropriate, reference numerals have been repeated among the different figures to indicate corresponding or analogous elements. In addition, numerous specific details are set forth in order to provide a thorough understanding of the embodiments described herein. However, it will be understood by those of ordinary skill in the art that the embodiments described herein can be practiced without these specific details. In other instances, methods, procedures, and components have not been described in detail so as not to obscure the related relevant feature being described. The drawings are not necessarily to scale and the proportions of certain parts may be exaggerated to better illustrate details and features. The description is not to be considered as limiting the scope of the embodiments described herein.
Several definitions that apply throughout this disclosure will now be presented.
The term “module” refers to logic embodied in computing or firmware, or to a collection of software instructions, written in a programming language, such as, Java, C, or assembly. One or more software instructions in the modules may be embedded in firmware, such as in an erasable programmable read only memory (EPROM). The modules described herein may be implemented as either software and/or computing modules and may be stored in any type of non-transitory computer-readable medium or other storage device. Some non-limiting examples of non-transitory computer-readable media include CDs, DVDs, BLU-RAY, flash memory, and hard disk drives. The term “comprising” means “including, but not necessarily limited to”; it specifically indicates open-ended inclusion or membership in a so-described combination, group, series and the like.
The fixture 21 is used to fix the production material 22. In one embodiment, the fixture 21 can be a fastening component that fixes the production material 22.
The production program 23 is run by the CNC machine 2 to process the production material 22 to produce products.
The scanner 24 scans a surface of each product produced by the CNC machine 2 to obtain a point cloud consisting of a large number of points on the surface of the product. The scanner 24 can be a laser scanner.
The CNC machine 2 can further include other components not shown in
The CNC production capability validating system 10 can include a plurality of function modules. The function modules 11-15 can include computerized codes in the form of one or more programs, which provide at least the functions of the CNC production capability validating system 10. In one embodiment, the CNC machine 2 processes the production material 22 to produce a predetermined number of products. The scanner 24 scans a surface of each product to obtain a point cloud of each product. The CNC production capability validating system 10 selects the point cloud of one product as a base point cloud, fits a geometry based on the base point cloud, and calculates a deviation between each point in each other point cloud and the geometry. According to deviations between points in each other point cloud and the geometry, the CNC production capability validating system 10 determines whether the production capability of the CNC machine is qualified, and outputs a report to store the storage device 20 or display on the display device 40.
The storage device 20 can include some type(s) of non-transitory computer-readable storage medium such as, for example, a hard disk drive, a compact disc, a digital video disc, or a tape drive. The storage device 20 stores the computerized codes of the function modules of the CNC production capability validating system 10.
The control device 30 can be a processor, an application-specific integrated circuit (ASIC), or a field programmable gate array (FPGA), for example. The control device 30 can execute computerized codes of the function modules of the CNC production capability validating system 10 to realize the functions of the computing device 1.
In one embodiment, the CNC production capability validating system 10 includes a read module 11, a fitting module 12, a calculation module 13, a determination module 14, and a generation module 15.
The read module 11 is configured to read point clouds of a predetermined number of products from the scanner 24 and store the point clouds in the storage device 20. As mentioned above, the predetermined number of products are produced by the CNC machine 2. The scanner 24 scans a surface of each product to obtain a point cloud of each product.
The fitting module 12 is configured to select one point cloud of one of the products as a base point cloud, and fit a geometry based on the base point cloud. The geometry can be a curve or a surface. In one embodiment, the fitting module 12 can use a method of least squares, in conjunction with the quasi-Newton iterative algorithm, to fit the geometry.
The calculation module 13 is configured to calculate a deviation between each point in each other point cloud and the geometry, and determine a vector from each point in each other point cloud to the geometry according to the deviation. The calculation module 13 can calculate the deviation between each point in each other point cloud and the geometry by calculating a closest distance from each point in each other point cloud to the geometry. For example, the absolute value of the deviation can be equal to the closest distance.
The determination module 14 is configured to determine a first deviation having a maximum absolute value and a second deviation having a minimum absolute value from all deviations, calculate a sum of the maximum absolute value and the minimum absolute value, and determine whether the production capability of the CNC machine 2 is qualified according to the sum. For example, the maximum absolute value is denoted as |max|, the minimum absolute value is denoted as |min|, the production capability of the CNC machine 2 is |max|+|min|. If |max|+|min| is greater than a preset value, the production capability of the CNC machine 2 is determined as being qualified. Otherwise, if |max|+|min| is equal to or less than the preset value, the production capability of the CNC machine 2 is determined as being unqualified.
The generation module 15 is configured to generate a report to depict the deviation between each point in each other point cloud and the geometry and/or the vector from each point in each other point cloud to the geometry, and display the report on the display device 40. In one embodiment, the report is represented as a graph including the geometry and each point in each other point cloud. The generation module 15 can specify multiple deviation ranges and assign a unique color for each deviation range. If a deviation between a point and the geometry falls into a certain deviation range, the point in the graph is highlighted with the color assigned for the certain deviation range. A vector from the point to the geometry (such as the line 40 in
Referring to
At block 201, a CNC machine runs a production program to process a production material fixed on a fixture, to produce a predetermined number of products. For example, the CNC machine can produce 32 same products.
At block 202, a scanner scans a surface of each product to obtain a point cloud of each product. A read module reads the point cloud of each product from the scanner and stores the point cloud of each product in a storage device.
At block 203, a fitting module selects one point cloud of one of the products as a base point cloud, and fits a geometry based on the base point cloud.
At block 204, a calculation module calculates a deviation between each point in each other point cloud and the geometry, and determines a vector from each point in each other point cloud to the geometry according to the deviation.
At block 205, a determination module determines a first deviation having a maximum absolute value and a second deviation having a minimum absolute value from all deviations, calculates a sum of the maximum absolute value and the minimum absolute value, and determines whether the production capability of the CNC machine is qualified according to the sum.
At block 206, a generation module generates a report to depict the deviation between each point in each other point cloud and the geometry and/or the vector from each point in each other point cloud to the geometry, and displays the report on a display device.
The embodiments shown and described above are only examples. Even though numerous characteristics and advantages of the present technology have been set forth in the foregoing description, together with details of the structure and function of the present disclosure, the disclosure is illustrative only, and changes may be made in the detail, including in particular the matters of shape, size and arrangement of parts within the principles of the present disclosure, up to and including the full extent established by the broad general meaning of the terms used in the claims.
Number | Date | Country | Kind |
---|---|---|---|
201310479822.8 | Oct 2013 | CN | national |